< Previous (Actions) - Up - (FAQ) Next >


Themes

This section aims to document the pekwm theme structure, providing enough information to create and modify themes.

Please use the offical pekwm themes as real life examples and base when it comes to making your own theme. The pekwm_theme utility supports a new command which creates an empty theme structure.

Theme Index

Themes can be registered in the pekwm theme index to make them available for use with the pekwm_theme utility.

See the pekwm theme index for details on how to get your theme included.

Theme Directory

Themes are contained in directories with at least a file named theme.

The recommended theme structure, as generated by pekwm_theme new is as follows:

my-theme/          <- directory in which pekwm will look for theme images
  backgrounds/     <- directory in which pekwm_bg will look for images
    dark.png
    light.png
  button-close.png
  theme            <- standard theme variant
  theme-dark       <- dark theme variant
  template         <- template file included by both theme variants

Attributes

Here is the explanation of Attributes names of themes

Attribute Description Example
pixels An integer, amount of pixels. example: "2"
size Pixels vertically times pixels horizontally. example: "2x2"
percent Any percent value from 1 to 100. example: "87"
toggle Sets a value as true (1) or false (0). example: "true"
padding Free pixels from top, free pixels under, free pixels from left, free pixels from right. example: "2 2 2 2"
decorname Name for decoration example: "Default"
colour A colour value in RGB format. example: "#FFFFFF"
imagename Name of the imagefile with an option after the # example: "image.png"
texture Any valid texture example: "Solid #ffffff 4x4
fontstring Defines a font. Chopped to parts by # marks. First the font type (XFT or X11), then the font name, then the text orientation, then shadow offsets. Some fields can be omitted. example: "XFT#Verdana:size=10#Left#1 1"
buttonactions Buttonactions work similar to what you are used to from the mouse config, first mouse button number pressed when this action should happen, then any standard pekwm actions. example: "1" { Actions = "Close" }

Decor names

Any name can be used and applied to windows with autoproperties or the set decor action. The list below includes names with special meaning:

Image options

Textures

Theme structure

Background

Theme support for the root background. This option may not be honoured by pekwm if ThemeBackground is set to false in the Screen section of the configuration file.

Decor

A list of blocks with theme specifications regarding the various types of decorations.

Title

Theming of the frame.

Tab

Theming of the titlebar tabs.

FontColor

Theming of font colours.

Font

Theming of the titlebar fonts.

Separator

Theming of the tab separator.

Buttons

Theming of titlebar buttons.

Right = "Name"

Places the button on the right end of the titlebar.

Left = "Name"

Places the button on the left end of the titlebar.

Border

Theming of the borders.

Focused: borders for focused windows.

UnFocused: borders for unfocused windows.

Harbour

Enables theming of the harbour.

Themes the inside of a menu window.

State

One of Focused, Unfocused and Selected defining the appearance when the menu/submenu is focused, not focused and the menu entry currently selected.

CmdDialog

Themes outlining the inside of a command dialog window.

Dialog

Controls the appearance of the pekwm_dialog utility, used by the pekwm_theme command and the crash dialog.

---------------------------------
| Title (TitleFont, TitleColor) |
|                               |
|         (Background)          |
|                               |
| Message (Font, Text)          |
|                               |
|       [Option] (Button)       |
---------------------------------

Button

Status

Themes the inside of the status window that shows up when moving and resizing windows.

WorkspaceIndicator

Themes the workspace indicator which shows up when switching workspace.


< Previous (Actions) - Up - (FAQ) Next >