Text2skin-Skin Referenz
(→<image>) |
Wirbel (Diskussion | Beiträge) |
||
| 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">-></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">-></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
Diese Dokumentation gilt für die kommende "1.0" Version des text2skin-plugins.
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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
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 |
|
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.