/programs/develop/libraries/box_lib/trunk/doc/box_lib.htm |
---|
20,7 → 20,7 |
<li><a href="editbox\info_editbox.htm">editbox</a></li> |
<li><a href="checkbox\info_checkbox.htm">checkbox</a></li> |
<li>optionbox</li> |
<li>scrollbar</li> |
<li><a href="scrollbar\scrollbar.htm">scrollbar</a></li> |
<li>d_button</li> |
<li>menubar</li> |
<li>filebrowser</li> |
36,6 → 36,6 |
<p>Èãîðü Àôàíàñüåâ aka IgorA</p> |
<hr> |
<p>Äîêóìåíòàöèÿ îáíîâëÿëàñü ïîñëåäíèé ðàç 10.01.10.</p> |
<p>Äîêóìåíòàöèÿ îáíîâëÿëàñü ïîñëåäíèé ðàç 05.02.10.</p> |
</body> |
</html> |
/programs/develop/libraries/box_lib/trunk/doc/scrollbar/scrollbar.htm |
---|
0,0 → 1,93 |
<html> |
<head> |
<title>ýëåìåíò Scroll Bar</title> |
<meta http-equiv="content-type" content="text/html; charset=WINDOWS-1251"> |
<link href="../style.css" type=text/css rel=stylesheet> |
</head> |
<body> |
<p><a href="../box_lib.htm">Íà ãëàâíóþ ↑</a></p> |
<h1>Îãëàâëåíèå</h1> |
<p><a href="#vveden">Ââåäåíèå</a></p> |
<p><a href="#funct">Ôóíêöèè</a></p> |
<ul> |
<li><a href="#fun_v_draw">scrollbar_v_draw</a></li> |
<li><a href="#fun_v_mouse">scrollbar_v_mouse</a></li> |
<li><a href="#fun_h_draw">scrollbar_h_draw</a></li> |
<li><a href="#fun_h_mouse">scrollbar_h_mouse</a></li> |
<li><a href="#version">version_ch</a></li> |
</ul> |
<p><a href="#struc_scrollbar">Ñòðóêòóðà scrollbar</a></p> |
<h1><a name="vveden">Ââåäåíèå</a></h1> |
<p>Ñêðîëëáàð, èñïîëüçóåòñÿ ïðè âûâîäå èíôîðìàöèè, íå ïîìåùàþùåéñÿ â îêíî. Ìîæåò áûòü âåðòèêàëüíûì è ãîðèçîíòàëüíûì.</p> |
<h1><a name="funct">Ôóíêöèè</a></h1> |
<h2><a name="fun_v_draw">scrollbar_v_draw</a></h2> |
<p>Ðèñîâàíèå âåðòèêàëüíîãî ñêðîëëèíãà.</p> |
<h2><a name="fun_v_mouse">scrollbar_v_mouse</a></h2> |
<p>Ýòà ôóíêöèÿ äîëæíà âûçûâàòñÿ äëÿ âåðòèêàëüíîãî ñêðîëëèíãà ïðè äâèæåíèè ìûøåé.</p> |
<h2><a name="fun_h_draw">scrollbar_h_draw</a></h2> |
<p>Ðèñîâàíèå ãîðèçîíòàëüíîãî ñêðîëëèíãà.</p> |
<h2><a name="fun_h_mouse">scrollbar_h_mouse</a></h2> |
<p>Ýòà ôóíêöèÿ äîëæíà âûçûâàòñÿ äëÿ ãîðèçîíòàëüíîãî ñêðîëëèíãà ïðè äâèæåíèè ìûøåé.</p> |
<h2><a name="version">version_ch</a></h2> |
<p>Âåðñèÿ ýëåìåíòà</p> |
<h1><a name="struc_scrollbar">Ñòðóêòóðà scrollbar</a></h1> |
<p>Ìàêðîñà äëÿ ñîçäàíèÿ ñòðóêòóðû äëÿ ñêðîëëáàðà íåò. Ïîòîìó äàííûå äëÿ íåå çàäàþòñÿ âðó÷íóþ. |
Åñòü ìàêðîñ use_scroll_bar îí äàåò âîçìîæíîñòü ïîíÿòü êàêèå äàííûå íóæíû äëÿ ñêðîëëèíãà.</p> |
<pre>macro use_scroll_bar |
{ |
scroll_bar: |
sb_size_x equ [edi] |
sb_start_x equ [edi+ 2] |
sb_size_y equ [edi+ 4] |
sb_start_y equ [edi+ 6] |
sb_btn_high equ [edi+ 8] |
sb_type equ [edi+12] |
sb_max_area equ [edi+16] |
sb_cur_area equ [edi+20] |
sb_position equ [edi+24] |
sb_bckg_col equ [edi+28] |
sb_frnt_col equ [edi+32] |
sb_line_col equ [edi+36] |
sb_redraw equ [edi+40] |
sb_delta equ [edi+44] |
sb_delta2 equ [edi+46] |
sb_r_size_x equ [edi+48] |
sb_r_start_x equ [edi+50] |
sb_r_size_y equ [edi+52] |
sb_r_start_y equ [edi+54] |
sb_m_pos equ [edi+56] |
sb_m_pos_2 equ [edi+60] |
sb_m_keys equ [edi+64] |
sb_run_size equ [edi+68] |
sb_position2 equ [edi+72] |
sb_work_size equ [edi+76] |
sb_all_redraw equ [edi+80] |
sb_ar_offset equ [edi+84] |
}</pre> |
<p><b>sb_btn_high</b> - âûñîòà áîêîâûõ êíîïîê (ëåâàÿ è ïðàâàÿ äëÿ ãîðèç. è âåðõíÿÿ è íèæíÿÿ äëÿ âåðò.)</p> |
<p><b>sb_type</b> - çàðåçåðâèðîâàíî äëÿ áóäóùèõ òèïîâ, åñëè ñêðîëëáàð áóäåò äîðàáàòûâàòüñÿ.</p> |
<p><b>sb_max_area</b> - îáëàñòü ìàêñèìàëüíàÿ, àêòóàëüíî êîãäà íå âëàçèò â |
îòîáðàæàåìóþ îáëàñòü, ò.å. ñëó÷àé àêòèâíîñòè êîìïîíåíòà (âåñü ìàêñèìàëüíûé ðàçìåð äîêóìåíòà)</p> |
<p><b>sb_cur_area</b> - îáëàñòü îòîáðàæàåìàÿ (êàêàÿ ÷àñòü äîêóìåíòà âëàçèò â ýêðàí)</p> |
<p><b>sb_position</b> - ïîçèöèÿ áåãóíêà èçìåíÿåìàÿ îò 0 äî çíà÷åíèÿ (sb_max_area-sb_cur_area)</p> |
<p><b>sb_bckg_col</b> - öâåò âíóòðåííèé, ïðèìåíÿåòñÿ äëÿ îáëàñòåé ìåæäó áåãóíêîì è êíîêàìè</p> |
<p><b>sb_frnt_col</b> - öâåò íàðóæíûé, ïðèìåíÿåòñÿ äëÿ îáëàñòåé îòëè÷íûõ îò ïðèìåíÿåìûõ â sb_bckg_col</p> |
<p><b>sb_line_col</b> - öâåò ëèíèé è ñòðåëîê íà êíîïêàõ</p> |
<p><b>sb_redraw</b> - èíäèêàòîð íåîáõîäèìîñòè ïåðåðèñîâêè óïðàâëÿåìîé îáëàñòè ó÷èòûâàÿ èçìåíåíèå sb_position è sb_cur_area</p> |
<p><b>sb_delta2</b> - èíäèêàòîð çàõâàòà ôîêóñà ñêðîëëáàðîì (óäåðæàíèå áåãóíêà)</p> |
<p><b>sb_all_redraw</b> - ôëàã óñòàíàâëèâàåìûé â 1 äëÿ ïåðåðèñîâêè âñåãî êîìïîíåíòà, åñëè ïîñòàâèòü 0, òî ïåðåðèñîâêà ïðîèñõîäèò òîëüêî äëÿ îáëàñòè áåãóíêà. Ââåäåíî äëÿ óñêîðåíèÿ îòðèñîâêè, ïîñêîëüêó íå âî âñåõ ñëó÷àÿõ òðåáóåòñÿ ïðèíóäèòåüíî îòðèñîâûâàòü âñå ÷àñòè êîìïîíåíòà. Êîãäà âûçûâàåòñÿ ïî ñîáûòèþ ìûøè âñåãäà îòðèñîâûâàåòñÿ ñàìèì êîìïîíåíòîì ñî çíà÷åíèåì 0.</p> |
<p><b>sb_ar_offset</b> - âåëè÷èíà ñìåùåíèÿ ïðè îäíîêðàòíîì íàæàòèè áîêîâîé êíîïêè.</p> |
<hr> |
<p>Äîêóìåíòàöèÿ îáíîâëÿëàñü ïîñëåäíèé ðàç 05.02.10.</p> |
</body> |
</html> |
/programs/develop/libraries/box_lib/trunk/tree_list.mac |
---|
1,6 → 1,6 |
; ìàêðîñ äëÿ ñèñòåìíîé áèáëèîòåêè box_lib.obj |
; ýëåìåíò TreeList äëÿ Kolibri OS |
; ôàéë ïîñëåäíèé ðàç èçìåíÿëñÿ 23.12.2009 IgorA |
; ôàéë ïîñëåäíèé ðàç èçìåíÿëñÿ 05.02.2010 IgorA |
; íà êîä ïðèìåíåíà GPL2 ëèöåíçèÿ |
317,17 → 317,10 |
tl_mouse: ;ðåàêöèÿ íà ìûøü |
push ebp |
mov ebp,esp |
push eax ebx ecx edx edi esi |
pushad |
mov edi,dword[ebp+8] |
mov eax,37 |
mov ebx,2 |
int 0x40 |
bt eax,0 ;left mouse button press |
jae .no_draw |
mov eax,37 |
mov ebx,1 |
int 0x40 |
334,24 → 327,34 |
mov ebx,tl_box_left |
shl ebx,16 |
cmp eax,ebx ;ëåâàÿ ãðàíèöà îêíà |
jl .no_in_wnd |
jl .test_scroll |
mov ebx,tl_box_left |
add ebx,tl_box_width |
shl ebx,16 |
cmp eax,ebx ;ïðàâàÿ ãðàíèöà îêíà |
jg .test_scroll ;.no_in_wnd |
jg .test_scroll |
mov ebx,tl_box_top |
add ebx,tl_box_height |
cmp ax,bx ;íèæíÿÿ ãðàíèöà îêíà |
jg .no_in_wnd |
jg .test_scroll |
sub ebx,tl_box_height |
add bx,tl_capt_cy |
cmp ax,bx ;âåðõíÿÿ ãðàíèöà îêíà + âûñîòà ïîäïèñè |
jl .no_in_wnd |
jl .test_scroll |
push eax ebx |
mov eax,37 |
mov ebx,2 |
int 0x40 |
bt eax,0 ;left mouse button press |
pop ebx eax |
jae .no_draw |
mov esi,tl_el_focus |
mov dword[esi],edi ;set focus |
447,6 → 450,12 |
jne .no_draw ;ïîïàëè íà ñêðîëëèíã - íå ñíèìàåì ôîêóñ ñ TreeList |
;------------------------------------------------------------------------------- |
.no_in_wnd: ;íå ïîïàëè â îêíî - ïîòåðÿ ôîêóñà (ïðè óñëîâèè ÷òî ôîêóñ áûë íà äàííîì ýåëåìåíòå) |
mov eax,37 ;ïðîâåðÿåì íàæàòîñòü ëþáûõ êíîïîê |
mov ebx,2 |
int 0x40 |
cmp eax,0 ;íè÷å íå íàæàëè eax=0 |
je .no_draw |
mov ebx,tl_el_focus |
cmp dword[ebx],edi |
jne .no_draw ;ýëåìåíò íå â ôîêóñå |
456,7 → 465,7 |
call tl_draw_cursor ;ðèñóåì êóðñîð ñ ïîòåðÿíûì ôîêóñîì |
.no_draw: |
pop esi edi edx ecx ebx eax |
popad |
pop ebp |
ret 4 |
653,6 → 662,13 |
@@: |
call tl_draw_cursor |
mov edi,tl_p_scrol ;ðèñóåì äî÷åðíèé ñêðîëëèíã |
cmp edi,0 ;äëÿ òîãî ÷òî-áû åãî íå ïðèøëîñü ðèñîâàòü â ïîëüçîâàòåëüñêîé ïðîãðàììå |
je .end_draw ;åñëè íåò ñêðîëëèíãà âûõîäèì |
push dword edi |
call scroll_bar_vertical.draw |
.end_draw: |
pop esi edi edx ecx ebx eax |
pop ebp |
2330,7 → 2346,7 |
; pop ebx |
; add esi,ebx |
.beg_cycle: |
cmp dword[esi],0x65657274 ;0x65657274 = 'tree' |
cmp dword[esi],'tree' |
jne .no_tree |
xor ebx,ebx |
mov bx,word[esi+4] |
2341,7 → 2357,7 |
loop .beg_cycle |
@@: |
cmp dword[esi],0x65657274 ;0x65657274 = 'tree' |
cmp dword[esi],'tree' |
jne .no_tree |
bt word[ebp+18],1 ;load in add mode |
jc @f |
2410,7 → 2426,7 |
mov esi,dword[ebp+ 8] |
mov edi,dword[ebp+12] |
@@: |
cmp dword[esi],0x65657274 ;0x65657274 = 'tree' |
cmp dword[esi],'tree' |
jne @f |
xor ebx,ebx |
mov bx,word[esi+4] |
/programs/other/t_edit/load_lib.mac |
---|
File deleted |
/programs/other/t_edit/t_edit.asm |
---|
21,8 → 21,7 |
include '../../macros.inc' |
;include '../../develop/libraries/box_lib/load_lib.mac' |
include 'load_lib.mac' ;include old file |
include '../../develop/libraries/box_lib/load_lib.mac' |
include '../../develop/libraries/box_lib/trunk/tree_list.mac' |
include '../../develop/libraries/box_lib/trunk/editbox.mac' |
71,8 → 70,8 |
call Clear |
;------------------------------------------------- |
mov ecx,maxColWords*sizeof.TexColViv |
add ecx,40 |
mov ecx,maxColWords*sizeof.TexColViv+40 |
;add ecx,40 |
call mem_Alloc |
mov [options_file],eax |
mov [options_file_end],eax |
91,7 → 90,7 |
mov edi,buf_cmd_lin |
rep movsb |
copy_path fn_icon,sys_path,file_name |
copy_path fn_icon,sys_path,file_name,0x0 |
mov eax,70 ;load icon file |
mov [run_file_70.func_n], 0 |
130,7 → 129,7 |
call dword[tl_data_init] |
;--------------------------------------------------------------------- |
; ÷èòàåì bmp ôàéë ñ êóðñîðàìè è ëèíèÿìè |
copy_path fn_icon_tl_sys,sys_path,file_name |
copy_path fn_icon_tl_sys,sys_path,file_name,0x0 |
mov ecx,3*256*13 |
call mem_Alloc |
153,7 → 152,7 |
@@: |
;--------------------------------------------------------------------- |
; ÷èòàåì bmp ôàéë ñ èêîíêàìè óçëîâ |
copy_path fn_icon_tl_nod,sys_path,file_name |
copy_path fn_icon_tl_nod,sys_path,file_name,0x0 |
mov ecx,3*256*2 |
call mem_Alloc |
175,7 → 174,7 |
mov dword[tree1.data_img],0 |
@@: |
;------------------------------------------------------------------------------ |
copy_path fn_syntax_dir,sys_path,file_name ;áåðåì ïóòü ê ïàïêå ñ ôàéëàìè ñèíòàêñèñà |
copy_path fn_syntax_dir,sys_path,file_name,0x0 ;áåðåì ïóòü ê ïàïêå ñ ôàéëàìè ñèíòàêñèñà |
mov eax,70 |
mov ebx,tree_file_struct |
int 0x40 |
/programs/other/t_edit/t_work.inc |
---|
68,7 → 68,7 |
tex_1 dd 0 ;text first symbol pointer |
tex_end dd 0 ;text end memory pointer |
hed db 'TextEditor 30.12.09',0 ;ïîäïèñü îêíà |
hed db 'TextEditor 05.02.10',0 ;ïîäïèñü îêíà |
sc system_colors |
wndMain BOX 0,50,440,150 |
250,12 → 250,9 |
InitColText: |
push eax ebx ecx esi edi |
; mov ebx,fn_col_option |
; mov esi,sys_path |
; mov edi,file_name |
mov ebx,dword[fn_col_option] |
copy_path ebx,fn_syntax_dir,file_name_rez |
copy_path file_name_rez,sys_path,file_name |
copy_path ebx,fn_syntax_dir,file_name_rez,0x0 |
copy_path file_name_rez,sys_path,file_name,0x0 |
mov eax,70 |
mov [run_file_70.func_n], 0 |
277,7 → 274,6 |
add edi,4 |
loop @b |
;init: ColColor, ColWords, ... |
mov dword[ColColor],1 |
mov dword[ColWords],0 |
339,13 → 335,6 |
add ecx,dword[Col] |
mov dword[tex_help_f1],ecx |
;copy new colors in dir_list |
; m2m dword[eax+28],dword[WND_WORK_COLOR] |
; m2m dword[eax+32],dword[SELECT_COLOR] |
; m2m dword[eax+36],dword[WND_CAPT_COLOR] |
; m2m dword[eax+40],dword[WND_TEXT_COLOR] |
; m2m dword[eax+44],dword[CUR_TEXT_COLOR] |
.no_colors: |
pop edi esi ecx ebx eax |
ret |
1757,3 → 1746,32 |
pop ecx ebx |
ret |
;----------------------------------------------------------------------------- |
;ôóíêöèÿ äëÿ âûäåëåíèÿ ïàìÿòè |
;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 |