add select word by double click
git-svn-id: svn://kolibrios.org@6239 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -1,13 +1,3 @@
|
|||||||
struct FileInfoBlock
|
|
||||||
Function dd ?
|
|
||||||
Position dd ?
|
|
||||||
Flags dd ?
|
|
||||||
Count dd ?
|
|
||||||
Buffer dd ?
|
|
||||||
db ?
|
|
||||||
FileName dd ?
|
|
||||||
ends
|
|
||||||
|
|
||||||
struct symbol
|
struct symbol
|
||||||
c db ? ; +0 ᨬ<EFBFBD><EFBFBD><EFBFBD>
|
c db ? ; +0 ᨬ<EFBFBD><EFBFBD><EFBFBD>
|
||||||
col db ? ; +1 梥<EFBFBD>
|
col db ? ; +1 梥<EFBFBD>
|
||||||
@@ -412,53 +402,47 @@ but_find_key_w:
|
|||||||
;description:
|
;description:
|
||||||
; <EFBFBD>뤥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⨥ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⠥<EFBFBD><EFBFBD><EFBFBD> ᨬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; <EFBFBD>뤥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⨥ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⠥<EFBFBD><EFBFBD><EFBFBD> ᨬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
align 4
|
align 4
|
||||||
proc but_sumb_invis, edit:dword
|
proc but_sumb_invis uses edi, edit:dword
|
||||||
push edi
|
mov edi,dword[edit]
|
||||||
mov edi,dword[edit]
|
|
||||||
|
|
||||||
xor ted_mode_invis,1
|
xor ted_mode_invis,1
|
||||||
call draw_but_toolbar
|
call draw_but_toolbar
|
||||||
stdcall [ted_draw],edi
|
stdcall [ted_draw],edi
|
||||||
pop edi
|
ret
|
||||||
ret
|
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;description:
|
;description:
|
||||||
; <EFBFBD>뤥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⨥ <EFBFBD><EFBFBD><EFBFBD>祢<EFBFBD><EFBFBD> <EFBFBD>
|
; <EFBFBD>뤥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⨥ <EFBFBD><EFBFBD><EFBFBD>祢<EFBFBD><EFBFBD> <EFBFBD>
|
||||||
align 4
|
align 4
|
||||||
proc but_k_words_show, edit:dword
|
proc but_k_words_show uses edi, edit:dword
|
||||||
push edi
|
mov edi,dword[edit]
|
||||||
mov edi,dword[edit]
|
|
||||||
|
|
||||||
xor ted_mode_color,1
|
xor ted_mode_color,1
|
||||||
cmp ted_mode_color,0
|
cmp ted_mode_color,0
|
||||||
je @f
|
je @f
|
||||||
call [ted_text_colored]
|
call [ted_text_colored]
|
||||||
@@:
|
@@:
|
||||||
call draw_but_toolbar
|
call draw_but_toolbar
|
||||||
stdcall [ted_draw],edi
|
stdcall [ted_draw],edi
|
||||||
pop edi
|
ret
|
||||||
ret
|
|
||||||
endp
|
endp
|
||||||
|
|
||||||
;description:
|
;description:
|
||||||
; <EFBFBD>맮<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⨥ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> 䠩<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
; <EFBFBD>맮<EFBFBD>/<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⨥ <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> 䠩<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᨭ⠪<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
align 4
|
align 4
|
||||||
proc but_synt_show, edit:dword
|
proc but_synt_show uses edi, edit:dword
|
||||||
push edi
|
mov edi,[edit]
|
||||||
mov edi,[edit]
|
|
||||||
|
|
||||||
cmp ted_panel_id,TED_PANEL_NULL
|
cmp ted_panel_id,TED_PANEL_NULL
|
||||||
je @f
|
je @f
|
||||||
mov ted_panel_id,TED_PANEL_NULL
|
mov ted_panel_id,TED_PANEL_NULL
|
||||||
mov ted_wnd_l,0
|
mov ted_wnd_l,0
|
||||||
jmp .e_if
|
jmp .e_if
|
||||||
@@:
|
@@:
|
||||||
mov ted_panel_id,TED_PANEL_SYNTAX
|
mov ted_panel_id,TED_PANEL_SYNTAX
|
||||||
mov ted_wnd_l,TED_PANEL_WIDTH
|
mov ted_wnd_l,TED_PANEL_WIDTH
|
||||||
.e_if:
|
.e_if:
|
||||||
call EvSize
|
call EvSize
|
||||||
stdcall [ted_draw],edi
|
stdcall [ted_draw],edi
|
||||||
pop edi
|
ret
|
||||||
ret
|
|
||||||
endp
|
endp
|
||||||
|
@@ -14,11 +14,9 @@ maxSyntaxFileSize equ 410000
|
|||||||
TOOLBAR_ICONS_SIZE equ 1200*20
|
TOOLBAR_ICONS_SIZE equ 1200*20
|
||||||
|
|
||||||
include '../../proc32.inc'
|
include '../../proc32.inc'
|
||||||
;include '../../config.inc'
|
|
||||||
include '../../macros.inc'
|
include '../../macros.inc'
|
||||||
include '../../dll.inc'
|
|
||||||
include '../../KOSfuncs.inc'
|
include '../../KOSfuncs.inc'
|
||||||
include '../../develop/libraries/box_lib/load_lib.mac'
|
include '../../load_img.inc'
|
||||||
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
|
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
|
||||||
include '../../system/skincfg/trunk/kglobals.inc'
|
include '../../system/skincfg/trunk/kglobals.inc'
|
||||||
include '../../system/skincfg/trunk/unpacker.inc'
|
include '../../system/skincfg/trunk/unpacker.inc'
|
||||||
@@ -33,50 +31,6 @@ 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
|
||||||
|
|
||||||
|
|
||||||
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>㧪<EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD> <20> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⥪<EFBFBD> libimg.obj
|
|
||||||
;<3B><><EFBFBD> <20>ᯮ<EFBFBD>짮<EFBFBD><ECA7AE><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>㦭<EFBFBD> <20><>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD>:
|
|
||||||
; - run_file_70 FileInfoBlock
|
|
||||||
; - image_data dd 0
|
|
||||||
macro load_image_file path,buf,size
|
|
||||||
{
|
|
||||||
;path - <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><>ப<EFBFBD><E0AEAA><EFBFBD><EFBFBD> <20><>ࠬ<EFBFBD><E0A0AC>
|
|
||||||
if path eqtype '' ;<3B><EFBFBD><E0AEA2>塞 <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><>ப<EFBFBD><E0AEAA> <20><>ࠬ<EFBFBD><E0A0AC><EFBFBD> path
|
|
||||||
jmp @f
|
|
||||||
local .path_str
|
|
||||||
.path_str db path ;<3B><>ନ<EFBFBD>㥬 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD>
|
|
||||||
db 0
|
|
||||||
@@:
|
|
||||||
;32 - <20>⠭<EFBFBD><E2A0AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD>⥬<EFBFBD><E2A5AC><EFBFBD> <20><>⥬
|
|
||||||
copy_path .path_str,[32],file_name,0
|
|
||||||
else
|
|
||||||
copy_path path,[32],file_name,0 ;<3B><>ନ<EFBFBD>㥬 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20> 䠩<><E4A0A9> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD>, <20><><EFBFBD>ࠧ㬥<E0A0A7><E3ACA5><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20> <20>ணࠬ<E0AEA3><E0A0AC><EFBFBD>
|
|
||||||
end if
|
|
||||||
|
|
||||||
stdcall mem.Alloc, dword size ;<3B>뤥<EFBFBD>塞 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD>
|
|
||||||
mov [buf],eax
|
|
||||||
|
|
||||||
mov [run_file_70.Function], SSF_READ_FILE
|
|
||||||
mov [run_file_70.Position], 0
|
|
||||||
mov [run_file_70.Flags], 0
|
|
||||||
mov [run_file_70.Count], dword size
|
|
||||||
m2m [run_file_70.Buffer], eax
|
|
||||||
mov byte[run_file_70+20], 0
|
|
||||||
mov [run_file_70.FileName], file_name
|
|
||||||
mcall SF_FILE,run_file_70 ;<3B><><EFBFBD><EFBFBD>㦠<EFBFBD><E3A6A0> 䠩<> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD>
|
|
||||||
cmp ebx,0xffffffff
|
|
||||||
je @f
|
|
||||||
;<3B><>।<EFBFBD><E0A5A4>塞 <20><><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD> <20> <20><>ॢ<EFBFBD><E0A5A2><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> image_data
|
|
||||||
stdcall dword[img_decode], dword[buf],ebx,0
|
|
||||||
mov dword[image_data],eax
|
|
||||||
;<3B>८<EFBFBD>ࠧ㥬 <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><EFBFBD><EFBFBD> <20> <20><>ଠ<EFBFBD><E0ACA0> rgb
|
|
||||||
stdcall dword[img_to_rgb2], dword[image_data],dword[buf]
|
|
||||||
;㤠<>塞 <20>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> image_data
|
|
||||||
stdcall dword[img_destroy], dword[image_data]
|
|
||||||
@@:
|
|
||||||
}
|
|
||||||
|
|
||||||
image_data dd 0 ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20>६<EFBFBD><E0A5AC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD> <20>㦥<EFBFBD> <20>८<EFBFBD>ࠧ<EFBFBD><E0A0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ࠦ<EFBFBD><E0A0A6><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>
|
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>
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
@@ -190,18 +144,18 @@ mov ebp,lib0
|
|||||||
stdcall [ksubmenu_add], [main_menu], eax
|
stdcall [ksubmenu_add], [main_menu], eax
|
||||||
|
|
||||||
; init toolbar file
|
; init toolbar file
|
||||||
load_image_file 'te_icon.png', bmp_icon,TOOLBAR_ICONS_SIZE*2 ;㬭<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 2 <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
load_image_file 'te_icon.png', bmp_icon,,,6 ;6 <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mov eax,[bmp_icon]
|
mov eax,[bmp_icon]
|
||||||
add eax,TOOLBAR_ICONS_SIZE
|
add eax,TOOLBAR_ICONS_SIZE
|
||||||
stdcall img_to_gray, [bmp_icon],eax,(TOOLBAR_ICONS_SIZE)/3
|
stdcall img_to_gray, [bmp_icon],eax,(TOOLBAR_ICONS_SIZE)/3
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
; <20><>⠥<EFBFBD> 䠩<> <20> <20><><EFBFBD><EFBFBD><EFBFBD>ࠬ<EFBFBD> <20> <20><><EFBFBD><EFBFBD>ﬨ
|
; <20><>⠥<EFBFBD> 䠩<> <20> <20><><EFBFBD><EFBFBD><EFBFBD>ࠬ<EFBFBD> <20> <20><><EFBFBD><EFBFBD>ﬨ
|
||||||
load_image_file 'tl_sys_16.png', icon_tl_sys,54+3*256*13
|
load_image_file 'tl_sys_16.png', icon_tl_sys
|
||||||
mov eax,dword[icon_tl_sys]
|
mov eax,dword[icon_tl_sys]
|
||||||
mov dword[tree1.data_img_sys],eax
|
mov dword[tree1.data_img_sys],eax
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
; <20><>⠥<EFBFBD> 䠩<> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 㧫<><E3A7AB>
|
; <20><>⠥<EFBFBD> 䠩<> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 㧫<><E3A7AB>
|
||||||
load_image_file 'tl_nod_16.png', icon_tl_sys,54+3*256*2
|
load_image_file 'tl_nod_16.png', icon_tl_sys
|
||||||
mov eax,dword[icon_tl_sys]
|
mov eax,dword[icon_tl_sys]
|
||||||
mov dword[tree1.data_img],eax
|
mov dword[tree1.data_img],eax
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
@@ -282,11 +236,11 @@ mov ebp,lib0
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
align 4
|
align 16
|
||||||
red_win:
|
red_win:
|
||||||
call draw_window
|
call draw_window
|
||||||
|
|
||||||
align 4
|
align 16
|
||||||
still:
|
still:
|
||||||
mcall SF_WAIT_EVENT
|
mcall SF_WAIT_EVENT
|
||||||
cmp dword[exit_code],1
|
cmp dword[exit_code],1
|
||||||
@@ -304,7 +258,7 @@ still:
|
|||||||
@@:
|
@@:
|
||||||
jmp still
|
jmp still
|
||||||
|
|
||||||
align 4
|
align 16
|
||||||
draw_window:
|
draw_window:
|
||||||
mcall SF_REDRAW,SSF_BEGIN_DRAW
|
mcall SF_REDRAW,SSF_BEGIN_DRAW
|
||||||
|
|
||||||
@@ -326,25 +280,39 @@ draw_window:
|
|||||||
mcall SF_REDRAW,SSF_END_DRAW
|
mcall SF_REDRAW,SSF_END_DRAW
|
||||||
ret
|
ret
|
||||||
|
|
||||||
align 4
|
align 16
|
||||||
mouse:
|
mouse:
|
||||||
stdcall [kmainmenu_dispatch_cursorevent], [main_menu]
|
stdcall [kmainmenu_dispatch_cursorevent], [main_menu]
|
||||||
stdcall [ted_mouse], tedit0
|
|
||||||
|
mcall SF_MOUSE_GET,SSF_WINDOW_POSITION
|
||||||
|
cmp word[tedit0.wnd.top],ax
|
||||||
|
jg .no_edit
|
||||||
|
shr eax,16
|
||||||
|
cmp word[tedit0.wnd.left],ax
|
||||||
|
jg .no_edit
|
||||||
|
mcall SF_MOUSE_GET,SSF_BUTTON_EXT
|
||||||
|
bt eax,24 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 饫<><E9A5AB><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
jnc @f
|
||||||
|
stdcall [ted_but_select_word], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
stdcall [ted_mouse], tedit0
|
||||||
|
.no_edit:
|
||||||
|
|
||||||
cmp byte[tedit0.panel_id],TED_PANEL_FIND ;if not panel
|
cmp byte[tedit0.panel_id],TED_PANEL_FIND ;if not panel
|
||||||
jne @f
|
jne @f
|
||||||
stdcall [edit_box_mouse], dword edit2
|
stdcall [edit_box_mouse], edit2
|
||||||
@@:
|
@@:
|
||||||
cmp byte[tedit0.panel_id],TED_PANEL_SYNTAX ;if not panel
|
cmp byte[tedit0.panel_id],TED_PANEL_SYNTAX ;if not panel
|
||||||
jne .mouse_end
|
jne @f
|
||||||
stdcall [tl_mouse], tree1
|
stdcall [tl_mouse], tree1
|
||||||
.mouse_end:
|
@@:
|
||||||
jmp still
|
jmp still
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
|
|
||||||
;output:
|
;output:
|
||||||
; ah = symbol
|
; ah = symbol
|
||||||
align 4
|
align 16
|
||||||
proc KeyConvertToASCII uses ebx, table:dword
|
proc KeyConvertToASCII uses ebx, table:dword
|
||||||
mov ebx,dword[table] ;convert scan to ascii
|
mov ebx,dword[table] ;convert scan to ascii
|
||||||
ror ax,8
|
ror ax,8
|
||||||
@@ -354,158 +322,179 @@ proc KeyConvertToASCII uses ebx, table:dword
|
|||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
align 4
|
align 16
|
||||||
key:
|
key:
|
||||||
mcall SF_KEYBOARD,SSF_GET_CONTROL_KEYS ;66.3 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ﭨ<EFBFBD> <20><>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mcall SF_KEYBOARD,SSF_GET_CONTROL_KEYS ;66.3 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ﭨ<EFBFBD> <20><>ࠢ<EFBFBD><E0A0A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
xor esi,esi
|
xor esi,esi
|
||||||
mov ecx,1
|
mov ecx,1
|
||||||
test al,0x03 ;[Shift]
|
test al,0x03 ;[Shift]
|
||||||
jz @f
|
jz @f
|
||||||
mov cl,2
|
mov cl,2
|
||||||
or esi,KM_SHIFT
|
or esi,KM_SHIFT
|
||||||
@@:
|
@@:
|
||||||
test al,0x0c ;[Ctrl]
|
test al,0x0c ;[Ctrl]
|
||||||
jz @f
|
jz @f
|
||||||
or esi,KM_CTRL
|
or esi,KM_CTRL
|
||||||
@@:
|
@@:
|
||||||
test al,0x30 ;[Alt]
|
test al,0x30 ;[Alt]
|
||||||
jz @f
|
jz @f
|
||||||
mov cl,3
|
mov cl,3
|
||||||
or esi,KM_ALT
|
or esi,KM_ALT
|
||||||
@@:
|
@@:
|
||||||
test al,0x80 ;[NumLock]
|
test al,0x80 ;[NumLock]
|
||||||
jz @f
|
jz @f
|
||||||
or esi,KM_NUMLOCK
|
or esi,KM_NUMLOCK
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
mcall SF_SYSTEM_GET,SSF_KEYBOARD_LAYOUT,,conv_tabl ;26.2 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>᪫<EFBFBD><E1AAAB><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
mcall SF_SYSTEM_GET,SSF_KEYBOARD_LAYOUT,,conv_tabl ;26.2 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>᪫<EFBFBD><E1AAAB><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
mcall SF_GET_KEY
|
mcall SF_GET_KEY
|
||||||
stdcall [tl_key], tree1
|
stdcall [tl_key], tree1
|
||||||
|
|
||||||
test word [edit2.flags],10b;ed_focus ; <20> <20><> <20> 䮪<><E4AEAA><EFBFBD>, <20><>室<EFBFBD><E5AEA4>
|
test word [edit2.flags],10b;ed_focus ; <20> <20><> <20> 䮪<><E4AEAA><EFBFBD>, <20><>室<EFBFBD><E5AEA4>
|
||||||
je @f
|
je @f
|
||||||
cmp ah,0x80 ;if key up
|
cmp ah,0x80 ;if key up
|
||||||
ja still
|
ja still
|
||||||
cmp ah,42 ;[Shift] (left)
|
cmp ah,42 ;[Shift] (left)
|
||||||
je still
|
je still
|
||||||
cmp ah,54 ;[Shift] (right)
|
cmp ah,54 ;[Shift] (right)
|
||||||
je still
|
je still
|
||||||
cmp ah,56 ;[Alt]
|
cmp ah,56 ;[Alt]
|
||||||
je still
|
je still
|
||||||
cmp ah,29 ;[Ctrl]
|
cmp ah,29 ;[Ctrl]
|
||||||
je still
|
je still
|
||||||
cmp ah,69 ;[Pause Break]
|
cmp ah,69 ;[Pause Break]
|
||||||
je still
|
je still
|
||||||
|
|
||||||
stdcall KeyConvertToASCII, dword conv_tabl
|
stdcall KeyConvertToASCII, dword conv_tabl
|
||||||
stdcall [edit_box_key], dword edit2
|
stdcall [edit_box_key], dword edit2
|
||||||
jmp still
|
jmp still
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
stdcall [ted_key], tedit0, conv_tabl,esi
|
stdcall [ted_key], tedit0, conv_tabl,esi
|
||||||
jmp still
|
jmp still
|
||||||
|
|
||||||
align 4
|
align 16
|
||||||
button:
|
button:
|
||||||
|
mcall SF_GET_BUTTON
|
||||||
|
cmp ah,3
|
||||||
|
jne @f
|
||||||
|
call ted_but_new_file
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,4
|
||||||
|
jne @f
|
||||||
|
call ted_but_open_file
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,5
|
||||||
|
jne @f
|
||||||
|
call ted_but_save_file
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,6
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_select_word], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,7
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_cut], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,8
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_copy], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,9
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_paste], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,10
|
||||||
|
jne @f
|
||||||
|
call ted_but_find
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,11
|
||||||
|
jne @f
|
||||||
|
call but_replace
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,12
|
||||||
|
jne @f
|
||||||
|
call but_find_key_w
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,13
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_sumb_upper], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,14
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_sumb_lover], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,15
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_reverse], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,16
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_undo], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,17
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_redo], tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,18
|
||||||
|
jne @f
|
||||||
|
stdcall but_sumb_invis, tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,19
|
||||||
|
jne @f
|
||||||
|
stdcall but_k_words_show, tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,20
|
||||||
|
jne @f
|
||||||
|
stdcall but_synt_show, tedit0
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,21
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_convert_by_table],tedit0,tbl_1251_866
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
cmp ah,22
|
||||||
|
jne @f
|
||||||
|
stdcall [ted_but_convert_by_table],tedit0,tbl_866_1251
|
||||||
|
jmp still
|
||||||
|
@@:
|
||||||
|
|
||||||
mcall SF_GET_BUTTON
|
cmp ah,200
|
||||||
cmp ah,3
|
jne @f
|
||||||
jne @f
|
stdcall ted_but_open_syntax, tedit0
|
||||||
call ted_but_new_file
|
jmp still
|
||||||
@@:
|
@@:
|
||||||
cmp ah,4
|
cmp ah,201
|
||||||
jne @f
|
jne @f
|
||||||
call ted_but_open_file
|
stdcall [ted_but_find_next], tedit0
|
||||||
@@:
|
jmp still
|
||||||
cmp ah,5
|
@@:
|
||||||
jne @f
|
|
||||||
call ted_but_save_file
|
|
||||||
@@:
|
|
||||||
cmp ah,6
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_select_word], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,7
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_cut], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,8
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_copy], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,9
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_paste], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,10
|
|
||||||
jne @f
|
|
||||||
call ted_but_find
|
|
||||||
@@:
|
|
||||||
cmp ah,11
|
|
||||||
jne @f
|
|
||||||
call but_replace
|
|
||||||
@@:
|
|
||||||
cmp ah,12
|
|
||||||
jne @f
|
|
||||||
call but_find_key_w
|
|
||||||
@@:
|
|
||||||
cmp ah,13
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_sumb_upper], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,14
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_sumb_lover], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,15
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_reverse], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,16
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_undo], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,17
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_redo], tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,18
|
|
||||||
jne @f
|
|
||||||
stdcall but_sumb_invis, tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,19
|
|
||||||
jne @f
|
|
||||||
stdcall but_k_words_show, tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,20
|
|
||||||
jne @f
|
|
||||||
stdcall but_synt_show, tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,21
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_convert_by_table],tedit0,tbl_1251_866
|
|
||||||
@@:
|
|
||||||
cmp ah,22
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_convert_by_table],tedit0,tbl_866_1251
|
|
||||||
@@:
|
|
||||||
|
|
||||||
cmp ah,200
|
cmp ah,1
|
||||||
jne @f
|
je .exit
|
||||||
stdcall ted_but_open_syntax, tedit0
|
|
||||||
@@:
|
|
||||||
cmp ah,201
|
|
||||||
jne @f
|
|
||||||
stdcall [ted_but_find_next], tedit0
|
|
||||||
@@:
|
|
||||||
|
|
||||||
cmp ah,1
|
cmp ah,199
|
||||||
je .exit
|
je .exit
|
||||||
|
|
||||||
cmp ah,199
|
jmp still
|
||||||
je .exit
|
|
||||||
|
|
||||||
jmp still
|
|
||||||
.exit:
|
.exit:
|
||||||
cmp dword[exit_code],1
|
cmp dword[exit_code],1
|
||||||
je @f
|
je @f
|
||||||
|
Reference in New Issue
Block a user