And don't worry about this long documentation, it's not as hard as it seems. Maybe you can even skip most of the stuff, look into the demo skin, and use the Properties and List of Screen Elementss.
The mps (MortPlayer Skin) file has generally the structure of a Windows INI file, i.e., there are
Screen elements (sometimes abbreviated as "elements") are everything that can be displayed, i.e. buttons, texts, the playlist and sliders.
Properties (of Elements) are e.g. background color, label, and so on.
With the MortPlayer, the function (e.g. stopping the playback or modifying the volume) is not a property, but defined by the element name. This means, the element "Play" will always start/pause the playback.
Properties are definined in the following syntax:
<element name><property name>=<value>More details are explained later on in the chapter screen elements.
Every value of such an entry is of a certain value type.
Value types are e.g. a color, a filename for an image, a text, etc.
Image parameters are simply the file names of the
images. The images are searched in a subdirectory of the application
which is named like the Skin (without the mpl extension). So if you
Skin is named MySkin.mpl, the images have to be located in "\Program
files\MortPlayer\MySkin" (application path varies with locale settings
and installation data).
Relative subdirectories (e.g. buttons\button1\pressed.gif) are
possible.
Not fitting images are stretched to the element dimensions. But it's better to use fitting images, because this can lead to ugly artifacts.
Before you can use a font, you must define it in this section (including font size and attributes like "bold" or "italic").
But first of all, you must tell the number of defined fonts with
Count=<number>
For each font follows an entry in the following format:
Font<number>=<font name>,<size>,<bold?>,<italics?>whereby <bold?> and <italics?> must be either 1 (on) or 0 (off).
To refer to such font defined here, you just have to tell the number of the font.
For example, the entry "ExitFont=2" would set the font of the "Exit" button to use
the font which is defined here as "Font2".
These "normal" fonts are used at almost all screen elements. Symbols (see SymbolFonts) currently are only used for some buttons. Which ones is marked in the list of elements. If an own label is defined for such a button, the "non-symbol" (i.e. one of this list) font is used.
Before you can use a symbol font, you must define it in this section.
Symbol fonts are used for the symbols on buttons like "Play/Stop" or "Pause".
But first of all, you must tell the number of defined fonts with
Count=<number>
For each font follows an entry in the following format:
Font<number>=<size>Example: "Font1=14".
In former versions, bold and italics could be given optionally. These attributes are ignored since V3.0. Before, the bookdings font was used for symbols, now they are drawn by the program. To implement support for bold and italics wouldn't make up the effort.
To refer to a font defined here, you just have to tell the number of the font.
For example, the entry "PlayFont=2" would set the font of the "Play/Stop" button to use
the font which is defined here as "Font2". (The "Play" button has a symbol, thus, a symbol
font is used.)
Symbols fonts are currently only used for some buttons. Which ones is marked in the list of elements. If an own label is defined, the "non-symbol" font (i.e. from [Fonts]) is used.
(<Number> has to be replaces with a number (1, 2, 3, ...), of course)
For every screen, there has to be a screen section, so if you have two
screens (Screens=2 in [Default] section), there must be a [Screen1] and a [Screen2] section.
To support VGA, landscape, or square screen, you can insert separate sections.
Screenn_VGA describes the VGA version, Screenn_LS means the landscape format, Screenn_square means the square format, Screenn_LS_VGA landscape in VGA resolution, and Screenn_square_VGA square screen in VGA resolution. To define an landscape variant of the first screnn, you have to include a [Screen1_LS] section, which, like [Screen1] contains all necessary data. The "general informations" (see below) will be taken from the corresponding [Screenn] section (i.e., you don't have to tell e.g. the name up to four times).
Note the landscape and square formats are variants, not additional screens. You can switch between landscape and portrait version of one screen simply by rotating the screen (Windows feature). Thus, a [Screenn] section is required, too.
If there's no VGA section, the screen is skaled on such devices. Sometimes the font might occur smaller or bigger, because the font informations can differ between the font sizes (e.g. omitted kerning, serifs, ...).
If there's no data for landscape format, MortPlayer either uses the square screen centered (if it exists) or the device will be switched back to portrait.
As with the [Default] section, there are general informations the the entries for the screen elements:
Name=<String>defines the screen name which is shown on the "Next screen" and "Previous screen" buttons. It's also shown in the setting dialogs. A backslash in the name is replaced by a line break.
Fullscreen=<ON|OFF>is a switch that enables fullscreen mode for this screen. I.e., title and menu bar are hidden.
HideTitle=<ON|OFF>and
HideMenu=<ON|OFF>are working similar to Fullscreen, but only hide the title bar (on top, HideTitle) or the menu bar (on bottom, HideMenu).
AlwaysOnTop=<ON|OFF>does only work for Screens which don't occupy the whole screen, i.e. those, where BackPos=... is given (for more, see there).
The display resolution is usually 240x320 or 480x640 (VGA) resp. 240x240 or 480x480 for square screen devices. The menu and title bar are each 26 (VGA: 52) pixels high. While MortPlayer supports "real VGA" (QVGA sizes on VGA displays), it uses the given background color fill the 26 pixels between the thinner bars and the "default VGA" position, i.e. with "real VGA", the VGA skin will be show "letter boxed". While it's technically possible to use the area between "default VGA" bottom and menu, or more by using "BackPos=0,26,...", you should refrain from it, so your skin will work fine on "unmodified" devices, too.
Examples:
QVGA ("old" screen size) portrait, fullscreen: 240x320
QVGA portrait, as window: 240x268
QVGA portrait, no menu or no title: 240x294
QVGA landscape, as window: 320x188
QVGA square, as window: 240x188
VGA landscape, as window: 640x376
This section defines how the selection dialog looks like. This dialog is shown if you press "Open" or for repeat/shuffle/preset, it the corresponding option is activated.
The rules described in the "screen elements" section apply here, too, except for the following exceptions:
This dialog consists of a title, a list box, and four buttons (Select, Back, Up, and Down). Since for most Skins it's fine enough to fit the colors and graphics, the elements are placed on their default position if the "Pos" property is omitted. While the buttons can be explicitly hidden by setting the position to "-1,-1,0,0", the title and list box must be shown.
If you don't specify a "TitleBack", it's transparent.
"SelBack" uses the color of "Back" as default, if it's not defined itself. In spite to group elements, this only works for the color, not for the other properties.
For the buttons, the "Label" property isn't supported.
To support the landscape format, there's the section [SelScreen_LS]. An explicit support for VGA is not implemented. I think it's enough if the dialog is created in a way that looks fine enough being drawn at a larger scale.
Since V3.3, hiding the title and menu bars is possible. (Fullscreen, HideTitle, HideMenu)
| SelBack | The background |
| SelTitle | The title (the text above the list box) |
| SelList | The list box |
| Scroll | The scroll bars of the list box |
| SelSelect | The "Select" button |
| SelCancel | The "Back" button ("SelBack" was already used for background) |
| SelUp | The "Up" button (uses symbol font) |
| SelDown | The "Down" button (uses symbol font) |
In the Wait section, you can define how the wait box looks like. That's the thing that shows up e.g. at startup, displaying things like "Reading directory structure" and such.
The wait box consists of only one single label named "Wait". The position ("WaitPos=...") is relative to the upper left corner of the display. The background image is set with "WaitBackImg". All properties can be used.
As with [SelScreen], you can specify a [Wait_LS] section for landscape. If it's omitted, the wait screen of [Wait] is shown, but centered to the screen. For VGA devices, the QVGA settings are enlarged.
Please note that this box is shown at startup, too. Thus, it should look nice without a fitting background (like your Screen(s)).
In spite to the [Screen...], [Alarm] and [SelScreen] sections, any defaults in [Default] are ignored.
All screen element entries are in the syntax
<element name><property>=<value>
All possible element names and their properties are in the list of screen elements. The necessary data type is told at the properties, too.
As an example, let's take the Play button, which starts the playback. In the
list of buttons it's listed with the name "Play".
In the list of properties for buttons there's among others the
property "Back", which defines its background color. Additionally, next to the
property stands the data type - for "Back", this is a color definition.
All this combines to a possible entry:
PlayBack=ffff00This will set the background color of the Play button to yellow (yellow = red + green).
For some kinds of elements, some properties can be defined for all
elements of that type. This is done by replacing the name of a single element
with a "group name", which includes all screen elements of a kind.
E.g. for buttons, this is the group name "Btn". This means, you can set the
background color of all buttons very easyly with
BtnBack=<color>
"Pseudo elements" describe alternate states of "usual" elements.
For example, the Play button can operate as Pause (if something is played) and Resume (during a pause). This is signaled to the user with a corresponding symbol (for other elements sometimes labels). If the symbols shouldn't be drawn by the program (e.g. for engraving effects, structures, different colors, ...), you can use the pseudo elements "Pause" and "Paused" to set the images for Pause and Resume.
The pseudo elements are listed in the list of elements, too. They are marked and usually given right below the appropiate "real" element.
As shown, there are different possibilities to set the property of an element.
MortPlayer works in the following order to find the entry that is used.
The first found entry is used, the rest of the list is ignored.
An example:
[Default]
BtnBack=ffffff
[Screen1]
PlayBack=0000ff
By this, all buttons are white, except for the Play button on the first Screen, which is blue.
Here is listed for each element type, which elements exist and which properties are possible.
| Background | elements | properties |
| Buttons | elements | properties |
| Labels | elements | properties |
| Sliders | elements | properties |
| Lists | elements | properties |
| Scroll bars | elements | properties |
In the usual Screens, there is just one element for the background, which is "Back". For the selection screen, it's "SelBack".
| Back | The background |
| SelBack | The background of the selection dialog |
Background images should be in a fitting size. Further informations about the default screen sizes are in the description of the [Screen] sections under "general informations".
Back in the [Default] section is used as default for SelBack. But this only works for the background color, not for the entire element (like with group elements).
The following properties are possible:
| Pos=position | The background location. Usually, you should omit this setting. If given, it defines the position and size of the player window. By this, you can support non default screen sizes or create "popup" windows (e.g. for navigation systems). |
| none=color | The background color. The entry is only "Back" (or "SelBack"), because "(Sel)BackBack" would look quite stupid |
| Img=background | A background image |
In MortPlayer, the function of a button is defined by its name. Thus, for each function there's an own button.
For some buttons, there are "pseudo elements", which can be used to define the images for an alternative state. For example, for "Play" and "Stop" the same button is used. Its function changes depending on whether something is played or not. If you want special effects, like an engaged or different colored button when playing, you have to enter both "PlayImg" and "StopImg". If the Img property of a pseudo element isn't defined, the images of the main element is used also in this state (e.g. "PlayImg" while playing).'P' marks the "pseudo elements". With those, images for an alternate state can be defined.
'L' marks buttons which allow own labels.
'S' marks buttons which use the symbol font by default. If an own label is given (Label=...), a non-symbol font is used.
Buttons with parenthesized names shouldn't be used. They're only for backward compatibility.
| Btn | Group element. A property defined for this element is the default for all buttons | |||
| BtnSymbol | S | Special Group element. Only the "Font" property is supported. It sets the default symbol size (given in pixels, like a font size) for all buttons which use symbols (like Play, Stop, etc.) | ||
| Open | S | L | Shows the "Open" dialog | |
| OpenText | L | Like "Open", but shows a text label instead of the symbol. | ||
| NextScreen | Switches to the next screen (usually labeled with the screen name of the next screen). See also comment! | |||
| PrevScreen | Switches to the previous screen (usually labeled with the screen name of the preceding screen). See also comment! | |||
| SwitchScreen | L | Shows a selection of all screens if there are more than two. If there are only two, the other one is activated. See also comment! | ||
| ChooseSkin | L | Shows the Skin selection (like "Select"->"Switch Skin" in the menu) | ||
| LoadSkin | L | Loads a Skin given with "LoadSkinName" and optionally "LoadSkinScreen". See also comment! | ||
| Shuffle | The shuffle mode button | |||
| Repeat | The repeat mode button | |||
| SwitchSkip | Switches the function of Next, Prev, DirNext, and DirPrev between skipping files or lists. | |||
| SwitchSkipToFile | P | The "SwitchSkip" button in "Skip lists" mode. The only property that works with this pseudo element is "Img". All other properties are taken from "SwitchSkip". | ||
| Changer | Switches between Changer and Playlist mode. | |||
| ChangerPM | P | The Changer/Playlist mode toggle in Playlist Mode. The only property that works with this pseudo element is "Img". All other properties are taken from "Changer". | ||
| Play | S | The play/pause button. | ||
| Pause | S | P | The play button, while something is played (i.e. causes pause). The only property that works with this pseudo element is "Img". All other properties are taken from "Play". | |
| Paused | S | P | The play button, while something is paused (i.e. causes resume). The only property that works with this pseudo element is "Img". All other properties are taken from "Play". | |
| Stop | S | L | The stop button. | |
| Prev | S | The button to skip to the previous track. | ||
| PrevDir | S | P | The "Prev" button when set to skip lists (see SwitchSkip). The only property that works with this pseudo element is "Img". All other properties are taken from "Prev". | |
| Next | S | The button to skip the the next track. | ||
| NextDir | S | P | The "Next" button when set to skip lists (see SwitchSkip). The only property that works with this pseudo element is "Img". All other properties are taken from "Next". | |
| DirPrev | S | Skips to the previous list. | ||
| DirPrevFile | S | P | The "DirPrev" button when set to skip files (see SwitchSkip). The only property that works with this pseudo element is "Img". All other properties are taken from "DirPrev". | |
| DirNext | S | Skips to the next list. | ||
| DirNextFile | S | P | The "DirNext" button when set to skip files (see SwitchSkip). The only property that works with this pseudo element is "Img". All other properties are taken from "DirNext". | |
| FastForward | S | Fast forward (skip by time in settings, defaults to 5 seconds). | ||
| Rewind | S | Rewind (skip back by time in settings, defaults to 5 seconds). | ||
| Effects | Switch presets or show presets list | |||
| EffectsFx | L | Shows the sound effects (temporary preset) | ||
| EffectsEq | L | Shows the equalizer (temporary preset) | ||
| VolumeUp | L | Increases volume | ||
| VolumeDown | L | Decreases volume | ||
| Exit | S | L | Closes the MortPlayer | |
| Minimize | S | L | "Minimizes" (hides) the MortPlayer | |
| PowerOff | L | Stops playing and turns off device | ||
| Menu | L | Shows the popup menu | ||
| Favorites | L | Shows the favorites management | ||
| Settings | L | Shows the settings | ||
| Sleep | Shows the settings for sleep timer and alarm clock. The label countains alarm clock time and state, as well as the power off countdown if it's active. So keep some space for it... | |||
| Snooze | L | Switches off the deivice for a selectable timespan and then alerts again | ||
| AddBookmark | L | Adds a bookmark | ||
| Bookmarks | L | Shows the bookmarks management | ||
| Streams | L | Shows the streams management | ||
| Presets | L | Shows the preset management | ||
| Add | L | The "+" button (add to playlist) | ||
| Remove | L | The "-" button (remove from playlist) | ||
| MoveSelUp | S | Moves up the selection bar in the playlist | ||
| MoveSelDown | S | Moves down the selection bar in the playlist | ||
| DeleteFile | L | Deletes the selected file (both from playlist and file system) | ||
| Top | S | L | The "arrow up" button (move to top in playlist) | |
| Up | S | L | The "arrow up" button (move up in playlist) | |
| Down | S | L | The "arrow down" button (move down in playlist) | |
| Bottom | S | L | The "arrow up" button (move to bottom in playlist) | |
| SaveAs | L | Save the current playlist into a file whose name and position has to be entered | ||
| Save | L | Save the current playlist (no filename query if an .mpl list was modified) | ||
| SelSelect | The "Select" button of the selection dialog. Only possible in SelScreen section. | |||
| SelCancel | The "Back" button of the selection dialog. Only possible in SelScreen section. | |||
| SelUp | S | The "Up" button of the selection dialog. Only possible in SelScreen section. | ||
| SelDown | S | The "Down" button of the selection dialog. Only possible in SelScreen section. | ||
| (Directories) | L | like "Favorites" | ||
| (PlayDir) | L | Like "OpenText" | ||
| (SelectDir) | P | Not supported (PlayDir in Changer Mode) | ||
| (ShufflePlay) | L | Plays all files in favorites shuffled in one playlist | ||
| (SortPlay) | L | Plays all files in favorites sorted in one playlist | ||
| (SwitchSkipPlayDirs) | P | Not supported (SwitchSkip in Playlist Mode) | ||
| (Pause) | In former versions, Pause was a "real" button, while "Stop" wasn't. If there's a "PausePos" entry, all "Pause" informations are used for the Stop button (for backward compatibilty) |
All elements of the type "Button" can have the following properties:
'G' marks properties which can be defined as defaults for the group element "Btn".
'S' marks properties which can be defined as defaults for the group element "BtnSymbol".
'P' marks properties which are allowed for the pseudo elements "ChangerPM", "SwitchSkipToFile", "SwitchSkipPlayDirs", "Pause", "Paused", "PrevDir", "NextDir", "DirPrevFile", "DirNextFile", and "SelectDir".
'T' marks propierties, where the "transparent" value is possible.
| Pos=position | The position of the button | ||||
| Back=color | G | T | The background color | ||
| Border=color | G | The border color | |||
| Text=color | G | The text color when the button is enabled | |||
| TextPressed=Color | G | The text color when the buttonn is pressed (if omitted, the Border color is used) | |||
| TextDisabled=color | G | The text color when the button is disabled | |||
| Font=font index | G | S | The font for the button text. | ||
| SymbolFont=font index | G | Only for the group element "Btn". "BtnSymbolFont" sets the default font for all buttons with symbols (Play, Pause, etc.) | |||
| Img=default,pressed,disabled | P | Images for the default, pressed and disabled state | |||
| ImgPos=position | The position of the image, relative to the button area (must be inside the button area) | ||||
| ShowLabel=switch | G | Only used if images or transparency are/is used. If you set this to "off", the text isn't drawn by the program. You shouldn't use this for buttons with varying labels, such as Play/Stop, Pause, and Repeat mode unless you also define images for the "pseudo buttons" | |||
| ShortLabel=switch | G | Only available for Preset, Shuffle, and Repeat buttons. If enabled, short labels are used, e.g. "R trck" instead of "Repeat track >>". | |||
| LabelPos=position | The position of the label text, relative to the button area (everything outside of the button area will be clipped) | ||||
| Label=string | The label text. Only supported for buttons which are marked with "L" in the element list. | ||||
| Align=left|center|right | G | Alignment of the text. |
Labels with parenthesized names shouldn't be used. They're only for backward compatibility.
| Label | Group name. A property defined for this element is the default for all labels |
| TrackName | The track name (either from tag information, or, if not available, the file name without path and extension) |
| TrackFile | The file name without path and extension (shouldn't be shown on a screen with TrackName, since it looks silly if the file name is shown double for files without tag informaitons) |
| TrackArtist | The artist (tag info) |
| TrackAlbum | The album (tag info) |
| TrackYear | The release year (tag info) |
| TrackNumber | The track number (tag info), preceded with "Track #" (english) or "Lied Nr. " (german). |
| TrackCombination | Any combination of track title, artist and album (for details, look at the description for the "label" property). If there are no informations in the file, the file name is displayed. |
| TrackTime | The time already played. If you show this field, the time will not be displayed in the position slider. |
| TrackLength | The length of the current track. |
| TrackChannels | Channels of the track (e.g. 2 channels). |
| TrackBitrate | Bitrate of the track (e.g. 192kbs). Will be wrong and not modified for VBR! |
| TrackSamplingRate | Sampling rate of the track (e.g. 44100). |
| TrackPath | The path where the track is located in (only the directory name itself, e.g. "My music" for "My documents\My music". |
| PlaylistName | Either "User defined playlist" or the directory name. This is used in the default skin above the playlist. |
| NextTrack | Displays the file name of the upcoming track. |
| VolumeLabel | Shows the volume in percent, handy in combination with VolumeUp/VolumeDown buttons |
| PreampLabel | Shows the preamp in percent |
| Clock | A clock (HH:MM, 24 hours) |
| Cover | A cover (cover.jpg/.png im Verzeichnis oder playlistname.jpg/.png für Playlists). An image (CoverImg) or the background (CoverBack=transparent) as well as the label text ("No cover available") are only shown if no cover is found. The text can be supressed with "CoverShowLabel=0" in this case, too. |
| SelTitle | The title in the selection dialog. Only possible in SelScreen section. |
| Wait | The wait display. Only possible in Wait section. |
| (TrackPathFile) | Obsolete for "PlaylistName" |
All elements of the type "Label" can have the following properties:
'G' marks properties which can be defined as defaults for the group element "Label".
'T' marks propierties, where the "transparent" value is possible.
| Pos=position | The position of the label | ||
| Back=color | G | T | The background color |
| Border=color | G | The border color (transparent = no border) | |
| Text=color | G | The text color | |
| Font=font index | G | The font for the text. | |
| Img=background | A background image | ||
| Label=string | For the elements TrackYear, TrackNumber, and NextTrack: Sets the prefix, e.g. "Year: " or "Track No.: " For the element TrackCombination: Defines what parts and how the tag informations are shown. The syntax is "separator|field|field|...". The "separator" is put between the fields if they aren't empty. For the fields, there are the placeholders %track% (song name), %artist%, and %album%. If there's no tag information for a placeholder, the whole field is omitted. Line breaks can be used with "\n" (without quotes). Example: "_|%track%|(%album%)|by %artist%" will result in "Song name_by Singer" if no album name was given in the tag informations. Default is "\n|%track%|%artist%". With all other labels, this property is ignored. | ||
| LabelPos=position | The position of the text, relative to the label area | ||
| Align=left|center|right | G | Alignment of the text. Needs V2.1 |
| Slider | Group name. A property defined for this element is the default for all sliders |
| Position | The track position |
| Volume | The volume |
| Preamp | The preamp |
| Battery | Battery meter |
| PhoneSignal | Phone signal strength (only shown on PhoneEdition devices) |
All elements of the type "Slider" can have the following properties:
'G' marks properties which can be defined as defaults for the group element "Slider".
| Pos=position | The position of the slider | |
| Back=color | G | The background color. Transparency is possible. |
| Prog=color | G | The background color for the progress area. Transparency is possible. |
| Border=color | G | The border color. Transparency is possible. |
| TextBack=color | G | The background color for the label. If not given, it's transparent, i.e., the progress or background color/image is visible behind the text. You should use this property only if the contrast would be to bad without. |
| Text=color | G | The label text color |
| Direction=right|up|left|down | G | The direction in which the progress "grows". For example, if "up" is chosen, the bottom is "nothing" (silent, track start, resp. battery empty) and top "everything" (loud, track end, battery full/loading) |
| ShowLabel=switch | G | If you set this
to "off", the text isn't drawn by the program. This is nice for volume
sliders which show what they do (e.g. ascending graphics), but you
shouldn't switch off the progress text, because this will hide the
playing time As a "special feature", you can set "%" (e.g. "VolumeShowLabel=%"), which'll show the current percentage of the slider position. There's a special handling for the position slider: PositionShowLabel hides only the standby text ("Track.Pos."). To hide the time display, use PositionShowTime=FALSE or use a TrackTime label in the Screen. |
| Font=font index | G | The font for the text. |
| Img=background,progress[,grip[,grip pressed[, grip disabled]]] | Images
for background and progress. The progress image is shown only to the
corresponding left part. In between the progress and the background,
optionally a "grip" is shown. The grip image must be as high as the slider, the width doesn't matter as long as there's room for it to move... (Or vice versa, if you use up or down as direction) If you don't want to use a grip, just omit the data, e.g. "VolumeImg=back.png,prog.png". It's similar with special images for pressed or disabled grips - if you omit them, the default grip is used. If you don't know what I mean, just look at the volume images and how they work in the demo Skin... I know this doesn't enable all the nice effects possible with WinAmp, but it saves a lot of memory (images!) and work for both you (just two or three images to create...) and the program (well, and me... ;)). |
| List | Group name. A property defined for this element is the default for all lists |
| Playlist | The playlist |
| SelList | The selection list. Only possible in SelScreen section. |
The possible properties for liste are listed here
All elements of the type "List" can have the following properties:
'G' marks properties which can be defined as defaults for the group element "List".
'T' marks propierties, where the "transparent" value is possible.
| Pos=position | The position of the list | ||
| Back=color | G | T | The background color |
| Border=color | G | T | The border color |
| Text=color | G | The text color for nonselected items | |
| SelText=color | G | The text color for selected items | |
| SelBack=color | G | T | The background color for selected items. |
| Font=font index | G | The font for the items. The Font property of the playlist can be overwritten by the user | |
| Img=background | A background image. Scroll bars and selection bar will be drawn over it. |
| Scroll | The scroll bars of the list box. |
The possible properties for scroll bars are listed here
There's only one Element of the type "Scroll Bars", which is "Scroll". It supports the following properties:
'T' marks propierties, where the "transparent" value is possible.
| Width=number | The width of the vertical scroll bar (should be an odd number, else the arrow might look funny) | |
| Height=number | The height of the horizontal scroll bar (should be an odd number, else the arrow might look funny) | |
| Back=color | T | The background color (the slider area) |
| Border=color | T | The border color (should be the same as the list border) |
| Box=color | T | The color of the position box |
| BoxBorder=color | The border color of the position box. This color is also used for the box itself when it is dragged. | |
| Arrow=color | The color for the arrows | |
| ArrowPressed=color | The color for pressed arrows (if omitted, ArrowBox is used) | |
| ArrowBox=color | The color for the box around the arrows | |
| ArrowUpImg=default,pressed | Images for the up arrow. Size is ScrollBarWidth x ScrollBarWidth | |
| ArrowDownImg=default,pressed | Images for the down arrow. Size is ScrollBarWidth x ScrollBarWidth | |
| ArrowLeftImg=default,pressed | Images for the left arrow. Size is ScrollBarHeight x ScrollBarHeight | |
| ArrowRightImg=default,pressed | Images for the right arrow. Size is ScrollBarHeight x ScrollBarHeight |