diff --git a/skins/CodeOpusC/Opus_A.skn b/skins/CodeOpusC/Opus_A.skn deleted file mode 100644 index adba5c32cd..0000000000 Binary files a/skins/CodeOpusC/Opus_A.skn and /dev/null differ diff --git a/skins/CodeOpusC/Opus_A/Opus_A.asm b/skins/CodeOpusC/Opus_A/Opus_A.asm new file mode 100644 index 0000000000..33e8156423 --- /dev/null +++ b/skins/CodeOpusC/Opus_A/Opus_A.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:3:10:2],\ ; margins [left:top:right:bottom] + colors active = [binner=0xDAD9D4:\ ; border inner color + bouter=0x93938F:\ ; border outer color + bframe=0xDAD9D4],\ ; border frame color + colors inactive = [binner=0xDAD9D4:\ ; border inner color + bouter=0x93938F:\ ; border outer color + bframe=0xDAD9D4],\ ; border frame color + dtp = 'Opus_A.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-21:5][15:15],\ ; buttons coordinates + minimize = [-40:5][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/CodeOpusC/Opus_Alpha.dtp b/skins/CodeOpusC/Opus_A/Opus_A.dtp similarity index 100% rename from skins/CodeOpusC/Opus_Alpha.dtp rename to skins/CodeOpusC/Opus_A/Opus_A.dtp diff --git a/skins/CodeOpusC/Opus_A/active/base.bmp b/skins/CodeOpusC/Opus_A/active/base.bmp new file mode 100644 index 0000000000..189c06503f Binary files /dev/null and b/skins/CodeOpusC/Opus_A/active/base.bmp differ diff --git a/skins/CodeOpusC/Opus_A/active/left.bmp b/skins/CodeOpusC/Opus_A/active/left.bmp new file mode 100644 index 0000000000..ff9f477c60 Binary files /dev/null and b/skins/CodeOpusC/Opus_A/active/left.bmp differ diff --git a/skins/CodeOpusC/Opus_A/active/oper.bmp b/skins/CodeOpusC/Opus_A/active/oper.bmp new file mode 100644 index 0000000000..d37aa6e8ae Binary files /dev/null and b/skins/CodeOpusC/Opus_A/active/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_A/inactive/base.bmp b/skins/CodeOpusC/Opus_A/inactive/base.bmp new file mode 100644 index 0000000000..bfe637271f Binary files /dev/null and b/skins/CodeOpusC/Opus_A/inactive/base.bmp differ diff --git a/skins/CodeOpusC/Opus_A/inactive/left.bmp b/skins/CodeOpusC/Opus_A/inactive/left.bmp new file mode 100644 index 0000000000..302f394b88 Binary files /dev/null and b/skins/CodeOpusC/Opus_A/inactive/left.bmp differ diff --git a/skins/CodeOpusC/Opus_A/inactive/oper.bmp b/skins/CodeOpusC/Opus_A/inactive/oper.bmp new file mode 100644 index 0000000000..ca6756304b Binary files /dev/null and b/skins/CodeOpusC/Opus_A/inactive/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_A/my_skin.inc b/skins/CodeOpusC/Opus_A/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/CodeOpusC/Opus_A/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/CodeOpusC/Opus_B.skn b/skins/CodeOpusC/Opus_B.skn deleted file mode 100644 index e7eb7b9367..0000000000 Binary files a/skins/CodeOpusC/Opus_B.skn and /dev/null differ diff --git a/skins/CodeOpusC/Opus_B/Opus_B.asm b/skins/CodeOpusC/Opus_B/Opus_B.asm new file mode 100644 index 0000000000..8aeec97732 --- /dev/null +++ b/skins/CodeOpusC/Opus_B/Opus_B.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:3:10:2],\ ; margins [left:top:right:bottom] + colors active = [binner=0xE3E2DD:\ ; border inner color + bouter=0xA6A6A1:\ ; border outer color + bframe=0xE3E2DD],\ ; border frame color + colors inactive = [binner=0xE3E2DD:\ ; border inner color + bouter=0xA6A6A1:\ ; border outer color + bframe=0xE3E2DD],\ ; border frame color + dtp = 'Opus_B.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-21:5][15:15],\ ; buttons coordinates + minimize = [-40:5][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/CodeOpusC/Opus_Blue.dtp b/skins/CodeOpusC/Opus_B/Opus_B.dtp similarity index 100% rename from skins/CodeOpusC/Opus_Blue.dtp rename to skins/CodeOpusC/Opus_B/Opus_B.dtp diff --git a/skins/CodeOpusC/Opus_B/active/base.bmp b/skins/CodeOpusC/Opus_B/active/base.bmp new file mode 100644 index 0000000000..3fe28b36a9 Binary files /dev/null and b/skins/CodeOpusC/Opus_B/active/base.bmp differ diff --git a/skins/CodeOpusC/Opus_B/active/left.bmp b/skins/CodeOpusC/Opus_B/active/left.bmp new file mode 100644 index 0000000000..46eda952a3 Binary files /dev/null and b/skins/CodeOpusC/Opus_B/active/left.bmp differ diff --git a/skins/CodeOpusC/Opus_B/active/oper.bmp b/skins/CodeOpusC/Opus_B/active/oper.bmp new file mode 100644 index 0000000000..f2f7f1424f Binary files /dev/null and b/skins/CodeOpusC/Opus_B/active/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_B/inactive/base.bmp b/skins/CodeOpusC/Opus_B/inactive/base.bmp new file mode 100644 index 0000000000..40eefa4f6f Binary files /dev/null and b/skins/CodeOpusC/Opus_B/inactive/base.bmp differ diff --git a/skins/CodeOpusC/Opus_B/inactive/left.bmp b/skins/CodeOpusC/Opus_B/inactive/left.bmp new file mode 100644 index 0000000000..6d033a54b3 Binary files /dev/null and b/skins/CodeOpusC/Opus_B/inactive/left.bmp differ diff --git a/skins/CodeOpusC/Opus_B/inactive/oper.bmp b/skins/CodeOpusC/Opus_B/inactive/oper.bmp new file mode 100644 index 0000000000..453e3ea2a0 Binary files /dev/null and b/skins/CodeOpusC/Opus_B/inactive/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_B/my_skin.inc b/skins/CodeOpusC/Opus_B/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/CodeOpusC/Opus_B/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/CodeOpusC/Opus_D.skn b/skins/CodeOpusC/Opus_D.skn deleted file mode 100644 index 0878cfb88e..0000000000 Binary files a/skins/CodeOpusC/Opus_D.skn and /dev/null differ diff --git a/skins/CodeOpusC/Opus_D/Opus_D.asm b/skins/CodeOpusC/Opus_D/Opus_D.asm new file mode 100644 index 0000000000..4b5a1d64b1 --- /dev/null +++ b/skins/CodeOpusC/Opus_D/Opus_D.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:3:10:2],\ ; margins [left:top:right:bottom] + colors active = [binner=0xDCD6CB:\ ; border inner color + bouter=0x948B7B:\ ; border outer color + bframe=0xDCD6CB],\ ; border frame color + colors inactive = [binner=0xDCD6CB:\ ; border inner color + bouter=0x948B7B:\ ; border outer color + bframe=0xDCD6CB],\ ; border frame color + dtp = 'Opus_D.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-21:5][15:15],\ ; buttons coordinates + minimize = [-40:5][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/CodeOpusC/Opus_Dusk.dtp b/skins/CodeOpusC/Opus_D/Opus_D.dtp similarity index 100% rename from skins/CodeOpusC/Opus_Dusk.dtp rename to skins/CodeOpusC/Opus_D/Opus_D.dtp diff --git a/skins/CodeOpusC/Opus_D/active/base.bmp b/skins/CodeOpusC/Opus_D/active/base.bmp new file mode 100644 index 0000000000..576fccf232 Binary files /dev/null and b/skins/CodeOpusC/Opus_D/active/base.bmp differ diff --git a/skins/CodeOpusC/Opus_D/active/left.bmp b/skins/CodeOpusC/Opus_D/active/left.bmp new file mode 100644 index 0000000000..0331aafc3e Binary files /dev/null and b/skins/CodeOpusC/Opus_D/active/left.bmp differ diff --git a/skins/CodeOpusC/Opus_D/active/oper.bmp b/skins/CodeOpusC/Opus_D/active/oper.bmp new file mode 100644 index 0000000000..86a37d2bfe Binary files /dev/null and b/skins/CodeOpusC/Opus_D/active/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_D/inactive/base.bmp b/skins/CodeOpusC/Opus_D/inactive/base.bmp new file mode 100644 index 0000000000..a64daf84da Binary files /dev/null and b/skins/CodeOpusC/Opus_D/inactive/base.bmp differ diff --git a/skins/CodeOpusC/Opus_D/inactive/left.bmp b/skins/CodeOpusC/Opus_D/inactive/left.bmp new file mode 100644 index 0000000000..298793c56e Binary files /dev/null and b/skins/CodeOpusC/Opus_D/inactive/left.bmp differ diff --git a/skins/CodeOpusC/Opus_D/inactive/oper.bmp b/skins/CodeOpusC/Opus_D/inactive/oper.bmp new file mode 100644 index 0000000000..bc596fec9d Binary files /dev/null and b/skins/CodeOpusC/Opus_D/inactive/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_D/my_skin.inc b/skins/CodeOpusC/Opus_D/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/CodeOpusC/Opus_D/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/CodeOpusC/Opus_DA.skn b/skins/CodeOpusC/Opus_DA.skn deleted file mode 100644 index 47fb95249e..0000000000 Binary files a/skins/CodeOpusC/Opus_DA.skn and /dev/null differ diff --git a/skins/CodeOpusC/Opus_DA/Opus_DA.asm b/skins/CodeOpusC/Opus_DA/Opus_DA.asm new file mode 100644 index 0000000000..8490316c4b --- /dev/null +++ b/skins/CodeOpusC/Opus_DA/Opus_DA.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:3:10:2],\ ; margins [left:top:right:bottom] + colors active = [binner=0xD6D6D4:\ ; border inner color + bouter=0x8C908A:\ ; border outer color + bframe=0xD6D6D4],\ ; border frame color + colors inactive = [binner=0xD6D6D4:\ ; border inner color + bouter=0x8C908A:\ ; border outer color + bframe=0xD6D6D4],\ ; border frame color + dtp = 'Opus_DA.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-21:5][15:15],\ ; buttons coordinates + minimize = [-40:5][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/CodeOpusC/Opus_DeviantART.dtp b/skins/CodeOpusC/Opus_DA/Opus_DA.dtp similarity index 100% rename from skins/CodeOpusC/Opus_DeviantART.dtp rename to skins/CodeOpusC/Opus_DA/Opus_DA.dtp diff --git a/skins/CodeOpusC/Opus_DA/active/base.bmp b/skins/CodeOpusC/Opus_DA/active/base.bmp new file mode 100644 index 0000000000..0eba00caa2 Binary files /dev/null and b/skins/CodeOpusC/Opus_DA/active/base.bmp differ diff --git a/skins/CodeOpusC/Opus_DA/active/left.bmp b/skins/CodeOpusC/Opus_DA/active/left.bmp new file mode 100644 index 0000000000..0a57d12a99 Binary files /dev/null and b/skins/CodeOpusC/Opus_DA/active/left.bmp differ diff --git a/skins/CodeOpusC/Opus_DA/active/oper.bmp b/skins/CodeOpusC/Opus_DA/active/oper.bmp new file mode 100644 index 0000000000..300e8c53b6 Binary files /dev/null and b/skins/CodeOpusC/Opus_DA/active/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_DA/inactive/base.bmp b/skins/CodeOpusC/Opus_DA/inactive/base.bmp new file mode 100644 index 0000000000..1b71a6efa6 Binary files /dev/null and b/skins/CodeOpusC/Opus_DA/inactive/base.bmp differ diff --git a/skins/CodeOpusC/Opus_DA/inactive/left.bmp b/skins/CodeOpusC/Opus_DA/inactive/left.bmp new file mode 100644 index 0000000000..39424c5ce2 Binary files /dev/null and b/skins/CodeOpusC/Opus_DA/inactive/left.bmp differ diff --git a/skins/CodeOpusC/Opus_DA/inactive/oper.bmp b/skins/CodeOpusC/Opus_DA/inactive/oper.bmp new file mode 100644 index 0000000000..570273e96d Binary files /dev/null and b/skins/CodeOpusC/Opus_DA/inactive/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_DA/my_skin.inc b/skins/CodeOpusC/Opus_DA/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/CodeOpusC/Opus_DA/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/CodeOpusC/Opus_G.skn b/skins/CodeOpusC/Opus_G.skn deleted file mode 100644 index c568757347..0000000000 Binary files a/skins/CodeOpusC/Opus_G.skn and /dev/null differ diff --git a/skins/CodeOpusC/Opus_G/Opus_G.asm b/skins/CodeOpusC/Opus_G/Opus_G.asm new file mode 100644 index 0000000000..7c3b918e53 --- /dev/null +++ b/skins/CodeOpusC/Opus_G/Opus_G.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:3:10:2],\ ; margins [left:top:right:bottom] + colors active = [binner=0xD8D4D4:\ ; border inner color + bouter=0x928D87:\ ; border outer color + bframe=0xD8D4D4],\ ; border frame color + colors inactive = [binner=0xD8D4D4:\ ; border inner color + bouter=0x928D87:\ ; border outer color + bframe=0xD8D4D4],\ ; border frame color + dtp = 'Opus_G.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-21:5][15:15],\ ; buttons coordinates + minimize = [-40:5][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/CodeOpusC/Opus_Green.dtp b/skins/CodeOpusC/Opus_G/Opus_G.dtp similarity index 100% rename from skins/CodeOpusC/Opus_Green.dtp rename to skins/CodeOpusC/Opus_G/Opus_G.dtp diff --git a/skins/CodeOpusC/Opus_G/active/base.bmp b/skins/CodeOpusC/Opus_G/active/base.bmp new file mode 100644 index 0000000000..2e83ca1e8e Binary files /dev/null and b/skins/CodeOpusC/Opus_G/active/base.bmp differ diff --git a/skins/CodeOpusC/Opus_G/active/left.bmp b/skins/CodeOpusC/Opus_G/active/left.bmp new file mode 100644 index 0000000000..a884876a41 Binary files /dev/null and b/skins/CodeOpusC/Opus_G/active/left.bmp differ diff --git a/skins/CodeOpusC/Opus_G/active/oper.bmp b/skins/CodeOpusC/Opus_G/active/oper.bmp new file mode 100644 index 0000000000..1ba9faa689 Binary files /dev/null and b/skins/CodeOpusC/Opus_G/active/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_G/inactive/base.bmp b/skins/CodeOpusC/Opus_G/inactive/base.bmp new file mode 100644 index 0000000000..d7175aed69 Binary files /dev/null and b/skins/CodeOpusC/Opus_G/inactive/base.bmp differ diff --git a/skins/CodeOpusC/Opus_G/inactive/left.bmp b/skins/CodeOpusC/Opus_G/inactive/left.bmp new file mode 100644 index 0000000000..f336be20e6 Binary files /dev/null and b/skins/CodeOpusC/Opus_G/inactive/left.bmp differ diff --git a/skins/CodeOpusC/Opus_G/inactive/oper.bmp b/skins/CodeOpusC/Opus_G/inactive/oper.bmp new file mode 100644 index 0000000000..8491a5c7fc Binary files /dev/null and b/skins/CodeOpusC/Opus_G/inactive/oper.bmp differ diff --git a/skins/CodeOpusC/Opus_G/my_skin.inc b/skins/CodeOpusC/Opus_G/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/CodeOpusC/Opus_G/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/Grey/active/base.bmp b/skins/Grey/active/base.bmp new file mode 100644 index 0000000000..0c3836fbe3 Binary files /dev/null and b/skins/Grey/active/base.bmp differ diff --git a/skins/Grey/active/left.bmp b/skins/Grey/active/left.bmp new file mode 100644 index 0000000000..0f0bf6a236 Binary files /dev/null and b/skins/Grey/active/left.bmp differ diff --git a/skins/Grey/active/oper.bmp b/skins/Grey/active/oper.bmp new file mode 100644 index 0000000000..0f0aa9ee36 Binary files /dev/null and b/skins/Grey/active/oper.bmp differ diff --git a/skins/Grey/default.asm b/skins/Grey/default.asm new file mode 100644 index 0000000000..f119a864c7 --- /dev/null +++ b/skins/Grey/default.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [7:1:39:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xC9C9C9],\ ; border frame color + colors inactive = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xC9C9C9],\ ; border frame color + dtp = 'default.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-20:1][15:15],\ ; buttons coordinates + minimize = [-36:1][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +;BITMAP bmp_left1,'inactive/left.bmp' +;BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/Grey/default.dtp b/skins/Grey/default.dtp new file mode 100644 index 0000000000..b247fde937 Binary files /dev/null and b/skins/Grey/default.dtp differ diff --git a/skins/Grey/default.skn b/skins/Grey/default.skn deleted file mode 100644 index 5e8a6cc49d..0000000000 Binary files a/skins/Grey/default.skn and /dev/null differ diff --git a/skins/Grey/inactive/base.bmp b/skins/Grey/inactive/base.bmp new file mode 100644 index 0000000000..7f296a0b3a Binary files /dev/null and b/skins/Grey/inactive/base.bmp differ diff --git a/skins/Grey/inactive/left.bmp b/skins/Grey/inactive/left.bmp new file mode 100644 index 0000000000..0f0bf6a236 Binary files /dev/null and b/skins/Grey/inactive/left.bmp differ diff --git a/skins/Grey/inactive/oper.bmp b/skins/Grey/inactive/oper.bmp new file mode 100644 index 0000000000..0f0aa9ee36 Binary files /dev/null and b/skins/Grey/inactive/oper.bmp differ diff --git a/skins/Grey/my_skin.inc b/skins/Grey/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/Grey/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/MetalColor/MCBlue.skn b/skins/MetalColor/MCBlue.skn deleted file mode 100644 index 5d629d51b9..0000000000 Binary files a/skins/MetalColor/MCBlue.skn and /dev/null differ diff --git a/skins/MetalColor/MCBlue/MCBlue.asm b/skins/MetalColor/MCBlue/MCBlue.asm new file mode 100644 index 0000000000..e623bd726f --- /dev/null +++ b/skins/MetalColor/MCBlue/MCBlue.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [7:2:7:4],\ ; margins [left:top:right:bottom] + colors active = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xAFB1BE],\ ; border frame color + colors inactive = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xB1B1B1],\ ; border frame color + dtp = 'MCBlue.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-20:4][15:15],\ ; buttons coordinates + minimize = [-37:4][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/MetalColor/MCBlue.dtp b/skins/MetalColor/MCBlue/MCBlue.dtp similarity index 100% rename from skins/MetalColor/MCBlue.dtp rename to skins/MetalColor/MCBlue/MCBlue.dtp diff --git a/skins/MetalColor/MCBlue/active/base.bmp b/skins/MetalColor/MCBlue/active/base.bmp new file mode 100644 index 0000000000..e5a489d712 Binary files /dev/null and b/skins/MetalColor/MCBlue/active/base.bmp differ diff --git a/skins/MetalColor/MCBlue/active/left.bmp b/skins/MetalColor/MCBlue/active/left.bmp new file mode 100644 index 0000000000..56d61b2cf9 Binary files /dev/null and b/skins/MetalColor/MCBlue/active/left.bmp differ diff --git a/skins/MetalColor/MCBlue/active/oper.bmp b/skins/MetalColor/MCBlue/active/oper.bmp new file mode 100644 index 0000000000..5a243e5d41 Binary files /dev/null and b/skins/MetalColor/MCBlue/active/oper.bmp differ diff --git a/skins/MetalColor/MCBlue/inactive/base.bmp b/skins/MetalColor/MCBlue/inactive/base.bmp new file mode 100644 index 0000000000..cc082f3fa7 Binary files /dev/null and b/skins/MetalColor/MCBlue/inactive/base.bmp differ diff --git a/skins/MetalColor/MCBlue/inactive/left.bmp b/skins/MetalColor/MCBlue/inactive/left.bmp new file mode 100644 index 0000000000..69d2798c42 Binary files /dev/null and b/skins/MetalColor/MCBlue/inactive/left.bmp differ diff --git a/skins/MetalColor/MCBlue/inactive/oper.bmp b/skins/MetalColor/MCBlue/inactive/oper.bmp new file mode 100644 index 0000000000..a128e4d7c2 Binary files /dev/null and b/skins/MetalColor/MCBlue/inactive/oper.bmp differ diff --git a/skins/MetalColor/MCBlue/my_skin.inc b/skins/MetalColor/MCBlue/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/MetalColor/MCBlue/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/MetalColor/MCRed.skn b/skins/MetalColor/MCRed.skn deleted file mode 100644 index 92281965f6..0000000000 Binary files a/skins/MetalColor/MCRed.skn and /dev/null differ diff --git a/skins/MetalColor/MCRed/MCRed.asm b/skins/MetalColor/MCRed/MCRed.asm new file mode 100644 index 0000000000..406355c26d --- /dev/null +++ b/skins/MetalColor/MCRed/MCRed.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [7:2:69:4],\ ; margins [left:top:right:bottom] + colors active = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0x8E262C],\ ; border frame color + colors inactive = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0x4E4E4E],\ ; border frame color + dtp = 'MCRed.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-20:4][15:15],\ ; buttons coordinates + minimize = [-37:4][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/MetalColor/MetalColorRed.dtp b/skins/MetalColor/MCRed/MCRed.dtp similarity index 100% rename from skins/MetalColor/MetalColorRed.dtp rename to skins/MetalColor/MCRed/MCRed.dtp diff --git a/skins/MetalColor/MCRed/active/base.bmp b/skins/MetalColor/MCRed/active/base.bmp new file mode 100644 index 0000000000..74abd7faac Binary files /dev/null and b/skins/MetalColor/MCRed/active/base.bmp differ diff --git a/skins/MetalColor/MCRed/active/left.bmp b/skins/MetalColor/MCRed/active/left.bmp new file mode 100644 index 0000000000..899225add9 Binary files /dev/null and b/skins/MetalColor/MCRed/active/left.bmp differ diff --git a/skins/MetalColor/MCRed/active/oper.bmp b/skins/MetalColor/MCRed/active/oper.bmp new file mode 100644 index 0000000000..9b23467492 Binary files /dev/null and b/skins/MetalColor/MCRed/active/oper.bmp differ diff --git a/skins/MetalColor/MCRed/inactive/base.bmp b/skins/MetalColor/MCRed/inactive/base.bmp new file mode 100644 index 0000000000..cb5310ac7a Binary files /dev/null and b/skins/MetalColor/MCRed/inactive/base.bmp differ diff --git a/skins/MetalColor/MCRed/inactive/left.bmp b/skins/MetalColor/MCRed/inactive/left.bmp new file mode 100644 index 0000000000..e5449e6124 Binary files /dev/null and b/skins/MetalColor/MCRed/inactive/left.bmp differ diff --git a/skins/MetalColor/MCRed/inactive/oper.bmp b/skins/MetalColor/MCRed/inactive/oper.bmp new file mode 100644 index 0000000000..85823effdd Binary files /dev/null and b/skins/MetalColor/MCRed/inactive/oper.bmp differ diff --git a/skins/MetalColor/MCRed/my_skin.inc b/skins/MetalColor/MCRed/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/MetalColor/MCRed/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/MyTango/active/base.bmp b/skins/MyTango/active/base.bmp new file mode 100644 index 0000000000..9e5ffdec59 Binary files /dev/null and b/skins/MyTango/active/base.bmp differ diff --git a/skins/MyTango/active/left.bmp b/skins/MyTango/active/left.bmp new file mode 100644 index 0000000000..a52623f1cc Binary files /dev/null and b/skins/MyTango/active/left.bmp differ diff --git a/skins/MyTango/active/oper.bmp b/skins/MyTango/active/oper.bmp new file mode 100644 index 0000000000..8a785190d0 Binary files /dev/null and b/skins/MyTango/active/oper.bmp differ diff --git a/skins/MyTango/default.asm b/skins/MyTango/default.asm new file mode 100644 index 0000000000..c1ea7c2fd5 --- /dev/null +++ b/skins/MyTango/default.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:1:47:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x4989CA:\ ; border inner color + bouter=0x2B5E92:\ ; border outer color + bframe=0x4989CA],\ ; border frame color + colors inactive = [binner=0xA3A3A3:\ ; border inner color + bouter=0x828282:\ ; border outer color + bframe=0xA3A3A3],\ ; border frame color + dtp = 'default.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-23:4][18:16],\ ; buttons coordinates + minimize = [-44:4][18:16] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/MyTango/default.dtp b/skins/MyTango/default.dtp new file mode 100644 index 0000000000..3fa9687885 Binary files /dev/null and b/skins/MyTango/default.dtp differ diff --git a/skins/MyTango/default.skn b/skins/MyTango/default.skn deleted file mode 100644 index e5401c128e..0000000000 Binary files a/skins/MyTango/default.skn and /dev/null differ diff --git a/skins/MyTango/inactive/base.bmp b/skins/MyTango/inactive/base.bmp new file mode 100644 index 0000000000..8a161c58da Binary files /dev/null and b/skins/MyTango/inactive/base.bmp differ diff --git a/skins/MyTango/inactive/left.bmp b/skins/MyTango/inactive/left.bmp new file mode 100644 index 0000000000..615f301d5b Binary files /dev/null and b/skins/MyTango/inactive/left.bmp differ diff --git a/skins/MyTango/inactive/oper.bmp b/skins/MyTango/inactive/oper.bmp new file mode 100644 index 0000000000..979a029a55 Binary files /dev/null and b/skins/MyTango/inactive/oper.bmp differ diff --git a/skins/MyTango/my_skin.inc b/skins/MyTango/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/MyTango/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/OpusOs_Blue/OpusOs_Blue.asm b/skins/OpusOs_Blue/OpusOs_Blue.asm new file mode 100644 index 0000000000..ce5d778ada --- /dev/null +++ b/skins/OpusOs_Blue/OpusOs_Blue.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:1:37:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x4C5E7C:\ ; border inner color + bouter=0x465774:\ ; border outer color + bframe=0x5F769B],\ ; border frame color + colors inactive = [binner=0xADAAA3:\ ; border inner color + bouter=0xADAAA3:\ ; border outer color + bframe=0xC8C4BD],\ ; border frame color + dtp = 'OpusOs_Blue.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-19:4][14:14],\ ; buttons coordinates + minimize = [-35:4][14:14] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/OpusOs_Blue/OpusOs_Blue.dtp b/skins/OpusOs_Blue/OpusOs_Blue.dtp new file mode 100644 index 0000000000..2ceb6675ab Binary files /dev/null and b/skins/OpusOs_Blue/OpusOs_Blue.dtp differ diff --git a/skins/OpusOs_Blue/OpusOs_Blue.skn b/skins/OpusOs_Blue/OpusOs_Blue.skn deleted file mode 100644 index 088dea2b03..0000000000 Binary files a/skins/OpusOs_Blue/OpusOs_Blue.skn and /dev/null differ diff --git a/skins/OpusOs_Blue/active/base.bmp b/skins/OpusOs_Blue/active/base.bmp new file mode 100644 index 0000000000..f2abfd2513 Binary files /dev/null and b/skins/OpusOs_Blue/active/base.bmp differ diff --git a/skins/OpusOs_Blue/active/left.bmp b/skins/OpusOs_Blue/active/left.bmp new file mode 100644 index 0000000000..cbfa3a9a74 Binary files /dev/null and b/skins/OpusOs_Blue/active/left.bmp differ diff --git a/skins/OpusOs_Blue/active/oper.bmp b/skins/OpusOs_Blue/active/oper.bmp new file mode 100644 index 0000000000..b9fa7012f4 Binary files /dev/null and b/skins/OpusOs_Blue/active/oper.bmp differ diff --git a/skins/OpusOs_Blue/inactive/base.bmp b/skins/OpusOs_Blue/inactive/base.bmp new file mode 100644 index 0000000000..09143930cc Binary files /dev/null and b/skins/OpusOs_Blue/inactive/base.bmp differ diff --git a/skins/OpusOs_Blue/inactive/left.bmp b/skins/OpusOs_Blue/inactive/left.bmp new file mode 100644 index 0000000000..91fe9aeaeb Binary files /dev/null and b/skins/OpusOs_Blue/inactive/left.bmp differ diff --git a/skins/OpusOs_Blue/inactive/oper.bmp b/skins/OpusOs_Blue/inactive/oper.bmp new file mode 100644 index 0000000000..25750db44d Binary files /dev/null and b/skins/OpusOs_Blue/inactive/oper.bmp differ diff --git a/skins/OpusOs_Blue/my_skin.inc b/skins/OpusOs_Blue/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/OpusOs_Blue/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/Syllable/Syllable.asm b/skins/Syllable/Syllable.asm new file mode 100644 index 0000000000..18d8b76af9 --- /dev/null +++ b/skins/Syllable/Syllable.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [5:1:43:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xC0C0C0],\ ; border frame color + colors inactive = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xC0C0C0],\ ; border frame color + dtp = 'Syllable.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-17:4][14:13],\ ; buttons coordinates + minimize = [-32:4][14:13] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/Syllable/Syllable.dtp b/skins/Syllable/Syllable.dtp new file mode 100644 index 0000000000..df767f0191 Binary files /dev/null and b/skins/Syllable/Syllable.dtp differ diff --git a/skins/Syllable/Syllable.skn b/skins/Syllable/Syllable.skn deleted file mode 100644 index 58564aa771..0000000000 Binary files a/skins/Syllable/Syllable.skn and /dev/null differ diff --git a/skins/Syllable/active/base.bmp b/skins/Syllable/active/base.bmp new file mode 100644 index 0000000000..0416bf842a Binary files /dev/null and b/skins/Syllable/active/base.bmp differ diff --git a/skins/Syllable/active/left.bmp b/skins/Syllable/active/left.bmp new file mode 100644 index 0000000000..2258997414 Binary files /dev/null and b/skins/Syllable/active/left.bmp differ diff --git a/skins/Syllable/active/oper.bmp b/skins/Syllable/active/oper.bmp new file mode 100644 index 0000000000..3c233b6869 Binary files /dev/null and b/skins/Syllable/active/oper.bmp differ diff --git a/skins/Syllable/inactive/base.bmp b/skins/Syllable/inactive/base.bmp new file mode 100644 index 0000000000..0416bf842a Binary files /dev/null and b/skins/Syllable/inactive/base.bmp differ diff --git a/skins/Syllable/inactive/left.bmp b/skins/Syllable/inactive/left.bmp new file mode 100644 index 0000000000..2258997414 Binary files /dev/null and b/skins/Syllable/inactive/left.bmp differ diff --git a/skins/Syllable/inactive/oper.bmp b/skins/Syllable/inactive/oper.bmp new file mode 100644 index 0000000000..3c233b6869 Binary files /dev/null and b/skins/Syllable/inactive/oper.bmp differ diff --git a/skins/Syllable/my_skin.inc b/skins/Syllable/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/Syllable/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/WIN311/Win311.asm b/skins/WIN311/Win311.asm new file mode 100644 index 0000000000..88d3c16ce1 --- /dev/null +++ b/skins/WIN311/Win311.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [5:1:44:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xC0C0C0],\ ; border frame color + colors inactive = [binner=0x000000:\ ; border inner color + bouter=0x000000:\ ; border outer color + bframe=0xC0C0C0],\ ; border frame color + dtp = 'Win311.DTP' ; dtp colors + +SKIN_BUTTONS \ + close = [-21:5][16:16],\ ; buttons coordinates + minimize = [-38:5][16:16] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/WIN311/Win311.skn b/skins/WIN311/Win311.skn deleted file mode 100644 index 1972ca576f..0000000000 Binary files a/skins/WIN311/Win311.skn and /dev/null differ diff --git a/skins/WIN311/active/base.bmp b/skins/WIN311/active/base.bmp new file mode 100644 index 0000000000..a914eb54eb Binary files /dev/null and b/skins/WIN311/active/base.bmp differ diff --git a/skins/WIN311/active/left.bmp b/skins/WIN311/active/left.bmp new file mode 100644 index 0000000000..a9390824b5 Binary files /dev/null and b/skins/WIN311/active/left.bmp differ diff --git a/skins/WIN311/active/oper.bmp b/skins/WIN311/active/oper.bmp new file mode 100644 index 0000000000..e94c82cda3 Binary files /dev/null and b/skins/WIN311/active/oper.bmp differ diff --git a/skins/WIN311/inactive/base.bmp b/skins/WIN311/inactive/base.bmp new file mode 100644 index 0000000000..5eaa1fd964 Binary files /dev/null and b/skins/WIN311/inactive/base.bmp differ diff --git a/skins/WIN311/inactive/left.bmp b/skins/WIN311/inactive/left.bmp new file mode 100644 index 0000000000..c5a6ce83e0 Binary files /dev/null and b/skins/WIN311/inactive/left.bmp differ diff --git a/skins/WIN311/inactive/oper.bmp b/skins/WIN311/inactive/oper.bmp new file mode 100644 index 0000000000..2faff13c89 Binary files /dev/null and b/skins/WIN311/inactive/oper.bmp differ diff --git a/skins/WIN311/my_skin.inc b/skins/WIN311/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/WIN311/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/nix/nix_big.skn b/skins/nix/nix_big.skn deleted file mode 100644 index 7f5a577c40..0000000000 Binary files a/skins/nix/nix_big.skn and /dev/null differ diff --git a/skins/nix/nix_big/active/base.bmp b/skins/nix/nix_big/active/base.bmp new file mode 100644 index 0000000000..d7180535d1 Binary files /dev/null and b/skins/nix/nix_big/active/base.bmp differ diff --git a/skins/nix/nix_big/active/left.bmp b/skins/nix/nix_big/active/left.bmp new file mode 100644 index 0000000000..800ed0337c Binary files /dev/null and b/skins/nix/nix_big/active/left.bmp differ diff --git a/skins/nix/nix_big/active/oper.bmp b/skins/nix/nix_big/active/oper.bmp new file mode 100644 index 0000000000..7ed01543ed Binary files /dev/null and b/skins/nix/nix_big/active/oper.bmp differ diff --git a/skins/nix/nix_big/inactive/base.bmp b/skins/nix/nix_big/inactive/base.bmp new file mode 100644 index 0000000000..0fa0344f67 Binary files /dev/null and b/skins/nix/nix_big/inactive/base.bmp differ diff --git a/skins/nix/nix_big/inactive/left.bmp b/skins/nix/nix_big/inactive/left.bmp new file mode 100644 index 0000000000..befa12e299 Binary files /dev/null and b/skins/nix/nix_big/inactive/left.bmp differ diff --git a/skins/nix/nix_big/inactive/oper.bmp b/skins/nix/nix_big/inactive/oper.bmp new file mode 100644 index 0000000000..ee61593987 Binary files /dev/null and b/skins/nix/nix_big/inactive/oper.bmp differ diff --git a/skins/nix/nix_big/my_skin.inc b/skins/nix/nix_big/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/nix/nix_big/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/nix/nix_big/nix_big.asm b/skins/nix/nix_big/nix_big.asm new file mode 100644 index 0000000000..639f889a8b --- /dev/null +++ b/skins/nix/nix_big/nix_big.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [5:1:18:3],\ ; margins [left:top:right:bottom] + colors active = [binner=0x363C46:\ ; border inner color + bouter=0x363C46:\ ; border outer color + bframe=0x363C46],\ ; border frame color + colors inactive = [binner=0x393C46:\ ; border inner color + bouter=0x393C46:\ ; border outer color + bframe=0x393C46],\ ; border frame color + dtp = 'nix_big.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-25:9][15:15],\ ; buttons coordinates + minimize = [-43:9][15:15] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/nix/nix_big/nix_big.dtp b/skins/nix/nix_big/nix_big.dtp new file mode 100644 index 0000000000..15b66db988 Binary files /dev/null and b/skins/nix/nix_big/nix_big.dtp differ diff --git a/skins/nix/nix_medium.skn b/skins/nix/nix_medium.skn deleted file mode 100644 index 61d9942c54..0000000000 Binary files a/skins/nix/nix_medium.skn and /dev/null differ diff --git a/skins/nix/nix_medium/active/base.bmp b/skins/nix/nix_medium/active/base.bmp new file mode 100644 index 0000000000..d368470fea Binary files /dev/null and b/skins/nix/nix_medium/active/base.bmp differ diff --git a/skins/nix/nix_medium/active/left.bmp b/skins/nix/nix_medium/active/left.bmp new file mode 100644 index 0000000000..8500f7a82a Binary files /dev/null and b/skins/nix/nix_medium/active/left.bmp differ diff --git a/skins/nix/nix_medium/active/oper.bmp b/skins/nix/nix_medium/active/oper.bmp new file mode 100644 index 0000000000..574b576191 Binary files /dev/null and b/skins/nix/nix_medium/active/oper.bmp differ diff --git a/skins/nix/nix_medium/inactive/base.bmp b/skins/nix/nix_medium/inactive/base.bmp new file mode 100644 index 0000000000..354be176a5 Binary files /dev/null and b/skins/nix/nix_medium/inactive/base.bmp differ diff --git a/skins/nix/nix_medium/inactive/left.bmp b/skins/nix/nix_medium/inactive/left.bmp new file mode 100644 index 0000000000..c730539428 Binary files /dev/null and b/skins/nix/nix_medium/inactive/left.bmp differ diff --git a/skins/nix/nix_medium/inactive/oper.bmp b/skins/nix/nix_medium/inactive/oper.bmp new file mode 100644 index 0000000000..ed30564aac Binary files /dev/null and b/skins/nix/nix_medium/inactive/oper.bmp differ diff --git a/skins/nix/nix_medium/my_skin.inc b/skins/nix/nix_medium/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/nix/nix_medium/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/nix/nix_medium/nix_medium.asm b/skins/nix/nix_medium/nix_medium.asm new file mode 100644 index 0000000000..24d4a943f5 --- /dev/null +++ b/skins/nix/nix_medium/nix_medium.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [5:1:18:2],\ ; margins [left:top:right:bottom] + colors active = [binner=0x363C46:\ ; border inner color + bouter=0x363C46:\ ; border outer color + bframe=0x363C46],\ ; border frame color + colors inactive = [binner=0x393C46:\ ; border inner color + bouter=0x393C46:\ ; border outer color + bframe=0x393C46],\ ; border frame color + dtp = 'nix_medium.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-19:6][12:12],\ ; buttons coordinates + minimize = [-33:6][12:12] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/nix/nix_medium/nix_medium.dtp b/skins/nix/nix_medium/nix_medium.dtp new file mode 100644 index 0000000000..15b66db988 Binary files /dev/null and b/skins/nix/nix_medium/nix_medium.dtp differ diff --git a/skins/nix/nix_small.skn b/skins/nix/nix_small.skn deleted file mode 100644 index b6f9f7c38c..0000000000 Binary files a/skins/nix/nix_small.skn and /dev/null differ diff --git a/skins/nix/nix_small/active/base.bmp b/skins/nix/nix_small/active/base.bmp new file mode 100644 index 0000000000..0d8ff0e100 Binary files /dev/null and b/skins/nix/nix_small/active/base.bmp differ diff --git a/skins/nix/nix_small/active/left.bmp b/skins/nix/nix_small/active/left.bmp new file mode 100644 index 0000000000..6f4ae53a4d Binary files /dev/null and b/skins/nix/nix_small/active/left.bmp differ diff --git a/skins/nix/nix_small/active/oper.bmp b/skins/nix/nix_small/active/oper.bmp new file mode 100644 index 0000000000..87fc86192b Binary files /dev/null and b/skins/nix/nix_small/active/oper.bmp differ diff --git a/skins/nix/nix_small/inactive/base.bmp b/skins/nix/nix_small/inactive/base.bmp new file mode 100644 index 0000000000..040da31ae2 Binary files /dev/null and b/skins/nix/nix_small/inactive/base.bmp differ diff --git a/skins/nix/nix_small/inactive/left.bmp b/skins/nix/nix_small/inactive/left.bmp new file mode 100644 index 0000000000..444b1c16c5 Binary files /dev/null and b/skins/nix/nix_small/inactive/left.bmp differ diff --git a/skins/nix/nix_small/inactive/oper.bmp b/skins/nix/nix_small/inactive/oper.bmp new file mode 100644 index 0000000000..3918a68346 Binary files /dev/null and b/skins/nix/nix_small/inactive/oper.bmp differ diff --git a/skins/nix/nix_small/my_skin.inc b/skins/nix/nix_small/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/nix/nix_small/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/nix/nix_small/nix_small.asm b/skins/nix/nix_small/nix_small.asm new file mode 100644 index 0000000000..ba3c958a32 --- /dev/null +++ b/skins/nix/nix_small/nix_small.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [5:1:18:3],\ ; margins [left:top:right:bottom] + colors active = [binner=0x363C46:\ ; border inner color + bouter=0x363C46:\ ; border outer color + bframe=0x363C46],\ ; border frame color + colors inactive = [binner=0x393C46:\ ; border inner color + bouter=0x393C46:\ ; border outer color + bframe=0x393C46],\ ; border frame color + dtp = 'nix_small.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-15:5][9:9],\ ; buttons coordinates + minimize = [-25:5][9:9] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/nix/nix_small/nix_small.bin b/skins/nix/nix_small/nix_small.bin new file mode 100644 index 0000000000..6ec44f0bca Binary files /dev/null and b/skins/nix/nix_small/nix_small.bin differ diff --git a/skins/nix/nix_small/nix_small.dtp b/skins/nix/nix_small/nix_small.dtp new file mode 100644 index 0000000000..15b66db988 Binary files /dev/null and b/skins/nix/nix_small/nix_small.dtp differ diff --git a/skins/subsilv/active/base.bmp b/skins/subsilv/active/base.bmp new file mode 100644 index 0000000000..51e6a43ac9 Binary files /dev/null and b/skins/subsilv/active/base.bmp differ diff --git a/skins/subsilv/active/left.bmp b/skins/subsilv/active/left.bmp new file mode 100644 index 0000000000..6c3c567f49 Binary files /dev/null and b/skins/subsilv/active/left.bmp differ diff --git a/skins/subsilv/active/oper.bmp b/skins/subsilv/active/oper.bmp new file mode 100644 index 0000000000..e4e5297def Binary files /dev/null and b/skins/subsilv/active/oper.bmp differ diff --git a/skins/subsilv/default.asm b/skins/subsilv/default.asm new file mode 100644 index 0000000000..2e73c75ec9 --- /dev/null +++ b/skins/subsilv/default.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:1:53:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x006A9D:\ ; border inner color + bouter=0x006A9D:\ ; border outer color + bframe=0xB0BAC4],\ ; border frame color + colors inactive = [binner=0x006A9D:\ ; border inner color + bouter=0x006A9D:\ ; border outer color + bframe=0xE0E4E9],\ ; border frame color + dtp = 'Mistificator1.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-23:4][19:18],\ ; buttons coordinates + minimize = [-45:4][19:18] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/subsilv/default.skn b/skins/subsilv/default.skn deleted file mode 100644 index ce82a290bb..0000000000 Binary files a/skins/subsilv/default.skn and /dev/null differ diff --git a/skins/subsilv/inactive/base.bmp b/skins/subsilv/inactive/base.bmp new file mode 100644 index 0000000000..5e4fbd7a65 Binary files /dev/null and b/skins/subsilv/inactive/base.bmp differ diff --git a/skins/subsilv/inactive/left.bmp b/skins/subsilv/inactive/left.bmp new file mode 100644 index 0000000000..5f702cf6e2 Binary files /dev/null and b/skins/subsilv/inactive/left.bmp differ diff --git a/skins/subsilv/inactive/oper.bmp b/skins/subsilv/inactive/oper.bmp new file mode 100644 index 0000000000..a4b64f5710 Binary files /dev/null and b/skins/subsilv/inactive/oper.bmp differ diff --git a/skins/subsilv/my_skin.inc b/skins/subsilv/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/subsilv/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/vista/active/base.bmp b/skins/vista/active/base.bmp new file mode 100644 index 0000000000..b25f7cd50c Binary files /dev/null and b/skins/vista/active/base.bmp differ diff --git a/skins/vista/active/left.bmp b/skins/vista/active/left.bmp new file mode 100644 index 0000000000..7acef0f3e3 Binary files /dev/null and b/skins/vista/active/left.bmp differ diff --git a/skins/vista/active/oper.bmp b/skins/vista/active/oper.bmp new file mode 100644 index 0000000000..8dfcfc5ae6 Binary files /dev/null and b/skins/vista/active/oper.bmp differ diff --git a/skins/vista/default.asm b/skins/vista/default.asm new file mode 100644 index 0000000000..f5ffd65d7e --- /dev/null +++ b/skins/vista/default.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [5:1:43:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x00081D:\ ; border inner color + bouter=0x00081D:\ ; border outer color + bframe=0x2D2F2B],\ ; border frame color + colors inactive = [binner=0x00081D:\ ; border inner color + bouter=0x00081D:\ ; border outer color + bframe=0x72757A],\ ; border frame color + dtp = 'default.dtp' ; dtp colors + +SKIN_BUTTONS \ + close = [-47:3][41:17],\ ; buttons coordinates + minimize = [-71:3][23:17] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/vista/default.dtp b/skins/vista/default.dtp new file mode 100644 index 0000000000..c2a444a092 Binary files /dev/null and b/skins/vista/default.dtp differ diff --git a/skins/vista/default.skn b/skins/vista/default.skn deleted file mode 100644 index e48b9a752f..0000000000 Binary files a/skins/vista/default.skn and /dev/null differ diff --git a/skins/vista/inactive/base.bmp b/skins/vista/inactive/base.bmp new file mode 100644 index 0000000000..bb26ce9277 Binary files /dev/null and b/skins/vista/inactive/base.bmp differ diff --git a/skins/vista/inactive/left.bmp b/skins/vista/inactive/left.bmp new file mode 100644 index 0000000000..83ad9251ec Binary files /dev/null and b/skins/vista/inactive/left.bmp differ diff --git a/skins/vista/inactive/oper.bmp b/skins/vista/inactive/oper.bmp new file mode 100644 index 0000000000..16b895a7e3 Binary files /dev/null and b/skins/vista/inactive/oper.bmp differ diff --git a/skins/vista/my_skin.inc b/skins/vista/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/vista/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file diff --git a/skins/winflat/active/base.bmp b/skins/winflat/active/base.bmp new file mode 100644 index 0000000000..77610ea880 Binary files /dev/null and b/skins/winflat/active/base.bmp differ diff --git a/skins/winflat/active/left.bmp b/skins/winflat/active/left.bmp new file mode 100644 index 0000000000..092d974a2d Binary files /dev/null and b/skins/winflat/active/left.bmp differ diff --git a/skins/winflat/active/oper.bmp b/skins/winflat/active/oper.bmp new file mode 100644 index 0000000000..33f76b2fe1 Binary files /dev/null and b/skins/winflat/active/oper.bmp differ diff --git a/skins/winflat/default.asm b/skins/winflat/default.asm new file mode 100644 index 0000000000..c838218ad7 --- /dev/null +++ b/skins/winflat/default.asm @@ -0,0 +1,31 @@ +include 'my_skin.inc' + +SKIN_PARAMS \ + height = bmp_base.height,\ ; skin height + margins = [8:1:43:1],\ ; margins [left:top:right:bottom] + colors active = [binner=0x004080:\ ; border inner color + bouter=0x004080:\ ; border outer color + bframe=0xD8D5CE],\ ; border frame color + colors inactive = [binner=0x195999:\ ; border inner color + bouter=0x195999:\ ; border outer color + bframe=0xF1EEE7],\ ; border frame color + dtp = 'Mistificator.DTP' ; dtp colors + +SKIN_BUTTONS \ + close = [-20:6][16:14],\ ; buttons coordinates + minimize = [-40:6][16:14] ; [left:top][width:height] + +SKIN_BITMAPS \ + left active = bmp_left,\ ; skin bitmaps pointers + left inactive = bmp_left1,\ + oper active = bmp_oper,\ + oper inactive = bmp_oper1,\ + base active = bmp_base,\ + base inactive = bmp_base1 + +BITMAP bmp_left ,'active/left.bmp' ; skin bitmaps +BITMAP bmp_oper ,'active/oper.bmp' +BITMAP bmp_base ,'active/base.bmp' +BITMAP bmp_left1,'inactive/left.bmp' +BITMAP bmp_oper1,'inactive/oper.bmp' +BITMAP bmp_base1,'inactive/base.bmp' diff --git a/skins/winflat/default.skn b/skins/winflat/default.skn deleted file mode 100644 index 10cbf3ecf2..0000000000 Binary files a/skins/winflat/default.skn and /dev/null differ diff --git a/skins/winflat/inactive/base.bmp b/skins/winflat/inactive/base.bmp new file mode 100644 index 0000000000..64a8dd9209 Binary files /dev/null and b/skins/winflat/inactive/base.bmp differ diff --git a/skins/winflat/inactive/left.bmp b/skins/winflat/inactive/left.bmp new file mode 100644 index 0000000000..f7f240b8db Binary files /dev/null and b/skins/winflat/inactive/left.bmp differ diff --git a/skins/winflat/inactive/oper.bmp b/skins/winflat/inactive/oper.bmp new file mode 100644 index 0000000000..e3aacbcf6f Binary files /dev/null and b/skins/winflat/inactive/oper.bmp differ diff --git a/skins/winflat/my_skin.inc b/skins/winflat/my_skin.inc new file mode 100644 index 0000000000..ccbb3c191c --- /dev/null +++ b/skins/winflat/my_skin.inc @@ -0,0 +1,235 @@ +;============================================================================ +; This file should be used to generate skins of new standard +;============================================================================ +; skin file structure: +;---------------------------------------------------------------------------- +; header: +; dd 'SKIN' +; dd = version (1 for now) +; dd @ params +; dd @ buttons +; dd @ bitmaps +; ... +;---------------------------------------------------------------------------- +; NOTE: order of sections listed below is insignificant +; since they're identified by pointer in above header +;---------------------------------------------------------------------------- +; ... +; params: +; dd = skin height +; dw = right margin +; dw = left margin +; dw = bottom margin +; dw = top margin +; dd = inner line color +; dd = outer line color +; dd = frame color +; dd = dtp file size +; ?? = dtp file itself +; ... +;---------------------------------------------------------------------------- +; ... +; buttons: +; dd = button type (1 = close, 2 = minimize) +; dw = left button coord (could be negative) +; dw = top button coord (could be negative) +; dw = button width +; dw = button height +; ... etc for all buttons +; dd = 0 (end of buttons list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmaps: +; dw = bitmap kind (1 = left, 2 = oper, 3 = base) +; dw = bitmap type (1 = active, 0 = inactive) +; dd @ bitmap +; ... etc for all bitmaps +; dd 0 (end of bitmaps list) +; ... +;---------------------------------------------------------------------------- +; ... +; bitmap: +; dd = bitmap width +; dd = bitmap height +; ?? = raw bitmap data +; ... etc for all bitmaps +; ... +;============================================================================ + +dd 'SKIN',1,__params__,__buttons__,__bitmaps__ + +struc BITMAPFILEHEADER { + .bfType dw ? ; WORD + .bfSize dd ? ; DWORD + .bfReserved1 dw ? ; WORD + .bfReserved2 dw ? ; WORD + .bfOffBits dd ? ; DWORD +} + +struc BITMAPINFOHEADER { + .biSize dd ? ; DWORD + .biWidth dd ? ; LONG + .biHeight dd ? ; LONG + .biPlanes dw ? ; WORD + .biBitCount dw ? ; WORD + .biCompression dd ? ; DWORD + .biSizeImage dd ? ; DWORD + .biXPelsPerMeter dd ? ; LONG + .biYPelsPerMeter dd ? ; LONG + .biClrUsed dd ? ; DWORD + .biClrImportant dd ? ; DWORD +} + +struc _bmp { + .h BITMAPFILEHEADER + .i BITMAPINFOHEADER +} +virtual at 0 + _bmp _bmp +end virtual + +macro BITMAP _name*,_fname* +{ + local w,h,a,r,g,b + virtual at 0 + file _fname + load w dword from _bmp.i.biWidth + load h dword from _bmp.i.biHeight + end virtual + align 4 + label _name + .width = w + .height = h + dd w,h + a=54+(w*3+(w mod 4))*(h-1) + size = $ + repeat h + repeat w + virtual at 0 + file _fname + load r from a+0 + load g from a+1 + load b from a+2 + end virtual + db r,g,b + a=a+3 + end repeat + a=a-w*3*2-(w mod 4) + end repeat +} + +macro define_colors name,[col,val] +{ + common + local a,b,c + forward + match =binner,col \{ a = val \} + match =bouter,col \{ b = val \} + match =bframe,col \{ c = val \} + common + name equ a,b,c +} + +macro SKIN_PARAMS [a] +{ + common + local _height,_margins,_colors,_colors_1,_dtp,_dtp_sz + __params__: + forward + match qq == ww,a + \{ + match =height,qq \\{ _height = ww \\} + match =margins,qq \\{ + match [q1:q2:q3:q4],ww + \\\{ + _margins equ q3,q1,q4,q2 + \\\} + \\} + match =colors =active,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =colors =inactive,qq + \\{ + match [q10==q11:q20==q21:q30==q31],ww + \\\{ + define_colors _colors_1,q10,q11,q20,q21,q30,q31 + \\\} + \\} + match =dtp,qq \\{ _dtp equ ww \\} + \} + common + dd _height + dw _margins + dd _colors,_colors_1 + virtual at 0 + file _dtp + _dtp_sz = $ + end virtual + dd _dtp_sz + file _dtp +} + +macro SKIN_BUTTONS [a] +{ + common + local btn + __buttons__: + forward + match qq == ww,a + \{ + btn = 0 + match =close,qq \\{ btn = 1 \\} + match =minimize,qq \\{ btn = 2 \\} + match [q1:q2][q3:q4],ww + \\{ + if btn <> 0 + dd btn + dw q1,q2,q3,q4 + end if + \\} + \} + common + dd 0 +} + +macro SKIN_BITMAPS [a] +{ + common + local bmp + __bitmaps__: + forward + match qq == ww,a + \{ + bmp=-1 + match qqq =active,qq \\{ bmp = 1 \\} + match qqq =inactive,qq \\{ bmp = 0 \\} + match =left qqq,qq + \\{ + if bmp >= 0 + dw 1,bmp + dd ww + end if + \\} + match =oper qqq,qq + \\{ + if bmp >= 0 + dw 2,bmp + dd ww + end if + \\} + match =base qqq,qq + \\{ + if bmp >= 0 + dw 3,bmp + dd ww + end if + \\} + \} + common + dd 0 +} \ No newline at end of file