diff options
author | kraymer <kraymer@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-06-05 05:02:47 +0000 |
---|---|---|
committer | kraymer <kraymer@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-06-05 05:02:47 +0000 |
commit | 5c8cb3d02201dbbb0ed95ff5b5a2b9296df621b6 (patch) | |
tree | d711421be35b37c011c3ccf312de280e67eac681 /DOCS/xml/de/skin.xml | |
parent | 5a368332d968ad1dc86f306a7542ffab1f224666 (diff) | |
download | mpv-5c8cb3d02201dbbb0ed95ff5b5a2b9296df621b6.tar.bz2 mpv-5c8cb3d02201dbbb0ed95ff5b5a2b9296df621b6.tar.xz |
initial import of some missing German xml translation, review(s) pending
Translation was done by Kurt Lettmaier (k . lettmaier @at@ onlinehome.de ), thank you!
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18569 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'DOCS/xml/de/skin.xml')
-rw-r--r-- | DOCS/xml/de/skin.xml | 1244 |
1 files changed, 1244 insertions, 0 deletions
diff --git a/DOCS/xml/de/skin.xml b/DOCS/xml/de/skin.xml new file mode 100644 index 0000000000..0113329e51 --- /dev/null +++ b/DOCS/xml/de/skin.xml @@ -0,0 +1,1244 @@ +<?xml version="1.0" encoding="iso-8859-1"?> +<!-- in sync with rev 1.15 $ --> +<appendix id="skin"> +<title><application>MPlayer</application> Skinformat</title> + +<sect1 id="skin-overview"> +<title>Überblick</title> +<para> + Es hat nicht wirklich etwas mit dem Skinformat zu tun, aber du solltest + wissen, dass <application>MPlayer</application> <emphasis role="bold">keinen</emphasis> + eingebauten Skin besitzt, also <emphasis role="bold">muß zumindest ein Skin + installiert sein, damit das GUI verwendet werden kann.</emphasis> +</para> + +<sect2 id="skin-overview-directories"> +<title>Verzeichnisse</title> +<para> + Die nach Skins durchsuchten Verzeichnisse sind (der Reihe nach): +<orderedlist> +<listitem><para> + <filename class="directory">$(DATADIR)/skins/</filename> +</para></listitem> +<listitem><para> + <filename class="directory">$(PREFIX)/share/mplayer/skins/</filename> +</para></listitem> +<listitem><para> + <filename class="directory">~/.mplayer/skins/</filename> +</para></listitem> +</orderedlist> +</para> + +<para> + Beachte, dass der erste Pfad je nach Art der + <application>MPlayer</application>-Konfiguration variieren kann + (siehe Argumente <option>--prefix</option> und <option>--datadir</option> + des <command>configure</command>-Scripts). +</para> + +<para> + Jeder Skin wird in sein eigenes Verzeichnis unterhalb einem der oben + aufgeführten Verzeichnisse installiert, zum Beispiel: +<screen>$(PREFIX)/share/mplayer/skins/default/</screen> +</para> +</sect2> + +<sect2 id="skin-overview-formats"> +<title>Bildformate</title> +<para> + Die Bilder müssen Truecolor-PNGs sein (24 oder 32 bpp). +</para> + +<para> + Im Hauptfenster und in der Abspilleiste (siehe unten) kannst du Bilder + mit 'Transparenz' verwenden: Mit der Farbe #FF00FF (Magenta) gefüllte Bereiche + sind beim Betrachten mit <application>MPlayer</application> voll transparent. + Die bedeutet, dass du sogar Formfenster haben kannst, wenn dein X-Server die + XShape-Extension besitzt. +</para> +</sect2> + +<sect2 id="skin-overview-components"> +<title>Skin-Komponenten</title> +<para> + Skins sind ziemlich frei im Format (im Unterschied zu den Skins mit festem + Format von <application>Winamp</application>/<application>XMMS</application> + zum Beispiel), somit liegt es an dir, einen tollen zu kreieren. +</para> + +<para> + Zur Zeit sind vier Fenster zu dekorieren: das + <link linkend="skin-file-main">Hauptfenster</link>, das + <link linkend="skin-file-subwindow">Unterfenster</link>, die + <link linkend="skin-file-main">Abspielleise</link> und das + <link linkend="skin-file-menu">Skin-Menü</link> (das durch einen + Rechtsklick aktiviert werden kann). + +<itemizedlist> +<listitem><para> + Das <emphasis role="bold">Hauptfenster</emphasis> und/oder die + <emphasis role="bold">Abspielleise</emphasis> befindet sich dort, wo du + <application>MPlayer</application> kontrollieren kannst. Der Hintergrund + des Fensters ist ein Grafik. + Ins Fenster können (und müssen) diverse Elemente platziert werden: + <emphasis>Buttons</emphasis>, <emphasis>Potentiometer</emphasis> (Schieberegler) + und <emphasis>Labels</emphasis>. + Für jedes Element, musst du dessen Position und Größe. +</para><para> + Ein <emphasis role="bold">Button</emphasis> besitzt drei Zustände (gedrückt, + losgelassen, deaktiviert), deshalb muss seine Grafik vertikal in drei Teile + getrennt werden. Siehe Eintrag <link linkend="skin-button">Button</link> + mit mehr Details. +</para><para> + Ein <emphasis role="bold">Potentiometer</emphasis> (hauptsächlich für + die Suchleiste und die Lautstärke-/Balance-Regler) kann eine beliebige + Anzahl von Phasen by dividing its Grafik + into different parts below each other. See + <link linkend="skin-hpotmeter">hpotmeter</link> and + <link linkend="skin-potmeter">Potentiometer</link> for details. +</para><para> + <emphasis role="bold">Labels</emphasis> sind ein wenig speziell: Die Zeichen, + die manzu ihrer Darzustellung benötigt, werden von einer Grafikdatei, und + die Zeichen in der Grafik werden durch eine + <link linkend="skin-fonts">Schrift-Beschreibungsdatei</link> festgelegt. + Letztere ist eine Volltextdatei, welche die x-,y-Position und Größe jedes + Zeichens in der Grafik beschreibt (die Grafikdatei und ihre + Schrift-Beschreibungsdatei bilden <emphasis>zusammen</emphasis> eine Schrift). + Siehe + <link linkend="skin-dlabel">dlabel</link> + und + <link linkend="skin-slabel">slabel</link> fpr Details. +</para> +<note> +<para> + Alle Grafiken können wie im Abschnitt über die + <link linkend="skin-overview-formats">Grafikformate</link> erklärt + volle Transparenz besitzen. Wenn der X-Server keine XShape-Extension + unterstützt, werden die als transparent markierten Teile schwarz. + Wenn du dieses Feature gerne nutzen möchtest, muss die Breite der + Hintergrundgrafik des Hauptfensters durch 8 teilbar sein. +</para> +</note> +</listitem> + +<listitem><para> + Das <emphasis role="bold">Unterfenster</emphasis> ist dort wo der Film + erscheint. Es kann eine festgelegte Grafik anzeigen, wenn kein Film geladen + iat (es ist ziemlich langweilig, ein leeres Fenster vor sich zu haben :-)) + <emphasis role="bold">Beachte:</emphasis> Transparenz ist hier + <emphasis role="bold">nicht erlaubt</emphasis>. +</para></listitem> + +<listitem><para> + Das <emphasis role="bold">Skin-Menü</emphasis> ist ganz einfach ein + Weg, <application>MPlayer</application> mittels der Menüeinträge zu + kontrollieren. Zwei Grafiken sind für das Menü erforderlich: + eine davon ist die Basisgrafik, die den Normalzustand des Menüs darstellt, + die andere wird zur Anzeige des gewählten Einträge verwendet. + Wenn due das Menü aufklappst, wird die erste Grafik angezeigt. Bewegst du + die Maus über die Menüeinträge, wird der aktuell gewählte Eintrag aus der + zweiten Grafik über den Menüeintrag unterhalb des Mauszeigers kopiert + (die zweite Grafik wird nie als Ganzes angezeigt). +</para><para> + Rin Menüeintrag wird definiert durch seine Position und Größe innerhalb + der Grafik (sieh nach mehr Details im Abschnitt über das + <link linkend="skin-file-menu">Skin-Menü</link>). +</para></listitem> +</itemizedlist> +</para> + +<para> + Eine wichtige Sache wurde noch nicht aufgeführt: Damit Buttons, Potentiometer und + Menüeinträge funktionieren, muss <application>MPlayer</application> wissen, was + er machen soll, wenn sie angeklickt werden. + Dies geschieht mittels <link linkend="skin-gui">Meldungen</link> (Ereignisse). + Für diese Elemente musst du die beim Klick auf sie zu generierenden Meldungen + definieren. +</para> +</sect2> + +<sect2 id="skin-files"> +<title>Dateien</title> +<para> + Du benötigst folgende Dateien, um einen Skin zu bauen: +<itemizedlist> +<listitem><para> + Die Konfigurationsdatei genannt <link linkend="skin-file">skin</link> erzählt + <application>MPlayer</application>, wie er unterschiedliche Teile des Skins + zusammengefügt werden und was er tun soll, wenn du irgendwo innerhalb des Fenster + hinklickst. +</para></listitem> +<listitem><para> + Die Hintergrundgrafik fürs Hauptfenster. +</para></listitem> +<listitem><para> + Grafiken für die Elemente im Hauptfenster (einschließlich einer oder mehrerer + Schrift-Beschreibungsdateien zum zeichnen der Labels). +</para></listitem> +<listitem><para> + Die Grafik, die im Unterfenster angezeigt werden soll (optional). +</para></listitem> +<listitem><para> + Zwei Grafiken für das Skin-Menü (sie werden nur gebraucht, wenn du want + ein Menü erzeugst). +</para></listitem> +</itemizedlist> + Mit Ausnahme der skin-Konfigurationsdatei, kannst du die anderen Dateien + benenne, wie es dir beliebt (beachte aber, dass Schrift-Beschreibungsdateien + eine <filename>.fnt</filename>-Erweiterung besitzen müssen). +</para> +</sect2> +</sect1> + +<sect1 id="skin-file"> +<title>Die skin-Datei</title> +<para> + Wie oben erwähnt, ist dies die skin-Konfigurationsdatei. Sie ist + Zeilen-orientiert; + Kommentarzeilen beginnen mit einem '<literal>;</literal>' Semikolon-Zeichen + am Zeilenanfang (es sind nur Leer- und Tabulator-Zeichen vor dem + '<literal>;</literal>' erlaubt). +</para> + +<para> + Die Datei ist in Abschnitte unterteilt. Jeder Abschnitt beschreibt den Skin + für eine Anwendung und besitzt folgende Form: +<programlisting> +section = <replaceable>abschnittsname</replaceable> +. +. +. +end +</programlisting> +</para> + +<para> + Zur Zeit gibt es nur eine Anwendung, somit brauchst du nur einen Abschnitt: + sein Name ist <emphasis role="bold">movieplayer</emphasis>. +</para> + +<para> + Innerhalb dieses Abschnitts wird jedes Fenster durch einen Block folgender + Form beschrieben: +<programlisting> +window = <replaceable>fenstername</replaceable> +. +. +. +end +</programlisting> +</para> + +<para> + wobei <replaceable>fenstername</replaceable> einer dieser Strings sein + kann: +<itemizedlist> +<listitem><para><emphasis role="bold">main</emphasis> - für das Hauptfenster</para></listitem> +<listitem><para><emphasis role="bold">sub</emphasis> - für das Unterfenster</para></listitem> +<listitem><para><emphasis role="bold">menu</emphasis> - für das Skin-Menü</para></listitem> +<listitem><para><emphasis role="bold">playbar</emphasis> - Abspielleise</para></listitem> +</itemizedlist> +</para> + +<para> + (Die sub- und menu-Blöcke sind optional - du musst kein Menü erzeugen oder + das Unterfenster dekorieren.) +</para> + +<para> + Innerhalb des Fensterblocks kannst du jedes Element für das Fenster durch eine + Zeile in dieser Form definieren: +<programlisting>item = parameter</programlisting> + Wobei <literal>item</literal> ein String ist, der den Typ des GUI-elements + identifiziert, <literal>parameter</literal> ist ein numerischer oder textueller + Wert (oder eine Liste Komma-getrennter Werte). +</para> + +<para> + Fügt man nun das oben genannte zusammen, sieht die komplette Datei etwa so aus: +<programlisting> +section = movieplayer + window = main + ; ... Elemente fürs Hauptfenster ... + end + + window = sub + ; ... Elemente fürs Unterfenster ... + end + + window = menu + ; ... Elemente fürs Menü ... + end + + window = playbar + ; ... Elemente für die Abspielleise ... + end +end +</programlisting> +</para> + +<para> + Der Name einer Grafikdatei muss ohne führende Pfadangaben angegeben werden - + Grafiken werden im Verzeichnis <filename class="directory">skins</filename> + gesucht. + Du kannst (musst aber nicht) die Erweiterungder Datei spezifizieren. + Existiert die Datei nicht, versucht <application>MPlayer</application> die + <filename><dateiname>.<ext></filename> zu laden, wobwei + <literal>png</literal> und <literal>PNG</literal> als + <filename><ext></filename> (Erweiterung) versucht werden + (in dieser Reihenfolge). Die erste zutreffende Datei wird verwendet. +</para> + +<para> + Zum Schluss einige Worte zur Positionierung. + Hauptfenster und Unterfenster können in verschiedenen Ecken des Bilschirms + über die <literal>X</literal>- und <literal>Y</literal>-Koordinaten + platziert werden. <literal>0</literal> ist oben oder links, + <literal>-1</literal> bedeutet zentriert und <literal>-2</literal> ist + rechts oder unten, wie in dieser Illustration gezeigt: +</para> +<informalfigure> +<screen> +(0, 0)----(-1, 0)----(-2, 0) + | | | + | | | +(0,-1)----(-1,-1)----(-2,-1) + | | | + | | | +(0,-2)----(-1,-2)----(-2,-2) +</screen> +</informalfigure> + +<para> + Hier ein Beispiel, um es zu verdeutlichen. Angenommen du hast eine Grafik + mit Namen <filename>main.png</filename>, die für das Hauptfenster nutzt: + <programlisting>base = main, -1, -1</programlisting> + <application>MPlayer</application> versucht, die Dateien + <filename>main</filename>, + <filename>main.png</filename>, + <filename>main.PNG</filename> + zu laden. +</para> + + +<sect2 id="skin-file-main"> +<title>Hauptfenster und Abspielleise</title> +<para> + Unten steht eine Liste von Einträgen, die in den Blöcken + '<literal>window = main</literal>' ... '<literal>end</literal>', + und the '<literal>window = playbar</literal>' ... '<literal>end</literal>' + genutzt werden können. +</para> + +<variablelist> +<varlistentry> + <term><literal> + <anchor id="skin-main-base"/>base = image, X, Y + </literal></term> + <listitem><para> + Lässt dich die Hintergrundgrafik fürs Hauptfenster spezifizieren. + Das Fenster wird an der angegebenen Position <literal>X,Y</literal> auf + dem Bildschirm erscheinen. Es wird die Größe der Grafik besitzen. +</para> +<note> +<para> + Diese Koordinaten funktionieren im Moment nicht beim Anzeigefenster. +</para> +</note> +<warning> +<para> + Transparente Bereiche innerhalb der Grafik (mit der Farbe #FF00FF) erscheinen + auf X-Servern ohne die XShape-Extension schwarz. Die Breite der Grafik muss + durch 8 teilbar sein. +</para> +</warning> + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-button"/>button = image, X, Y, width, height, message + </literal></term> + <listitem><para> + Platziere einen Button mit der Größe <literal>width</literal> * <literal>height</literal> + an Position <literal>X,Y</literal>. Die angegebene <literal>message</literal> wird + erzeugt, wenn der Button angeklickt wird. Die mittels <literal>image</literal> + festgelegte Grafik muss drei untereinander liegende Teile aufweisen (entsprechend + der möglichen Zustände des Buttons), etwa so: +</para> +<informalfigure> +<screen> ++---------------+ +| gedrückt | ++---------------+ +| losgelassen | ++---------------+ +| deaktiviert | ++---------------+ +</screen> +</informalfigure> + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-decoration"/>decoration = enable|disable + </literal></term> + <listitem><para> + Aktiviere oder deaktiviere die Fenstermanager-Dekoration des Hauptfensters. + Standard ist <emphasis role="bold">disable</emphasis>. + </para> +<note> +<para> + Dies funktioniert nicht beim Anzeigefenster, dort braucht man es nicht. +</para> +</note> + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-hpotmeter"/>hpotmeter = button, bwidth, bheight, phases, numphases, default, X, Y, width, height, message + </literal></term> + <listitem><para> + + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-vpotmeter"/>vpotmeter = button, bwidth, bheight, phases, numphases, default, X, Y, width, height, message + </literal></term> + <listitem> + <para> + Platziere einen horizontal (hpotmeter) oder vertikal (vpotmeter) Potentiometer mit + der Größe <literal>width</literal> * <literal>height</literal> an Position + <literal>X,Y</literal>. Die Grafik kann in unterschiedliche Teile für die + verschiedenen Phasen des Potentiometers aufgeteilt werden (du kannst zum Beispiel + eines für die Lautstärkeregelung haben, das von rot nach grün wechselt während + sein Wert sich vom Minimum zum Mmaximum ändert.). + <literal>hpotmeter</literal> kann einen Button besitzen, der horizontal gezogen + werden kann. Die Parameter sind: + </para> + <itemizedlist> + <listitem><para><literal>button</literal> - die für den Button zu verwendende + Grafik (muss drei untereinander liegende Teile aufweisen, wie im Fall des + <link linkend="skin-button">Buttons</link>) + </para></listitem> + <listitem><para><literal>bwidth</literal>, <literal>bheight</literal> - Größe + de Buttons + </para></listitem> + <listitem><para><literal>phases</literal> - die für die verschiedenen Phasen + zu verwendende Grafik des hpotmeter. Ein spezieller Wert von <literal>NULL</literal> + kann benutzt werden, wenn du keine solche Grafik anwenden willst. Die Grafik muss + in vertikal <literal>numphases</literal> Teile wie folgt aufgeteilt werden: + </para> +<informalfigure> +<screen> ++------------+ +| phase #1 | ++------------+ +| phase #2 | ++------------+ + ... ++------------+ +| phase #n | ++------------+ +</screen> +</informalfigure> + </listitem> + <listitem><para><literal>numphases</literal> - Anzahl der Phasen, die in der + <literal>phases</literal>-Grafik untergebracht sind + </para></listitem> + <listitem><para><literal>default</literal> - Standard Wert fürs hpotmeter + (im Bereich <literal>0</literal> bis <literal>100</literal>) + </para></listitem> + <listitem><para><literal>X</literal>, <literal>Y</literal> - Position fürs hpotmeter + </para></listitem> + <listitem><para><literal>width</literal>, <literal>height</literal> - Breite und Höhe + des <literal>hpotmeter</literal> + </para></listitem> + <listitem><para><literal>message</literal> - die Meldung, die erzeugt werden soll, + wenn der Wert des <literal>hpotmeter</literal> geändert wird + </para></listitem> + </itemizedlist> + + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-potmeter"/>potmeter = phases, numphases, default, X, Y, width, height, message + </literal></term> + <listitem><para> + Ein <literal>hpotmeter</literal> ohne einen Button. (ich schätze, es ist dazu + bestimmt, herumgedreht zu werden, reagiert aber nur auf horizontales Ziehen.) + Eine Beschreibung der Parameter findest du unter + <link linkend="skin-hpotmeter">hpotmeter</link>. + <literal>phases</literal> können <literal>NULL</literal> sein, dies ist aber ziemlich + sinnlos, da du nicht sehen kannst, wo das <literal>Potentiometer</literal> hingesetzt + wurde. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-font"/>font = fontfile, fontid + </literal></term> + <listitem><para> + Definiert eine Schrift. <literal>fontfile</literal> ist der Name der + Schrift-Beschreibungsdatei mit der Erweiterung <filename>.fnt</filename> + (geib hier keine Erweiterung an). + <literal>fontid</literal> wird verwendet, um auf die Schrift zu verweisen + (siehe <link linkend="skin-dlabel">dlabel</link> + und <link linkend="skin-slabel">slabel</link>). Bis zu 25 Schrift können + definiert werden. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-slabel"/>slabel = X, Y, fontid, "text" + </literal></term> + <listitem><para> + Platziere ein statisches Label an Position <literal>X,Y</literal>. + <literal>text</literal> wird mittels der identifizierten + <literal>fontid</literal> angezeigt. Der Text ist einfach ein + eine Ausgangszeichenkette (<literal>$x</literal>-Variablen funktionieren nicht), + eingeschlossen von doppelten Anführungszeichen (das "-Zeichen kann jedoch + nicht Teil des Textes sein). + Das Label wird mittels der über die <literal>fontid</literal> identifizierten + Schrift angezeigt. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-dlabel"/>dlabel = X, Y, length, align, fontid, "text" + </literal></term> + <listitem> +<para> + Platziere ein dynamisches Label an Position <literal>X,Y</literal>. + Das Label wird als dynamisch bezeichnet, weil sein Text periodisch + aktualisiert wird. Die Maximallänge des Labels wird mit dem + Wert <literal>length</literal> vorgegeben (seine Höhe ist die der + Zeichen). + Wird der anzuzeigende Text breiter als dieser Wert, wird er gescrollt, + andernfalls wird er innerhalb des mittels des Wertes des + <literal>align</literal>-Parameters festgelegten Zwischenraums ausgerichtet: + <literal>0</literal> steht für rechts, + <literal>1</literal> steht für zentriert, + <literal>2</literal> steht für links. +</para> +<para> + Der anzuzeigende Text wird mit <literal>text</literal> festgelegt: + Er muss zwischen doppelten Anführungszeichen stehen (das "-Zeichen kann jedoch + nicht Teil des Textes sein). + Das Label wird mittels der über die <literal>fontid</literal> identifizierten + Schrift angezeigt. + Kannst folgende Variablen im Text verwenden: +</para> + +<informaltable> +<tgroup cols="2"> +<thead> + <row><entry>Variable</entry><entry>Bedeutung</entry></row> +</thead> +<tbody> +<row> +<entry>$1</entry> +<entry>Abspieldauer im <emphasis>hh:mm:ss</emphasis>-Format</entry> +</row> +<row> +<entry>$2</entry> +<entry>Abspieldauer im <emphasis>mmmm:ss</emphasis>-Format</entry> +</row> +<row> +<entry>$3</entry> +<entry>Abspieldauer im <emphasis>hh</emphasis>-Format (Stunden)</entry> +</row> +<row> +<entry>$4</entry> +<entry>Abspieldauer im <emphasis>mm</emphasis>-Format (Minuten)</entry> +</row> +<row> +<entry>$5</entry> +<entry>Abspieldauer im <emphasis>ss</emphasis>-Format (Sekunden)</entry> +</row> +<row> +<entry>$6</entry> +<entry>Filmlänge im <emphasis>hh:mm:ss</emphasis>-Format</entry> +</row> +<row> +<entry>$7</entry> +<entry>Filmlänge im <emphasis>mmmm:ss</emphasis>-Format</entry> +</row> +<row> +<entry>$8</entry> +<entry>Abspieldauer im <emphasis>h:mm:ss</emphasis>-Format</entry> +</row> +<row> +<entry>$v</entry> +<entry>Lautstärke im <emphasis>xxx.xx</emphasis>%-Format</entry> +</row> +<row> +<entry>$V</entry> +<entry>Lautstärke im <emphasis>xxx.xx</emphasis>-Format</entry> +</row> +<row> +<entry>$b</entry> +<entry>Balance im <emphasis>xxx.xx</emphasis>%-Format</entry> +</row> +<row> +<entry>$B</entry> +<entry>Balance in <emphasis>xxx.xx</emphasis>-Format</entry> +</row> +<row> +<entry>$$</entry> +<entry>das $-Zeichen</entry> +</row> +<row> +<entry>$a</entry> +<entry>ein dem Audio-Typ entsprechendes Zeichen (Nichts: <literal>n</literal>, +Mono: <literal>m</literal>, Stereo: <literal>t</literal>)</entry> +</row> +<row> +<entry>$t</entry> +<entry>Track-Nummer (in der Playliste)</entry> +</row> +<row> +<entry>$o</entry> +<entry>Dateiname</entry> +</row> +<row> +<entry>$f</entry> +<entry>Dateiname in kleinbuchstaben</entry> +</row> +<row> +<entry>$F</entry> +<entry>Dateiname in GROSSBUCHSTABEN</entry> +</row> +<row> +<entry>$T</entry> +<entry>Ein dem Stream-Typen entsprechendes Zeichen (Datei: <literal>f</literal>, +Video-CD: <literal>v</literal>, DVD: <literal>d</literal>, URL: <literal>u</literal>)</entry> +</row> +<row> +<entry>$p</entry> +<entry>Das <keycap>p</keycap>-Zeichen (wenn ein Film abgespielt wird und die Schrift +das Zeichen <keycap>p</keycap> enthält)</entry> +</row> +<row> +<entry>$s</entry> +<entry>Das <keycap>s</keycap>-Zeichen (wenn ein Film angehallten wird und die Schrift +das Zeichen <keycap>s</keycap> enthält)</entry> +</row> +<row> +<entry>$e</entry> +<entry>Das <keycap>e</keycap>-Zeichen (wenn ein Film pausiert wird und die Schrift +das Zeichen <keycap>e</keycap> enthält)</entry> +</row> +<row> +<entry>$x</entry> +<entry>Filmbreite</entry> +</row> +<row> +<entry>$y</entry> +<entry>Filmhöhe</entry> +</row> +<row> +<entry>$C</entry> +<entry>Name des verwendeten Codecs</entry> +</row> + +</tbody> +</tgroup> +</informaltable> +</listitem> + +</varlistentry> +</variablelist> + +<note><para> + Die Variablen <literal>$a, $T, $p, $s</literal> und <literal>$e</literal> + geben alle Zeichen zurück, die als spezielle Symbole angezeigt werden sollen + (zum Beispiel steht <keycap>e</keycap> für das Pause-Symbol, welches gewöhnlich + etwa so || aussieht). + Du solltest eine Schrift für normale Zeichen und eine weitere Schrift für + Symbole haben. Schau in den Abschnitt über + <link linkend="skin-fonts-symbols">Symbole</link> + für mehr Informationen. +</para></note> +</sect2> + +<sect2 id="skin-file-subwindow"> +<title>Unterfenster</title> +<para> + Die folgenden Einträge können in diesem Block verwendet werden +'<literal>window = sub</literal>' . . . '<literal>end</literal>'. +</para> + +<variablelist> +<varlistentry> + <term><literal> + <anchor id="skin-sub-base"/>base = image, X, Y, breite, hoehe + </literal></term> + <listitem><para> + Die im Fenster anzuzeigende Grafik. Das Fenster wird an der angegebenen + Position <literal>X,Y</literal> auf dem Bildschirm erscheinen + (<literal>0,0</literal> ist die obere linke Ecke). + Du kannst <literal>-1</literal> für zentriert und <literal>-2</literal> + für rechts (<literal>X</literal>) und unten (<literal>Y</literal>) festlegen. + Das Fenster wird so groß sein wie die Grafik. + <literal>width</literal> und <literal>height</literal> + kennzeichnen die Größe des Fensters; sie sind optional (wenn sie fehlen, hat + das Fenster die selbe Größe wie die Grafik). + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-background"/>background = R, G, B + </literal></term> + <listitem><para> + Lässt dich die Hintergrundfarbe setzen. Dies ist von Nutzen, wenn die Grafik + kleiner ist als das Fenster. + <literal>R</literal>, <literal>G</literal> und <literal>B</literal> + spezifizieren die Rot-, Grün- und Blau-Komponenten der Farbe (jede davon ist + eine Dzimalzahl von 0 bis 255). + </para></listitem> +</varlistentry> +</variablelist> +</sect2> + +<sect2 id="skin-file-menu"> +<title>Skin-Menü</title> +<para> + Wie bereits zuvor erwähnt, wird das Menü mittels zweier Grafiken dargestellt. + Normale Menüeinträge werden aus der Grafik entnommen, die durch das Element + <literal>base</literal> festgelegt sind, während der aktuell gewählte Eintrag + aus der Grafik entnommen wird, die durch das Element <literal>selected</literal> + spezifiziert wurde. Du musst Position und Größe jedes Menüeintrags mittels des + Elements <literal>menu</literal> definieren. +</para> + +<para> + Die folgenden Einträge können im Block + '<literal>window = menu</literal>'. . .'<literal>end</literal>' genutzt werden. +</para> + +<variablelist> +<varlistentry> + <term><literal> + <anchor id="skin-menu-base"/>base = image + </literal></term> + <listitem><para> + Die Grafik für normale Menüeinträge. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-selected"/>selected = image + </literal></term> + <listitem><para> + Die Grafik, die das Menü mit allen gewählten Einträgen anzeigt. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-menu"/>menu = X, Y, width, height, message + </literal></term> + <listitem><para> + Definiert die Position <literal>X,Y</literal> und die Größe eines Menüeintrags + innerhalb der Grafik. <literal>message</literal> ist die Meldung, die erzeugt + werden soll, wenn die Maustaste über dem Eintrag losgelassen wird. + </para></listitem> +</varlistentry> +</variablelist> +</sect2> +</sect1> + +<sect1 id="skin-fonts"> +<title>Schriften</title> +<para> + Wie im Abschnitt über die Skin-Teile beschrieben, wird eine Schrift durch eine + Grafik und eine Beschreibungsdatei definiert. Du kannst die Zeichen irgendwo + innerhalb der Grafik platzieren, aber stell sicher, dass Position und Größe + der Zeichen in der Beschreibungsdatei exakt angegeben sind. +</para> + +<para> + Die Schrift-Beschreibungsdatei (mit Erweiterung <filename>.fnt</filename>) + kann mit '<literal>;</literal>' beginnende Kommentarzeilen enthalten. + Die Datei muss eine Zeile in der Form enthalten + <anchor id="skin-font-image"/> + <programlisting>image = <replaceable>image</replaceable></programlisting> + Wobei <literal><replaceable>image</replaceable></literal> der Name der für + die Schrift anzuwendenden Grafikdatei ist (du musst keine Erweiterung angeben). + <anchor id="skin-font-char"/> +<programlisting>"char" = X, Y, width, hight</programlisting> + Hier legen <literal>X</literal> und <literal>Y</literal> die Position des + <literal>char</literal>-Zeichens innerhalb der Grafik fest + (<literal>0,0</literal> steht für die obere linke Ecke). + <literal>width</literal> und <literal>height</literal> sind die Maße der + Zeichen in Pixel. +</para> + +<para> + Dieses Beispiel definiert die Zeichen A, B, C unter Anwendung von + <filename>font.png</filename>. +<programlisting> +; Kann eine "Schrift" anstatt "font.png" sein. +image = font.png + +; Drei Zeichen reichen zu Demonstrationszwecken :-) +"A" = 0,0, 7,13 +"B" = 7,0, 7,13 +"C" = 14,0, 7,13 +</programlisting> +</para> + +<sect2 id="skin-fonts-symbols"> +<title>Symbole</title> +<para> + Einige Zeichen haben spezielle Bedeutungen, wenn sie von bestimmten + Variablen in <link linkend="skin-dlabel">dlabel</link> zurückgegeben + werden. Diese Zeichen sind dazu gedacht, als Symbole angezeigt zu werden, + sodass Sachen wie ein hübsches DVD-Logo an Stelle des Zeichens + '<literal>d</literal>' für einen DVD-Stream angezeigt werden können. +</para> +<para> + Die folgende Tabelle listet alle Zeichen auf, die zum Anzeigen von + Symbolen genutzt werden können (und daher eine andere Schrift benötigen). +</para> + +<informaltable> +<tgroup cols="2"> +<thead> + <row><entry>Zeichen</entry><entry>Symbol</entry></row> +</thead> +<tbody> +<row><entry><keycap>p</keycap></entry><entry>Play</entry></row> +<row><entry><keycap>s</keycap></entry><entry>Stop</entry></row> +<row><entry><keycap>e</keycap></entry><entry>Pause</entry></row> +<row><entry><keycap>n</keycap></entry><entry>Kein Sound</entry></row> +<row><entry><keycap>m</keycap></entry><entry>Mono-Sound</entry></row> +<row><entry><keycap>t</keycap></entry><entry>Stereo-Sound</entry></row> +<row><entry><keycap>f</keycap></entry><entry>Stream ist eine Datei</entry></row> +<row><entry><keycap>v</keycap></entry><entry>Stream ist eine Video-CD</entry></row> +<row><entry><keycap>d</keycap></entry><entry>Stream ist eine DVD</entry></row> +<row><entry><keycap>u</keycap></entry><entry>Stream ist eine URL</entry></row> +</tbody> +</tgroup> +</informaltable> +</sect2> +</sect1> + +<sect1 id="skin-gui"> +<title>GUI-Meldungen</title> +<para> + Dies sind die Meldungen, die von Buttons, Potentiometern und + Menüeinträgen generiert werden können. +</para> +<note> +<para> + Einige der Meldungen funktionieren vielleicht nicht wie erwartet + (oder vielleicht auch gar nicht). + Wie du weißt, befindet sich das GUI in der Entwicklung. +</para> +</note> + +<variablelist> +<title>Playback-Kontrolle:</title> +<varlistentry> + <term><emphasis role="bold">evNext</emphasis></term> + <listitem><para> + Springe zum nächsten Track in der Playliste. + </para></listitem> +< |