Subversion Repositories Kolibri OS

Rev

Rev 1711 | Rev 1715 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1711 Rev 1714
Line 1... Line -...
1
align 4
-
 
2
draw_obj_info: ;®ª­® ᮠ᢮©á⢠¬¨ ®¡ê¥ªâ 
-
 
3
	mov eax,13 ;rect
-
 
4
	mov edx,WND_CAPT_COLOR
-
 
5
	mov ebx,[wndObjI.left]
-
 
6
	shl ebx,16
-
 
7
	add ebx,[wndObjI.width]
-
 
8
	mov ecx,[wndObjI.top]
-
 
9
	add ecx,[recMain.top]
-
 
10
	shl ecx,16
-
 
11
	add ecx,[wndObjI.height]
-
 
12
	sub ecx,[recMain.top]
-
 
13
	mov edx,0xffffff ;0x80ffffff
-
 
14
	int 0x40 ;¯àאַ㣮«ì­¨ª ¤«ï ®ª­ 
-
 
15
 
-
 
16
	mov ecx,[wndObjI.top] ;draw caption
-
 
17
	shl ecx,16
-
 
18
	add ecx,[recMain.top]
-
 
19
	mov edx,WND_CAPT_COLOR
-
 
20
	int 0x40
-
 
21
 
-
 
22
	mov edx,[foc_obj] ;¡¥à¥¬ 㪠§ â¥«ì ­  ®¡ê¥ªâ
-
 
23
	cmp edx,0
-
 
24
	je .exit_fun
-
 
25
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
 
26
    pushad
-
 
27
    ;draw caption wndObjI
-
 
28
    mov eax,4 ;¯®¤¯¨áì - ­ §¢ ­¨¥ ®¡ê¥ªâ 
-
 
29
 
-
 
30
    mov bl,[edx]
-
 
31
    call find_obj_in_opt
-
 
32
    mov edx,edi
-
 
33
 
-
 
34
    mov ebx,[wndObjI.left]
-
 
35
    add ebx,[recMain.left]
-
 
36
    add ebx,4
-
 
37
    shl ebx,16
-
 
38
    add ebx,[wndObjI.top]
-
 
39
    add ebx,4
-
 
40
    mov ecx,0xc0d000ff
-
 
41
    mov edi,WND_CAPT_COLOR
-
 
42
    add edx,obj_opt.info-obj_opt
-
 
43
    int 0x40
-
 
44
 
-
 
45
	mov eax,8 ;ª­®¯ª  ¤«ï á®åà ­¥­¨ï ¨§¬¥­¥­¨©
-
 
46
    mov ebx,[wndObjI.left]
-
 
47
	add ebx,119
-
 
48
    shl ebx,16
-
 
49
	add ebx,18
-
 
50
	mov ecx,[wndObjI.top]
-
 
51
	add ecx,1
-
 
52
	shl ecx,16
-
 
53
	add ecx,18
-
 
54
	mov edx,10
-
 
55
	mov esi,0xd040
-
 
56
	int 0x40
-
 
57
 
-
 
58
	ror ebx,16 ;¢ëç¨á«ï¥¬ ª®®à¤¨­ âë ¤«ï ¨ª®­ª¨
-
 
59
	ror ecx,16
-
 
60
	and ebx,0xffff
-
 
61
	and ecx,0xffff
-
 
62
	inc ebx
-
 
63
	inc ecx
-
 
64
	stdcall draw_icon, 17,ebx,ecx ;17 - save
-
 
65
 
-
 
66
	mov edi,edit2
-
 
67
	.cycle:
-
 
68
		stdcall [edit_box_draw], edi ;à¨á㥬 ¯®«ï ᮠ᢮©á⢠¬¨ ®¡ê¥ªâ 
-
 
69
		add edi,ed_struc_size
-
 
70
		cmp edi,prop_wnd_edits_end
-
 
71
		jl .cycle
-
 
72
 
-
 
73
    popad
-
 
74
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
 
75
 
-
 
76
	xor ebx,ebx ;­®¬¥à ¯®«ï
-
 
77
	.draw_column:
-
 
78
		mov eax,ebx
-
 
79
		imul eax,[recMain.height]
-
 
80
		add eax,[recMain.top]
-
 
81
		add eax,[wndObjI.top]
-
 
82
		stdcall draw_icon_obj,[edx],ebx,eax
-
 
83
 
-
 
84
		inc ebx
-
 
85
		cmp ebx,MAX_OPT_FIELDS
-
 
86
	jl .draw_column
-
 
87
	.exit_fun:
-
 
88
	ret
-
 
Line 89... Line 1...
89
 
1
;¯®¤­¨¬ ¥¬ ®¡ê¥ªâ ¢¢¥àå ¯® ᯨáªã
90
;¯®¤­¨¬ ¥¬ ®¡ê¥ªâ ¢¢¥àå ¯® ᯨáªã
2
align 4
91
align 4
3
but_obj_move_up:
92
but_obj_move_up:
4
	stdcall [tl_node_move_up], tree2
Line 132... Line 44...
132
;äã­ªæ¨ï ®¡à â­ ï ª ¤ ­­®© on_file_object_select
44
align 4
133
align 4
45
but_element_change:
134
but_element_change:
46
	;foc_obj - 㪠§ â¥«ì ­  ¯®á«¥¤­¨© ¢ë¡à ­­ë© 㧥« ¢ tree2
135
	;foc_obj - 㪠§ â¥«ì ­  ¯®á«¥¤­¨© ¢ë¡à ­­ë© 㧥« ¢ tree2
47
	cmp dword[foc_obj],0
136
	cmp dword[foc_obj],0
48
	je .err_obj
137
	je @f
49
		pushad
138
		pushad
50
		;ãáâ ­®¢ª  ⥪á⮢ëå ᢮©áâ¢
-
 
51
		xor ebx,ebx
139
		xor ebx,ebx
52
		mov edi,edit2
140
		mov edi,edit2
53
		@@:
141
		.cycle:
54
			call get_obj_win_param
142
			call get_obj_win_param
55
			inc ebx
143
			inc ebx
56
			add edi,ed_struc_size
144
			add edi,ed_struc_size
57
			cmp edi,prop_wnd_edits_end
145
			cmp edi,prop_wnd_edits_end
58
		jl @b
146
			jl .cycle
59
 
-
 
60
		;ãáâ ­®¢ª  áá뫪¨ ­  ®¡ê¥ªâ ⨯ 
-
 
61
		mov edx,dword[foc_obj]
-
 
62
		mov dword[edx+u_object.typid-u_object],0 ;­  á«ãç © ¥á«¨ ­¨ç¥£® ­¥ ¢ë¡à ­®
-
 
63
		stdcall [tl_node_get_data],tree3
-
 
64
		pop eax
147
		popad
65
		cmp eax,0
-
 
66
		je @f
-
 
67
			mov eax,dword[eax] ;¡¥à¥¬ ¯®à浪®¢ë© ­®¬¥à (¢ ¯ ¬ïâ¨) ¢ë¡à ­­®£® ®¡ê¥ªâ 
-
 
68
			mov dword[edx+u_object.typid-u_object],eax
-
 
69
		@@:
148
	@@:
70
 
-
 
71
		;ãáâ ­®¢ª  «®£¨ç¥áª¨å ᢮©áâ¢
-
 
72
		mov edi,ch1.flags
-
 
73
		mov eax,1
-
 
74
		xor ebx,ebx
-
 
75
		@@:
-
 
76
			bt dword[edi],1 ;¯®ç¥¬ã ®­® âãâ ­¥ à ¡®â ¥â ï ­¥ §­ î ... ???
-
 
77
			jnc .opt_no_sel
-
 
78
				or ebx,eax ;­ ª®¯«¥­¨¥ ®â¬¥ç¥­­ëå ®¯æ¨©
-
 
79
			.opt_no_sel:
-
 
80
			shl eax,1
-
 
81
			add edi,ch_struc_size
-
 
82
			cmp edi,check_boxes_end
-
 
83
		jl @b
-
 
84
		mov dword[edx+u_object.modif-u_object],ebx
-
 
85
		popad
-
 
86
	.err_obj:
-
 
87
	call draw_constructor ;®¡­®¢«ï¥¬ ®ª­® ª®­áâàãªâ®à 
149
	call draw_constructor ;®¡­®¢«ï¥¬ ®ª­® ª®­áâàãªâ®à 
88
	;call draw_window
150
	call draw_window
89
	ret
151
	ret
90
 
Line 152... Line 91...
152
 
91
;input:
153
;input:
92
; ebx - property column
154
; ebx - property column
93
; edi - pointer to property editbox
Line 257... Line 196...
257
pop ebx
196
	ret
258
	ret
197
endp
259
endp
198
 
Line 260... Line 199...
260
 
199
align 4
261
align 4
200
proc draw_obj_icon, o_type:dword,n_col:dword, coord_y:dword
262
proc draw_icon_obj, o_type:dword,n_col:dword, coord_y:dword
201
	pushad
263
	pushad
202
	xor ebx,ebx
264
	xor ebx,ebx
203
	mov bl,byte[o_type]
265
	mov bl,byte[o_type]
204
	call find_obj_in_opt
Line 281... Line 220...
281
	imul ecx,0x300
220
	add ebx,ecx
282
	add ebx,ecx
221
 
Line 283... Line 222...
283
 
222
	mov eax,7
284
	mov eax,7
223
	mov ecx,0x100010 ;ecx - size:16*16
285
	mov ecx,0x100010 ;ecx - size:16*16
-
 
286
	mov edx,[wndObjI.left]
224
	mov edx,3 ;®âáâ㯠®â «¥¢®£® ªà ï à ¬ª¨ ¤® ¨ª®­ª¨
287
	add edx,3 ;®âáâ㯠®â «¥¢®£® ªà ï à ¬ª¨ ¤® ¨ª®­ª¨
225
	shl edx,16
288
	shl edx,16
226
	add edx,[coord_y]
289
	add edx,[coord_y]
227
	int 0x40
290
	int 0x40
228
	.end_fun:
291
	.end_fun:
229
	popad
292
	popad
230
	ret
293
	ret
231
endp
Line -... Line 232...
-
 
232
 
-
 
233
;¢ë¢®¤ ⥪áâ  á ¯®¤¯¨áìî
-
 
234
align 4
-
 
235
proc draw_obj_caption, o_type:dword,n_col:dword, coord_y:dword
-
 
236
	pushad
-
 
237
	stdcall get_obj_text_len_col, [foc_obj], [n_col] ;eax - ¤«¨­­  ¯®«ï
-
 
238
	cmp eax,1
-
 
239
	jl .no_draw
-
 
240
 
-
 
241
	xor ebx,ebx
-
 
242
	mov bl,byte[o_type]
-
 
243
	call find_obj_in_opt
-
 
244
 
-
 
245
	mov edx,edi
-
 
246
	add edx,obj_opt.caption-obj_opt
-
 
247
 
-
 
248
	mov eax,[n_col]
-
 
249
	mov ebx,150
-
 
250
	shl ebx,16
-
 
251
	add ebx,dword[coord_y]
-
 
252
	add ebx,3
-
 
253
	mov ecx,0 ;text color
-
 
254
 
-
 
255
	mov esi,edx
-
 
256
	.beg_found:
-
 
257
		cmp byte[esi],0
-
 
258
		je .end_found
-
 
259
		cmp byte[esi],'*'
-
 
260
		je @f
-
 
261
		inc esi
-
 
262
		jmp .beg_found
-
 
263
	@@:
-
 
264
	cmp eax,0
-
 
265
	je .end_found
-
 
266
		dec eax
-
 
267
		inc esi
-
 
268
		mov edx,esi ;¯¥à¥ª«îç ¥¬ ­ ç «® áâப¨ ­  á«¥¤. ¯®¤¯¨áì
-
 
269
		jmp .beg_found
-
 
270
	.end_found:
-
 
271
	cmp esi,edx
-
 
272
	jle .no_draw
-
 
273
		sub esi,edx ;esi = text len
-
 
274
		mov eax,4
-
 
275
		int 0x40
-
 
276
	.no_draw:
-
 
277
	popad
-
 
278
	ret
-
 
279
endp
294
endp
280
 
295
 
281
align 4
296
align 4
282
proc draw_icon, ind:dword,coord_x:dword,coord_y:dword
297
proc draw_icon, ind:dword,coord_x:dword,coord_y:dword
283
	pushad
298
	pushad
284
	mov ecx,[ind]