/programs/other/planet_v/planet_v.asm |
---|
19,6 → 19,8 |
include '../../develop/libraries/box_lib/load_lib.mac' |
include '../../develop/libraries/box_lib/trunk/box_lib.mac' |
include '../../develop/libraries/box_lib/asm/trunk/opendial.mac' |
use_OpenDialog |
min_window_w equ 485 ;¬¨¨¬ «ì ï è¨à¨ ®ª |
min_window_h equ 325 ;¬¨¨¬ «ì ï ¢ëá®â ®ª |
109,19 → 111,16 |
stdcall dword[tl_node_add], txt_tile_type_0, 0, tree1 |
; init bmp file |
push dword RGB_TILE_SIZE+300 ;300 - § ¯ áë¥ ¡ ©âë á ãç¥â®¬ § £®«®¢ª bmp ä ©« |
call mem.Alloc |
stdcall mem.Alloc, dword RGB_TILE_SIZE+300 ;300 - § ¯ áë¥ ¡ ©âë á ãç¥â®¬ § £®«®¢ª bmp ä ©« |
mov [bmp_icon],eax |
stdcall array_tile_function, tile_00,max_tiles_count,tile_init |
stdcall tiles_init_grid, tile_00,max_tiles_count,max_tiles_cols |
push dword TREE_ICON_SYS16_BMP_SIZE |
call mem.Alloc |
stdcall mem.Alloc, dword TREE_ICON_SYS16_BMP_SIZE |
mov [tree_sys_icon],eax |
push dword TREE_ICON_NOD16_BMP_SIZE |
call mem.Alloc |
stdcall mem.Alloc, dword TREE_ICON_NOD16_BMP_SIZE |
mov [tree_nod_icon],eax |
copy_path fn_icon1,sys_path,file_name,0x0 |
173,10 → 172,15 |
mov byte[file_name],0 |
; OpenDialog initialisation |
init_OpenDialog OpenDialog_data |
align 4 |
red_win: |
call draw_win |
call draw_window |
call but_MetLoad |
align 4 |
still: |
mov eax,10 |
mcall |
201,6 → 205,7 |
jmp still |
align 4 |
key: |
push eax ebx |
mcall 2 |
212,13 → 217,13 |
push dword tree2 |
call [tl_key] |
mov ebx,dword[el_focus] ;÷òî-áû êàðòà íå äâèãàëàñü åñëè îêíà treelist â ôîêóñå |
mov ebx,dword[el_focus] ;çâ®-¡ë ª àâ ¥ ¤¢¨£ « áì ¥á«¨ ®ª treelist ¢ 䮪ãᥠ|
cmp ebx, dword tree1 |
je .end_f |
cmp ebx, dword tree2 |
je .end_f |
;÷òî-áû êàðòà íå äâèãàëàñü åñëè òåêñòîâûå ïîëÿ â ôîêóñå |
;çâ®-¡ë ª àâ ¥ ¤¢¨£ « áì ¥á«¨ ⥪áâ®¢ë¥ ¯®«ï ¢ 䮪ãᥠ|
test word[edit1.flags],10b ;ed_focus |
jne .end_f |
test word[edit2.flags],10b ;ed_focus |
266,7 → 271,7 |
align 4 |
draw_win: |
draw_window: |
pushad |
mcall 12,1 |
301,8 → 306,7 |
stdcall dword[tl_draw],dword tree1 |
stdcall dword[tl_draw],dword tree2 |
mov dword[wScrMetki.all_redraw],1 |
push dword wScrMetki |
call [scrollbar_ver_draw] |
stdcall [scrollbar_ver_draw], dword wScrMetki |
mov eax,8 ;ª®¯ª |
mov ebx,145*65536+20 |
316,6 → 320,11 |
mov edx,5 |
int 0x40 |
mov ebx,170*65536+40 ;ª®¯ª ¢ë§®¢ ¤¨ «®£ OpenDial |
;mov ecx,5*65536+25 |
mov edx,13 |
int 0x40 |
mov bx,di |
shl ebx,16 |
mov bx,100 |
351,7 → 360,7 |
shl ebx,16 |
mov bx,30 |
;mov ebx,405*65536+30 |
mov ecx,265*65536+25 |
;mov ecx,265*65536+25 |
mov edx,11 |
int 0x40 |
360,7 → 369,7 |
shl ebx,16 |
mov bx,30 |
;mov ebx,370*65536+30 |
mov ecx,265*65536+25 |
;mov ecx,265*65536+25 |
mov edx,10 |
int 0x40 |
446,11 → 455,8 |
call draw_tiles |
push dword ch2 |
call [check_box_draw] |
push dword ch1 |
call [check_box_draw] |
stdcall [check_box_draw], dword ch1 |
stdcall [check_box_draw], dword ch2 |
stdcall [edit_box_draw], edit1 |
stdcall [edit_box_draw], edit2 |
522,6 → 528,10 |
jne @f |
call fun_goto_met |
@@: |
cmp ah,13 ;¤¨ «®£ OpenDialog ¤«ï ¯®¨áª ¯ ¯ª¨ |
jne @f |
call fun_opn_dlg |
@@: |
cmp ah,1 |
jne still |
531,10 → 541,10 |
stdcall array_tile_function, tile_00,max_tiles_count,tile_destroy |
stdcall dword[tl_data_clear], tree1 |
mov dword[tree2.data_img_sys],0 ;÷èñòèì óêàçàòåëü íà ñèñòåìíûå èêîíêè, |
;ò. ê. îíè áûëè óäàëåíû âåðõíåé ôóíêöèåé tl_data_clear |
;ïîâòîðíûé âûçîâ tl_data_clear áåç ÷èñòêè óêàçàòåëÿ âûçâåò îøèáêó |
mov dword[tree2.data_img],0 ;÷èñòèì óêàçàòåëü íà èêîíêè óçëîâ |
mov dword[tree2.data_img_sys],0 ;ç¨á⨬ 㪠§ ⥫ì á¨áâ¥¬ë¥ ¨ª®ª¨, |
;â. ª. ®¨ ¡ë«¨ 㤠«¥ë ¢¥à奩 äãªæ¨¥© tl_data_clear |
;¯®¢â®àë© ¢ë§®¢ tl_data_clear ¡¥§ ç¨á⪨ 㪠§ â¥«ï ¢ë§¢¥â ®è¨¡ªã |
mov dword[tree2.data_img],0 ;ç¨á⨬ 㪠§ â¥«ì ¨ª®ª¨ 㧫®¢ |
stdcall dword[tl_data_clear], tree2 |
; stdcall dword[img_destroy], dword[data_icon] |
550,7 → 560,7 |
mov eax,dword[data_rgb] |
mov ecx,dword[size] ;ecx = size |
imul ecx,3 |
@@: ;çàòåìíåíèå öâåòà ïèêñåëåé |
@@: ;§ ⥬¥¨¥ 梥⠯¨ªá¥«¥© |
shr byte[eax],1 |
and byte[eax],0x7f |
inc eax |
559,8 → 569,8 |
mov eax,dword[data_rgb] |
mov ecx,dword[size] ;ecx = size |
shr ecx,1 |
@@: ;ñëîæåíèå öâåòîâ ïèêñåëåé |
mov ebx,dword[eax+3] ;êîïèðóåì öâåò ñîñåäíåãî ïèêñåëÿ |
@@: ;á«®¦¥¨¥ 梥⮢ ¯¨ªá¥«¥© |
mov ebx,dword[eax+3] ;ª®¯¨à㥬 梥â á®á¥¤¥£® ¯¨ªá¥«ï |
add word[eax],bx |
shr ebx,16 |
add byte[eax+2],bl |
574,8 → 584,8 |
add ebx,3 |
mov ecx,dword[size] ;ecx = size |
shr ecx,1 |
dec ecx ;ëèøíèé ïèêñåëü |
@@: ;ïîäæàòèå ïèêñåëåé |
dec ecx ;«¨è¨© ¯¨ªá¥«ì |
@@: ;¯®¤¦ ⨥ ¯¨ªá¥«¥© |
mov edx,dword[ebx] |
mov word[eax],dx |
shr edx,16 |
600,7 → 610,7 |
mov eax,dword[data_rgb] ;eax = |
mov ecx,dword[size] ;ecx = size |
imul ecx,3 |
@@: ;çàòåìíåíèå öâåòà ïèêñåëåé |
@@: ;§ ⥬¥¨¥ 梥⠯¨ªá¥«¥© |
shr byte[eax],1 |
and byte[eax],0x7f |
inc eax |
614,8 → 624,8 |
mov ecx,dword[size] ;ecx = size |
shr ecx,1 |
xor edi,edi |
@@: ;ñëîæåíèå öâåòîâ ïèêñåëåé |
mov edx,dword[ebx] ;êîïèðóåì öâåò íèæíåãî ïèêñåëÿ |
@@: ;á«®¦¥¨¥ 梥⮢ ¯¨ªá¥«¥© |
mov edx,dword[ebx] ;ª®¯¨à㥬 梥⠨¦¥£® ¯¨ªá¥«ï |
add word[eax],dx |
shr edx,16 |
add byte[eax+2],dl |
638,10 → 648,10 |
add ebx,eax |
mov ecx,dword[size] ;ecx = size |
shr ecx,1 |
sub ecx,dword[size_w] ;ëèøíÿÿ ñòðîêà ïèêñåëåé |
sub ecx,dword[size_w] ;«¨èïï áâப ¯¨ªá¥«¥© |
xor edi,edi |
@@: ;ïîäæàòèå ïèêñåëåé |
mov edx,dword[ebx] ;êîïèðóåì öâåò íèæíåãî ïèêñåëÿ |
@@: ;¯®¤¦ ⨥ ¯¨ªá¥«¥© |
mov edx,dword[ebx] ;ª®¯¨à㥬 梥⠨¦¥£® ¯¨ªá¥«ï |
mov word[eax],dx |
shr edx,16 |
mov byte[eax+2],dl |
835,6 → 845,24 |
ret |
endp |
align 4 |
fun_opn_dlg: ;äãªæ¨ï ¤«ï ¢ë§®¢ OpenFile ¤¨ «®£ |
pushad |
copy_path open_dialog_name,sys_path,file_name,0 |
mov [OpenDialog_data.type],2 |
mov dword[plugin_path],0 ;çâ®-¡ë ¯à¨ ®âªàë⨨ ¤¨ «®£®¢®£® ®ª ¯ãâì ¢á¥£¤ ¡à «áï ¨§ OpenDialog_data.dir_default_path |
start_OpenDialog OpenDialog_data |
cmp [OpenDialog_data.status],2 |
je @f |
mov esi,[OpenDialog_data.openfile_path] |
stdcall [str_len],dword[edit1.text],dword[edit1.max] |
mov [edit1.size],eax |
mov [edit1.pos],eax |
stdcall [edit_box_draw], edit1 |
@@: |
popad |
ret |
txt_met_up db 24,0 |
txt_met_dn db 25,0 |
txt_met_sh db '*',0 |
855,7 → 883,7 |
ch_text1 db '¡à âì ᢥàåã' |
ch_text2 db '¡à âì ᨧã' |
edit1 edit_box 190, 215, 10, 0xd0ffff, 0xff, 0x80ff, 0, 0xa000, 500, ed_buffer.1, mouse_dd, 0 |
edit1 edit_box 190, 215, 10, 0xd0ffff, 0xff, 0x80ff, 0, 0xa000, 4090, openfile_path, mouse_dd, 0 |
edit2 edit_box 100, 370, 240, 0xd0ffff, 0xff, 0x80ff, 0, 0xa000, 30, ed_buffer.2, mouse_dd, 0 |
editboxes_end: |
901,7 → 929,6 |
.ar_offset dd 1 ;+84 |
ed_buffer: ;òåêñò äëÿ edit |
.1: rb 502 |
.2: rb 32 |
el_focus dd tree1 |
917,20 → 944,50 |
txt_tile_path db 'tile path',0 |
rb 300 |
txt_tile_type dd txt_tile_type_0 ;óêàçàòåëü íà âûáðàííûé òèï ôàéëîâ |
txt_tile_type dd txt_tile_type_0 ;㪠§ â¥«ì ¢ë¡à ë© â¨¯ ä ©«®¢ |
txt_tile_type_0 db 0 |
rb 10 |
;--------------------------------------------------------------------- |
align 4 |
map: ;êîîðäèíàòû êàðòû |
.coord_x dd 0 ;êîîðäèíàòà x |
.coord_y dd 0 ;êîîðäèíàòà y |
.zoom db 1 ;ìàñøòàá |
OpenDialog_data: |
.type dd 2 |
.procinfo dd procinfo ;+4 |
.com_area_name dd communication_area_name ;+8 |
.com_area dd 0 ;+12 |
.opendir_path dd plugin_path ;+16 |
.dir_default_path dd openfile_path ;+20 |
.start_path dd file_name ;+24 ¯ãâì ª ¤¨ «®£ã ®âªàëâ¨ï ä ©«®¢ |
.draw_window dd draw_window ;+28 |
.status dd 0 ;+32 |
.openfile_path dd openfile_path ;+36 ¯ãâì ª ®âªàë¢ ¥¬®¬ã ä ©«ã |
.filename_area dd filename_area ;+40 |
.filter_area dd Filter |
communication_area_name: |
db 'FFFFFFFF_open_dialog',0 |
open_dialog_name: |
db 'opendial',0 |
communication_area_default_path: |
db '/rd/1',0 |
Filter: |
dd Filter.end - Filter.1 |
.1: |
db 'TXT',0 |
.end: |
db 0 |
align 4 |
map: ;ª®®à¤¨ âë ª àâë |
.coord_x dd 0 ;ª®®à¤¨ â x |
.coord_y dd 0 ;ª®®à¤¨ â y |
.zoom db 1 ;¬ áèâ ¡ |
align 4 |
tile_00 rb size_tile_struc * max_tiles_count |
;ýòîò êîä íå ìîé, îí ïðåîáðàçóåò ÷èñëî â ñòðîêó |
;íâ®â ª®¤ ¥ ¬®©, ® ¯à¥®¡à §ã¥â ç¨á«® ¢ áâபã |
;input: |
; eax = value |
; edi = string buffer |
946,32 → 1003,39 |
align 4 |
.str: |
mov ecx,0x0a ;çàäàåòñÿ ñèñòåìà ñ÷èñëåíèÿ èçìåíÿþòñÿ ðåãèñòðû ebx,eax,ecx,edx âõîäíûå ïàðàìåòðû eax - ÷èñëî |
;ïðåðåâîä ÷èñëà â ASCII ñòðîêó âçîäíûå äàííûå ecx=ñèñòåìà ñ÷èñëåíÿ edi àäðåñ êóäà çàïèñûâàòü, áóäåì ñòðîêó, ïðè÷åì êîíåö ïåðåìåííîé |
cmp eax,ecx ;ñðàâíèòü åñëè â eax ìåíüøå ÷åì â ecx òî ïåðåéòè íà @@-1 ò.å. íà pop eax |
mov ecx,0x0a ;§ ¤ ¥âáï á¨á⥬ áç¨á«¥¨ï ¨§¬¥ïîâáï ॣ¨áâàë ebx,eax,ecx,edx ¢å®¤ë¥ ¯ à ¬¥âàë eax - ç¨á«® |
;¯à¥à¥¢®¤ ç¨á« ¢ ASCII áâப㠢§®¤ë¥ ¤ ë¥ ecx=á¨á⥬ áç¨á«¥ï edi ¤à¥á ªã¤ § ¯¨áë¢ âì, ¡ã¤¥¬ áâபã, ¯à¨ç¥¬ ª®¥æ ¯¥à¥¬¥®© |
cmp eax,ecx ;áà ¢¨âì ¥á«¨ ¢ eax ¬¥ìè¥ ç¥¬ ¢ ecx â® ¯¥à¥©â¨ @@-1 â.¥. pop eax |
jb @f |
xor edx,edx ;î÷èñòèòü edx |
div ecx ;ðàçäåëèòü - îñòàòîê â edx |
push edx ;ïîëîæèòü â ñòåê |
;dec edi ;ñìåùåíèå íåîáõîäèìîå äëÿ çàïèñè ñ êîíöà ñòðîêè |
call .str;ïåðåéòè íà ñàìó ñåáÿ ò.å. âûçâàòü ñàìó ñåáÿ è òàê äî òîãî ìîìåíòà ïîêà â eax íå ñòàíåò ìåíüøå ÷åì â ecx |
xor edx,edx ;®ç¨áâ¨âì edx |
div ecx ;à §¤¥«¨âì - ®áâ ⮪ ¢ edx |
push edx ;¯®«®¦¨âì ¢ á⥪ |
;dec edi ;ᬥ饨¥ ¥®¡å®¤¨¬®¥ ¤«ï § ¯¨á¨ á ª®æ áâப¨ |
call .str;¯¥à¥©â¨ á ¬ã ᥡï â.¥. ¢ë§¢ âì á ¬ã á¥¡ï ¨ â ª ¤® ⮣® ¬®¬¥â ¯®ª ¢ eax ¥ á⠥⠬¥ìè¥ ç¥¬ ¢ ecx |
pop eax |
@@: ;cmp al,10 ;ïðîâåðèòü íå ìåíüøå ëè çíà÷åíèå â al ÷åì 10 (äëÿ ñèñòåìû ñ÷èñëåíÿ 10 äàííàÿ êîìàíäà - ëèøíàÿ)) |
or al,0x30 ;äàííàÿ êîìàíäà êîðî÷å ÷åì äâå âûøå |
stosb ;çàïèñàòü ýëåìåíò èç ðåãèñòðà al â ÿ÷åêó ïàìÿòè es:edi |
ret ;âåðíóòüñÿ ÷åíü èíòåðåñíûé õîä ò.ê. ïîêà â ñòåêå õðàíèòüñÿ êîë-âî âûçîâîâ òî ñòîëüêî ðàç ìû è áóäåì âûçûâàòüñÿ |
@@: ;cmp al,10 ;¯à®¢¥à¨âì ¥ ¬¥ìè¥ «¨ § 票¥ ¢ al 祬 10 (¤«ï á¨á⥬ë áç¨á«¥ï 10 ¤ ï ª®¬ ¤ - «¨è ï)) |
or al,0x30 ;¤ ï ª®¬ ¤ ª®à®ç¥ 祬 ¤¢¥ ¢ëè¥ |
stosb ;§ ¯¨á âì í«¥¬¥â ¨§ ॣ¨áâà al ¢ ï祪㠯 ¬ï⨠es:edi |
ret ;¢¥àãâìáï ç¥ì ¨â¥à¥áë© å®¤ â.ª. ¯®ª ¢ á⥪¥ åà ¨âìáï ª®«-¢® ¢ë§®¢®¢ â® á⮫쪮 à § ¬ë ¨ ¡ã¤¥¬ ¢ë§ë¢ âìáï |
hed db 'Planet viewer 26.03.10',0 ;¯®¤¯¨áì ®ª |
hed db 'Planet viewer 27.05.10',0 ;¯®¤¯¨áì ®ª |
sc system_colors ;á¨áâ¥¬ë¥ æ¢¥â |
mouse_dd dd 0 ;㦮 ¤«ï Shift- ¢ editbox |
i_end: |
rb 1024 |
align 16 |
procinfo process_information |
stacktop: |
sys_path rb 4096 |
file_name: |
rb 4096 |
i_end: |
procinfo process_information |
rb 1024 |
stacktop: |
plugin_path: |
rb 4096 |
openfile_path: |
rb 4096 |
filename_area: |
rb 256 |
mem: |
/programs/other/t_edit/readme.htm |
---|
48,7 → 48,7 |
</head> |
<body> |
<h1>TextEditor âåðñèÿ îò 29.04.2010</h1> |
<h1>TextEditor âåðñèÿ îò 27.05.2010</h1> |
<h2>Î ïðîãðàììå</h2> |
<p>Ïðîãðàììà äëÿ ðàáîòû ñ òåêñòîâûìè ôàéëàìè. |
Ëèöåíçèÿ ñâîáîäíàÿ.</p> |
77,7 → 77,7 |
<tr><td>Ìíîãîêðàòíàÿ îòìåíà/ïîâòîð äåéñòâèé</td> |
<td>íåò</td><td>åñòü</td></tr> |
<tr><td>Îãðàíè÷åíèÿ íà ðàçìåð ôàéëîâ</td> |
<td>íåò</td><td>åñòü</td></tr> |
<td>íåò</td><td>åñòü ïðè îòêðûòèè ôàéëîâ, ïðè ðåäàêòèðîâàíèè íåò</td></tr> |
</table> |
<h2>Íåêîòîðûå íåäîðàáîòêè</h2> |
147,7 → 147,7 |
<ul> |
<li>Åâòèõîâ Ìàêñèì (Maxxxx32) - ýëåìåíò EditBox.</li> |
<li>Àëåêñåé Òåïëîâ (Lrz) - ýëåìåíò EditBox, ìàêðîñ load_library.</li> |
<li>Mario79 - ýëåìåíò ñêðîëëèíã.</li> |
<li>Mario79 - ýëåìåíòû: ñêðîëëèíãè, ìåíþ, OpenDial.</li> |
<li>Diamond - çà ïðîãðàììó KlbrInWin, è ïîìîùü ïðè íàïèñàíèè ïðîãðàììû.</li> |
<li>Insolor - çà òåñòèðîâàíèå ïðîãðàììû íà îøèáêè.</li> |
<li>Leency è äðóãèì, êòî ïîìîãàë íà ôîðóìå ñîâåòàìè.</li> |
/programs/other/t_edit/strlen.inc |
---|
28,8 → 28,7 |
; destroys : nothing |
;******************************************************************** |
strlen: |
push ecx |
push edi |
push ecx edi |
pushfd |
cld ; ! |
mov ecx,-1 |
40,8 → 39,7 |
sub eax,esi |
dec eax |
popfd |
pop edi |
pop ecx |
pop edi ecx |
ret |
51,8 → 49,7 |
; Copyright (c) 2009 Igor Afanasiev |
linlen: |
push ecx |
push edi |
push ecx edi |
pushfd |
cld ; ! |
mov ecx,eax |
64,8 → 61,7 |
sub eax,esi |
dec eax |
popfd |
pop edi |
pop ecx |
pop edi ecx |
ret |
;%endif |
/programs/other/t_edit/t_button.inc |
---|
26,7 → 26,7 |
ends |
hed db 'TextEditor 17.05.10',0 ;¯®¤¯¨áì ®ª |
hed db 'TextEditor 27.05.10',0 ;¯®¤¯¨áì ®ª |
sc system_colors |
fn_icon db 'te_icon.bmp',0 |
126,7 → 126,8 |
; äãªæ¨ï ®âªàëâ¨ï ä ©« á ¢®§¬®¦ë¬ ®ª®¬ á®®¡é¥¨ï (® ¢®§¬®¦®á⨠®â¬¥¨âì ®âªàë⨥) |
align 4 |
ted_but_open_file: |
push eax ebx |
pushad |
stdcall [ted_can_save], tedit0 |
cmp al,1 |
jne @f |
134,10 → 135,24 |
stdcall [mb_setfunctions],msgbox_5_funct |
jmp .ret_f |
@@: |
copy_path open_dialog_name,sys_path,file_name,0 |
mov [OpenDialog_data.type],0 |
start_OpenDialog OpenDialog_data |
cmp [OpenDialog_data.status],2 |
jne @f |
stdcall [mb_create],msgbox_9,thread ;message: error run 'open file dialog' |
jmp .ret_f |
@@: |
mov esi,[OpenDialog_data.openfile_path] |
call strlen |
mov [edit1.size],eax |
mov [edit1.pos],eax |
stdcall [edit_box_draw], edit1 |
stdcall [ted_open_file], tedit0,run_file_70,[edit1.text] |
call ted_messages_after_open_file |
.ret_f: |
pop ebx eax |
popad |
ret |
;input: |
/programs/other/t_edit/t_data.inc |
---|
1,4 → 1,3 |
;--- äàííûå ïðîãðàììû ---------------------------------------------- |
fn_col_option dd def_col_file |
fn_syntax_dir db 'info/',0 |
def_col_file db 'default.syn',0 |
11,19 → 10,7 |
fn_icon_tl_sys db 'tl_sys_16.bmp',0 |
fn_icon_tl_nod db 'tl_nod_16.bmp',0 |
;--------------------------------------------------------------------- |
fileinfo: |
dd 5 |
dd 0 |
dd 0 |
dd 0 |
dd file_info |
string: |
db 0 |
dd file_name |
;plugin dd 0 |
;--------------------------------------------------------------------- |
align 4 |
myimport: |
97,7 → 84,7 |
ted_but_reverse dd sz_ted_but_reverse |
ted_but_find_next dd sz_ted_but_find_next |
ted_text_colored dd sz_ted_text_colored |
;;;version_text_edit dd sz_ted_version |
;version_text_edit dd sz_ted_version |
dd 0,0 |
171,7 → 158,7 |
sz_ted_but_reverse db 'ted_but_reverse',0 |
sz_ted_but_find_next db 'ted_but_find_next',0 |
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 |
;-------------------------------------------------- |
align 4 |
msgbox_lib_import: |
252,7 → 239,7 |
.ar_offset dd 1 ;+84 |
;--------------------------------------------------------------------- |
align 4 |
ws_dir_lbox: ;äî÷åðíèé ñêðîëëèíã äëÿ ýëåìåíòà ListBox |
ws_dir_lbox: ;¤®ç¥à¨© áªà®««¨£ ¤«ï í«¥¬¥â ListBox |
.x: |
.size_x dw 16 ;+0 |
.start_x dw 0 ;+2 |
326,14 → 313,50 |
.font_height dd 8 ;+108 |
.cursor_out dd 0 ;+112 |
.get_mouse_flag dd 0 ;+116 |
;------------------------- |
;--------------------------------------------------------------------- |
align 4 |
OpenDialog_data: |
.type dd 0 |
.procinfo dd procinfo ;+4 |
.com_area_name dd communication_area_name ;+8 |
.com_area dd 0 ;+12 |
.opendir_path dd plugin_path ;+16 |
.dir_default_path dd openfile_path ;+20 |
.start_path dd file_name ;+24 ¯ãâì ª ¤¨ «®£ã ®âªàëâ¨ï ä ©«®¢ |
.draw_window dd draw_window ;+28 |
.status dd 0 ;+32 |
.openfile_path dd openfile_path ;+36 ¯ãâì ª ®âªàë¢ ¥¬®¬ã ä ©«ã |
.filename_area dd filename_area ;+40 |
.filter_area dd Filter |
communication_area_name: |
db 'FFFFFFFF_open_dialog',0 |
open_dialog_name: |
db 'opendial',0 |
communication_area_default_path: |
db '/rd/1',0 |
Filter: |
dd Filter.end - Filter.1 |
.1: |
db 'ASM',0 |
db 'CPP',0 |
db 'INC',0 |
db 'INI',0 |
db 'TXT',0 |
db 'H',0 |
db 'HTM',0 |
db 'HTML',0 |
.end: |
db 0 |
TED_PANEL_NULL equ 0 ;¥â ®âªàë⮩ ¯ ¥«¨ |
TED_PANEL_FIND equ 1 ;¯ ¥«ì ¯®¨áª |
TED_PANEL_SYNTAX equ 2 ;¯ ¥«ì ¢ë¡®à ä ©«®¢ ¯®¤á¢¥âª¨ |
TED_PANEL_WIDTH equ 150 ;è¨à¨ ¯ ¥«¨ |
count_of_dir_list_files equ 15 |
count_of_dir_list_files equ 15 ;¬ ªá¨¬ «ì®¥ ç¨á«® ä ©«®¢ á¨â ªá¨á ¯®ª §ë¢ ¥¬ëå ¢ ®ª¥ í«¥¬¥â tree1 |
;------------------------------------------------------------------------------ |
struct TexSelect |
436,7 → 459,6 |
.end: |
db 0 |
;-------- |
msgbox_1: |
dw 0 |
db '¨¬ ¨¥',0 ;+2 = +MB_TEXT_OFFSET |
447,7 → 469,7 |
db 0 |
msgbox_2: |
db 3,0 |
db '¨¬ ¨¥',0 ;+2 = +MB_TEXT_OFFSET |
db '¨¬ ¨¥',0 |
db '®åà ¨âì ¨§¬¥¥¨ï ¢ ä ©«¥?',0 |
db '®åà ¨âì',0 |
db '¥ á®åà ïâì',0 |
460,7 → 482,7 |
msgbox_3: |
db 1,0 |
db '¨¬ ¨¥',0 ;+2 = +MB_TEXT_OFFSET |
db '¨¬ ¨¥',0 |
db '訡ª ¯à¨ ®âªàë⨨ ä ©« á 梥⮢묨 áâனª ¬¨!',13,\ |
'®â®¬ã ¢ë¤¥«¥¨¥ á«®¢ 梥⮬ ¥ ¢®§¬®¦®.',13,\ |
' (ª®¤ ®è¨¡ª¨ =' |
471,7 → 493,7 |
msgbox_4: |
db 1,0 |
db '¨¬ ¨¥',0 ;+2 = +MB_TEXT_OFFSET |
db '¨¬ ¨¥',0 |
db '訡ª ¯à¨ ®âªàë⨨ ä ©« !',13,\ |
'®§¬®¦® ¨¬ï ä ©« ¢¢¥¤¥® ¥ ¯à ¢¨«ì®.',13,\ |
' (ª®¤ ®è¨¡ª¨ =' |
482,7 → 504,7 |
msgbox_5: |
db 3,0 |
db '¨¬ ¨¥',0 ;+2 = +MB_TEXT_OFFSET |
db '¨¬ ¨¥',0 |
db '®åà ¨âì ¨§¬¥¥¨ï ¢ ä ©«¥?',0 |
db '¥ á®åà ïâì',0 |
db '⬥ ',0 |
493,7 → 515,7 |
msgbox_6: |
db 1,0 |
db '¨¬ ¨¥',0 ;+2 = +MB_TEXT_OFFSET |
db '¨¬ ¨¥',0 |
db '訡ª ¯à¨ á®åà ¥¨¨ ä ©« !',13,\ |
'®§¬®¦® ¨¬ï ä ©« ¢¢¥¤¥® ¥ ¯à ¢¨«ì®.',13,\ |
' (ª®¤ ®è¨¡ª¨ =' |
503,7 → 525,7 |
db 0 |
msgbox_7: |
db 1,0 |
db '¥ªáâ ¥ ©¤¥',0 ;+2 = +MB_TEXT_OFFSET |
db '¥ªáâ ¥ ©¤¥',0 |
db '®á⨣ãâ ª®¥æ ¤®ªã¬¥â .',13,\ |
'®¯à®¡ã©â¥ ¯¥à¥©â¨ ¢ ç «® ¤®ªã¬¥â ',13,\ |
'¨«¨ ¨§¬¥¨âì § ¯à®á ¨ ¯®¢â®à¨âì ¯®¨áª.',0 |
511,13 → 533,20 |
db 0 |
msgbox_8: |
db 3,0 |
db '¨¬ ¨¥',0 ;+2 = +MB_TEXT_OFFSET |
db '¨¬ ¨¥',0 |
db '«ï ¢ë室 § ¢¥àè¨â¥ à ¡®âã á ä ©«®¬.',13,\ |
'®¯à®¡ã©â¥ á®åà ¨âì ¨§¬¥¥¨ï ¢ ä ©«¥',13,\ |
'¨«¨ ç âì ®¢ë© ¯ãá⮩.',0 |
db '⬥ ',0 |
db 0 |
msgbox_9: |
db 3,0 |
db '¨¬ ¨¥',0 |
db '¥ ®âªàë«áï ',39,'¤¨ «®£ ®âªàëâ¨ï ä ©« .',39,0 |
db ' ªàëâì',0 |
db 0 |
txtFile db ' ©«:',0 |
txtFindCapt db '®¨áª',0 |
txtFindNext db ' ©â¨ ¤ «¥¥',0 |
txtFormatCapt db '®à¬ â',0 |
535,7 → 564,6 |
.end: |
db 0 |
;-------- |
msgbox_1: |
dw 0 |
db 'Warning',0 ;+2 = +MB_TEXT_OFFSET |
546,7 → 574,7 |
db 0 |
msgbox_2: |
db 3,0 |
db 'Warning',0 ;+2 = +MB_TEXT_OFFSET |
db 'Warning',0 |
db 'Save changes to the file?',0 |
db 'Save',0 |
db 'Discard',0 |
559,7 → 587,7 |
msgbox_3: |
db 1,0 |
db 'Warning',0 ;+2 = +MB_TEXT_OFFSET |
db 'Warning',0 |
db 'Error opening the file with the color settings!',13,\ |
'Because color selection of words is not possible.',13,\ |
' (error code =' |
570,7 → 598,7 |
msgbox_4: |
db 1,0 |
db 'Warning',0 ;+2 = +MB_TEXT_OFFSET |
db 'Warning',0 |
db 'Error opening file!',13,\ |
'Maybe the file name is not entered correctly.',13,\ |
' (error code =' |
581,7 → 609,7 |
msgbox_5: |
db 3,0 |
db 'Warning',0 ;+2 = +MB_TEXT_OFFSET |
db 'Warning',0 |
db 'Save changes to the file?',0 |
db 'Discard',0 |
db 'Cancel',0 |
592,7 → 620,7 |
msgbox_6: |
db 1,0 |
db 'Warning',0 ;+2 = +MB_TEXT_OFFSET |
db 'Warning',0 |
db 'Error saving file!',13,\ |
'Maybe the file name is not entered correctly.',13,\ |
' (error code =' |
602,7 → 630,7 |
db 0 |
msgbox_7: |
db 1,0 |
db 'Text not found.',0 ;+2 = +MB_TEXT_OFFSET |
db 'Text not found.',0 |
db 'Reached end of the document.',13,\ |
'Try to go to the beginning of the document',13,\ |
'or change the query and search again.',0 |
610,13 → 638,20 |
db 0 |
msgbox_8: |
db 3,0 |
db 'Warning',0 ;+2 = +MB_TEXT_OFFSET |
db 'Warning',0 |
db 'To quit, quit the file.',13,\ |
'Try to keep changes to a file',13,\ |
'or start a new blank file.',0 |
db 'Cancel',0 |
db 0 |
msgbox_9: |
db 3,0 |
db 'Warning',0 |
db 'Error run ',39,'open file dialog',39,0 |
db 'Close',0 |
db 0 |
txtFile db 'File:',0 |
txtFindCapt db 'Search',0 |
txtFindNext db 'Find next',0 |
txtFormatCapt db 'Format',0 |
623,7 → 658,6 |
txtFormatApply db 'Apply',0 |
end if |
;------ |
KM_SHIFT equ 0x00010000 |
KM_CTRL equ 0x00020000 |
/programs/other/t_edit/t_edit.asm |
---|
25,6 → 25,9 |
include '../../develop/libraries/box_lib/trunk/box_lib.mac' |
include 'lang.inc' |
include '../../develop/libraries/box_lib/asm/trunk/opendial.mac' |
use_OpenDialog |
include 't_data.inc' |
include 'strlen.inc' |
include 't_draw.inc' ;draw main window functions |
47,7 → 50,7 |
mov esi,file_name |
call strlen |
mov ecx,eax |
mov edi,buf_cmd_lin |
mov edi,openfile_path |
rep movsb ;ª®¯¨à㥬 ¨¬ï ä ©« ¢ ¡ãä¥à edit1 |
load_libraries l_libs_start,load_lib_end |
67,8 → 70,10 |
;--------------------------------------------------------------------- |
stdcall [ted_init], tedit0 |
stdcall dword[tl_data_init], tree1 |
;--------------------------------------------------------------------- |
; OpenDialog initialisation |
init_OpenDialog OpenDialog_data |
; init bmp file |
mov ecx,1200*18 |
call mem_Alloc |
170,9 → 175,9 |
stdcall [ted_init_syntax_file], tedit0,run_file_70,file_name |
;--- get cmd line --- |
cmp byte[buf_cmd_lin+3],0 ;buf_cmd_lin |
cmp byte[openfile_path+3],0 ;openfile_path |
je @f ;if file names exist |
mov esi,buf_cmd_lin |
mov esi,openfile_path |
call strlen ;eax=strlen |
mov [edit1.size],eax |
call but_no_msg_OpenFile |
180,11 → 185,31 |
align 4 |
red_win: |
call draw_window |
align 4 |
still: |
mov eax,10 |
mcall |
cmp al,1 ;¨§¬. ¯®«®¦¥¨¥ ®ª |
jz red_win |
cmp al,2 |
jz key |
cmp al,3 |
jz button |
cmp al,6 |
jz mouse |
jmp still |
align 4 |
draw_window: |
mcall 12,1 |
xor eax,eax |
mov ebx,10*65536+485 |
mov ecx,10*65536+280 |
mov ecx,10*65536+320 |
mov edx,[sc.work] |
or edx,0x73000000 |
mov edi,hed |
202,6 → 227,13 |
inc bx |
int 0x40 |
mov eax,4 |
mov ebx,185*65536+9 |
mov ecx,[sc.work_text] |
or ecx,0x80000000 |
mov edx,txtFile |
int 0x40 |
stdcall [edit_box_draw], dword edit1 |
stdcall [menu_bar_draw], dword menu_data_1 |
231,25 → 263,9 |
@@: |
mcall 12,2 |
ret |
align 4 |
still: |
mov eax,10 |
mcall |
cmp al,1 ;¨§¬. ¯®«®¦¥¨¥ ®ª |
jz red_win |
cmp al,2 |
jz key |
cmp al,3 |
jz button |
cmp al,6 |
jz mouse |
jmp still |
align 4 |
mouse: |
stdcall [edit_box_mouse], dword edit1 |
490,10 → 506,9 |
txtErrIni0 db '¥ ®âªàë«áï ä ©« á ¨ª®ª ¬¨',0 |
err_ini0 db 0 |
edit1 edit_box 250, 220, 5, 0xffffff, 0xff80, 0xff0000, 0xff, 0x4080, 300, buf_cmd_lin, 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 |
buf_cmd_lin db 302 dup(0) |
buf_find db 302 dup(0) |
if lang eq ru |
522,6 → 537,7 |
i_end: |
rb 1024 |
align 16 |
procinfo process_information |
thread: |
533,6 → 549,12 |
rb 4096 |
file_name_rez: |
rb 4096 |
plugin_path: |
rb 4096 |
openfile_path: |
rb 4096 |
filename_area: |
rb 256 |
file_info: |
rb 40 |
mem: |