Enhanced Skinning Library
From TrillWiki
Contents |
[edit] Introduction
Enhanced Skinning Library is a plugin by eh?one that aims to implement and extend Cerulean's SkinXML skinning language. It has evolved from the buggier and simpler Enhanced Contact List, a project that was started as an experiment to replicate contact list functionality in a layered window environment.
Visit the forum thread for more information.
[edit] SkinXML Features
[edit] Available Features
- Windows
- Contact List
- Message Windows
- Components
- Frames
- Controls
- List Controls
- Buttons
- Resizeable Buttons
- Edit Boxes
- Display Boxes
- Scrollbars
- Topics
- Resize handles
- SkinMath (uses floating point math rather than integer)
[edit] In Progress Features
- Phases
- Containers
- Anchors
- More display and list formatting options
[edit] Language Extensions
- Masks (replaces regions for the most part)
- Shadows & Emoticons available in all text controls: topics, display, edit, list
- Filters (blur, gamma, grayscale, average, saturation, offset, etc) and Filtersets
- Colours can now be named and placed outside of containers (similar to fonts and bitmaps)
- Variables may be skin-defined theough use of optionsets and/or variable tags
- Optionsets
- Bitmapfonts (a la Wasabi)
- SliceBitmap /stixe like background codes
- Background Modes (mode="stretch|tile|inside|outside")
- Snap edges (a work in progress)
- "Desktop source" for capturing the desktop area under the window and applying effects to it
[edit] Creating an ESL or ESL-enabled skin
[edit] Introduction
Since ESL is based on Trillian's SkinXML language, a little knowledge of that will help tremendously in creating an ESL skin. ESL skins are required to have only one file: a skin.xml file. If your Trillian skin contains this file, ESL may try to load it; ESL skins must contain a skin.xml file. A starter XML file will look like so:
<?xml version="1.0" encoding="UTF-8"?>
<trillian>
<window name="Enhanced Contact List" source="myContactList"/>
<prefs>
<control name="myList" type="list">
<!-- List Settings go in here -->
</control>
</prefs>
<component name="myContactList" minx="75" miny="100">
<!-- Background code instead of color tags -->
<color red="0" green="0" blue="0" opacity="75"/>
<icontrol source="myList" name="list">
<rect>
<left num="10" width="0"/>
<right num="10" width="1"/>
<top num="10" height="0"/>
<bottom num="10" height="1"/>
</rect>
</icontrol>
</component>
</trillian>
to be continued...
