forked from KolibriOS/kolibrios
't_edit' can use packed syntax files
git-svn-id: svn://kolibrios.org@2708 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
9b63edd2e9
commit
896eb433ec
@ -1,10 +1,17 @@
|
|||||||
@fasm.exe -m 16384 %1asm_syn.asm %2asm.syn
|
@fasm.exe -m 16384 %1asm_syn.asm %2asm.syn
|
||||||
|
@kpack %2asm.syn
|
||||||
@fasm.exe -m 16384 %1cpp_kol_cla_syn.asm %2cpp_kol_cla.syn
|
@fasm.exe -m 16384 %1cpp_kol_cla_syn.asm %2cpp_kol_cla.syn
|
||||||
|
@kpack %2cpp_kol_cla.syn
|
||||||
@fasm.exe -m 16384 %1cpp_kol_dar_syn.asm %2cpp_kol_dar.syn
|
@fasm.exe -m 16384 %1cpp_kol_dar_syn.asm %2cpp_kol_dar.syn
|
||||||
|
@kpack %2cpp_kol_dar.syn
|
||||||
@fasm.exe -m 16384 %1cpp_kol_def_syn.asm %2cpp_kol_def.syn
|
@fasm.exe -m 16384 %1cpp_kol_def_syn.asm %2cpp_kol_def.syn
|
||||||
@fasm.exe -m 16384 %1cpp_win_dar_syn.asm %2cpp_win_dar.syn
|
@kpack %2cpp_kol_def.syn
|
||||||
@fasm.exe -m 16384 %1default_syn.asm %2default.syn
|
@fasm.exe -m 16384 %1default_syn.asm %2default.syn
|
||||||
|
@kpack %2default.syn
|
||||||
@fasm.exe -m 16384 %1html_syn.asm %2html.syn
|
@fasm.exe -m 16384 %1html_syn.asm %2html.syn
|
||||||
|
@kpack %2html.syn
|
||||||
@fasm.exe -m 16384 %1ini_files_syn.asm %2ini_files.syn
|
@fasm.exe -m 16384 %1ini_files_syn.asm %2ini_files.syn
|
||||||
@fasm.exe -m 16384 %1voc_eng_rus_syn.asm %2voc_eng_rus.syn
|
@fasm.exe -m 16384 %1voc_eng_rus_syn.asm %2voc_eng_rus.syn
|
||||||
|
@kpack %2voc_eng_rus.syn
|
||||||
@fasm.exe -m 16384 %1win_const_syn.asm %2win_const.syn
|
@fasm.exe -m 16384 %1win_const_syn.asm %2win_const.syn
|
||||||
|
@kpack %2win_const.syn
|
File diff suppressed because one or more lines are too long
@ -18,10 +18,9 @@ struct symbol
|
|||||||
ends
|
ends
|
||||||
|
|
||||||
|
|
||||||
hed db 'TextEditor 31.05.12',0 ;¯®¤¯¨áì ®ª
|
hed db 'TextEditor 1.06.12',0 ;¯®¤¯¨áì ®ª
|
||||||
sc system_colors
|
sc system_colors
|
||||||
|
|
||||||
;fn_icon db 'te_icon.bmp',0
|
|
||||||
bmp_icon dd 0
|
bmp_icon dd 0
|
||||||
run_file_70 FileInfoBlock
|
run_file_70 FileInfoBlock
|
||||||
|
|
||||||
@ -207,28 +206,60 @@ proc ted_but_open_syntax uses eax ebx ecx edi, edit:dword
|
|||||||
copy_path ebx,fn_syntax_dir,file_name_rez,0x0
|
copy_path ebx,fn_syntax_dir,file_name_rez,0x0
|
||||||
copy_path file_name_rez,sys_path,file_name,0x0
|
copy_path file_name_rez,sys_path,file_name,0x0
|
||||||
|
|
||||||
mov ebx,run_file_70
|
call open_unpac_synt_file
|
||||||
mov dword[ebx], 0
|
cmp ebx,-1
|
||||||
mov dword[ebx+4], 0
|
je @f
|
||||||
mov dword[ebx+8], 0
|
|
||||||
mov ecx, ted_syntax_file_size
|
|
||||||
mov dword[ebx+12], ecx
|
|
||||||
m2m dword[ebx+16], ted_syntax_file
|
|
||||||
mov byte[ebx+20], 0
|
|
||||||
m2m dword[ebx+21], file_name
|
|
||||||
mcall 70
|
|
||||||
cmp eax,0
|
|
||||||
jne .end_0
|
|
||||||
call ted_on_init_synt_err
|
|
||||||
jmp @f
|
|
||||||
.end_0:
|
|
||||||
stdcall [ted_init_syntax_file],edi
|
|
||||||
call [ted_text_colored]
|
call [ted_text_colored]
|
||||||
stdcall [ted_draw],edi
|
stdcall [ted_draw],edi
|
||||||
@@:
|
@@:
|
||||||
ret
|
ret
|
||||||
endp
|
endp
|
||||||
|
|
||||||
|
;®âªàë⨥ ¨ à ᯠª®¢ª ä ©« ¯®¤á¢¥âª¨ á¨â ªá¨á
|
||||||
|
;output:
|
||||||
|
; ebx - ç¨á«® ¯à®ç¨â ëå ¡ ©â ¨§ ä ©«
|
||||||
|
align 4
|
||||||
|
open_unpac_synt_file:
|
||||||
|
push eax edi esi
|
||||||
|
mov edi, tedit0
|
||||||
|
mov [run_file_70.Function], 0
|
||||||
|
mov [run_file_70.Position], 0
|
||||||
|
mov [run_file_70.Flags], 0
|
||||||
|
mov ecx, ted_syntax_file_size
|
||||||
|
mov dword[run_file_70.Count], ecx
|
||||||
|
m2m dword[run_file_70.Buffer], ted_syntax_file
|
||||||
|
mov byte[run_file_70+20], 0
|
||||||
|
mov [run_file_70.FileName], file_name
|
||||||
|
mcall 70, run_file_70
|
||||||
|
cmp ebx,-1
|
||||||
|
jne .end_0
|
||||||
|
call ted_on_init_synt_err
|
||||||
|
jmp @f
|
||||||
|
.end_0:
|
||||||
|
mov eax,ted_syntax_file
|
||||||
|
cmp dword[eax],'KPCK'
|
||||||
|
jne .end_unpack
|
||||||
|
cmp dword[eax+4],ecx
|
||||||
|
jg @f ;¥á«¨ ¤«ï à ᯠª®¢ ®£® ä ©« ¥ å¢ â ¥â ¢ë¤¥«¥®© ¯ ¬ïâ¨
|
||||||
|
cmp dword[unpac_mem],0
|
||||||
|
jne .end_1
|
||||||
|
;¢ë¤¥«¥¨¥ ¯ ¬ï⨠¤«ï à ᯠª®¢ª¨ ä ©«
|
||||||
|
stdcall mem.Alloc,ecx
|
||||||
|
mov [unpac_mem],eax
|
||||||
|
.end_1:
|
||||||
|
stdcall unpack,ted_syntax_file,[unpac_mem]
|
||||||
|
mov edi,ted_syntax_file
|
||||||
|
mov esi,[unpac_mem]
|
||||||
|
mov ecx,[edi+4]
|
||||||
|
cld
|
||||||
|
rep movsb
|
||||||
|
.end_unpack:
|
||||||
|
stdcall [ted_init_syntax_file], tedit0
|
||||||
|
@@:
|
||||||
|
pop esi edi eax
|
||||||
|
ret
|
||||||
|
|
||||||
;description:
|
;description:
|
||||||
; ¢ë§®¢/áªàë⨥ ¯ ¥«¨ ¯®¨áª
|
; ¢ë§®¢/áªàë⨥ ¯ ¥«¨ ¯®¨áª
|
||||||
align 4
|
align 4
|
||||||
|
@ -20,11 +20,14 @@ BUF_SIZE equ 1000 ;buffer for copy|paste
|
|||||||
maxSyntaxFileSize equ 410000
|
maxSyntaxFileSize equ 410000
|
||||||
|
|
||||||
include '../../proc32.inc'
|
include '../../proc32.inc'
|
||||||
|
;include '../../config.inc'
|
||||||
include '../../macros.inc'
|
include '../../macros.inc'
|
||||||
include 'mem.inc'
|
include 'mem.inc'
|
||||||
include 'dll.inc'
|
include 'dll.inc'
|
||||||
include '../../develop/libraries/box_lib/load_lib.mac'
|
include '../../develop/libraries/box_lib/load_lib.mac'
|
||||||
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
|
include '../../develop/libraries/box_lib/trunk/box_lib.mac'
|
||||||
|
include '../../system/desktop/trunk/kglobals.inc'
|
||||||
|
include '../../system/desktop/trunk/unpacker.inc'
|
||||||
include 'lang.inc'
|
include 'lang.inc'
|
||||||
|
|
||||||
include 't_data.inc'
|
include 't_data.inc'
|
||||||
@ -91,7 +94,6 @@ start:
|
|||||||
jz button.exit
|
jz button.exit
|
||||||
|
|
||||||
mcall 66,1,1 ;scan code
|
mcall 66,1,1 ;scan code
|
||||||
;mcall 26,2,1,conv_tabl
|
|
||||||
mcall 40,0x27
|
mcall 40,0x27
|
||||||
|
|
||||||
mov esi,file_name
|
mov esi,file_name
|
||||||
@ -169,32 +171,16 @@ mov ecx,ebx
|
|||||||
mov ebx,dword[fn_col_option]
|
mov ebx,dword[fn_col_option]
|
||||||
copy_path ebx,fn_syntax_dir,file_name_rez,0x0
|
copy_path ebx,fn_syntax_dir,file_name_rez,0x0
|
||||||
copy_path file_name_rez,sys_path,file_name,0x0
|
copy_path file_name_rez,sys_path,file_name,0x0
|
||||||
mov edi, tedit0
|
call open_unpac_synt_file
|
||||||
mov ebx,run_file_70
|
|
||||||
mov dword[ebx], 0
|
|
||||||
mov dword[ebx+4], 0
|
|
||||||
mov dword[ebx+8], 0
|
|
||||||
mov ecx, ted_syntax_file_size
|
|
||||||
mov dword[ebx+12], ecx
|
|
||||||
m2m dword[ebx+16], ted_syntax_file
|
|
||||||
mov byte[ebx+20], 0
|
|
||||||
m2m dword[ebx+21], file_name
|
|
||||||
mcall 70
|
|
||||||
cmp eax,0
|
|
||||||
jne .end_0
|
|
||||||
call ted_on_init_synt_err
|
|
||||||
jmp @f
|
|
||||||
.end_0:
|
|
||||||
stdcall [ted_init_syntax_file], edi
|
|
||||||
|
|
||||||
;--- get cmd line ---
|
;--- get cmd line ---
|
||||||
cmp byte[openfile_path+3],0 ;openfile_path
|
cmp byte[openfile_path+3],0 ;openfile_path
|
||||||
je @f ;if file names exist
|
je @f ;if file names exist
|
||||||
mov esi,openfile_path
|
mov esi,openfile_path
|
||||||
call strlen ;eax=strlen
|
call strlen ;eax=strlen
|
||||||
mov [edit1.size],eax
|
mov [edit1.size],eax
|
||||||
call but_no_msg_OpenFile
|
call but_no_msg_OpenFile
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
align 4
|
align 4
|
||||||
red_win:
|
red_win:
|
||||||
@ -476,22 +462,27 @@ button:
|
|||||||
cmp ah,1
|
cmp ah,1
|
||||||
jne still
|
jne still
|
||||||
.exit:
|
.exit:
|
||||||
stdcall [ted_can_save], tedit0
|
stdcall [ted_can_save], tedit0
|
||||||
cmp al,1
|
cmp al,1
|
||||||
jne @f
|
jne @f
|
||||||
stdcall [mb_create],msgbox_8,thread ;message: save changes in file?
|
stdcall [mb_create],msgbox_8,thread ;message: save changes in file?
|
||||||
jmp still
|
jmp still
|
||||||
@@:
|
@@:
|
||||||
stdcall mem.Free,[bmp_icon]
|
stdcall mem.Free,[bmp_icon]
|
||||||
|
cmp dword[unpac_mem],0
|
||||||
|
je @f
|
||||||
|
stdcall mem.Free,[unpac_mem]
|
||||||
|
@@:
|
||||||
|
|
||||||
stdcall [ted_delete], tedit0
|
stdcall [ted_delete], tedit0
|
||||||
stdcall dword[tl_data_clear], tree1
|
stdcall dword[tl_data_clear], tree1
|
||||||
mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
|
mcall -1 ;¢ë室 ¨§ ¯à®£à ¬¬ë
|
||||||
|
|
||||||
|
|
||||||
edit1 edit_box 250, 220, 5, 0xffffff, 0xff80, 0xff0000, 0xff, 0x4080, 4090, openfile_path, mouse_dd, 0
|
edit1 edit_box 250, 220, 5, 0xffffff, 0xff80, 0xff0000, 0xff, 0x4080, 4090, openfile_path, mouse_dd, 0
|
||||||
edit2 edit_box TED_PANEL_WIDTH-1, 0, 20, 0xffffff, 0xff80, 0xff0000, 0xff, 0x4080, 300, buf_find, mouse_dd, 0
|
edit2 edit_box TED_PANEL_WIDTH-1, 0, 20, 0xffffff, 0xff80, 0xff0000, 0xff, 0x4080, 300, buf_find, mouse_dd, 0
|
||||||
|
|
||||||
|
unpac_mem dd 0
|
||||||
buf_find db 302 dup(0)
|
buf_find db 302 dup(0)
|
||||||
|
|
||||||
if lang eq ru
|
if lang eq ru
|
||||||
@ -530,8 +521,9 @@ l_libs_start:
|
|||||||
err_message_found_lib_3, head_f_l, import_libimg, err_message_import_3, head_f_i
|
err_message_found_lib_3, head_f_l, import_libimg, err_message_import_3, head_f_i
|
||||||
load_lib_end:
|
load_lib_end:
|
||||||
|
|
||||||
|
IncludeIGlobals
|
||||||
i_end:
|
i_end:
|
||||||
|
IncludeUGlobals
|
||||||
rb 1024
|
rb 1024
|
||||||
align 16
|
align 16
|
||||||
procinfo process_information
|
procinfo process_information
|
||||||
|
Loading…
Reference in New Issue
Block a user