Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 1459 → Rev 1464

/programs/develop/libraries/box_lib/trunk/box_lib.asm
20,6 → 20,49
include 'bl_sys.mac'
include 'box_lib.mac' ;macro which should make life easier :)
 
;-----------------------------------------------------------------------------
;ôóíêöèÿ äëÿ âûäåëåíèÿ ïàìÿòè
;input:
; ecx = size data
;otput:
; eax = pointer to memory
align 4
mem_Alloc:
push ebx
mov eax,68
mov ebx,12
int 0x40
pop ebx
ret
;ôóíêöèÿ äëÿ îñâîáîæäåíèÿ ïàìÿòè
;input:
; ecx = pointer to memory
align 4
proc mem_Free, mptr:dword
push eax ebx ecx
mov ecx,[mptr]
cmp ecx,0
jz @f
mov eax,68
mov ebx,13
int 0x40
@@:
pop ecx ebx eax
ret
endp
;ôóíêöèÿ äëÿ ïåðåðàñïðåäåëåíèÿ ïàìÿòè
;otput:
; eax = pointer to memory
align 4
proc mem_ReAlloc, mptr:dword, size:dword
push ebx ecx edx
mov edx, [mptr]
mov ecx, [size]
mcall 68, 20
pop edx ecx ebx
ret
endp
 
;----------------------------------------------------
;EditBox
;----------------------------------------------------
196,7 → 239,7
dd sz_ted_but_reverse, ted_but_reverse
dd sz_ted_but_find_next, ted_but_find_next
dd sz_ted_text_colored, ted_text_colored
dd sz_ted_version, 0x00000001
dd sz_ted_version, 0x00000002
 
dd 0,0
 
/programs/develop/libraries/box_lib/trunk/box_lib.mac
320,6 → 320,8
ted_fun_draw_panel_find equ dword[edi+230] ;㪠§ â¥«ì ­  äã­ªæ¨î à¨á®¢ ­¨ï ¯ ­¥«¨ ¯®¨áª 
ted_fun_draw_panel_syntax equ dword[edi+234] ;㪠§ â¥«ì ­  äã­ªæ¨î à¨á®¢ ­¨ï ¯ ­¥«¨ ᨭ⠪á¨á 
ted_fun_save_err equ dword[edi+238] ;㪠§ â¥«ì ­  äã­ªæ¨î ¢ë§ë¢ ¥¬ãî ¥á«¨ á®åà ­¥­¨¥ ä ©«  § ª®­ç¨«®áì ­¥ã¤ ç­®
ted_increase_size equ dword[edi+242] ;ç¨á«® ᨬ¢®«®¢ ­  ª®â®àë¥ ¡ã¤¥â 㢥稢 âìáï ¯ ¬ïâì ¯à¨ ­¥å¢ âª¥
ted_ptr_free_symb equ dword[edi+246] ;㪠§ â¥«ì ­  ᢮¡®¤­ãî ¯ ¬ïâì, ¢ ª®â®àãî ¬®¦­® ¤®¡ ¢«ïâì ᨬ¢®« (¨á¯®«ì§ã¥âáï ¢­ãâà¨ í«¥¬¥­â  ¤«ï ã᪮७¨ï ¢áâ ¢ª¨ ⥪áâ )
;------------------------------------------------------------------------------
ted_opt_ed_move_cursor equ 1 ;¤¢¨£ âì ªãàá®à ¯®á«¥ ¤®¡ ¢«¥­¨ï ⥪áâ 
ted_opt_ed_change_time equ 2 ;¤®¡ ¢«ïâì ¨§¬¥­¥­¨ï ¯à¨ । ªâ¨à®¢ ­¨¨ ⥪áâ 
/programs/develop/libraries/box_lib/trunk/doc/scrollbar/scrollbar.htm
39,7 → 39,7
<p>Âåðñèÿ ýëåìåíòà</p>
 
<h1><a name="struc_scrollbar">Ñòðóêòóðà scrollbar</a></h1>
<p>Ìàêðîñà äëÿ ñîçäàíèÿ ñòðóêòóðû äëÿ ñêðîëëáàðà íåò. Ïîòîìó äàííûå äëÿ íåå çàäàþòñÿ âðó÷íóþ.
<p>Ìàêðîñà äëÿ ñîçäàíèÿ ñòðóêòóðû ñêðîëëáàðà íåò. Ïîòîìó äàííûå äëÿ íåå çàäàþòñÿ âðó÷íóþ.
Åñòü ìàêðîñ use_scroll_bar îí äàåò âîçìîæíîñòü ïîíÿòü êàêèå äàííûå íóæíû äëÿ ñêðîëëèíãà.</p>
<pre>macro use_scroll_bar
{
/programs/develop/libraries/box_lib/trunk/doc/t_edit/t_edit.htm
38,6 → 38,7
<li><a href="#fun_text_colored">ted_text_colored</a></li>
</ul>
<p><a href="#syn_file">Ôîðìàò ôàéëà ïîäñâåòêè *.syn</a></p>
<p><a href="#struc_tedit">Ñòðóêòóðà tedit</a></p>
 
<h1><a name="vveden">Ââåäåíèå</a></h1>
<p>Ýëåìåíò text_editor ïîçâîëÿåò ðàáîòàòü ñ òåêñòîâûìè ôàéëàìè, ñîäåðæèò ìíîãî ôóíêöèÿ äëÿ ðåäàêòèðîâàíèÿ òåêñòà.</p>
319,8 → 320,70
Âîçìîæíî â áóäóùèõ âåðñèÿõ ôîðìàò ôàéëîâ ïîäñâåòêè áóäåò èçìåíåí.</li>
</ul>
 
<h1><a name="struc_tedit">Ñòðóêòóðà tedit</a></h1>
<p>Ìàêðîñà äëÿ ñîçäàíèÿ ñòðóêòóðû òåêñòîâîãî ðåäàêòîðà íåò. Ïîòîìó äàííûå äëÿ íåãî çàäàþòñÿ âðó÷íóþ. Ïðèìåð ñòðóêòóðû äëÿ òåêñòîâîãî ðåäàêòîðà:</p>
<pre>align 4
tedit0: ;ñòðóêòóðà òåêñòîâîãî ðåäàêòîðà
.wnd BOX 195,5+20,325,260 ;+ 0
.rec BOX 30,13,7,10 ;+16
.drag_m db 0 ;+32 âûäåëåíèå îò ìûøè
.drag_k db 0 ;+33 âûäåëåíèå îò êëàâèàòóðû
.sel TexSelect 0,0,0,0 ;+34 ñòðóêòóðà âûäåëåíèÿ
.seln TexSelect ;+50 äîïîëíèòåëüíàÿ ñòðóêòóðà âûäåëåíèÿ
.tex dd 0 ;+66 text memory pointer
.tex_1 dd 0 ;+70 text first symbol pointer
.tex_end dd 0 ;+74 text end memory pointer
.cur_x dd 0 ;+78 êîîðäèíàòà x êóðñîðà
.cur_y dd 0 ;+82 êîîðäèíàòà y êóðñîðà
.max_chars dd 5002 ;+86 ìàêñèìàëüíîå ÷èñëî ñèìâîëîâ â îäíîì äîêóìåíòå
.count_colors_text dd 1 ;+90 êîëëè÷åñòâî öâåòîâ òåêñòà
.count_key_words dd 0 ;+94 êîëëè÷åñòâî êëþ÷åâûõ ñëîâ
.color_cursor dd 0xff0000 ;+98 öâåò êóðñîðà
.color_wnd_capt dd 0x0080c0 ;+102 öâåò ïîëåé âîêðóã îêíà
.color_wnd_work dd 0x0 ;+106 öâåò ôîíà îêíà
.color_wnd_bord dd 0xffffff ;+110 öâåò òåêñòà íà ïîëÿõ
.color_select dd 0x0000ff ;+114 öâåò âûäåëåíèÿ
.color_cur_text dd 0xffff00 ;+118 öâåò ñèìâîëà ïîä êóðñîðîì
.color_wnd_text dd 0x80ffff ;+122 öâåò òåêñòà â îêíå
.syntax_file dd 0 ;+126 óêàçàòåëü íà íà÷àëî ôàéëà ñèíòàêñèñà
.syntax_file_size dd 500 ;+130 ìàêñèìàëüíûé ðàçìåð ôàéëà ñèíòàêñèñà
.text_colors dd 0 ;+134 óêàçàòåëü íà ìàññèâ öâåòîâ òåêñòà
.help_text_f1 dd 0 ;+138 óêàçàòåëü íà òåêñò ñïðàâêè (ïî íàæàòèè F1)
.help_id dd -1 ;+142 èäåíòèôèêàòîð äëÿ ñïðàâêè
.key_words_data dd 0 ;+146 óêàçàòåëü íà ñòðóêòóðû êëþ÷åâûõ ñëîâ TexColViv
.tim_ch dd ? ;+150 êîëè÷åñòâî èçìåíåíèé â ôàéëå
.tim_undo dd ? ;+154 êîëè÷åñòâî îòìåíåííûõ äåéñòâèé
.tim_ls dd ? ;+158 âðåìÿ ïîñëåäíåãî ñîõðàíåíèÿ
.tim_co dd ? ;+162 âðåìÿ ïîñëåäíåé öâåòîâîé ðàçìåòêè
.el_focus dd el_focus ;+166 óêàçàòåëü íà ïåðåìåííóþ ýëåìåíòà â ôîêóñå
.err_save db 0 ;+170 îøèáêà ñîõðàíåíèÿ ôàéëà
.panel_id db 0 ;+171 íîìåð îòêðûòîé ïàíåëè
.key_new db 0 ;+172 ñèìâîë, êîòîðûé áóäåò äîáàâëÿòñÿ ñ êëàâèàòóðû
.symbol_new_line db 20 ;+173 ñèìâîë çàâåðøåíèÿ ñòðîêè
.scr_w dd scrol_w1 ;+174 âåðòèêàëüíûé ñêðîëëèíã
.scr_h dd scrol_h1 ;+178 ãîðèçîíòàëüíûé ñêðîëëèíã
.arr_key_pos dd 0 ;+182 óêàçàòåëü íà ìàññèâ ïîçèöèé êëþ÷åâûõ ñëîâ
.buffer dd buf ;+186 óêàçàòåëü íà áóôåð êîïèðîâàíèÿ/âñòàâêè
.buffer_find dd 0 ;+190 óêàçàòåëü íà áóôåð äëÿ ïîèñêà
.cur_ins db 1 ;+194 ðåæèì ðàáîòû êóðñîðà (îáû÷íûé èëè çàìåíà)
.mode_color db 1 ;+195 ðåæèì âûäåëåíèÿ ñëîâ öâåòîì (0-âûêë. 1-âêë.)
.mode_invis db 0 ;+196 ðåæèì ïîêàçà íåïå÷àòàåìûõ ñèìâîëîâ
.gp_opt db 0 ;+197 îïöèè âîçâðàùàåìûå ôóíêöèåé ted_get_pos_by_cursor
.fun_on_key_ctrl_o dd but_ctrl_o ;+198 óêàçàòåëü íà ôóíêöèþ âûçûâàåìóþ ïðè íàæàòèè Ctrl+O (îòêðûòèå ôàéëà)
.fun_on_key_ctrl_f dd 0 ;+202 ... Ctrl+F (âûçîâà/ñêðûòèÿ ïàíåëè ïîèñêà)
.fun_on_key_ctrl_n dd but_ctrl_n ;+206 ... Ctrl+N (ñîçäàíèå íîâîãî äîêóìåíòà)
.fun_on_key_ctrl_s dd 0 ;+210 ... Ctrl+S
.buffer_size dd BUF_SIZE ;+214 ðàçìåð áóôåðà êîïèðîâàíèÿ/âñòàâêè
.fun_find_err dd 0 ;+218 óêàçàòåëü íà ôóíêöèþ âûçûâàåìóþ åñëè ïîèñê çàêîí÷èëñÿ íåóäà÷íî
.fun_init_synt_err dd 0 ;+222 óêàçàòåëü íà ôóíêöèþ âûçûâàåìóþ ïðè îøèáî÷íîì îòêðûòèè ôàéëà ñèíòàêñèñà
.fun_draw_panel_buttons dd 0 ;+226 óêàçàòåëü íà ôóíêöèþ ðèñîâàíèÿ ïàíåëè ñ êíîïêàìè
.fun_draw_panel_find dd 0 ;+230 óêàçàòåëü íà ôóíêöèþ ðèñîâàíèÿ ïàíåëè ïîèñêà
.fun_draw_panel_syntax dd 0 ;+234 óêàçàòåëü íà ôóíêöèþ ðèñîâàíèÿ ïàíåëè ñèíòàêñèñà
.fun_save_err dd 0 ;+238 óêàçàòåëü íà ôóíêöèþ âûçûâàåìóþ åñëè ñîõðàíåíèå ôàéëà çàêîí÷èëîñü íåóäà÷íî
.increase_size dd 225 ;+242 ÷èñëî ñèìâîëîâ íà êîòîðûå áóäåò óâå÷èâàòüñÿ ïàìÿòü ïðè íåõâàòêå
.ptr_free_symb dd ? ;+246 óêàçàòåëü íà ñâîáîäíóþ ïàìÿòü, â êîòîðóþ ìîæíî äîáàâëÿòü ñèìâîë (èñïîëüçóåòñÿ âíóòðè ýëåìåíòà äëÿ óñêîðåíèÿ âñòàâêè òåêñòà)</pre>
<hr>
<p>Äîêóìåíòàöèÿ îáíîâëÿëàñü ïîñëåäíèé ðàç 05.05.10.</p>
<p>Äîêóìåíòàöèÿ îáíîâëÿëàñü ïîñëåäíèé ðàç 17.05.10.</p>
 
</body>
</html>
/programs/develop/libraries/box_lib/trunk/t_edit.mac
1,6 → 1,6
; ¬ ªà®á ¤«ï á¨á⥬­®© ¡¨¡«¨®â¥ª¨ box_lib.obj
; í«¥¬¥­â TextEditor ¤«ï Kolibri OS
; ä ©« ¯®á«¥¤­¨© à § ¨§¬¥­ï«áï 05.05.2010 IgorA
; ä ©« ¯®á«¥¤­¨© à § ¨§¬¥­ï«áï 17.05.2010 IgorA
; ­  ª®¤ ¯à¨¬¥­¥­  GPL2 «¨æ¥­§¨ï
 
;input:
54,7 → 54,7
ends
;------------------------------------------------------------------------------
 
ted_symbol_tab db 26
ted_symbol_tab db 26 ;ascii ª®¤ áâ५ª¨ ¢¯à ¢®, ¨á¯®«ì§ã¥âáï ¤«ï à¨á®¢ ­¨ï â ¡ã«ï樨 ¢ ०¨¬¥ ¯®ª §  ­¥¢¨¤¨¬ëå ᨬ¢®«®¢
 
if lang eq ru
 
80,7 → 80,7
 
end if
 
;------
;EvChar - â ¡«¨æ  ¤«ï 䨫ìâ஢ ­¨ï ¤®¡ ¢«ï¥¬ëå ᨬ¢®«®¢, çâ®-¡ë ­¥ ¯®¯ «¨ «¨è­¨¥ §­ ª¨
align 4
EvChar db 0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
98,7 → 98,7
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 
;EvUpper - â ¡«¨æ  ¤«ï ¯à¥®¡à §®¢ ­¨ï ᨬ¢®«®¢ ª ¢¥àå­¥¬ã ॣ¨áâàã
EvUpper db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
113,8 → 113,9
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159
db 0,240,0,242,0,244,0,246,0,0,0,0,0,0,0,0
;EvLover - â ¡«¨æ  ¤«ï ¯à¥®¡à §®¢ ­¨ï ᨬ¢®«®¢ ª ­¨¦­¥¬ã ॣ¨áâàã
EvLover db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
124,13 → 125,13
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175
db 224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
db 241,0,243,0,245,0,247,0,0,0,0,0,0,0,0,0
conv_table dd 0
 
 
252,15 → 253,11
 
align 4
proc ted_delete, edit:dword
push ecx edi
push edi
mov edi,dword[edit]
 
mov ecx,ted_tex
call mem_Free
mov ecx,ted_arr_key_pos ;ted_syntax_file
call mem_Free
 
pop edi ecx
stdcall mem_Free,ted_tex
stdcall mem_Free,ted_arr_key_pos ;ted_syntax_file
pop edi
ret
endp
 
691,6 → 688,10
mov ted_tim_co,0
mov ted_tim_undo,0
mov ted_help_id,-1
mov ecx,sizeof.symbol
shl ecx,1
add ecx,ted_tex
mov ted_ptr_free_symb,ecx
 
mov ecx,ted_scr_w
mov dword[ecx+sb_offs_position],0
1108,10 → 1109,8
pop eax
@@:
 
mov edx,sizeof.symbol
shl edx,1
add edx,ted_tex
@@: ;for(i=2;i<texMax;i++)
mov edx,ted_ptr_free_symb
.beg_cycle: ;for(i=...;i<ted_max_chars;i++)
cmp dword [edx+10],0 ;if(!tex[i].tc && !tex[i].td)
jne .u1f
cmp dword [edx+14],0
1150,8 → 1149,6
m2m dword [edx+6],dword [ecx] ;tex[i].next=tex[po_t].next;
 
call ted_get_text_arr_index ;*** eax = i ***
cmp eax,ted_max_chars
jge @f
mov [ecx],eax ;tex[po_t].next=i; // áá뫪¨ ¯¥à¥­ ¯à ¢«ï¥¬
mov ecx,[edx+6] ; *** ecx = tex[i].next ***
imul ecx,sizeof.symbol
1177,8 → 1174,16
cmp edx,ted_tex_end
jge @f ;out of memory
cmp ebx,0
jne @b
jne .beg_cycle
mov ted_ptr_free_symb,edx ;¬¥­ï¥¬ 㪠§ â¥«ì ­  ᢮¡®¤­ë© ᨬ¢®«, ¤«ï ¡®«¥¥ ¡ëáâண® ¯®¨áª  ¯ ¬ïâ¨
jmp .add_all
@@:
cmp ted_increase_size,0
je .add_all
call ted_memory_increase
cmp ebx,0
jne .beg_cycle
.add_all: ;¢á¥ ᨬ¢®«ë ¤®¡ ¢«¥­ë
 
call ted_text_colored
popad
1186,6 → 1191,35
endp
 
;input:
; edx = pointer to sumbol, when insert
; edi = pointer to tedit struct
;output:
; edx = new pointer to sumbol, when insert
align 4
proc ted_memory_increase
cmp ted_increase_size,0
je @f
push eax ebx ecx
mov ecx,ted_increase_size
add ecx,ted_max_chars
mov ted_max_chars,ecx
imul ecx,sizeof.symbol
stdcall mem_ReAlloc, ted_tex,ecx
mov ebx,ted_tex
mov ted_tex,eax
mov ted_tex_1,eax
add ted_tex_1,sizeof.symbol
sub edx,ebx
add edx,eax
mov ted_ptr_free_symb,edx
add eax,ecx
mov ted_tex_end,eax
pop ecx ebx eax
@@:
ret
endp
 
;input:
; ecx = position to free insert cell
; edx = pointer to sumbol, when insert
; esi = pointer to added symbol
1269,8 → 1303,7
 
inc ted_tim_ch
mov edx,eax ;i=p0;
mov ecx,2
ConvertIndexToPointer ecx
mov ecx,ted_ptr_free_symb
@@:
mov esi,[edx]
and esi,0xff
1926,6 → 1959,9
add ebx,ted_tex;.perv
m2m dword [ebx+2],dword [edx+2] ;tex[tex[i].next].perv=tex[i].perv;
 
cmp ted_ptr_free_symb,edx
jle .no_u1
mov ted_ptr_free_symb,edx ;¬¥­ï¥¬ 㪠§ â¥«ì ­  ᢮¡®¤­ë© ᨬ¢®«, ¤«ï ¡®«¥¥ ¡ëáâண® ¯®¨áª  ¯ ¬ïâ¨
.no_u1:
 
;else if(tex[i].td>ted_tim_ch) tex[i].td=0; // ¥á«¨ 㤠«¥­¨¥ ᨬ¢®«  ¡ë«® ®â¬¥­¥­®
3366,7 → 3402,7
mov ebx,dword[table] ;convert scan to ascii
ror ax,8
xor ah,ah
add bx,ax
add bx,ax ;? ebx,eax
mov ah,byte[ebx]
pop ebx
ret
3963,7 → 3999,7
@@:
 
pop ecx ;§ ¯¨á뢠¥¬ 㪠§ â¥«ì ­  ¢ë¤¥«¥­­ãî ¯ ¬ïâì
call mem_Free
stdcall mem_Free,ecx
.no_save:
popad
ret
/programs/develop/libraries/box_lib/trunk/tree_list.mac
1,6 → 1,6
; ìàêðîñ äëÿ ñèñòåìíîé áèáëèîòåêè box_lib.obj
; ýëåìåíò TreeList äëÿ Kolibri OS
; ôàéë ïîñëåäíèé ðàç èçìåíÿëñÿ 29.04.2010 IgorA
; ôàéë ïîñëåäíèé ðàç èçìåíÿëñÿ 15.05.2010 IgorA
; íà êîä ïðèìåíåíà GPL2 ëèöåíçèÿ
 
 
17,37 → 17,7
 
macro use_tree_list
{
;-----------------------------------------------------------------------------
;ôóíêöèÿ äëÿ âûäåëåíèÿ ïàìÿòè
;input:
; ecx = size data
;otput:
; eax = pointer to memory
align 4
mem_Alloc:
push ebx
mov eax,68
mov ebx,12
int 0x40
pop ebx
ret
;-----------------------------------------------------------------------------
;ôóíêöèÿ äëÿ îñâîáîæäåíèÿ ïàìÿòè
;input:
; ecx = pointer to memory
align 4
mem_Free:
push eax ebx
cmp ecx,0
jz @f
mov eax,68
mov ebx,13
int 0x40
@@:
pop ebx eax
ret
 
align 4
tl_data_init: ;âûäåëíèå ïàìÿòè äëÿ ñòðóêòóð ñïèñêà è îñíîâíîé èíôîðìàöèè (êîíñòðóêòîð)
push ebp
mov ebp,esp
95,29 → 65,23
ret 4
 
align 4
tl_data_clear: ;î÷èñòêà ïàìÿòè ýëåìåíòà (äåñòðóêòîð)
push ebp
mov ebp,esp
push ecx edi
mov edi,dword[ebp+8]
proc tl_data_clear, tlist:dword ;î÷èñòêà ïàìÿòè ýëåìåíòà (äåñòðóêòîð)
push edi
mov edi,dword[tlist]
cmp tl_data_img,0
je @f
mov ecx,tl_data_img
call mem_Free ;÷èñòêà ñèñòåìíûõ èêîíîê
stdcall mem_Free,tl_data_img ;÷èñòêà ñèñòåìíûõ èêîíîê
@@:
cmp tl_data_img_sys,0
je @f
mov ecx,tl_data_img_sys
call mem_Free ;÷èñòêà ñèñòåìíûõ èêîíîê
stdcall mem_Free,tl_data_img_sys ;÷èñòêà ñèñòåìíûõ èêîíîê
@@:
mov ecx,dword[edi]
call mem_Free
stdcall mem_Free,dword[edi]
 
mov ecx,tl_data_nodes
call mem_Free
pop edi ecx
pop ebp
ret 4
stdcall mem_Free,tl_data_nodes
pop edi
ret
endp
 
align 4
tl_info_clear: ;î÷èñòêà ñïèñêà (èíôîðìàöèè)
/programs/other/planet_v/planet_v.asm
29,14 → 29,14
 
@use_library
 
struct f70
func_n dd ?
param1 dd ?
param2 dd ?
param3 dd ?
param4 dd ?
rezerv db ?
name dd ?
struct FileInfoBlock
Function dd ?
Position dd ?
Flags dd ?
Count dd ?
Buffer dd ?
db ?
FileName dd ?
ends
 
fn_metki db 'pl_metki.lst',0
126,13 → 126,13
 
copy_path fn_icon1,sys_path,file_name,0x0
mov eax,70 ;load icon file
mov [run_file_70.func_n], 0
mov [run_file_70.param1], 0
mov [run_file_70.param2], 0
mov [run_file_70.param3], TREE_ICON_SYS16_BMP_SIZE
m2m [run_file_70.param4], [tree_sys_icon]
mov [run_file_70.rezerv], 0
mov [run_file_70.name], file_name
mov [run_file_70.Function], 0
mov [run_file_70.Position], 0
mov [run_file_70.Flags], 0
mov [run_file_70.Count], TREE_ICON_SYS16_BMP_SIZE
m2m [run_file_70.Buffer], [tree_sys_icon]
mov byte[run_file_70+20], 0
mov [run_file_70.FileName], file_name
mov ebx,run_file_70
int 0x40
cmp ebx,0xffffffff
149,8 → 149,8
 
copy_path fn_icon2,sys_path,file_name,0x0
mov eax,70 ;load icon file
mov [run_file_70.param3], TREE_ICON_NOD16_BMP_SIZE
m2m [run_file_70.param4], [tree_nod_icon]
mov [run_file_70.Count], TREE_ICON_NOD16_BMP_SIZE
m2m [run_file_70.Buffer], [tree_nod_icon]
mov ebx,run_file_70
int 0x40
cmp ebx,0xffffffff
912,7 → 912,7
bmp_icon dd 0 ;¯ ¬ïâì ¤«ï § £à㧪¨ ¨§®¡à ¦¥­¨ï
data_icon dd 0 ;¯ ¬ïâì ¤«ï ¯à¥®¡à §®¢ ­¨ï ª à⨭ª¨ äã­ªæ¨ï¬¨ libimg
 
run_file_70 f70
run_file_70 FileInfoBlock
 
 
txt_tile_path db 'tile path',0
/programs/other/planet_v/tile_fun.inc
479,13 → 479,13
inc ecx ;¤«ï § ¯¨á¨ ¢ ä ©« § ¢¥àè î饣® ­ã«ï
 
mov eax,70
m2m [run_file_70.param4], [bmp_icon]
mov [run_file_70.func_n], 2
mov [run_file_70.param1], 0
mov [run_file_70.param2], 0
mov [run_file_70.param3], ecx
mov [run_file_70.rezerv], 0
mov [run_file_70.name], file_name
m2m [run_file_70.Buffer], [bmp_icon]
mov [run_file_70.Function], 2
mov [run_file_70.Position], 0
mov [run_file_70.Flags], 0
mov [run_file_70.Count], ecx
mov byte[run_file_70+20], 0
mov [run_file_70.FileName], file_name
mov ebx,run_file_70
int 0x40
pop edi ecx ebx eax
500,13 → 500,13
mov byte[met_fr_opn],1
copy_path fn_metki,sys_path,file_name,0x0
mov eax,70 ;load icon file
mov [run_file_70.func_n], 0
mov [run_file_70.param1], 0
mov [run_file_70.param2], 0
mov [run_file_70.param3], TREE_ICON_SYS16_BMP_SIZE
mov [run_file_70.rezerv], 0
mov [run_file_70.name], file_name
m2m [run_file_70.param4], [bmp_icon]
mov [run_file_70.Function], 0
mov [run_file_70.Position], 0
mov [run_file_70.Flags], 0
mov [run_file_70.Count], TREE_ICON_SYS16_BMP_SIZE
mov byte[run_file_70+20], 0
mov [run_file_70.FileName], file_name
m2m [run_file_70.Buffer], [bmp_icon]
mov eax,70
mov ebx,run_file_70
int 0x40
801,13 → 801,13
pushad
 
mov eax,70 ;load icon file
mov [run_file_70.func_n], 0
mov [run_file_70.param1], 0
mov [run_file_70.param2], 0
mov [run_file_70.param3], RGB_TILE_SIZE+300 ;+54
m2m [run_file_70.param4], [bmp_icon]
mov [run_file_70.rezerv], 0
mov [run_file_70.name], file_name
mov [run_file_70.Function], 0
mov [run_file_70.Position], 0
mov [run_file_70.Flags], 0
mov [run_file_70.Count], RGB_TILE_SIZE+300 ;+54
m2m [run_file_70.Buffer], [bmp_icon]
mov byte[run_file_70+20], 0
mov [run_file_70.FileName], file_name
mov ebx,run_file_70
int 0x40
mov edi,[tile]
/programs/other/t_edit/t_button.inc
1,11 → 1,11
struct f70
func_n dd ?
param1 dd ?
param2 dd ?
param3 dd ?
param4 dd ?
rezerv db ?
name dd ?
struct FileInfoBlock
Function dd ?
Position dd ?
Flags dd ?
Count dd ?
Buffer dd ?
db ?
FileName dd ?
ends
 
struct TexColViv
26,12 → 26,12
ends
 
 
hed db 'TextEditor 03.05.10',0 ;¯®¤¯¨áì ®ª­ 
hed db 'TextEditor 17.05.10',0 ;¯®¤¯¨áì ®ª­ 
sc system_colors
 
fn_icon db 'te_icon.bmp',0
bmp_icon dd 0
run_file_70 f70
run_file_70 FileInfoBlock
 
 
;input:
/programs/other/t_edit/t_data.inc
357,7 → 357,6
.cur_x dd 0 ;+78 ª®®à¤¨­ â  x ªãàá®à 
.cur_y dd 0 ;+82 ª®®à¤¨­ â  y ªãàá®à 
.max_chars dd maxChars ;+86 ¬ ªá¨¬ «ì­®¥ ç¨á«® ᨬ¢®«®¢ ¢ ®¤­®¬ ¤®ªã¬¥­â¥
; \/ ­¥ à §à뢠âì á«¥¤ãî騥 ¯¥à¥¬¥­­ë¥:
.count_colors_text dd 1 ;+90 ª®««¨ç¥á⢮ 梥⮢ ⥪áâ 
.count_key_words dd 0 ;+94 ª®««¨ç¥á⢮ ª«î祢ëå á«®¢
.color_cursor dd 0x808080 ;+98 梥⠪ãàá®à 
367,7 → 366,6
.color_select dd 0x208080 ;+114 梥⠢뤥«¥­¨ï
.color_cur_text dd 0xff0000 ;+118 梥â ᨬ¢®«  ¯®¤ ªãàá®à®¬
.color_wnd_text dd 0xffff00 ;+122 梥â ⥪áâ  ¢ ®ª­¥
; /\ ¤à㣨¥, ¨¤ã騥 ­¨¦¥ ¬®¦­® à §à뢠âì.
.syntax_file dd 0 ;+126 㪠§ â¥«ì ­  ­ ç «® ä ©«  ᨭ⠪á¨á 
.syntax_file_size dd maxSyntaxFileSize ;+130 ¬ ªá¨¬ «ì­ë© à §¬¥à ä ©«  ᨭ⠪á¨á 
.text_colors dd 0 ;+134 㪠§ â¥«ì ­  ¬ áᨢ 梥⮢ ⥪áâ 
403,6 → 401,8
.fun_draw_panel_find dd draw_panel_find ;+230 㪠§ â¥«ì ­  äã­ªæ¨î à¨á®¢ ­¨ï ¯ ­¥«¨ ¯®¨áª 
.fun_draw_panel_syntax dd draw_panel_syntax ;+234 㪠§ â¥«ì ­  äã­ªæ¨î à¨á®¢ ­¨ï ¯ ­¥«¨ ᨭ⠪á¨á 
.fun_save_err dd ted_save_err_msg ;+238 㪠§ â¥«ì ­  äã­ªæ¨î ¢ë§ë¢ ¥¬ãî ¥á«¨ á®åà ­¥­¨¥ ä ©«  § ª®­ç¨«®áì ­¥ã¤ ç­®
.increase_size dd 200 ;+242 ç¨á«® ᨬ¢®«®¢ ­  ª®â®àë¥ ¡ã¤¥â 㢥稢 âìáï ¯ ¬ïâì ¯à¨ ­¥å¢ âª¥
.ptr_free_symb dd ? ;+246 ¨á¯®«ì§ã¥âáï ¢­ãâà¨ í«¥¬¥­â  ¤«ï ã᪮७¨ï ¢áâ ¢ª¨ ⥪áâ 
;------------------------------------------------------------------------------
 
conv_tabl rb 128 ; â ¡«¨æ  ¤«ï ª®­¢¥àâ¨à®¢ ­¨ï scan-ª®¤  ¢ ascii-ª®¤
/programs/other/t_edit/t_edit.asm
77,13 → 77,13
copy_path fn_icon,sys_path,file_name,0x0
 
mov eax,70 ;load icon file
mov [run_file_70.func_n], 0
mov [run_file_70.param1], 54
mov [run_file_70.param2], 0
mov [run_file_70.param3], 1200*18
m2m [run_file_70.param4], [bmp_icon]
mov [run_file_70.rezerv], 0
mov [run_file_70.name], file_name
mov [run_file_70.Function], 0
mov [run_file_70.Position], 54
mov [run_file_70.Flags], 0
mov [run_file_70.Count], 1200*18
m2m [run_file_70.Buffer], [bmp_icon]
mov byte[run_file_70+20], 0
mov [run_file_70.FileName], file_name
mov ebx,run_file_70
int 0x40
 
101,13 → 101,13
call mem_Alloc
mov dword[tree1.data_img_sys],eax
 
;mov [run_file_70.func_n], 0
;mov [run_file_70.param1], 54
;mov [run_file_70.param2], 0
mov [run_file_70.param3], 3*256*13
mov [run_file_70.param4], eax
;mov [run_file_70.rezerv], 0
;mov [run_file_70.name], file_name
;mov [run_file_70.Function], 0
;mov [run_file_70.Position], 54
;mov [run_file_70.Flags], 0
mov [run_file_70.Count], 3*256*13
mov [run_file_70.Buffer], eax
;mov byte[run_file_70+20], 0
;mov [run_file_70.FileName], file_name
 
mov eax,70 ;load icon file
mov ebx,run_file_70
124,13 → 124,13
call mem_Alloc
mov dword[tree1.data_img],eax
 
; mov [run_file_70.func_n], 0
; mov [run_file_70.param1], 54
; mov [run_file_70.param2], 0
mov [run_file_70.param3], 3*256*2
mov [run_file_70.param4], eax
; mov [run_file_70.rezerv], 0
; mov [run_file_70.name], file_name
; mov [run_file_70.Function], 0
; mov [run_file_70.Position], 54
; mov [run_file_70.Flags], 0
mov [run_file_70.Count], 3*256*2
mov [run_file_70.Buffer], eax
; mov byte[run_file_70+20], 0
; mov [run_file_70.FileName], file_name
 
mov eax,70 ;load icon file
mov ebx,run_file_70