Rev 7459 | Rev 7469 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7459 | Rev 7460 | ||
---|---|---|---|
Line 126... | Line 126... | ||
126 | 126 | ||
127 | key: ; Keypress event handler |
127 | key: ; Keypress event handler |
128 | mov eax, 2 ; The key is returned in ah. The key must be |
128 | mov eax, 2 ; The key is returned in ah. The key must be |
Line 129... | Line -... | ||
129 | mcall ; read and cleared from the system queue. |
- | |
130 | 129 | mcall ; read and cleared from the system queue. |
|
131 | ;push eax |
130 | |
132 | invoke edit_box_key, editLU |
131 | invoke edit_box_key, editLU |
133 | invoke edit_box_key, editLD |
132 | invoke edit_box_key, editLD |
134 | invoke edit_box_key, editRU |
133 | invoke edit_box_key, editRU |
135 | invoke edit_box_key, editRD |
- | |
Line 136... | Line 134... | ||
136 | invoke edit_box_key, editRadius |
134 | invoke edit_box_key, editRD |
137 | ;pop eax |
135 | invoke edit_box_key, editRadius |
138 | 136 | ||
139 | cmp eax, 1 |
137 | cmp eax, 1 |
140 | je event_wait ;.end ;@f |
138 | je event_wait |
141 | cmp word[hkSymbol], 0 |
139 | cmp word[hkSymbol], 0 |
142 | jne event_wait ;.end ;@f |
140 | jne event_wait |
Line 143... | Line 141... | ||
143 | cmp al, 0 |
141 | cmp al, 0 |
Line 165... | Line 163... | ||
165 | jmp @b |
163 | jmp @b |
166 | @@: |
164 | @@: |
167 | ;è ñîõðàíÿåì åãî |
165 | ;è ñîõðàíÿåì åãî |
168 | mov dword[keystr.size], ecx |
166 | mov dword[keystr.size], ecx |
Line 169... | Line -... | ||
169 | - | ||
170 | ; cmp ecx, 3 |
- | |
171 | ; jbe @f |
- | |
172 | ; mcall -1 |
- | |
173 | ; @@: |
- | |
174 | 167 | ||
175 | pop esi ecx eax |
- | |
176 | 168 | pop esi ecx eax |
|
177 | jmp red |
169 | jmp red |
178 | .next: |
170 | .next: |
179 | ;cmp al, 2 |
171 | ;cmp al, 2 |
180 | ;jne @f |
172 | ;jne @f |
Line 185... | Line 177... | ||
185 | ;bt eax, 0 ;left shift |
177 | ;bt eax, 0 ;left shift |
186 | ;jne @f |
178 | ;jne @f |
187 | ;mov byte[hkSymbol], 2 |
179 | ;mov byte[hkSymbol], 2 |
188 | ;jmp red |
180 | ;jmp red |
189 | @@: |
181 | @@: |
190 | ;.end: |
- | |
191 | jmp event_wait ; Just read the key, ignore it and jump to event_wait. |
182 | jmp event_wait ; Just read the key, ignore it and jump to event_wait. |
Line 192... | Line 183... | ||
192 | 183 | ||
193 | button: ; Buttonpress event handler |
184 | button: ; Buttonpress event handler |
194 | mov eax,17 ; The button number defined in window_draw |
185 | mov eax,17 ; The button number defined in window_draw |
Line 340... | Line 331... | ||
340 | add ecx, dword[editRD.size] ;dataBuffer.size4] |
331 | add ecx, dword[editRD.size] ;dataBuffer.size4] |
341 | add ecx, dword[editRadius.size] |
332 | add ecx, dword[editRadius.size] |
342 | add ecx, dword[hkSize] ;ðàçìåð èìåíè àêòèâàöèîííîé êíîïêè |
333 | add ecx, dword[hkSize] ;ðàçìåð èìåíè àêòèâàöèîííîé êíîïêè |
343 | add ecx, dword[keystr.size] ;ðàçìåð ñêàíêîäà àêòèâàöèîííîé êíîïêè |
334 | add ecx, dword[keystr.size] ;ðàçìåð ñêàíêîäà àêòèâàöèîííîé êíîïêè |
344 | inc ecx ; åù¸ 1 áàéò äëÿ õðàíåíèÿ ðàçìåðà ýëåìåíòîâ |
335 | inc ecx ; åù¸ 1 áàéò äëÿ õðàíåíèÿ ðàçìåðà ýëåìåíòîâ |
345 | ;mov ecx, 85 |
- | |
Line 346... | Line 336... | ||
346 | 336 | ||
347 | cmp dword[keystr.size], 3 |
337 | ;cmp dword[keystr.size], 3 |
348 | jbe @f |
338 | ;jbe @f |
349 | ;mcall -1 |
339 | ;mcall -1 |
Line 350... | Line 340... | ||
350 | @@: |
340 | ;@@: |
351 | 341 | ||
352 | ;åñëè çàäàíû ïóñòûå ñòðîêè, òî ìû àâòîìàòè÷åñêè äîáàâëÿåì çíàê ìèíóñ, çíà÷èò ðàçìåð +1 áàéò |
342 | ;åñëè çàäàíû ïóñòûå ñòðîêè, òî ìû àâòîìàòè÷åñêè äîáàâëÿåì çíàê ìèíóñ, çíà÷èò ðàçìåð +1 áàéò |
353 | cmp dword[editLU.size], 0 |
343 | cmp dword[editLU.size], 0 |
Line 371... | Line 361... | ||
371 | mov dword[createFile.size], ecx ;ïîëîæèì ðàçìåð áàéò â ñòðóêòóðó ñîçäàíèÿ/ïåðåçàïèñè ôàéëà |
361 | mov dword[createFile.size], ecx ;ïîëîæèì ðàçìåð áàéò â ñòðóêòóðó ñîçäàíèÿ/ïåðåçàïèñè ôàéëà |
372 | mcall 68, 12, ecx ;âûäåëÿåì áëîê ïàìÿòè ïîä áóôåð ñîäåðæèìîãî |
362 | mcall 68, 12, ecx ;âûäåëÿåì áëîê ïàìÿòè ïîä áóôåð ñîäåðæèìîãî |
373 | mov dword[createFile.data_adr], eax ;ñîõðàíÿåì àäðåñ áóôåðà â ñòðóêòóðó |
363 | mov dword[createFile.data_adr], eax ;ñîõðàíÿåì àäðåñ áóôåðà â ñòðóêòóðó |
Line 374... | Line 364... | ||
374 | 364 | ||
375 | ;çàïîëíèì áóôåð ñîäåðæèìîãî: |
- | |
376 | ;cmp byte[mode], 0 |
- | |
377 | ;jne @f |
- | |
378 | ;@@: |
- | |
379 | 365 | ;çàïîëíèì áóôåð ñîäåðæèìîãî: |
|
380 | push ebx ;ñîõðàíÿåì âûáðàííûé ðåæèì |
366 | push ebx ;ñîõðàíÿåì âûáðàííûé ðåæèì |
381 | mov bl, byte[mode] |
367 | mov bl, byte[mode] |
382 | mov byte[eax], bl |
368 | mov byte[eax], bl |
Line 1857... | Line 1843... | ||
1857 | aksubmenu_add db 'ksubmenu_add',0 |
1843 | aksubmenu_add db 'ksubmenu_add',0 |
1858 | akmenuitem_new db 'kmenuitem_new',0 |
1844 | akmenuitem_new db 'kmenuitem_new',0 |
1859 | akmenuitem_delete db 'kmenuitem_delete',0 |
1845 | akmenuitem_delete db 'kmenuitem_delete',0 |
1860 | akmenuitem_draw db 'kmenuitem_draw',0 |
1846 | akmenuitem_draw db 'kmenuitem_draw',0 |
Line 1861... | Line -... | ||
1861 | - | ||
1862 | ;mouse_dd dd ? |
1847 | |
1863 | sc system_colors |
1848 | sc system_colors |
Line 1864... | Line 1849... | ||
1864 | mouse_dd rd 1 |
1849 | mouse_dd rd 1 |
1865 | 1850 |