Rev 1705 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1705 | Rev 5911 | ||
---|---|---|---|
Line 74... | Line 74... | ||
74 |
|
74 |
|
75 |
|
75 |
|
Line 76... | Line 76... | ||
76 | 76 | ||
77 |
|
77 |
|
78 |
|
- | |
79 | push dword tree1 |
- | |
80 | push dword 0x10002 |
- | |
81 | push dword data_buffer |
78 |
|
82 | call dword[tl_node_add] |
79 | stdcall dword[tl_node_add], tree1,0x10002,data_buffer |
83 |
|
80 |
|
Line 84... | Line 81... | ||
84 | 0x10002 - ïàðàìåòðû óçëà (ñòàðøèå áàéòû 0x0001 - èíäåêñ èêîíêè, îòîáðàæàåìîé âîçëå óçëà; ìåíüøèé áàéò 0x02 - óðîâåíü âëîæåíîñòè óçëà); data_buffer - óêàçàòåëü íà äûííûå, äîáàâëÿåìûå â óçåë. |
81 | 0x10002 - ïàðàìåòðû óçëà (ñòàðøèå áàéòû 0x0001 - èíäåêñ èêîíêè, îòîáðàæàåìîé âîçëå óçëà; ìåíüøèé áàéò 0x02 - óðîâåíü âëîæåíîñòè óçëà); data_buffer - óêàçàòåëü íà äûííûå, äîáàâëÿåìûå â óçåë. |
85 | 82 | ||
Line 86... | Line 83... | ||
86 |
|
83 |
|
87 |
|
84 |
|
88 | 85 | ||
89 |
|
86 |
|
90 |
|
- | |
91 |
|
87 |
|
92 | stdcall [tl_node_get_data], tree1 |
88 |
|
Line 93... | Line 89... | ||
93 | pop eax |
89 | stdcall [tl_node_get_data], tree1 |
94 |
|
90 |
|
95 | eax - óêàçàòåëü íà äûííûå óçëà. |
91 | eax - óêàçàòåëü íà äûííûå óçëà. |
96 | 92 | ||
97 |
|
93 |
|
98 | NODE_SIZE equ 200 |
94 | NODE_SIZE equ 200 |
99 | node_data rb NODE_SIZE |
95 | node_data rb NODE_SIZE |
100 | ......... |
96 | ......... |
101 | push ecx esi edi |
97 | push eax ecx esi edi |
102 | stdcall [tl_node_get_data], tree1 |
98 | stdcall [tl_node_get_data], tree1 |
103 | pop esi |
99 | mov esi,eax |
104 | mov edi,node_data |
100 | mov edi,node_data |
105 | mov ecx,NODE_SIZE |
101 | mov ecx,NODE_SIZE |
106 | cld |
102 | cld |
107 | rep movsb |
103 | rep movsb |
Line 108... | Line 104... | ||
108 | pop edi esi ecx |
104 | pop edi esi ecx eax |
Line 144... | Line 140... | ||
144 | call dword[tl_node_move_down] ;ïåðåìåñòèòü óçåë |
140 | call dword[tl_node_move_down] ;ïåðåìåñòèòü óçåë |
145 |
|
141 |
|
Line 146... | Line 142... | ||
146 | 142 | ||
147 |
|
143 |
|
148 |
|
- | |
149 | push dword tree1 |
- | |
150 | push dword 0 |
144 |
|
151 | call dword[tl_node_poi_get_info] |
- | |
152 | pop esi |
145 | stdcall dword[tl_node_poi_get_info], tree1, 0 |
153 |
|
146 |
|
154 | 0 - ïîçèöèÿ óçëà, ñ êîòîðîãî áåðåòñÿ óêàçàòåëü; |
147 | 0 - ïîçèöèÿ óçëà, ñ êîòîðîãî áåðåòñÿ óêàçàòåëü; |
155 | esi - óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ óçåë. |
148 | eax - óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ óçåë. |
Line 156... | Line 149... | ||
156 |
|
149 |
|
157 | 150 | ||
158 |
|
- | |
159 |
|
- | |
160 | push tree1 |
151 |
|
161 | push esi |
- | |
162 | call dword[tl_node_poi_get_next_info] |
152 |
|
163 | pop esi ;ïåðåõîäèì ê ñëåäóùåìó óçëó |
153 | stdcall dword[tl_node_poi_get_next_info], tree1, eax |
164 |
|
154 |
|
Line 165... | Line 155... | ||
165 | esi - äî âûçîâà ôóíêöèè óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ óçåë, ïîñëå âûçîâà óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ ñëåäóùèé óçåë â öåïè. |
155 | eax - äî âûçîâà ôóíêöèè óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ óçåë, ïîñëå âûçîâà óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ ñëåäóùèé óçåë â öåïè. |
166 |
|
156 |
|
167 | - | ||
168 |
|
- | |
169 |
|
157 | |
170 | push dword tree1 |
- | |
171 | push dword esi |
158 |
|
172 | call dword[tl_node_poi_get_data] |
159 |
|
173 | pop eax ;ïîëó÷àåì äàííûå óçëà |
160 | stdcall dword[tl_node_poi_get_data], tree1,esi |
174 |
|
161 |
|
Line 175... | Line 162... | ||
175 | esi - óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ óçåë; |
162 | esi - óêàçàòåëü íà ñòðóêòóðó îïèñûâàþùóþ óçåë; |
176 | eax - óêàçàòåëü íà äàííûå óçëà, îïèñààíîãî â esi. |
163 | eax - óêàçàòåëü íà äàííûå óçëà, îïèñàííîãî â esi. |
177 |
|
164 |
|
178 | 165 | ||
179 |
|
166 |
|
180 |
|
- | |
181 | MEM_SIZE equ 5000 |
- | |
182 | node_data rb MEM_SIZE |
- | |
183 | ......... |
- | |
184 | push dword tree1 |
167 |
|
185 | push dword 0 |
- | |
186 | push dword node_data |
168 | MEM_SIZE equ 5000 |
187 | push dword MEM_SIZE |
169 | node_data rb MEM_SIZE |
188 | call dword[tl_save_mem] |
170 | ......... |
189 | pop eax |
171 | stdcall dword[tl_save_mem], tree1, 0, node_data, MEM_SIZE |
190 |
|
172 |
|
Line 196... | Line 178... | ||
196 |
|
178 |
|
197 |
|
179 |
|
198 | MEM_SIZE equ 5000 |
180 | MEM_SIZE equ 5000 |
199 | node_data rb MEM_SIZE |
181 | node_data rb MEM_SIZE |
200 | ......... |
182 | ......... |
201 | push dword tree1 |
- | |
202 | push dword 0 |
- | |
203 | push dword node_data |
- | |
204 | push dword MEM_SIZE |
- | |
205 | call dword[tl_load_mem] |
183 | stdcall dword[tl_load_mem], tree1, 0, node_data, MEM_SIZE |
206 | pop eax |
- | |
207 |
|
184 |
|
208 | 0 - èíäåêñ ñ÷èòûâàåìîãî ýëåìåíòà; |
185 | 0 - èíäåêñ ñ÷èòûâàåìîãî ýëåìåíòà; |
209 | node_data - óêàçàòåëü íà áëîê ïàìÿòè; |
186 | node_data - óêàçàòåëü íà áëîê ïàìÿòè; |
210 | MEM_SIZE - ðàçìåð áëîêà ïàìÿòè äëÿ ñîõðàíåíèÿ. |
187 | MEM_SIZE - ðàçìåð áëîêà ïàìÿòè äëÿ ñîõðàíåíèÿ. |
211 |  ðåãèñòð eax ïèøåòñÿ çíà÷åíèå 0 èëè çàïèñûâàþòñÿ êîäû îøèáîê ñ÷èòûâàíèÿ. |
188 |  ðåãèñòð eax ïèøåòñÿ çíà÷åíèå 0 èëè çàïèñûâàþòñÿ êîäû îøèáîê ñ÷èòûâàíèÿ. |
Line 215... | Line 192... | ||
215 | Ýòó ôóíêöèþ ìîæíî èñïîëüçîâàòü ïåðåä ñîõðàíåíèåì íà äèñê, äëÿ ïîëó÷åíèÿ òî÷íîãî ðàçìåðà ñîõðàíÿåìûõ äàííûõ. Ïðèìåð: |
192 | Ýòó ôóíêöèþ ìîæíî èñïîëüçîâàòü ïåðåä ñîõðàíåíèåì íà äèñê, äëÿ ïîëó÷åíèÿ òî÷íîãî ðàçìåðà ñîõðàíÿåìûõ äàííûõ. Ïðèìåð: |
216 | MEM_SIZE equ 5000 |
193 | MEM_SIZE equ 5000 |
217 | node_data rb MEM_SIZE |
194 | node_data rb MEM_SIZE |
218 | ......... |
195 | ......... |
219 | ;ñîõðàíÿåì äàííûå â 'node_data' |
196 | ;ñîõðàíÿåì äàííûå â 'node_data' |
220 | stdcall dword[tl_save_mem], MEM_SIZE, node_data, 0, tree1 |
197 | stdcall dword[tl_save_mem], tree1, 0, node_data, MEM_SIZE |
221 | pop eax ;êîä îøèáêè |
198 | pop eax ;êîä îøèáêè |
222 | ......... |
199 | ......... |
223 | ;ïîëó÷àåì ðàçìåð äàííûõ â 'node_data' |
200 | ;ïîëó÷àåì ðàçìåð äàííûõ â 'node_data' |
224 | stdcall dword[tl_get_mem_size], node_data, tree1 |
201 | stdcall dword[tl_get_mem_size], tree1, node_data |
225 | pop ecx ;ðàçìåð äàííûõ, äîëæåí áûòü <= MEM_SIZE |
202 | pop ecx ;ðàçìåð äàííûõ, äîëæåí áûòü <= MEM_SIZE |
Line 226... | Line 203... | ||
226 | 203 | ||
227 |
|
204 |
|
Line 228... | Line 205... | ||
228 |
|
205 |
|
229 | 206 | ||
230 |
|
207 |
|
231 | struc tree_list info_size,info_max_count,style, img_cx,img_cy,\ |
208 | struc tree_list info_size,info_max_count,style, img_cx,img_cy,\ |
232 | col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\ |
209 | col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\ |
- | 210 | info_capt_len,el_focus, p_scroll,on_press |
|
- | 211 | { |
|
- | 212 | .box_left dd box_l |
|
- | 213 | .box_top dd box_t |
|
233 | info_capt_len,el_focus, p_scrol,on_press |
214 | .box_width dd box_w |
234 | { |
215 | .box_height dd box_h |
235 | .data_info dd 0 |
216 | .data_info dd 0 |
236 | .info_size dw info_size |
217 | .info_size dw info_size |
237 | .info_max_count dd info_max_count |
218 | .info_max_count dd info_max_count |
238 | .style dd style |
219 | .style dd style |
239 | .data_nodes dd 0 |
220 | .data_nodes dd 0 |
240 | .data_img dd 0 |
221 | .data_img dd 0 |
241 | .img_cx dw img_cx |
222 | .img_cx dw img_cx |
242 | .img_cy dw img_cy |
223 | .img_cy dw img_cy |
243 | .data_img_sys dd 0 |
- | |
244 | .ch_tim dd 0 |
224 | .data_img_sys dd 0 |
245 | .ls_tim dd 0 |
225 | .ch_tim dd 0 |
246 | .tim_undo dd 0 |
226 | .tim_undo dd 0 |
247 | .cur_pos dd 0 |
227 | .cur_pos dd 0 |
248 | .col_bkg dd col_bkg |
228 | .col_bkg dd col_bkg |
249 | .col_zag dd col_zag |
- | |
250 | .col_txt dd col_txt |
- | |
251 | .box_left dd box_l |
- | |
252 | .box_top dd box_t |
- | |
253 | .box_width dd box_w |
229 | .col_zag dd col_zag |
254 | .box_height dd box_h |
230 | .col_txt dd col_txt |
255 | .capt_cy dw capt_cy |
231 | .capt_cy dw capt_cy |
256 | .info_capt_offs dw info_capt_offs |
232 | .info_capt_offs dw info_capt_offs |
257 | .info_capt_len dw info_capt_len |
233 | .info_capt_len dw info_capt_len |
258 | .el_focus dd el_focus |
- | |
259 | .p_scrol dd p_scrol |
- | |
260 | rb 4 |
234 | .el_focus dd el_focus |
261 | .on_activate dd 0 |
235 | .p_scroll dd p_scroll |
262 | .on_press dd on_press |
236 | .on_press dd on_press |
263 | } |
237 | } |
264 |
|
238 |
|
Line 272... | Line 246... | ||
272 |
|
246 |
|
273 |
|
247 |
|
274 |
|
248 |
|
275 |
|
249 |
|
276 |
|
250 |
|
277 |
|
251 |
|
278 |
|
252 |
|
Line 279... | Line 253... | ||
279 | 253 | ||
280 | 254 | ||
Line 292... | Line 266... | ||
292 |
|
266 |
|
293 |
|
267 |
|
294 |
|
268 |
|
Line 295... | Line 269... | ||
295 | 269 | ||
296 | 270 | ||
297 |
|
271 |
|
298 | 272 | ||
299 | 273 |