forked from KolibriOS/kolibrios
Hot Angles: Little code cleaning
git-svn-id: svn://kolibrios.org@7460 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
f0f9d26273
commit
5b0655cd78
@ -128,18 +128,16 @@ key: ; Keypress event handler
|
||||
mov eax, 2 ; The key is returned in ah. The key must be
|
||||
mcall ; read and cleared from the system queue.
|
||||
|
||||
;push eax
|
||||
invoke edit_box_key, editLU
|
||||
invoke edit_box_key, editLD
|
||||
invoke edit_box_key, editRU
|
||||
invoke edit_box_key, editRD
|
||||
invoke edit_box_key, editRadius
|
||||
;pop eax
|
||||
|
||||
cmp eax, 1
|
||||
je event_wait ;.end ;@f
|
||||
je event_wait
|
||||
cmp word[hkSymbol], 0
|
||||
jne event_wait ;.end ;@f
|
||||
jne event_wait
|
||||
cmp al, 0
|
||||
jne .next
|
||||
mov byte[hkSymbol], ah
|
||||
@ -167,13 +165,7 @@ key: ; Keypress event handler
|
||||
;è ñîõðàíÿåì åãî
|
||||
mov dword[keystr.size], ecx
|
||||
|
||||
; cmp ecx, 3
|
||||
; jbe @f
|
||||
; mcall -1
|
||||
; @@:
|
||||
|
||||
pop esi ecx eax
|
||||
|
||||
jmp red
|
||||
.next:
|
||||
;cmp al, 2
|
||||
@ -187,7 +179,6 @@ key: ; Keypress event handler
|
||||
;mov byte[hkSymbol], 2
|
||||
;jmp red
|
||||
@@:
|
||||
;.end:
|
||||
jmp event_wait ; Just read the key, ignore it and jump to event_wait.
|
||||
|
||||
button: ; Buttonpress event handler
|
||||
@ -342,12 +333,11 @@ applyButton:
|
||||
add ecx, dword[hkSize] ;ðàçìåð èìåíè àêòèâàöèîííîé êíîïêè
|
||||
add ecx, dword[keystr.size] ;ðàçìåð ñêàíêîäà àêòèâàöèîííîé êíîïêè
|
||||
inc ecx ; åù¸ 1 áàéò äëÿ õðàíåíèÿ ðàçìåðà ýëåìåíòîâ
|
||||
;mov ecx, 85
|
||||
|
||||
cmp dword[keystr.size], 3
|
||||
jbe @f
|
||||
;cmp dword[keystr.size], 3
|
||||
;jbe @f
|
||||
;mcall -1
|
||||
@@:
|
||||
;@@:
|
||||
|
||||
;åñëè çàäàíû ïóñòûå ñòðîêè, òî ìû àâòîìàòè÷åñêè äîáàâëÿåì çíàê ìèíóñ, çíà÷èò ðàçìåð +1 áàéò
|
||||
cmp dword[editLU.size], 0
|
||||
@ -373,10 +363,6 @@ applyButton:
|
||||
mov dword[createFile.data_adr], eax ;ñîõðàíÿåì àäðåñ áóôåðà â ñòðóêòóðó
|
||||
|
||||
;çàïîëíèì áóôåð ñîäåðæèìîãî:
|
||||
;cmp byte[mode], 0
|
||||
;jne @f
|
||||
;@@:
|
||||
|
||||
push ebx ;ñîõðàíÿåì âûáðàííûé ðåæèì
|
||||
mov bl, byte[mode]
|
||||
mov byte[eax], bl
|
||||
@ -1859,7 +1845,6 @@ dd 0,0
|
||||
akmenuitem_delete db 'kmenuitem_delete',0
|
||||
akmenuitem_draw db 'kmenuitem_draw',0
|
||||
|
||||
;mouse_dd dd ?
|
||||
sc system_colors
|
||||
mouse_dd rd 1
|
||||
|
||||
|
@ -250,7 +250,7 @@ run_command:
|
||||
|
||||
cmp ecx, 0
|
||||
jne @f
|
||||
mov eax, apps.path1 ;dword[newData.lu]
|
||||
mov eax, apps.path1
|
||||
cmp byte[eax], 0 ;если по адресу пусто (или лежал символ '-'), то адрес 0
|
||||
je .set0
|
||||
mov dword[struct70.path_adr], eax
|
||||
@ -260,7 +260,7 @@ run_command:
|
||||
@@:
|
||||
cmp ecx, 1
|
||||
jne @f
|
||||
mov eax, apps.path2 ;dword[newData.ld]
|
||||
mov eax, apps.path2
|
||||
cmp byte[eax], 0 ;если по адресу пусто (или лежал символ '-'), то адрес 0
|
||||
je .set0
|
||||
mov dword[struct70.path_adr], eax
|
||||
@ -270,7 +270,7 @@ run_command:
|
||||
@@:
|
||||
cmp ecx, 2
|
||||
jne @f
|
||||
mov eax, apps.path3 ;dword[newData.ru]
|
||||
mov eax, apps.path3
|
||||
cmp byte[eax], 0 ;если по адресу пусто (или лежал символ '-'), то адрес 0
|
||||
je .set0
|
||||
mov dword[struct70.path_adr], eax
|
||||
@ -280,7 +280,7 @@ run_command:
|
||||
@@:
|
||||
cmp ecx, 3
|
||||
jne .set0 ;.end_set_path
|
||||
mov eax, apps.path4 ;dword[newData.rd]
|
||||
mov eax, apps.path4
|
||||
cmp byte[eax], 0 ;если по адресу пусто (или лежал символ '-'), то адрес 0
|
||||
je .set0
|
||||
mov dword[struct70.path_adr], eax
|
||||
@ -475,7 +475,7 @@ loadConfig:
|
||||
call readPath
|
||||
call gotoStartString
|
||||
|
||||
;call checkAdr ;ïðîâåðèì ñòðîêè íà '-' è ïóñòîòó è âûñòàâèì áèòîâóþ ìàñêó
|
||||
;ïðîâåðèì ñòðîêè íà '-'
|
||||
call checkPathAdr
|
||||
|
||||
pop edi esi
|
||||
@ -485,8 +485,6 @@ loadConfig:
|
||||
call gotoStartString
|
||||
|
||||
;считываем сканкод активационной клавиши
|
||||
;call readKey
|
||||
;call gotoEndString
|
||||
push esi edi ecx
|
||||
mov esi, keystr
|
||||
mov edi, keystr
|
||||
@ -532,54 +530,6 @@ loadConfig:
|
||||
ret
|
||||
|
||||
|
||||
;readKey:
|
||||
;÷èòàåì êëàâèøó è âûõîäèì
|
||||
; cmp dword[eax], 'Ctrl'
|
||||
; jne .notCtrl
|
||||
; mov byte[keyActivate], 3
|
||||
; jmp .end
|
||||
;.notCtrl:
|
||||
; cmp dword[eax], 'Shif'
|
||||
; jne .notShift
|
||||
; mov byte[keyActivate], 2
|
||||
; jmp .end
|
||||
;.notShift:
|
||||
; cmp dword[eax], 'Spac'
|
||||
; jne .notSpace
|
||||
; mov byte[keyActivate], 32
|
||||
; jmp .end
|
||||
;.notSpace:
|
||||
; cmp word[eax], 'Al'
|
||||
; jne .notAlt
|
||||
; mov byte[keyActivate], 1
|
||||
; jmp .end
|
||||
;.notAlt:
|
||||
;óáåäèìñÿ, ÷òî òàì 1 ñèìâîë, à íå ñòðîêà
|
||||
; cmp byte[eax+1], 10
|
||||
; je .oneSymb
|
||||
; cmp byte[eax+1], 0
|
||||
; je .oneSymb
|
||||
; cmp byte[eax+1], 13
|
||||
; je .oneSymb
|
||||
; jmp .default ;â ëþáîì äðóãîì ñëó÷àå îøèáêà êîíôèãà - âûõîä
|
||||
;.oneSymb:
|
||||
;ïðîâåðÿåì, ÷òî ñèìâîë ðàçðåø¸ííûé !!! äîäåëàòü
|
||||
|
||||
;äîáàâëÿåì ñèìâîë êàê åñòü
|
||||
; push ebx
|
||||
; ;xor ebx, ebx
|
||||
; mov bl, byte[eax]
|
||||
; mov byte[keyActivate], bl
|
||||
; pop ebx
|
||||
|
||||
; jmp .end
|
||||
;.default:
|
||||
; mcall -1
|
||||
; ;mov byte[keyActivate], 2
|
||||
;.end:
|
||||
; ret
|
||||
|
||||
|
||||
checkPathAdr:
|
||||
push eax ebx
|
||||
xor eax, eax
|
||||
@ -615,59 +565,6 @@ checkPathAdr:
|
||||
pop ebx eax
|
||||
ret
|
||||
|
||||
|
||||
checkAdr:
|
||||
push eax ebx
|
||||
xor eax, eax
|
||||
|
||||
mov ebx, apps.path1
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
inc eax
|
||||
@@:
|
||||
mov ebx, apps.path2
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
add eax, 2
|
||||
@@:
|
||||
mov ebx, apps.path3
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
add eax, 4
|
||||
@@:
|
||||
mov ebx, apps.path4
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
add eax, 8
|
||||
@@:
|
||||
|
||||
mov ebx, apps.param1
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
add eax, 16
|
||||
@@:
|
||||
mov ebx, apps.param2
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
add eax, 32
|
||||
@@:
|
||||
mov ebx, apps.param3
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
add eax, 64
|
||||
@@:
|
||||
mov ebx, apps.param4
|
||||
cmp byte[ebx], '-'
|
||||
jne @f
|
||||
add eax, 128
|
||||
@@:
|
||||
|
||||
mov byte[apps.bits], al
|
||||
pop ebx eax
|
||||
ret
|
||||
|
||||
|
||||
|
||||
;преобразование строки в целое число
|
||||
strToInteger: ;вход: esi - указатель на строку с десятичной записью числа, выход: eсx - число
|
||||
push eax ebx edx edi
|
||||
@ -971,7 +868,6 @@ mode: rb 1 ;
|
||||
keystr: rb 4 ;строка со значением сканкода активационной клавиши
|
||||
radstr: rb 5 ;строка со значением радиуса
|
||||
apps:
|
||||
.bits: rb 1
|
||||
.path1: rb 512
|
||||
.path2: rb 512
|
||||
.path3: rb 512
|
||||
|
@ -74,10 +74,10 @@ http://websvn.kolibrios.org/dl.php?repname=Kolibri+OS&path=%2Fprograms%2Fother%2
|
||||
Известные недоработки, которые будут исправлены в следующих версиях:
|
||||
[+] отсутствие русского языка;
|
||||
[-] используется маленький шрифт текста;
|
||||
[-] нет возможности запуска приложения с параметрами;
|
||||
[+] нет возможности запуска приложения с параметрами;
|
||||
[+] знак минус не влияет на попытку запуска в конкретном углу;
|
||||
[+] пустое поле в конфигураторе и пустая строка в конфигурационном файле неверно обрабатываются;
|
||||
[-] повреждение файла конфигурации после многократного вкл./выкл. опции Hot Angles;
|
||||
[+] повреждение файла конфигурации после многократного вкл./выкл. опции Hot Angles;
|
||||
[+] режим явной команды клавишей активации: зажимаем горячую клавишу (например, shift), наводим курсор в угол - происходит реакция;
|
||||
[+] режим жеста/направления: зажимаем активирующую клавишу, после этого приложение анализирует мышь, в зависимости от направления движения мыши (от начальных координат в момент активации опции) выбирается активируемый угол - происходит реакция;
|
||||
[+] добавить диалог выбора пути OpenDialog в конфигураторе;
|
||||
|
Loading…
Reference in New Issue
Block a user