Graphtft-plugin-Themes-Anleitung
Data (Diskussion | Beiträge) (Erste grobe Struktur angelegt) |
Hulk (Diskussion | Beiträge) (Typo's) |
||
(7 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | + | Zur Anzeige von Daten nutzt das [[Graphtft-plugin]] so genannte Themes. | |
− | + | ||
− | Zur Anzeige von Daten nutzt das | + | |
Diese Themes können selbst nach eigenem Geschmack erstellt und verändert werden. | Diese Themes können selbst nach eigenem Geschmack erstellt und verändert werden. | ||
Wie das im einzelnen geht und was für Funktionen hierfür zur Verfügung stehen, soll dieser Artikel näher bringen. | Wie das im einzelnen geht und was für Funktionen hierfür zur Verfügung stehen, soll dieser Artikel näher bringen. | ||
Zeile 12: | Zeile 10: | ||
Wo werden diese abgelegt? | Wo werden diese abgelegt? | ||
− | |||
+ | Beispiele... | ||
+ | |||
+ | ... | ||
== Sektionen == | == Sektionen == | ||
Ein Theme besteht aus Sektionen, welche in eckigen Klammern [] markiert werden. | Ein Theme besteht aus Sektionen, welche in eckigen Klammern [] markiert werden. | ||
− | Es gibt graphTFT interne Sektionen, aber auch welche die vom VDR oder von anderen Plugins, wie. z.B. | + | Es gibt graphTFT interne Sektionen, aber auch welche die vom VDR oder von anderen Plugins, wie. z.B. das [[Arghdirector-plugin]], speziell für das graphTFT eingerichtet wurden. |
So können für unterschiedlichste VDR Menüs jeweils eigene Beschreibungen angelegt werden. | So können für unterschiedlichste VDR Menüs jeweils eigene Beschreibungen angelegt werden. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | In jeder Sektion stehen Variablen zur Verfügung, welche Daten vom VDR oder zuliefernden Plugins, wie z.B. das [[Music-plugin]], enthalten und verwenden werden können. | ||
+ | Die Art der Variablen machen die Buchstaben an Ende der Variablenbezeichnung deutlich. | ||
+ | Diese sind: | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | !Buchstabe | ||
+ | !Bedeutung | ||
+ | |- | ||
+ | |t | ||
+ | |time | ||
+ | |- | ||
+ | |a | ||
+ | |text (alpha-num) | ||
+ | |- | ||
+ | |n | ||
+ | |number | ||
+ | |- | ||
+ | |f | ||
+ | |flag | ||
+ | |} | ||
− | + | Es gibt einige Variablen, welche in allen Sektionen zur Verfügung stehen. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | !Sektion | ||
+ | !Verwendung | ||
+ | !Verfügbare Variablen | ||
+ | |- | ||
+ | |[Calibration] | ||
+ | |Beschreibt die Darstellung der graphTFT internen Kalibrationsdarstellung. | ||
+ | |- | ||
+ | |[Menu] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuArghDirector] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuChannels] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuCommands] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuCommon] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuEpgsSchedule] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuEpgsWhatsOn_Event] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuEpgsWhatsOn_logo_time] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuEpgsWhatsOnElse] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuEpgsWhatsOnNext] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuEpgsWhatsOnNow] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuEvent] | ||
+ | | | ||
+ | |{eventID} - n<br />{eventTitle} - a<br />{eventSubTitle} - a<br />{eventStartTime} - t<br />{eventEndTime} - t | ||
+ | |- | ||
+ | |[MenuExtRecording] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuExtRecordings] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuMain] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuMusicTrackList] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuRecording] | ||
+ | | | ||
+ | |{recordingPath} - a<br />{recordingTitle} - a<br />{recordingEventID} - n<br />{recordingPath} - a<br />{recordingTitle} - a<br />{recordingSubTitle} - a<br />{recordingTime} - t<br />{recordingChannel} - a | ||
+ | |- | ||
+ | |[MenuRecordings] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuSchedule] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuSetupPage] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuSetupPlugins] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuTimers] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuUnknown] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuWhatsOnNext] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MenuWhatsOnNow] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[MouseButtons] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[NormalClock] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[NormalDia] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[NormalRadio] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[NormalSysinfo] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[NormalTV] | ||
+ | | | ||
+ | |{eventID} - n<br />{eventTitle} - a<br />{eventSubTitle} - a<br />{eventStartTime} - t<br />{eventEndTime} - t | ||
+ | |- | ||
+ | |[OSD-Messages] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[RecSymbol] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[ReplayCommon] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[ReplayDVD] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[ReplayMP3] | ||
+ | | | ||
+ | |{recordingPath} - a<br />{recordingTitle} - a<br />{recordingEventID} - n<br />{recordingPath} - a<br />{recordingTitle} - a<br />{recordingSubTitle} - a<br />{recordingTime} - t<br />{recordingChannel} - a<br /><br />Music Plugin: (ReplayMP3 mit music Plugin, in der 'Player-View')<br />{musicArtist} - a<br/>{musicAlbum} - a<br/>{musicGenre} - a<br/>{musicYear} - n // <0 wenn unbekannt<br/>{musicFilename} - a<br/>{musicComment} - a<br/>{musicFrequence} - n<br/>{musicBitrate} - n<br/>{musicStereoMode} - a<br/>{musicIndex} - n // Numer of Current Track<br/>{musicCount} - n // Count of Tracks in Playlist<br/>{musicPlayStatus} - a // Playing, Stopped, ...<br/>{musicRating} - n // 0-nicht bewertet 3-zum löschen, >3-rating<br/>{musicLoop} - f<br/>{musicShuffle} - f<br/>{musicShutdown} - f<br/>{musicRecording} - f<br/>{musicButtonRed} - a // Button-Texte des Music-Plugins<br/>{musicButtonYellow} - a<br/>{musicButtonGreen} - a<br/>{musicButtonBlue} - a<br/>{musicCoverName} - a // Cover Image (Pfad)<br/><br/>Beispiel:<br/> Item=Text,text={time/%d.%m %H:%M},x=520,y=27,width=200,height=40,red=52,green=162,blue=159; | ||
+ | |- | ||
+ | |[ReplayNormal] | ||
+ | | | ||
+ | |{recordingPath} - a<br />{recordingTitle} - a<br />{recordingEventID} - n<br />{recordingPath} - a<br />{recordingTitle} - a<br />{recordingSubTitle} - a<br />{recordingTime} - t<br />{recordingChannel} - a | ||
+ | |- | ||
+ | |[Theme] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[TV_Radio_Common] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |[Volume] | ||
+ | | | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
+ | == Funktionen / Items == | ||
+ | In jeder Sektion finden verschiedene Funktionen Anwendung. So gibt die eine Funktion z.B. EPG Daten aus, die andere wiederum ein Bild oder eine Zeitleiste. | ||
+ | Nicht alle Funktionen können in allen Sektionen verwendet werden, da hierfür entweder nicht die geeigneten Daten zur Verfügung stehen, es sich um spezielle graphTFT interne Funktionen handelt oder die Funktion im der gewählten Sektion keinen Sinn macht. | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | !Funktion / Item | ||
+ | !Verwendung | ||
+ | |- | ||
+ | |Background | ||
+ | | | ||
+ | |- | ||
+ | |CalibrationCursor | ||
+ | | | ||
+ | |- | ||
+ | |Column | ||
+ | | | ||
+ | |- | ||
+ | |ColumnSelected | ||
+ | | | ||
+ | |- | ||
+ | |Defaults | ||
+ | | | ||
+ | |- | ||
+ | |EventColumn | ||
+ | | | ||
+ | |- | ||
+ | |EventColumnSelected | ||
+ | | | ||
+ | |- | ||
+ | |if - endif | ||
+ | | | ||
+ | |- | ||
+ | |#define - #ifdef - #else - #endif - #ifndef | ||
+ | | | ||
+ | |- | ||
+ | |Image | ||
+ | | | ||
+ | |- | ||
+ | |ImageFile | ||
+ | | | ||
+ | |- | ||
+ | |Include | ||
+ | | | ||
+ | |- | ||
+ | |MailCount | ||
+ | | | ||
+ | |- | ||
+ | |MailSymbol | ||
+ | | | ||
+ | |- | ||
+ | |Menu | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonBackgroundBlue | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonBackgroundGreen | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonBackgroundRed | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonBackgroundYellow | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonBlue | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonGreen | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonRed | ||
+ | | | ||
+ | |- | ||
+ | |MenuButtonYellow | ||
+ | | | ||
+ | |- | ||
+ | |MenuImageMap | ||
+ | | | ||
+ | |- | ||
+ | |MenuNavigationArea | ||
+ | | | ||
+ | |- | ||
+ | |MenuSelected | ||
+ | | | ||
+ | |- | ||
+ | |MenuText | ||
+ | | | ||
+ | |- | ||
+ | |MenuTitle | ||
+ | | | ||
+ | |- | ||
+ | |Message | ||
+ | | | ||
+ | |- | ||
+ | |PartingLine | ||
+ | | | ||
+ | |- | ||
+ | |Progressbar | ||
+ | | | ||
+ | |- | ||
+ | |Recording | ||
+ | | | ||
+ | |- | ||
+ | |Rectangle | ||
+ | | | ||
+ | |- | ||
+ | |SpectrumAnalyzer | ||
+ | | | ||
+ | |- | ||
+ | |Sym2ch | ||
+ | | | ||
+ | |- | ||
+ | |SymCrypt | ||
+ | | | ||
+ | |- | ||
+ | |SymDD | ||
+ | | | ||
+ | |- | ||
+ | |SymRecording | ||
+ | | | ||
+ | |- | ||
+ | |SymVTX | ||
+ | | | ||
+ | |- | ||
+ | |Sysinfo | ||
+ | | | ||
+ | |- | ||
+ | |Text | ||
+ | |Anzuzeigender Text<br/>Der Text kann Variablen enthalten, diese werden in geschweiften Klammern angegeben. Für Datum/Zeit Felder kann optional ein Formatstring definiert werden.<br/>Der Formatstring für Datum/Zeit entspricht dem in der Manpage zu strftime beschriebenen. Anzuzeigende Kommata und Semikolons im Formatstring müssen mit '\' maskiert werden. | ||
+ | |- | ||
+ | |TextList | ||
+ | | | ||
+ | |- | ||
+ | |Theme | ||
+ | | | ||
+ | |- | ||
+ | |Timebar | ||
+ | | | ||
+ | |- | ||
+ | |var | ||
+ | | | ||
+ | |- | ||
+ | |Volumebar | ||
+ | | | ||
+ | |- | ||
+ | |} | ||
== Parameter == | == Parameter == | ||
Zeile 129: | Zeile 375: | ||
Pfadangaben | Pfadangaben | ||
+ | |||
+ | == Operatoren == | ||
+ | Sollen Theme Items nur in bestimmten Situationen angezeigt werden kann dies über den Parameter condition erreicht werden. | ||
+ | |||
+ | Bedingungen können aufbauend auf den unten beschriebenen Variablen definiert werden. | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | !Operator | ||
+ | !Bedeutung | ||
+ | !Verwendung | ||
+ | |- | ||
+ | |< | ||
+ | |kleiner | ||
+ | | | ||
+ | |- | ||
+ | |> | ||
+ | |größer | ||
+ | | | ||
+ | |- | ||
+ | |<= | ||
+ | |keiner gleich | ||
+ | | | ||
+ | |- | ||
+ | |>= | ||
+ | |größer gleich | ||
+ | | | ||
+ | |- | ||
+ | |<> | ||
+ | |ungleich | ||
+ | | | ||
+ | |- | ||
+ | |!= | ||
+ | |ungleich | ||
+ | | | ||
+ | |- | ||
+ | |= | ||
+ | |gleich | ||
+ | | | ||
+ | |- | ||
+ | |== | ||
+ | |gleich | ||
+ | |(c/c++ like ;)) | ||
+ | |- | ||
+ | |} | ||
+ | Beispiel: | ||
+ | Item=Image,condition={musicLoop} == 1,x=25,y=515,width=20,height=20,fit=yes,path=symbols/music-loop.png; | ||
+ | Item=Image,condition={musicLoop} <> 1,x=25,y=515,width=20,height=20,fit=yes,path=symbols/music-noloop.png; |
Aktuelle Version vom 29. August 2013, 21:23 Uhr
Zur Anzeige von Daten nutzt das Graphtft-plugin so genannte Themes. Diese Themes können selbst nach eigenem Geschmack erstellt und verändert werden. Wie das im einzelnen geht und was für Funktionen hierfür zur Verfügung stehen, soll dieser Artikel näher bringen.
Inhaltsverzeichnis |
[Bearbeiten] Allgemeines
Wie werden Themes aufgebaut?
Wo werden diese abgelegt?
Beispiele...
...
[Bearbeiten] Sektionen
Ein Theme besteht aus Sektionen, welche in eckigen Klammern [] markiert werden. Es gibt graphTFT interne Sektionen, aber auch welche die vom VDR oder von anderen Plugins, wie. z.B. das Arghdirector-plugin, speziell für das graphTFT eingerichtet wurden. So können für unterschiedlichste VDR Menüs jeweils eigene Beschreibungen angelegt werden.
In jeder Sektion stehen Variablen zur Verfügung, welche Daten vom VDR oder zuliefernden Plugins, wie z.B. das Music-plugin, enthalten und verwenden werden können. Die Art der Variablen machen die Buchstaben an Ende der Variablenbezeichnung deutlich.
Diese sind:
Buchstabe | Bedeutung |
---|---|
t | time |
a | text (alpha-num) |
n | number |
f | flag |
Es gibt einige Variablen, welche in allen Sektionen zur Verfügung stehen.
Sektion | Verwendung | Verfügbare Variablen |
---|---|---|
[Calibration] | Beschreibt die Darstellung der graphTFT internen Kalibrationsdarstellung. | |
[Menu] | ||
[MenuArghDirector] | ||
[MenuChannels] | ||
[MenuCommands] | ||
[MenuCommon] | ||
[MenuEpgsSchedule] | ||
[MenuEpgsWhatsOn_Event] | ||
[MenuEpgsWhatsOn_logo_time] | ||
[MenuEpgsWhatsOnElse] | ||
[MenuEpgsWhatsOnNext] | ||
[MenuEpgsWhatsOnNow] | ||
[MenuEvent] | {eventID} - n {eventTitle} - a {eventSubTitle} - a {eventStartTime} - t {eventEndTime} - t | |
[MenuExtRecording] | ||
[MenuExtRecordings] | ||
[MenuMain] | ||
[MenuMusicTrackList] | ||
[MenuRecording] | {recordingPath} - a {recordingTitle} - a {recordingEventID} - n {recordingPath} - a {recordingTitle} - a {recordingSubTitle} - a {recordingTime} - t {recordingChannel} - a | |
[MenuRecordings] | ||
[MenuSchedule] | ||
[MenuSetupPage] | ||
[MenuSetupPlugins] | ||
[MenuTimers] | ||
[MenuUnknown] | ||
[MenuWhatsOnNext] | ||
[MenuWhatsOnNow] | ||
[MouseButtons] | ||
[NormalClock] | ||
[NormalDia] | ||
[NormalRadio] | ||
[NormalSysinfo] | ||
[NormalTV] | {eventID} - n {eventTitle} - a {eventSubTitle} - a {eventStartTime} - t {eventEndTime} - t | |
[OSD-Messages] | ||
[RecSymbol] | ||
[ReplayCommon] | ||
[ReplayDVD] | ||
[ReplayMP3] | {recordingPath} - a {recordingTitle} - a {recordingEventID} - n {recordingPath} - a {recordingTitle} - a {recordingSubTitle} - a {recordingTime} - t {recordingChannel} - a Music Plugin: (ReplayMP3 mit music Plugin, in der 'Player-View') {musicArtist} - a {musicAlbum} - a {musicGenre} - a {musicYear} - n // <0 wenn unbekannt {musicFilename} - a {musicComment} - a {musicFrequence} - n {musicBitrate} - n {musicStereoMode} - a {musicIndex} - n // Numer of Current Track {musicCount} - n // Count of Tracks in Playlist {musicPlayStatus} - a // Playing, Stopped, ... {musicRating} - n // 0-nicht bewertet 3-zum löschen, >3-rating {musicLoop} - f {musicShuffle} - f {musicShutdown} - f {musicRecording} - f {musicButtonRed} - a // Button-Texte des Music-Plugins {musicButtonYellow} - a {musicButtonGreen} - a {musicButtonBlue} - a {musicCoverName} - a // Cover Image (Pfad) Beispiel: Item=Text,text={time/%d.%m %H:%M},x=520,y=27,width=200,height=40,red=52,green=162,blue=159; | |
[ReplayNormal] | {recordingPath} - a {recordingTitle} - a {recordingEventID} - n {recordingPath} - a {recordingTitle} - a {recordingSubTitle} - a {recordingTime} - t {recordingChannel} - a | |
[Theme] | ||
[TV_Radio_Common] | ||
[Volume] |
[Bearbeiten] Funktionen / Items
In jeder Sektion finden verschiedene Funktionen Anwendung. So gibt die eine Funktion z.B. EPG Daten aus, die andere wiederum ein Bild oder eine Zeitleiste. Nicht alle Funktionen können in allen Sektionen verwendet werden, da hierfür entweder nicht die geeigneten Daten zur Verfügung stehen, es sich um spezielle graphTFT interne Funktionen handelt oder die Funktion im der gewählten Sektion keinen Sinn macht.
Funktion / Item | Verwendung |
---|---|
Background | |
CalibrationCursor | |
Column | |
ColumnSelected | |
Defaults | |
EventColumn | |
EventColumnSelected | |
if - endif | |
#define - #ifdef - #else - #endif - #ifndef | |
Image | |
ImageFile | |
Include | |
MailCount | |
MailSymbol | |
Menu | |
MenuButtonBackgroundBlue | |
MenuButtonBackgroundGreen | |
MenuButtonBackgroundRed | |
MenuButtonBackgroundYellow | |
MenuButtonBlue | |
MenuButtonGreen | |
MenuButtonRed | |
MenuButtonYellow | |
MenuImageMap | |
MenuNavigationArea | |
MenuSelected | |
MenuText | |
MenuTitle | |
Message | |
PartingLine | |
Progressbar | |
Recording | |
Rectangle | |
SpectrumAnalyzer | |
Sym2ch | |
SymCrypt | |
SymDD | |
SymRecording | |
SymVTX | |
Sysinfo | |
Text | Anzuzeigender Text Der Text kann Variablen enthalten, diese werden in geschweiften Klammern angegeben. Für Datum/Zeit Felder kann optional ein Formatstring definiert werden. Der Formatstring für Datum/Zeit entspricht dem in der Manpage zu strftime beschriebenen. Anzuzeigende Kommata und Semikolons im Formatstring müssen mit '\' maskiert werden. |
TextList | |
Theme | |
Timebar | |
var | |
Volumebar |
[Bearbeiten] Parameter
Koordinaten
Größenangeben
Pfadangaben
[Bearbeiten] Operatoren
Sollen Theme Items nur in bestimmten Situationen angezeigt werden kann dies über den Parameter condition erreicht werden.
Bedingungen können aufbauend auf den unten beschriebenen Variablen definiert werden.
Operator | Bedeutung | Verwendung |
---|---|---|
< | kleiner | |
> | größer | |
<= | keiner gleich | |
>= | größer gleich | |
<> | ungleich | |
!= | ungleich | |
= | gleich | |
== | gleich | (c/c++ like ;)) |
Beispiel:
Item=Image,condition={musicLoop} == 1,x=25,y=515,width=20,height=20,fit=yes,path=symbols/music-loop.png; Item=Image,condition={musicLoop} <> 1,x=25,y=515,width=20,height=20,fit=yes,path=symbols/music-noloop.png;