diff options
Diffstat (limited to 'Docs/Reference.txt')
-rw-r--r-- | Docs/Reference.txt | 658 |
1 files changed, 658 insertions, 0 deletions
diff --git a/Docs/Reference.txt b/Docs/Reference.txt new file mode 100644 index 0000000..dbbe9eb --- /dev/null +++ b/Docs/Reference.txt @@ -0,0 +1,658 @@ +REFERENCE text2skin-skins + +Thomas Wehrspann + +17.12.2004 +Last update 02.01.2005 + +This is a short reference of the XML based skin-format of the +text2skin-plugin. + +Table of Contents +1. Elements +1.1 <skin> +1.2 <display> +1.3 <window> +1.4 <rectangle> +1.5 <ellipse> +1.6 <slope> +1.7 <image> +1.8 <text> +1.9 <marquee> +1.10 <blink> +1.11 <scrolltext> +1.12 <scrollbar> +1.13 <progress> +1.14 <block> +1.15 <list> +1.16 <item> +2. Token +2.1 Common +2.2 Channel Display +2.3 Volume Display +2.4 Message Display +2.5 Replay Display +2.6 Menu Display +3. Functions +3.1 not +3.2 and +3.3 or +3.4 equal +3.5 file +3.6 trans +4. Attributes +4.1 arc +4.2 color +4.3 font + +1. Elements +=========== +1.1 <skin> +---------- +This is the root element of the skins. All further elements go inside this +container. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| version || VERSION || Version of the skin-format (this is + fix value, currently "1.0") +| name || NAME || Name to display in the VDR-OSD +| screenBase || "relative","absolute" || Should the skin be drawn "relative" + to the VDR setup of "absolute" to + the coordinates 720x576 +----------------------------------------------------------------------------- + + <?xml version="1.0"?> + <skin version="1.0" name="brushed Aluminium" screenBase="relative"> + . + . + . + </skin> + + +1.2 <display> +------------- +For each type of a OSD display a <display>-section is required. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| id || * channelInfo || Type of the OSD display + * channelSmall + * volume + * message + * replayInfo + * replaySmall + * menu +----------------------------------------------------------------------------- + + <?xml version="1.0"?> + <skin version="1.0" name="brushed Aluminium" screenBase="relative"> + <display id="replayInfo"> + . + . + . + </display> + </skin> + + +1.3 <window> +------------ +Each <display>-container has to start with a definition of drawing areas. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| x2 || NUMBER || Position of the right border +| y2 || NUMBER || Position of the bottom border +| bpp || NUMBER || Color depth of the drawing area +----------------------------------------------------------------------------- + + <?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> + + +1.4 <rectangle> +--------------- +Draws a filled rectangle. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| x2 || NUMBER || Position of the right border +| y2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Color of the rectangle (see 4.2 color) +----------------------------------------------------------------------------- + + <rectangle x1="20" x2="99" y1="-83" y2="-44" color="#00000000" /> + + +1.5 <ellipse> +------------- +Draws a circle, a pitch circle, or a ellipse. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Color (see 4.2 color) +| arc || NUMBER || pitch circle (see 4.1 arc) +----------------------------------------------------------------------------- + + <ellipse x1="5" y1="7" x2="14" y2="15" color="GraphLight" condition="{IsMenuCurrent}"/> + + +1.6 <slope> +----------- +Draws a curve. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Color (see 4.2 color) +| arc || NUMBER || Direction (see 4.1 arc) +----------------------------------------------------------------------------- + + ;-( + + +1.7 <image> +----------- +Display an image. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x || NUMBER || Position of the left border (no scaling) +| y || NUMBER || Position of the top border (no scaling) +| x1 || NUMBER || Position of the left border (with scaling) +| y1 || NUMBER || Position of the top border (with scaling) +| x2 || NUMBER || Position of the right border (with scaling) +| y2 || NUMBER || Position of the bottom border (with scaling) +| condition || FUNCTION/TOKEN || Complex condition +| alpha || NUMBER || Blended transparency (0-255) (see 4.2 color) +| colors || NUMBER || Maximum amount of colors in the scaled image + (if scaling should be applied) +| color || STRING || replacement color for color 1 of the image + (see 4.2 color) +| bgColor || STRING || replacement color for color 0 of the image + (see 4.2 color) +| path || STRING/TOKEN || Image file +----------------------------------------------------------------------------- + + <image x="0" y="-70" path="Aluminium_volumebar.png" /> + <image x="585" y="138" condition="{CanScrollUp}" path="symbols/arrowup.xpm" color="#AFFFFF00" /> + + +1.8 <text> +---------- +A static or compound text. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Text color (see 4.2 color) +| align || * center || Alignment of the text + * right + * left +| font || STRING || Font name (see 4.3 font) +----------------------------------------------------------------------------- + + <text x1="42" x2="571" y1="-113" y2="-86" color="#FF000000" font="Osd">{ReplayTitle}</text> + + +1.9 <marquee> +---------- +An alternative to <text> for legth texts + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Text color (see 4.2 color) +| delay || NUMBER || Scroll rate (in ms) +| align || * center || Alignment of the text + * right + * left +| font || STRING || Font name (see 4.3 font) +----------------------------------------------------------------------------- + + <marquee x1="130" x2="480" y1="423" y2="445" color="Text" font="Sml">{ReplayTitle}</marquee>; + +1.9 <blink> +---------- +An alternative to <text> for legth texts + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Text color (see 4.2 color) +| blinkColor || STRING || Highlight color (see 4.2 color) +| delay || NUMBER || Delay between switches +| align || * center || Alignment of the text + * right + * left +| font || STRING || Font name (see 4.3 font) +----------------------------------------------------------------------------- + + ;-( + + +1.11 <scrolltext> +----------------- +A multiline text. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Text color (see 4.2 color) +| align || * center || Alignment of the text + * right + * left +| font || STRING || Font name (see 4.3 font) +----------------------------------------------------------------------------- + + <scrolltext x1="24" y1="138" y2="-72" x2="583" font="helmetr.ttf:20" color="#AFFFFF00"> +{PresentShortText} +{PresentDescription} + </scrolltext> + + +1.12 <scrollbar> +---------------- +A scrollbar. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Color of the bar (see 4.2 color) +| bgColor || STRING || Color of the background (see 4.2 color) +----------------------------------------------------------------------------- + + <scrollbar x1="585" x2="608" y1="162" y2="-110" color="#AFFFFF00" bgColor="#8F2B1B9E" /> + + +1.13 <progress> +-------------- +A progressbar. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition +| color || STRING || Color of the bar (see 4.2 color) +| bgColor || STRING || Color of the background (see 4.2 color) +| mark || STRING || Color of the cutting marks (see 4.2 color) +| active || STRING || Color of the active area (see 4.2 color) +| keep || STRING || Color of the video area that should be + kept (see 4.2 color) +| current || ZAHL/TOKEN || Current index value +| total || ZAHL/TOKEN || Maximum index value +----------------------------------------------------------------------------- + + <progress x1="19" x2="556" y1="-17" y2="-7" color="#AF000000" current="{VolumeCurrent}" total="{VolumeTotal}" /> + <progress x1="129" x2="478" y1="487" y2="502" color="#FFCE7B00" bgColor="Blue" mark="Black" active="Black" keep="Black" current="{ReplayPositionIndex}" total="{ReplayDurationIndex}" /> + +1.14 <block> +------------ +A '''<block></block>''' pools several objects together. (No recursion) + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| condition || FUNCTION || Complex condition +----------------------------------------------------------------------------- + + <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> + + +1.15 <list> +----------- +Defines a list in the menu. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| x1 || NUMBER || Position of the left border +| y1 || NUMBER || Position of the top border +| y2 || NUMBER || Position of the right border +| x2 || NUMBER || Position of the bottom border +| condition || FUNCTION/TOKEN || Complex condition (possible, but makes + little sense) +----------------------------------------------------------------------------- + + <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> + + +1.16 <item> +----------- +Defines an item for the list. + +----------------------------------------------------------------------------- +| Attribute || Value || Description +----------------------------------------------------------------------------- +| condition || FUNCTION/TOKEN || Complex condition (possible, but makes + little sense) +| height || NUMBER || Height of one list item +----------------------------------------------------------------------------- + + <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> + + +2. Token +======== +2.1 Common +---------- +----------------------------------------------------------------------------- +| Token || Comment || Description +----------------------------------------------------------------------------- +| DateTime || (s.h. "man strftime") || Current date/time +----------------------------------------------------------------------------- + + +2.2 Channel Display +------------------- +----------------------------------------------------------------------------- +| Token || Comment || Description +----------------------------------------------------------------------------- +| ChannelNumber || || Channel number ("channel number-" on ongoing input +| ChannelName || || Channel- or group name +| ChannelShortName || || Short name of channel if available +| ChannelBouquet || || Provider-/bouquet name if available +| ChannelPortal || || Portal name if available +| ChannelSource || || Signal source (e.g. "S19.2E") +| PresentStartDateTime || (also in Menu Display) || Start time of current title +| PresentVPSDateTime || (also in Menu Display) || VPS start time of current title if available +| PresentEndDateTime || (also in Menu Display) || End time of current title +| PresentDuration || (also in Menu Display) || Duration of current title +| PresentProgress || (also in Menu Display) || Elapsed time of current title +| PresentRemaining || (also in Menu Display) || Remaining time of current title +| PresentTitle || (also in Menu Display) || Title/Heading of current title +| PresentShortText || (also in Menu Display) || Short text/episode of current title +| PresentDescription || (also in Menu Display) || Description of current title +| FollowingStartDateTime || || Start time of following title +| FollowingVPSDateTime || || VPS start time of following title if available +| FollowingEndDateTime || || End time of following title +| FollowingDuration || || Duration of following title +| FollowingTitle || || Title/Heading of following title +| FollowingShortText || || Short text/episode of following title +| FollowingDescription || || Description of following title +| ButtonRed || (also in Menu Display || Caption of red button if available + and Replay Display) +| ButtonGreen || (also in Menu Display || Caption of green button if available + and Replay Display) +| ButtonYellow || (also in Menu Display || Caption of yellow button if available + and Replay Display) +| ButtonBlue || (also in Menu Display || Caption of blue button if available + and Replay Display) +| Language || || Language (currently only "Audio 1", "Audio 2" or "Digital Audio") +| HasTeletext || || True, if video text is available +| HasMultilang || || True, if if several sound tracks are available +| HasDolby || || True, if digital multi-channel sound is available +| IsEncrypted || || True, if the broadcast is encrypted +| IsRadio || || True, if the broadcast is a radio channel +| IsRecording || || True, if a recording is running +| HasVPS || (also in Menu Display) || True, if VPS is available +| HasTimer || (also in Menu Display) || True, if a timer for the current title is set +| IsRunning || (also in Menu Display) || True, if the current title has the state "running" +| CurrentRecording || (in every Display) || Provides every currently running recording in a 2 second cycle +----------------------------------------------------------------------------- + + +2.3 Volume Display +------------------ +----------------------------------------------------------------------------- +| Token || Comment || Description +----------------------------------------------------------------------------- +| VolumeCurrent || || Current volume (0-VolumeTotal) (numeric) +| VolumeTotal || || Maximum value for volume +| IsMute || || True, if volume is muted +----------------------------------------------------------------------------- + + +2.4 Message Display +------------------- +----------------------------------------------------------------------------- +| Token || Comment || Description +----------------------------------------------------------------------------- +| Message || (in every Display) || Text of the current message if available (whatever type) +| MessageStatus || (in every Display) || Text of the current message if available (status message) +| MessageInfo || (in every Display) || Text of the current message if available (information) +| MessageWarning || (in every Display) || Text of the current message if available (warning) +| MessageError || (in every Display) || Text of the current message if available (error) +----------------------------------------------------------------------------- + + +2.5 Replay Display +------------------ +----------------------------------------------------------------------------- +| Token || Comment || Description +----------------------------------------------------------------------------- +| ReplayTitle || || Title of the current replay +| ReplayPositionIndex || || Position in the current replay (numeric, analog to PresentProgress) +| ReplayDurationIndex || || Duration of the current replay (numeric, analog to PresentDuration) +| ReplayRemaining || || Remaining time of the current replay to elapse (numeric, analog to PresentRemaining) +| ReplayPrompt || || Prompt if available (e.g. "Jump: --:--") +| IsPlaying || || True, if a replay is runnning +| IsFastForward || || True, if fast forward +| IsFastRewind || || True, if fase rewind +| IsSlowForward || || True, if slow forward +| IsSlowRewind || || True, if slow rewind +| IsPausing || || True, if replay is pausing +| ReplayPosition || || Position in the replay, completely formatted, with frames at cutting marks, otherwise without frames +| ReplayDuration || || Duration of the replay, completely formatted +| ReplayMode || || Type of the replay (e.g. "dvd", "vcd", "normal",...) +| ButtonRed || (also in Menu Display || Caption of red button if available + and Channel Display) +| ButtonGreen || (also in Menu Display || Caption of green button if available + and Channel Display) +| ButtonYellow || (also in Menu Display || Caption of yellow button if available + and ReChannel Display) +| ButtonBlue || (also in Menu Display || Caption of blue button if available + and Channel Display) +----------------------------------------------------------------------------- + + +2.6 Menu Display +---------------- +----------------------------------------------------------------------------- +| Token || Comment || Description +----------------------------------------------------------------------------- +| MenuTitle || Attribute: "clean" || Title of the menu page, or filtered title with "clean" +| MenuGroup || || Text of the current list item if it is a group/delimiter +| IsMenuGroup || || True, if currently drawn list item is a group/delimiter +| MenuItem || || Text of the current list item if it is a normal entry +| IsMenuItem || || True, if currently drawn list item is a normal entry +| MenuCurrent || Atrribute: "clean" || Text of the current list item if it is the selected entry +| IsMenuCurrent || || True, if currently drawn list item is a currently selected one +| MenuText || Attribute: "clean" || Text page to display instead of the list (e.g. display in the command menu) +| ButtonRed || (also in Channel Display || Caption of red button if available + and Replay Display) +| ButtonGreen || (also in Channel Display || Caption of green button if available + and Replay Display) +| ButtonYellow || (also in Channel Display || Caption of yellow button if available + and Replay Display) +| ButtonBlue || (also in Channel Display || Caption of blue button if available + and Replay Display) +| CanScrollUp || || True, if a scroll-text can be scrolled upward +| CanScrollDown || || True, if a scroll-text can be scrolled downward +| PresentStartDateTime || (also in Channel Display) || +| PresentVPSDateTime || (also in Channel Display) || +| PresentEndDateTime || (also in Channel Display) || +| PresentDuration || (also in Channel Display) || +| PresentProgress || (also in Channel Display) || +| PresentTitle || (also in Channel Display) || +| PresentShortText || (also in Channel Display) || +| PresentDescription || (also in Channel Display) || +| HasVPS || (also in Channel Display) || +| HasTimer || (also in Channel Display) || +| IsRunning || (also in Channel Display) || +----------------------------------------------------------------------------- + + +3. Functions +============ +3.1 not +------- +Negation of the term. + + not(equal({PresentStartDateTime},{PresentVPSDateTime})) + +3.2 and +------- +True, if all parameter are true. + + and({CanScrollUp},{CanScrollDown}) + +3.3 or +------ +True, if one parameter is true. + + or({CanScrollUp},{CanScrollDown}) + +3.4 equal +--------- +True, if both parameters are true. + + equal('Kanäle', trans('Channels')) + +3.5 file +-------- +Returns the parameter, if the file exists in the skin directory. + + file('logos/{ChannelName}.png') + +3.6 trans +--------- +Rreturn the translation (i18n) of the parameter, false, if no translation is found. + + equal('Kanäle', trans('Channels')) + + +4. Attributes +============== +4.1 arc +------- +----------------------------------------------------------------------------- +| Attribute || Value || Meaning (ellipse) || Meaning (slope) +----------------------------------------------------------------------------- +| arc || 0 || full ellipse || horizontal, increasing, bottom + || 1 || first quadrant || horizontal, increasing, top + || 2 || second quadrant || horizontal, decreasing, bottom + || 3 || third quadrant || horizontal, decreasing, top + || 4 || fourth quadrant || vertical, increasing, right + || 5 || right half || vertical, increasing, left + || 6 || upper half || vertical, decreasing, right + || 7 || left half || vertical, decreasing, left + || 8 || lower half || + || -1..-8 || invers of the above || +----------------------------------------------------------------------------- + +4.2 color +--------- +Also concerns bgColor, blinkColor, mark, active, keep +Colors are given in RGB-format transparency information + + color=#AARRGGBB + +* A - alpha value (transparency 0-255) +* R - red value +* G - gree value +* B - blue value + +Some examples + + AARRGGBB + color=#00000000 = Black, fully transparent + color=#FF000000 = Black, full opacity + color=#7F000000 = Black, half translucent + color=#7FFFFFFF = White, half translucent + +4.3 font +-------- +There are three predefined fonts + +* Osd +* Fix +* Sml + +If the freetype library is installed it is possible to use every True-Type font in the directories + /etc/vdr/plugins/text2skin/fonts/ +or + /etc/vdr/plugins/text2skin/SkinName/ + +In the skin file the font is defined with + + font="Osd" + +or with True-Type fonts with the desired size and width (optional) + + font="helmetr.ttf:size[,width]" |