Text2skin-Skin Referenz

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(<image>)
Zeile 1: Zeile 1:
 +
{{Box Hinweis|
 +
Diese Dokumentation gilt für die kommende "1.0" Version des [[text2skin-plugin]]s.
 +
}}
 +
{{Box Warnung|
 +
Dies ist nur eine erste Fassung. Sie ist weder vollständig noch Fehlerfrei! --[[Benutzer:Monroe|Monroe]] 13:27, 13. Dez 2004 (CET)
 +
}}
 +
Dies ist eine Kurzreferenz des auf XML-basierenden Skin-Formates des [[text2skin-plugin|text2skin]] Plugins.
  
 +
==Elemente==
 +
===<skin>===
 +
Dies ist das Wurzelelement des Skins. Alle weiteren Elemente liegen verschachtelt in diesem.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!Beschreibung
 +
|-
 +
| version    || VERSION              || Version des Skin-Formates (fester Wert, aktuell "1.0")
 +
|-
 +
| name      || NAME                  || Name der im VDR-OSD erscheinen soll
 +
|-
 +
| screenBase ||
 +
* relative
 +
* absolute
 +
| Kennzeichnet, ob das Skin relativ (relative) zum VDR-Setup oder absolut (absolute) auf einer Fläche von 720x576 zeichnen soll
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<?xml version="1.0"?>
 +
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
 +
  .
 +
  .
 +
  .
 +
</skin>
 +
|}
 +
 +
===<display>===
 +
Das OSD von VDR hat mehrere "Darstellungen". Die wichtigsten wären das Hauptmenu und die Kanalinfo-Anzeige. Für jeden Bereich, der mit dem Skin gestaltet werden soll muss ein '''<display>''' Container erstellt werden.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| id ||
 +
* channelInfo
 +
* channelSmall
 +
* volume
 +
* message
 +
* replayInfo
 +
* replaySmall
 +
* menu
 +
| Bezeichnet den Typ der OSD-Darstellung
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<?xml version="1.0"?>
 +
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
 +
  <display id="replayInfo">
 +
    .
 +
    .
 +
    .
 +
  </display>
 +
</skin>
 +
|}
 +
 +
===<window>===
 +
Jeder Display-Container beginnt mit der Vorgabe von Zeichenflächen, auf denen dann die Elemente plaziert werden können.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1  || ZAHL || Position der linken Kante
 +
|-
 +
| y1  || ZAHL || Position der oberen Kante
 +
|-
 +
| x2  || ZAHL || Position der rechten Kante
 +
|-
 +
| y2  || ZAHL || Position der unteren Kante
 +
|-
 +
| bpp || ZAHL || Farbtiefe des Zeichenfläche
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<?xml version="1.0"?>
 +
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
 +
  <display id="replayInfo">
 +
    <window x1="0" x2="619" y1="-113" y2="-84" bpp="4" />
 +
    <window x1="20" x2="99" y1="-83" y2="-44" bpp="4" />
 +
      .
 +
      .
 +
      .
 +
  </display>
 +
</skin>
 +
|}
 +
 +
===<rectangle>===
 +
Zeichnet ein gefülltes Rechteck.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1                                      || ZAHL          || Position der linken Kante
 +
|-
 +
| y1                                      || ZAHL          || Position der oberen Kante
 +
|-   
 +
| x2                                      || ZAHL          || Position der rechten Kante
 +
|-
 +
| y2                                      || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition                              || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| [[Text2skin-Skin_Referenz#color|color]] || STRING        || Farbe des Rechtecks
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<rectangle x1="20" x2="99" y1="-83" y2="-44" color="#00000000" />
 +
|}
 +
 +
===<ellipse>===
 +
Zeichnet einen (Teil-)Kreis, oder eine Ellipse.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1                                      || ZAHL          || Position der linken Kante
 +
|-
 +
| y1                                      || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2                                      || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2                                      || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition                              || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| [[Text2skin-Skin_Referenz#color|color]] || STRING        || Farbe der Ellipse
 +
|-
 +
| [[Text2skin-Skin_Referenz#arc|arc]]    || ZAHL          || Kreisbogen
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<ellipse x1="5" y1="7" x2="14" y2="15" color="GraphLight" condition="{IsMenuCurrent}"/>
 +
|}
 +
 +
===<slope>===
 +
Eine Kurve.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1                                      || ZAHL          || Position der linken Kante
 +
|-
 +
| y1                                      || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2                                      || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2                                      || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition                              || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| [[Text2skin-Skin_Referenz#color|color]] || STRING        || Farbe der Kurve
 +
|-
 +
| [[Text2skin-Skin_Referenz#arc|arc]]    || ZAHL          || Richtung
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
;-(
 +
|}
 +
 +
===<image>===
 +
Anzeige eines Bildes
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x                                        || ZAHL          || Position der linken Kante (keine Skalierung)
 +
|-
 +
| y                                        || ZAHL          || Position der oberen Kante (keine Skalierung)
 +
|-
 +
| x1                                        || ZAHL          || Position der linken Kante (wenn skaliert werden soll)
 +
|-
 +
| y1                                        || ZAHL          || Position der oberen Kante (wenn skaliert werden soll)
 +
|-
 +
| x2                                        || ZAHL          || Position der rechten Kante (wenn skaliert werden soll)
 +
|-
 +
| y2                                        || ZAHL          || Position der unteren Kante (wenn skaliert werden soll)
 +
|-
 +
| condition                                || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| alpha                                    || ZAHL          || Überlagerte [[Text2skin-Skin erstellen#Farben|Transparenz]] von 0-255
 +
|-
 +
| colors                                    || ZAHL          || Maximale Anzahl der Farben im Ergebnisbild (wenn skaliert werden soll)
 +
|-
 +
| [[Text2skin-Skin_Referenz#color|color]]  || STRING        || Austauschfarbe für Farbe 1 des Bildes
 +
|-
 +
| [[Text2skin-Skin_Referenz#color|bgColor]] || STRING        || Austauschfarbe für Farbe 0 des Bildes
 +
|-
 +
| path                                      || STRING/TOKEN  || Bild-datei
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<image x="0" y="-70" path="Aluminium_volumebar.png" />
 +
<image x="585" y="138" condition="{CanScrollUp}" path="symbols/arrowup.xpm" color="#AFFFFF00" />
 +
|}
 +
 +
===<text>===
 +
Ein statischer oder zusammengesetzter Text.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1        || ZAHL          || Position der linken Kante
 +
|-
 +
| y1        || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2        || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2        || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| color    || STRING        || Textfarbe
 +
|-
 +
| align    ||
 +
* center
 +
* right
 +
* left
 +
| Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
 +
|-
 +
| font      || STRING        || Name des [[Text2skin-Skin erstellen#Fonts|Fonts]]
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<text x1="42" x2="571" y1="-113" y2="-86" color="#FF000000" font="Osd">{ReplayTitle}</text>
 +
|}
 +
 +
===<marquee>===
 +
Alternative zu [[#<text>|<text>]]. Scrollt überlange Texte hin und her.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1        || ZAHL          || Position der linken Kante
 +
|-
 +
| y1        || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2        || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2        || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| color    || STRING        || Textfarbe
 +
|-
 +
| delay    || ZAHL          ||
 +
|-
 +
| align    ||
 +
* center
 +
* right
 +
* left
 +
| Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
 +
|-
 +
| font      || STRING        || Name des [[Text2skin-Skin erstellen#Fonts|Fonts]]
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
;-(
 +
|}
 +
 +
===<blink>===
 +
Alternative zu [[#<text>|<text>]]. Stellt Text blinkend dar.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1        || ZAHL          || Position der linken Kante
 +
|-
 +
| y1        || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2        || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2        || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| color    || STRING        || Textfarbe
 +
|-
 +
| blinkColor|| STRING        || Highlightfarbe
 +
|-
 +
| delay    || ZAHL          || Pause zwischen Umschalten
 +
|-
 +
| align    ||
 +
* center
 +
* right
 +
* left
 +
| Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
 +
|-
 +
| font      || STRING        || Name des [[Text2skin-Skin erstellen#Fonts|Fonts]]
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
;-(
 +
|}
 +
 +
===<scrolltext>===
 +
Ein mehrzeiliger Text.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1        || ZAHL          || Position der linken Kante
 +
|-
 +
| y1        || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2        || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2        || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| color    || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] des Textes
 +
|-
 +
| align    ||
 +
* center
 +
* right
 +
* left
 +
| Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
 +
|-
 +
| font      || STRING        || Name des [[Text2skin-Skin erstellen#Fonts|Fonts]]
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<scrolltext x1="24" y1="138" y2="-72" x2="583" font="helmetr.ttf:20" color="#AFFFFF00">
 +
{PresentShortText}
 +
{PresentDescription}
 +
</scrolltext>
 +
|}
 +
 +
===<scrollbar>===
 +
Eine Scrollleiste.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1        || ZAHL          || Position der linken Kante
 +
|-
 +
| y1        || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2        || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2        || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| color    || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] des Balkens
 +
|-
 +
| bgColor  || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] des Hintergrunds
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<scrollbar x1="585" x2="608" y1="162" y2="-110" color="#AFFFFF00" bgColor="#8F2B1B9E" />
 +
|}
 +
 +
===<progress>===
 +
Eine Fortschrittsanzeige
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1        || ZAHL          || Position der linken Kante
 +
|-
 +
| y1        || ZAHL          || Position der oberen Kante
 +
|-
 +
| y2        || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2        || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| color    || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] des Balkens
 +
|-
 +
| bgColor  || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] des Hintergrunds
 +
|-
 +
| mark      || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] der Schnittmarkierungen
 +
|-
 +
| active    || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] des aktiven Bereiches
 +
|-
 +
| keep      || STRING        || [[Text2skin-Skin erstellen#Farben|Farbe]] des Bereiches der nicht herausgeschnitten wird
 +
|-
 +
| current  || ZAHL/TOKEN    || Aktueller Indexwert
 +
|-
 +
| total    || ZAHL/TOKEN    || Maximaler Indexwert
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<progress x1="19" x2="556" y1="-17" y2="-7" color="#AF000000" current="{VolumeCurrent}" total="{VolumeTotal}" />
 +
|}
 +
 +
===<block>===
 +
Ein '''<block></block>''' fasst mehrere Objekte zusammen
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| condition || FUNKTION || Komplexe Bedingung
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<block condition="file('logos/{ChannelName}.mng')">
 +
  <rectangle x1="4" x2="67" y1="4" y2="51" color="#AF000000" />
 +
  <image x="0" y="0" path="logos/{ChannelName}.mng" />
 +
</block>
 +
|}
 +
 +
===<list>===
 +
Definiert die Liste im Menü.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| x1        || ZAHL          || Position der linken Kante
 +
|-
 +
| y1        || ZAHL          || Position der oberen Kante
 +
|-   
 +
| y2        || ZAHL          || Position der rechten Kante
 +
|-
 +
| x2        || ZAHL          || Position der unteren Kante
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<list x1="24" y1="62" x2="569" y2="-82">
 +
  <item height="28"/>
 +
  <text x1="25" x2="569" y1="3" y2="27" color="#AF00FFFF" font="Sml">{MenuGroup}</text>
 +
  <text x1="25" x2="569" y1="3" y2="27" color="#AFFFFFFF" font="Sml">{MenuItem}</text>
 +
  <rectangle x1="0" x2="579" y1="0" y2="27" color="#FF2B1B9E" condition="{IsMenuCurrent}" />
 +
  <text x1="22" x2="569" y1="0" y2="27" color="#AFFFFFFF" font="Osd">{MenuCurrent}</text>
 +
  <text x1="0" x2="25" y1="0" y2="27" color="#AFFFFFFF" font="Osd">-&gt;</text>
 +
</list>
 +
|}
 +
 +
===<item>===
 +
Definiert ein Item der Liste.
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Attribut
 +
!width=20%|Wert
 +
!width=80%|Beschreibung
 +
|-
 +
| condition || FUNKTION/TOKEN || Komplexe Bedingung
 +
|-
 +
| height    || ZAHL          || Höhe eines Listeneintrags
 +
|- bgcolor=#efefef
 +
!Beispiel
 +
|
 +
|
 +
|-
 +
|colspan=3|
 +
<list x1="24" y1="62" x2="569" y2="-82">
 +
  <item height="28" />
 +
  <text x1="25" x2="569" y1="3" y2="27" color="#AF00FFFF" font="Sml">{MenuGroup}</text>
 +
  <text x1="25" x2="569" y1="3" y2="27" color="#AFFFFFFF" font="Sml">{MenuItem}</text>
 +
  <rectangle x1="0" x2="579" y1="0" y2="27" color="#FF2B1B9E" condition="{IsMenuCurrent}" />
 +
  <text x1="22" x2="569" y1="0" y2="27" color="#AFFFFFFF" font="Osd">{MenuCurrent}</text>
 +
  <text x1="0" x2="25" y1="0" y2="27" color="#AFFFFFFF" font="Osd">-&gt;</text>
 +
</list>
 +
|}
 +
 +
==Token==
 +
===Allgemein===
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Token
 +
!width=20%|Bemerkung
 +
!width=80%|Beschreibung
 +
|-
 +
| DateTime              || (s.h. "man strftime")            ||
 +
|}
 +
 +
===Channel Display===
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Token
 +
!width=20%|Bemerkung
 +
!width=80%|Beschreibung
 +
|-
 +
| ChannelNumber          ||                                  ||
 +
|-
 +
| ChannelName            ||                                  ||
 +
|-
 +
| ChannelShortName      ||                                  ||
 +
|-
 +
| ChannelBouquet        ||                                  ||
 +
|-
 +
| ChannelPortal          ||                                  ||
 +
|-
 +
| ChannelSource          ||                                  ||
 +
|-
 +
| PresentStartDateTime  || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentVPSDateTime    || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentEndDateTime    || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentDuration        || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentProgress        || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentRemaining      || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentTitle          || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentShortText      || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| PresentDescription    || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| FollowingStartDateTime ||                                  ||
 +
|-
 +
| FollowingVPSDateTime  ||                                  ||
 +
|-
 +
| FollowingEndDateTime  ||                                  ||
 +
|-
 +
| FollowingDuration      ||                                  ||
 +
|-
 +
| FollowingTitle        ||                                  ||
 +
|-
 +
| FollowingShortText    ||                                  ||
 +
|-
 +
| FollowingDescription  ||                                  ||
 +
|-
 +
| ButtonRed              || (* auch in [[#Menu Display]], [[#Replay Display]])    || 
 +
|-
 +
| ButtonGreen            || (* auch in [[#Menu Display]], [[#Replay Display]])    || 
 +
|-
 +
| ButtonYellow          || (* auch in [[#Menu Display]], [[#Replay Display]])    || 
 +
|-
 +
| ButtonBlue            || (* auch in [[#Menu Display]], [[#Replay Display]])    || 
 +
|-
 +
| Language              ||                                  ||
 +
|-
 +
| HasTeletext            ||                                  ||
 +
|-
 +
| HasMultilang          ||                                  ||
 +
|-
 +
| HasDolby              ||                                  ||
 +
|-
 +
| IsEncrypted            ||                                  ||
 +
|-
 +
| IsRadio                ||                                  ||
 +
|-
 +
| IsRecording            ||                                  ||
 +
|-
 +
| HasVPS                || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| HasTimer              || (* auch in [[#Menu Display]])    ||
 +
|-
 +
| IsRunning              || (* auch in [[#Menu Display]])    ||
 +
|}
 +
 +
===Volume Display===
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Token
 +
!width=20%|Bemerkung
 +
!width=80%|Beschreibung
 +
|-
 +
| VolumeCurrent          ||                                  ||
 +
|-
 +
| VolumeTotal            ||                                  ||
 +
|-
 +
| IsMute                ||                                  ||
 +
|}
 +
 +
===Message Display===
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Token
 +
!width=20%|Bemerkung
 +
!width=80%|Beschreibung
 +
|-
 +
| Message                ||                                  ||
 +
|-
 +
| MessageStatus          ||                                  ||
 +
|-
 +
| MessageInfo            ||                                  ||
 +
|-
 +
| MessageWarning        ||                                  ||
 +
|-
 +
| MessageError          ||                                  ||
 +
|}
 +
 +
===Replay Display===
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Token
 +
!width=20%|Bemerkung
 +
!width=80%|Beschreibung
 +
|-
 +
| ReplayTitle            ||                                  ||
 +
|-
 +
| ReplayPositionIndex    ||                                  ||
 +
|-
 +
| ReplayDurationIndex    ||                                  ||
 +
|-
 +
| ReplayPrompt          ||                                  ||
 +
|-
 +
| IsPlaying              ||                                  ||
 +
|-
 +
| IsFastForward          ||                                  ||
 +
|-
 +
| IsFastRewind          ||                                  ||
 +
|-
 +
| IsSlowForward          ||                                  ||
 +
|-
 +
| IsSlowRewind          ||                                  ||
 +
|-
 +
| IsPausing              ||                                  ||
 +
|-
 +
| ReplayPosition        ||                                  ||
 +
|-
 +
| ReplayDuration        ||                                  ||
 +
|-
 +
| ReplayRemaining        ||                                  ||
 +
|-
 +
| ReplayMode            ||                                  ||
 +
|-
 +
| ButtonRed              || (* auch in [[#Channel Display]], [[#Menu Display]]) ||
 +
|-
 +
| ButtonGreen            || (* auch in [[#Channel Display]], [[#Menu Display]]) ||
 +
|-
 +
| ButtonYellow          || (* auch in [[#Channel Display]], [[#Menu Display]]) ||
 +
|-
 +
| ButtonBlue            || (* auch in [[#Channel Display]], [[#Menu Display]]) ||
 +
|}
 +
 +
===Menu Display===
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=20%|Token
 +
!width=20%|Bemerkung
 +
!width=80%|Beschreibung
 +
|-
 +
| MenuTitle              || Attribut: "clean"                ||
 +
|-
 +
| MenuGroup              ||                                  ||
 +
|-
 +
| IsMenuGroup            ||                                  ||
 +
|-
 +
| MenuItem              ||                                  ||
 +
|-
 +
| IsMenuItem            ||                                  ||
 +
|-
 +
| MenuCurrent            ||                                  ||
 +
|-
 +
| IsMenuCurrent          ||                                  ||
 +
|-
 +
| MenuText              || Attribut: "clean"                ||
 +
|-
 +
| ButtonRed              || (* auch in [[#Channel Display]], [[#Replay Display]]) ||
 +
|-
 +
| ButtonGreen            || (* auch in [[#Channel Display]], [[#Replay Display]]) ||
 +
|-
 +
| ButtonYellow          || (* auch in [[#Channel Display]], [[#Replay Display]]) ||
 +
|-
 +
| ButtonBlue            || (* auch in [[#Channel Display]], [[#Replay Display]]) ||
 +
|-
 +
| CanScrollUp            ||                                  ||
 +
|-
 +
| CanScrollDown          ||                                  ||
 +
|-
 +
| PresentStartDateTime  || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentVPSDateTime    || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentEndDateTime    || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentDuration        || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentProgress        || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentRemaining      || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentTitle          || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentShortText      || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| PresentDescription    || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| HasVPS                || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| HasTimer              || (* auch in [[#Channel Display]]) ||
 +
|-
 +
| IsRunning              || (* auch in [[#Channel Display]]) ||
 +
|}
 +
 +
==Funktionen==
 +
===not===
 +
Negierung einer Funktion.
 +
not(equal({PresentStartDateTime},{PresentVPSDateTime}))
 +
 +
===and===
 +
Wahr, wenn alle Parameter wahr sind.
 +
and({CanScrollUp},{CanScrollDown})
 +
 +
===or===
 +
Wahr, wenn mindestens ein Parameter wahr ist.
 +
or({CanScrollUp},{CanScrollDown})
 +
 +
===equal===
 +
Wahr, wenn beide Parameter gleich sind.
 +
equal('Kanäle', trans('Channels'))
 +
 +
===file===
 +
Liefert den Parameter zurück, wenn die dort angegebene Datei existiert.
 +
file('logos/{ChannelName}.png')
 +
 +
===trans===
 +
Liefert die Übersetzung (nach i18n) des Parameters; falsch, wenn keine Übersetzung gefunden wurde.
 +
equal('Kanäle', trans('Channels'))
 +
 +
==Attribute==
 +
===arc===
 +
{| border=1 cellpadding=2 cellspacing=0 width=100% style="border-collapse:collapse;"
 +
|- bgcolor=#efefef
 +
!width=10%|Attribut
 +
!width=10%|Wert
 +
!width=40%|Bedeutung
 +
!width=40%|
 +
|-
 +
| arc  || 0      || Bei ellipse: volle Ellipse      || Bei slope: horizontal, steigend, unten
 +
|-
 +
|      || 1      || Bei ellipse: erster Quadrant    || Bei slope: horizontal, steigend, oben
 +
|-
 +
|      || 2      || Bei ellipse: zweiter Quadrant  || Bei slope: horizontal, fallend, unten
 +
|-
 +
|      || 3      || Bei ellipse: dritter Quadrant  || Bei slope: horizontal, fallend, oben
 +
|-
 +
|      || 4      || Bei ellipse: vierter Quadrant  || Bei slope: vertikal, steigend, rechts
 +
|-
 +
|      || 5      || Bei ellipse: rechte Hälfte      || Bei slope: vertikal, steigend, links
 +
|-
 +
|      || 6      || Bei ellipse: obere Hälfte      || Bei slope: vertikal, fallend, rechts
 +
|-
 +
|      || 7      || Bei ellipse: linke Hälfte      || Bei slope: vertikal, fallend, links
 +
|-
 +
|      || 8      || Bei ellipse: untere Hälfte      ||
 +
|-
 +
|      || -1..-8 || Bei ellipse: s.o., invertiert  ||
 +
|}
 +
 +
===color===
 +
Farben werden im RGB-Format mit Transparenz angegeben. Also etwa
 +
color="#AARRGGBB"
 +
Farben können auch als symbolischer Wert angegeben werden, welcher in der .colors-Datei des Skins aufgelöst wird. Z.B.
 +
color="MenuTextFg"
 +
 +
* A = Alphawert (eigentlich Deckkraft, oft auch Transparenz)
 +
* R = Rotwert
 +
* G = Grünwert
 +
* B = Blauwert
 +
 +
Ein paar Beispiele
 +
        AARRGGBB
 +
color="#00000000" ''= Schwarz, voll transparent (durchsichtig)''
 +
color="#FF000000" ''= Schwarz, volle Deckkraft''
 +
color="#7F000000" ''= Schwarz, halb durchscheinend''
 +
color="#7FFFFFFF" ''= Weiß, halb durchscheinend''
 +
 +
und natürlich alle möglichen Zwischentöne und Transparenzen.

Version vom 2. Januar 2005, 14:12 Uhr

Hinweis
Hinweis

Diese Dokumentation gilt für die kommende "1.0" Version des text2skin-plugins.


Warnung
Warnung

Dies ist nur eine erste Fassung. Sie ist weder vollständig noch Fehlerfrei! --Monroe 13:27, 13. Dez 2004 (CET)


Dies ist eine Kurzreferenz des auf XML-basierenden Skin-Formates des text2skin Plugins.

Inhaltsverzeichnis

Elemente

<skin>

Dies ist das Wurzelelement des Skins. Alle weiteren Elemente liegen verschachtelt in diesem.

Attribut Wert Beschreibung
version VERSION Version des Skin-Formates (fester Wert, aktuell "1.0")
name NAME Name der im VDR-OSD erscheinen soll
screenBase
  • relative
  • absolute
Kennzeichnet, ob das Skin relativ (relative) zum VDR-Setup oder absolut (absolute) auf einer Fläche von 720x576 zeichnen soll
Beispiel
<?xml version="1.0"?>
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
  .
  .
  .
</skin>

<display>

Das OSD von VDR hat mehrere "Darstellungen". Die wichtigsten wären das Hauptmenu und die Kanalinfo-Anzeige. Für jeden Bereich, der mit dem Skin gestaltet werden soll muss ein <display> Container erstellt werden.

Attribut Wert Beschreibung
id
  • channelInfo
  • channelSmall
  • volume
  • message
  • replayInfo
  • replaySmall
  • menu
Bezeichnet den Typ der OSD-Darstellung
Beispiel
<?xml version="1.0"?>
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
  <display id="replayInfo">
   .
   .
   .
  </display>
</skin>

<window>

Jeder Display-Container beginnt mit der Vorgabe von Zeichenflächen, auf denen dann die Elemente plaziert werden können.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
x2 ZAHL Position der rechten Kante
y2 ZAHL Position der unteren Kante
bpp ZAHL Farbtiefe des Zeichenfläche
Beispiel
<?xml version="1.0"?>
<skin version="1.0" name="brushed Aluminium" screenBase="relative">
  <display id="replayInfo">
    <window x1="0" x2="619" y1="-113" y2="-84" bpp="4" />
    <window x1="20" x2="99" y1="-83" y2="-44" bpp="4" />
     .
     .
     .
  </display>
</skin>

<rectangle>

Zeichnet ein gefülltes Rechteck.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
x2 ZAHL Position der rechten Kante
y2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Farbe des Rechtecks
Beispiel
<rectangle x1="20" x2="99" y1="-83" y2="-44" color="#00000000" />

<ellipse>

Zeichnet einen (Teil-)Kreis, oder eine Ellipse.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Farbe der Ellipse
arc ZAHL Kreisbogen
Beispiel
<ellipse x1="5" y1="7" x2="14" y2="15" color="GraphLight" condition="{IsMenuCurrent}"/>

<slope>

Eine Kurve.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Farbe der Kurve
arc ZAHL Richtung
Beispiel
;-(

<image>

Anzeige eines Bildes

Attribut Wert Beschreibung
x ZAHL Position der linken Kante (keine Skalierung)
y ZAHL Position der oberen Kante (keine Skalierung)
x1 ZAHL Position der linken Kante (wenn skaliert werden soll)
y1 ZAHL Position der oberen Kante (wenn skaliert werden soll)
x2 ZAHL Position der rechten Kante (wenn skaliert werden soll)
y2 ZAHL Position der unteren Kante (wenn skaliert werden soll)
condition FUNKTION/TOKEN Komplexe Bedingung
alpha ZAHL Überlagerte Transparenz von 0-255
colors ZAHL Maximale Anzahl der Farben im Ergebnisbild (wenn skaliert werden soll)
color STRING Austauschfarbe für Farbe 1 des Bildes
bgColor STRING Austauschfarbe für Farbe 0 des Bildes
path STRING/TOKEN Bild-datei
Beispiel
<image x="0" y="-70" path="Aluminium_volumebar.png" />
<image x="585" y="138" condition="{CanScrollUp}" path="symbols/arrowup.xpm" color="#AFFFFF00" />

<text>

Ein statischer oder zusammengesetzter Text.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Textfarbe
align
  • center
  • right
  • left
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
font STRING Name des Fonts
Beispiel
<text x1="42" x2="571" y1="-113" y2="-86" color="#FF000000" font="Osd">{ReplayTitle}</text>

<marquee>

Alternative zu <text>. Scrollt überlange Texte hin und her.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Textfarbe
delay ZAHL
align
  • center
  • right
  • left
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
font STRING Name des Fonts
Beispiel
;-(

<blink>

Alternative zu <text>. Stellt Text blinkend dar.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Textfarbe
blinkColor STRING Highlightfarbe
delay ZAHL Pause zwischen Umschalten
align
  • center
  • right
  • left
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
font STRING Name des Fonts
Beispiel
;-(

<scrolltext>

Ein mehrzeiliger Text.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Farbe des Textes
align
  • center
  • right
  • left
Ausrichtung des Textes (Zentriert, Rechtsbündig, Linksbündig)
font STRING Name des Fonts
Beispiel
<scrolltext x1="24" y1="138" y2="-72" x2="583" font="helmetr.ttf:20" color="#AFFFFF00">
{PresentShortText}
{PresentDescription}
</scrolltext>

<scrollbar>

Eine Scrollleiste.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Farbe des Balkens
bgColor STRING Farbe des Hintergrunds
Beispiel
<scrollbar x1="585" x2="608" y1="162" y2="-110" color="#AFFFFF00" bgColor="#8F2B1B9E" />

<progress>

Eine Fortschrittsanzeige

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
color STRING Farbe des Balkens
bgColor STRING Farbe des Hintergrunds
mark STRING Farbe der Schnittmarkierungen
active STRING Farbe des aktiven Bereiches
keep STRING Farbe des Bereiches der nicht herausgeschnitten wird
current ZAHL/TOKEN Aktueller Indexwert
total ZAHL/TOKEN Maximaler Indexwert
Beispiel
<progress x1="19" x2="556" y1="-17" y2="-7" color="#AF000000" current="{VolumeCurrent}" total="{VolumeTotal}" />

<block>

Ein <block></block> fasst mehrere Objekte zusammen

Attribut Wert Beschreibung
condition FUNKTION Komplexe Bedingung
Beispiel
<block condition="file('logos/{ChannelName}.mng')"> 
 <rectangle x1="4" x2="67" y1="4" y2="51" color="#AF000000" />
 <image x="0" y="0" path="logos/{ChannelName}.mng" />
</block>

<list>

Definiert die Liste im Menü.

Attribut Wert Beschreibung
x1 ZAHL Position der linken Kante
y1 ZAHL Position der oberen Kante
y2 ZAHL Position der rechten Kante
x2 ZAHL Position der unteren Kante
condition FUNKTION/TOKEN Komplexe Bedingung
Beispiel
<list x1="24" y1="62" x2="569" y2="-82">
  <item height="28"/>
  <text x1="25" x2="569" y1="3" y2="27" color="#AF00FFFF" font="Sml">{MenuGroup}</text>
  <text x1="25" x2="569" y1="3" y2="27" color="#AFFFFFFF" font="Sml">{MenuItem}</text>
  <rectangle x1="0" x2="579" y1="0" y2="27" color="#FF2B1B9E" condition="{IsMenuCurrent}" />
  <text x1="22" x2="569" y1="0" y2="27" color="#AFFFFFFF" font="Osd">{MenuCurrent}</text>
  <text x1="0" x2="25" y1="0" y2="27" color="#AFFFFFFF" font="Osd">-></text>
</list>

<item>

Definiert ein Item der Liste.

Attribut Wert Beschreibung
condition FUNKTION/TOKEN Komplexe Bedingung
height ZAHL Höhe eines Listeneintrags
Beispiel
<list x1="24" y1="62" x2="569" y2="-82">
  <item height="28" />
  <text x1="25" x2="569" y1="3" y2="27" color="#AF00FFFF" font="Sml">{MenuGroup}</text>
  <text x1="25" x2="569" y1="3" y2="27" color="#AFFFFFFF" font="Sml">{MenuItem}</text>
  <rectangle x1="0" x2="579" y1="0" y2="27" color="#FF2B1B9E" condition="{IsMenuCurrent}" />
  <text x1="22" x2="569" y1="0" y2="27" color="#AFFFFFFF" font="Osd">{MenuCurrent}</text>
  <text x1="0" x2="25" y1="0" y2="27" color="#AFFFFFFF" font="Osd">-></text>
</list>

Token

Allgemein

Token Bemerkung Beschreibung
DateTime (s.h. "man strftime")

Channel Display

Token Bemerkung Beschreibung
ChannelNumber
ChannelName
ChannelShortName
ChannelBouquet
ChannelPortal
ChannelSource
PresentStartDateTime (* auch in #Menu Display)
PresentVPSDateTime (* auch in #Menu Display)
PresentEndDateTime (* auch in #Menu Display)
PresentDuration (* auch in #Menu Display)
PresentProgress (* auch in #Menu Display)
PresentRemaining (* auch in #Menu Display)
PresentTitle (* auch in #Menu Display)
PresentShortText (* auch in #Menu Display)
PresentDescription (* auch in #Menu Display)
FollowingStartDateTime
FollowingVPSDateTime
FollowingEndDateTime
FollowingDuration
FollowingTitle
FollowingShortText
FollowingDescription
ButtonRed (* auch in #Menu Display, #Replay Display)
ButtonGreen (* auch in #Menu Display, #Replay Display)
ButtonYellow (* auch in #Menu Display, #Replay Display)
ButtonBlue (* auch in #Menu Display, #Replay Display)
Language
HasTeletext
HasMultilang
HasDolby
IsEncrypted
IsRadio
IsRecording
HasVPS (* auch in #Menu Display)
HasTimer (* auch in #Menu Display)
IsRunning (* auch in #Menu Display)

Volume Display

Token Bemerkung Beschreibung
VolumeCurrent
VolumeTotal
IsMute

Message Display

Token Bemerkung Beschreibung
Message
MessageStatus
MessageInfo
MessageWarning
MessageError

Replay Display

Token Bemerkung Beschreibung
ReplayTitle
ReplayPositionIndex
ReplayDurationIndex
ReplayPrompt
IsPlaying
IsFastForward
IsFastRewind
IsSlowForward
IsSlowRewind
IsPausing
ReplayPosition
ReplayDuration
ReplayRemaining
ReplayMode
ButtonRed (* auch in #Channel Display, #Menu Display)
ButtonGreen (* auch in #Channel Display, #Menu Display)
ButtonYellow (* auch in #Channel Display, #Menu Display)
ButtonBlue (* auch in #Channel Display, #Menu Display)

Menu Display

Token Bemerkung Beschreibung
MenuTitle Attribut: "clean"
MenuGroup
IsMenuGroup
MenuItem
IsMenuItem
MenuCurrent
IsMenuCurrent
MenuText Attribut: "clean"
ButtonRed (* auch in #Channel Display, #Replay Display)
ButtonGreen (* auch in #Channel Display, #Replay Display)
ButtonYellow (* auch in #Channel Display, #Replay Display)
ButtonBlue (* auch in #Channel Display, #Replay Display)
CanScrollUp
CanScrollDown
PresentStartDateTime (* auch in #Channel Display)
PresentVPSDateTime (* auch in #Channel Display)
PresentEndDateTime (* auch in #Channel Display)
PresentDuration (* auch in #Channel Display)
PresentProgress (* auch in #Channel Display)
PresentRemaining (* auch in #Channel Display)
PresentTitle (* auch in #Channel Display)
PresentShortText (* auch in #Channel Display)
PresentDescription (* auch in #Channel Display)
HasVPS (* auch in #Channel Display)
HasTimer (* auch in #Channel Display)
IsRunning (* auch in #Channel Display)

Funktionen

not

Negierung einer Funktion.

not(equal({PresentStartDateTime},{PresentVPSDateTime}))

and

Wahr, wenn alle Parameter wahr sind.

and({CanScrollUp},{CanScrollDown})

or

Wahr, wenn mindestens ein Parameter wahr ist.

or({CanScrollUp},{CanScrollDown})

equal

Wahr, wenn beide Parameter gleich sind.

equal('Kanäle', trans('Channels'))

file

Liefert den Parameter zurück, wenn die dort angegebene Datei existiert.

file('logos/{ChannelName}.png')

trans

Liefert die Übersetzung (nach i18n) des Parameters; falsch, wenn keine Übersetzung gefunden wurde.

equal('Kanäle', trans('Channels'))

Attribute

arc

Attribut Wert Bedeutung
arc 0 Bei ellipse: volle Ellipse Bei slope: horizontal, steigend, unten
1 Bei ellipse: erster Quadrant Bei slope: horizontal, steigend, oben
2 Bei ellipse: zweiter Quadrant Bei slope: horizontal, fallend, unten
3 Bei ellipse: dritter Quadrant Bei slope: horizontal, fallend, oben
4 Bei ellipse: vierter Quadrant Bei slope: vertikal, steigend, rechts
5 Bei ellipse: rechte Hälfte Bei slope: vertikal, steigend, links
6 Bei ellipse: obere Hälfte Bei slope: vertikal, fallend, rechts
7 Bei ellipse: linke Hälfte Bei slope: vertikal, fallend, links
8 Bei ellipse: untere Hälfte
-1..-8 Bei ellipse: s.o., invertiert

color

Farben werden im RGB-Format mit Transparenz angegeben. Also etwa

color="#AARRGGBB"

Farben können auch als symbolischer Wert angegeben werden, welcher in der .colors-Datei des Skins aufgelöst wird. Z.B.

color="MenuTextFg"
  • A = Alphawert (eigentlich Deckkraft, oft auch Transparenz)
  • R = Rotwert
  • G = Grünwert
  • B = Blauwert

Ein paar Beispiele

        AARRGGBB
color="#00000000" = Schwarz, voll transparent (durchsichtig)
color="#FF000000" = Schwarz, volle Deckkraft
color="#7F000000" = Schwarz, halb durchscheinend
color="#7FFFFFFF" = Weiß, halb durchscheinend

und natürlich alle möglichen Zwischentöne und Transparenzen.