Enhanced Skinning Library

From TrillWiki

Jump to: navigation, search

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...

Personal tools