WindowBlinds
2 introduces a new skinning language, which has been designed for compatibility
and performance.
For
simplicity this language will be called the ‘Basic’ skin language and UIS2 is
called ‘Advanced’
UIS1+
differs from UIS2 only in how the frame windows are defined. There are a few restrictions in the
capabilities of Basic (UIS1+) skins.
·
Buttons can only be placed on the
top border
·
Borders cannot be shaped
·
Left, right , and bottom borders
cannot be resized
·
Menu bars cannot be skinned
·
UIS2 plugins and scripting cannot
be used
·
No animation support
However,
UIS1+ introduces some new capabilities
·
Different frame images can be
used for normal, sizable, MDI child and tool windows.
·
Action codes to support the above
Skins need to have a name and an author for WindowBlinds to list them in the skin list. This following section is used to hold this inlanguageion.
[TitleBarSkin]
SkinName=UIS1+
SKIN TEST
SkinAuthor=NB
;
You also have to provide a small preview image to show next to the skin name in
the list.
ActiveTitle=RATM\bot.bmp
Unlike UIS2, only 2 images are used for the borders. These contain the horizontal and vertical edges respectively.
[Borders]
;
This file contains the left & right borders. Each frame is 4 pixels wide.
You can put as many frames in as you like, but the other frame image
must contain the same number of images.
LEFT images come first
vertFrame
= ratm\left.bmp
;
This file contains the top and bottom borders.
Height = 4 for bottom border
;
Height = 23 for top border. Bottom
images come FIRST
HorzFrame
= ratm\bot.bmp.
So
when you’re done, your image should be 54 (23 + 23 + 4 + 4) pixels deep with
the active and inactive horizontal borders first and then the active and
inactive title bar states next.
;
You set this to the number of frames the border images contain. So if you use the same frame for all states
(active, inactive + other window types) then you set this to 1.
framecount
= 3
;
Stretching mode options (obvious I hope)
leftmiddlestretch =0
rightmiddlestretch
= 0
topmiddlestretch
= 0
bottommiddlestretch
= 0
;
usual 3 section cutting points
LeftTopHeight
= 4
LeftBottomHeight
=4
RightTopHeight
= 4
RightBottomHeight
=4
TopTopHeight
= 5
;
You can now define which frame to use in which state. By default all inactive windows use the 2nd frame as
the inactive frame, but you can change this.
NormalActiveFrame
= frame number
NormalInactiveFrame
= frame number
MDIActiveFrame
= frame number
MDIInactiveFrame
= frame number
NonSizableActiveFrame
= frame number
NonSizableInactiveFrame
= frame number
ToolActiveFrame
= frame number
ToolInactiveFrame
= frame number
;For non sizable windows, the left, right, and bottom frames are only 3 pixels wide, so
; you may want to make different frame images for these
Caption Text
The titlebar caption text positioning is defined in the following section
[Caption]
; The following 3 attributes are used to size the caption text area. These are used to shift the text area
TextLeftShift = 5
TextTopShift = 4
TextRightClip = 10
TextAlignMode = 0
; You can control the size and font of the caption
FontName = Arial
;FontHeight = 10
FontWeight = 800
FontItalics = 0
; You should also define the number of buttons in the titlebar, these are used later on
ButtonCount = 4
Titlebar buttons
Titlebar buttons are defined in the same way as titlebar buttons in UIS2 skins.
[BUTTON#]
; Where # is a number from 0 – (buttonCount – 1)
xCoord = 18
ycoord = 6
buttonimage = ratm\close.bmp
align = 1
action = 0
Visibility = 51
; Only a subset of alignment codes are supported
0 – align from left
1 – align from right
; A couple of new visibility codes have been added too
50 – Show if the window is a toolwindow
51 – Show if the window is not a toolwindow