forked from KolibriOS/kolibrios
't_edit' use font size
git-svn-id: svn://kolibrios.org@6256 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
;*****************************************************************************
|
;*****************************************************************************
|
||||||
; Box_Lib - library of graphical components
|
; Box_Lib - library of graphical components
|
||||||
; Copyright (C) KolibriOS team 2008-2013. All rights reserved.
|
; Copyright (C) KolibriOS team 2008-2016. All rights reserved.
|
||||||
;
|
;
|
||||||
; Authors:
|
; Authors:
|
||||||
; Alexey Teplov aka <Lrz>
|
; Alexey Teplov aka <Lrz>
|
||||||
@@ -18,6 +18,7 @@ public EXPORTS
|
|||||||
section '.flat' code readable align 16
|
section '.flat' code readable align 16
|
||||||
include '../../../../macros.inc'
|
include '../../../../macros.inc'
|
||||||
include '../../../../proc32.inc'
|
include '../../../../proc32.inc'
|
||||||
|
include '../../../../KOSfuncs.inc'
|
||||||
include 'bl_sys.mac'
|
include 'bl_sys.mac'
|
||||||
include 'box_lib.mac' ;macro which should make life easier :)
|
include 'box_lib.mac' ;macro which should make life easier :)
|
||||||
;include '../../../../debug.inc'
|
;include '../../../../debug.inc'
|
||||||
@@ -337,12 +338,12 @@ dd sz_ted_but_redo, ted_but_redo
|
|||||||
dd sz_ted_but_reverse, ted_but_reverse
|
dd sz_ted_but_reverse, ted_but_reverse
|
||||||
dd sz_ted_but_find_next, ted_but_find_next
|
dd sz_ted_but_find_next, ted_but_find_next
|
||||||
dd sz_ted_text_colored, ted_text_colored
|
dd sz_ted_text_colored, ted_text_colored
|
||||||
dd sz_ted_version, 0x00000004
|
dd sz_ted_version, 0x00000005
|
||||||
|
|
||||||
dd sz_Frame_draw, frame.draw
|
dd sz_Frame_draw, frame.draw
|
||||||
dd szVersion_frame, 0x00010001
|
dd szVersion_frame, 0x00010001
|
||||||
|
|
||||||
dd sz_progressbar_draw, progressbar_draw
|
dd sz_progressbar_draw, progressbar_draw
|
||||||
dd sz_progressbar_progress, progressbar_progress
|
dd sz_progressbar_progress, progressbar_progress
|
||||||
|
|
||||||
dd 0,0
|
dd 0,0
|
||||||
@@ -446,7 +447,7 @@ sz_ted_text_colored db 'ted_text_colored',0
|
|||||||
sz_ted_version db 'version_text_edit',0
|
sz_ted_version db 'version_text_edit',0
|
||||||
|
|
||||||
sz_Frame_draw db 'frame_draw',0
|
sz_Frame_draw db 'frame_draw',0
|
||||||
szVersion_frame db 'version_frame',0
|
szVersion_frame db 'version_frame',0
|
||||||
|
|
||||||
sz_progressbar_draw db 'progressbar_draw', 0
|
sz_progressbar_draw db 'progressbar_draw', 0
|
||||||
sz_progressbar_progress db 'progressbar_progress', 0
|
sz_progressbar_progress db 'progressbar_progress', 0
|
@@ -426,6 +426,7 @@ ted_fun_draw_panel_syntax equ dword[edi+234] ;㪠
|
|||||||
ted_fun_save_err equ dword[edi+238] ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><><EFBFBD>뢠<EFBFBD><EBA2A0><EFBFBD><EFBFBD> <20> <20><><EFBFBD>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20><><EFBFBD><EFBFBD><EFBFBD>稫<EFBFBD><E7A8AB><EFBFBD> <20><>㤠筮
|
ted_fun_save_err equ dword[edi+238] ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><><EFBFBD>뢠<EFBFBD><EBA2A0><EFBFBD><EFBFBD> <20> <20><><EFBFBD>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> 䠩<><E4A0A9> <20><><EFBFBD><EFBFBD><EFBFBD>稫<EFBFBD><E7A8AB><EFBFBD> <20><>㤠筮
|
||||||
ted_increase_size equ dword[edi+242] ;<3B><> ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㤥<EFBFBD> 㢥稢<E3A2A5><E7A8A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>墠⪥
|
ted_increase_size equ dword[edi+242] ;<3B><> ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㤥<EFBFBD> 㢥稢<E3A2A5><E7A8A2><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>墠⪥
|
||||||
ted_ptr_free_symb equ dword[edi+246] ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <><E1A2AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD> (<28>ᯮ<EFBFBD><E1AFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>७<E1AAAE><E0A5AD> <20><>⠢<EFBFBD><E2A0A2> ⥪<><E2A5AA><EFBFBD>)
|
ted_ptr_free_symb equ dword[edi+246] ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <><E1A2AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD> (<28>ᯮ<EFBFBD><E1AFAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>७<E1AAAE><E0A5AD> <20><>⠢<EFBFBD><E2A0A2> ⥪<><E2A5AA><EFBFBD>)
|
||||||
|
ted_font_size equ dword[edi+250] ;<3B><><EFBFBD><EFBFBD><EFBFBD>⥫<EFBFBD> <20><><EFBFBD> ࠧ<><E0A0A7><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㦭<EFBFBD> ⠪<><E2A0AA> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ࠬ<EFBFBD><E0A0AC><EFBFBD><EFBFBD> ted_rec_w, ted_rec_h)
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
ted_opt_ed_move_cursor equ 1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⥪<><E2A5AA><EFBFBD>
|
ted_opt_ed_move_cursor equ 1 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⥪<><E2A5AA><EFBFBD>
|
||||||
ted_opt_ed_change_time equ 2 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> ।<><E0A5A4><EFBFBD><EFBFBD><EFBFBD><E0AEA2><EFBFBD><EFBFBD> ⥪<><E2A5AA><EFBFBD>
|
ted_opt_ed_change_time equ 2 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> ।<><E0A5A4><EFBFBD><EFBFBD><EFBFBD><E0AEA2><EFBFBD><EFBFBD> ⥪<><E2A5AA><EFBFBD>
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> box_lib.obj
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> box_lib.obj
|
||||||
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TextEditor <20><><EFBFBD> Kolibri OS
|
; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TextEditor <20><><EFBFBD> Kolibri OS
|
||||||
; 䠩<> <20><><EFBFBD><E1ABA5><EFBFBD><EFBFBD> ࠧ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 21.01.2016 IgorA
|
; 䠩<> <20><><EFBFBD><E1ABA5><EFBFBD><EFBFBD> ࠧ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 19.02.2016 IgorA
|
||||||
; <20><> <20><><EFBFBD> <20>ਬ<EFBFBD><E0A8AC><EFBFBD><EFBFBD><EFBFBD> GPL2 <20><>業<EFBFBD><E6A5AD><EFBFBD>
|
; <20><> <20><><EFBFBD> <20>ਬ<EFBFBD><E0A8AC><EFBFBD><EFBFBD><EFBFBD> GPL2 <20><>業<EFBFBD><E6A5AD><EFBFBD>
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
@@ -169,7 +169,7 @@ proc ted_init_scroll_bars, edit:dword, opt:dword
|
|||||||
mov edx,ted_wnd_l
|
mov edx,ted_wnd_l
|
||||||
add edx,ted_rec_l
|
add edx,ted_rec_l
|
||||||
mov word[ebx+sb_offs_start_x],dx ;<3B><><EFBFBD>⠢<EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ਧ. <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD><EFBFBD>
|
mov word[ebx+sb_offs_start_x],dx ;<3B><><EFBFBD>⠢<EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ਧ. <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov eax,ted_wnd_h ;calculate lines in page
|
mov eax,ted_wnd_h ;calculate lines in page
|
||||||
mov edx,ted_wnd_t
|
mov edx,ted_wnd_t
|
||||||
add edx,eax
|
add edx,eax
|
||||||
mov word[ebx+sb_offs_start_y],dx ;<3B><><EFBFBD>⠢<EFBFBD>塞 <20><><EFBFBD>孨<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ਧ. <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD><EFBFBD>
|
mov word[ebx+sb_offs_start_y],dx ;<3B><><EFBFBD>⠢<EFBFBD>塞 <20><><EFBFBD>孨<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ਧ. <20><><EFBFBD><E0AEAB><EFBFBD><EFBFBD><EFBFBD>
|
||||||
@@ -1254,43 +1254,43 @@ endp
|
|||||||
; ecx = position to inserted cell
|
; ecx = position to inserted cell
|
||||||
align 4
|
align 4
|
||||||
ted_char_add:
|
ted_char_add:
|
||||||
|
.loop_b:
|
||||||
|
cmp ecx,ted_tex_end
|
||||||
|
jge .end_f
|
||||||
|
cmp dword[ecx+10],0
|
||||||
|
jne @f
|
||||||
|
cmp dword[ecx+14],0
|
||||||
|
je .loop_e
|
||||||
|
@@:
|
||||||
|
add ecx,sizeof.symbol
|
||||||
|
jmp .loop_b
|
||||||
|
align 4
|
||||||
|
.loop_e:
|
||||||
|
|
||||||
.loop_b:
|
push eax ebx
|
||||||
cmp ecx,ted_tex_end
|
mov eax,ted_tim_ch
|
||||||
jge .end_f
|
mov dword[ecx+10],eax
|
||||||
cmp dword[ecx+10],0
|
mov ax,si
|
||||||
jne @f
|
mov byte[ecx],al
|
||||||
cmp dword[ecx+14],0
|
|
||||||
je .loop_e
|
|
||||||
@@:
|
|
||||||
add ecx,sizeof.symbol
|
|
||||||
jmp .loop_b
|
|
||||||
.loop_e:
|
|
||||||
|
|
||||||
push eax ebx
|
call ted_get_text_arr_index ; *** eax=pos ***
|
||||||
mov eax,ted_tim_ch
|
mov [ecx+2],eax ;tex[i].perv=pos;
|
||||||
mov dword[ecx+10],eax
|
m2m dword[ecx+6],dword[edx+6] ;tex[i].next=tex[pos].next;
|
||||||
mov ax,si
|
|
||||||
mov byte[ecx],al
|
|
||||||
|
|
||||||
call ted_get_text_arr_index ; *** eax=pos ***
|
push edx
|
||||||
mov [ecx+2],eax ;tex[i].perv=pos;
|
mov edx,ecx
|
||||||
m2m dword[ecx+6],dword[edx+6] ;tex[i].next=tex[pos].next;
|
call ted_get_text_arr_index ; *** eax=i ***
|
||||||
|
pop edx
|
||||||
|
|
||||||
push edx
|
mov [edx+6],eax ;tex[pos].next=i; // <20><>뫪<EFBFBD> <20><>७<EFBFBD><E0A5AD>ࠢ<EFBFBD>塞
|
||||||
mov edx,ecx
|
mov ebx,[ecx+6]
|
||||||
call ted_get_text_arr_index ; *** eax=i ***
|
ConvertIndexToPointer ebx
|
||||||
pop edx
|
mov [ebx+2],eax ;tex[tex[i].next].perv=i; // ...
|
||||||
|
pop ebx eax
|
||||||
|
|
||||||
mov [edx+6],eax ;tex[pos].next=i; // <20><>뫪<EFBFBD> <20><>७<EFBFBD><E0A5AD>ࠢ<EFBFBD>塞
|
.end_f:
|
||||||
mov ebx,[ecx+6]
|
call ted_text_colored
|
||||||
ConvertIndexToPointer ebx
|
ret
|
||||||
mov [ebx+2],eax ;tex[tex[i].next].perv=i; // ...
|
|
||||||
pop ebx eax
|
|
||||||
|
|
||||||
.end_f:
|
|
||||||
call ted_text_colored
|
|
||||||
ret
|
|
||||||
|
|
||||||
;description:
|
;description:
|
||||||
; <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><><EFBFBD> ᬥ<><E1ACA5> <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA2>
|
; <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20><><EFBFBD> ᬥ<><E1ACA5> <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA2>
|
||||||
@@ -1397,31 +1397,29 @@ endp
|
|||||||
; bl = 0 - no delete
|
; bl = 0 - no delete
|
||||||
; bl = 1 - delete
|
; bl = 1 - delete
|
||||||
align 4
|
align 4
|
||||||
proc ted_text_del, edit:dword, del_opt:dword
|
proc ted_text_del uses ecx edx edi, edit:dword, del_opt:dword
|
||||||
push cx edx edi
|
mov edi,dword[edit]
|
||||||
mov edi,dword[edit]
|
mov ebx,dword[del_opt]
|
||||||
mov ebx,dword[del_opt]
|
|
||||||
|
|
||||||
xor cl,cl
|
xor cl,cl
|
||||||
test ebx,ted_opt_ed_move_cursor
|
test ebx,ted_opt_ed_move_cursor
|
||||||
jz @f
|
jz @f
|
||||||
call ted_cur_move_left
|
call ted_cur_move_left
|
||||||
cmp dl,0
|
cmp dl,0
|
||||||
je .no_del
|
je .no_del
|
||||||
@@:
|
@@:
|
||||||
call ted_get_pos_by_cursor
|
call ted_get_pos_by_cursor
|
||||||
cmp ted_gp_opt,1
|
cmp ted_gp_opt,1
|
||||||
je .no_del
|
je .no_del
|
||||||
test ebx,ted_opt_ed_change_time
|
test ebx,ted_opt_ed_change_time
|
||||||
jz @f
|
jz @f
|
||||||
inc ted_tim_ch
|
inc ted_tim_ch
|
||||||
@@:
|
@@:
|
||||||
m2m dword [edx+14], ted_tim_ch
|
m2m dword[edx+14], ted_tim_ch
|
||||||
mov cl,1
|
mov cl,1
|
||||||
.no_del:
|
.no_del:
|
||||||
mov bl,cl
|
mov bl,cl
|
||||||
pop edi edx cx
|
ret
|
||||||
ret
|
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
@@ -1435,7 +1433,6 @@ proc ted_sel_text_del uses ebx ecx edx esi, del_opt:dword
|
|||||||
call ted_is_select
|
call ted_is_select
|
||||||
cmp al,0
|
cmp al,0
|
||||||
je .end_f
|
je .end_f
|
||||||
|
|
||||||
call ted_sel_normalize
|
call ted_sel_normalize
|
||||||
|
|
||||||
mov esi,ted_seln_x1
|
mov esi,ted_seln_x1
|
||||||
@@ -1461,6 +1458,7 @@ proc ted_sel_text_del uses ebx ecx edx esi, del_opt:dword
|
|||||||
and dword[del_opt],esi ;n_tim=false;
|
and dword[del_opt],esi ;n_tim=false;
|
||||||
call ted_iterat_next
|
call ted_iterat_next
|
||||||
jmp @b
|
jmp @b
|
||||||
|
align 4
|
||||||
@@:
|
@@:
|
||||||
test dword[del_opt],ted_opt_ed_change_time
|
test dword[del_opt],ted_opt_ed_change_time
|
||||||
jz @f
|
jz @f
|
||||||
@@ -2985,79 +2983,74 @@ endp
|
|||||||
; this function need to optimize output
|
; this function need to optimize output
|
||||||
align 4
|
align 4
|
||||||
proc ted_draw_cursor_sumb
|
proc ted_draw_cursor_sumb
|
||||||
pushad
|
pushad
|
||||||
|
mov eax,SF_DRAW_RECT
|
||||||
|
mov ebx,ted_wnd_l
|
||||||
|
add ebx,ted_rec_l
|
||||||
|
mov edx,ted_cur_x
|
||||||
|
imul edx,ted_rec_w
|
||||||
|
add ebx,edx
|
||||||
|
shl ebx,16
|
||||||
|
add ebx,ted_rec_w
|
||||||
|
|
||||||
mov eax,13 ;rect
|
mov ecx,ted_wnd_t ;calc rect -> y0,y1
|
||||||
mov ebx,ted_wnd_l
|
add ecx,ted_rec_t
|
||||||
add ebx,ted_rec_l
|
mov edx,ted_cur_y
|
||||||
mov edx,ted_cur_x
|
imul edx,ted_rec_h
|
||||||
imul edx,ted_rec_w
|
add ecx,edx
|
||||||
add ebx,edx
|
shl ecx,16
|
||||||
shl ebx,16
|
add ecx,ted_rec_h
|
||||||
add ebx,ted_rec_w
|
|
||||||
|
|
||||||
mov ecx,ted_wnd_t ;calc rect -> y0,y1
|
mov edx,ted_color_wnd_work
|
||||||
add ecx,ted_rec_t
|
push ecx
|
||||||
mov edx,ted_cur_y
|
call ted_sel_normalize
|
||||||
imul edx,ted_rec_h
|
|
||||||
add ecx,edx
|
|
||||||
shl ecx,16
|
|
||||||
add ecx,ted_rec_h
|
|
||||||
|
|
||||||
mov edx,ted_color_wnd_work
|
mov esi,ted_scr_w
|
||||||
push ecx
|
mov ecx,dword[esi+sb_offs_position]
|
||||||
call ted_sel_normalize
|
sub ted_seln_y0,ecx
|
||||||
|
sub ted_seln_y1,ecx
|
||||||
|
|
||||||
mov esi,ted_scr_w
|
mov ecx,ted_cur_y
|
||||||
mov ecx,dword[esi+sb_offs_position]
|
cmp ecx,ted_seln_y0
|
||||||
sub ted_seln_y0,ecx
|
jl .no_cur_sel
|
||||||
sub ted_seln_y1,ecx
|
cmp ecx,ted_seln_y1
|
||||||
|
jg .no_cur_sel
|
||||||
mov ecx,ted_cur_y
|
mov edx,ted_color_select ;<3B><><EFBFBD>塞 梥<> 䮭<> <20><> 梥<> <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD>
|
||||||
cmp ecx,ted_seln_y0
|
|
||||||
jl .no_cur_sel
|
|
||||||
cmp ecx,ted_seln_y1
|
|
||||||
jg .no_cur_sel
|
|
||||||
mov edx,ted_color_select ;<3B><><EFBFBD>塞 梥<> 䮭<> <20><> 梥<> <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
|
|
||||||
mov esi,ted_scr_h
|
mov esi,ted_scr_h
|
||||||
cmp ecx,ted_seln_y0
|
cmp ecx,ted_seln_y0
|
||||||
jne @f
|
jne @f
|
||||||
mov ecx,ted_cur_x
|
mov ecx,ted_cur_x
|
||||||
add ecx,dword[esi+sb_offs_position]
|
add ecx,dword[esi+sb_offs_position]
|
||||||
cmp ecx,ted_seln_x0
|
cmp ecx,ted_seln_x0
|
||||||
jge @f
|
jge @f
|
||||||
mov edx,ted_color_wnd_work
|
mov edx,ted_color_wnd_work
|
||||||
@@:
|
@@:
|
||||||
|
mov ecx,ted_cur_y
|
||||||
|
cmp ecx,ted_seln_y1
|
||||||
|
jne .no_cur_sel
|
||||||
|
mov ecx,ted_cur_x
|
||||||
|
add ecx,dword[esi+sb_offs_position]
|
||||||
|
cmp ecx,ted_seln_x1
|
||||||
|
jl .no_cur_sel
|
||||||
|
mov edx,ted_color_wnd_work
|
||||||
|
.no_cur_sel:
|
||||||
|
pop ecx
|
||||||
|
int 0x40 ;<3B><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><>אַ㣮<EFACAE>쭨<EFBFBD><ECADA8>
|
||||||
|
|
||||||
mov ecx,ted_cur_y
|
call ted_get_pos_by_cursor ;<3B><>६ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD>
|
||||||
cmp ecx,ted_seln_y1
|
cmp ted_gp_opt,2
|
||||||
jne .no_cur_sel
|
jne @f
|
||||||
mov ecx,ted_cur_x
|
mov esi,1
|
||||||
add ecx,dword[esi+sb_offs_position]
|
ror ecx,16
|
||||||
cmp ecx,ted_seln_x1
|
mov bx,cx
|
||||||
jl .no_cur_sel
|
add ebx,0x10001
|
||||||
mov edx,ted_color_wnd_work
|
call ted_get_symb_color
|
||||||
|
call ted_convert_invis_symb
|
||||||
.no_cur_sel:
|
mcall SF_DRAW_TEXT ;<3B><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD>
|
||||||
pop ecx
|
@@:
|
||||||
int 0x40 ;<3B><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><>אַ㣮<EFACAE>쭨<EFBFBD><ECADA8>
|
popad
|
||||||
|
ret
|
||||||
call ted_get_pos_by_cursor ;<3B><>६ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD>
|
|
||||||
cmp ted_gp_opt,2
|
|
||||||
jne @f
|
|
||||||
mov eax,4
|
|
||||||
mov esi,1
|
|
||||||
ror ecx,16
|
|
||||||
mov bx,cx
|
|
||||||
add ebx,0x10001
|
|
||||||
call ted_get_symb_color
|
|
||||||
call ted_convert_invis_symb
|
|
||||||
int 0x40 ;<3B><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD>
|
|
||||||
@@:
|
|
||||||
|
|
||||||
popad
|
|
||||||
ret
|
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
@@ -3068,32 +3061,33 @@ endp
|
|||||||
; if ted_mode_color=0 then ecx=ted_color_wnd_text
|
; if ted_mode_color=0 then ecx=ted_color_wnd_text
|
||||||
align 4
|
align 4
|
||||||
ted_get_symb_color:
|
ted_get_symb_color:
|
||||||
mov ecx,ted_color_wnd_text ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 梥<> ⥪<><E2A5AA><EFBFBD> <20><> 㬮<>砭<EFBFBD><E7A0AD>
|
mov ecx,ted_color_wnd_text ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 梥<> ⥪<><E2A5AA><EFBFBD> <20><> 㬮<>砭<EFBFBD><E7A0AD>
|
||||||
|
|
||||||
push eax edx
|
push eax edx
|
||||||
cmp ted_mode_color,0
|
cmp ted_mode_color,0
|
||||||
je .exit
|
je .exit
|
||||||
jmp .on_first
|
jmp .on_first
|
||||||
@@:
|
@@:
|
||||||
call ted_iterat_perv
|
call ted_iterat_perv
|
||||||
cmp edx,ted_tex_1
|
cmp edx,ted_tex_1
|
||||||
jle .exit
|
jle .exit
|
||||||
.on_first:
|
.on_first:
|
||||||
xor eax,eax
|
xor eax,eax
|
||||||
mov al,byte[edx+1]
|
mov al,byte[edx+1]
|
||||||
cmp al,0 ;<3B> al=0 <20><> 梥<> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
or al,al ;<3B> al=0 <20><> 梥<> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
je @b
|
jz @b
|
||||||
|
|
||||||
cmp eax,ted_colors_text_count
|
cmp eax,ted_colors_text_count
|
||||||
jge .exit
|
jge .exit
|
||||||
|
|
||||||
shl ax,2 ;㬭<><E3ACAD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 梥<><E6A2A5> <20><> 4 <20><><EFBFBD><EFBFBD><EFBFBD>
|
shl ax,2 ;㬭<><E3ACAD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 梥<><E6A2A5> <20><> 4 <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov ecx,ted_text_colors ;<3B>ਡ<EFBFBD><E0A8A1><EFBFBD>塞 ᬥ饭<E1ACA5><E9A5AD> 1-<2D><> 梥<><E6A2A5>
|
mov ecx,ted_text_colors ;<3B>ਡ<EFBFBD><E0A8A1><EFBFBD>塞 ᬥ饭<E1ACA5><E9A5AD> 1-<2D><> 梥<><E6A2A5>
|
||||||
add ecx,eax
|
add ecx,eax
|
||||||
mov ecx,dword[ecx] ;<3B><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⥪<>騩 梥<> ⥪<><E2A5AA><EFBFBD> <20><> ᬥ饭<E1ACA5><E9A5AD>
|
mov ecx,dword[ecx] ;<3B><>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ⥪<>騩 梥<> ⥪<><E2A5AA><EFBFBD> <20><> ᬥ饭<E1ACA5><E9A5AD>
|
||||||
.exit:
|
.exit:
|
||||||
pop edx eax
|
or ecx,ted_font_size
|
||||||
ret
|
pop edx eax
|
||||||
|
ret
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
; edx = pointer to text
|
; edx = pointer to text
|
||||||
@@ -3136,7 +3130,7 @@ proc ted_draw, edit:dword
|
|||||||
pushad
|
pushad
|
||||||
mov edi,dword[edit]
|
mov edi,dword[edit]
|
||||||
|
|
||||||
mov eax,4 ;draw text
|
mov eax,SF_DRAW_TEXT
|
||||||
mov ecx,ted_text_colors
|
mov ecx,ted_text_colors
|
||||||
mov ecx,dword[ecx]
|
mov ecx,dword[ecx]
|
||||||
|
|
||||||
@@ -3186,7 +3180,7 @@ proc ted_draw, edit:dword
|
|||||||
add eax,ted_wnd_t
|
add eax,ted_wnd_t
|
||||||
cmp bx,ax
|
cmp bx,ax
|
||||||
jg .no_draw_text
|
jg .no_draw_text
|
||||||
mov eax,4
|
mov eax,SF_DRAW_TEXT
|
||||||
;optimized output /\
|
;optimized output /\
|
||||||
and ebx,0xffff
|
and ebx,0xffff
|
||||||
ror ebx,16
|
ror ebx,16
|
||||||
@@ -3198,6 +3192,7 @@ proc ted_draw, edit:dword
|
|||||||
stdcall ted_clear_line_before_draw,edi,ebx,1,dword[line_num]
|
stdcall ted_clear_line_before_draw,edi,ebx,1,dword[line_num]
|
||||||
call ted_opt_draw_line_left
|
call ted_opt_draw_line_left
|
||||||
jmp @b
|
jmp @b
|
||||||
|
align 4
|
||||||
.no_13:
|
.no_13:
|
||||||
|
|
||||||
int 0x40
|
int 0x40
|
||||||
@@ -3246,7 +3241,7 @@ proc ted_draw, edit:dword
|
|||||||
shl ecx,16
|
shl ecx,16
|
||||||
mov cx,word[eax+sb_offs_size_y]
|
mov cx,word[eax+sb_offs_size_y]
|
||||||
inc cx
|
inc cx
|
||||||
mcall 13,,,ted_color_wnd_capt ;[sc.work]
|
mcall SF_DRAW_RECT,,,ted_color_wnd_capt ;[sc.work]
|
||||||
|
|
||||||
;right-bottom square
|
;right-bottom square
|
||||||
mov ebx,ted_wnd_l
|
mov ebx,ted_wnd_l
|
||||||
@@ -3274,7 +3269,7 @@ align 4
|
|||||||
proc ted_draw_main_cursor
|
proc ted_draw_main_cursor
|
||||||
pushad
|
pushad
|
||||||
|
|
||||||
mov eax,13 ;draw cursor
|
mov eax,SF_DRAW_RECT ;draw cursor
|
||||||
mov ecx,ted_wnd_t ;calc rect -> y0,y1
|
mov ecx,ted_wnd_t ;calc rect -> y0,y1
|
||||||
add ecx,ted_rec_t
|
add ecx,ted_rec_t
|
||||||
mov edx,ted_cur_y
|
mov edx,ted_cur_y
|
||||||
@@ -3309,7 +3304,6 @@ proc ted_draw_main_cursor
|
|||||||
call ted_get_pos_by_cursor
|
call ted_get_pos_by_cursor
|
||||||
cmp ted_gp_opt,2
|
cmp ted_gp_opt,2
|
||||||
jne @f
|
jne @f
|
||||||
mov eax,4 ;draw text
|
|
||||||
mov esi,1
|
mov esi,1
|
||||||
ror ecx,16
|
ror ecx,16
|
||||||
mov bx,cx
|
mov bx,cx
|
||||||
@@ -3322,11 +3316,11 @@ proc ted_draw_main_cursor
|
|||||||
sub bx,cx
|
sub bx,cx
|
||||||
.no_up_tetx:
|
.no_up_tetx:
|
||||||
mov ecx,ted_color_cur_text
|
mov ecx,ted_color_cur_text
|
||||||
|
or ecx,ted_font_size
|
||||||
call ted_convert_invis_symb
|
call ted_convert_invis_symb
|
||||||
int 0x40
|
mcall SF_DRAW_TEXT
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
mov eax,4
|
|
||||||
mov ebx,ted_wnd_l
|
mov ebx,ted_wnd_l
|
||||||
add ebx,ted_rec_l
|
add ebx,ted_rec_l
|
||||||
shl ebx,16
|
shl ebx,16
|
||||||
@@ -3335,7 +3329,7 @@ proc ted_draw_main_cursor
|
|||||||
mov ecx,ted_color_wnd_bord
|
mov ecx,ted_color_wnd_bord
|
||||||
or ecx,0x80000000
|
or ecx,0x80000000
|
||||||
lea edx,[txtRow]
|
lea edx,[txtRow]
|
||||||
int 0x40 ;<3B>뢮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> '<27><>ப<EFBFBD>'
|
mcall SF_DRAW_TEXT ;<3B>뢮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> '<27><>ப<EFBFBD>'
|
||||||
|
|
||||||
add ebx,0x500000
|
add ebx,0x500000
|
||||||
lea edx,[txtCol]
|
lea edx,[txtCol]
|
||||||
@@ -3427,17 +3421,15 @@ proc ted_draw_buffer
|
|||||||
mov eax,20 ;<3B><>१<EFBFBD><E0A5A7> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 20 ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>
|
mov eax,20 ;<3B><>१<EFBFBD><E0A5A7> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 20 ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD>
|
||||||
.crop_buf:
|
.crop_buf:
|
||||||
mov esi,eax
|
mov esi,eax
|
||||||
mov eax,4
|
mcall SF_DRAW_TEXT ;<3B>뢮<EFBFBD> ᮤ<>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
int 0x40 ;<3B>뢮<EFBFBD> ᮤ<>ন<EFBFBD><E0A6A8><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
|
|
||||||
sub ebx,50 shl 16
|
sub ebx,50 shl 16
|
||||||
lea edx,[txtBuf]
|
lea edx,[txtBuf]
|
||||||
mov esi,edx
|
mov esi,edx
|
||||||
call tl_strlen
|
call tl_strlen
|
||||||
mov esi,eax
|
mov esi,eax
|
||||||
mov eax,4
|
|
||||||
xor ecx,0x40000000 ;㡨ࠥ<E3A1A8> 梥<> 䮭<>
|
xor ecx,0x40000000 ;㡨ࠥ<E3A1A8> 梥<> 䮭<>
|
||||||
int 0x40 ;<3B>뢮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mcall SF_DRAW_TEXT ;<3B>뢮<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
@@:
|
@@:
|
||||||
popad
|
popad
|
||||||
ret
|
ret
|
||||||
@@ -3459,8 +3451,8 @@ proc ted_draw_help_f1
|
|||||||
mov ecx,ted_wnd_t
|
mov ecx,ted_wnd_t
|
||||||
add ecx,13
|
add ecx,13
|
||||||
shl ecx,16
|
shl ecx,16
|
||||||
add ecx,ted_rec_h
|
add ecx,9 ;9 - <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20>⠢<EFBFBD><E2A0A2><EFBFBD> ted_rec_h <20><><EFBFBD><EFBFBD> <20><><EFBFBD> ࠭<>
|
||||||
mcall 13,,,ted_color_wnd_capt
|
mcall SF_DRAW_RECT,,,ted_color_wnd_capt
|
||||||
|
|
||||||
cmp ted_help_id,-1
|
cmp ted_help_id,-1
|
||||||
je @f
|
je @f
|
||||||
@@ -3483,7 +3475,7 @@ proc ted_draw_help_f1
|
|||||||
mov ecx,dword[ecx]
|
mov ecx,dword[ecx]
|
||||||
or ecx,0xc0000000 ;SetTextStyles
|
or ecx,0xc0000000 ;SetTextStyles
|
||||||
mov esi,edi
|
mov esi,edi
|
||||||
mcall 4,,,,,ted_color_wnd_work
|
mcall SF_DRAW_TEXT,,,,,ted_color_wnd_work
|
||||||
mov edi,esi
|
mov edi,esi
|
||||||
|
|
||||||
mov esi,edx
|
mov esi,edx
|
||||||
@@ -3500,7 +3492,7 @@ proc ted_draw_help_f1
|
|||||||
imul eax,6 ;<3B><>ਭ<EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
imul eax,6 ;<3B><>ਭ<EFBFBD> ᨬ<><E1A8AC><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
shl eax,16
|
shl eax,16
|
||||||
add ebx,eax
|
add ebx,eax
|
||||||
mcall 4
|
mcall SF_DRAW_TEXT
|
||||||
@@:
|
@@:
|
||||||
popad
|
popad
|
||||||
ret
|
ret
|
||||||
@@ -3510,64 +3502,61 @@ endp
|
|||||||
; edi = pointer to tedit struct
|
; edi = pointer to tedit struct
|
||||||
align 4
|
align 4
|
||||||
proc ted_draw_line_numbers
|
proc ted_draw_line_numbers
|
||||||
pushad
|
pushad
|
||||||
|
;top panel with caption
|
||||||
;top panel with caption
|
mov ebx,ted_wnd_l
|
||||||
mov ebx,ted_wnd_l
|
|
||||||
; add ebx,ted_rec_l
|
; add ebx,ted_rec_l
|
||||||
shl ebx,16
|
shl ebx,16
|
||||||
add ebx,ted_wnd_w
|
add ebx,ted_wnd_w
|
||||||
; sub ebx,ted_rec_l
|
; sub ebx,ted_rec_l
|
||||||
mov edx,ted_color_wnd_work
|
mov edx,ted_color_wnd_work
|
||||||
mov ecx,ted_wnd_t
|
mov ecx,ted_wnd_t
|
||||||
shl ecx,16
|
shl ecx,16
|
||||||
add ecx,ted_rec_t
|
add ecx,ted_rec_t
|
||||||
mov eax,13
|
mov edx,ted_color_wnd_capt
|
||||||
mov edx,ted_color_wnd_capt
|
mcall SF_DRAW_RECT
|
||||||
int 0x40
|
|
||||||
|
|
||||||
;line numbers
|
;line numbers
|
||||||
mov ebx,0x40000 ;format
|
mov ebx,0x40000 ;format
|
||||||
mov ecx,ted_scr_w
|
mov ecx,ted_scr_w
|
||||||
mov ecx,dword[ecx+sb_offs_position]
|
mov ecx,dword[ecx+sb_offs_position]
|
||||||
inc ecx
|
inc ecx
|
||||||
mov edx,3
|
mov edx,3
|
||||||
add edx,ted_wnd_l
|
add edx,ted_wnd_l
|
||||||
rol edx,16
|
rol edx,16
|
||||||
add edx,ted_wnd_t
|
add edx,ted_wnd_t
|
||||||
add edx,ted_rec_t
|
add edx,ted_rec_t
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
push ebx ecx edx
|
push ebx ecx edx
|
||||||
;left panel with numbers
|
;left panel with numbers
|
||||||
mov ebx,ted_wnd_l
|
mov ebx,ted_wnd_l
|
||||||
shl ebx,16
|
shl ebx,16
|
||||||
add ebx,ted_rec_l
|
add ebx,ted_rec_l
|
||||||
mov ecx,ted_rec_h
|
mov ecx,ted_rec_h
|
||||||
rol ecx,16
|
rol ecx,16
|
||||||
mov cx,dx
|
mov cx,dx
|
||||||
rol ecx,16
|
rol ecx,16
|
||||||
mov eax,13
|
mov edx,ted_color_wnd_capt
|
||||||
mov edx,ted_color_wnd_capt
|
mcall SF_DRAW_RECT ;<3B><><EFBFBD>㥬 <20><>אַ㣮<EFACAE>쭨<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
||||||
int 0x40 ;<3B><><EFBFBD>㥬 <20><>אַ㣮<EFACAE>쭨<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
|
||||||
pop edx ecx ebx
|
pop edx ecx ebx
|
||||||
|
|
||||||
mov eax,47
|
mov eax,47
|
||||||
mov esi,ted_color_wnd_bord
|
mov esi,ted_color_wnd_bord
|
||||||
int 0x40 ;<3B><><EFBFBD>㥬 <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
int 0x40 ;<3B><><EFBFBD>㥬 <20><><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD>
|
||||||
inc ecx
|
inc ecx
|
||||||
add edx,ted_rec_h
|
add edx,ted_rec_h
|
||||||
sub edx,ted_wnd_t
|
sub edx,ted_wnd_t
|
||||||
mov esi,edx
|
mov esi,edx
|
||||||
and esi,0xffff
|
and esi,0xffff
|
||||||
cmp esi,ted_wnd_h
|
cmp esi,ted_wnd_h
|
||||||
jge @f
|
jge @f
|
||||||
add edx,ted_wnd_t
|
add edx,ted_wnd_t
|
||||||
jmp @b
|
jmp @b
|
||||||
@@:
|
align 4
|
||||||
|
@@:
|
||||||
popad
|
popad
|
||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;output:
|
;output:
|
||||||
@@ -3611,7 +3600,7 @@ proc ted_draw_cur_line, edit:dword
|
|||||||
|
|
||||||
cmp ted_gp_opt,2
|
cmp ted_gp_opt,2
|
||||||
jne .no_draw_text
|
jne .no_draw_text
|
||||||
; mov eax,4 ;draw text
|
; mov eax,SF_DRAW_TEXT
|
||||||
call ted_get_symb_color
|
call ted_get_symb_color
|
||||||
mov esi,1 ;draw 1 symbol
|
mov esi,1 ;draw 1 symbol
|
||||||
@@:
|
@@:
|
||||||
@@ -3627,7 +3616,7 @@ proc ted_draw_cur_line, edit:dword
|
|||||||
call ted_get_symb_color
|
call ted_get_symb_color
|
||||||
.no_col_change:
|
.no_col_change:
|
||||||
|
|
||||||
mov eax,4 ;draw text
|
mov eax,SF_DRAW_TEXT
|
||||||
cmp byte [edx],13
|
cmp byte [edx],13
|
||||||
jne .no_13
|
jne .no_13
|
||||||
cmp ted_mode_invis,1
|
cmp ted_mode_invis,1
|
||||||
@@ -3753,14 +3742,13 @@ proc ted_clear_line_before_draw, edit:dword, coords:dword, clear_o:dword, numb_l
|
|||||||
mov edx,ted_color_select ;draw selected line
|
mov edx,ted_color_select ;draw selected line
|
||||||
.no_select:
|
.no_select:
|
||||||
|
|
||||||
mov eax,13 ;rect
|
mcall SF_DRAW_RECT ;<3B><><EFBFBD><EFBFBD><EFBFBD>᪠ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD> 梥⮬ 䮭<> <20><><EFBFBD> 梥⮬ <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD>
|
||||||
int 0x40 ;<3B><><EFBFBD><EFBFBD><EFBFBD>᪠ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD> 梥⮬ 䮭<> <20><><EFBFBD> 梥⮬ <20>뤥<EFBFBD><EBA4A5><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
|
|
||||||
call ted_is_select
|
call ted_is_select
|
||||||
cmp al,0
|
or al,al
|
||||||
je .no_clear
|
jz .no_clear
|
||||||
|
|
||||||
mov al,13 ;rect
|
mov al,SF_DRAW_RECT
|
||||||
xor cx,cx
|
xor cx,cx
|
||||||
add ecx,ted_rec_h
|
add ecx,ted_rec_h
|
||||||
cmp ted_seln_y0,esi
|
cmp ted_seln_y0,esi
|
||||||
@@ -3823,10 +3811,11 @@ ted_get_first_visible_pos:
|
|||||||
call ted_iterat_next
|
call ted_iterat_next
|
||||||
cmp edx,ted_tex_1
|
cmp edx,ted_tex_1
|
||||||
jle @f
|
jle @f
|
||||||
cmp byte [edx],13
|
cmp byte[edx],13
|
||||||
jne @b
|
jne @b
|
||||||
inc ecx
|
inc ecx
|
||||||
jmp @b
|
jmp @b
|
||||||
|
align 4
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
cmp ecx,dword[eax+sb_offs_position]
|
cmp ecx,dword[eax+sb_offs_position]
|
||||||
@@ -3850,61 +3839,59 @@ ted_get_first_visible_pos:
|
|||||||
;description:
|
;description:
|
||||||
; <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20>㦭<EFBFBD> <20><><EFBFBD> <20><>⨬<EFBFBD><E2A8AC><EFBFBD>樨 <20>뢮<EFBFBD><EBA2AE> ⥪<><E2A5AA><EFBFBD>
|
; <20>㭪<EFBFBD><E3ADAA><EFBFBD> <20>㦭<EFBFBD> <20><><EFBFBD> <20><>⨬<EFBFBD><E2A8AC><EFBFBD>樨 <20>뢮<EFBFBD><EBA2AE> ⥪<><E2A5AA><EFBFBD>
|
||||||
align 4
|
align 4
|
||||||
proc ted_opt_draw_line_left
|
proc ted_opt_draw_line_left uses ebx
|
||||||
push ebx
|
mov ebx,ted_scr_h
|
||||||
|
mov ebx,dword[ebx+sb_offs_position]
|
||||||
|
or ebx,ebx
|
||||||
|
jz .ret_f
|
||||||
|
push eax
|
||||||
|
mov eax,edx
|
||||||
|
|
||||||
mov ebx,ted_scr_h
|
cmp edx,ted_tex
|
||||||
mov ebx,dword[ebx+sb_offs_position]
|
jne @f
|
||||||
cmp ebx,0
|
call ted_iterat_next
|
||||||
je .ret_f
|
jmp .beg_cycle
|
||||||
push eax
|
@@:
|
||||||
mov eax,edx
|
|
||||||
|
|
||||||
cmp edx,ted_tex
|
or ebx,ebx
|
||||||
jne @f
|
jz @f
|
||||||
call ted_iterat_next
|
|
||||||
jmp .beg_cycle
|
|
||||||
@@:
|
|
||||||
|
|
||||||
cmp ebx,0
|
cmp byte[edx],13
|
||||||
je @f
|
jne @f
|
||||||
|
call ted_iterat_next
|
||||||
cmp byte[edx],13
|
.beg_cycle:
|
||||||
jne @f
|
@@:
|
||||||
call ted_iterat_next
|
cmp edx,ted_tex_1
|
||||||
.beg_cycle:
|
jle @f
|
||||||
@@:
|
cmp byte[edx],13
|
||||||
cmp edx,ted_tex_1
|
je @f
|
||||||
jle @f
|
or ebx,ebx
|
||||||
cmp byte[edx],13
|
jz @f
|
||||||
je @f
|
|
||||||
cmp ebx,0
|
|
||||||
je @f
|
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
xor eax,eax ;eax <20>㤥<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
xor eax,eax ;eax <20>㤥<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov al,byte[edx+1]
|
mov al,byte[edx+1]
|
||||||
cmp al,0
|
or al,al
|
||||||
je .no_color
|
jz .no_color
|
||||||
cmp eax,ted_colors_text_count
|
cmp eax,ted_colors_text_count
|
||||||
jge .no_color
|
jge .no_color
|
||||||
xor ecx,ecx
|
xor ecx,ecx
|
||||||
mov cl,byte[edx+1]
|
mov cl,byte[edx+1]
|
||||||
shl cx,2
|
shl cx,2
|
||||||
add ecx,ted_text_colors
|
add ecx,ted_text_colors
|
||||||
mov ecx,dword[ecx]
|
mov ecx,dword[ecx]
|
||||||
.no_color:
|
.no_color:
|
||||||
;--------------------------------------
|
;--------------------------------------
|
||||||
mov eax,edx
|
mov eax,edx
|
||||||
call ted_iterat_next
|
call ted_iterat_next
|
||||||
dec ebx
|
dec ebx
|
||||||
jmp @b
|
jmp @b
|
||||||
@@:
|
align 4
|
||||||
mov edx,eax
|
@@:
|
||||||
pop eax
|
mov edx,eax
|
||||||
.ret_f:
|
pop eax
|
||||||
call ted_get_symb_color
|
.ret_f:
|
||||||
pop ebx
|
call ted_get_symb_color
|
||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;input:
|
;input:
|
||||||
@@ -4038,7 +4025,6 @@ ted_wnd_main_click:
|
|||||||
|
|
||||||
push eax
|
push eax
|
||||||
shr eax,16
|
shr eax,16
|
||||||
and eax,0xffff
|
|
||||||
sub eax,ted_wnd_l
|
sub eax,ted_wnd_l
|
||||||
sub eax,ted_rec_l
|
sub eax,ted_rec_l
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
@@ -3,12 +3,10 @@
|
|||||||
use32
|
use32
|
||||||
org 0x0
|
org 0x0
|
||||||
db 'MENUET01' ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD><E1AFAE>塞<EFBFBD><EFA5AC><EFBFBD> 䠩<><E4A0A9> <20>ᥣ<EFBFBD><E1A5A3> 8 <20><><EFBFBD><EFBFBD>
|
db 'MENUET01' ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20>ᯮ<EFBFBD><E1AFAE>塞<EFBFBD><EFA5AC><EFBFBD> 䠩<><E4A0A9> <20>ᥣ<EFBFBD><E1A5A3> 8 <20><><EFBFBD><EFBFBD>
|
||||||
dd 1, start, i_end, mem, stacktop
|
dd 1, start, i_end, mem, stacktop, file_name, sys_path
|
||||||
dd file_name ; command line
|
|
||||||
dd sys_path
|
|
||||||
|
|
||||||
MAX_COLOR_WORD_LEN equ 40
|
MAX_COLOR_WORD_LEN equ 40
|
||||||
maxChars equ 100002 ;(...+2)
|
maxChars equ 100002 ;(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⢮ ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>㬥<EFBFBD><E3ACA5><EFBFBD> + 2)
|
||||||
BUF_SIZE equ 4096 ;buffer for copy|paste
|
BUF_SIZE equ 4096 ;buffer for copy|paste
|
||||||
maxSyntaxFileSize equ 410000
|
maxSyntaxFileSize equ 410000
|
||||||
TOOLBAR_ICONS_SIZE equ 1200*20
|
TOOLBAR_ICONS_SIZE equ 1200*20
|
||||||
@@ -31,7 +29,9 @@ include 'wnd_k_words.inc'
|
|||||||
|
|
||||||
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
@use_library_mem mem.Alloc,mem.Free,mem.ReAlloc,dll.Load
|
||||||
|
|
||||||
|
align 4
|
||||||
icon_tl_sys dd 0 ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
icon_tl_sys dd 0 ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20>࠭<EFBFBD><E0A0AD><EFBFBD><EFBFBD> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
run_file_70 FileInfoBlock
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
start:
|
start:
|
||||||
@@ -201,8 +201,12 @@ mov ebp,lib0
|
|||||||
mov dword[tedit0.rec.width],eax
|
mov dword[tedit0.rec.width],eax
|
||||||
stdcall dword[ini_get_int],file_name,ini_sec_window,key_symbol_h,ini_def_symbol_h
|
stdcall dword[ini_get_int],file_name,ini_sec_window,key_symbol_h,ini_def_symbol_h
|
||||||
mov dword[tedit0.rec.height],eax
|
mov dword[tedit0.rec.height],eax
|
||||||
lea eax,[eax+eax*2]
|
;lea eax,[eax+eax*2]
|
||||||
mov dword[tedit0.rec.top],eax
|
;mov dword[tedit0.rec.top],eax
|
||||||
|
;font size
|
||||||
|
stdcall dword[ini_get_int],file_name,ini_sec_window,key_font_s,ini_def_font_s
|
||||||
|
shl eax,24
|
||||||
|
mov dword[tedit0.font_size],eax
|
||||||
;䠩<><E4A0A9><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>७<EFBFBD><E0A5AD>
|
;䠩<><E4A0A9><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>७<EFBFBD><E0A5AD>
|
||||||
xor edx,edx
|
xor edx,edx
|
||||||
mov ebx,synt_auto_open
|
mov ebx,synt_auto_open
|
||||||
@@ -578,17 +582,17 @@ i_end:
|
|||||||
last_open_synt_file rb 32 ;<3B><><EFBFBD> <20><><EFBFBD><E1ABA5><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><E7A5AD><EFBFBD><EFBFBD> 䠩<><E4A0A9> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD>
|
last_open_synt_file rb 32 ;<3B><><EFBFBD> <20><><EFBFBD><E1ABA5><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>祭<EFBFBD><E7A5AD><EFBFBD><EFBFBD> 䠩<><E4A0A9> ᨭ⠪<E1A8AD><E2A0AA><EFBFBD><EFBFBD>
|
||||||
buf rb BUF_SIZE ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA2><EFBFBD><EFBFBD> <20> <20><>⠢<EFBFBD><E2A0A2>
|
buf rb BUF_SIZE ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><E0AEA2><EFBFBD><EFBFBD> <20> <20><>⠢<EFBFBD><E2A0A2>
|
||||||
buf_find rb 302 ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>᪠ ⥪<><E2A5AA><EFBFBD>
|
buf_find rb 302 ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD>᪠ ⥪<><E2A5AA><EFBFBD>
|
||||||
run_file_70 FileInfoBlock
|
|
||||||
sc system_colors
|
sc system_colors
|
||||||
rb sizeof.system_colors
|
|
||||||
IncludeUGlobals
|
IncludeUGlobals
|
||||||
align 16
|
align 16
|
||||||
procinfo process_information
|
procinfo process_information
|
||||||
rb 1024
|
rb 1024
|
||||||
thread:
|
thread:
|
||||||
rb 1024
|
rb 4096
|
||||||
|
align 16
|
||||||
thread_coords:
|
thread_coords:
|
||||||
rb 4096
|
rb 4096
|
||||||
|
align 16
|
||||||
stacktop:
|
stacktop:
|
||||||
sys_path: ;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD>㤠 <20><><EFBFBD><EFBFBD><EFBFBD>⨫<EFBFBD><E2A8AB> <20>ᯮ<EFBFBD><E1AFAE>塞<EFBFBD><EFA5AC> 䠩<>
|
sys_path: ;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD>㤠 <20><><EFBFBD><EFBFBD><EFBFBD>⨫<EFBFBD><E2A8AB> <20>ᯮ<EFBFBD><E1AFAE>塞<EFBFBD><EFA5AC> 䠩<>
|
||||||
rb 4096
|
rb 4096
|
||||||
|
@@ -3,8 +3,9 @@ t=20
|
|||||||
l=200
|
l=200
|
||||||
w=570
|
w=570
|
||||||
h=490
|
h=490
|
||||||
symbol_w=7
|
symbol_w=14
|
||||||
symbol_h=11
|
symbol_h=20
|
||||||
|
font_s=1
|
||||||
scroll_type=0
|
scroll_type=0
|
||||||
[Options]
|
[Options]
|
||||||
syntax_0=asm.syn
|
syntax_0=asm.syn
|
||||||
|
Reference in New Issue
Block a user