forked from KolibriOS/kolibrios
Reorganization of the library 'box_lib.obj':
1) new file 'box_lib.mac' to connect all elements 2) Eliminate duplication of code. Minor improvements 'fasm'. git-svn-id: svn://kolibrios.org@1372 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
@@ -2,21 +2,62 @@
|
||||
;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> box_lib.obj
|
||||
;Checkbox
|
||||
|
||||
ch_struc_size=36
|
||||
ch_flag_en=10b
|
||||
|
||||
ch_left equ [edi] ;<3B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><>砫<EFBFBD> <20><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><> <20>
|
||||
ch_top equ [edi+2] ;<3B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><>砫<EFBFBD> <20><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><> <20>
|
||||
ch_text_margin equ [edi+4] ;=4 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ﭨ<EFBFBD> <20><> <20><>אַ㣮<EFACAE>쭨<EFBFBD><ECADA8> 祪 <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_size equ [edi+8] ;12 ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 祪 <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_color equ [edi+12] ;梥<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> checkbox
|
||||
ch_border_color equ [edi+16] ; or [edi+4] ;梥<> ࠬ<><E0A0AC> checkbox <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᠬ<><E1A0AC><EFBFBD><EFBFBD><EFBFBD>⥫쭮
|
||||
ch_text_color equ [edi+20] ;[edi+4] ;梥<> ⥪<><E2A5AA><EFBFBD>
|
||||
ch_text_ptr equ [edi+24] ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><>砫<EFBFBD> ⥪<>⮢<EFBFBD><E2AEA2> <20><>ப<EFBFBD>
|
||||
ch_text_length equ [edi+28]
|
||||
ch_flags equ [edi+32] ;䫠<><E4ABA0>
|
||||
|
||||
macro check_boxes_set_sys_color start,end,color_table
|
||||
{
|
||||
ch_left equ [edi] ;<3B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><>砫<EFBFBD> <20><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><> <20>
|
||||
ch_top equ [edi+2] ;<3B><><EFBFBD>न<EFBFBD><E0A4A8><EFBFBD><EFBFBD> <20><>砫<EFBFBD> <20><>ᮢ<EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><> <20>
|
||||
ch_text_margin equ [edi+4] ;=4 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ﭨ<EFBFBD> <20><> <20><>אַ㣮<EFACAE>쭨<EFBFBD><ECADA8> 祪 <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_size equ [edi+8] ;12 ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 祪 <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_color equ [edi+12] ;梥<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> checkbox
|
||||
ch_border_color equ [edi+16] ; or [edi+4] ;梥<> ࠬ<><E0A0AC> checkbox <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ᠬ<><E1A0AC><EFBFBD><EFBFBD><EFBFBD>⥫쭮
|
||||
ch_text_color equ [edi+20];[edi+4] ;梥<> ⥪<><E2A5AA><EFBFBD>
|
||||
ch_text_ptr equ [edi+24] ;㪠<><E3AAA0>⥫<EFBFBD> <20><> <20><>砫<EFBFBD> ⥪<>⮢<EFBFBD><E2AEA2> <20><>ப<EFBFBD>
|
||||
ch_text_length equ [edi+28]
|
||||
ch_flags equ [edi+32] ;䫠<><E4ABA0>
|
||||
|
||||
mov edi,start
|
||||
mov ecx,((end-start)/ch_struc_size)
|
||||
mov esi,color_table
|
||||
@@:
|
||||
push dword [esi+32]
|
||||
pop dword ch_text_color
|
||||
push dword [esi+36]
|
||||
pop dword ch_border_color
|
||||
add edi,ch_struc_size
|
||||
loop @b
|
||||
}
|
||||
struc check_box left,top,ch_text_margin,ch_size,color,border_color,text_color,text,ch_text_length,flags
|
||||
{ ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ࠬ<EFBFBD><E0A0AC> <20><><EFBFBD> 祪 <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_flag_en=10b
|
||||
.left: dw left ;+0 ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>
|
||||
.top: dw top ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>
|
||||
.ch_text_margin: dd ch_text_margin ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ﭨ<EFBFBD> <20><> <20><>אַ㣮<EFACAE>쭨<EFBFBD><ECADA8> 祪 <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.ch_size: dd ch_size ;ࠧ<><E0A0A7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 祪 <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20>ਬ<EFBFBD><E0A8AC><EFBFBD> 12
|
||||
.color: dd color ;梥<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 祪<><E7A5AA><EFBFBD><EFBFBD><EFBFBD>
|
||||
.border_color: dd border_color ;梥<> ࠬ<><E0A0AC>
|
||||
.text_color: dd text_color ;梥<> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.text: dd text ;<3B><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD> <20>ணࠬ<E0AEA3><E0A0AC> <20><><EFBFBD> <20><>ᯮ<EFBFBD><E1AFAE><EFBFBD><EFBFBD><EFBFBD> ⥪<><E2A5AA>
|
||||
.ch_text_length: dd ch_text_length ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ப<EFBFBD> <20> ᨬ<><E1A8AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.flags: dd flags+0 ; 䫠<><E4ABA0>
|
||||
}
|
||||
|
||||
macro use_checkbox_draw
|
||||
{
|
||||
check_box_draw:
|
||||
;ch_struc_size=24
|
||||
ch_left equ [edi] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>
|
||||
ch_top equ [edi+2] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20>
|
||||
ch_text_margin equ [edi+4] ;=4 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_size equ [edi+8] ;12 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_color equ [edi+12]
|
||||
ch_border_color equ [edi+16] ; or [edi+4] ;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> checkbox <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_text_color equ [edi+20];[edi+4] ;<3B><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_text_ptr equ [edi+24] ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
ch_text_length equ [edi+28]
|
||||
ch_flags equ [edi+32] ;<3B><><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
pusha ;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
mov edi,dword [esp+36]
|
||||
mov eax,13
|
||||
|
Reference in New Issue
Block a user