Subversion Repositories Kolibri OS

Rev

Rev 1717 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1717 Rev 5917
Line 33... Line 33...
33
	call find_obj_in_opt
33
	call find_obj_in_opt
34
	xor ecx,ecx
34
	xor ecx,ecx
35
	mov cx,word[edi+obj_opt.img-obj_opt] ;cx - ¨­¤¥ªá £« ¢­®© ¨ª®­ª¨ ¤®¡ ¢«ï¥¬®£® ®¡ê¥ªâ 
35
	mov cx,word[edi+obj_opt.img-obj_opt] ;cx - ¨­¤¥ªá £« ¢­®© ¨ª®­ª¨ ¤®¡ ¢«ï¥¬®£® ®¡ê¥ªâ 
36
	shl ecx,16
36
	shl ecx,16
37
	stdcall [tl_node_add], eax, ecx, tree2 ;¤®¡ ¢«ï¥¬ ®¡ê¥ªâ
37
	stdcall [tl_node_add], tree2,ecx,eax ;¤®¡ ¢«ï¥¬ ®¡ê¥ªâ
38
	stdcall [tl_draw], tree2
38
	stdcall [tl_draw], tree2
39
pop edi ecx ebx eax
39
pop edi ecx ebx eax
40
	ret
40
	ret
41
 
41
 
Line 42... Line 42...
42
;®¡­®¢«¥­¨¥ ®¡ê¥ªâ®¢ ¢ tree2, ¯® §­ ç¥­¨ï¬ ⥪á⮢ëå ¯®«¥©
42
;®¡­®¢«¥­¨¥ ®¡ê¥ªâ®¢ ¢ tree2, ¯® §­ ç¥­¨ï¬ ⥪á⮢ëå ¯®«¥©
Line 60... Line 60...
60
		;ãáâ ­®¢ª  áá뫪¨ ­  ®¡ê¥ªâ ⨯ 
60
		;ãáâ ­®¢ª  áá뫪¨ ­  ®¡ê¥ªâ ⨯ 
61
		mov edx,dword[foc_obj]
61
		mov edx,dword[foc_obj]
62
		mov dword[edx+u_object.typid-u_object],0 ;­  á«ãç © ¥á«¨ ­¨ç¥£® ­¥ ¢ë¡à ­®
62
		mov dword[edx+u_object.typid-u_object],0 ;­  á«ãç © ¥á«¨ ­¨ç¥£® ­¥ ¢ë¡à ­®
63
		stdcall [tl_node_get_data],tree3
63
		stdcall [tl_node_get_data],tree3
64
		pop eax
-
 
65
		cmp eax,0
64
		cmp eax,0
66
		je @f
65
		je @f
67
			mov eax,dword[eax] ;¡¥à¥¬ ¯®à浪®¢ë© ­®¬¥à (¢ ¯ ¬ïâ¨) ¢ë¡à ­­®£® ®¡ê¥ªâ 
66
			mov eax,dword[eax] ;¡¥à¥¬ ¯®à浪®¢ë© ­®¬¥à (¢ ¯ ¬ïâ¨) ¢ë¡à ­­®£® ®¡ê¥ªâ 
68
			mov dword[edx+u_object.typid-u_object],eax
67
			mov dword[edx+u_object.typid-u_object],eax
69
		@@:
68
		@@:
Line 152... Line 151...
152
;  ind - ­®¬¥à ¯®«ï ¢­ãâਠ®¡ê¥ªâ 
151
;  ind - ­®¬¥à ¯®«ï ¢­ãâਠ®¡ê¥ªâ 
153
;output:
152
;output:
154
;  eax - ¤«¨­­  ⥪á⮢®£® ¯®«ï ¢­ãâਠ®¡ê¥ªâ 
153
;  eax - ¤«¨­­  ⥪á⮢®£® ¯®«ï ¢­ãâਠ®¡ê¥ªâ 
155
align 4
154
align 4
156
proc get_obj_text_len_col, obj:dword, ind:dword
155
proc get_obj_text_len_col uses ebx ecx edi, obj:dword, ind:dword
157
	xor eax,eax
156
	xor eax,eax
158
push ebx ecx edi
157
	mov ecx,dword[ind]
159
	mov ecx,dword[ind]
-
 
160
	mov eax,dword[obj]
158
	mov eax,dword[obj]
161
	mov ebx,dword[eax] ;¢ ebx ¯®¯ ¤ ¥â ª®¤ ®¡ê¥ªâ 
159
	mov ebx,dword[eax] ;¢ ebx ¯®¯ ¤ ¥â ª®¤ ®¡ê¥ªâ 
162
	xor eax,eax
160
	xor eax,eax
163
 
161
 
Line 185... Line 183...
185
		mov eax,0 ;not text
183
		mov eax,0 ;not text
186
	@@:
184
	@@:
187
 
185
 
Line 188... Line 186...
188
	.end_fun:
186
	.end_fun:
189
pop edi ecx ebx
-
 
190
	ret
187
	ret
191
endp
188
endp
Line 192... Line 189...
192
 
189
 
193
align 4
190
align 4
Line 275... Line 272...
275
align 4
272
align 4
276
proc find_obj_in_file, o_type:dword
273
proc find_obj_in_file, o_type:dword
277
push ebx esi
274
push ebx esi
278
	mov ebx,[o_type]
275
	mov ebx,[o_type]
279
	stdcall dword[tl_node_poi_get_info], 0,tree2
276
	stdcall dword[tl_node_poi_get_info], tree2,0
280
	pop esi
277
	mov esi,eax
281
 
278
 
Line 282... Line 279...
282
	@@:
279
	@@:
283
		cmp esi,0
280
		cmp esi,0
284
		je .find_no
281
		je .find_no
Line 285... Line -...
285
 
-
 
286
		stdcall dword[tl_node_poi_get_data], esi,tree2
282
 
287
		pop eax ;¯®«ãç ¥¬ ¤ ­­ë¥ 㧫 
283
		stdcall dword[tl_node_poi_get_data], tree2,esi ;¯®«ãç ¥¬ ¤ ­­ë¥ 㧫 
288
		cmp eax,0
284
		cmp eax,0
Line 289... Line 285...
289
		je .find_no
285
		je .find_no
290
 
286
 
Line 291... Line 287...
291
		cmp dword[eax],ebx ;ᬮâਬ ®¯¨á ­ «¨ ¨áª®¬ë© ®¡ê¥ªâ ¢ 㧫¥
287
		cmp dword[eax],ebx ;ᬮâਬ ®¯¨á ­ «¨ ¨áª®¬ë© ®¡ê¥ªâ ¢ 㧫¥
292
		je .find_yes
288
		je .find_yes
Line 293... Line 289...
293
 
289
 
Line 294... Line 290...
294
		stdcall dword[tl_node_poi_get_next_info], esi,tree2
290
		stdcall dword[tl_node_poi_get_next_info], tree2,esi
295
		pop esi ;¯¥à¥å®¤¨¬ ª á«¥¤ã饬ã 㧫ã
291
		mov esi,eax ;¯¥à¥å®¤¨¬ ª á«¥¤ã饬ã 㧫ã
Line 309... Line 305...
309
 
305
 
Line 310... Line 306...
310
;¢ë室:
306
;¢ë室:
311
;eax - 㪠§ â¥«ì ­  áâàãªâãàã ­ ©¤¥­­®£® ®¡ê¥ªâ 
307
;eax - 㪠§ â¥«ì ­  áâàãªâãàã ­ ©¤¥­­®£® ®¡ê¥ªâ 
312
align 4
308
align 4
313
proc find_obj_in_file_next, o_type:dword
309
proc find_obj_in_file_next uses ebx esi, o_type:dword
314
push ebx esi
-
 
315
	cmp dword[obj_find_last],0
310
	cmp dword[obj_find_last],0
316
	je .find_no
311
	je .find_no
Line 317... Line 312...
317
 
312
 
Line 318... Line 313...
318
	mov ebx,dword[o_type]
313
	mov ebx,dword[o_type]
319
 
314
 
Line 320... Line 315...
320
	stdcall dword[tl_node_poi_get_next_info], dword[obj_find_last],tree2
315
	stdcall dword[tl_node_poi_get_next_info], tree2,dword[obj_find_last]
321
	pop esi ;¯¥à¥å®¤¨¬ ª á«¥¤ã饬ã 㧫ã
316
	mov esi,eax ;¯¥à¥å®¤¨¬ ª á«¥¤ã饬ã 㧫ã
322
 
317
 
Line 323... Line -...
323
	@@:
-
 
324
		cmp esi,0
318
	@@:
325
		je .find_no
319
		cmp esi,0
326
 
320
		je .find_no
Line 327... Line 321...
327
		stdcall dword[tl_node_poi_get_data], esi,tree2
321
 
328
		pop eax ;¯®«ãç ¥¬ ¤ ­­ë¥ 㧫 
322
		stdcall dword[tl_node_poi_get_data], tree2,esi ;¯®«ãç ¥¬ ¤ ­­ë¥ 㧫 
Line 329... Line 323...
329
		cmp eax,0
323
		cmp eax,0
330
		je .find_no
324
		je .find_no
Line 331... Line 325...
331
 
325
 
Line 332... Line 326...
332
		cmp dword[eax],ebx ;ᬮâਬ ®¯¨á ­ «¨ ¨áª®¬ë© ®¡ê¥ªâ ¢ 㧫¥
326
		cmp dword[eax],ebx ;ᬮâਬ ®¯¨á ­ «¨ ¨áª®¬ë© ®¡ê¥ªâ ¢ 㧫¥
333
		je .find_yes
327
		je .find_yes
334
 
328
 
335
		stdcall dword[tl_node_poi_get_next_info], esi, tree2
329
		stdcall dword[tl_node_poi_get_next_info], tree2,esi
336
		pop esi ;¯¥à¥å®¤¨¬ ª á«¥¤ã饬ã 㧫ã
330
		mov esi,eax ;¯¥à¥å®¤¨¬ ª á«¥¤ã饬ã 㧫ã
337
 
331
 
338
		jmp @b
332
		jmp @b
339
 
-
 
340
	.find_yes:
333
 
341
		mov dword[obj_find_last],esi
334
	.find_yes:
Line 342... Line 335...
342
		jmp @f
335
		mov dword[obj_find_last],esi
343
	.find_no:
336
		jmp @f