MyStyle - defines combination of color, font, style, background to
be used together
- BackColor color
-
Specifies the background color associated with this style. color is a
color definition in one of the color formats supported by AfterStep.
BackColor is also used to calculate bevel colors used to draw a border
around a widget.
- BackGradient type from to
-
Specifies that a gradient should be used as a background instead of a solid
color. The gradient colors start at from and end at to .
from and to are color definition in one of the supported
color formats . If gradient includes at least one transparent color (
alpha value set to be below FF ), gradient will be alpha-blended over the
root background image. type can be 1, 2, 3, 4, or 5:
1: Wharf-style diagonal gradient 2: Horizontal from top to bottom 3:
Horizontal from top/bottom to center 4: Vertical from left to right 5:
Vertical from left/right to center 6: Top-Left to Bottom Right diagonal (
same as 1 ) 7: Bottom-Left to Top-Right diagonal 8: Vertical Top to Bottom
( same as 2 ) 9: Horizontal Left to Right ( same as 4 )
- BackMultiGradient type offset1 color1
... offsetN colorN
-
Specifies that a gradient should be used as a background instead of a solid
color. The gradient colors start at color1 and end at colorN
. Each color has an offset associated with it. The offset is
a number between 0.0 and 1.0, and specifies where in the gradient the
colors are to be placed. The colors are in one of the color formats
supported by AfterStep. At least two colors must be given. If gradient
includes at least one transparent color ( alpha value set to be below FF
), gradient will be alpha-blended over the root background image. The
offsets are non-decreasing numbers between 0.0 and 1.0. If the first
offset is not 0.0, it will be set to 0.0. If the last offset is not 1.0,
it will be set to 1.0. type may be any of the following:
6: Top-Left to Bottom Right diagonal 7: Bottom-Left to Top-Right diagonal 8:
Vertical Top to Bottom 9: Horizontal Left to Right
- BackPixmap type pixmap_name|color_name
-
Specifies that a pixmap should be used as a background instead of a solid
color. This option has two forms, depending on the value of type :
If type is 125, 126, 127, 128, 130-144, 150-164 - the second
parameter, pixmap_name must be the name of an image file which can
be found in PixmapPath .
If type is 129 or 149 the root pixmap (desktop background) will be
used, and the optional second parameter must be a color with which the
root pixmap will be shaded/tinted.
Depending on the value of type AfterStep will render pixmap in many
different ways :
- 125
- Image is SCALED to the size of the widget, and its opacity
is used to set the shape of the widget/window decoration, achieving
non-rectangular window effect.
- 126
- Image is TILED to the size of the widget, and its opacity
is used to set the shape of the widget/window decoration, achieving
non-rectangular window effect.
- 127
- Image is SCALED to the size of the widget.
- 128
- Image is Tiled to the size of the image.
- 129
- Underlying desktop background is tinted/shaded with the
color specified with the second parameter.
- 130
- Underlying desktop background is combined with tiled image,
using "allanon" method - taking average of pixel values.
- 131
- Underlying desktop background is alpha-blended with tiled
image.
- 132
- Underlying desktop background is tinted using pixel values
of the tiled image, as a tint values on per-pixel basis.
- 133
- Each pixel of underlying desktop background has value of
tiled image's pixel added to it.
- 134
- Each pixel of underlying desktop background has value of
tiled image's pixel subtracted from it.
- 135
- Result consists of pixels representing absolute value of
difference between underlying desktop background and tiled image.
- 136
- Underlying desktop background is darkened using luminocity
of the tiled image's pixels.
- 137
- Underlying desktop background is lightened using luminocity
of the tiled image's pixels.
- 138
- Underlying desktop background is "screened" by
the tiled image.
- 139
- Underlying desktop background is "overlayed" by
the tiled image.
- 140
- Underlying desktop background's hue is substituted with the
hue of the tiled image.
- 141
- Underlying desktop background's saturation is substituted
with the saturation of the tiled image.
- 142
- Underlying desktop background's value (in HSV colorspace)
is substituted with the value of the tiled image.
- 143
- Underlying desktop background is "colorized" by
the tiled image.
- 144
- Underlying desktop background is "dissipated" by
the tiled image.
- 149
- Underlying desktop background is tinted/shaded with the
color specified with the second parameter. It differs from 129 so that
desktop background could be both darkened and brightened. If tint color
channel is greater the 7F (127 decimal) - then respective channel of
background will be brightened.
- 150 - 164
- Same as 130-144 but specified image is scaled to the size
of the widget.
- BlurSize
-
FIXME: add proper description here.
- DrawTextBackground [ 0|1 ]
-
Specifies that the area behind text drawn in this style should be cleared to
BackColor . The argument is optional. If the argument is 0, this
option is turned off; if it is omitted or is nonzero, the option is turned
on.
- Font font
-
Specifies the font associated with this style. font copuld beeither a
standard X11 font definition, or a filename of the TrueType font that
could be found in FontPath. To specify the size of the TrueType font - use
format like that : FontName.ttf-Size.
Example :
Font DefaultSans.ttf-14
- ForeColor color
-
Specifies the text color associated with this style. color is color
definition in one of the color formats supported by AfterStep.
- Inherit " style_name "
-
Specifies a MyStyle to inherit options from. Options from
style_name will override previously specified options for this
style. Inherit is a good way to save memory and network bandwidth
if the same BackPixmap is used for several styles, as the pixmap
will only be loaded for the inherited style.
- MyStyle " style_name "
-
- style_option
-
- ~MyStyle
-
Specifies the beginning of a look style definition. The style can be
referred to later by style_name . ~MyStyle ends a look style
definition.
- Overlay
-
FIXME: add proper description here.
- SliceXEnd val
-
When used with scalable BackPixmap it will make image sliced instead scaled.
Which means that its borders will remain unchanged, but center part will
get tiled to fill empty space. SliceXEnd is the left edge of the right
border.
- SliceXStart val
-
When used with scalable BackPixmap it will make image sliced instead scaled.
Which means that its borders will remain unchanged, but center part will
get tiled to fill empty space. SliceXStart is the width of the left
border.
- SliceYEnd val
-
When used with scalable BackPixmap it will make image sliced instead scaled.
Which means that its borders will remain unchanged, but center part will
get tiled to fill empty space. SliceYEnd is the top edge of the bottom
border.
- SliceYStart val
-
When used with scalable BackPixmap it will make image sliced instead scaled.
Which means that its borders will remain unchanged, but center part will
get tiled to fill empty space. SliceYStart is the height of the top
border.
- TextStyle style
-
Specifies the text style associated with this style. style can
be 0, 1, or 2:
0: normal text 1: embossed 3D text 2: sunken 3D text 3: text has shade above
the text 4: text has shade below the text 5: thick embossed 3D text 6:
thick sunken 3D text 7: text is outlined with contrasting color on upper
edge of a glyph. 8: text is outlined with contrasting color on bottom edge
of a glyph. 9: text is outlined with contrasting color all around a glyph.
MyStyle 's are the means to define how widgets (menu items, titlebars, wharf
buttons, Pager desktops, etc. ) should be rendered. It defines widget's
background (solid color, gradient, textured image and/or semitransparent
texture), shape - making widget non-rectangular, text font, text 3D style,
widget's border bevel colors.
All the GUI elements are rendered using consistent approach in every module and
every part of the AfterStep. Interface is build from so called TBars. TBar is
rectangular area that may be focused(hilited) or unfocused and pressed or
unpressed. TBAR STRUCTURE Each TBar has the following structure :
- the background of the TBar, which is defined by MyStyle and state of the bar -
there are two MyStyles assigned to each TBar - one for focused and one for
unfocused state.
- tiles of the TBar. Tiles are smaller features that gets arranged inside the
bar according to its size, alignment, position and order. Tiles could be
static icons ( cannot be pressed ); blocks of buttons - each having two shapes
- pressed and normal; Text labels; Empty space tiles. There could be up to 256
tiles, each residing on one of the cells in 8x8 grid. Several tiles could
reside in single cell, in which case they get superimposed on top of each
other.
- bevel of the TBar. When TBar is rendered all of its tiles are superimposed on
top of its background, and resulting image will have a 3D bevel drawn on it,
using colors from same MyStyle as used for background. Bevel could be switched
off partially or entirely. Respective configuration options has been added
where appropriate. When TBar is pressed - its bevel is inverted. TBAR
RENDERING When TBar is rendered all of its elements gets superimposed on top
of each other using one of 13 blending methods supported by libAfterImage,
with default being simple alphablending. See MyFrame configuration for more
details. This is refrred to as "Composition Method".