Subversion Repositories Kolibri OS

Rev

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

Rev 6046 Rev 6060
Line 40... Line 40...
40
	mcall 40,0x27 ;¬ áª  ®¦¨¤ ¥¬ëå ᮡë⨩
40
	mcall 40,0x27 ;¬ áª  ®¦¨¤ ¥¬ëå ᮡë⨩
41
	inc byte[prop_wnd_run]
41
	inc byte[prop_wnd_run]
42
	mov dword[w_scr_t3.type],1
42
	mov dword[w_scr_t3.type],1
43
	mov edi,o3d
43
	mov edi,o3d
44
	stdcall obj_clear_param, edi
44
	stdcall obj_clear_param, edi
-
 
45
	call mnu_reset_settings
-
 
46
 
-
 
47
	mov eax,dword[ctx1] ;eax -> TinyGLContext.GLContext
-
 
48
	mov eax,[eax] ;eax -> ZBuffer
-
 
49
	mov eax,[eax+offs_zbuf_pbuf] ;eax -> ZBuffer.pbuf
-
 
50
	mov dword[buf_ogl],eax
Line 45... Line 51...
45
 
51
 
46
	stdcall [tl_node_get_data],tree1
52
	stdcall [tl_node_get_data],tree1
47
	xor edx,edx
53
	xor edx,edx
48
	mov dword[capt_p],txt_q
54
	mov dword[capt_p],txt_q
Line 52... Line 58...
52
		add ebx,[open_file_data]
58
		add ebx,[open_file_data]
Line 53... Line 59...
53
 
59
 
54
		cmp word[ebx],CHUNK_OBJBLOCK
60
		cmp word[ebx],CHUNK_OBJBLOCK
55
		jne .end_oblo
61
		jne .end_oblo
56
			mov dword[capt_p],txt_4000
62
			mov dword[capt_p],txt_4000
57
			stdcall found_block_data, tree1
-
 
58
			cmp eax,0
-
 
59
			je .no_points
-
 
60
			mov esi,eax
-
 
61
			movzx ecx,byte[esi+2] ;cl - ã஢¥­ì ¢ë¡à ­­®£® 㧫 
-
 
62
			.cycle_0:
-
 
63
				stdcall [tl_node_poi_get_next_info], tree1,esi
-
 
64
				cmp eax,0
-
 
65
				je .no_points
-
 
66
				cmp byte[eax+2],cl
-
 
67
				jle .no_points
-
 
68
				mov esi,eax
-
 
69
				stdcall [tl_node_poi_get_data], tree1,esi
-
 
70
				mov ebx,[eax]
-
 
71
				add ebx,[open_file_data]
-
 
72
				cmp word[ebx],CHUNK_VERTLIST
-
 
73
				je .ini_vlist
-
 
74
				jmp .cycle_0
63
			stdcall obj_init,edi
75
			jmp .no_points
64
			jmp .no_points
76
		.end_oblo:
65
		.end_oblo:
77
		cmp word[ebx],CHUNK_TRIMESH
66
		cmp word[ebx],CHUNK_TRIMESH
78
		jne .end_trim
67
		jne .end_trim
79
			mov dword[capt_p],txt_4100
68
			mov dword[capt_p],txt_4100
80
			stdcall found_block_data, tree1
-
 
81
			cmp eax,0
-
 
82
			je .no_points
-
 
83
			mov esi,eax
-
 
84
			movzx ecx,byte[esi+2] ;cl - ã஢¥­ì ¢ë¡à ­­®£® 㧫 
-
 
85
			.cycle_1:
-
 
86
				stdcall [tl_node_poi_get_next_info], tree1,esi
-
 
87
				cmp eax,0
-
 
88
				je .no_points
-
 
89
				cmp byte[eax+2],cl
-
 
90
				jle .no_points
-
 
91
				mov esi,eax
-
 
92
				stdcall [tl_node_poi_get_data], tree1,esi
-
 
93
				mov ebx,[eax]
-
 
94
				add ebx,[open_file_data]
-
 
95
				cmp word[ebx],CHUNK_VERTLIST
-
 
96
				je .ini_vlist
-
 
97
				jmp .cycle_1
69
			stdcall obj_init,edi
98
			jmp .no_points
70
			jmp .no_points
99
		.end_trim:
71
		.end_trim:
100
		cmp word[ebx],CHUNK_VERTLIST
72
		cmp word[ebx],CHUNK_VERTLIST
101
		jne .end_vlist
73
		jne .end_vlist
102
			mov dword[capt_p],txt_4110
-
 
103
			.ini_vlist:
-
 
104
			movzx edx,word[ebx+6] ;ª®««¨ç¥á⢮ â®ç¥ª
-
 
105
			add ebx,8
-
 
106
			;¯®¨áª ¤ ­­ëå ¤«ï âà¥ã£®«ìª®¢
74
			mov dword[capt_p],txt_4110
107
			stdcall found_block_data, tree1
-
 
108
			cmp eax,0
-
 
109
			je .set_points
-
 
110
			mov esi,eax
-
 
111
			;¥á«¨ ­ è«¨ ¢ë¡à ­­ë© 㧥«, â® ¤ «¥¥ ¯ëâ ¥¬áï ­ ©â¨ 㧥« á âà¥ã£®«ì­¨ª ¬¨
-
 
112
			movzx ecx,byte[esi+2] ;cl - ã஢¥­ì ¢ë¡à ­­®£® 㧫 
-
 
113
			.cycle_2:
-
 
114
				stdcall [tl_node_poi_get_next_info], tree1,esi
-
 
115
				cmp eax,0
-
 
116
				je .set_points
-
 
117
				mov esi,eax
-
 
118
				stdcall [tl_node_poi_get_data], tree1,esi
-
 
119
				cmp byte[esi+2],cl
-
 
120
				jl .set_points
-
 
121
				je .found
-
 
122
				jmp .cycle_2
-
 
123
			.found: ;¥á«¨ ­ è«¨ 㧥« ⮣®¦¥ ã஢­ï çâ® ¨ ¢ë¡à ­­ë© 㧥«
-
 
124
				cmp eax,0
-
 
125
				je .set_points
-
 
126
				mov eax,[eax]
-
 
127
				add eax,[open_file_data]
-
 
128
				cmp word[eax],CHUNK_FACELIST
-
 
129
				jne .cycle_2
-
 
130
				movzx ecx,word[eax+6]
-
 
131
				mov [edi+offs_obj_tri_count],ecx
-
 
132
				add eax,8 ;2+4+2 (chunk+size+count)
-
 
133
				mov [edi+offs_obj_tri_data],eax
75
			stdcall obj_init,edi
134
			jmp .set_points
76
			jmp .no_points
135
		.end_vlist:
77
		.end_vlist:
136
		cmp word[ebx],CHUNK_TRACKPIVOT
78
		cmp word[ebx],CHUNK_TRACKPIVOT
137
		jne @f
79
		jne @f
138
			inc edx
80
			inc edx
Line 151... Line 93...
151
		mov [edi+offs_obj_poi_data],ebx
93
		mov [edi+offs_obj_poi_data],ebx
152
		mov [edi+offs_obj_poi_count],edx
94
		mov [edi+offs_obj_poi_count],edx
153
	.no_points:
95
	.no_points:
Line 154... Line 96...
154
 
96
 
-
 
97
	;­ áâனª  ᯨ᪠ ®¡ê¥ªâ®¢
155
	;­ áâனª  ᯨ᪠ ®¡ê¥ªâ®¢
98
	mov ebx,[edi+offs_obj_poi_data]
-
 
99
	mov dword[tree3.info_max_count],2
156
	mov dword[tree3.info_max_count],2
100
	mov edx,[edi+offs_obj_poi_count]
157
	add dword[tree3.info_max_count],edx ;áâ ¢¨¬ ç¨á«® 㧫®¢, à ¢­®¥ ª®««¨ç¥áâ¢ã â®ç¥ª (+2 ­  ­ ç «® ¨ ª®­¥æ ᯨ᪠)
101
	add dword[tree3.info_max_count],edx ;áâ ¢¨¬ ç¨á«® 㧫®¢, à ¢­®¥ ª®««¨ç¥áâ¢ã â®ç¥ª (+2 ­  ­ ç «® ¨ ª®­¥æ ᯨ᪠)
158
	stdcall dword[tl_data_init], tree3
102
	stdcall dword[tl_data_init], tree3
159
	mov eax,dword[icon_tl_sys]
103
	mov eax,dword[icon_tl_sys]
160
	mov dword[tree3.data_img_sys],eax
104
	mov dword[tree3.data_img_sys],eax
Line 163... Line 107...
163
 
107
 
164
	cmp edx,0
108
	cmp edx,0
165
	je .no_object
109
	je .no_object
166
		mov word[NumberSymbolsAD],5
110
		mov word[NumberSymbolsAD],5
-
 
111
		finit
167
		finit
112
		mov dword[w_scr_t3.redraw],0
168
		.new_point:
113
		.new_point:
169
			mov dword[obj_point],ebx
114
			mov dword[obj_point],ebx
170
			mov dword[obj_point.text],0
115
			mov dword[obj_point.text],0
171
			cld
116
			cld
Line 188... Line 133...
188
			stdcall dword[tl_node_add], tree3,(ID_ICON_POINT shl 16),obj_point 
133
			stdcall dword[tl_node_add], tree3,(ID_ICON_POINT shl 16),obj_point 
189
			stdcall dword[tl_cur_next], tree3
134
			stdcall dword[tl_cur_next], tree3
190
			dec edx
135
			dec edx
191
			cmp edx,0
136
			cmp edx,0
192
			jg .new_point
137
			jg .new_point
-
 
138
			mov dword[w_scr_t3.redraw],1
193
			stdcall dword[tl_cur_beg], tree3
139
			stdcall dword[tl_cur_beg], tree3
194
	.no_object:
140
	.no_object:
195
	stdcall obj_set_sizes, o3d
141
	stdcall obj_set_sizes, o3d
196
	stdcall obj_set_normals, o3d
142
	stdcall obj_set_normals, o3d
197
	edit_boxes_set_sys_color edit1,editboxes_end,sc ;ãáâ ­®¢ª  á¨á⥬­ëå 梥⮢
143
	edit_boxes_set_sys_color edit1,editboxes_end,sc ;ãáâ ­®¢ª  á¨á⥬­ëå 梥⮢
Line 214... Line 160...
214
	mov ebx,[color_oz]
160
	mov ebx,[color_oz]
215
	shr ebx,2
161
	shr ebx,2
216
	and ebx,0x3f3f3f
162
	and ebx,0x3f3f3f
217
	add eax,ebx
163
	add eax,ebx
218
	mov [edit3.color],eax
164
	mov [edit3.color],eax
219
 
-
 
220
	mov eax,dword[ctx1] ;eax -> TinyGLContext.GLContext
-
 
221
	mov eax,[eax] ;eax -> ZBuffer
-
 
222
	mov eax,[eax+offs_zbuf_pbuf] ;eax -> ZBuffer.pbuf
-
 
223
	mov dword[buf_ogl],eax
-
 
224
popad
165
popad
225
 
-
 
226
	call prop_red_win
166
	call prop_red_win
Line 227... Line 167...
227
 
167
 
228
;­¥ ®âà뢠âì íâã äã­ªæ¨î ®â ¯à¥¤ë¤ã饩
168
;­¥ ®âà뢠âì íâã äã­ªæ¨î ®â ¯à¥¤ë¤ã饩
229
align 4
169
align 4
Line 525... Line 465...
525
		pop esi edi ecx ebx eax
465
		pop esi edi ecx ebx eax
526
		jmp prop_still.end
466
		jmp prop_still.end
527
	@@:
467
	@@:
528
	cmp ah,5
468
	cmp ah,5
529
	jne @f
469
	jne @f
530
		call mnu_vertexes_on_off
470
		call mnu_vertexes_on
531
		jmp prop_still.end
471
		jmp prop_still.end
532
	@@:
472
	@@:
533
	cmp ah,6
473
	cmp ah,6
534
	jne @f
474
	jne @f
535
		call mnu_faces_on_off
475
		call mnu_edges_on
536
		jmp prop_still.end
476
		jmp prop_still.end
537
	@@:
477
	@@:
538
	cmp ah,7
478
	cmp ah,7
539
	jne @f
479
	jne @f
540
		call mnu_faces_fill_on_off
480
		call mnu_faces_on
541
		jmp prop_still.end
481
		jmp prop_still.end
542
	@@:
482
	@@:
543
	cmp ah,8
483
	cmp ah,8
544
	jne @f
484
	jne @f
545
		call mnu_light_on_off
485
		call mnu_light_on_off