diff options
author | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-11-07 20:49:01 +0000 |
---|---|---|
committer | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-11-07 20:49:01 +0000 |
commit | 17614ea059162f432f7feba5f39329667a335fa6 (patch) | |
tree | aa95668867bf58d6bd708bfcb5b3f9db38dc59f8 /unicode/src/screens/UScreenSongMenu.pas | |
parent | e520f12663f97a3ca7e609d0d6f6bf91dc88e675 (diff) | |
download | usdx-17614ea059162f432f7feba5f39329667a335fa6.tar.gz usdx-17614ea059162f432f7feba5f39329667a335fa6.tar.xz usdx-17614ea059162f432f7feba5f39329667a335fa6.zip |
- WideStringUpperCase moved to UUnicodeUtils.pas
- WideCharUpperCase removed as single characters (code-point) can be represented by two WideChars (surrogates). Convert to UCS4 instead (one code-point <-> one UCS4Char).
- UCS4 functions added to UUUnicodeUtils
- string replaced with UTF8String (although it's just a typedef) to mark UTF8 strings.
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/experimental@1507 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to '')
-rw-r--r-- | unicode/src/screens/UScreenSongMenu.pas | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/unicode/src/screens/UScreenSongMenu.pas b/unicode/src/screens/UScreenSongMenu.pas index 6febdcab..f1008ff5 100644 --- a/unicode/src/screens/UScreenSongMenu.pas +++ b/unicode/src/screens/UScreenSongMenu.pas @@ -74,20 +74,22 @@ const SM_Party_Joker = 128 or 2; var - ISelections: Array of String; + ISelections: Array of string; SelectValue: Integer; implementation -uses UGraphic, - UMain, - UIni, - UTexture, - ULanguage, - UParty, - UPlaylist, - USongs; +uses + UGraphic, + UMain, + UIni, + UTexture, + ULanguage, + UParty, + UPlaylist, + USongs, + UUnicodeUtils; function TScreenSongMenu.ParseInput(PressedKey: Cardinal; CharCode: WideChar; PressedDown: Boolean): Boolean; begin @@ -97,7 +99,7 @@ begin if (CurMenu = SM_Playlist_New) AND (Interaction=0) then begin // check normal keys - case WideCharUpperCase(CharCode)[1] of + case WideStringUpperCase(CharCode)[1] of '0'..'9', 'A'..'Z', ' ', '-', '_', '!', ',', '<', '/', '*', '?', '''', '"': begin Button[Interaction].Text[0].Text := Button[Interaction].Text[0].Text + CharCode; @@ -116,7 +118,7 @@ begin end; // check normal keys - case WideCharUpperCase(CharCode)[1] of + case WideStringUpperCase(CharCode)[1] of 'Q': begin Result := false; |