16,10 → 16,11 |
include 'mem.inc' |
include 'dll.inc' |
include 'strlen.inc' |
include 'obj_codes.inc' |
|
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc, dll.Load |
|
hed db 'kol_f_edit 29.11.10',0 |
hed db 'kol_f_edit 08.12.10',0 |
|
sizeof.TreeList equ 20 ;need for element 'tree_list' |
|
33,39 → 34,38 |
buf2d_color equ dword[edi+16] ;梥â ä® ¡ãä¥à |
buf2d_bits equ byte[edi+20] ;ª®«¨ç¥á⢮ ¡¨â ¢ 1-© â®çª¥ ¨§®¡à ¦¥¨ï |
|
MAX_LEN_OBJ_TXT equ 200 |
|
MAX_CED_OBJECTS equ 200 |
MAX_OPT_FIELDS equ 11 |
MAX_OBJ_TYPES equ 18 |
MAX_OBJ_TYPES equ 18 ;¬ ªá¨¬ «ì®¥ ç¨á«® ®¡ê¥ªâ®¢ |
MAX_OBJ_CAPTIONS equ 1000 ;à §¬¥à ¤®¯®«¨â¥«ìëå ¯®¤¯¨á¥© ¯®¤¯¨á¥© |
WND_CAPT_COLOR equ 0xb0d0ff |
BUF_SIZE equ 1000 |
|
C_TD equ 't' ;typedef |
C_AC equ 'a' ; ¢â®¬ â¨ç¥áª¨¥ ª®¤ë (auto code) |
C_ST equ 's' ;struct |
C_IN equ '#' ;include |
C_TT equ 'd' ;¡«®ª ª®¤ (¤ ëå) |
C_VR equ '-' ;¯¥à¥¬¥ ï |
C_CO equ ';' ;ª®¬¬¥â ਩ |
C_WI equ 'w' ;®ª® |
C_CB equ 'c' ;CheckBox |
C_OP equ 'o' ;OptionBox |
C_ED equ 'e' ;EditBox |
C_BU equ 'b' ;Button |
C_DT equ 'x' ;à¨á®¢ âì ⥪áâ |
C_RE equ 'r' ;à¨á®¢ âì ¯àאַ㣮«ì¨ª |
C_KE equ 'k' ;ª« ¢¨ âãà |
C_LIB equ 'l' |
C_IFN equ 'f' |
|
;modif |
CPP_MOD_ACM equ 2 ;ᮡëâ¨ï ¬ëè¨ |
BIT_MOD_ACM equ 1 ;ᮡëâ¨ï ¬ëè¨ |
CPP_MOD_ACI equ 4 ; ¢ª«î票ï |
BIT_MOD_ACI equ 2 ; ¢ª«î票ï |
CPP_MOD_ACD equ 8 ;¤ ë¥ ®¡ê¥ªâ®¢ |
BIT_MOD_ACD equ 3 ;¤ ë¥ ®¡ê¥ªâ®¢ |
CPP_MOD_ABU equ 16 ;á¢ï§ë¢ ¨¥ ª®¯®ª |
BIT_MOD_ABU equ 4 ;á¢ï§ë¢ ¨¥ ª®¯®ª |
|
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 |
CPP_MOD_TXT_ASCII_0 equ 1 ; ⥪áâ § ª 稢. 0 |
CPP_MOD_TXT_TRAN equ 4 ; ⥪á⠯஧à çë© |
CPP_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 ; £à ¤¨¥âë© ¯àאַ㣮«ì¨ª |
CPP_MOD_BUT_NFON equ 1 ; á⨫ì Button ¥ à¨á®¢ âì ª®¯ªã |
CPP_MOD_BUT_NBORD equ 2 ; á⨫ì Button ¥ à¨á®¢ âì £à ¨æã |
|
macro load_image_file path,buf,size ;¬ ªà®á ¤«ï § £à㧪¨ ¨§®¡à ¦¥¨© |
{ |
copy_path path,sys_path,fp_icon,0x0 ;ä®à¬¨à㥬 ¯®«ë© ¯ãâì ª ä ©«ã ¨§®¡à ¦¥¨ï, ¯®¤à §ã¬¥¢ ¥¬ çâ® ® ¢ ®¤®© ¯ ¯ª¥ á ¯à®£à ¬¬®© |
116,7 → 116,7 |
ends |
|
struct ObjOpt |
c db ? |
db ? |
bl_type db ? |
graph db ? |
info rb 30 |
123,6 → 123,7 |
caption rb 200 |
Col rw MAX_OPT_FIELDS |
img rw MAX_OPT_FIELDS ;¨¤¥ªáë ª à⨮ª (¢ ä ©«¥ 'icon.bmp') |
bit_prop dd 0 ;¡¨â®¢ë¥ ᢮©á⢠|
ends |
|
SKIN_H equ 22 |
151,6 → 152,7 |
fn_syntax db 'asm.syn',0 ;¨¬ï § £à㦠¥¬®£® ä ©« á¨â ªá¨á |
|
include 'ced_wnd_m.inc' |
include 'ced_wnd_prop.inc' ;ä ©« á äãªæ¨ï¬¨ ®ª ᢮©á⢠®¡ê¥ªâ |
include 'ced_constr.inc' ;ä ©« á äãªæ¨ï¬¨ ®ª ª®áâàãªâ®à |
include 'ced_code_g.inc' ;ä ©« á äãªæ¨ï¬¨ £¥¥à¨à®¢ ¨ï ª®¤®¢ |
|
180,17 → 182,15 |
mcall -1 ;exit not correct |
@@: |
|
mov eax,[wndObjI.top] |
add eax,[recMain.top] |
inc eax |
mov ebx,[wndObjI.left] |
add ebx,16+6 ;è¨à¨ ¨ª®ª¨ + ®âáâã¯ë |
;§ ¤ ¨¥ à §¬¥à®¢ ¯®«¥© ᮠ᢮©á⢠¬¨ |
mov eax,prop_edits_top |
mov ebx,16+6 ;è¨à¨ ¨ª®ª¨ + ®âáâã¯ë |
mov edi,edit2 |
@@: |
mov ed_top,eax ;®âáâ㯠ᢥàåã |
mov ed_left,ebx ;®âáâ㯠᫥¢ |
add edi,ed_struc_size |
add eax,[recMain.height] |
add eax,prop_edits_height |
cmp edi,prop_wnd_edits_end |
jl @b |
|
226,8 → 226,9 |
load_image_file fn_icon_tl_sys, icon_tl_sys,TREE_ICON_SYS16_BMP_SIZE |
;¥á«¨ ¨§®¡à ¦¥¨¥ ¥ ®âªàë«®áì, â® ¢ icon_tl_sys ¡ã¤ãâ |
;¥ ¨¨æ¨ «¨§¨à®¢ ë¥ ¤ ë¥, ® ®è¨¡ª¨ ¥ ¡ã¤¥â, â. ª. ¡ãä¥à 㦮£® à §¬¥à |
m2m dword[tree1.data_img_sys],dword[icon_tl_sys] |
m2m dword[tree2.data_img_sys],dword[icon_tl_sys] |
mov eax,dword[icon_tl_sys] |
mov dword[tree1.data_img_sys],eax |
mov dword[tree2.data_img_sys],eax |
|
;1-© ä ©« ᪨ |
load_image_file fn_skin_1, icon_font_s1,IMAGE_FILE_SKIN1_SIZE |
254,7 → 255,7 |
;load options file |
mov eax,70 |
mov [run_file_70.Position], 0 |
mov [run_file_70.Count], sizeof.ObjOpt*MAX_OBJ_TYPES |
mov [run_file_70.Count], sizeof.ObjOpt*MAX_OBJ_TYPES+MAX_OBJ_CAPTIONS |
mov [run_file_70.Buffer], obj_opt |
mov [run_file_70.FileName], fp_obj_opt |
mov ebx,run_file_70 |
271,7 → 272,7 |
cmp bl,0 |
je @f |
;xor ecx,ecx ;¢ ecx ¡ã¤¥â ¨¤¥ªá ¨ª®ª¨ |
mov cx,word[eax+sizeof.ObjOpt-2*MAX_OPT_FIELDS] |
mov cx,word[eax+obj_opt.img-obj_opt] |
cmp cx,0 |
jge .zero |
xor cx,cx ;çâ®-¡ë ¥ £«î稫® á ®âà¨æ ⥫ìë¬ ¨¤¥ªá®¬ |
454,21 → 455,15 |
int 0x40 |
@@: |
|
cmp [err_ini0],1 |
je err_init_icon |
cmp [err_ini1],1 |
je err_init_icon |
call draw_obj_info ;®ª® । ªâ¨à®¢ ¨ï ¢ë¡à ®£® ®¡ê¥ªâ |
err_init_icon: |
|
stdcall [edit_box_draw], dword edit1 |
stdcall [edit_box_draw], dword edit_sav |
|
mov dword[w_scr_t1.all_redraw],1 |
;stdcall [scrollbar_ver_draw],dword w_scr_t1 |
stdcall [tl_draw],dword tree1 |
mov dword[w_scr_t1.all_redraw],1 |
stdcall [scrollbar_ver_draw],dword w_scr_t1 |
mov dword[w_scr_t2.all_redraw],1 |
;stdcall [scrollbar_ver_draw],dword w_scr_t2 |
stdcall [tl_draw],dword tree2 |
mov dword[w_scr_t2.all_redraw],1 |
stdcall [scrollbar_ver_draw],dword w_scr_t2 |
|
cmp byte[show_mode],0 ;ãá«®¢¨¥ ¢¨¤¨¬®á⨠®ª ª®áâàãªâ®à |
jne @f |
485,14 → 480,6 |
align 4 |
mouse: |
stdcall [edit_box_mouse], dword edit1 |
push edi |
mov edi,edit2 |
.cycle: |
stdcall [edit_box_mouse], edi |
add edi,ed_struc_size |
cmp edi,prop_wnd_edits_end |
jl .cycle |
pop edi |
stdcall [edit_box_mouse], dword edit_sav |
stdcall [tl_mouse], dword tree1 |
stdcall [tl_mouse], dword tree2 |
507,27 → 494,10 |
key: |
mcall 2 |
stdcall [edit_box_key], dword edit1 |
push edi |
mov edi,edit2 |
.cycle: |
stdcall [edit_box_key], edi |
add edi,ed_struc_size |
cmp edi,prop_wnd_edits_end |
jl .cycle |
pop edi |
stdcall [edit_box_key], dword edit_sav |
stdcall [tl_key], dword tree1 |
stdcall [tl_key], dword tree2 |
|
; cmp ah,178 ;Up |
; jne @f |
; cmp [cur_y],0 |
; je @f |
; dec [cur_y] |
; call get_obj_pos |
; call draw_window |
; @@: |
|
jmp still |
|
align 4 |
541,10 → 511,10 |
jne @f |
call but_save_proj |
@@: |
cmp ah,10 |
jne @f |
call but_element_change |
@@: |
;cmp ah,10 |
;jne @f |
;call but_element_change |
;@@: |
cmp ah,11 |
jne @f |
call but_show_constructor |
653,7 → 623,7 |
|
call find_obj_in_opt ;edi = pointer to ObjOpt struct |
|
mov cx,word[edi+sizeof.ObjOpt-2*MAX_OPT_FIELDS] |
mov cx,word[edi+obj_opt.img-obj_opt] |
cmp cx,0 |
jge .zero |
xor cx,cx ;çâ®-¡ë ¥ £«î稫® á ®âà¨æ ⥫ìë¬ ¨¤¥ªá®¬ |
743,6 → 713,8 |
ret |
|
;¡¥à¥â ®¬¥à ¯® ¯®à浪㠯® 㪠§ ⥫î áâàãªâãàã ®¡ê¥ªâ |
;output: |
; eax - ®¬¥à ®¡ê¥ªâ |
align 4 |
proc get_obj_npp, p_obj_str:dword |
mov eax,2 |
820,22 → 792,19 |
;äãªæ¨ï ®¡à â ï ª ¤ ®© but_element_change |
align 4 |
on_file_object_select: |
cmp byte[prop_wnd_run],0 |
jne @f |
mov byte[prop_wnd_run],1 |
stdcall [tl_node_get_data], tree2 |
pop dword[foc_obj] |
cmp dword[foc_obj],0 |
je @f |
push ebx edi |
xor ebx,ebx |
mov edi,edit2 |
.cycle: |
stdcall set_obj_win_param, ebx,edi |
inc ebx |
add edi,ed_struc_size |
cmp edi,prop_wnd_edits_end |
jl .cycle |
pop edi ebx |
pushad |
;¢á¥ ¤¥©áâ¢¨ï ¯® áâனª¥ í«¥¬¥â®¢ ã¯à ¢«¥¨ï ¢ë¯®«ïîâáï ¢ ®ª¥ ᮠ᢮©á⢠¬¨ |
mcall 51,1,prop_start,prop_thread |
popad |
@@: |
call draw_window |
;call draw_window |
ret |
|
align 4 |
944,9 → 913,9 |
show_mode db 0 ;०¨¬ ¤«ï ¯®ª § ®¯à¥¤¥«¥®£® ®ª |
txtErrOpen db '¥ ©¤¥ ä ©«, ¯à®¢¥àì⥠¯à ¢¨«ì®áâì ¨¬¥¨',0 |
txtErrIni1 db '¥ ®âªàë«áï ä ©« á ®¯æ¨ï¬¨',0 |
err_opn db 0 |
err_ini0 db 0 ;??? |
err_ini1 db 0 |
err_opn db 0 ;१. ®âªàëâ¨ï ä ©« ¯à®íªâ |
err_ini0 db 0 ;१. ®âªàëâ¨ï ä ©« á ¨ª®ª ¬¨ |
err_ini1 db 0 ;१. ®âªàëâ¨ï ä ©« á ®¯æ¨ï¬¨ |
|
edit1 edit_box 210, 10, 5, 0xffffff, 0xff80, 0xff, 0xff0000, 0x4080, 300, ed_text1, mouse_dd, 0, 7, 7 |
|
987,7 → 956,7 |
el_focus dd tree1 |
;¤¥à¥¢® ᮠᯨ᪮¬ ¢®§¬®¦ëå ⨯®¢ ®¡ê¥ªâ®¢ |
tree1 tree_list sizeof.ObjOpt,20+2, tl_key_no_edit+tl_draw_par_line+tl_list_box_mode,\ |
16,16, 0xffffff,0xb0d0ff,0xd000ff, 5,50,125,100, 0,3,0, el_focus,\ |
16,16, 0xffffff,0xb0d0ff,0xd000ff, 5,50,125,280, 0,3,0, el_focus,\ |
w_scr_t1,on_add_object |
;¤¥à¥¢® á ®¡ê¥ªâ ¬¨ ¢ ¯®«ì§®¢ ⥫ì᪮¬ ä ©«¥ |
tree2 tree_list sizeof.object,MAX_CED_OBJECTS+2, tl_draw_par_line,\ |
1187,15 → 1156,13 |
|
image_data dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ¨ï ª à⨪¨ äãªæ¨ï¬¨ libimg |
|
recMain BOX 3,20,16,18 ;ª®®à¤¨ âë: 1,2 - ®âáâã¯ë; 3,4 - à §¬¥à |
ced_info object 0 ;on start == 0 |
rb sizeof.object*(MAX_CED_OBJECTS-1) |
|
wndObjI BOX 5,155,125+16,175 |
text_buffer db BUF_SIZE dup(0) |
fn_obj_opt db 'ob_o.opt',0 |
obj_opt ObjOpt |
rb sizeof.ObjOpt*(MAX_OBJ_TYPES-1) |
rb sizeof.ObjOpt*(MAX_OBJ_TYPES-1)+MAX_OBJ_CAPTIONS |
db 0 ;eof options |
|
cur_x dd 0 |
1308,6 → 1275,10 |
edit_box_mouse dd aEdit_box_mouse |
edit_box_set_text dd aEdit_box_set_text |
|
init_checkbox dd aInit_checkbox |
check_box_draw dd aCheck_box_draw |
check_box_mouse dd aCheck_box_mouse |
|
scrollbar_ver_draw dd aScrollbar_ver_draw |
scrollbar_hor_draw dd aScrollbar_hor_draw |
|
1370,6 → 1341,10 |
aEdit_box_mouse db 'edit_box_mouse',0 |
aEdit_box_set_text db 'edit_box_set_text',0 |
|
aInit_checkbox db 'init_checkbox2',0 |
aCheck_box_draw db 'check_box_draw2',0 |
aCheck_box_mouse db 'check_box_mouse2',0 |
|
aScrollbar_ver_draw db 'scrollbar_v_draw',0 |
aScrollbar_hor_draw db 'scrollbar_h_draw',0 |
|
1508,6 → 1483,8 |
fp_icon rb 1024 ;icon file path |
fp_obj_opt rb 1024 ;obj options file patch |
rb 1024 |
prop_thread: |
rb 1024 |
thread: ;¢¢¥àåã ¤®ç¥à¨© á⥪ ¤«ï ®ª á®®¡é¥¨ï |
rb 1024 |
stacktop: ;¢¢¥àåã á⥪ ®á®¢®© ¯à®£à ¬¬ë |