Subversion Repositories Kolibri OS

Compare Revisions

Ignore whitespace Rev 7459 → Rev 7460

/programs/other/ha/HACONFIG.ASM
128,18 → 128,16
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
;è ñîõðàíÿåì åãî
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
;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
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
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
akmenuitem_delete db 'kmenuitem_delete',0
akmenuitem_draw db 'kmenuitem_draw',0
 
;mouse_dd dd ?
sc system_colors
mouse_dd rd 1
 
/programs/other/ha/HOTANGLES.ASM
250,7 → 250,7
 
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
@@:
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
@@:
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
@@:
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
call readPath
call gotoStartString
 
;call checkAdr ;ïðîâåðèì ñòðîêè íà '-' è ïóñòîòó è âûñòàâèì áèòîâóþ ìàñêó
;ïðîâåðèì ñòðîêè íà '-'
call checkPathAdr
 
pop edi esi
485,8 → 485,6
call gotoStartString
 
;ñ÷èòûâàåì ñêàíêîä àêòèâàöèîííîé êëàâèøè
;call readKey
;call gotoEndString
push esi edi ecx
mov esi, keystr
mov edi, keystr
532,54 → 530,6
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
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
keystr: rb 4 ;ñòðîêà ñî çíà÷åíèåì ñêàíêîäà àêòèâàöèîííîé êëàâèøè
radstr: rb 5 ;ñòðîêà ñî çíà÷åíèåì ðàäèóñà
apps:
.bits: rb 1
.path1: rb 512
.path2: rb 512
.path3: rb 512
/programs/other/ha/ReadMe.txt
74,10 → 74,10
Èçâåñòíûå íåäîðàáîòêè, êîòîðûå áóäóò èñïðàâëåíû â ñëåäóþùèõ âåðñèÿõ:
[+] îòñóòñòâèå ðóññêîãî ÿçûêà;
[-] èñïîëüçóåòñÿ ìàëåíüêèé øðèôò òåêñòà;
[-] íåò âîçìîæíîñòè çàïóñêà ïðèëîæåíèÿ ñ ïàðàìåòðàìè;
[+] íåò âîçìîæíîñòè çàïóñêà ïðèëîæåíèÿ ñ ïàðàìåòðàìè;
[+] çíàê ìèíóñ íå âëèÿåò íà ïîïûòêó çàïóñêà â êîíêðåòíîì óãëó;
[+] ïóñòîå ïîëå â êîíôèãóðàòîðå è ïóñòàÿ ñòðîêà â êîíôèãóðàöèîííîì ôàéëå íåâåðíî îáðàáàòûâàþòñÿ;
[-] ïîâðåæäåíèå ôàéëà êîíôèãóðàöèè ïîñëå ìíîãîêðàòíîãî âêë./âûêë. îïöèè Hot Angles;
[+] ïîâðåæäåíèå ôàéëà êîíôèãóðàöèè ïîñëå ìíîãîêðàòíîãî âêë./âûêë. îïöèè Hot Angles;
[+] ðåæèì ÿâíîé êîìàíäû êëàâèøåé àêòèâàöèè: çàæèìàåì ãîðÿ÷óþ êëàâèøó (íàïðèìåð, shift), íàâîäèì êóðñîð â óãîë - ïðîèñõîäèò ðåàêöèÿ;
[+] ðåæèì æåñòà/íàïðàâëåíèÿ: çàæèìàåì àêòèâèðóþùóþ êëàâèøó, ïîñëå ýòîãî ïðèëîæåíèå àíàëèçèðóåò ìûøü, â çàâèñèìîñòè îò íàïðàâëåíèÿ äâèæåíèÿ ìûøè (îò íà÷àëüíûõ êîîðäèíàò â ìîìåíò àêòèâàöèè îïöèè) âûáèðàåòñÿ àêòèâèðóåìûé óãîë - ïðîèñõîäèò ðåàêöèÿ;
[+] äîáàâèòü äèàëîã âûáîðà ïóòè OpenDialog â êîíôèãóðàòîðå;