Mercurial > mplayer.hg
changeset 15775:9f2b1c5bbf27
Synced with 1.12
author | jheryan |
---|---|
date | Mon, 20 Jun 2005 06:10:59 +0000 |
parents | ed3fec6506c4 |
children | 7ba279f0afa0 |
files | DOCS/xml/cs/skin.xml |
diffstat | 1 files changed, 1118 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DOCS/xml/cs/skin.xml Mon Jun 20 06:10:59 2005 +0000 @@ -0,0 +1,1118 @@ +<?xml version="1.0" encoding="iso-8859-2"?> +<!-- Synced with: 1.12 --> +<appendix id="skin"> +<title>Formát skinů <application>MPlayer</application>u</title> +<para> +Účel tohoto dokumentu je popis formátu skinu +<application>MPlayer</application>u. Zde uvedené informace mohou být +chybné, protože: +<orderedlist> +<listitem><para>Nejsem to já, kdo píše GUI.</para></listitem> +<listitem><para>GUI není dokončeno.</para></listitem> +<listitem><para>Mohu se mýlit.</para></listitem> +</orderedlist> +Takže nebuďte překvapeni, pokud něco nebude pracovat přesně tak, jak je to zde +popsáno. +</para> + +<para>Děkuji <emphasis>Zoltánu Ponekkerovi</emphasis> za jeho pomoc.</para> + +<para><emphasis>András Mohari <mayday@freemail.hu></emphasis></para> + +<sect1 id="skin-overview"> +<title>Přehled</title> +<para> +Nemá to sice nic společného s formátem skinu, ale měli byste vědět, že +<application>MPlayer</application> <emphasis role="bold">nemá</emphasis> +vestavěný skin, takže <emphasis role="bold">si musíte alespoň jeden skin +nainstalovat, chcete-li používat GUI.</emphasis> +</para> + +<sect2 id="skin-overview-directories"> +<title>Adresáře</title> +<para> +Adresáře prohledávané na skiny jsou (v tomto pořadí): +<orderedlist> +<listitem><para> +<filename class="directory">$(DATADIR)/Skin/</filename> +</para></listitem> +<listitem><para> +<filename class="directory">$(PREFIX)/share/mplayer/Skin/</filename> +</para></listitem> +<listitem><para> +<filename class="directory">~/.mplayer/Skin/</filename> +</para></listitem> +</orderedlist> +</para> + +<para> +Poznamenejme, že první z cest se může lišit podle toho, jak je +<application>MPlayer</application> zkonfigurován (viz volby configure skriptu +<option>--prefix</option> a <option>--datadir</option>). +</para> + +<para> +Každý skin je instalován do vlastního adresáře v některém z výše uvedených. +Například: +<screen>$(PREFIX)/share/mplayer/Skin/default/</screen> +</para> +</sect2> + +<sect2 id="skin-overview-formats"> +<title>Formáty obrázků</title> +<para>Obrázky musí být truecolor (24 nebo 32 bpp) PNG.</para> +<para> +V hlavním okně a v přehrávači (viz níž) můžete použít obrázky s 'průhledností': +Oblasti vyplněné barvou #FF00FF (magenta) jsou plně průhledné, pokud jsou +zobrazovány <application>MPlayer</application>em. To znamená, že můžete mít +tvarovaná okna, pokud má váš X server XShape rozšíření. +</para> +</sect2> + +<sect2 id="skin-overview-components"> +<title>Součásti skinu</title> +<para> +Skiny mají poměrně volný formát (narozdíl například od pevného formátu skinů +<application>Winamp</application>u/<application>XMMS</application>), +takže je jen na vás, zda vytvoříte něco skvělého. +</para> + +<para> +V současnosti jsou zde čtyři okna, která můžete dekorovat: +<link linkend="skin-file-main">hlavní okno</link>, +<link linkend="skin-file-subwindow">podokno</link>, +<link linkend="skin-file-main">ovládací panel</link> a +<link linkend="skin-file-menu">nabidka</link> (tu lze aktivovat +pravým myšítkem). + +<itemizedlist> +<listitem><para> + <application>MPlayer</application> je ovládán v + <emphasis role="bold">hlavním okně</emphasis> a/nebo v + <emphasis role="bold">ovládacím panelu</emphasis>. Pozadím okna je obrázek. + Následující součásti mohou (a musí) být umístěny v okně: + <emphasis>tlačítka</emphasis>, <emphasis>potenciometry</emphasis> (šoupátka) + a <emphasis>popisky</emphasis>. + Každé součásti musíte nastavit pozici a velikost. +</para><para> + A <emphasis role="bold">tlačítko</emphasis> má tři stavy (stisknuto, puštěno a + zakázáno), proto musí být jeho obraz svisle rozdělen do tří částí. + Detaily viz součást <link linkend="skin-button">tlačítko</link>. +</para><para> + A <emphasis role="bold">potenciometr</emphasis> (hlavně používaný pro + lištu převíjení a ovládání hlasitosti/stereováhy) může mít libovolný počet + fází dělících jeho obraz na jednotlivé části pod sebou. Detaily viz + <link linkend="skin-hpotmeter">hpotenciometr</link> a + <link linkend="skin-potmeter">potenciometr</link>. +</para><para> + <emphasis role="bold">Popisky</emphasis> jsou poněkud zvláštní: Znaky potřebné + pro jejich vykreslení jsou brány z obrazového souboru a znaky v obrázku jsou + popsány <link linkend="skin-fonts">souborem popisu fontu</link>. + Tento (druhý) soubor je prostý textový soubor, který popisuje pozici x,y a + velikost každého znaku v obrázku (obrázkový soubor a soubor popisu fontu + <emphasis>spolu</emphasis> tvoří font). Detaily viz + <link linkend="skin-dlabel">dlabel</link>. +</para> +<note><para>Všechny obrázky mohou mít plnou průhlednost, jak je popsána v sekci + o <link linkend="skin-overview-formats">formátech obrázků</link>. Pokud X + server nepodporuje rozšíření XShape, budou průhledné části černé. Pokud byste + chtěli využít tuto vlastnost, musí být šířka pozadí hlavního okna celočíselně + dělitelná 8. +</para></note> +</listitem> + +<listitem><para> + <emphasis role="bold">Podokno</emphasis> je to okno, kde se zobrazuje film. + Může v něm být zobrazen určený obrázek, pokud není načten žádný film (je + docela únavné, pokud zde není nic :-)). + <emphasis role="bold">Poznámka:</emphasis> průhlednost zde + is <emphasis role="bold">není povolena</emphasis>. +</para></listitem> + +<listitem><para> + <emphasis role="bold">Nabídka</emphasis> je jen způsob, jak ovládat + <application>MPlayer</application> položkami menu. Vyžadovány jsou dva + obrázky: jeden z nich jako menu v normálním stavu a druhý se zvýrazněnými + položkami. Když pak vyvoláte menu, je zobrazen první obrázek. Při pohybu myší + přes položky, je zkopírována aktuálně vybraná položka z druhého obrázku přes + ten první pod kursorem (druhý obrázek není nikdy zobrazen celý). +</para><para> + Položka menu je definována svou pozicí a velikostí v obrázku (detaily viz + sekce <link linkend="skin-file-menu">nabídka</link>). +</para></listitem> +</itemizedlist> +</para> + +<para> + Jednu důležitou věc jsme ještě nezmínili: Mají-li tlačítka, + potenciometry a položky menu pracovat, musí <application>MPlayer</application> + vědět, co má udělat, pokud je na ně kliknuto. To je zajištěno pomocí + <link linkend="skin-gui">zpráv</link> (událostí). Pro tyto členy tedy musíte + definovat zprávy, které budou při kliku generovány. +</para> +</sect2> + +<sect2 id="skin-files"> +<title>Soubory</title> +<para> +Pro výrobu skinu budete potřebovat následující: +<itemizedlist> +<listitem><para> + Konfigurační soubor jménem <link linkend="skin-file">skin</link> řekne + <application>MPlayer</application>u, jak má dát jednotlivé části skinu + dohromady a co udělat, kliknete-li někde v okně. +</para></listitem> +<listitem><para> + Obrázek pozadí hlavního okna. +</para></listitem> +<listitem><para> + Obrázky položek hlavního okna (včetně jednoho nebo více souborů s popisem + fontu pro vykreslování popisek). +</para></listitem> +<listitem><para> + Obrázek pro zobrazení v podokně (volitelný). +</para></listitem> +<listitem><para> + Dva obrázky pro nabídku (ty jsou potřeba pouze pokud chcete vytvořit menu). +</para></listitem> +</itemizedlist> + S výjimkou konfiguračního souboru skinu si můžete pojmenovat ostatní soubory + jak chcete (s tím, že vaše soubory s popisem fontu budou mít příponu + <filename>.fnt</filename>). +</para> +</sect2> +</sect1> + +<sect1 id="skin-file"> +<title>Soubor skin</title> +<para> +Jak jsme již řekli, je to konfigurační soubor skinu. Soubor je řádkově +orientován; řádky s komentářem začínají znakem '<literal>;</literal>' (před ním +jsou povoleny jen mezery a tabulátory). +</para> + +<para> +Soubor je složen ze sekcí. Každá sekce popisuje skin pro aplikaci a má +následující formu: +<programlisting> +section = <replaceable>název cekce</replaceable> +. +. +. +end +</programlisting> +</para> + +<para> +Zatím máme jen jednu aplikaci, takže potřebujete jen jednu sekci: její název je +<emphasis role="bold">movieplayer</emphasis>. +</para> + +<para> +Uvnitř sekce je každé okno posáno blokem, který má následující formu: +<programlisting> +window = <replaceable>název okna</replaceable> +. +. +. +end +</programlisting> +</para> + +<para> +kde <replaceable>název okna</replaceable> může být jeden z těchto řetězců: +<itemizedlist> +<listitem><para><emphasis role="bold">main</emphasis> - pro hlavní okno</para></listitem> +<listitem><para><emphasis role="bold">sub</emphasis> - pro podokno</para></listitem> +<listitem><para><emphasis role="bold">menu</emphasis> - pro nabídku</para></listitem> +<listitem><para><emphasis role="bold">playbar</emphasis> - ovládací panel</para></listitem> +</itemizedlist> +</para> + +<para> +(Bloky sub a menu jsou volitelné - nemusíte vytvářet nabídku nebo vyzdobit +podokno.) +</para> + +<para> +Uvnitř window bloku můžete definovat každou položku okna řádkem v tomto tvaru: +<programlisting>položka = parametr</programlisting> +Kde <literal>položka</literal> je řetězec označující typ položky GUI a +<literal>parametr</literal> je číselná nebo textová hodnota (nebo seznam hodnot +oddělených čárkami). +</para> + +<para> +Dáte-li to všechno dohromady, celý soubor vypadá asi takto: +<programlisting> +section = movieplayer + window = main + ; ... položky hlavního okna ... + end + + window = sub + ; ... položky podokna ... + end + + window = menu + ; ... položky menu ... + end + + window = playbar + ; ... položky ovládacího panelu ... + end +end +</programlisting> +</para> + +<para> +Jméno souboru s obrázkem musí být zadáno bez úvodních adresářů - obrázky jsou +vyhledávány v adresáři <filename class="directory">Skin</filename>. +Měli byste (ale nemusíte) zadat příponu souboru. Pokud soubor neexistuje, +zkouší <application>MPlayer</application> načíst soubor +<filename><jméno>.<příp></filename>, kdy jsou za +<filename><příp></filename> zkoušeny přípony <literal>png</literal> +a <literal>PNG</literal> (v tomto pořadí). Použitý bude první vyhovující soubor. +</para> + +<para> +Nakonec ještě pár slov k umísťování. Hlavní okno a podokno mohou být umístěny +v různých rozích obrazovky zadáním souřadnic <literal>X</literal> a +<literal>Y</literal>. <literal>0</literal> je nahoře nebo vlevo, +<literal>-1</literal> je střed a <literal>-2</literal> je vpravo nebo dole, jak +je vidět na obrázku: +</para> +<informalfigure> +<screen> +(0, 0)----(-1, 0)----(-2, 0) + | | | + | | | +(0,-1)----(-1,-1)----(-2,-1) + | | | + | | | +(0,-2)----(-1,-2)----(-2,-2) +</screen> +</informalfigure> + +<para> +Aby bylo vše jasné, uvádíme příklad. Řekněme, že máte obrázek jménem +<filename>main.png</filename>, který použijete pro hlavní okno: +<programlisting>base = main, -1, -1</programlisting> +<application>MPlayer</application> zkusí načíst soubory <filename>main</filename>, +<filename>main.png</filename>, <filename>main.PNG</filename>. +</para> + + +<sect2 id="skin-file-main"> +<title>Hlavní okno a ovládací panel</title> +<para> +Níže uvádíme seznam položek, které mohou být použity v blocích +'<literal>window = main</literal>' ... '<literal>end</literal>', +a '<literal>window = playbar</literal>' ... '<literal>end</literal>'. +</para> + +<variablelist> +<varlistentry> + <term><literal> + <anchor id="skin-main-base"/>base = obrázek, X, Y + </literal></term> + <listitem><para> + Umožňuje nastavit obrázek pozadí hlavního okna. Okno bude vykresleno na + zadaných souřadnicích <literal>X,Y</literal> na obrazovce a bude mít velikost + obrázku. + </para> + <note><para>Tyto koordináty zatím nefungují pro okno display.</para></note> + <warning><para>Průhledné oblasti v obrázku (obarvené #FF00FF) budou černé + na X serverech bez XShape rozšíření. Šířka obrázku musí být celočíselně + dělitelná 8.</para></warning> + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-button"/>button = obrázek, X, Y, šířka, výška, zpráva + </literal></term> + <listitem><para> + Umístí tlačítko rozměru <literal>šířka</literal> * <literal>výška</literal> + na pozici <literal>X,Y</literal>. Zadaná <literal>zpráva</literal> je + generována při kliku na tlačítko. Zadaný <literal>obrázek</literal> musí + mít tři části pod sebou (odpovídající možným stavům tlačítka) takto: +</para> +<informalfigure> +<screen> ++------------+ +| stisknuto | ++------------+ +| uvolněno | ++------------+ +| zakázáno | ++------------+ +</screen> +</informalfigure> + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-decoration"/>decoration = enable|disable + </literal></term> + <listitem><para> + Zapne (enable) nebo vypne (disable) dekoraci hlavního okna, produkovanou + okenním manažerem. Výchozí je <emphasis role="bold">disable</emphasis>. + </para> + <note><para>V okně display to nefunguje, není to potřeba.</para></note> + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-hpotmeter"/>hpotmeter = tlačítko, tšířka, tvýška, fáze, počet_fází, výchozí, X, Y, šířka, výška, zpráva + </literal></term> + <listitem><para> + + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-vpotmeter"/>vpotmeter = tlačítko, tšířka, tvýška, fáze, počet_fází, výchozí, X, Y, šířka, výška, zpráva + </literal></term> + <listitem><para> + Umístí vodorovný (hpotmeter) nebo svislý (vpotmeter) potenciometr velikosti +<literal>šířka</literal> * <literal>výška</literal> na pozici +<literal>X,Y</literal>. Obrázek může být rozdělen do různých částí pro různé +fáze potenciometru (Například můžete mít potenciometr pro nastavení hlasitosti, +jehož dráha se barví ze zelené na červenou, jak se jeho hodnota mění od nejmenší +do největší.). <literal>hpotmeter</literal> může mít táhlo, které může být +vodorovně taženo. Význam parametrů: + </para> + <itemizedlist> + <listitem><para><literal>tlačítko</literal> - obrázek, ktrý se použije pro + tlačítko (musí mít tři části pod sebou, stejně jako v případě tohoto + <link linkend="skin-button">tlačítka</link>) + </para></listitem> + <listitem><para><literal>tšířka</literal>, <literal>tvýška</literal> - + velikost tlačítka + </para></listitem> + <listitem><para><literal>fáze</literal> - obrázek použitý pro různé fáze + hpotmetru. Pokud žádný obrázek nechcete, můžete použít speciální hodnotu + <literal>NULL</literal>. Obrázek musí být rozdělen svisle na + <literal>počet_fází</literal> částí takto: + </para> +<informalfigure> +<screen> ++------------+ +| fáze #1 | ++------------+ +| fáze #2 | ++------------+ + ... ++------------+ +| fáze #n | ++------------+ +</screen> +</informalfigure> + </listitem> + <listitem><para><literal>počet_fází</literal> - počet fází uložených v + obrázku <literal>fáze</literal> + </para></listitem> + <listitem><para><literal>výchozí</literal> - výchozí hodnota pro hpotmeter + (v rozsahu <literal>0</literal> až <literal>100</literal>) + </para></listitem> + <listitem><para><literal>X</literal>, <literal>Y</literal> - pozice pro hpotmeter + </para></listitem> + <listitem><para><literal>šířka</literal>, <literal>výška</literal> - šířka a výška + <literal>hpotmeter</literal>u + </para></listitem> + <listitem><para><literal>zpráva</literal> - zpráva generovaná při změně + hodnoty <literal>hpotmeter</literal>u + </para></listitem> + </itemizedlist> + + </listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-potmeter"/>potmeter = fáze, počet_fází, výchozí, X, Y, šířka, výška, zpráva + </literal></term> + <listitem><para> +<literal>hpotmeter</literal> bez tlačítka. (soudil bych, že byl míněn jako +otočný, ale reaguje pouze na horizontální tažení.) Popis parametrů je stejný +jako v <link linkend="skin-hpotmeter">hpotmeter</link>. +<literal>fáze</literal> mohou být <literal>NULL</literal>, ale je to vcelku +k ničemu, jelikož nemůžete vidět, jak je nastaven <literal>potmeter</literal>. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-font"/>font = soubor_fontu, id_fontu + </literal></term> + <listitem><para> +Definuje font. <literal>soubor_fontu</literal> je jméno souboru popisu fontu +s příponou <filename>.fnt</filename> (zde příponu nezadávejte). +<literal>id_fontu</literal> je použit jako ukazatel na font +(viz <link linkend="skin-dlabel">dlabel</link> +a <link linkend="skin-slabel">slabel</link>). Definováno může být více než 25 fontů. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-slabel"/>slabel = X, Y, id_fontu, "text" + </literal></term> + <listitem><para> +Umístí statický popisek na pozici <literal>X,Y</literal>. <literal>text</literal> +je zobrazen fontem identifikovaným pomocí <literal>id_fontu</literal>. Text je +surový řetězec (<literal>$x</literal> proměnné nefungují), který musí být uzavřen +ve dvojitých uvozovkách (ale znak " nesmí být součástí textu). +Popisek je zobrazen fontem identifikovaným pomocí <literal>id_fontu</literal>. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-dlabel"/>dlabel = X, Y, délka, zarovnání, id_fontu, "text" + </literal></term> + <listitem> +<para> +Umístí dynamický popisek na pozici <literal>X,Y</literal>. Popisek je +dynamický proto, že je jeho text periodicky obnovován. Maximální délka +popisku je nastavena na <literal>délka</literal> (jeho výškou je výška znaku). +Pokud je zobrazovaný text širší, pak bude rolován, +jinak bude zarovnán do určeného prostoru podle hodnoty parametru +<literal>zarovnání</literal>: <literal>0</literal> je zarovnání vpravo, +<literal>1</literal> na střed, <literal>2</literal> vlevo. +</para> +<para> +Text k zobrazení je zadán parametrem <literal>text</literal>: Musí být uzavřen +do dvojitých uvozovek (ale znak " nesmí být součástí textu). +Popisek je zobrazen fontem identifikovaným pomocí <literal>id_fontu</literal>. +V textu můžete použít tyto proměnné: +</para> + +<informaltable> +<tgroup cols="2"> +<thead> + <row><entry>Proměnná</entry><entry>Význam</entry></row> +</thead> +<tbody> +<row> +<entry>$1</entry> +<entry>čas přehrávání ve formátu <emphasis>hh:mm:ss</emphasis></entry> +</row> +<row> +<entry>$2</entry> +<entry>čas přehrávání ve formátu <emphasis>mmmm:ss</emphasis></entry> +</row> +<row> +<entry>$3</entry> +<entry>čas přehrávání ve formátu <emphasis>hh</emphasis> (hodiny)</entry> +</row> +<row> +<entry>$4</entry> +<entry>čas přehrávání ve formátu <emphasis>mm</emphasis> (minuty)</entry> +</row> +<row> +<entry>$5</entry> +<entry>čas přehrávání ve formátu <emphasis>ss</emphasis> (sekundy)</entry> +</row> +<row> +<entry>$6</entry> +<entry>délka filmu ve formátu <emphasis>hh:mm:ss</emphasis></entry> +</row> +<row> +<entry>$7</entry> +<entry>délka filmu ve formátu <emphasis>mmmm:ss</emphasis></entry> +</row> +<row> +<entry>$8</entry> +<entry>čas přehrávání ve formátu <emphasis>h:mm:ss</emphasis></entry> +</row> +<row> +<entry>$v</entry> +<entry>hlasitost ve formátu <emphasis>xxx.xx</emphasis>%</entry> +</row> +<row> +<entry>$V</entry> +<entry>hlasitost ve formátu <emphasis>xxx.xx</emphasis></entry> +</row> +<row> +<entry>$b</entry> +<entry>stereováha ve formátu <emphasis>xxx.xx</emphasis>%</entry> +</row> +<row> +<entry>$B</entry> +<entry>stereováha ve formátu <emphasis>xxx.xx</emphasis></entry> +</row> +<row> +<entry>$$</entry> +<entry>znak $</entry> +</row> +<row> +<entry>$a</entry> +<entry>znak podle typu audia (žádné: <literal>n</literal>, +mono: <literal>m</literal>, stereo: <literal>t</literal>)</entry> +</row> +<row> +<entry>$t</entry> +<entry>číslo stopy (v playlistu)</entry> +</row> +<row> +<entry>$o</entry> +<entry>název souboru</entry> +</row> +<row> +<entry>$f</entry> +<entry>název souboru malými písmeny</entry> +</row> +<row> +<entry>$F</entry> +<entry>název souboru velkými písmeny</entry> +</row> +<row> +<entry>$T</entry> +<entry>znak podle typu datového proudu (soubor: <literal>f</literal>, +Video CD: <literal>v</literal>, DVD: <literal>d</literal>, URL: <literal>u</literal>)</entry> +</row> +<row> +<entry>$p</entry> +<entry>znak <keycap>p</keycap> (pokud přehráváte soubor a font obsahuje +znak <keycap>p</keycap>)</entry> +</row> +<row> +<entry>$s</entry> +<entry>znak <keycap>s</keycap> character (pokud přehráváte soubor a font obsahuje +znak <keycap>s</keycap>)</entry> +</row> +<row> +<entry>$e</entry> +<entry>znak <keycap>e</keycap> (pokud je přehrávání pozastaveno a font obsahuje +znak <keycap>e</keycap>)</entry> +</row> +<row> +<entry>$x</entry> +<entry>šířka filmu</entry> +</row> +<row> +<entry>$y</entry> +<entry>výška filmu</entry> +</row> +<row> +<entry>$C</entry> +<entry>název použitého kodeku</entry> +</row> + +</tbody> +</tgroup> +</informaltable> +</listitem> + +</varlistentry> +</variablelist> + +<note><para> +Proměnné <literal>$a, $T, $p, $s</literal> a <literal>$e</literal> +vracejí znaky, které by se měly zobrazit jako speciální symboly (například +<keycap>e</keycap> je symbol pro pauzu, který obvykle vypadá asi takto +||). Měli byste mít font pro normální znaky a jiný font pro +symboly. Pro více informací viz sekci +<link linkend="skin-fonts-symbols">symboly</link>. +</para></note> +</sect2> + +<sect2 id="skin-file-subwindow"> +<title>Ovládací panel</title> +<para> +Následující vstupy mohou být použity v bloku +'<literal>window = sub</literal>' . . . '<literal>end</literal>'. +</para> + +<variablelist> +<varlistentry> + <term><literal> + <anchor id="skin-sub-base"/>base = obrázek, X, Y, šířka, výška + </literal></term> + <listitem><para> +Obrázek, který bude zobrazen v okně. Okno se zobrazí na pozici zadané +souřadnicemi <literal>X,Y</literal> na obrazovce (<literal>0,0</literal> je +levý horní roh). Můžete nastavit <literal>-1</literal> pro střed a <literal>-2</literal> +pro vpravo (<literal>X</literal>) a dole (<literal>Y</literal>). Okno bude +stejně velké jako obrázek. <literal>šířka</literal> a <literal>výška</literal> +udávají velikost okna; jsou volitelné (pokud chybí, má okno rozměry shodné +s obrázkem). + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-background"/>background = R, G, B + </literal></term> + <listitem><para> +Umožňuje nastavit barvu pozadí. To je užitečné, pokud je obrázek menší než +okno. <literal>R</literal>, <literal>G</literal> a <literal>B</literal> +označují červenou, zelenou a modrou složku barvy (každá z nich je dekadická +hodnota 0 až 255). + </para></listitem> +</varlistentry> +</variablelist> +</sect2> + +<sect2 id="skin-file-menu"> +<title>Nabídka</title> +<para> +Jak již bylo dříve řečeno, nabídka je zobrazena pomocí dvou obrázků. Normální +položky nabídky jsou brány z obrázku určeného položkou <literal>base</literal>, +zatímco aktuálně zvolený vstup je brán z obrázku určeného položkou +<literal>selected</literal>. Musíte definovat pozici a rozměr každé položky +nabídky. +</para> + +<para> +Následující vstupy mohou být použity v bloku +'<literal>window = menu</literal>'. . .'<literal>end</literal>'. +</para> + +<variablelist> +<varlistentry> + <term><literal> + <anchor id="skin-menu-base"/>base = obrázek + </literal></term> + <listitem><para> +Obrázek normálních položek nabídky. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-selected"/>selected = obrázek + </literal></term> + <listitem><para> +Obrázek nabídky kde jsou všechny položky vybrány. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><literal> + <anchor id="skin-menu"/>menu = X, Y, šířka, výška, zpráva + </literal></term> + <listitem><para> +Definuje pozici <literal>X,Y</literal> a rozměr položky nabídky v obrázku. +<literal>zpráva</literal> je zpráva, generovaná jakmile je uvolněno tlačítko +myši nad položkou. + </para></listitem> +</varlistentry> +</variablelist> +</sect2> +</sect1> + +<sect1 id="skin-fonts"> +<title>Fonty</title> +<para> +Jak jsme již zmínili v sekci o částech skinu, font je definován obrázkem a +souborem popisu. Můžete rozmístit znaky v obrázku libovolně, ale ujistěte se, že +je jejich velikost a pozice je uvedena v souboru popisu přesně. +</para> + +<para> +Soubor popisu fontu (s příponou <filename>.fnt</filename>) může obsahovat +řádky s komentářem začínající '<literal>;</literal>'. Soubor musí obsahovat +řádek ve formě +<anchor id="skin-font-image"/> +<programlisting>image = <replaceable>obrázek</replaceable></programlisting> +Kde <literal><replaceable>obrázek</replaceable></literal> je název obrázku +použitého pro font (nemusíte zadávat příponu). +<anchor id="skin-font-char"/> +<programlisting>"char" = X, Y, šířka, výška</programlisting> +Zde <literal>X</literal> a <literal>Y</literal> udávají pozici +<literal>char</literal> znaku v obrázku (<literal>0,0</literal> je levý +horní roh). <literal>šířka</literal> a <literal>výška</literal> jsou +rozměry znaku v pixelech. +</para> + +<para> +Tento příklad definuje znaky A, B, C s použítím <filename>font.png</filename>. +<programlisting> +; Zde může být jen "font" místo "font.png". +image = font.png + +; Tři znaky pro ilustraci stačí :-) +"A" = 0,0, 7,13 +"B" = 7,0, 7,13 +"C" = 14,0, 7,13 +</programlisting> +</para> + +<sect2 id="skin-fonts-symbols"> +<title>Symboly</title> +<para> +Některé znaky mají speciální význam, jsou-li vráceny některou z proměnných +použitých v <link linkend="skin-dlabel">dlabel</link>. Tyto znaky mají být +zobrazovány jako symboly, takže mohou být zobrazeny věci jako pěkné DVD logo + místo znaku '<literal>d</literal>' pro DVD datový proud. +</para> +<para> +Následující tabulka obsahuje znaky, které mohou být použity k zobrazení +symbolů (a tudíž vyžadují odlišný font). +</para> + +<informaltable> +<tgroup cols="2"> +<thead> + <row><entry>Znak</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>bez zvuku</entry></row> +<row><entry><keycap>m</keycap></entry><entry>mono zvuk</entry></row> +<row><entry><keycap>t</keycap></entry><entry>stereo zvuk</entry></row> +<row><entry><keycap>f</keycap></entry><entry>datový proud je soubor</entry></row> +<row><entry><keycap>v</keycap></entry><entry>datový proud je Video CD</entry></row> +<row><entry><keycap>d</keycap></entry><entry>datový proud je DVD</entry></row> +<row><entry><keycap>u</keycap></entry><entry>datový proud je URL</entry></row> +</tbody> +</tgroup> +</informaltable> +</sect2> +</sect1> + +<sect1 id="skin-gui"> +<title>GUI zprávy</title> +<para> +Tyto zprávy mohou být generovány tlačítky, potenciometry a položkami +nabídky. +</para> +<note><para> +Některé zpráva nemusí pracovat podle očekávání (nebo vůbec). +Jak víte, GUI je ve vývoji. +</para></note> + +<variablelist> +<title>Ovládání přehrávání:</title> +<varlistentry> + <term><emphasis role="bold">evNext</emphasis></term> + <listitem><para> +Skočí na následující stopu v playlistu. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPause</emphasis></term> + <listitem><para> +Tvoří přepínač společně s <literal>evPlaySwitchToPause</literal>. Ty mohou +být použity k vytvoření tradičního play/pauza tlačítka. Obě zprávy by měly +být přiřazeny tlačítkům umístěným na stejné pozici. Tato zpráva pozastaví +přehrávání a zobrazen bude obrázek pro <literal>evPlaySwitchToPause</literal> +talčítko (pro indikaci, že tlačítko může být stisknuto pro obnovení přehrávání). + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPlay</emphasis></term> + <listitem><para> +Zahájí přehrávání. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPlaySwitchToPause</emphasis></term> + <listitem><para> +Protiklad <literal>evPauseSwitchToPlay</literal>. Tato zpráva zahájí přehrávání +a zobrazí obrázek pro tlačítko <literal>evPauseSwitchToPlay</literal> +(pro indikaci, že tlačítko může být stisknuto pro pozastavení přehrávání). + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPrev</emphasis></term> + <listitem><para> +Skočí na předchozí stopu v playlistu. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evStop</emphasis></term> + <listitem><para> +Zastaví přehrávání. + </para></listitem> +</varlistentry> +</variablelist> + +<variablelist> +<title>Převíjení:</title> +<varlistentry> + <term><emphasis role="bold">evBackward10sec</emphasis></term> + <listitem><para> +Převine zpět o 10 sekund. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evBackward1min</emphasis></term> + <listitem><para> +Převine zpět o 1 minutu. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evBackward10min</emphasis></term> + <listitem><para> +Převine zpět o 10 minut. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evForward10sec</emphasis></term> + <listitem><para> +Převine vpřed o 10 sekund. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evForward1min</emphasis></term> + <listitem><para> +Převine vpřed o 1 minutu. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evForward10min</emphasis></term> + <listitem><para> +Převine vpřed o 10 minut. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evSetMoviePosition</emphasis></term> + <listitem><para> +Převine na danou pozici (může být přiřazeno potenciometru; použije se +relativní hodnota (0-100%) potenciometru). + </para></listitem> +</varlistentry> +</variablelist> + +<variablelist> +<title>Ovládání videa:</title> +<varlistentry> + <term><emphasis role="bold">evHalfSize</emphasis></term> + <listitem><para> +Nastaví velikost okna filmu na poloviční velikost. + </para></listitem> +</varlistentry> +<varlistentry> + <term><emphasis role="bold">evDoubleSize</emphasis></term> + <listitem><para> +Nastaví velikost okna filmu na dvojnásobnou velikost. + </para></listitem> +</varlistentry> +<varlistentry> + <term><emphasis role="bold">evFullScreen</emphasis></term> + <listitem><para> +Přepíná do celoobrazovkového režimu a zpět. + </para></listitem> +</varlistentry> +<varlistentry> + <term><emphasis role="bold">evNormalSize</emphasis></term> + <listitem><para> +Nastaví velikost okna na normální velikost. + </para></listitem> +</varlistentry> +</variablelist> + +<variablelist> +<title>Ovládání zvuku:</title> +<varlistentry> + <term><emphasis role="bold">evDecAudioBufDelay</emphasis></term> + <listitem><para> +Sníží zpoždění vyrovnávací paměti zvuku. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evDecBalance</emphasis></term> + <listitem><para> +Sníží hodnotu stereováhy. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evDecVolume</emphasis></term> + <listitem><para> +Sníží hlasitost. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evIncAudioBufDelay</emphasis></term> + <listitem><para> +Zvýší zpoždění vyrovnávací paměti zvuku. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evIncBalance</emphasis></term> + <listitem><para> +Zvýší hodnotu stereováhy. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evIncVolume</emphasis></term> + <listitem><para> +Zvýší hlasitost. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evMute</emphasis></term> + <listitem><para> +Vypne/zapne zvuk. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evSetBalance</emphasis></term> + <listitem><para> +Nastaví stereováhu (může být sdruženo s potenciometrem; použije se +relativní hodnota potenciometru (0-100%)). + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evSetVolume</emphasis></term> + <listitem><para> +Nastaví hlasitost (může být sdruženo s potenciometrem; použije se +relativní hodnota potenciometru (0-100%)). + </para></listitem> +</varlistentry> +</variablelist> + +<variablelist> +<title>Různé:</title> +<varlistentry> + <term><emphasis role="bold">evAbout</emphasis></term> + <listitem><para> +Otevře okno o aplikaci. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evDropSubtitle</emphasis></term> + <listitem><para> +Vypne aktuálně použité titulky. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evEqualizer</emphasis></term> + <listitem><para> +Zapne/vypne ekvalizér. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evExit</emphasis></term> + <listitem><para> +Ukončí program. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evIconify</emphasis></term> + <listitem><para> +Minimalizuje okno. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evLoad</emphasis></term> + <listitem><para> +Otevře soubor (otevřením okna prohlížeče souborů, kde si soubor vyberete). + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evLoadPlay</emphasis></term> + <listitem><para> +Stejné jako <literal>evLoad</literal>, ale navíc se okamžitě spustí přehrávání +otevřeného souboru. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evLoadSubtitle</emphasis></term> + <listitem><para> +Otevře soubor s titulky (pomocí prohlížeče souborů) + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evLoadAudioFile</emphasis></term> + <listitem><para> +Otevře soubor se zvukem (pomocí prohlížeče souborů) + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evNone</emphasis></term> + <listitem><para> +Prázdná zpráva, nemá žádný efekt (možná s výjimkou CVS verzí :-)). + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPlaylist</emphasis></term> + <listitem><para> +Otevře/zavře okno playlistu. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPlayDVD</emphasis></term> + <listitem><para> +Zkusí otevřít disk v zadané DVD-ROM mechanice. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPlayVCD</emphasis></term> + <listitem><para> +Zkusí otevřít disk v zadané CD-ROM mechanice. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evPreferences</emphasis></term> + <listitem><para> +Otevře okno předvoleb. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evSetAspect</emphasis></term> + <listitem><para> +Nastaví poměr stran zobrazovaného obrázku. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evSetURL</emphasis></term> + <listitem><para> +Zobrazí dialogové okno pro volbu URL. + </para></listitem> +</varlistentry> + +<varlistentry> + <term><emphasis role="bold">evSkinBrowser</emphasis></term> + <listitem><para> +Otevře okno voliče skinů. + </para></listitem> +</varlistentry> +</variablelist> + +</sect1> + +</appendix>