/programs/system/skincfg/trunk/drawskin.inc |
---|
2,20 → 2,20 |
area: |
.x = 5 ;345 |
.y = 5 ;20 |
.width = 206 |
.height = 191 |
.w = 226 |
.height = 220 |
;-------------------------------------- |
wnd3: |
.x = area.x+32 |
.x = area.x+37 |
.y = area.y+35 |
.width = 160 |
.height = 100 |
.w = 170 |
.height = 105 |
;-------------------------------------- |
wnd4: |
.x = area.x+15 |
.y = area.y+70 |
.width = 160 |
.height = 100 |
.x = area.x+20 |
.y = area.y+75 |
.w = 170 |
.height = 105 |
;-------------------------------------- |
virtual at edi+SKIN_PARAMS.dtp.data |
dtp system_colors |
22,25 → 22,25 |
end virtual |
;---------------------------------------------------------------------- |
draw_skin: |
mcall 13,<area.x,area.width>,<area.y+2,area.height>,0x00FFFFFF |
mcall 13,<area.x,area.w>,<area.y+2,area.height>,0x00FFFFFF |
mov ebp,not_packed_area |
mov edi,[ebp+SKIN_HEADER.params] |
add edi,ebp |
mpack ebx,wnd3.x,wnd3.width |
mpack ebx,wnd3.x,wnd3.w |
mpack ecx,wnd3.y,wnd3.height |
mov edx,[edi+SKIN_PARAMS.colors_1.outer] |
call draw_framerect |
mpack ebx,wnd3.x+4,wnd3.width-8 |
mpack ebx,wnd3.x+4,wnd3.w-8 |
mpack ecx,wnd3.y+4,wnd3.height-8 |
mov edx,[edi+SKIN_PARAMS.colors_1.inner] |
call draw_framerect |
mcall 13,<wnd3.x+1,wnd3.width-2>,<wnd3.y+1,3>,[edi+SKIN_PARAMS.colors_1.frame] |
mcall 13,<wnd3.x+1,wnd3.w-2>,<wnd3.y+1,3>,[edi+SKIN_PARAMS.colors_1.frame] |
add ecx,(wnd3.height-5)*65536 |
mcall |
mcall ,<wnd3.x+1,3>,<wnd3.y+1,wnd3.height-2> |
add ebx,(wnd3.width-5)*65536 |
add ebx,(wnd3.w-5)*65536 |
mcall |
mcall ,<wnd3.x+5,wnd3.width-10>,<wnd3.y+5,wnd3.height-10>,dword[dtp.work] |
mcall ,<wnd3.x+5,wnd3.w-10>,<wnd3.y+5,wnd3.height-10>,dword[dtp.work] |
mov eax,0x00000001 ; left, inactive |
call find_bitmap |
50,7 → 50,7 |
mov eax,0x00000003 ; base, inactive |
call find_bitmap |
pop edx |
mov esi,wnd3.x+wnd3.width-1 |
mov esi,wnd3.x+wnd3.w-1 |
sub esi,edx |
shl edx,16 |
add edx,wnd3.x*65536+wnd3.y |
73,7 → 73,7 |
shr edx,16 |
neg edx |
shl edx,16 |
add edx,(wnd3.x+wnd3.width)*65536+wnd3.y |
add edx,(wnd3.x+wnd3.w)*65536+wnd3.y |
mcall 7 |
mov ebp,not_packed_area |
93,21 → 93,27 |
;--------------------------------------------------------- |
mov edi,[ebp+SKIN_HEADER.params] |
add edi,ebp |
mpack ebx,wnd4.x,wnd4.width |
mpack ebx,wnd4.x,wnd4.w |
mpack ecx,wnd4.y,wnd4.height |
mov edx,[edi+SKIN_PARAMS.colors.outer] |
call draw_framerect |
mpack ebx,wnd4.x+4,wnd4.width-8 |
mpack ebx,wnd4.x+4,wnd4.w-8 |
mpack ecx,wnd4.y+4,wnd4.height-8 |
mov edx,[edi+SKIN_PARAMS.colors.inner] |
call draw_framerect |
mcall 13,<wnd4.x+1,wnd4.width-2>,<wnd4.y+1,3>,[edi+SKIN_PARAMS.colors.frame] |
mcall 13,<wnd4.x+1,wnd4.w-2>,<wnd4.y+1,3>,[edi+SKIN_PARAMS.colors.frame] |
add ecx,(wnd4.height-5)*65536 |
mcall |
mcall ,<wnd4.x+1,3>,<wnd4.y+1,wnd4.height-2> |
add ebx,(wnd4.width-5)*65536 |
add ebx,(wnd4.w-5)*65536 |
mcall |
mcall ,<wnd4.x+5,wnd4.width-10>,<wnd4.y+5,wnd4.height-10>,dword[dtp.work] |
mcall ,<wnd4.x+5,wnd4.w-10>,<wnd4.y+5,wnd4.height-10>,dword[dtp.work] |
mov eax,[edi+SKIN_PARAMS.skin_height] |
shl eax,16 |
sub eax,[edi+SKIN_PARAMS.skin_height] |
add ecx,eax |
mov edx,36+0x40000000 |
mcall 8 |
mov eax,0x00010001 ; left, inactive |
call find_bitmap |
117,7 → 123,7 |
mov eax,0x00010003 ; base, inactive |
call find_bitmap |
pop edx |
mov esi,wnd4.x+wnd4.width-1 |
mov esi,wnd4.x+wnd4.w-1 |
sub esi,edx |
shl edx,16 |
add edx,wnd4.x*65536+wnd4.y |
140,7 → 146,7 |
shr edx,16 |
neg edx |
shl edx,16 |
add edx,(wnd4.x+wnd4.width)*65536+wnd4.y |
add edx,(wnd4.x+wnd4.w)*65536+wnd4.y |
mcall 7 |
mov ebp,not_packed_area |
151,6 → 157,7 |
mov ecx,dword[dtp.grab_text] |
add ecx,0x10000000 |
mcall 4,,,caption_text,caption_text.size |
mcall 8, <wnd4.x, 85>, <wnd4.y, 23>,35+0x40000000 ;button under caption |
;---------------------------------------------------------------------- |
mov edi,[ebp+SKIN_HEADER.buttons] |
add edi,ebp |
160,10 → 167,10 |
je .lp2 |
mov ebx,dword[edi+SKIN_BUTTONS.left-2] |
mov bx,[edi+SKIN_BUTTONS.width] |
mov bx,[edi+SKIN_BUTTONS.w] |
mov ecx,dword[edi+SKIN_BUTTONS.top-2] |
mov cx,[edi+SKIN_BUTTONS.height] |
add ebx,(wnd4.x+wnd4.width)*65536 |
add ebx,(wnd4.x+wnd4.w)*65536 |
add ecx,wnd4.y*65536 |
dec ebx |
dec ecx |
176,22 → 183,32 |
add edi,ebp |
mpack ebx,wnd4.x+10,wnd4.y+10 |
add bx,word[edi+SKIN_PARAMS.skin_height] |
mcall 4,,[dtp.work_text],window_text,window_text.size |
mov ecx,[dtp.work_text] |
add ecx,0x10000000 |
mcall 4,,,window_text,window_text.size |
mov ecx,[edi+SKIN_PARAMS.skin_height] |
shl ecx,16 |
add ecx,(wnd4.y+8)*65536+10 |
mcall 13,<wnd4.x+window_text.size*6+20,wnd4.x+wnd4.width-10-\ |
(wnd4.x+window_text.size*6+20)>,,[dtp.work_graph] |
add ecx,(wnd4.y+8)*65536+18 |
add ecx,25*65536+10 |
mcall 8,<wnd4.x+wnd4.width/2-button_text.size*3-6,\ |
button_text.size*6+11>,,0,[dtp.work_button] |
mcall 13,<wnd4.x+window_text.size*8+20,wnd4.x+wnd4.w-10-\ |
(wnd4.x+window_text.size*8+20)>,,[dtp.work_graph] |
mov edx, 40+0x40000000 ; graf button |
mcall 8 |
dec edx ; window text button |
mcall 8, <wnd4.x+10, window_text.size*8> |
add ecx,35*65536+5 |
mcall 8,<wnd4.x+wnd4.w/2-button_text.size*4-8,\ |
button_text.size*8+15>,,37,[dtp.work_button] |
shr ecx,16 |
mov bx,cx |
add ebx,0x00060007 |
mcall 4,,[dtp.work_button_text],button_text,button_text.size |
add ebx,0x00060005 |
mov ecx, [dtp.work_button_text] |
add ecx, 0x10000000 |
mcall 4,,,button_text,button_text.size |
ret |
;--------------------------------------------------------------------- |
find_bitmap: |
/programs/system/skincfg/trunk/idata.inc |
---|
1,40 → 1,40 |
;----------------------------------------------------------------------------- |
text: |
if lang eq ru |
db ' UNUSED1 ' |
db ' UNUSED2 ' |
db ' 3D ' |
db ' 3D ' |
db ' ' |
db ' ' |
db ' ' |
db ' ' |
db ' ' |
db ' ' |
db ' Unused1 ' |
db ' Unused2 ' |
db ' 3d ⥬ ï áâ®à® ' |
db ' 3d ᢥ⫠ï áâ®à® ' |
db ' £®«®¢®ª ®ª ' |
db ' ® ®ª ' |
db ' ®¯ª ' |
db ' ¥ªáâ ª®¯ª¥ ' |
db ' ¥ªáâ ¢ ®ª¥ ' |
db ' à 䨪 ¢ ®ª¥ ' |
db 'x' |
else if lang eq et |
db ' UNUSED1 ' |
db ' UNUSED2 ' |
db ' WORK 3D DARK ' |
db ' WORK 3D LIGHT ' |
db ' AKNA PEALKIRI ' |
db ' AKNA TÖÖPIIRKOND ' |
db ' AKNA TÖÖPIIRKONNA NUPP ' |
db ' AKNA TÖÖPIIRKONNA NUPPU TEKST ' |
db ' AKNA TÖÖPIIRKONNA TEKST ' |
db ' AKNA TÖÖPIIRKONNA GRAAFIKA ' |
db ' Unused1 ' |
db ' Unused2 ' |
db ' 3d dark ' |
db ' 3d light ' |
db ' Akna pealkiri ' |
db ' Akna tööpiirkond ' |
db ' Akna tööpiirkonna nupp ' |
db ' Akna tööpiirkonna nuppu tekst ' |
db ' Akna tööpiirkonna tekst ' |
db ' Akna tööpiirkonna graafika ' |
db 'x' |
else |
db ' UNUSED1 ' |
db ' UNUSED2 ' |
db ' WORK 3D DARK ' |
db ' WORK 3D LIGHT ' |
db ' WINDOW TITLE ' |
db ' WORK AREA BACKGROUND ' |
db ' WORK AREA BUTTON ' |
db ' WORK AREA BUTTON TEXT ' |
db ' WORK AREA TEXT ' |
db ' WORK AREA GRAPH ' |
db ' Unused1 ' |
db ' Unused2 ' |
db ' 3d dark ' |
db ' 3d light ' |
db ' Window title ' |
db ' Window background ' |
db ' Button ' |
db ' Button text ' |
db ' Window text ' |
db ' Window graph ' |
db 'x' |
end if |
;----------------------------------------------------------------------------- |
56,20 → 56,20 |
;----------------------------------------------------------------------------- |
select_dtp_text: |
if lang eq ru |
db ' : ',0 |
db ' ë¡®à 梥⮢®£® ®ä®à¬«¥¨ï: ',0 |
else if lang eq et |
db ' VALIK VARVISKEEME: ',0 |
db ' Valik varviskeeme: ',0 |
else |
db ' CHOICE OF COLOR SCHEMES: ',0 |
db ' Choice of color schemes: ',0 |
end if |
;----------------------------------------------------------------------------- |
select_skin_text: |
if lang eq ru |
db ' : ',0 |
db ' ë¡®à ᪨ : ',0 |
else if lang eq et |
db ' VALIK NAHAD: ',0 |
db ' Valik nahad: ',0 |
else |
db ' CHOICE OF SKINS: ',0 |
db ' Choice of skins: ',0 |
end if |
;----------------------------------------------------------------------------- |
if lang eq ru |
255,10 → 255,10 |
;--------------------------------------------------------------------- |
PathShow_data_1: |
.type dd 0 ;+0 |
.start_y dw frame_1.y+10 ;+4 |
.start_x dw frame_1.x+7 ;+6 |
.start_y dw frame_1.y+19 ;+4 |
.start_x dw frame_1.x+15 ;+6 |
.font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
.area_size_x dw frame_1.width-20 ;+10 |
.area_size_x dw frame_1.w-28 ;+10 |
.font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
.background_flag dd 0 ;+16 |
.font_color dd 0x0 ;+20 |
269,10 → 269,10 |
;--------------------------------------------------------------------- |
PathShow_data_2: |
.type dd 0 ;+0 |
.start_y dw frame_2.y+10 ;+4 |
.start_x dw frame_2.x+7 ;+6 |
.start_y dw frame_2.y+19 ;+4 |
.start_x dw frame_2.x+15 ;+6 |
.font_size_x dw 6 ;+8 ; 6 - for font 0, 8 - for font 1 |
.area_size_x dw frame_2.width-20 ;+10 |
.area_size_x dw frame_2.w-28 ;+10 |
.font_number dd 0 ;+12 ; 0 - monospace, 1 - variable |
.background_flag dd 0 ;+16 |
.font_color dd 0x0 ;+20 |
389,8 → 389,8 |
.draw_text_flag dd 1 ;+20 |
.text_pointer dd 0 ;+24 |
.text_position dd 0 ;+28 |
.font_number dd 0 ;+32 |
.font_size_y dd 9 ;+36 |
.font_number dd 1 ;+32 |
.font_size_y dd 14 ;+36 |
.font_color dd 0x0 ;+40 |
.font_backgr_color dd 0xffffff ;+44 |
;--------------------------------------------------------------------- |
/programs/system/skincfg/trunk/skincfg.asm |
---|
68,7 → 68,7 |
left dw ? |
top dw ? |
size: |
width dw ? |
w dw ? |
height dw ? |
ends |
;-------------------------------------- |
80,16 → 80,20 |
;-------------------------------------- |
frame_1: |
.x = 5 |
.y = 220 |
.width = 420 |
.height = 50 |
.y = area.y + area.height + 20 |
.w = area.w + 217 |
.height = 65 |
;-------------------------------------- |
frame_2: |
.x = 5 |
.y = 280 |
.width = 420 |
.height = 50 |
.x = frame_1.x |
.y = frame_1.y + frame_1.height + 20 |
.w = frame_1.w |
.height = frame_1.height |
;--------------------------------------------------------------------- |
win: |
.w = frame_2.w + frame_2.x + frame_2.x + 9 |
.h = frame_2.y + frame_2.height + 10 |
;--------------------------------------------------------------------- |
START: ; start of execution |
;--------------------------------------------------------------------- |
mcall 68,11 |
394,22 → 398,23 |
ret |
;--------------------------------------------------------------------- |
draw_button_row: |
mov edx,0x60000000 + 31 ; BUTTON ROW |
mov ebx,220*65536+14 |
mov ecx,10*65536+14 |
mov edx,0x40000000 + 31 ; BUTTON ROW |
mov ebx,(area.w+18)*65536+29 |
mov ecx,9*65536+15 |
mov eax,8 |
;----------------------------------- |
.newb: |
mcall |
add ecx,20*65536 |
add ecx,22*65536 |
inc edx |
cmp edx,0x60000000 + 40 |
cmp edx,0x40000000 + 40 |
jbe .newb |
ret |
;--------------------------------------------------------------------- |
draw_button_row_of_texts: |
mov ebx,240*65536+13 ; ROW OF TEXTS |
mov ebx,(area.w+49)*65536+9 ; ROW OF TEXTS |
mov ecx,[w_work_text] |
add ecx,0x10000000 |
mov edx,text |
mov esi,32 |
mov eax,4 |
416,7 → 421,7 |
;----------------------------------- |
.newline: |
mcall |
add ebx,20 |
add ebx,22 |
add edx,32 |
cmp [edx],byte 'x' |
jne .newline |
425,7 → 430,7 |
draw_colours: |
pusha |
mov esi,color_table |
mov ebx,220*65536+14 |
mov ebx,(area.w+19)*65536+28 |
mov ecx,10*65536+14 |
mov eax,13 |
mov [frame_data.draw_text_flag],dword 0 |
449,7 → 454,7 |
pop ecx ebx |
add ecx,20*65536 |
add ecx,22*65536 |
add esi,4 |
cmp esi,color_table+4*9 |
jbe newcol |
459,8 → 464,8 |
;---------------------------------------------------------------------- |
draw_PathShow: |
pusha |
mcall 13,<frame_1.x+5,frame_1.width-15>,<frame_1.y+7,15>,0xffffff |
mcall 13,<frame_2.x+5,frame_2.width-15>,<frame_2.y+7,15>,0xffffff |
mcall 13,<frame_1.x+10,frame_1.w-25>,<frame_1.y+16,15>,0xffffff |
mcall 13,<frame_2.x+10,frame_2.w-25>,<frame_2.y+16,15>,0xffffff |
; draw for PathShow |
push dword PathShow_data_1 |
call [PathShow_draw] |
484,9 → 489,9 |
xor esi,esi |
mov edx,[w_work] ; color of work area RRGGBB,8->color |
or edx,0x34000000 |
mov ecx,50 shl 16 + 346 |
mov ecx,50 shl 16 + win.h |
add ecx,[current_skin_high] |
mcall ,<110,440>,,,,title |
mcall ,<110, win.w>,,,,title |
mcall 9,procinfo,-1 |
508,20 → 513,20 |
;----------------------------------- |
; select color DTP frame |
; LOAD BUTTON ; button 12 |
mcall 8,<frame_1.x+10,load_w>,<frame_1.y+25,18>,12,[w_work_button] |
mcall 8,<frame_1.x+10,load_w>,<frame_1.y+38,18>,12,[w_work_button] |
; SAVE BUTTON |
add ebx,(load_w+2)*65536-load_w+save_w |
inc edx |
mcall ; button 13 |
; APPLY BUTTON |
mov ebx,(frame_1.x + frame_1.width - apply_w - 15)*65536+apply_w |
mov ebx,(frame_1.x + frame_1.w - apply_w - 15)*65536+apply_w |
mcall 8,,,16 ; button 17 |
; select color DTP button text |
mcall 4,<frame_1.x+16,frame_1.y+31>,[w_work_button_text],t1,t1.size |
mcall 4,<frame_1.x+16,frame_1.y+44>,[w_work_button_text],t1,t1.size |
;----------------------------------- |
; select skin frame |
; LOAD SKIN BUTTON ; button 17 |
mcall 8,<frame_2.x+10,load_w>,<frame_2.y+25,18>,17,[w_work_button] |
mcall 8,<frame_2.x+10,load_w>,<frame_2.y+38,18>,17,[w_work_button] |
; 3D |
mov ebx,(frame_2.x+155)*65536+34 |
mcall ,,,14 ; button 14 |
530,16 → 535,16 |
inc edx |
mcall ; button 15 |
; APPLY SKIN BUTTON |
mov ebx,(frame_2.x + frame_2.width - apply_w -15)*65536+apply_w |
mov ebx,(frame_2.x + frame_2.w - apply_w -15)*65536+apply_w |
mcall ,,,18 ; button 18 |
; select skin button text |
mcall 4,<frame_2.x+16,frame_2.y+31>,[w_work_button_text],t2,t2.size |
mcall 4,<frame_2.x+16,frame_2.y+44>,[w_work_button_text],t2,t2.size |
;----------------------------------- |
call draw_button_row |
call draw_button_row_of_texts |
call draw_colours |
;----------------------------------- |
mov [frame_data.x],dword frame_1.x shl 16+frame_1.width |
mov [frame_data.x],dword frame_1.x shl 16+frame_1.w |
mov [frame_data.y],dword frame_1.y shl 16+frame_1.height |
mov [frame_data.text_pointer],dword select_dtp_text |
mov eax,[w_work] |
551,7 → 556,7 |
push dword frame_data |
call [Frame_draw] |
;----------------------------------- |
mov [frame_data.x],dword frame_2.x shl 16+frame_2.width |
mov [frame_data.x],dword frame_2.x shl 16+frame_2.w |
mov [frame_data.y],dword frame_2.y shl 16+frame_2.height |
mov [frame_data.text_pointer],dword select_skin_text |