FreeCalypso > hg > tcs211-fcmodem
comparison gpf/cfg/TARGET_csample_smi_lo.tcl @ 0:509db1a7b7b8
initial import: leo2moko-r1
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Mon, 01 Jun 2015 03:24:05 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:509db1a7b7b8 |
---|---|
1 #-----------------------------------------------------------------------------# | |
2 # PROJECT: XPANEL (8446) $Workfile:: TARGET_csample_smi_lo.tcl$# | |
3 # Author:: RK CONDAT GmbH $Revision:: 1 $# | |
4 # CREATED: 29.06.00 $Modtime:: 16.02.00 15:17 $# | |
5 # STATE : code # | |
6 #-----------------------------------------------------------------------------# | |
7 | |
8 # MODULE : CSAMPLE_LAYOUT (smi) | |
9 | |
10 # PURPOSE : This modul provides specific layout file for a csample | |
11 # running a SMI version. | |
12 | |
13 #*==== CONSTANTS ===================================================*# | |
14 | |
15 # specify text display colors | |
16 set DISPL_BG black | |
17 set DISPL_FG white | |
18 | |
19 # key count | |
20 set COLUMNS 3 | |
21 set ROWS 7 | |
22 | |
23 # key IDs | |
24 set KEY_NOKEY -1 | |
25 set KEY_0 48 | |
26 set KEY_1 49 | |
27 set KEY_2 50 | |
28 set KEY_3 51 | |
29 set KEY_4 52 | |
30 set KEY_5 53 | |
31 set KEY_6 54 | |
32 set KEY_7 55 | |
33 set KEY_8 56 | |
34 set KEY_9 57 | |
35 set KEY_MNUUP 45 | |
36 set KEY_MNUDOWN 98 | |
37 set KEY_LEFT 67 | |
38 set KEY_RIGHT 94 | |
39 set KEY_CALL 97 | |
40 set KEY_HUP 86 | |
41 set KEY_STAR 42 | |
42 set KEY_HASH 35 | |
43 set KEY_POWER 69 | |
44 | |
45 # not used | |
46 set KEY_VOLUP 254 | |
47 set KEY_VOLDOWN 254 | |
48 set KEY_OK 254 | |
49 set KEY_CLEAR 254 | |
50 set KEY_ABC 254 | |
51 set KEY_F1 254 | |
52 set KEY_F2 254 | |
53 set KEY_F3 254 | |
54 set KEY_F4 254 | |
55 set KEY_MAX 254 | |
56 | |
57 # keys with their IDs | |
58 set KEY_ID { $KEY_LEFT $KEY_MNUUP $KEY_RIGHT | |
59 $KEY_CALL $KEY_MNUDOWN $KEY_HUP | |
60 $KEY_NOKEY $KEY_POWER $KEY_NOKEY | |
61 $KEY_1 $KEY_2 $KEY_3 | |
62 $KEY_4 $KEY_5 $KEY_6 | |
63 $KEY_7 $KEY_8 $KEY_9 | |
64 $KEY_STAR $KEY_0 $KEY_HASH } | |
65 | |
66 # keys with their second IDs, activated after pressing 3 sec | |
67 set KEY_ID2 { $KEY_NOKEY $KEY_NOKEY $KEY_NOKEY | |
68 $KEY_NOKEY $KEY_NOKEY $KEY_POWER | |
69 $KEY_NOKEY $KEY_NOKEY $KEY_NOKEY | |
70 $KEY_NOKEY $KEY_NOKEY $KEY_NOKEY | |
71 $KEY_NOKEY $KEY_NOKEY $KEY_NOKEY | |
72 $KEY_NOKEY $KEY_NOKEY $KEY_NOKEY | |
73 $KEY_NOKEY $KEY_NOKEY $KEY_NOKEY} | |
74 | |
75 # key labels | |
76 set KEY_LABEL {"----" "/\\" "----" | |
77 "CALL" "\\/" "HUP" | |
78 "" "POWER" "" | |
79 "1\nl__l" "2\nabc" "3\ndef" | |
80 "4\nghi" "5\njkl" "6\nmno" | |
81 "7\npqrs" "8\ntuv" "9\nwxyz" | |
82 "*" "0\n+" "#" } | |
83 | |
84 # optional key images instead of labels | |
85 set KEY_IMG {"" "" "" | |
86 "" "" "" | |
87 "" "" "" | |
88 "" "" "" | |
89 "" "" "" | |
90 "" "" "" | |
91 "" "" "" } | |
92 | |
93 # key sizes | |
94 set KEY_HEIGHT {3 3 3 | |
95 3 3 3 | |
96 2 2 2 | |
97 2 2 2 | |
98 2 2 2 | |
99 2 2 2 | |
100 2 2 2} | |
101 | |
102 set KEY_WIDTH {5 5 5 | |
103 5 5 5 | |
104 0 5 0 | |
105 4 4 4 | |
106 4 4 4 | |
107 4 4 4 | |
108 4 4 4} | |
109 | |
110 # key positions | |
111 set KEY_STICKY {"" "" "" | |
112 "" "" "" | |
113 "" "" "" | |
114 "" "" "" | |
115 "" "" "" | |
116 "" "" "" | |
117 "" "" ""} | |
118 | |
119 # key relief style (raised, sunken, flat, ridge, solid, groove) | |
120 set RELIEF raised | |
121 | |
122 | |
123 | |
124 | |
125 #*==== IMPLEMENTATION ==============================================*# | |
126 | |
127 frame .keys | |
128 pack .keys -side bottom -pady 2 -anchor center | |
129 | |
130 for {set q 0} {$q<$ROWS} {incr q} { | |
131 for {set w 1} {$w<=$COLUMNS} {incr w} { | |
132 set nr [expr $q*$COLUMNS+$w-1] | |
133 if {[subst [lindex $KEY_ID $nr]] == [subst $KEY_NOKEY]} continue | |
134 | |
135 set key [format ".keys.no%s" $nr] | |
136 set imgFile [lindex $KEY_IMG $nr] | |
137 if {$imgFile == ""} { | |
138 button $key \ | |
139 -text [lindex $KEY_LABEL $nr] \ | |
140 -width [lindex $KEY_WIDTH $nr] -height [lindex $KEY_HEIGHT $nr] \ | |
141 -relief $RELIEF | |
142 } else { | |
143 set img [format "%s%s" $imgFile $nr] | |
144 image create photo $img -file $imgFile | |
145 button $key -image $img \ | |
146 -relief $RELIEF | |
147 # -width [expr 7*[lindex $KEY_WIDTH $nr]] \ | |
148 # -height [expr 13*[lindex $KEY_HEIGHT $nr]] \ | |
149 } | |
150 set st [lindex $KEY_STICKY $nr] | |
151 if {$st == ""} { | |
152 if {$w == 1} { | |
153 set st w | |
154 } | |
155 if {$w == $COLUMNS} { | |
156 set st e | |
157 } | |
158 } | |
159 grid $key -row $q -column $w -sticky $st | |
160 | |
161 if {[subst [lindex $KEY_ID2 $nr]] == [subst $KEY_NOKEY]} { | |
162 set cmd [format "c_onkey %s 0" [subst [lindex $KEY_ID $nr]]] | |
163 } else { | |
164 set cmd [format "c_onkey %s 0 %s" [subst [lindex $KEY_ID $nr]] \ | |
165 [subst [lindex $KEY_ID2 $nr]]] | |
166 } | |
167 bind $key <ButtonPress> $cmd | |
168 set cmd [format "c_onkey %s 1" [subst [lindex $KEY_ID $nr]]] | |
169 bind $key <ButtonRelease> $cmd | |
170 } | |
171 } |