69,14 → 69,11 |
or eax, eax |
jnz exit |
|
;invoke init_checkbox, ch1 |
|
mov eax,40 ;óñòàíîâèòü ìàñêó äëÿ îæèäàåìûõ ñîáûòèé |
mov ebx,0x27 ;ñèñòåìà áóäåò ðåàãèðîâàòü òîëüêî íà ñîîáùåíèå î ïåðåðèñîâêå, íàæàòà êíîïêà, îïðåäåë¸ííàÿ ðàíåå, ñîáûòèå îò ìûøè (÷òî-òî ñëó÷èëîñü - íàæàòèå íà êíîïêó ìûøè èëè ïåðåìåùåíèå; ñáðàñûâàåòñÿ ïðè ïðî÷òåíèè) |
mcall |
|
load_libraries l_libs_start,load_lib_end ;çàãðóçêà áèáëèîòåê(è) |
;mcall 48,3,sc,sizeof.system_colors ;ïîëó÷èòü ñèñòåìíûå öâåòà |
stdcall [OpenDialog_Init],OpenDialog_data ;ïîäãîòîâêà äèàëîãà |
|
;mode menu |
117,7 → 114,6 |
invoke edit_box_mouse, editLD |
invoke edit_box_mouse, editRU |
invoke edit_box_mouse, editRD |
;invoke check_box_mouse, ch1 ;ïðîâåðêà ÷åê áîêñà |
;stdcall [kmainmenu_dispatch_cursorevent], [modeMenu] ;ïðîâåðêà ìûøè äëÿ êîìáîáîêñà |
|
jmp event_wait |
315,11 → 311,6 |
mov byte[eax], bl |
pop ebx |
|
;; mov byte[eax], 48;'0' ;110; 'n' ;ïî óìîë÷àíèþ ôëàã ñíÿò |
;; cmp word[ch1.flags], 110b ;ch_flag_en and ch_flag_middle ;âûñòàâëåí checkBox èëè íåò? |
;; jne applyButton.no |
;; mov byte[eax], 49;'1' ;121 ;èíà÷å êëàä¸ì 'y' |
;;.no: |
inc eax |
call addPerenos |
|
406,10 → 397,7 |
cmp eax, 0 |
jne finishHotAnglesApp.next ;åñëè íå ñîâïàëî, òî ïåðåõîäèì íà ñëåäóþùèé ñëîò |
|
;push eax ebx ecx |
mcall 18, 2, ecx ;èíà÷å çàâåðøàåì ñëîò |
;pop ecx ebx eax |
|
.next: |
inc ecx |
cmp ecx, dword[slotMax] |
437,11 → 425,7 |
.rezerv dd 0, 0 |
.full_name db '/rd/1/' |
.file_name db '@HOTANGLES', 0 |
;db 0 |
;.name: dd HotAnglesAppName |
;HotAnglesAppName db '@HOTANGLES', 0 |
|
|
UpdateEditsSizes: |
push eax |
mov eax, dword[editLU.size] |
493,18 → 477,6 |
mov byte[mode], 49 ;'1' èíà÷å ïî óìîë÷àíèþ âêëþ÷¸í êëàññè÷åñêèé ðåæèì ðàáîòû |
.modeEnd: |
pop ebx |
|
;; cmp byte[eax], 49;'1' ;121 ;'y' ;âûñòàâëÿåì checkBox - ïàðàìåòð àêòèâíîñòè ïðèëîæåíèÿ |
;; jne @f ;loadConfig.no |
;;.yes: |
;; mov word[ch1.flags], 110b ;ch_flag_en and ch_flag_middle |
;; jmp loadConfig.chEnd |
;;@@: |
;; cmp byte[eax], 50;'2' ;âòîðîé ðåæèì àêòèâèðîâàí |
;; je loadConfig.yes |
;;.no: |
;; mov word[ch1.flags], 100b ;ch_flag_middle |
;;.chEnd: |
;jmp loadConfig.end ;êîìàíäà äëÿ óäîáñòâà îòëàäêè è ïîèñêà îøèáîê |
|
;êîïèðóåì ñîäåðæèìîå ñòðîê â áóôåð |
724,8 → 696,6 |
invoke edit_box_draw, editRU |
invoke edit_box_draw, editRD |
|
;invoke check_box_draw, ch1 ;ðèñîâàíèå ÷åêáîêñîâ |
|
;ðèñóåì êíîïêó |
mov ebx, (WindowsWidth-80-Otstup)*65536 + 80 ;êîîðäèíàòà X, øèðèíà êíîïêè |
mov ecx, 160*65536 + 20 ;êîîðäèíàòà Y, âûñîòà êíîïêè |
736,12 → 706,12 |
mov ebx, (WindowsWidth-80-Otstup+25-buttonTextXoffset) * 65536 + 166 ;êîîðäèíàòû òåêñòà (x, y) |
mov ecx, 0xFFFFFF ;áåëûé öâåò òåêñòà |
mov edx, buttonText |
mov esi, buttonTextSize ;5 ;ðàçìåð òåêñòà â ñèìâîëàõ |
mov esi, buttonTextSize ;ðàçìåð òåêñòà â ñèìâîëàõ |
mcall 4 |
|
;ðèñóåì åù¸ 4 êíîïêè äëÿ äèàëîãîâîãî îêíà âûáîðà ôàéëà |
;íîìåðà 4,5,6 è 7 |
buttonH = 14 ;20 |
buttonH = 14 |
buttonW = 30 |
;ëåâûé âåðõíèé óãîë |
mov ebx, Otstup*65536 + buttonW ;êîîðäèíàòà X, øèðèíà êíîïêè |
784,7 → 754,6 |
mov ebx, (WindowsWidth-Otstup-buttonW+deltaCommonTextX) * 65536 + (120 + deltaCommonTextY) |
mcall 4 |
|
|
;delete mode button, if it exist |
mov edx, 0x80000008 |
mcall 8 |
797,16 → 766,23 |
mov ebx, buttonModeX*65536 + buttonModeWidth ;X + Width |
mov ecx, buttonModeY*65536 + buttonModeHeight ;Y + Height |
mov edx, 0x00000008 ;button id |
mov esi, 0x00AABBCC ;color button |
mov esi, 0x00FFFFFF ;color button |
mcall 8 |
mov ebx, (buttonModeX+2+buttonModeWidth-20)*65536 + (20-2) ;X + Width |
mov ecx, (buttonModeY+1)*65536 + buttonModeHeight-2 ;Y + Height |
mov edx, 0xAABBCC |
mcall 13 |
;draw text for button Mode |
mov ebx, (buttonModeX+buttonModeTextXoffset) * 65536 + (buttonModeY+6) ;(x, y) |
mov ecx, 0xFFFFFF |
mov ecx, 0x000000 |
call setTextModeMenu |
mov esi, valueModeMenuSize |
mcall 4 |
mov ebx, (buttonModeX+buttonModeWidth-12) * 65536 + (buttonModeY+6) |
mov ecx, 0x80FFFFFF |
mov edx, symbolDownArrow |
mcall 4 |
|
|
call draw_super_text |
|
LineLength = 62 |
870,12 → 846,6 |
option_box_draw, 'option_box_draw',\ |
option_box_mouse, 'option_box_mouse' |
|
|
;DATA äàííûå check_box èñïîëüçóåò ñèñòåìíûå öâåòà |
|
;êîîðäèíàòû (x,y) = (30, 160) ðàçìåð ÷åêáîêñà 12, öâåò òåêñòà 0x224466 |
;ch1 check_box2 30 shl 16 + 12, 160 shl 16 + 12, 6, 0xFFFFFFFF, 0xAABBCC, 0x224466, ch_text, 110b ; ch_flag_en and ch_flag_middle |
|
commonButtonText db '...', 0 ;òåêñò äëÿ êíîïîê âûçîâà OpenDial |
commonButtonTextSize = 3 |
|
906,6 → 876,13 |
valueModeMenu2 db '०¨¬ £®àï祩 ª« ¢¨è¨ ',0 |
valueModeMenu3 db '०¨¬ ¦¥áâ ¯® ª« ¢¨è¥ ªâ¨¢ 樨',0 |
|
head_f_i: |
head_f_l db '¨á⥬ ï ®è¨¡ª ',0 |
err_message_found_lib0 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'proc_lib.obj',39,0 |
err_message_import0 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'proc_lib.obj',39,0 |
err_message_found_lib1 db '¥ ©¤¥ ¡¨¡«¨®â¥ª ',39,'kmenu.obj',39,0 |
err_message_import1 db '訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'kmenu',39,0 |
|
else ;èíà÷å àíãëèéñêèé òåêñò |
|
text db "This is a Hot Angles Configurator. " |
933,6 → 910,13 |
valueModeMenu2 db 'hot key mode ',0 |
valueModeMenu3 db 'activation key gesture mode ',0 |
|
head_f_i: |
head_f_l db 'System error',0 |
err_message_found_lib0 db 'Could not find library ',39,'proc_lib.obj',39,0 |
err_message_import0 db 'Error importing library ',39,'proc_lib.obj',39,0 |
err_message_found_lib1 db 'Could not find library ',39,'kmenu.obj',39,0 |
err_message_import1 db 'Error importing library ',39,'kmenu',39,0 |
|
end if |
|
|
969,7 → 953,6 |
pop esi edi edx ecx ebx eax |
ret |
|
;![ |
editID db 0 |
initEBX: |
cmp byte[editID], 4 |
1064,7 → 1047,7 |
popad |
ret |
|
;äûííûå äëÿ äèàëîãà îòêðûòèÿ ôàéëîâ |
;äàííûå äëÿ äèàëîãà îòêðûòèÿ ôàéëîâ |
align 4 |
OpenDialog_data: |
.type dd 0 ;0 - îòêðûòü, 1 - ñîõðàíèòü, 2 - âûáðàòü äèðåêòîðèþ |
1113,24 → 1096,19 |
aOpenDialog_Init db 'OpenDialog_init',0 |
aOpenDialog_Start db 'OpenDialog_start',0 |
|
head_f_i: |
head_f_l db 'Ñèñòåìíàÿ îøèáêà',0 |
err_message_found_lib0 db 'Íå íàéäåíà áèáëèîòåêà ',39,'proc_lib.obj',39,0 |
err_message_import0 db 'Îøèáêà ïðè èìïîðòå áèáëèîòåêè ',39,'proc_lib.obj',39,0 |
err_message_found_lib1 db 'Íå íàéäåíà áèáëèîòåêà ',39,'kmenu.obj',39,0 ;'¥ ©¤¥ ¡¨¡«¨®â¥ª ' |
err_message_import1 db 'Îøèáêà ïðè èìïîðòå áèáëèîòåêè ',39,'kmenu',39,0 ;'訡ª ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ' |
|
system_dir0 db '/sys/lib/' |
lib0_name db 'proc_lib.obj',0 |
lib1_name db 'kmenu.obj',0 |
|
symbolDownArrow db 25,0 |
|
;library structures |
l_libs_start: |
lib0 l_libs lib0_name, sys_path, file_name, system_dir0, err_message_found_lib0, head_f_l, proclib_import,err_message_import0, head_f_i |
lib1 l_libs lib1_name, sys_path, file_name, system_dir0, err_message_found_lib1, head_f_l, import_libkmenu,err_message_import1,head_f_i |
load_lib_end: |
;!] |
|
|
edMaxSize = 510 ;òåïåðü ñ íîâûì êîìïîíåíòîì ìîæíî è 511 óêàçàòü |
edMax = 0 ;max, size, pos |
|
1188,7 → 1166,7 |
.size2: rd 1 |
.size3: rd 1 |
.size4: rd 1 |
;255+255+2 |
;255+255+2 = 512 |
;äâà çàïàñíûõ áàéòà íåîáõîäèìû äëÿ òîãî ÷òî áû íå ïåïåðåïèñàòü ñëåäóþùèåé áàéòû, â êîíöå áóôåðà 0 |
dataBufferEnd: |
|