forked from KolibriOS/kolibrios
Fixing incorrect behaviour of tab save suggestion on close
Minor GUI fixes (tab close button is skinned now; incorrect popup height calculation) git-svn-id: svn://kolibrios.org@629 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
66417e61bd
commit
84bce0d4d8
@ -101,6 +101,7 @@ align 4
|
|||||||
|
|
||||||
accel_table2 dd \
|
accel_table2 dd \
|
||||||
1 ,key.alt_x ,\
|
1 ,key.alt_x ,\
|
||||||
|
2 ,key.ctrl_f4 ,\
|
||||||
'VSL',btn.vscroll_up ,\
|
'VSL',btn.vscroll_up ,\
|
||||||
'VSG',btn.vscroll_down ,\
|
'VSG',btn.vscroll_down ,\
|
||||||
'HSL',btn.hscroll_up ,\
|
'HSL',btn.hscroll_up ,\
|
||||||
@ -117,6 +118,7 @@ accel_table2_botdlg dd \
|
|||||||
20002,btn.bot.opensave ,\
|
20002,btn.bot.opensave ,\
|
||||||
20003,btn.bot.find ,\
|
20003,btn.bot.find ,\
|
||||||
20004,btn.bot.appearance,\
|
20004,btn.bot.appearance,\
|
||||||
|
20007,btn.bot.no ,\
|
||||||
21001,btn.bot.tabpos ,\
|
21001,btn.bot.tabpos ,\
|
||||||
0
|
0
|
||||||
|
|
||||||
|
@ -52,6 +52,7 @@ sel.selected db ?
|
|||||||
in_sel db ?
|
in_sel db ?
|
||||||
|
|
||||||
do_not_draw db ? ; draw top and bottom buttons?
|
do_not_draw db ? ; draw top and bottom buttons?
|
||||||
|
main_closing db ? ; main window closing?
|
||||||
main_closed db ? ; main window closed?
|
main_closed db ? ; main window closed?
|
||||||
tb_casesen db ? ; focused textbox is case-sensitive?
|
tb_casesen db ? ; focused textbox is case-sensitive?
|
||||||
|
|
||||||
@ -94,12 +95,14 @@ mev db ?
|
|||||||
mouse_captured db ?
|
mouse_captured db ?
|
||||||
just_from_popup db ?
|
just_from_popup db ?
|
||||||
|
|
||||||
bot_mode db ?
|
bot_mode db ?
|
||||||
|
bot_mode2 db ?
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
|
|
||||||
bot_dlg_height dd ?
|
bot_dlg_height dd ?
|
||||||
bot_dlg_mode2 db ?
|
exit_tab_item dd ?
|
||||||
|
exit_tab_num dd ?
|
||||||
|
|
||||||
temp_buf dd ?
|
temp_buf dd ?
|
||||||
copy_buf dd ?
|
copy_buf dd ?
|
||||||
|
@ -7,8 +7,8 @@ HISTORY:
|
|||||||
(was opening in current tab if there was a new file, even modified)
|
(was opening in current tab if there was a new file, even modified)
|
||||||
- show "save file" dialog for new files or files from Tinypad's home folder
|
- show "save file" dialog for new files or files from Tinypad's home folder
|
||||||
new features:
|
new features:
|
||||||
- prompt to save modified file before closing
|
- prompt to save modified file before closing (+fixes)
|
||||||
- button to close current tab
|
- button to close current tab (+fixes)
|
||||||
- mouse scroll wheel support
|
- mouse scroll wheel support
|
||||||
|
|
||||||
4.0.4 (mike.dld)
|
4.0.4 (mike.dld)
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
; project name: TINYPAD
|
; project name: TINYPAD
|
||||||
; compiler: flat assembler 1.67.18
|
; compiler: flat assembler 1.67.21
|
||||||
; memory to compile: 3.0/9.0 MBytes (without/with size optimizations)
|
; memory to compile: 3.0/9.0 MBytes (without/with size optimizations)
|
||||||
; version: 4.0.4
|
; version: 4.0.5
|
||||||
; last update: 2007-02-08 (Feb 08, 2007)
|
; last update: 2007-09-18 (Sep 18, 2007)
|
||||||
; minimal kernel: revision #270 (svn://kolibrios.org/kernel/trunk)
|
; minimal kernel: revision #270 (svn://kolibrios.org/kernel/trunk)
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
; originally by: Ville Michael Turjanmaa >> villemt@aton.co.jyu.fi
|
; originally by: Ville Michael Turjanmaa >> villemt@aton.co.jyu.fi
|
||||||
@ -34,7 +34,7 @@ include 'tinypad.inc'
|
|||||||
|
|
||||||
header '01',1,@CODE,TINYPAD_END,STATIC_MEM_END,MAIN_STACK,@PARAMS,self_path
|
header '01',1,@CODE,TINYPAD_END,STATIC_MEM_END,MAIN_STACK,@PARAMS,self_path
|
||||||
|
|
||||||
APP_VERSION equ '4.0.4'
|
APP_VERSION equ '4.0.5'
|
||||||
|
|
||||||
TRUE = 1
|
TRUE = 1
|
||||||
FALSE = 0
|
FALSE = 0
|
||||||
|
@ -108,7 +108,7 @@ macro popup_res _name,[_lang,_title,_accel,_action]
|
|||||||
if (lang eq _lang) | (_lang eq @!)
|
if (lang eq _lang) | (_lang eq @!)
|
||||||
if _title eq '-'
|
if _title eq '-'
|
||||||
db 1,'-'
|
db 1,'-'
|
||||||
c2 = c2+1
|
c2 = c2+2
|
||||||
else
|
else
|
||||||
virtual at 0
|
virtual at 0
|
||||||
db _title
|
db _title
|
||||||
@ -150,7 +150,7 @@ macro popup_res _name,[_lang,_title,_accel,_action]
|
|||||||
m2 = -2
|
m2 = -2
|
||||||
end if
|
end if
|
||||||
store word (m1*6+m2*6+6*8) at _name+POPUP.width
|
store word (m1*6+m2*6+6*8) at _name+POPUP.width
|
||||||
store word (c1*POP_IHEIGHT+c2*POP_SHEIGHT+3) at _name+POPUP.height
|
store word (c1*POP_IHEIGHT+c2*POP_SHEIGHT+4) at _name+POPUP.height
|
||||||
store dword (((m1+2)*6-1)*65536) at _name+POPUP.acc_ofs
|
store dword (((m1+2)*6-1)*65536) at _name+POPUP.acc_ofs
|
||||||
end if
|
end if
|
||||||
}
|
}
|
||||||
|
@ -609,10 +609,12 @@ proc mem.ReAlloc,mptr,size ;//////////////////////////////////////////////////
|
|||||||
jz @f
|
jz @f
|
||||||
add edx,-4
|
add edx,-4
|
||||||
@@: mcall 68,20
|
@@: mcall 68,20
|
||||||
|
or eax,eax
|
||||||
|
jz @f
|
||||||
add ecx,-4
|
add ecx,-4
|
||||||
mov [eax],ecx
|
mov [eax],ecx
|
||||||
add eax,4
|
add eax,4
|
||||||
pop edx ecx ebx
|
@@: pop edx ecx ebx
|
||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ finddlg_handler:
|
|||||||
add ecx,(3+17)*65536+15
|
add ecx,(3+17)*65536+15
|
||||||
|
|
||||||
push ecx
|
push ecx
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
je @f
|
je @f
|
||||||
add ebx,18
|
add ebx,18
|
||||||
mcall 4,,[sc.work_text],s_2replace,s_2replace.size+1
|
mcall 4,,[sc.work_text],s_2replace,s_2replace.size+1
|
||||||
@ -58,7 +58,7 @@ finddlg_handler:
|
|||||||
shl ebx,16
|
shl ebx,16
|
||||||
|
|
||||||
push 20003
|
push 20003
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
jne .draw.lp1
|
jne .draw.lp1
|
||||||
add ebx,-(2+6*(s_2find.size+2))*65536+6*(s_2find.size+2)
|
add ebx,-(2+6*(s_2find.size+2))*65536+6*(s_2find.size+2)
|
||||||
push s_2find s_2find.size
|
push s_2find s_2find.size
|
||||||
@ -87,7 +87,7 @@ finddlg_handler:
|
|||||||
|
|
||||||
pop ecx
|
pop ecx
|
||||||
|
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
je @f
|
je @f
|
||||||
mov ebp,tb_replace
|
mov ebp,tb_replace
|
||||||
mov eax,[p_info.client_box.width]
|
mov eax,[p_info.client_box.width]
|
||||||
@ -114,7 +114,7 @@ finddlg_handler:
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
..tab:
|
..tab:
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
je @f
|
je @f
|
||||||
mov eax,tb_replace
|
mov eax,tb_replace
|
||||||
cmp eax,[focused_tb]
|
cmp eax,[focused_tb]
|
||||||
@ -145,7 +145,7 @@ osdlg_handler:
|
|||||||
add ecx,(2+18)*65536+15
|
add ecx,(2+18)*65536+15
|
||||||
|
|
||||||
push 20002
|
push 20002
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
jne .draw.lp1
|
jne .draw.lp1
|
||||||
add ebx,-(2+6*(s_2open.size+2))*65536+6*(s_2open.size+2)
|
add ebx,-(2+6*(s_2open.size+2))*65536+6*(s_2open.size+2)
|
||||||
push s_2open s_2open.size
|
push s_2open s_2open.size
|
||||||
@ -160,7 +160,7 @@ osdlg_handler:
|
|||||||
push 20001 s_2cancel s_2cancel.size
|
push 20001 s_2cancel s_2cancel.size
|
||||||
call define_3d_button
|
call define_3d_button
|
||||||
|
|
||||||
cmp [bot_dlg_mode2], 2 ; exit-save dialog
|
cmp [bot_mode2], 2 ; exit-save dialog
|
||||||
jne @f
|
jne @f
|
||||||
|
|
||||||
sub ebx,(6*(s_2save_no.size+2)+3)*65536
|
sub ebx,(6*(s_2save_no.size+2)+3)*65536
|
||||||
@ -209,7 +209,7 @@ gotodlg_handler:
|
|||||||
add ecx,(2+18)*65536+15
|
add ecx,(2+18)*65536+15
|
||||||
|
|
||||||
push 20002
|
push 20002
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
jne .draw.lp1
|
jne .draw.lp1
|
||||||
add ebx,-(2+6*(s_2open.size+2))*65536+6*(s_2open.size+2)
|
add ebx,-(2+6*(s_2open.size+2))*65536+6*(s_2open.size+2)
|
||||||
push s_2open s_2open.size
|
push s_2open s_2open.size
|
||||||
@ -590,13 +590,14 @@ botdlg.button:
|
|||||||
btn.bot.cancel:
|
btn.bot.cancel:
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov [bot_mode],al
|
mov [bot_mode],al
|
||||||
|
mov [main_closing],al
|
||||||
mov [bot_dlg_height],eax
|
mov [bot_dlg_height],eax
|
||||||
mov [s_status],eax
|
mov [s_status],eax
|
||||||
call drawwindow
|
call drawwindow
|
||||||
ret
|
ret
|
||||||
|
|
||||||
btn.bot.opensave:
|
btn.bot.opensave:
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
je .lp1
|
je .lp1
|
||||||
call save_file
|
call save_file
|
||||||
jnc @f
|
jnc @f
|
||||||
@ -613,12 +614,17 @@ botdlg.button:
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
btn.bot.no:
|
btn.bot.no:
|
||||||
call key.ctrl_f4.close
|
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov [bot_mode],al
|
mov [bot_mode],al
|
||||||
mov [bot_dlg_height],eax
|
mov [bot_dlg_height],eax
|
||||||
mov [s_status],eax
|
mov [s_status],eax
|
||||||
call drawwindow
|
call drawwindow
|
||||||
|
cmp [main_closing],0
|
||||||
|
je @f
|
||||||
|
add [exit_tab_item],sizeof.TABITEM
|
||||||
|
jmp key.alt_x.direct
|
||||||
|
ret
|
||||||
|
@@: call key.ctrl_f4.close
|
||||||
ret
|
ret
|
||||||
|
|
||||||
btn.bot.find:
|
btn.bot.find:
|
||||||
@ -629,7 +635,7 @@ botdlg.button:
|
|||||||
cld
|
cld
|
||||||
rep movsb
|
rep movsb
|
||||||
|
|
||||||
cmp [bot_dlg_mode2],0
|
cmp [bot_mode2],0
|
||||||
je @f
|
je @f
|
||||||
call search
|
call search
|
||||||
jnc .found
|
jnc .found
|
||||||
@ -641,7 +647,7 @@ botdlg.button:
|
|||||||
|
|
||||||
movzx eax,[tb_replace.length]
|
movzx eax,[tb_replace.length]
|
||||||
add eax,10
|
add eax,10
|
||||||
stdcall mem.Alloc,eax
|
stdcall mem.Alloc,eax
|
||||||
mov [copy_buf],eax
|
mov [copy_buf],eax
|
||||||
|
|
||||||
movzx eax,[tb_replace.length]
|
movzx eax,[tb_replace.length]
|
||||||
@ -661,7 +667,7 @@ botdlg.button:
|
|||||||
call key.ctrl_v
|
call key.ctrl_v
|
||||||
pop [cur_editor.SelStart.X]
|
pop [cur_editor.SelStart.X]
|
||||||
|
|
||||||
stdcall mem.Free,[copy_buf]
|
stdcall mem.Free,[copy_buf]
|
||||||
|
|
||||||
pop [copy_buf] [copy_count] [copy_size]
|
pop [copy_buf] [copy_count] [copy_size]
|
||||||
|
|
||||||
|
@ -209,30 +209,20 @@ proc draw_main_menu ;/////////////////////////////////////////////////////////
|
|||||||
jmp @b
|
jmp @b
|
||||||
|
|
||||||
.exit:
|
.exit:
|
||||||
mov eax, 8
|
mov ebx,[mainwnd_pos.w]
|
||||||
mov bx, word [mainwnd_pos.w]
|
add ebx,-10-(ATOPH-6)-3
|
||||||
sub bx, 25
|
push ebx 2 (ATOPH-6) (ATOPH-6)
|
||||||
shl ebx, 16
|
call draw_3d_panel
|
||||||
add ebx, 12
|
shl ebx,16
|
||||||
|
add ebx,ATOPH-6
|
||||||
mov ecx, 3 * 65536 + 12
|
mcall 8,,<2,ATOPH-6>,<0x4000,2>
|
||||||
mov edx, 177
|
and ebx,0xFFFF0000
|
||||||
mov esi, 0x00bcbec6
|
add ebx,(ATOPH-8)/2*65536+(ATOPH-8)/2
|
||||||
int 0x40
|
mcall 4,,[sc.work_text],.cross,1
|
||||||
|
|
||||||
;mov eax, 4
|
|
||||||
shr eax, 1
|
|
||||||
sub ebx, -4 * 65536
|
|
||||||
mov bx, 6
|
|
||||||
mov ecx, 0
|
|
||||||
mov edx, cross
|
|
||||||
mov esi, 1
|
|
||||||
int 0x40
|
|
||||||
|
|
||||||
ret
|
ret
|
||||||
|
|
||||||
cross:
|
.cross db 'x'
|
||||||
db 'X'
|
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
|
@ -127,10 +127,10 @@ endp
|
|||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
proc key.ctrl_o ;///// ENTER OPEN FILENAME ///////////////////////////////////
|
proc key.ctrl_o ;///// ENTER OPEN FILENAME ///////////////////////////////////
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
mov [bot_dlg_mode2],0
|
mov [bot_mode2],0
|
||||||
|
|
||||||
.direct:
|
.direct:
|
||||||
cmp [bot_dlg_mode2], 2
|
cmp [bot_mode2], 2
|
||||||
je .ask
|
je .ask
|
||||||
mov [s_status],s_enter_filename
|
mov [s_status],s_enter_filename
|
||||||
jmp .ask1
|
jmp .ask1
|
||||||
@ -164,7 +164,7 @@ proc key.ctrl_s ;///// ENTER SAVE FILENAME ///////////////////////////////////
|
|||||||
ret
|
ret
|
||||||
|
|
||||||
key.shift_ctrl_s:
|
key.shift_ctrl_s:
|
||||||
mov [bot_dlg_mode2],1
|
mov [bot_mode2],1
|
||||||
jmp key.ctrl_o.direct
|
jmp key.ctrl_o.direct
|
||||||
endp
|
endp
|
||||||
|
|
||||||
@ -178,7 +178,7 @@ endp
|
|||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
proc key.ctrl_f ;///// ENTER KEYWORD TO FIND /////////////////////////////////
|
proc key.ctrl_f ;///// ENTER KEYWORD TO FIND /////////////////////////////////
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
mov [bot_dlg_mode2],0
|
mov [bot_mode2],0
|
||||||
mov [bot_dlg_height],16*2+4*2-1
|
mov [bot_dlg_height],16*2+4*2-1
|
||||||
|
|
||||||
mov [s_status],s_enter_text_to_find
|
mov [s_status],s_enter_text_to_find
|
||||||
@ -205,7 +205,7 @@ proc key.ctrl_f ;///// ENTER KEYWORD TO FIND /////////////////////////////////
|
|||||||
endp
|
endp
|
||||||
|
|
||||||
proc key.ctrl_h
|
proc key.ctrl_h
|
||||||
mov [bot_dlg_mode2],1
|
mov [bot_mode2],1
|
||||||
mov [bot_dlg_height],16*3+4*2+1
|
mov [bot_dlg_height],16*3+4*2+1
|
||||||
|
|
||||||
mov [s_status],s_enter_text_to_replace
|
mov [s_status],s_enter_text_to_replace
|
||||||
@ -216,7 +216,7 @@ endp
|
|||||||
proc key.ctrl_g
|
proc key.ctrl_g
|
||||||
ret
|
ret
|
||||||
@^
|
@^
|
||||||
mov [bot_dlg_mode2],0
|
mov [bot_mode2],0
|
||||||
mov [bot_dlg_height],16*2+4*2-1
|
mov [bot_dlg_height],16*2+4*2-1
|
||||||
|
|
||||||
mov [bot_mode],1
|
mov [bot_mode],1
|
||||||
@ -1490,9 +1490,9 @@ endp
|
|||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
proc key.ctrl_f4 ;///// CLOSE CURRENT TAB ////////////////////////////////////
|
proc key.ctrl_f4 ;///// CLOSE CURRENT TAB ////////////////////////////////////
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
cmp [cur_editor.Modified], 0
|
cmp [cur_editor.Modified],0
|
||||||
je .close
|
je .close
|
||||||
mov [bot_dlg_mode2], 2
|
mov [bot_mode2],2
|
||||||
jmp key.ctrl_o.direct
|
jmp key.ctrl_o.direct
|
||||||
.close:
|
.close:
|
||||||
mov [do_not_draw],1
|
mov [do_not_draw],1
|
||||||
@ -1556,6 +1556,19 @@ endp
|
|||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
proc key.alt_x ;///// EXIT PROGRAM ///////////////////////////////////////////
|
proc key.alt_x ;///// EXIT PROGRAM ///////////////////////////////////////////
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
|
mov [main_closing],1
|
||||||
|
mov eax,[tab_bar.Items]
|
||||||
|
mov [exit_tab_item],eax
|
||||||
|
mov eax,[tab_bar.Items.Count]
|
||||||
|
mov [exit_tab_num],eax
|
||||||
|
.direct:
|
||||||
|
call try_to_close_tabs
|
||||||
|
or eax,eax
|
||||||
|
jz .close
|
||||||
|
mov [bot_mode2],2
|
||||||
|
jmp key.ctrl_o.direct
|
||||||
|
|
||||||
|
.close:
|
||||||
mov esi,self_path
|
mov esi,self_path
|
||||||
mov byte[esi+PATHL-1],0
|
mov byte[esi+PATHL-1],0
|
||||||
mov edi,f_info.path
|
mov edi,f_info.path
|
||||||
@ -1574,11 +1587,30 @@ proc key.alt_x ;///// EXIT PROGRAM ///////////////////////////////////////////
|
|||||||
mov [f_info70+21],f_info.path
|
mov [f_info70+21],f_info.path
|
||||||
mcall 70,f_info70
|
mcall 70,f_info70
|
||||||
|
|
||||||
.bgn_rp:
|
|
||||||
call key.ctrl_f4
|
|
||||||
.close:
|
|
||||||
cmp [tab_bar.Items.Count],1
|
|
||||||
jne .bgn_rp
|
|
||||||
mov [main_closed],1
|
mov [main_closed],1
|
||||||
mcall -1
|
mcall -1
|
||||||
endp
|
endp
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------------
|
||||||
|
proc try_to_close_tabs ;///// FIND TABS TO BE SAVED BEFORE CLOSE /////////////
|
||||||
|
;-----------------------------------------------------------------------------
|
||||||
|
push ecx ebp
|
||||||
|
call flush_cur_tab
|
||||||
|
mov ebp,[exit_tab_item] ; [tab_bar.Items]
|
||||||
|
add ebp,-sizeof.TABITEM
|
||||||
|
@@: dec [exit_tab_num]
|
||||||
|
js .ok
|
||||||
|
add ebp,sizeof.TABITEM
|
||||||
|
mov al,[ebp+TABITEM.Editor.Modified]
|
||||||
|
cmp [ebp+TABITEM.Editor.Modified],0
|
||||||
|
je @b
|
||||||
|
mov [exit_tab_item],ebp
|
||||||
|
call set_cur_tab
|
||||||
|
call make_tab_visible
|
||||||
|
xor eax,eax
|
||||||
|
inc eax
|
||||||
|
@@: pop ebp ecx
|
||||||
|
ret
|
||||||
|
.ok: xor eax,eax
|
||||||
|
jmp @b
|
||||||
|
endp
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
;POP_WIDTH = (popup_text.max_title+popup_text.max_accel+6)*6
|
;POP_WIDTH = (popup_text.max_title+popup_text.max_accel+6)*6
|
||||||
POP_IHEIGHT = 16
|
POP_IHEIGHT = 16
|
||||||
POP_SHEIGHT = 3
|
POP_SHEIGHT = 2
|
||||||
;POP_HEIGHT = popup_text.cnt_item*POP_IHEIGHT+popup_text.cnt_sep*4+4
|
;POP_HEIGHT = popup_text.cnt_item*POP_IHEIGHT+popup_text.cnt_sep*4+4
|
||||||
|
|
||||||
popup_thread_start:
|
popup_thread_start:
|
||||||
|
@ -4,12 +4,14 @@ proc flush_cur_tab ;///// SAVE CURRENT TAB DATA TO CONTROL ///////////////////
|
|||||||
; EBP = TABITEM*
|
; EBP = TABITEM*
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
push ecx esi edi
|
push ecx esi edi
|
||||||
mov esi,cur_tab
|
|
||||||
mov edi,[tab_bar.Current.Ptr]
|
mov edi,[tab_bar.Current.Ptr]
|
||||||
|
or edi,edi
|
||||||
|
jz @f
|
||||||
|
mov esi,cur_tab
|
||||||
mov ecx,sizeof.TABITEM/4
|
mov ecx,sizeof.TABITEM/4
|
||||||
cld
|
cld
|
||||||
rep movsd
|
rep movsd
|
||||||
pop edi esi ecx
|
@@: pop edi esi ecx
|
||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
@ -19,10 +21,8 @@ proc set_cur_tab ;///// SET SPECIFIED TAB CURRENT (FOCUS IT) /////////////////
|
|||||||
; EBP = TABITEM*
|
; EBP = TABITEM*
|
||||||
;-----------------------------------------------------------------------------
|
;-----------------------------------------------------------------------------
|
||||||
push ecx esi edi
|
push ecx esi edi
|
||||||
cmp [tab_bar.Current.Ptr],0
|
|
||||||
je @f
|
|
||||||
call flush_cur_tab
|
call flush_cur_tab
|
||||||
@@: mov esi,ebp
|
mov esi,ebp
|
||||||
mov edi,cur_tab
|
mov edi,cur_tab
|
||||||
mov ecx,sizeof.TABITEM/4
|
mov ecx,sizeof.TABITEM/4
|
||||||
rep movsd
|
rep movsd
|
||||||
|
Loading…
Reference in New Issue
Block a user