Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1713 → Rev 1714

/programs/develop/kol_f_edit/ced_wnd_m.inc
1,92 → 1,4
align 4
draw_obj_info: ;®ª­® ᮠ᢮©á⢠¬¨ ®¡ê¥ªâ 
mov eax,13 ;rect
mov edx,WND_CAPT_COLOR
mov ebx,[wndObjI.left]
shl ebx,16
add ebx,[wndObjI.width]
mov ecx,[wndObjI.top]
add ecx,[recMain.top]
shl ecx,16
add ecx,[wndObjI.height]
sub ecx,[recMain.top]
mov edx,0xffffff ;0x80ffffff
int 0x40 ;¯àאַ㣮«ì­¨ª ¤«ï ®ª­ 
 
mov ecx,[wndObjI.top] ;draw caption
shl ecx,16
add ecx,[recMain.top]
mov edx,WND_CAPT_COLOR
int 0x40
 
mov edx,[foc_obj] ;¡¥à¥¬ 㪠§ â¥«ì ­  ®¡ê¥ªâ
cmp edx,0
je .exit_fun
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
pushad
;draw caption wndObjI
mov eax,4 ;¯®¤¯¨áì - ­ §¢ ­¨¥ ®¡ê¥ªâ 
 
mov bl,[edx]
call find_obj_in_opt
mov edx,edi
 
mov ebx,[wndObjI.left]
add ebx,[recMain.left]
add ebx,4
shl ebx,16
add ebx,[wndObjI.top]
add ebx,4
mov ecx,0xc0d000ff
mov edi,WND_CAPT_COLOR
add edx,obj_opt.info-obj_opt
int 0x40
 
mov eax,8 ;ª­®¯ª  ¤«ï á®åà ­¥­¨ï ¨§¬¥­¥­¨©
mov ebx,[wndObjI.left]
add ebx,119
shl ebx,16
add ebx,18
mov ecx,[wndObjI.top]
add ecx,1
shl ecx,16
add ecx,18
mov edx,10
mov esi,0xd040
int 0x40
 
ror ebx,16 ;¢ëç¨á«ï¥¬ ª®®à¤¨­ âë ¤«ï ¨ª®­ª¨
ror ecx,16
and ebx,0xffff
and ecx,0xffff
inc ebx
inc ecx
stdcall draw_icon, 17,ebx,ecx ;17 - save
 
mov edi,edit2
.cycle:
stdcall [edit_box_draw], edi ;à¨á㥬 ¯®«ï ᮠ᢮©á⢠¬¨ ®¡ê¥ªâ 
add edi,ed_struc_size
cmp edi,prop_wnd_edits_end
jl .cycle
 
popad
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
xor ebx,ebx ;­®¬¥à ¯®«ï
.draw_column:
mov eax,ebx
imul eax,[recMain.height]
add eax,[recMain.top]
add eax,[wndObjI.top]
stdcall draw_icon_obj,[edx],ebx,eax
 
inc ebx
cmp ebx,MAX_OPT_FIELDS
jl .draw_column
.exit_fun:
ret
 
;¯®¤­¨¬ ¥¬ ®¡ê¥ªâ ¢¢¥àå ¯® ᯨáªã
align 4
but_obj_move_up:
134,20 → 46,47
but_element_change:
;foc_obj - 㪠§ â¥«ì ­  ¯®á«¥¤­¨© ¢ë¡à ­­ë© 㧥« ¢ tree2
cmp dword[foc_obj],0
je @f
je .err_obj
pushad
;ãáâ ­®¢ª  ⥪á⮢ëå ᢮©áâ¢
xor ebx,ebx
mov edi,edit2
.cycle:
@@:
call get_obj_win_param
inc ebx
add edi,ed_struc_size
cmp edi,prop_wnd_edits_end
jl .cycle
jl @b
 
;ãáâ ­®¢ª  áá뫪¨ ­  ®¡ê¥ªâ ⨯ 
mov edx,dword[foc_obj]
mov dword[edx+u_object.typid-u_object],0 ;­  á«ãç © ¥á«¨ ­¨ç¥£® ­¥ ¢ë¡à ­®
stdcall [tl_node_get_data],tree3
pop eax
cmp eax,0
je @f
mov eax,dword[eax] ;¡¥à¥¬ ¯®à浪®¢ë© ­®¬¥à (¢ ¯ ¬ïâ¨) ¢ë¡à ­­®£® ®¡ê¥ªâ 
mov dword[edx+u_object.typid-u_object],eax
@@:
 
;ãáâ ­®¢ª  «®£¨ç¥áª¨å ᢮©áâ¢
mov edi,ch1.flags
mov eax,1
xor ebx,ebx
@@:
bt dword[edi],1 ;¯®ç¥¬ã ®­® âãâ ­¥ à ¡®â ¥â ï ­¥ §­ î ... ???
jnc .opt_no_sel
or ebx,eax ;­ ª®¯«¥­¨¥ ®â¬¥ç¥­­ëå ®¯æ¨©
.opt_no_sel:
shl eax,1
add edi,ch_struc_size
cmp edi,check_boxes_end
jl @b
mov dword[edx+u_object.modif-u_object],ebx
popad
@@:
.err_obj:
call draw_constructor ;®¡­®¢«ï¥¬ ®ª­® ª®­áâàãªâ®à 
call draw_window
;call draw_window
ret
 
;input:
259,7 → 198,7
endp
 
align 4
proc draw_icon_obj, o_type:dword,n_col:dword, coord_y:dword
proc draw_obj_icon, o_type:dword,n_col:dword, coord_y:dword
pushad
xor ebx,ebx
mov bl,byte[o_type]
283,8 → 222,7
 
mov eax,7
mov ecx,0x100010 ;ecx - size:16*16
mov edx,[wndObjI.left]
add edx,3 ;®âáâ㯠®â «¥¢®£® ªà ï à ¬ª¨ ¤® ¨ª®­ª¨
mov edx,3 ;®âáâ㯠®â «¥¢®£® ªà ï à ¬ª¨ ¤® ¨ª®­ª¨
shl edx,16
add edx,[coord_y]
int 0x40
293,7 → 231,55
ret
endp
 
;¢ë¢®¤ ⥪áâ  á ¯®¤¯¨áìî
align 4
proc draw_obj_caption, o_type:dword,n_col:dword, coord_y:dword
pushad
stdcall get_obj_text_len_col, [foc_obj], [n_col] ;eax - ¤«¨­­  ¯®«ï
cmp eax,1
jl .no_draw
 
xor ebx,ebx
mov bl,byte[o_type]
call find_obj_in_opt
 
mov edx,edi
add edx,obj_opt.caption-obj_opt
 
mov eax,[n_col]
mov ebx,150
shl ebx,16
add ebx,dword[coord_y]
add ebx,3
mov ecx,0 ;text color
 
mov esi,edx
.beg_found:
cmp byte[esi],0
je .end_found
cmp byte[esi],'*'
je @f
inc esi
jmp .beg_found
@@:
cmp eax,0
je .end_found
dec eax
inc esi
mov edx,esi ;¯¥à¥ª«îç ¥¬ ­ ç «® áâப¨ ­  á«¥¤. ¯®¤¯¨áì
jmp .beg_found
.end_found:
cmp esi,edx
jle .no_draw
sub esi,edx ;esi = text len
mov eax,4
int 0x40
.no_draw:
popad
ret
endp
 
align 4
proc draw_icon, ind:dword,coord_x:dword,coord_y:dword
pushad
mov ecx,[ind]