1. Smooth GTK Engine 0.5.x
Contents
1.1. Description
Smooth GTK1/GTK2 Theme Engine is a simple theme engine intended to be smooth, fast, and highly configurable, such that it could eventually mimic most, if not all, major theme engines to high degree of acuracy, while still retaining a small footprint.
1.2. Engine Parts
Each engine part is a block of tokens, within curly braces.
name { token = value token2 = value2 }
1.3. Line Part
The line part defines the drawing style of single lines throughout the engine. This applies to such things as menu seperators and
Values for style token:
Value |
Effect |
Description |
flat |
missing |
A flat line, with no depth or definition aside from a plain pixel line. |
smooth |
missing |
Smooth engine's own line style, very similar to XFCE. |
thin |
missing |
A thin line, similar to the ThinIce engine's lines |
1.4. Fill Part
The fill part determines the way basic widget drawing is done.
Value |
Description |
solid |
Draws widgets without a gradient. |
gradient |
Draws widgets with a two-color gradient. Define the two colors with the tokens color1 and color2. The color tokens are defined using hexadecimal, or RGB within curly braces. |
shade |
Draws widgets with the base colour, using coeffiecents to define darker and lighter values. Define the two shade coeficcents with the tokens shade1 and shade2. Range is 0.0 to 2.0. |
All gradient styles also use two tokens to describe the direction of the gradient: hdirection and vdirection. They are defined with one of the following:
Value |
Description |
horizontal |
Draws the gradient in a horizontal direction. |
vertical |
Draws the gradient in a vertical direction. |
fdiagonal, forward_diagonal, forwarddiagonal, ndiagonal, northern_diagonal, northerndiagonal |
Draws the gradient in a northern direction. |
bdiagonal, backward_diagonal, backwarddiagonal, sdiagonal, southern_diagonal, southerndiagonal |
Draws the gradient in a southern direction. |
hdirection |
Used by all horizontal widgets (scrollbars for example). |
vdirection |
Used by vertical widgets (again, scrollbars). |
Often times the fill{} part can be defined within other part blocks, and it will define a particular way of drawing those widgets (for example, define a fill{ style=solid } inside the grip{} block to draw all grips without gradients).
1.5. Edge Part
The edge part defines the appearance of the edges of box widgets. The current styles of edge are defined using a nested part, named line (see below for valid tokens).
1.5.1. Line Part (within an edge part)
Defines the border styles of the edge.
Value |
Effect |
Description |
bevel |
|
A line, drawn with a bevel to it. |
cold |
|
A line style similar to Wonderland's lines. |
flat |
|
A flat line, with no depth or definition aside from a plain pixel line. |
smooth |
|
Smooth engine's own line style, very similar to XFCE. |
standard |
|
Default GTK+ normal line. |
thin |
|
A thin line, similar to the ThinIce engine's lines |
win32 |
|
A line style mimicking the borders of a well-known OS. |
1.6. Check Box Part
Defines the appearance of check buttons.
1.6.1. Style Token
Value |
Effect |
Description |
block |
|
A filled square. |
circle |
|
A filled circle. |
clean |
|
Checkboxes in a manner similar to CleanIce. |
crisscross |
|
A "cross" style mark. |
fast |
|
Small vertical line, and a thinner diagonal line up. |
sloppy |
|
Default GTK+ 2.x check style. |
1.6.2. Motif Token
Boolean token that defines whether the radio buttons appear depressed when "on", and not pressed when "off".
1.6.3. Supported Parts
1.7. Radio Button Part
Defines the appearance of radio buttons.
2. Style Token
Value |
Effect |
circle |
|
diamond |
|
2.0.1. Motif Token
Boolean token that defines whether the radio buttons appear depressed when "on", and not pressed when "off".
2.0.2. Supported Parts
2.1. Arrow Part
Defines the appearance of arrows used on scrollbars and other widgets.
2.1.1. Style Token
Value |
Effect |
default |
|
icegradient |
|
thinice |
|
wonderland |
|
xfce |
|
cleanice |
missing |
2.2. Tab Part
Defines the appearance of tabs.
2.2.1. Style Token
Value |
Effect |
round |
|
square |
|
triangle |
|
2.3. Grip Part
Defines the appearance of grips.
2.3.1. Style Token
Value |
Effect |
Description |
bars_in |
|
Engraved vertical bars |
bars_out |
|
Embossed vertical bars |
buds_in |
|
Small engraved dots that are drawn on slightly different lines. |
buds_out |
|
Small embossed dots that are drawn on slightly different lines. |
dots_in |
|
A fixed number of engraved dots. Uses count and spacing tokens. |
dots_out |
|
A fixed number of embossed dots. Uses count and spacing tokens. |
fixedlines_in |
|
Engraved lines drawn in the center of the grip. Uses count and spacing tokens. |
fixedlines_out |
|
Embossed lines drawn in the center of the grip. Uses count and spacing tokens. |
lines_in |
|
Engraved horizontal lines. |
lines_out |
|
Embossed horizontal lines. |
mac_buds_in |
|
Small engraved dots. Similar to the dots of older Macintosh OS versions. |
mac_buds_out |
|
Small embossed dots. Similar to the dots of older Macintosh OS versions. |
slashes |
|
Angled slashes on the grip. Uses count and spacing tokens. |
smalldots_in |
|
Fixed number of engraved smaller dots. Uses count and spacing tokens. |
smalldots_out |
|
Fixed number of embossed smaller dots. Uses count and spacing tokens. |
none |
missing |
|
2.3.2. Spacing Token
Defines the spacing of the grip elements. Units are in pixels.
2.3.3. Count Token
Defines the number of elements that make up the grip.