optimize TreeList:
1) 'tl_mouse' add mouse in child scroll bar 2) optimize some functions git-svn-id: svn://kolibrios.org@1309 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Binary file not shown.
Before Width: | Height: | Size: 8.3 KiB After Width: | Height: | Size: 8.3 KiB |
@@ -1,6 +1,6 @@
|
|||||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> box_lib.obj
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> box_lib.obj
|
||||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TreeList <20><><EFBFBD> Kolibri OS
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TreeList <20><><EFBFBD> Kolibri OS
|
||||||
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2.12.2009 IgorA
|
; <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 8.12.2009 IgorA
|
||||||
; <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GPL2 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GPL2 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
|
||||||
|
|
||||||
@@ -36,7 +36,6 @@ tl_info_capt_offs equ word[edi+76] ;
|
|||||||
tl_info_capt_len equ word[edi+78] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> = 0 <20><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
tl_info_capt_len equ word[edi+78] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD> = 0 <20><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||||
tl_el_focus equ dword[edi+80] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
tl_el_focus equ dword[edi+80] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
tl_p_scrol equ dword[edi+84] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
tl_p_scrol equ dword[edi+84] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
tl_sb_draw equ dword[edi+88] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
tl_on_press equ dword[edi+96] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Enter
|
tl_on_press equ dword[edi+96] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Enter
|
||||||
|
|
||||||
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
@@ -59,7 +58,7 @@ tl_save_load_heder_size equ 26 ;
|
|||||||
|
|
||||||
struc tree_list info_size,info_max_count,style, img_cx,img_cy,\
|
struc tree_list info_size,info_max_count,style, img_cx,img_cy,\
|
||||||
col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\
|
col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\
|
||||||
info_capt_len,el_focus, p_scrol,p_sb_draw,on_press {
|
info_capt_len,el_focus, p_scrol,on_press {
|
||||||
.data_info dd 0
|
.data_info dd 0
|
||||||
.info_size dw info_size
|
.info_size dw info_size
|
||||||
.info_max_count dd info_max_count
|
.info_max_count dd info_max_count
|
||||||
@@ -85,7 +84,7 @@ struc tree_list info_size,info_max_count,style, img_cx,img_cy,\
|
|||||||
.info_capt_len dw info_capt_len
|
.info_capt_len dw info_capt_len
|
||||||
.el_focus dd el_focus
|
.el_focus dd el_focus
|
||||||
.p_scrol dd p_scrol
|
.p_scrol dd p_scrol
|
||||||
.p_sb_draw dd p_sb_draw
|
rb 4
|
||||||
.on_activate dd 0
|
.on_activate dd 0
|
||||||
.on_press dd on_press
|
.on_press dd on_press
|
||||||
}
|
}
|
||||||
@@ -341,7 +340,7 @@ tl_mouse: ;
|
|||||||
add ebx,tl_box_width
|
add ebx,tl_box_width
|
||||||
shl ebx,16
|
shl ebx,16
|
||||||
cmp eax,ebx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
cmp eax,ebx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
jg .no_in_wnd
|
jg .test_scroll ;.no_in_wnd
|
||||||
|
|
||||||
mov ebx,tl_box_top
|
mov ebx,tl_box_top
|
||||||
add ebx,tl_box_height
|
add ebx,tl_box_height
|
||||||
@@ -421,11 +420,40 @@ tl_mouse: ;
|
|||||||
call tl_draw_cursor ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
call tl_draw_cursor ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
call tl_draw_caption_cur_pos
|
call tl_draw_caption_cur_pos
|
||||||
jmp .no_draw
|
jmp .no_draw
|
||||||
|
;--- mouse event for children scrollbar ----------------------------------------
|
||||||
|
.test_scroll:
|
||||||
|
mov edx,tl_p_scrol
|
||||||
|
cmp edx,0
|
||||||
|
je .no_in_wnd ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
shr ebx,16
|
||||||
|
add bx,word[edx] ;+0 .size_x
|
||||||
|
shl ebx,16
|
||||||
|
cmp eax,ebx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
jg .no_in_wnd
|
||||||
|
|
||||||
|
mov eax,dword[edx+16] ;+16 .max_area
|
||||||
|
cmp eax,dword[edx+20] ;+20 .cur_area
|
||||||
|
jbe .no_in_wnd ;<3B><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
push dword edx
|
||||||
|
call scroll_bar_vertical.mouse ;scrollbar_ver_mouse
|
||||||
|
|
||||||
|
cmp dword[edx+40],0 ;+40 .redraw
|
||||||
|
je @f
|
||||||
|
mov dword[edx+40],0 ;+40 .redraw
|
||||||
|
push dword edi
|
||||||
|
call tl_draw ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
@@:
|
||||||
|
cmp dword[edx+46],0 ;+46 .delta2
|
||||||
|
jne .no_draw ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> TreeList
|
||||||
|
;-------------------------------------------------------------------------------
|
||||||
.no_in_wnd: ;<3B><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
.no_in_wnd: ;<3B><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||||
mov ebx,tl_el_focus
|
mov ebx,tl_el_focus
|
||||||
cmp dword[ebx],edi
|
cmp dword[ebx],edi
|
||||||
jne .no_draw ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
jne .no_draw ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov dword[ebx],0 ;reset focus
|
mov dword[ebx],0 ;reset focus
|
||||||
|
mov esi,tl_box_top
|
||||||
|
add esi,tl_box_height ;esi = coord bottom border
|
||||||
|
call tl_draw_cursor ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
.no_draw:
|
.no_draw:
|
||||||
|
|
||||||
pop esi edi edx ecx ebx eax
|
pop esi edi edx ecx ebx eax
|
||||||
@@ -558,6 +586,20 @@ tl_draw: ;
|
|||||||
|
|
||||||
cmp tl_capt_cy,9 ;9 - minimum caption height
|
cmp tl_capt_cy,9 ;9 - minimum caption height
|
||||||
jl @f
|
jl @f
|
||||||
|
mov ebx,edi ;calculate cursor position
|
||||||
|
mov eax,tl_cur_pos
|
||||||
|
inc eax
|
||||||
|
lea edi,[txt_capt_cur]
|
||||||
|
add edi,7
|
||||||
|
call tl_convert_to_str
|
||||||
|
|
||||||
|
mov edi,ebx
|
||||||
|
mov eax,tl_tim_undo
|
||||||
|
lea edi,[txt_capt_otm]
|
||||||
|
add edi,7
|
||||||
|
call tl_convert_to_str
|
||||||
|
mov edi,ebx ;restore edi
|
||||||
|
|
||||||
mov eax,4 ;draw text captions
|
mov eax,4 ;draw text captions
|
||||||
mov ebx,tl_box_left
|
mov ebx,tl_box_left
|
||||||
shl ebx,16
|
shl ebx,16
|
||||||
@@ -574,37 +616,8 @@ tl_draw: ;
|
|||||||
add ebx,tl_box_top
|
add ebx,tl_box_top
|
||||||
lea edx,[txt_capt_otm]
|
lea edx,[txt_capt_otm]
|
||||||
int 0x40
|
int 0x40
|
||||||
|
|
||||||
mov eax,47 ;draw
|
|
||||||
mov ebx,0x40000
|
|
||||||
mov ecx,tl_cur_pos
|
|
||||||
inc ecx
|
|
||||||
mov edx,tl_box_left
|
|
||||||
shl edx,16
|
|
||||||
add edx,50*65536+3
|
|
||||||
add edx,tl_box_top
|
|
||||||
mov esi,tl_col_txt
|
|
||||||
int 0x40
|
|
||||||
mov ecx,tl_tim_undo
|
|
||||||
mov edx,tl_box_left
|
|
||||||
shl edx,16
|
|
||||||
add edx,140*65536+3
|
|
||||||
add edx,tl_box_top
|
|
||||||
mov esi,tl_col_txt
|
|
||||||
int 0x40
|
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
;---debug---
|
|
||||||
;mov ecx,0
|
|
||||||
;@@:
|
|
||||||
;call DebugSymb
|
|
||||||
;inc ecx
|
|
||||||
;cmp ecx,10
|
|
||||||
;jge @f
|
|
||||||
;jmp @b
|
|
||||||
;@@:
|
|
||||||
;---debug---
|
|
||||||
|
|
||||||
;cycle to nodes
|
;cycle to nodes
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov edx,tl_data_nodes
|
mov edx,tl_data_nodes
|
||||||
@@ -725,15 +738,12 @@ tl_iterat_next_all:
|
|||||||
; edi = pointer to 'TreeList' struct
|
; edi = pointer to 'TreeList' struct
|
||||||
align 4
|
align 4
|
||||||
tl_iterat_perv:
|
tl_iterat_perv:
|
||||||
push bx
|
push eax
|
||||||
mov bl,0x7f
|
|
||||||
cmp byte[edx+3],1
|
; mov bl,byte[edx+2]
|
||||||
jne @f
|
|
||||||
mov bl,byte[edx+2]
|
|
||||||
@@:
|
|
||||||
|
|
||||||
cmp tl_tim_undo,0
|
cmp tl_tim_undo,0
|
||||||
je .else
|
je .beg1
|
||||||
|
|
||||||
push eax
|
push eax
|
||||||
.beg0:
|
.beg0:
|
||||||
@@ -743,23 +753,43 @@ tl_iterat_perv:
|
|||||||
call tl_node_not_vis ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
call tl_node_not_vis ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
cmp al,1
|
cmp al,1
|
||||||
je .beg0
|
je .beg0
|
||||||
cmp bl,byte[edx+2] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
jl .beg0
|
|
||||||
@@:
|
|
||||||
pop eax
|
|
||||||
pop bx
|
|
||||||
ret
|
|
||||||
|
|
||||||
.else:
|
.beg1:
|
||||||
call tl_move_perv
|
call tl_move_perv
|
||||||
cmp edx,ecx
|
cmp edx,ecx
|
||||||
jle .endif
|
jle @f
|
||||||
cmp dword[edx+16],0 ;td = 'time delete' -> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
cmp dword[edx+16],0 ;td = 'time delete' -> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
jne .else
|
jne .beg1
|
||||||
cmp bl,byte[edx+2] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
jl .else
|
@@:
|
||||||
.endif:
|
call tl_move_max_clo_par
|
||||||
pop bx
|
pop eax
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
;input:
|
||||||
|
; edx = pointer to some node struct
|
||||||
|
; edi = pointer to 'TreeList' struct
|
||||||
|
;output:
|
||||||
|
; edx = pointer closed parent node with maximum level
|
||||||
|
align 4
|
||||||
|
tl_move_max_clo_par: ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
push eax ebx
|
||||||
|
mov eax,edx
|
||||||
|
xor ebx,ebx
|
||||||
|
.beg:
|
||||||
|
call tl_move_par
|
||||||
|
cmp byte[edx+3],1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ?
|
||||||
|
jne @f
|
||||||
|
mov eax,edx
|
||||||
|
@@:
|
||||||
|
cmp ebx,edx
|
||||||
|
je .end_f
|
||||||
|
mov ebx,edx
|
||||||
|
jmp .beg
|
||||||
|
.end_f:
|
||||||
|
mov edx,eax
|
||||||
|
pop ebx eax
|
||||||
ret
|
ret
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
@@ -786,6 +816,36 @@ tl_move_perv:
|
|||||||
add edx,tl_data_nodes
|
add edx,tl_data_nodes
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
;input:
|
||||||
|
; ecx =
|
||||||
|
; edx = pointer to some node struct
|
||||||
|
; edi = pointer to 'TreeList' struct
|
||||||
|
;output:
|
||||||
|
; edx = pointer to parent node struct
|
||||||
|
align 4
|
||||||
|
tl_move_par: ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
cmp byte[edx+2],0
|
||||||
|
je .end_f ;<3B><><EFBFBD><EFBFBD> 0-<2D><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
push eax ebx esi
|
||||||
|
mov esi,edx ;copy node pointer (edx)
|
||||||
|
mov bl,byte[edx+2]
|
||||||
|
@@:
|
||||||
|
call tl_move_perv
|
||||||
|
cmp edx,ecx
|
||||||
|
jle @f ;<3B><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
call tl_node_not_vis ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
cmp al,1
|
||||||
|
je @b
|
||||||
|
cmp byte[edx+2],bl
|
||||||
|
jl .end_0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
jmp @b
|
||||||
|
@@:
|
||||||
|
mov esi,ebx ;restore node pointer
|
||||||
|
.end_0:
|
||||||
|
pop esi ebx eax
|
||||||
|
.end_f:
|
||||||
|
ret
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
; edx = pointer to symbol struct
|
; edx = pointer to symbol struct
|
||||||
; edi = pointer to 'TreeList' struct
|
; edi = pointer to 'TreeList' struct
|
||||||
@@ -855,15 +915,28 @@ tl_draw_cursor: ;
|
|||||||
@@:
|
@@:
|
||||||
mov ebx,tl_data_img_sys
|
mov ebx,tl_data_img_sys
|
||||||
imul ax,tl_img_cy
|
imul ax,tl_img_cy
|
||||||
mov cx,tl_img_cx
|
|
||||||
shl ecx,16
|
|
||||||
mov cx,tl_img_cy
|
|
||||||
mov edx,tl_box_left
|
mov edx,tl_box_left
|
||||||
shl edx,16
|
shl edx,16
|
||||||
mov dx,ax
|
mov dx,ax
|
||||||
add edx,tl_box_top
|
add edx,tl_box_top
|
||||||
add dx,tl_capt_cy
|
add dx,tl_capt_cy
|
||||||
|
|
||||||
|
mov ecx,tl_el_focus ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>
|
||||||
|
cmp dword[ecx],edi
|
||||||
|
je .focus
|
||||||
|
xor eax,eax
|
||||||
|
xor ecx,ecx
|
||||||
|
mov cx,tl_img_cx
|
||||||
|
mov ax,tl_img_cy
|
||||||
|
imul eax,ecx
|
||||||
|
imul eax,4*3 ;4=icon index 3=rgb
|
||||||
|
add ebx,eax
|
||||||
|
.focus:
|
||||||
|
|
||||||
|
mov cx,tl_img_cx
|
||||||
|
shl ecx,16
|
||||||
|
mov cx,tl_img_cy
|
||||||
|
|
||||||
;crop image if on the border
|
;crop image if on the border
|
||||||
cmp si,dx ;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>
|
cmp si,dx ;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
jl .end_f
|
jl .end_f
|
||||||
@@ -1020,7 +1093,7 @@ tl_draw_node:
|
|||||||
bt tl_style,1
|
bt tl_style,1
|
||||||
jae .end_draw
|
jae .end_draw
|
||||||
call tl_draw_node_icon_par_lin
|
call tl_draw_node_icon_par_lin
|
||||||
|
call tl_draw_node_icon_par_lin_up
|
||||||
.end_draw:
|
.end_draw:
|
||||||
pop esi edx ecx ebx eax
|
pop esi edx ecx ebx eax
|
||||||
ret
|
ret
|
||||||
@@ -1068,6 +1141,7 @@ tl_draw_node_icon_opn_clo: ;
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
|
; al = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
;...
|
;...
|
||||||
align 4
|
align 4
|
||||||
tl_draw_node_icon_par_lin:
|
tl_draw_node_icon_par_lin:
|
||||||
@@ -1101,7 +1175,7 @@ tl_draw_node_icon_par_lin:
|
|||||||
int 0x40 ;draw minus rect, if not system icons
|
int 0x40 ;draw minus rect, if not system icons
|
||||||
jmp @f
|
jmp @f
|
||||||
.draw_img_s:
|
.draw_img_s:
|
||||||
mov ecx,esi ;load ecx
|
; mov ecx,esi ;load ecx
|
||||||
mov edx,ebx
|
mov edx,ebx
|
||||||
ror ecx,16
|
ror ecx,16
|
||||||
mov dx,cx
|
mov dx,cx
|
||||||
@@ -1122,6 +1196,72 @@ tl_draw_node_icon_par_lin:
|
|||||||
.close:
|
.close:
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;icon:
|
||||||
|
; al = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
;...
|
||||||
|
align 4
|
||||||
|
tl_draw_node_icon_par_lin_up:
|
||||||
|
push eax ebx ecx edx esi
|
||||||
|
cmp tl_data_img_sys,0 ;if not image
|
||||||
|
je @f
|
||||||
|
cmp al,0
|
||||||
|
je @f
|
||||||
|
|
||||||
|
;---------
|
||||||
|
xor esi,esi ;<3B> si <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>-<2D><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
.cycle0:
|
||||||
|
call tl_iterat_perv ;get perv visible item
|
||||||
|
cmp edx,ecx
|
||||||
|
jle .cycle1 ;if begin of list
|
||||||
|
|
||||||
|
cmp byte[edx+2],al
|
||||||
|
jle .cycle1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
inc si
|
||||||
|
jmp .cycle0
|
||||||
|
.cycle1:
|
||||||
|
cmp si,0 ;si = <20><><EFBFBD>-<2D><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
je @f
|
||||||
|
shl esi,16
|
||||||
|
|
||||||
|
pop ecx ;esi->ecx
|
||||||
|
push ecx ;save esi
|
||||||
|
|
||||||
|
ror ebx,16
|
||||||
|
sub bx,tl_img_cx
|
||||||
|
ror ebx,16
|
||||||
|
|
||||||
|
mov edx,ebx
|
||||||
|
ror ecx,16
|
||||||
|
mov dx,cx
|
||||||
|
mov cx,bx
|
||||||
|
ror ecx,16
|
||||||
|
mov cx,tl_img_cy ;restore size y (if crop)
|
||||||
|
mov ebx,3 ;rgb = 3 bytes
|
||||||
|
imul bx,tl_img_cx
|
||||||
|
imul bx,tl_img_cy
|
||||||
|
;imul ebx,1
|
||||||
|
add ebx,tl_data_img_sys
|
||||||
|
|
||||||
|
add esi,tl_box_top
|
||||||
|
add si,tl_capt_cy ;si = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
mov eax,7
|
||||||
|
;---------
|
||||||
|
.cycle2:
|
||||||
|
sub dx,tl_img_cy ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> y <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
cmp dx,si
|
||||||
|
jl @f
|
||||||
|
; int 0x40 ;draw line icon
|
||||||
|
cmp esi,0x10000
|
||||||
|
jl @f
|
||||||
|
int 0x40 ;draw line icon
|
||||||
|
sub esi,0x10000 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
jmp .cycle2
|
||||||
|
@@:
|
||||||
|
pop esi edx ecx ebx eax
|
||||||
|
ret
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
; edi = pointer to TreeInfo struct
|
; edi = pointer to TreeInfo struct
|
||||||
;output:
|
;output:
|
||||||
@@ -1353,8 +1493,7 @@ tb_scrol_resize:
|
|||||||
mov dword[edx+20],eax ;+20 .cur_area
|
mov dword[edx+20],eax ;+20 .cur_area
|
||||||
mov dword[edx+16],ecx ;+16 .max_area
|
mov dword[edx+16],ecx ;+16 .max_area
|
||||||
push dword edx ;pointer to scroll struct
|
push dword edx ;pointer to scroll struct
|
||||||
mov edx,tl_sb_draw ;pointer to scroll draw function
|
call scroll_bar_vertical.draw
|
||||||
call dword[edx]
|
|
||||||
@@:
|
@@:
|
||||||
pop edx ecx eax
|
pop edx ecx eax
|
||||||
ret
|
ret
|
||||||
@@ -1587,8 +1726,7 @@ tl_cur_beg: ;
|
|||||||
mov dword[edi+24],0
|
mov dword[edi+24],0
|
||||||
push dword edi
|
push dword edi
|
||||||
mov edi,dword[ebp+8]
|
mov edi,dword[ebp+8]
|
||||||
mov edi,tl_sb_draw
|
call scroll_bar_vertical.draw
|
||||||
call dword[edi]
|
|
||||||
@@:
|
@@:
|
||||||
pop edi
|
pop edi
|
||||||
|
|
||||||
@@ -1619,8 +1757,7 @@ tl_cur_next: ;
|
|||||||
jl @f
|
jl @f
|
||||||
inc dword[ebx+24] ;.position +24
|
inc dword[ebx+24] ;.position +24
|
||||||
push dword ebx
|
push dword ebx
|
||||||
mov edi,tl_sb_draw ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
call scroll_bar_vertical.draw
|
||||||
call dword[edi]
|
|
||||||
|
|
||||||
mov edi,dword[ebp+8] ;restore edi
|
mov edi,dword[ebp+8] ;restore edi
|
||||||
push dword edi
|
push dword edi
|
||||||
@@ -1704,8 +1841,7 @@ tl_cur_perv: ;
|
|||||||
dec dword[eax+24]
|
dec dword[eax+24]
|
||||||
push dword eax
|
push dword eax
|
||||||
mov edi,dword[ebp+8]
|
mov edi,dword[ebp+8]
|
||||||
mov edi,tl_sb_draw ;.redraw
|
call scroll_bar_vertical.draw
|
||||||
call dword[edi]
|
|
||||||
mov edi,dword[ebp+8] ;restore edi
|
mov edi,dword[ebp+8] ;restore edi
|
||||||
push dword edi
|
push dword edi
|
||||||
call tl_draw ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
call tl_draw ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
@@ -1758,9 +1894,7 @@ tl_cur_page_up: ;
|
|||||||
push dword edi
|
push dword edi
|
||||||
call tl_draw ;draw window
|
call tl_draw ;draw window
|
||||||
push dword esi
|
push dword esi
|
||||||
mov eax,dword[ebp+8]
|
call scroll_bar_vertical.draw
|
||||||
mov eax,tl_sb_draw ;.redraw
|
|
||||||
call dword[eax]
|
|
||||||
.no_redraw:
|
.no_redraw:
|
||||||
pop esi edi eax
|
pop esi edi eax
|
||||||
pop ebp
|
pop ebp
|
||||||
@@ -1817,9 +1951,7 @@ tl_cur_page_down: ;
|
|||||||
push dword edi
|
push dword edi
|
||||||
call tl_draw ;draw window
|
call tl_draw ;draw window
|
||||||
push dword esi
|
push dword esi
|
||||||
mov eax,dword[ebp+8]
|
call scroll_bar_vertical.draw
|
||||||
mov eax,tl_sb_draw ;.redraw
|
|
||||||
call dword[eax]
|
|
||||||
.no_redraw:
|
.no_redraw:
|
||||||
pop esi edi ecx ebx eax
|
pop esi edi ecx ebx eax
|
||||||
pop ebp
|
pop ebp
|
||||||
@@ -2043,18 +2175,25 @@ tl_draw_caption_cur_pos:
|
|||||||
cmp tl_capt_cy,9 ;9 - minimum caption height
|
cmp tl_capt_cy,9 ;9 - minimum caption height
|
||||||
jl @f
|
jl @f
|
||||||
push eax ebx ecx edx edi esi
|
push eax ebx ecx edx edi esi
|
||||||
mov eax,47 ;draw
|
mov ebx,edi ;calculate cursor position
|
||||||
mov ebx,0x40000
|
mov eax,tl_cur_pos
|
||||||
mov ecx,tl_cur_pos
|
inc eax
|
||||||
inc ecx
|
lea edi,[txt_capt_cur]
|
||||||
mov edx,tl_box_left
|
add edi,7
|
||||||
shl edx,16
|
call tl_convert_to_str
|
||||||
add edx,50*65536+3
|
mov edi,ebx
|
||||||
add edx,tl_box_top
|
|
||||||
mov esi,tl_col_txt
|
mov eax,4 ;draw text captions
|
||||||
or esi,0x40000000 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> edi
|
mov ebx,tl_box_left
|
||||||
|
shl ebx,16
|
||||||
|
add ebx,5*65536+3
|
||||||
|
add ebx,tl_box_top
|
||||||
|
mov ecx,tl_col_txt
|
||||||
|
or ecx,0xc0000000 ;0x40000000 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> edi
|
||||||
|
lea edx,[txt_capt_cur]
|
||||||
mov edi,tl_col_zag
|
mov edi,tl_col_zag
|
||||||
int 0x40
|
int 0x40
|
||||||
|
|
||||||
pop esi edi edx ecx ebx eax
|
pop esi edi edx ecx ebx eax
|
||||||
@@:
|
@@:
|
||||||
ret
|
ret
|
||||||
@@ -2100,27 +2239,29 @@ tl_save_mem:
|
|||||||
cmp ecx,dword[ebp+8] ;ecx = element memory size
|
cmp ecx,dword[ebp+8] ;ecx = element memory size
|
||||||
jg .err_mem_size
|
jg .err_mem_size
|
||||||
|
|
||||||
;save tree params
|
;save tree params (in header)
|
||||||
mov dword[esi],0x65657274 ;0x65657274 = 'tree'
|
mov dword[esi],0x65657274 ;0x65657274 = 'tree'
|
||||||
mov word[esi+4],bx
|
mov word[esi+4],bx
|
||||||
mov dword[esi+6],eax ;element count
|
mov dword[esi+6],eax ;element count
|
||||||
add esi,10
|
|
||||||
|
|
||||||
mov eax,tl_style
|
mov eax,tl_style
|
||||||
mov dword[esi],eax
|
mov dword[esi+10],eax
|
||||||
add esi,4
|
|
||||||
|
|
||||||
mov eax,tl_cur_pos
|
mov eax,tl_cur_pos
|
||||||
mov dword[esi],eax
|
mov dword[esi+14],eax
|
||||||
add esi,4
|
|
||||||
|
|
||||||
mov ax,tl_info_capt_offs
|
mov ax,tl_info_capt_offs
|
||||||
mov word[esi],ax
|
mov word[esi+18],ax
|
||||||
add esi,2
|
|
||||||
|
|
||||||
mov ax,tl_info_capt_len
|
mov ax,tl_info_capt_len
|
||||||
mov word[esi],ax
|
mov word[esi+20],ax
|
||||||
add esi,2+4
|
|
||||||
|
;copy scroll position
|
||||||
|
mov edx,tl_p_scrol
|
||||||
|
mov eax,dword[edx+24] ;+24 .position
|
||||||
|
mov dword[esi+22],eax
|
||||||
|
|
||||||
|
add esi,tl_save_load_heder_size ;add header size
|
||||||
|
|
||||||
;cycle to nodes
|
;cycle to nodes
|
||||||
mov edx,tl_data_nodes
|
mov edx,tl_data_nodes
|
||||||
@@ -2139,9 +2280,6 @@ mov eax,dword[edx] ;eax = (type; lev; clo)
|
|||||||
mov dword[esi],eax
|
mov dword[esi],eax
|
||||||
add esi,4
|
add esi,4
|
||||||
|
|
||||||
;push dword edi
|
|
||||||
;call tl_node_get_data
|
|
||||||
;pop eax
|
|
||||||
push dword edi
|
push dword edi
|
||||||
push dword edx
|
push dword edx
|
||||||
call tl_node_poi_get_data
|
call tl_node_poi_get_data
|
||||||
@@ -2218,6 +2356,7 @@ tl_load_mem:
|
|||||||
mov ecx,dword[esi+6] ;count nodes
|
mov ecx,dword[esi+6] ;count nodes
|
||||||
cmp ecx,1
|
cmp ecx,1
|
||||||
jl .end_f
|
jl .end_f
|
||||||
|
mov edx,esi ;save header pointer
|
||||||
add esi,tl_save_load_heder_size
|
add esi,tl_save_load_heder_size
|
||||||
|
|
||||||
@@:
|
@@:
|
||||||
@@ -2236,6 +2375,18 @@ call tl_cur_next
|
|||||||
add esi,ebx
|
add esi,ebx
|
||||||
loop @b
|
loop @b
|
||||||
|
|
||||||
|
bt word[ebp+18],1 ;load in add mode
|
||||||
|
jc .no_tree
|
||||||
|
mov eax,dword[edx+14] ;set cursor pos
|
||||||
|
mov tl_cur_pos,eax
|
||||||
|
mov eax,dword[edx+22] ;set scroll pos
|
||||||
|
mov ebx,tl_p_scrol
|
||||||
|
cmp ebx,0
|
||||||
|
je .end_f
|
||||||
|
mov dword[ebx+24],eax ;+24 .position
|
||||||
|
push dword ebx ;pointer to scroll struct
|
||||||
|
call scroll_bar_vertical.draw
|
||||||
|
|
||||||
jmp .end_f
|
jmp .end_f
|
||||||
.no_tree:
|
.no_tree:
|
||||||
mov dword[ebp+20],tl_err_load_caption
|
mov dword[ebp+20],tl_err_load_caption
|
||||||
@@ -2258,6 +2409,39 @@ add esi,ebx
|
|||||||
tl_key_ascii db 13,32,178,177,176,179,182,184,183
|
tl_key_ascii db 13,32,178,177,176,179,182,184,183
|
||||||
tl_key_scan db 28,57, 72, 80, 75, 77, 83, 73, 81
|
tl_key_scan db 28,57, 72, 80, 75, 77, 83, 73, 81
|
||||||
|
|
||||||
txt_capt_cur db '<27><>ப<EFBFBD>',0
|
txt_capt_cur db '<27><>ப<EFBFBD> ',0
|
||||||
txt_capt_otm db '<27>⬥<EFBFBD><E2ACA5>',0
|
txt_capt_otm db '<27>⬥<EFBFBD><E2ACA5> ',0
|
||||||
|
|
||||||
|
;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
;input:
|
||||||
|
; eax = value
|
||||||
|
; edi = string buffer
|
||||||
|
;output:
|
||||||
|
; edi =
|
||||||
|
align 4
|
||||||
|
tl_convert_to_str:
|
||||||
|
pushad
|
||||||
|
mov dword[edi+1],0x20202020
|
||||||
|
call .str
|
||||||
|
popad
|
||||||
|
ret
|
||||||
|
|
||||||
|
align 4
|
||||||
|
.str:
|
||||||
|
mov ecx,0x0a ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ebx,eax,ecx,edx <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> eax - <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> ASCII <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ecx=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> edi <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
cmp eax,ecx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> eax <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20> ecx <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> @@-1 <20>.<2E>. <20><> pop eax
|
||||||
|
jb @f
|
||||||
|
xor edx,edx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> edx
|
||||||
|
div ecx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> edx
|
||||||
|
push edx ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>
|
||||||
|
;dec edi ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
call .str;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>.<2E>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> eax <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20> ecx
|
||||||
|
pop eax
|
||||||
|
@@: ;cmp al,10 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> al <20><><EFBFBD> 10 (<28><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 10 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>))
|
||||||
|
;sbb al,$69 ;- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>.<2E>. <20> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
;das ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> al <20><> 66h (<28> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||||
|
or al,0x30 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||||
|
stosb ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> al <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> es:edi
|
||||||
|
ret ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>.<2E>. <20><><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>-<2D><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
}
|
}
|
@@ -200,7 +200,7 @@ table { font-size: 15px; }
|
|||||||
<h1><a name="struc_tree_list"><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> tree_list</a></h1>
|
<h1><a name="struc_tree_list"><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> tree_list</a></h1>
|
||||||
<pre>struc tree_list info_size,info_max_count,style, img_cx,img_cy,\
|
<pre>struc tree_list info_size,info_max_count,style, img_cx,img_cy,\
|
||||||
col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\
|
col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\
|
||||||
info_capt_len,el_focus, p_scrol,p_sb_draw,on_press {
|
info_capt_len,el_focus, p_scrol,on_press {
|
||||||
.data_info dd 0
|
.data_info dd 0
|
||||||
.info_size dw info_size
|
.info_size dw info_size
|
||||||
.info_max_count dd info_max_count
|
.info_max_count dd info_max_count
|
||||||
@@ -226,7 +226,7 @@ table { font-size: 15px; }
|
|||||||
.info_capt_len dw info_capt_len
|
.info_capt_len dw info_capt_len
|
||||||
.el_focus dd el_focus
|
.el_focus dd el_focus
|
||||||
.p_scrol dd p_scrol
|
.p_scrol dd p_scrol
|
||||||
.p_sb_draw dd p_sb_draw
|
rb 4
|
||||||
.on_activate dd 0
|
.on_activate dd 0
|
||||||
.on_press dd on_press
|
.on_press dd on_press
|
||||||
}</pre>
|
}</pre>
|
||||||
@@ -239,13 +239,12 @@ table { font-size: 15px; }
|
|||||||
<p><b>capt_cy</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 9 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.</p>
|
<p><b>capt_cy</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 9 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.</p>
|
||||||
<p><b>info_capt_len</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> 0, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>: <i>info_size - info_capt_offs</i>.</p>
|
<p><b>info_capt_len</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> 0, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>: <i>info_size - info_capt_offs</i>.</p>
|
||||||
<p><b>p_scrol</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.</p>
|
<p><b>p_scrol</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.</p>
|
||||||
<p><b>p_sb_draw</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<i>scrollbar_ver_draw</i>).</p>
|
|
||||||
<p><b>on_press</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [<b>Enter</b>]. <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> 0 <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.</p>
|
<p><b>on_press</b> - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [<b>Enter</b>]. <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> 0 <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.</p>
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:</p>
|
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:</p>
|
||||||
<pre>tree1 tree_list 24,500, tl_draw_par_line+tl_list_box_mode, 16,16,\
|
<pre>tree1 tree_list 24,500, tl_draw_par_line+tl_list_box_mode, 16,16,\
|
||||||
0x8080ff,0x0000ff,0xffffff, 10,35,200-16,285, 14,4,\
|
0x8080ff,0x0000ff,0xffffff, 10,35,200-16,285, 14,4,0,\
|
||||||
0,el_focus, wScr,scrollbar_ver_draw,fun_on_enter</pre>
|
el_focus, wScr,fun_on_enter</pre>
|
||||||
|
|
||||||
<h1><a name="tree_list_styles"><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a></h1>
|
<h1><a name="tree_list_styles"><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a></h1>
|
||||||
<h2>tl_key_no_edit</h2>
|
<h2>tl_key_no_edit</h2>
|
||||||
@@ -256,6 +255,6 @@ table { font-size: 15px; }
|
|||||||
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD> <20> ListBox <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>).</p>
|
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD> <20> ListBox <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>).</p>
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> 2.12.09.</p>
|
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> 5.12.09.</p>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
Reference in New Issue
Block a user