From 88d9c9e6b1d6c95abc7be30e20fb1c58e7a47083 Mon Sep 17 00:00:00 2001 From: IgorA Date: Sat, 18 Dec 2010 10:13:51 +0000 Subject: [PATCH] 1) small update 'init_checkbox2' in 'box_lib.obj' 2) update 'kol_f_edit' now can create element 'checkbox2' git-svn-id: svn://kolibrios.org@1720 a494cfbc-eb01-0410-851d-a64ba20cac60 --- programs/develop/kol_f_edit/box_l.ced | Bin 32960 -> 33388 bytes programs/develop/kol_f_edit/ced_code_g.inc | 247 ++++++++++++++---- programs/develop/kol_f_edit/ced_constr.inc | 98 +++++-- programs/develop/kol_f_edit/kol_f_edit.asm | 32 ++- programs/develop/kol_f_edit/min_prog.ced | Bin 25681 -> 25470 bytes programs/develop/kol_f_edit/ob_o.asm | 18 +- programs/develop/kol_f_edit/obj_codes.inc | 6 +- .../libraries/box_lib/trunk/checkbox2.mac | 4 +- 8 files changed, 314 insertions(+), 91 deletions(-) diff --git a/programs/develop/kol_f_edit/box_l.ced b/programs/develop/kol_f_edit/box_l.ced index ab428c655485e207e5cdaa3e5270a1cd20615155..bd91b698be1d1d2098a1d6377d3ec3ec5d93207e 100644 GIT binary patch delta 797 zcmX@m$n>U#X~H>1u8HTbGIC8`$_OH>nLuP9Gl*1Yxym?q@?Vy#VsjbbAT2X5vm`z_ zBQ-gD@E1>#@ly2?0l@>*^X*~|kXBY8ojJ|BqOC?Gsp zg8vYd^$yAc$s~#kPo5fu?Tu0GZn92{dBvX8u4hH8tWPKTxVX<0>QPhTbgr~QE+l~E{F`wyUHpEiq_4H1~C(b0S1u6WaB!JQqKCTjE0l%*I(s7002I{7Tf>; delta 734 zcmaFU!gQdKX~MaQ3LF!!fyl{g7{OE%6PSu%22*-0=NM;C{>yR|NHTJXOrFes5X#Er zfU)d3AuN!Z>s%mmEjNg4=DEt)KRJ>YMC$W_NLGFjc^gb_6acX|3J6c0C3pzRDi8v( z62*lly9vWsG9oZmm}t!83*sD;!$jkts!oVP87YB(l0$m|00d^15l6O;py&q3toz4E#& zU}`(#=0&PyOhC4zMk_m`*5>*8jZ8pF(FjP*-n`hvkP}EZu$fAkChK!rjd_vfO?A<{?8)k2IjC#lq zlvmEW$~b58`E1e2eAx$p{PWo$=YjYWa-}9;$yo;Hfn)>ot}^mZR?i2KfAg=3^TRD> zNL;^e$*R@wo-bXy;{8Oyz3dE({Xj{^&DRT-GqQr!O^z(S2-K%ta#a9X-kbhB diff --git a/programs/develop/kol_f_edit/ced_code_g.inc b/programs/develop/kol_f_edit/ced_code_g.inc index 1bbcec8f26..cbab3e041e 100644 --- a/programs/develop/kol_f_edit/ced_code_g.inc +++ b/programs/develop/kol_f_edit/ced_code_g.inc @@ -46,6 +46,36 @@ proc insert_text_prop, p_obj:dword,index:dword ret endp +;ЇєэъЎш  тёЄрты хЄ 2 ярЁрьхЄЁр яю 16 сшЄ т тшфх: +; (_p1_ shl 16 + _p2_) +align 4 +proc insert_2_prop_16_bit, obj:dword, p_hi:dword, p_lo:dword + stdcall insert_text, txt_skob_o + stdcall insert_text_prop, [obj],[p_hi] + stdcall insert_text, txt_shl_16 + stdcall insert_text, txt_skob_c + stdcall insert_text, txt_plus + stdcall insert_text_prop, [obj],[p_lo] + ret +endp + +;тёЄрты хь ёЄЁюъє тшфр: +; txt_(n) db (s) +align 4 +proc insert_text_label_data, obj:dword, col:dword + push eax edx + mov eax,[obj] + stdcall insert_text, txt_txt + mov edx,fp_icon + stdcall get_obj_id_str, eax,edx ;edx = 'n' + stdcall str_cat, edx,txt_db ;edx = 'n db ' + stdcall insert_text, edx + stdcall insert_text_prop, eax,[col] + insert_nl + pop edx eax + ret +endp + macro insert_tab { stdcall [ted_text_add], tedit0,txt_tab,1,ted_opt_ed_move_cursor @@ -82,11 +112,6 @@ macro insert_reg8 reg_name { stdcall [ted_text_add], tedit0,reg_name,2,ted_opt_ed_move_cursor } -macro insert_i65p -{ - stdcall [ted_text_add], tedit0,txt_i65p,7,ted_opt_ed_move_cursor -} - ; macro insert_but_beg @@ -151,7 +176,7 @@ popad ; esi - єърчрЄхы№ эр єчхы align 4 code_gen_obj: -push ebx +push ebx edx .beg_iterat: cmp esi,0 je .find_no @@ -165,9 +190,24 @@ push ebx je .find_no cmp dword[eax],C_STR - jne @f - stdcall insert_text,txt_struct + jne .no_struct + stdcall get_obj_text_col, eax,1 ;edx - єърчрЄхы№ эр 1-х ётющёЄтю ёЄЁєъЄєЁ√ + stdcall insert_text,txt_struc + cmp byte[edx],0 + jne @f + stdcall insert_text,txt_t + @@: + insert_sp stdcall insert_text_prop, eax,0 + + cmp byte[edx],0 + je @f + ;хёыш ёЄЁєъЄєЁр чрфрэр ьръЁюёюь + insert_sp + stdcall insert_text_prop, eax,1 + insert_nl + stdcall insert_text, txt_skob_fo + @@: insert_nl stdcall dword[tl_node_poi_get_next_info], esi,tree2 @@ -181,9 +221,16 @@ push ebx call code_gen_obj ;ЁхъєЁёштэ√щ т√чют фюўхЁэшї юс·хъЄют pop bx .end_st: + cmp byte[edx],0 + je @f + ;хёыш ёЄЁєъЄєЁр чрфрэр ьръЁюёюь + stdcall insert_text, txt_skob_fc + insert_nl + jmp .beg_iterat + @@: stdcall insert_text,txt_ends jmp .beg_iterat - @@: + .no_struct: cmp dword[eax],C_TXT jne @f stdcall get_code_text,eax ;юсЁрсюЄър юс·хъЄр @@ -218,7 +265,7 @@ push ebx jmp .beg_iterat .find_no: -pop ebx +pop edx ebx ret ;фюсртыхэшх юс·хъЄр ё яЁюуЁрьэ√ь ъюфюь (ЄхъёЄюь) @@ -238,6 +285,14 @@ proc get_code_auto, p_obj:dword pushad insert_nl mov ebx,dword[p_obj] + test_bool_prop ebx,BIT_MOD_ACI + jae @f + mov edx,C_CHB + stdcall find_obj_in_file,edx ;eax - указатель на структуру check_box + cmp eax,0 + je @f + stdcall insert_text, txt_std_init_cb + @@: test_bool_prop ebx,BIT_MOD_ACM jae @f ;ртЄюьрЄшўхёъшх ёюс√Єш  юЄ ь√°ш @@ -254,12 +309,23 @@ proc get_code_auto, p_obj:dword test_bool_prop ebx,BIT_MOD_ACD jae @f call get_code_auto_data_el + + mov edx,C_CHB + stdcall find_obj_in_file,edx ;eax - указатель на структуру check_box + cmp eax,0 + je .no_check + stdcall insert_text, txt_cb_b + call get_code_auto_data_el_cbox + stdcall insert_text, txt_cb_e + .no_check: + call get_code_auto_data_dop mov edx,C_LIB stdcall find_obj_in_file,edx ;eax - єърчрЄхы№ эр ёЄЁєъЄєЁє сшсышюЄхъш cmp eax,0 je @f + insert_nl stdcall insert_text, txt_head_i stdcall insert_text, txt_d_poi insert_nl @@ -281,7 +347,6 @@ proc get_code_auto, p_obj:dword ret endp - align 4 proc get_code_auto_m pushad @@ -299,19 +364,13 @@ proc get_code_auto_m cmp dword[ebx],C_EDB jne @f stdcall insert_text, txt_std_mouse_ed - ;insert_sp - stdcall get_obj_text_col,ebx,0 - stdcall str_len,edx - stdcall [ted_text_add], tedit0,edx,eax,ted_opt_ed_move_cursor + stdcall insert_text_prop, ebx,0 insert_nl @@: cmp dword[ebx],C_CHB jne @f stdcall insert_text, txt_std_mouse_cb - ;insert_sp - stdcall get_obj_text_col,ebx,0 - stdcall str_len,edx - stdcall [ted_text_add], tedit0,edx,eax,ted_opt_ed_move_cursor + stdcall insert_text_prop, ebx,0 insert_nl @@: @@ -361,7 +420,7 @@ proc get_code_auto_data_el mov edx,fp_icon stdcall get_obj_id_str, ebx,edx - stdcall insert_text,edx + stdcall insert_text, edx stdcall insert_text, txt_mouse_dd @@ -396,13 +455,95 @@ proc get_code_auto_data_el @@: cmp dword[ebx],C_DTT jne @f + stdcall insert_text_label_data, ebx,0 + @@: + + stdcall dword[tl_node_poi_get_next_info], esi,tree2 + pop esi ;яхЁхїюфшь ъ ёыхфє∙хьє єчыє + + jmp .beg_iterat + .find_no: + popad + ret +endp + +align 4 +proc get_code_auto_data_el_cbox + pushad + insert_nl ;юЄёЄєя фы  ЇюЁьрЄшЁютрэш  + + stdcall dword[tl_node_poi_get_info], 0,tree2 + pop esi + .beg_iterat: + cmp esi,0 + je .find_no + + stdcall dword[tl_node_poi_get_data], esi,tree2 + pop ebx ;яюыєўрхь фрээ√х єчыр + cmp ebx,0 + je .find_no + + cmp dword[ebx],C_CHB + jne .no_check + ;1,2,3,4,5, 6,7,8, 9 - ot_x,ot_y,w,h,ot_w_txt, col_fon,col_frame,col_txt, txt + + stdcall insert_text_prop, ebx,0 + stdcall insert_text, txt_cbox + insert_sp + + stdcall insert_2_prop_16_bit, ebx,1,3 + stdcall insert_text, txt_coma + stdcall insert_2_prop_16_bit, ebx,2,4 + stdcall insert_text, txt_coma + + stdcall insert_text_prop, ebx,5 + stdcall insert_text, txt_coma + insert_sp + + stdcall insert_text_prop, ebx,6 + stdcall insert_text, txt_coma + stdcall insert_text_prop, ebx,7 + stdcall insert_text, txt_coma + ;stdcall insert_text, txt_bit_31 + ;stdcall insert_text, txt_plus + stdcall insert_text_prop, ebx,8 + stdcall insert_text, txt_coma + stdcall insert_text, txt_br + stdcall insert_text, txt_txt mov edx,fp_icon stdcall get_obj_id_str, ebx,edx - stdcall insert_text,edx - stdcall insert_text, txt_db - stdcall insert_text_prop, ebx,0 + stdcall insert_text, edx + stdcall insert_text, txt_coma + + ;Їыруш + stdcall insert_text,txt_0 + test_bool_prop ebx,BIT_MOD_CHE + jnc @f + stdcall insert_text,txt_plus + stdcall insert_text,txt_bit_che + @@: + test_bool_prop ebx,BIT_MOD_CHE_T + jnc @f + stdcall insert_text,txt_plus + stdcall insert_text,txt_bit_che_t + @@: + test_bool_prop ebx,BIT_MOD_CHE_M + jnc @f + stdcall insert_text,txt_plus + stdcall insert_text,txt_bit_che_m + @@: + test_bool_prop ebx,BIT_MOD_CHE_B + jnc @f + stdcall insert_text,txt_plus + stdcall insert_text,txt_bit_che_b + @@: + insert_nl + .no_check: + cmp dword[ebx],C_DTT + jne @f + stdcall insert_text_label_data, ebx,0 @@: stdcall dword[tl_node_poi_get_next_info], esi,tree2 @@ -610,6 +751,10 @@ pushad cmp dword[ecx],C_IFN jne @b ;тёЄртър єърчрЄхы  эр ЇєэъЎш■ + test_bool_prop ecx,BIT_MOD_IMPORT_FUNCT_COMMENT + jae .no_com_0 + stdcall insert_text, txt_com + .no_com_0: insert_tab stdcall insert_text_prop, ecx,0 stdcall insert_text, txt_dd @@ -634,6 +779,10 @@ pushad cmp dword[ecx],C_IFN jne @b ;тёЄртър шьхэш шьяюЁЄшЁютрээющ ЇєэъЎшш + test_bool_prop ecx,BIT_MOD_IMPORT_FUNCT_COMMENT + jae .no_com_1 + stdcall insert_text, txt_com + .no_com_1: insert_tab stdcall insert_text_prop, edx,3 ;яЁшёЄртър ъ ЇєэъЎшш stdcall insert_text_prop, ecx,0 @@ -715,6 +864,10 @@ proc get_code_auto_data_dop insert_0 insert_nl @@: + cmp dword[ebx],C_CHB + jne @f + stdcall insert_text_label_data, ebx,9 + @@: stdcall dword[tl_node_poi_get_next_info], esi,tree2 pop esi ;яхЁхїюфшь ъ ёыхфє∙хьє єчыє @@ -913,9 +1066,7 @@ proc get_code_window, p_obj:dword stdcall insert_text, txt_mov insert_reg txt_ebx insert_coma - stdcall insert_text_prop, ebx,2 - insert_i65p - stdcall insert_text_prop, ebx,4 + stdcall insert_2_prop_16_bit, ebx,2,4 insert_nl ;mov ecx,... @@ -923,9 +1074,7 @@ proc get_code_window, p_obj:dword stdcall insert_text, txt_mov insert_reg txt_ecx insert_coma - stdcall insert_text_prop, ebx,3 - insert_i65p - stdcall insert_text_prop, ebx,5 + stdcall insert_2_prop_16_bit, ebx,3,5 insert_nl ;mov edx,... @@ -1004,18 +1153,14 @@ proc get_code_draw_obj stdcall insert_text, txt_mov insert_reg txt_ebx insert_coma - stdcall insert_text_prop, ebx,1 - insert_i65p - stdcall insert_text_prop, ebx,3 + stdcall insert_2_prop_16_bit, ebx,1,3 insert_nl insert_tab stdcall insert_text, txt_mov insert_reg txt_ecx insert_coma - stdcall insert_text_prop, ebx,2 - insert_i65p - stdcall insert_text_prop, ebx,4 + stdcall insert_2_prop_16_bit, ebx,2,4 insert_nl insert_tab @@ -1060,18 +1205,14 @@ proc get_code_draw_obj stdcall insert_text, txt_mov insert_reg txt_ebx insert_coma - stdcall insert_text_prop, ebx,1 - insert_i65p - stdcall insert_text_prop, ebx,3 + stdcall insert_2_prop_16_bit, ebx,1,3 insert_nl insert_tab stdcall insert_text, txt_mov insert_reg txt_ecx insert_coma - stdcall insert_text_prop, ebx,2 - insert_i65p - stdcall insert_text_prop, ebx,4 + stdcall insert_2_prop_16_bit, ebx,2,4 insert_nl insert_tab @@ -1098,9 +1239,7 @@ proc get_code_draw_obj stdcall insert_text, txt_mov insert_reg txt_ebx insert_coma - stdcall insert_text_prop, ebx,1 - insert_i65p - stdcall insert_text_prop, ebx,2 + stdcall insert_2_prop_16_bit, ebx,1,2 insert_nl insert_tab @@ -1215,6 +1354,10 @@ endp txt_str_beg db 39,0 txt_str_end db 39,',0',0 txt_coma db ',',0 +txt_skob_o db '(',0 +txt_skob_c db ')',0 +txt_skob_fo db '{',0 ;ёъюсър ЇшуєЁэр  юЄъЁ√тр■∙р  +txt_skob_fc db '}',0 ;ёъюсър ЇшуєЁэр  чръЁ√тр■∙р  txt_i_40 db 'int 0x40',13,0 txt_0 db '0',0 txt_1 db '1',0 @@ -1257,8 +1400,13 @@ txt_bit_28 db '0x10000000',0 txt_bit_29 db '0x20000000',0 txt_bit_30 db '0x40000000',0 txt_bit_31 db '0x80000000',0 +txt_bit_che db 'ch_flag_en',0 +txt_bit_che_t db 'ch_flag_top',0 +txt_bit_che_m db 'ch_flag_middle',0 +txt_bit_che_b db 'ch_flag_bottom',0 txt_0x33000000 db '0x33000000',0 ;tmp -txt_struct db 'struct ',0 +txt_struc db 'struc',0 +txt_t db 't',0 txt_met_end db '.end',0 txt_ends db 'ends',13,13,0 txt_mov db 'mov ',0 @@ -1278,15 +1426,22 @@ txt_esi db 'esi',0 txt_align_4 db 'align 4',13,0 txt_d_poi db ':',0 txt_ret db 'ret',13,0 -txt_i65p db '*65536+',0 +txt_shl_16 db ' shl 16',0 txt_std_mouse_ed: db 9,'stdcall [edit_box_mouse], ',0 +txt_std_init_cb: + db 9,'init_checkboxes2 check_boxes,check_boxes_end',13,0 txt_std_mouse_cb: db 9,'stdcall [check_box_mouse], ',0 txt_std_key_ed: db 9,'stdcall [edit_box_key], ',0 txt_incl: db 'include ',0 + +txt_cbox db ' check_box2',0 +txt_cb_b db 13,'check_boxes:',0 +txt_cb_e db 'check_boxes_end:',13,0 + txt_ebox db ' edit_box',0 txt_editb_draw: db 9,'stdcall [edit_box_draw], ',0 diff --git a/programs/develop/kol_f_edit/ced_constr.inc b/programs/develop/kol_f_edit/ced_constr.inc index aa13320c80..f869eda2df 100644 --- a/programs/develop/kol_f_edit/ced_constr.inc +++ b/programs/develop/kol_f_edit/ced_constr.inc @@ -207,50 +207,108 @@ locals coor_x dd ? coor_y dd ? ot_txt dd ? ;отступ для текста - size_wh dd ? ;размер квадратика + size_w dd ? ;размер квадратика w + size_h dd ? ;размер квадратика h col_txt dd ? ;цвет тектса endl pushad mov ebx,dword[p_obj] - ;1,2,3, 4,5,6, 7,8 - x,y,txt, col_fon,col_frame,col_txt, w_txt,w_h + ;1,2,3,4,5, 6,7,8, 9 - ot_x,ot_y,w,h,ot_w_txt, col_fon,col_frame,col_txt, txt - stdcall get_obj_text_col,ebx,1 + stdcall get_obj_text_col,ebx,1 ;ot_x stdcall conv_str_to_int,edx mov [coor_x],eax - stdcall get_obj_text_col,ebx,2 + stdcall get_obj_text_col,ebx,2 ;ot_y stdcall conv_str_to_int,edx mov [coor_y],eax move_to_skin [coor_x],[coor_y] - stdcall get_obj_text_col,ebx,7 + stdcall get_obj_text_col,ebx,5 ;ot_w_txt stdcall conv_str_to_int,edx mov [ot_txt],eax - stdcall get_obj_text_col,ebx,8 + stdcall get_obj_text_col,ebx,3 ;w stdcall conv_str_to_int,edx dec eax ;размер меньше на 1 пиксель - mov [size_wh],eax - stdcall get_obj_text_col,ebx,5 + mov [size_w],eax + stdcall get_obj_text_col,ebx,4 ;h + stdcall conv_str_to_int,edx + dec eax ;размер меньше на 1 пиксель + mov [size_h],eax + stdcall get_obj_text_col,ebx,7 ;col_frame stdcall conv_str_to_int,edx stdcall [buf2d_rect_by_size], buf_fon, dword[coor_x],dword[coor_y],\ - dword[size_wh],dword[size_wh], eax + dword[size_w],dword[size_h], eax + ;заливка фона checkbox-а inc dword[coor_x] inc dword[coor_y] - sub dword[size_wh],2 - stdcall get_obj_text_col,ebx,4 + sub dword[size_w],2 + sub dword[size_h],2 + stdcall get_obj_text_col,ebx,6 ;col_fon stdcall conv_str_to_int,edx stdcall [buf2d_filled_rect_by_size], buf_fon, dword[coor_x],dword[coor_y],\ - dword[size_wh],dword[size_wh], eax + dword[size_w],dword[size_h], eax - stdcall get_obj_text_col,ebx,6 + test_bool_prop ebx,BIT_MOD_CHE + jnc @f + ;рисование отметки в checkbox-е + inc dword[coor_x] + inc dword[coor_y] + sub dword[size_w],2 + sub dword[size_h],2 + stdcall get_obj_text_col,ebx,7 ;col_frame + stdcall conv_str_to_int,edx + stdcall [buf2d_filled_rect_by_size], buf_fon, dword[coor_x],dword[coor_y],\ + dword[size_w],dword[size_h], eax + @@: + + ;востанавливаем положение и размеры + stdcall get_obj_text_col,ebx,1 ;ot_x + stdcall conv_str_to_int,edx + mov [coor_x],eax + stdcall get_obj_text_col,ebx,2 ;ot_y + stdcall conv_str_to_int,edx + mov [coor_y],eax + move_to_skin [coor_x],[coor_y] + stdcall get_obj_text_col,ebx,3 ;w + stdcall conv_str_to_int,edx + dec eax ;размер меньше на 1 пиксель + mov [size_w],eax + stdcall get_obj_text_col,ebx,4 ;h + stdcall conv_str_to_int,edx + dec eax ;размер меньше на 1 пиксель + mov [size_h],eax + + stdcall get_obj_text_col,ebx,8 ;col_txt stdcall conv_str_to_int,edx mov [col_txt],eax - mov eax,[ot_txt] - add eax,[size_wh] - add eax,2-1 ;sub dword[size_wh],2 ;inc dword[coor_x] - add [coor_x],eax ;вычисляем координаты для текстовой подписи - add [coor_y],5-1 ;inc dword[coor_y] - stdcall get_obj_text_col,ebx,3 - stdcall [buf2d_draw_text], buf_fon, buf_font,edx,dword[coor_x],dword[coor_y],\ + mov eax,[coor_x] + add eax,[size_w] + add eax,[ot_txt] ;вычисляем координаты для текстовой подписи + + test_bool_prop ebx,BIT_MOD_CHE_T + jc .end_txt_align ;if text aligment = top + + test_bool_prop ebx,BIT_MOD_CHE_M + jnc @f + shl [coor_y],1 ;умножаем на 2 + mov ecx,[size_h] + add [coor_y],ecx ;добавляем высоту checkbox + sub [coor_y],9 ;отнимаем высоту символа + shr [coor_y],1 ;делим на получившееся 2, получаем отступ для стоящего по центру текста + jmp .end_txt_align + @@: + + test_bool_prop ebx,BIT_MOD_CHE_B + jnc @f + mov ecx,[size_h] + add [coor_y],ecx ;добавляем высоту checkbox + sub [coor_y],9 ;отнимаем высоту символа + ;получаем отступ для стоящего снизу текста + @@: + .end_txt_align: + + stdcall get_obj_text_col,ebx,9 ;txt + stdcall [buf2d_draw_text], buf_fon, buf_font,edx,eax,dword[coor_y],\ dword[col_txt] ;рисуем строку с текстом popad ret diff --git a/programs/develop/kol_f_edit/kol_f_edit.asm b/programs/develop/kol_f_edit/kol_f_edit.asm index 984bb96e80..0bf8f976e8 100644 --- a/programs/develop/kol_f_edit/kol_f_edit.asm +++ b/programs/develop/kol_f_edit/kol_f_edit.asm @@ -20,7 +20,7 @@ include 'obj_codes.inc' @use_library_mem mem.Alloc,mem.Free,mem.ReAlloc, dll.Load -hed db 'kol_f_edit 13.12.10',0 +hed db 'kol_f_edit 18.12.10',0 sizeof.TreeList equ 20 ;need for element 'tree_list' @@ -43,23 +43,27 @@ WND_CAPT_COLOR equ 0xb0d0ff BUF_SIZE equ 1000 ;modif -BIT_MOD_ACI equ 0 ;подключения файлов +BIT_MOD_ACI equ 0 ;первоначальные настройки элементов BIT_MOD_ACM equ 1 ;события от мыши BIT_MOD_ACD equ 2 ;данные объектов BIT_MOD_ABU equ 3 ;связывание кнопок -;CPP_MOD_WI_CA equ 16 ; стиль окна подпись -;CPP_MOD_WI_AO equ 32 ; стиль окна координаты относительно клиентской области -;CPP_MOD_WI_RD equ 64 ; стиль окна перерисовка окна -;CPP_MOD_WI_GR equ 128 ; стиль окна градиент -;CPP_MOD_CHE equ 512 ; ch_flag_en - выбран CheckBox -BIT_MOD_TXT_ASCII_0 equ 0 ; текст заканчив. 0 -BIT_MOD_TXT_NO_TRAN equ 1 ; текст прозрачный -BIT_MOD_TXT_CHAR2 equ 2 ; текст 2-м шрифтом -;CPP_MOD_EDIT_FOC equ 1 ; EditBox в фокусе +;CPP_MOD_WI_CA equ 16 ;стиль окна подпись +;CPP_MOD_WI_AO equ 32 ;стиль окна координаты относительно клиентской области +;CPP_MOD_WI_RD equ 64 ;стиль окна перерисовка окна +;CPP_MOD_WI_GR equ 128 ;стиль окна градиент +BIT_MOD_CHE equ 0 ; ch_flag_en - выбран CheckBox +BIT_MOD_CHE_T equ 1 ;сверху +BIT_MOD_CHE_M equ 2 ;по центру +BIT_MOD_CHE_B equ 3 ;снизу +BIT_MOD_TXT_ASCII_0 equ 0 ;текст заканчив. 0 +BIT_MOD_TXT_NO_TRAN equ 1 ;текст прозрачный +BIT_MOD_TXT_CHAR2 equ 2 ;текст 2-м шрифтом +;CPP_MOD_EDIT_FOC equ 1 ;EditBox в фокусе ;CPP_MOD_EDIT_FIO equ 2 ; -;CPP_MOD_RE_GR equ 1 ; градиентный прямоугольник -BIT_MOD_BUT_NFON equ 0 ; стиль Button не рисовать кнопку -BIT_MOD_BUT_NBORD equ 1 ; стиль Button не рисовать границу +;CPP_MOD_RE_GR equ 1 ;градиентный прямоугольник +BIT_MOD_BUT_NFON equ 0 ;стиль Button не рисовать кнопку +BIT_MOD_BUT_NBORD equ 1 ;стиль Button не рисовать границу +BIT_MOD_IMPORT_FUNCT_COMMENT equ 0 ;коментировать функцию macro load_image_file path,buf,size ;макрос для загрузки изображений { diff --git a/programs/develop/kol_f_edit/min_prog.ced b/programs/develop/kol_f_edit/min_prog.ced index 953aad3ff9ab07998ed8d36f4f03568281c2ef75..b7c090844ac4eea656eee4486d979b2f9499f48f 100644 GIT binary patch delta 392 zcmcb3g7M!m#tG*bD<_`6%2+vhDIvvS%K7St@Ug`P2PqeO^QaX>_BR{C79B6e8>-!;tvFw z`V>s=4!X)($p8eKvqP3Mih`Lyo?~fA{@Mi(A3a#Na@C57g8SJS89-8ulf}a>0`SgEjT-4dYi z+64-$RxenzV!@-w4<1hx>=l6-26Ft{)l1hbUHjQwbrvSR!#Ocyb9zf8nv<7!!81idKq?A0NIc?zkmDz>OR8E$WS$TY6Qr(>_`yl7zHB5qe0}`=&L+P znu;c$i#g?qB#>>b@bTZ12MTZAJ$w63;mNy)4<5b#|LG5}wZi*%um3!M_vpc=r?3Bf zeD&g`!mD>rfWmJdD70Ik5SiU0rr diff --git a/programs/develop/kol_f_edit/ob_o.asm b/programs/develop/kol_f_edit/ob_o.asm index fe2afe93af..a0629b733e 100644 --- a/programs/develop/kol_f_edit/ob_o.asm +++ b/programs/develop/kol_f_edit/ob_o.asm @@ -41,9 +41,9 @@ ObjOpt C_EDB, 1,1,' ObjOpt C_OPT, 1,1,'Радио кнопка','имя*отступ слева*отступ сверху*цвет фона внутри*цвет рамки и внутр. галочки*цвет текста*подпись*отступ до надписи*размер квадрата',\ <40, 50, 60, 80,100,120,180,190, 0, 0, 0>,\ < 9, 15, 16, 25, 25, 25, 4, 26, 27, -1, -1> -ObjOpt C_CHB, 1,1,'Флажок','***подпись*цвет фона внутри*цвет рамки и внутр. галочки*цвет текста*отступ до надписи*размер квадрата',\ - <40, 50, 60,120,140,160,180,190, 0, 0, 0>,\ - < 8, 15, 16, 4, 25, 25, 25, 26, 27, -1, -1>,\ +ObjOpt C_CHB, 1,1,'Флажок','имя структуры*отступ слева*отступ сверху*ширина*высота*отступ до надписи*цвет фона внутри*цвет рамки и внутр. галочки*цвет текста*подпись',\ + <40, 50, 60, 70, 80, 90,110,130,150, 0, 0>,\ + < 8, 15, 16, 26, 27, 26, 25, 25, 25, 4,-1>,\ txt_bit_che ObjOpt C_TXT, 1,0,'asm код','',\ < 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>,\ @@ -63,7 +63,8 @@ ObjOpt C_LIB, 1,0,' <20, -1, -1, -1, 4, 4, -1, -1, -1, -1, -1> ObjOpt C_IFN, 1,0,'Функция из библиотеки','програмное имя функции*импортируемое имя функции',\ <100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0>,\ - <21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1> + <21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1>,\ + txt_bit_ifn ObjOpt C_DTT, 1,1,'Рисование текста','текстовая строка*координата по x*координата по y*цвет текста*цвет фона (если есть)',\ <40, 50, 60, 80, 0, 0, 0, 0, 0, 0, 0>,\ < 4, 15, 16, 25, 25, -1, -1, -1, -1, -1, -1>,\ @@ -81,7 +82,7 @@ ObjOpt 0x0d, 1,0, '-','',\ dd 0 ;разделитель ;названия битовых свойств -txt_bit_auto db 'подключения файлов',0 +txt_bit_auto db 'первоначальные настройки элементов',0 db 'события от мыши',0 db 'коды элементов',0 db 'нажатия на кнопки',0 @@ -95,6 +96,9 @@ txt_bit_edit db ' db 'цифры от 0-9',0 db 0 txt_bit_che db 'check_box выбран',0 + db 'текст cверху',0 + db 'текст по центру',0 + db 'текст cнизу',0 db 0 txt_bit_but db 'не рисовать кнопку',0 db 'не рисовать границу при нажатии',0 @@ -103,5 +107,5 @@ txt_bit_caption db ' db 'заливка фона',0 db '2-й шрифт',0 db 0 - - +txt_bit_ifn db 'закоментировать функцию',0 + db 0 diff --git a/programs/develop/kol_f_edit/obj_codes.inc b/programs/develop/kol_f_edit/obj_codes.inc index f1eee45c4c..221e8095de 100644 --- a/programs/develop/kol_f_edit/obj_codes.inc +++ b/programs/develop/kol_f_edit/obj_codes.inc @@ -3,18 +3,18 @@ ; C_TDF equ 'Type' ;typedef -C_ACO equ ('a' shl 24) ;автоматические коды (auto code) +C_ACO equ 'Auto' ;автоматические коды (auto code) C_STR equ ('s' shl 24) ;struct C_INC equ ('#' shl 24) ;include C_TXT equ ('d' shl 24) ;блок кода (данных) C_VAR equ ('-' shl 24) ;переменная C_COM equ (';' shl 24) ;комментарий C_WND equ ('w' shl 24) ;окно -C_CHB equ ('c' shl 24) ;CheckBox +C_CHB equ 'ChkB' ;CheckBox C_OPT equ ('o' shl 24) ;OptionBox C_EDB equ ('e' shl 24) ;EditBox C_BUT equ ('b' shl 24) ;Button -C_DTT equ ('x' shl 24) ;рисовать текст +C_DTT equ 'Text' ;рисовать текст C_REC equ 'Rect' ;рисовать прямоугольник C_KEY equ ('k' shl 24) ;клавиатура C_LIB equ 'Libr' ;библиотека diff --git a/programs/develop/libraries/box_lib/trunk/checkbox2.mac b/programs/develop/libraries/box_lib/trunk/checkbox2.mac index 91d4c25036..7724dbaa48 100644 --- a/programs/develop/libraries/box_lib/trunk/checkbox2.mac +++ b/programs/develop/libraries/box_lib/trunk/checkbox2.mac @@ -22,7 +22,9 @@ init_checkbox2: jnz @b .ex_loop: - mov dword 2ch_sz_str,ebx ;чряш°шь фышээє ёЄЁюъш ё єўхЄюь юЄёЄєяр юЄ ътрфЁрЄшър + mov dword 2ch_sz_str,ebx ;чряш°хь фышээє ёЄЁюъш ё єўхЄюь юЄёЄєяр юЄ ътрфЁрЄшър + or dword 2ch_text_color,0x80000000 ;фюсрты хь сшЄ фы  т√тюфр ASCIIZ-ёЄЁюъш + ;эр ёыєўрщ хёыш яюы№чютрЄхы№ чрс√ы хую ёрьюёЄю Єхы№эю яюёЄртшЄ№ т ёЄЁєъЄєЁх popad ret 4 }