Global Define Tags
Table of contents
Purpose
- Required: No
- Type of Change: Feature
Skin maintenance difficulty is compounded when the same <define> appears in multiple skin xml files.
This new feature allows you to place <define> skin elements in the references.xml for use by all skin xml files.
Description of Change
Simply place <define>...</define> tags in the references.xml file and refer to these definitions in any of your skin xml files. The <define> elements typically appear before the first <control> element (not required but likely a good standard) and at the same position in the hierarchy as the <control> elements (<define> and <control> are siblings).
This implementation does not alter the prior implementation of the <define> node. You may still place a <define> node inside the <window> node of an xml skin file. However, if you place the same <define> node in both the references.xml file as well as the skin file for a window definition then the value defined in the skin file will override the value set in the references.xml. This behavior mirrors the present behavior of the references.xml control "template" attributes being overridden by the values defined in skin window file.
Additional Information and References
| Mantis Issue: | 3017 |
|---|---|
| Related xml(s): | references.xml |
| Windows IDs: | |
| Related Wiki Page(s): | Skin Architecture |
| Author: | Marvman |
| Date added: | 2009-25-10 |
XML/Code Samples
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<controls>
<skin>
<width>1366</width>
<height>768</height>
<version>1.0.1.0</version>
</skin>
<define>#screenWidth:1366</define>
<define>#screenHeight:768</define>
<define>#screenTitleTextColor:FFFFFFFF</define>
<define>#timeTextColor:FFFFFFFF</define>
<style Name="smallTitle">
<id>0</id>
<width>220</width>
<font>font10</font>
<textcolor>ffffffff</textcolor>
<shadowAngle>45</shadowAngle>
<shadowDistance>2</shadowDistance>
<shadowColor>ff222222</shadowColor>
</style>
<control>
<description>default image</description>
<type>image</type>
<id>1</id>
<posX>0</posX>
<posY>0</posY>
<width>32</width>
<height>32</height>
<texture>background.png</texture>
<colorkey>0</colorkey>
<colordiffuse>ffffffff</colordiffuse>
<filtered>yes</filtered>
<centered>no</centered>
<keepaspectratio>no</keepaspectratio>
<visible>yes</visible>
</control>
