<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6000.16441" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Greetings everybody...</FONT></DIV>
<DIV><FONT face=Arial size=2>Got around with the shortcuts issue and i am
posting the solution...</FONT></DIV>
<DIV><FONT face=Arial size=2>Like i said earlier we'll have to map the Unicode
values to the Squeak specific shortcuts.</FONT></DIV>
<DIV><FONT face=Arial size=2>A simple mapping dictionary did the work...it was
less than half an afternoon work...a few buffer prints, some copy paste to a
spreadsheet and it's there...So, the UnicodeIputInterpreter has this
method...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>nextCharFrom: sensor firstEvt: evtBuf</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2> | keyValue |<BR>" Unicode charCode expected
as the sixth data member ! "<BR> (((evtBuf fifth = 2 or: [evtBuf fifth =
8])) and: [evtBuf sixth > 255])<BR> ifTrue:
[<BR> keyValue := evtBuf
sixth.<BR> ^ Character value:(((Locale currentPlatform)
languageEnvironment) unicodeToLatinCharMap:keyValue).]</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> ifFalse: [keyValue := evtBuf
sixth.].<BR>"<BR> Transcript show: evtBuf asString; cr."<BR> keyValue
> 255<BR> ifTrue: [Transcript show: keyValue asString; cr.].<BR> ^
keyValue asCharacter.<BR></FONT></DIV>
<DIV><FONT face=Arial size=2>In my locale specific GreekEnvironment class i have
this method ...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>unicodeToLatinCharMap: charCode<BR> | t5
|</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2> t5:= ShortcutMap at: charCode.<BR> ^
t5.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Where ShortcutMap is initialised in the class
initialisation as following...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>initialize<BR>"<BR> GreekEnvironment
initialize<BR>"<BR> ShortcutMap _ Dictionary new.<BR>ShortcutMap at: 59
put: 113.<BR>ShortcutMap at: 962 put: 119.<BR>ShortcutMap at: 949 put:
101.<BR>ShortcutMap at: 961 put: 114.<BR>ShortcutMap at: 964 put:
116.<BR>ShortcutMap at: 965 put: 121.<BR>ShortcutMap at: 952 put:
117.<BR>ShortcutMap at: 953 put: 105.<BR>ShortcutMap at: 959 put:
111.<BR>ShortcutMap at: 960 put: 112.<BR>ShortcutMap at: 945 put:
97.<BR>ShortcutMap at: 963 put: 115.<BR>ShortcutMap at: 948 put:
100.<BR>ShortcutMap at: 966 put: 102.<BR>ShortcutMap at: 947 put:
103.<BR>ShortcutMap at: 951 put: 104.<BR>ShortcutMap at: 958 put:
106.<BR>ShortcutMap at: 954 put: 107.<BR>ShortcutMap at: 955 put:
108.<BR>ShortcutMap at: 950 put: 122.<BR>ShortcutMap at: 967 put:
120.<BR>ShortcutMap at: 968 put: 99.<BR>ShortcutMap at: 969 put:
118.<BR>ShortcutMap at: 946 put: 98.<BR>ShortcutMap at: 957 put:
110.<BR>ShortcutMap at: 956 put: 109.<BR>ShortcutMap at: 917 put:
101.<BR>ShortcutMap at: 929 put: 114.<BR>ShortcutMap at: 932 put:
116.<BR>ShortcutMap at: 933 put: 121.<BR>ShortcutMap at: 920 put:
117.<BR>ShortcutMap at: 921 put: 105.<BR>ShortcutMap at: 927 put:
111.<BR>ShortcutMap at: 928 put: 112.<BR>ShortcutMap at: 913 put:
97.<BR>ShortcutMap at: 931 put: 115.<BR>ShortcutMap at: 916 put:
100.<BR>ShortcutMap at: 934 put: 102.<BR>ShortcutMap at: 915 put:
103.<BR>ShortcutMap at: 919 put: 104.<BR>ShortcutMap at: 926 put:
106.<BR>ShortcutMap at: 922 put: 107.<BR>ShortcutMap at: 923 put:
108.<BR>ShortcutMap at: 918 put: 122.<BR>ShortcutMap at: 935 put:
120.<BR>ShortcutMap at: 936 put: 99.<BR>ShortcutMap at: 937 put:
118.<BR>ShortcutMap at: 914 put: 98.<BR>ShortcutMap at: 925 put:
110.<BR>ShortcutMap at: 924 put: 109.<BR></FONT></DIV>
<DIV><FONT face=Arial size=2>This maps every greek keyboard key (small and
capital) to the equivelant that Squeak is expecting as shortcut...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>In programming terms i don't like this
solution...so if anyone has a better idea please post it...</FONT></DIV>
<DIV><FONT face=Arial size=2>Evening everybody!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Christos.</DIV></FONT></BODY></HTML>