Initial import of MPlayer SVN rev 28382 and FFmpeg SVN rev 16846.
[vaapi:athaifas-mplayer.git] / DOCS / xml / cs / skin.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <!-- synced with r21612 -->
3 <appendix id="skin">
4 <title>Formát skinů <application>MPlayer</application>u</title>
5
6 <sect1 id="skin-overview">
7 <title>Přehled</title>
8
9 <para>
10 Nemá to sice nic společného s formátem skinu, ale měli byste vědět, že
11 <application>MPlayer</application> <emphasis role="bold">nemá</emphasis>
12 vestavěný skin, takže <emphasis role="bold">si musíte alespoň jeden skin
13 nainstalovat, chcete-li používat GUI.</emphasis>
14 </para>
15
16 <!-- ********** -->
17
18 <sect2 id="skin-overview-directories">
19 <title>Adresáře</title>
20
21 <para>
22 Adresáře prohledávané na skiny jsou (v tomto pořadí):
23 <orderedlist>
24 <listitem><para>
25   <filename class="directory">$(DATADIR)/skins/</filename>
26 </para></listitem>
27 <listitem><para>
28   <filename class="directory">$(PREFIX)/share/mplayer/skins/</filename>
29 </para></listitem>
30 <listitem><para>
31   <filename class="directory">~/.mplayer/skins/</filename>
32 </para></listitem>
33 </orderedlist>
34 </para>
35
36 <para>
37 Poznamenejme, že první z cest se může lišit podle toho, jak je
38 <application>MPlayer</application> zkonfigurován (viz volby  configure skriptu
39 <option>--prefix</option> a <option>--datadir</option>).
40 </para>
41
42 <para>
43 Každý skin je instalován do vlastního adresáře v některém z výše uvedených.
44 Například:
45 <screen>$(PREFIX)/share/mplayer/skins/default/</screen>
46 </para>
47 </sect2>
48
49 <!-- ********** -->
50
51 <sect2 id="skin-overview-formats">
52 <title>Formáty obrázků</title>
53
54 <para>Obrázky musí být truecolor (24 nebo 32 bpp) PNG.</para>
55 <para>
56 V hlavním okně a v přehrávači (viz níž) můžete použít obrázky s 'průhledností':
57 Oblasti vyplněné barvou #FF00FF (magenta) jsou plně průhledné, pokud jsou
58 zobrazovány <application>MPlayer</application>em. To znamená, že můžete mít
59 tvarovaná okna, pokud má váš X server XShape rozšíření.
60 </para>
61 </sect2>
62
63 <sect2 id="skin-overview-components">
64 <title>Součásti skinu</title>
65
66 <para>
67 Skiny mají poměrně volný formát (narozdíl například od pevného formátu skinů
68 <application>Winamp</application>u/<application>XMMS</application>),
69 takže je jen na vás, zda vytvoříte něco skvělého.
70 </para>
71
72 <para>
73 V současnosti jsou zde čtyři okna, která můžete dekorovat:
74 <link linkend="skin-file-main">hlavní okno</link>,
75 <link linkend="skin-file-subwindow">podokno</link>,
76 <link linkend="skin-file-main">ovládací panel</link> a
77 <link linkend="skin-file-menu">nabidka</link> (tu lze aktivovat
78 pravým myšítkem).
79
80 <itemizedlist>
81 <listitem>
82   <para>
83   <application>MPlayer</application> je ovládán v
84   <emphasis role="bold">hlavním okně</emphasis> a/nebo v
85   <emphasis role="bold">ovládacím panelu</emphasis>. Pozadím okna je obrázek.
86   Následující součásti mohou (a musí) být umístěny v okně:
87   <emphasis>tlačítka</emphasis>, <emphasis>potenciometry</emphasis> (šoupátka)
88   a <emphasis>popisky</emphasis>.
89   Každé součásti musíte nastavit pozici a velikost.
90   </para>
91
92   <para>
93   A <emphasis role="bold">tlačítko</emphasis> má tři stavy (stisknuto, puštěno a
94   zakázáno), proto musí být jeho obraz svisle rozdělen do tří částí.
95   Detaily viz součást <link linkend="skin-button">tlačítko</link>.
96   </para>
97
98   <para>
99   A <emphasis role="bold">potenciometr</emphasis> (hlavně používaný pro
100   lištu převíjení a ovládání hlasitosti/stereováhy) může mít libovolný počet
101   fází dělících jeho obraz na jednotlivé části pod sebou. Detaily viz
102   <link linkend="skin-hpotmeter">hpotenciometr</link> a
103   <link linkend="skin-potmeter">potenciometr</link>.
104   </para>
105
106   <para>
107   <emphasis role="bold">Popisky</emphasis> jsou poněkud zvláštní: Znaky potřebné
108   pro jejich vykreslení jsou brány z obrazového souboru a znaky v obrázku jsou
109   popsány <link linkend="skin-fonts">souborem popisu fontu</link>.
110   Tento (druhý) soubor je prostý textový soubor, který popisuje pozici x,y a
111   velikost každého znaku v obrázku (obrázkový soubor a soubor popisu fontu
112   <emphasis>spolu</emphasis> tvoří font). Detaily viz
113   <link linkend="skin-dlabel">dlabel</link>.
114   </para>
115
116   <note><para>
117   Všechny obrázky mohou mít plnou průhlednost, jak je popsána v sekci
118   o <link linkend="skin-overview-formats">formátech obrázků</link>. Pokud X
119   server nepodporuje rozšíření XShape, budou průhledné části černé. Pokud byste
120   chtěli využít tuto vlastnost, musí být šířka pozadí hlavního okna celočíselně
121   dělitelná 8.
122   </para></note>
123 </listitem>
124
125 <listitem><para>
126   <emphasis role="bold">Podokno</emphasis> je to okno, kde se zobrazuje film.
127   Může v něm být zobrazen určený obrázek, pokud není načten žádný film (je
128   docela únavné, pokud zde není nic :-)).
129   <emphasis role="bold">Poznámka:</emphasis> průhlednost zde
130   <emphasis role="bold">není povolena</emphasis>.
131 </para></listitem>
132
133 <listitem>
134   <para>
135   <emphasis role="bold">Nabídka</emphasis> je jen způsob, jak ovládat
136   <application>MPlayer</application> položkami menu. Vyžadovány jsou dva
137   obrázky: jeden z nich jako menu v normálním stavu a druhý se zvýrazněnými
138   položkami. Když pak vyvoláte menu, je zobrazen první obrázek. Při pohybu myší
139   přes položky, je zkopírována aktuálně vybraná položka z druhého obrázku přes
140   ten první pod kursorem (druhý obrázek není nikdy zobrazen celý).
141   </para>
142   <para>
143   Položka menu je definována svou pozicí a velikostí v obrázku (detaily viz
144   sekce <link linkend="skin-file-menu">nabídka</link>).
145   </para>
146 </listitem>
147 </itemizedlist>
148 </para>
149
150 <para>
151 Jednu důležitou věc jsme ještě nezmínili: Mají-li tlačítka,
152 potenciometry a položky menu pracovat, musí <application>MPlayer</application>
153 vědět, co má udělat, pokud je na ně kliknuto. To je zajištěno pomocí
154 <link linkend="skin-gui">zpráv</link> (událostí). Pro tyto členy tedy musíte
155 definovat zprávy, které budou při kliku generovány.
156 </para>
157 </sect2>
158
159 <!-- ********** -->
160
161 <sect2 id="skin-files">
162 <title>Soubory</title>
163
164 <para>
165 Pro výrobu skinu budete potřebovat následující:
166 <itemizedlist>
167 <listitem><para>
168   Konfigurační soubor jménem <link linkend="skin-file">skin</link> řekne
169   <application>MPlayer</application>u, jak má dát jednotlivé části skinu
170   dohromady a co udělat, kliknete-li někde v okně.
171 </para></listitem>
172 <listitem><para>
173   Obrázek pozadí hlavního okna.
174 </para></listitem>
175 <listitem><para>
176   Obrázky položek hlavního okna (včetně jednoho nebo více souborů s popisem
177   fontu pro vykreslování popisek).
178 </para></listitem>
179 <listitem><para>
180   Obrázek pro zobrazení v podokně (volitelný).
181 </para></listitem>
182 <listitem><para>
183   Dva obrázky pro nabídku (ty jsou potřeba pouze pokud chcete vytvořit menu).
184 </para></listitem>
185 </itemizedlist>
186   S výjimkou konfiguračního souboru skinu si můžete pojmenovat ostatní soubory
187   jak chcete (s tím, že vaše soubory s popisem fontu budou mít příponu
188   <filename>.fnt</filename>).
189 </para>
190 </sect2>
191 </sect1>
192
193
194 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
195
196
197 <sect1 id="skin-file">
198 <title>Soubor skin</title>
199
200 <para>
201 Jak jsme již řekli, je to konfigurační soubor skinu. Soubor je řádkově
202 orientován; řádky s komentářem začínají znakem '<literal>;</literal>'
203 (před ním jsou povoleny jen mezery a tabulátory).
204 </para>
205
206 <para>
207 Soubor je složen ze sekcí. Každá sekce popisuje skin pro aplikaci a má
208 následující formu:
209 <programlisting>
210 section = <replaceable>název cekce</replaceable>
211 .
212 .
213 .
214 end
215 </programlisting>
216 </para>
217
218 <para>
219 Zatím máme jen jednu aplikaci, takže potřebujete jen jednu sekci: její název je
220 <emphasis role="bold">movieplayer</emphasis>.
221 </para>
222
223 <para>
224 Uvnitř sekce je každé okno posáno blokem, který má následující formu:
225 <programlisting>
226 window = <replaceable>název okna</replaceable>
227 .
228 .
229 .
230 end
231 </programlisting>
232 </para>
233
234 <para>
235 kde <replaceable>název okna</replaceable> může být jeden z těchto řetězců:
236 <itemizedlist>
237 <listitem><para>
238   <emphasis role="bold">main</emphasis> - pro hlavní okno
239 </para></listitem>
240 <listitem><para>
241   <emphasis role="bold">sub</emphasis> - pro podokno
242 </para></listitem>
243 <listitem><para>
244   <emphasis role="bold">menu</emphasis> - pro nabídku
245 </para></listitem>
246 <listitem><para>
247   <emphasis role="bold">playbar</emphasis> - ovládací panel
248 </para></listitem>
249 </itemizedlist>
250 </para>
251
252 <para>
253 (Bloky sub a menu jsou volitelné - nemusíte vytvářet nabídku nebo vyzdobit
254 podokno.)
255 </para>
256
257 <para>
258 Uvnitř window bloku můžete definovat každou položku okna řádkem v tomto tvaru:
259 <programlisting>položka = parametr</programlisting>
260 Kde <literal>položka</literal> je řetězec označující typ položky GUI a
261 <literal>parametr</literal> je číselná nebo textová hodnota (nebo seznam hodnot
262 oddělených čárkami).
263 </para>
264
265 <para>
266 Dáte-li to všechno dohromady, celý soubor vypadá asi takto:
267 <programlisting>
268 section = movieplayer
269   window = main
270   ; ... položky hlavního okna ...
271   end
272
273   window = sub
274   ; ... položky podokna ...
275   end
276
277   window = menu
278   ; ... položky menu ...
279   end
280
281   window = playbar
282   ; ... položky ovládacího panelu ...
283   end
284 end
285 </programlisting>
286 </para>
287
288 <para>
289 Jméno souboru s obrázkem musí být zadáno bez úvodních adresářů - obrázky jsou
290 vyhledávány v adresáři <filename class="directory">skins</filename>.
291 Měli byste (ale nemusíte) zadat příponu souboru. Pokud soubor neexistuje,
292 zkouší <application>MPlayer</application> načíst soubor
293 <filename>&lt;jméno&gt;.&lt;příp&gt;</filename>, kdy jsou za
294 <filename>&lt;příp&gt;</filename> zkoušeny přípony <literal>png</literal>
295 a <literal>PNG</literal> (v tomto pořadí). Použitý bude první vyhovující soubor.
296 </para>
297
298 <para>
299 Aby bylo vše jasné, uvedeme příklad. Řekněme, že máte obrázek jménem
300 <filename>main.png</filename>, který použijeme pro hlavní okno:
301 <programlisting>base = main, -1, -1</programlisting>
302 <application>MPlayer</application> se pokusí nahrát soubory
303 <filename>main</filename>, <filename>main.png</filename>, <filename>main.PNG</filename>.
304 </para>
305
306 <para>
307 Nakonec několik slov o pozicování. Hlavní okno a podokno lze
308 umístit do odlišných rohů obrazovky zadáním souřadnic <literal>X</literal>
309 a <literal>Y</literal>. <literal>0</literal> horní nebo levý,
310 <literal>-1</literal> je střed a <literal>-2</literal> je vpravo nebo dole, jak
311 je vidět na obrázku:
312 <informalfigure>
313 <screen>
314 (0, 0)----(-1, 0)----(-2, 0)
315   |          |          |
316   |          |          |
317 (0,-1)----(-1,-1)----(-2,-1)
318   |          |          |
319   |          |          |
320 (0,-2)----(-1,-2)----(-2,-2)
321 </screen>
322 </informalfigure>
323 </para>
324
325 <!-- ********** -->
326
327 <sect2 id="skin-file-main">
328 <title>Hlavní okno a ovládací panel</title>
329
330 <para>
331 Níže uvádíme seznam položek, které mohou být použity v blocích
332 '<literal>window = main</literal>' ... '<literal>end</literal>',
333 a '<literal>window = playbar</literal>' ... '<literal>end</literal>'.
334 </para>
335
336 <variablelist>
337 <varlistentry>
338   <term><literal>
339   <anchor id="skin-main-base"/>base = obrázek, X, Y
340   </literal></term>
341   <listitem><para>
342   Umožňuje nastavit obrázek pozadí hlavního okna. Okno bude vykresleno na
343   zadaných souřadnicích <literal>X,Y</literal> na obrazovce a bude mít velikost
344   obrázku.
345   </para>
346   <note><para>
347   Tyto koordináty zatím nefungují pro okno display.
348   </para></note>
349   <warning><para>Průhledné oblasti v obrázku (obarvené #FF00FF) budou černé
350   na X serverech bez XShape rozšíření. Šířka obrázku musí být celočíselně
351   dělitelná 8.</para></warning>
352   </listitem>
353 </varlistentry>
354
355 <varlistentry>
356   <term><literal>
357   <anchor id="skin-button"/>button = obrázek, X, Y, šířka, výška, zpráva
358   </literal></term>
359   <listitem><para>
360   Umístí tlačítko rozměru <literal>šířka</literal> * <literal>výška</literal>
361   na pozici <literal>X,Y</literal>. Zadaná <literal>zpráva</literal> je
362   generována při kliku na tlačítko. Zadaný <literal>obrázek</literal> musí
363   mít tři části pod sebou (odpovídající možným stavům tlačítka) takto:
364   </para>
365   <informalfigure>
366   <screen>
367 +------------+
368 | stisknuto  |
369 +------------+
370 |  uvolněno  |
371 +------------+
372 |  zakázáno  |
373 +------------+<!--
374   --></screen>
375   </informalfigure>
376   </listitem>
377 </varlistentry>
378
379 <varlistentry>
380   <term><literal>
381   <anchor id="skin-decoration"/>decoration = enable|disable
382   </literal></term>
383   <listitem><para>
384   Zapne (enable) nebo vypne (disable) dekoraci hlavního okna, produkovanou
385   okenním manažerem. Výchozí je <emphasis role="bold">disable</emphasis>.
386   </para>
387   <note><para>
388   V okně display to nefunguje, není to potřeba.
389   </para></note>
390   </listitem>
391 </varlistentry>
392
393 <varlistentry>
394   <term><literal>
395   <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
396   </literal></term>
397   <listitem><para>
398   </para></listitem>
399 </varlistentry>
400
401 <varlistentry>
402   <term><literal>
403   <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
404   </literal></term>
405   <listitem><para>
406   Umístí vodorovný (hpotmeter) nebo svislý (vpotmeter) potenciometr velikosti
407   <literal>šířka</literal> * <literal>výška</literal> na pozici
408   <literal>X,Y</literal>. Obrázek může být rozdělen do různých částí pro různé
409   fáze potenciometru (Například můžete mít potenciometr pro nastavení hlasitosti,
410   jehož dráha se barví ze zelené na červenou, jak se jeho hodnota mění od nejmenší
411   do největší.). <literal>hpotmeter</literal> může mít táhlo, které může být
412   vodorovně taženo. Význam parametrů:
413   <itemizedlist>
414   <listitem><para>
415     <literal>tlačítko</literal> - obrázek, který se použije pro
416     tlačítko (musí mít tři části pod sebou, stejně jako v případě tohoto
417     <link linkend="skin-button">tlačítka</link>)
418   </para></listitem>
419   <listitem><para>
420     <literal>tšířka</literal>, <literal>tvýška</literal> - 
421     velikost tlačítka
422   </para></listitem>
423   <listitem><para>
424     <literal>fáze</literal> - obrázek použitý pro různé fáze
425     hpotmetru. Pokud žádný obrázek nechcete, můžete použít speciální hodnotu
426     <literal>NULL</literal>. Obrázek musí být rozdělen svisle na
427     <literal>počet_fází</literal> částí takto:
428     <informalfigure><screen>
429 +------------+
430 |   fáze #1  |
431 +------------+
432 |   fáze #2  |
433 +------------+
434      ...
435 +------------+
436 |   fáze #n  |
437 +------------+<!--
438     --></screen></informalfigure>
439   </para></listitem>
440   <listitem><para>
441     <literal>numphases</literal> - number of phases stored in the
442     <literal>počet_fází</literal> - počet fází uložených v
443     obrázku <literal>fáze</literal>
444     </para></listitem>
445     <listitem><para>
446       <literal>výchozí</literal> - výchozí hodnota pro hpotmeter
447       (v rozsahu <literal>0</literal> až <literal>100</literal>)
448       </para></listitem>
449     <listitem><para>
450       <literal>X</literal>, <literal>Y</literal> - pozice pro hpotmeter
451     </para></listitem>
452     <listitem><para>
453       <literal>šířka</literal>, <literal>výška</literal> - šířka a výška
454       <literal>hpotmeter</literal>u
455     </para></listitem>
456     <listitem><para>
457       <literal>zpráva</literal> - zpráva generovaná při změně
458       hodnoty <literal>hpotmeter</literal>u
459   </para></listitem>
460   </itemizedlist>
461   </para></listitem>
462 </varlistentry>
463
464 <varlistentry>
465   <term><literal>
466   <anchor id="skin-potmeter"/>potmeter = fáze, počet_fází, výchozí, X, Y, šířka, výška, zpráva
467   </literal></term>
468   <listitem><para>
469   <literal>hpotmeter</literal> bez tlačítka. (soudil bych, že byl míněn jako
470   otočný, ale reaguje pouze na horizontální tažení.) Popis parametrů je stejný
471   jako v <link linkend="skin-hpotmeter">hpotmeter</link>.
472   <literal>fáze</literal> mohou být <literal>NULL</literal>, ale je to vcelku
473   k ničemu, jelikož nemůžete vidět, jak je nastaven <literal>potmeter</literal>.
474   </para></listitem>
475 </varlistentry>
476
477 <varlistentry>
478   <term><literal>
479   <anchor id="skin-font"/>font = soubor_fontu, id_fontu
480   </literal></term>
481   <listitem><para>
482   Definuje font. <literal>soubor_fontu</literal> je jméno souboru popisu fontu
483   s příponou <filename>.fnt</filename> (zde příponu nezadávejte).
484   <literal>id_fontu</literal> je použit jako ukazatel na font
485   (viz <link linkend="skin-dlabel">dlabel</link>
486   a <link linkend="skin-slabel">slabel</link>). Definováno může být více než 25 fontů.
487   </para></listitem>
488 </varlistentry>
489
490 <varlistentry>
491   <term><literal>
492     <anchor id="skin-slabel"/>slabel = X, Y, id_fontu, "text";
493   </literal></term>
494   <listitem><para>
495   Umístí statický popisek na pozici <literal>X,Y</literal>.
496   <literal>text</literal> je zobrazen fontem identifikovaným pomocí
497   <literal>id_fontu</literal>. Text je surový řetězec
498   (<literal>$x</literal> proměnné nefungují), který musí být uzavřen
499   ve dvojitých uvozovkách (ale znak " nesmí být součástí textu).
500   Popisek je zobrazen fontem identifikovaným pomocí <literal>id_fontu</literal>.
501   </para></listitem>
502 </varlistentry>
503
504 <varlistentry>
505   <term><literal>
506     <anchor id="skin-dlabel"/>dlabel = X, Y, délka, zarovnání, id_fontu, "text"
507   </literal></term>
508   <listitem>
509   <para>
510   Umístí dynamický popisek na pozici <literal>X,Y</literal>. Popisek je
511   dynamický proto, že je jeho text periodicky obnovován. Maximální délka
512   popisku je nastavena na <literal>délka</literal> (jeho výškou je výška
513   znaku). Pokud je zobrazovaný text širší, pak bude rolován,
514   jinak bude zarovnán do určeného prostoru podle hodnoty parametru
515   <literal>zarovnání</literal>: <literal>0</literal> je zarovnání vpravo,
516   <literal>1</literal> na střed, <literal>2</literal> vlevo.
517   </para>
518   <para>
519   Text k zobrazení je zadán parametrem <literal>text</literal>: Musí být uzavřen
520   do dvojitých uvozovek (ale znak " nesmí být součástí textu).
521   Popisek je zobrazen fontem identifikovaným pomocí <literal>id_fontu</literal>.
522   V textu můžete použít tyto proměnné:
523   </para>
524
525   <informaltable>
526   <tgroup cols="2">
527   <thead>
528     <row><entry>Proměnná</entry><entry>Význam</entry></row>
529   </thead>
530   <tbody>
531   <row>
532     <entry>$1</entry>
533     <entry>čas přehrávání ve formátu <emphasis>hh:mm:ss</emphasis></entry>
534   </row>
535   <row>
536     <entry>$2</entry>
537     <entry>čas přehrávání ve formátu <emphasis>mmmm:ss</emphasis></entry>
538   </row>
539   <row>
540     <entry>$3</entry>
541     <entry>čas přehrávání ve formátu <emphasis>hh</emphasis> (hodiny)</entry>
542   </row>
543   <row>
544     <entry>$4</entry>
545     <entry>čas přehrávání ve formátu <emphasis>mm</emphasis> (minuty)</entry>
546   </row>
547   <row>
548     <entry>$5</entry>
549     <entry>čas přehrávání ve formátu <emphasis>ss</emphasis> (sekundy)</entry>
550   </row>
551   <row>
552     <entry>$6</entry>
553     <entry>délka filmu ve formátu <emphasis>hh:mm:ss</emphasis></entry>
554   </row>
555   <row>
556     <entry>$7</entry>
557     <entry>délka filmu ve formátu <emphasis>mmmm:ss</emphasis></entry>
558   </row>
559   <row>
560     <entry>$8</entry>
561     <entry>čas přehrávání ve formátu <emphasis>h:mm:ss</emphasis></entry>
562   </row>
563   <row>
564     <entry>$v</entry>
565     <entry>hlasitost ve formátu <emphasis>xxx.xx</emphasis>%</entry>
566   </row>
567   <row>
568     <entry>$V</entry>
569     <entry>hlasitost ve formátu <emphasis>xxx.xx</emphasis></entry>
570   </row>
571   <row>
572     <entry>$b</entry>
573     <entry>stereováha ve formátu <emphasis>xxx.xx</emphasis>%</entry>
574   </row>
575   <row>
576     <entry>$B</entry>
577     <entry>stereováha ve formátu <emphasis>xxx.xx</emphasis></entry>
578   </row>
579   <row>
580     <entry>$$</entry>
581     <entry>znak $</entry>
582   </row>
583   <row>
584     <entry>$a</entry>
585     <entry>znak podle typu audia (žádné: <literal>n</literal>,
586     mono: <literal>m</literal>, stereo: <literal>t</literal>)</entry>
587   </row>
588   <row>
589     <entry>$t</entry>
590     <entry>číslo stopy (v playlistu)</entry>
591   </row>
592   <row>
593     <entry>$o</entry>
594     <entry>název souboru</entry>
595   </row>
596   <row>
597     <entry>$f</entry>
598     <entry>název souboru malými písmeny</entry>
599   </row>
600   <row>
601     <entry>$F</entry>
602     <entry>název souboru velkými písmeny</entry>
603   </row>
604   <row>
605     <entry>$T</entry>
606     <entry>znak podle typu datového proudu (soubor: <literal>f</literal>,
607     Video CD: <literal>v</literal>, DVD: <literal>d</literal>, 
608     URL: <literal>u</literal>)
609     </entry>
610   </row>
611   <row>
612     <entry>$p</entry>
613     <entry>znak <keycap>p</keycap> (pokud přehráváte soubor a font obsahuje
614     znak <keycap>p</keycap>)</entry>
615   </row>
616   <row>
617     <entry>$s</entry>
618     <entry>znak <keycap>s</keycap> character (pokud přehráváte soubor a font obsahuje
619     znak <keycap>s</keycap>)</entry>
620   </row>
621   <row>
622     <entry>$e</entry>
623     <entry>znak <keycap>e</keycap> (pokud je přehrávání pozastaveno a font obsahuje
624     znak <keycap>e</keycap>)</entry>
625   </row>
626   <row>
627     <entry>$x</entry>
628     <entry>šířka filmu</entry>
629   </row>
630   <row>
631     <entry>$y</entry>
632     <entry>výška filmu</entry>
633   </row>
634   <row>
635     <entry>$C</entry>
636     <entry>název použitého kodeku</entry>
637   </row>
638   </tbody>
639   </tgroup>
640   </informaltable>
641
642   <note><para>
643   Proměnné <literal>$a, $T, $p, $s</literal> a <literal>$e</literal>
644   vracejí znaky, které by měly být zobrazovány jako speciální symboly
645   (například, <keycap>e</keycap> vrací symbol pauza, který obvykle vypadá
646   jako ||). Měli byste mít font pro normální znaky a
647   jiný font pro symboly. Více informací viz sekce o
648   <link linkend="skin-fonts-symbols">symbolech</link>.
649   </para></note>
650   </listitem>
651 </varlistentry>
652 </variablelist>
653 </sect2>
654
655 <!-- ********** -->
656
657 <sect2 id="skin-file-subwindow">
658 <title>Ovládací panel</title>
659
660 <para>
661 Následující vstupy mohou být použity v bloku
662 '<literal>window = sub</literal>' . . . '<literal>end</literal>'.
663 </para>
664
665 <variablelist>
666 <varlistentry>
667   <term><literal>
668   <anchor id="skin-sub-base"/>base = obrázek, X, Y, šířka, výška
669   </literal></term>
670   <listitem><para>
671   Obrázek, který bude zobrazen v okně. Okno se zobrazí na pozici zadané
672   souřadnicemi <literal>X,Y</literal> na obrazovce (<literal>0,0</literal> je
673   levý horní roh). Můžete nastavit <literal>-1</literal> pro střed a
674   <literal>-2</literal> pro vpravo (<literal>X</literal>) a dole
675   (<literal>Y</literal>). Okno bude stejně velké jako obrázek.
676   <literal>šířka</literal> a <literal>výška</literal>
677   udávají velikost okna; jsou volitelné (pokud chybí, má okno
678   rozměry shodné  s obrázkem).
679   </para></listitem>
680 </varlistentry>
681
682 <varlistentry>
683   <term><literal>
684   <anchor id="skin-background"/>background = R, G, B
685   </literal></term>
686   <listitem><para>
687   Umožňuje nastavit barvu pozadí. To je užitečné, pokud je obrázek menší než
688   okno. <literal>R</literal>, <literal>G</literal> a <literal>B</literal>
689   označují červenou, zelenou a modrou složku barvy
690   (každá z nich je dekadická hodnota 0 až 255).
691   </para></listitem>
692 </varlistentry>
693 </variablelist>
694 </sect2>
695
696 <!-- ********** -->
697
698 <sect2 id="skin-file-menu">
699 <title>Nabídka</title>
700
701 <para>
702 Jak již bylo dříve řečeno, nabídka je zobrazena pomocí dvou obrázků. Normální
703 položky nabídky jsou brány z obrázku určeného položkou <literal>base</literal>,
704 zatímco aktuálně zvolený vstup je brán z obrázku určeného položkou
705 <literal>selected</literal>. Musíte definovat pozici a rozměr každé položky
706 nabídky.
707 </para>
708
709 <para>
710 Následující vstupy mohou být použity v bloku
711 '<literal>window = menu</literal>'. . .'<literal>end</literal>'.
712 </para>
713
714 <variablelist>
715 <varlistentry>
716   <term><literal>
717   <anchor id="skin-menu-base"/>base = obrázek
718   </literal></term>
719   <listitem><para>
720   Obrázek normálních položek nabídky.
721   </para></listitem>
722 </varlistentry>
723
724 <varlistentry>
725   <term><literal>
726   <anchor id="skin-selected"/>selected = obrázek
727   </literal></term>
728   <listitem><para>
729   Obrázek nabídky kde jsou všechny položky vybrány.
730   </para></listitem>
731 </varlistentry>
732
733 <varlistentry>
734   <term><literal>
735   <anchor id="skin-menu"/>menu = X, Y, šířka, výška, zpráva
736   </literal></term>
737   <listitem><para>
738   Definuje pozici <literal>X,Y</literal> a rozměr položky nabídky v obrázku.
739   <literal>zpráva</literal> je zpráva, generovaná jakmile je uvolněno tlačítko
740   myši nad položkou.
741   </para></listitem>
742 </varlistentry>
743 </variablelist>
744 </sect2>
745 </sect1>
746
747
748 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
749
750
751 <sect1 id="skin-fonts">
752 <title>Fonty</title>
753 <para>
754 Jak jsme již zmínili v sekci o částech skinu, font je definován obrázkem a
755 souborem popisu. Můžete rozmístit znaky v obrázku libovolně, ale ujistěte
756 se, že je jejich velikost a pozice je uvedena v souboru popisu přesně.
757 </para>
758
759 <para>
760 Soubor popisu fontu (s příponou <filename>.fnt</filename>) může obsahovat
761 řádky s komentářem začínající '<literal>;</literal>'. Soubor musí obsahovat
762 řádek ve formě
763 <anchor id="skin-font-image"/>
764 <programlisting>image = <replaceable>obrázek</replaceable></programlisting>
765 Kde <literal><replaceable>obrázek</replaceable></literal> je název obrázku
766 použitého pro font (nemusíte zadávat příponu).
767 <anchor id="skin-font-char"/>
768 <programlisting>"char" = X, Y, šířka, výška</programlisting>
769 Zde <literal>X</literal> a <literal>Y</literal> udávají pozici
770 <literal>char</literal> znaku v obrázku (<literal>0,0</literal> je levý
771 horní roh). <literal>šířka</literal> a <literal>výška</literal> jsou
772 rozměry znaku v pixelech.
773 </para>
774
775 <para>
776 Tento příklad definuje znaky A, B, C s použítím <filename>font.png</filename>.
777 <programlisting>
778 ; Zde může být jen "font" místo "font.png".
779 image = font.png
780
781 ; Tři znaky pro ilustraci stačí :-)
782 "A" =  0,0, 7,13
783 "B" =  7,0, 7,13
784 "C" = 14,0, 7,13
785 </programlisting>
786 </para>
787
788 <!-- ********** -->
789
790 <sect2 id="skin-fonts-symbols">
791 <title>Symboly</title>
792
793 <para>
794 Některé znaky mají speciální význam, jsou-li vráceny některou z proměnných
795 použitých v <link linkend="skin-dlabel">dlabel</link>. Tyto znaky mají být
796 zobrazovány jako symboly, takže mohou být zobrazeny věci jako pěkné DVD logo
797  místo znaku '<literal>d</literal>' pro DVD datový proud.
798 </para>
799
800 <para>
801 Následující tabulka obsahuje znaky, které mohou být použity k zobrazení
802 symbolů (a tudíž vyžadují odlišný font).
803 </para>
804
805 <informaltable>
806 <tgroup cols="2">
807 <thead>
808   <row><entry>Znak</entry><entry>Symbol</entry></row>
809 </thead>
810 <tbody>
811   <row><entry><keycap>p</keycap></entry><entry>play</entry></row>
812   <row><entry><keycap>s</keycap></entry><entry>stop</entry></row>
813   <row><entry><keycap>e</keycap></entry><entry>pauza</entry></row>
814   <row><entry><keycap>n</keycap></entry><entry>bez zvuku</entry></row>
815   <row><entry><keycap>m</keycap></entry><entry>mono zvuk</entry></row>
816   <row><entry><keycap>t</keycap></entry><entry>stereo zvuk</entry></row>
817   <row><entry><keycap>f</keycap></entry><entry>datový proud je soubor</entry></row>
818   <row><entry><keycap>v</keycap></entry><entry>datový proud je Video CD</entry></row>
819   <row><entry><keycap>d</keycap></entry><entry>datový proud je DVD</entry></row>
820   <row><entry><keycap>u</keycap></entry><entry>datový proud je URL</entry></row>
821 </tbody>
822 </tgroup>
823 </informaltable>
824 </sect2>
825 </sect1>
826
827
828 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
829
830
831 <sect1 id="skin-gui">
832 <title>GUI zprávy</title>
833
834 <para>
835 Tyto zprávy mohou být generovány tlačítky, potenciometry a položkami
836 nabídky.
837 </para>
838
839 <variablelist>
840 <title>Ovládání přehrávání:</title>
841 <varlistentry>
842   <term><emphasis role="bold">evNext</emphasis></term>
843   <listitem><para>
844   Skočí na následující stopu v playlistu.
845   </para></listitem>
846 </varlistentry>
847
848 <varlistentry>
849   <term><emphasis role="bold">evPause</emphasis></term>
850   <listitem><para>
851   Tvoří přepínač společně s <literal>evPlaySwitchToPause</literal>. Ty mohou
852   být použity k vytvoření tradičního play/pauza tlačítka. Obě zprávy by měly
853   být přiřazeny tlačítkům umístěným na stejné pozici v okně. Tato zpráva
854   pozastaví přehrávání a zobrazen bude obrázek pro
855   <literal>evPlaySwitchToPause</literal> talčítko (pro indikaci, že tlačítko
856   může být stisknuto pro obnovení přehrávání).
857   </para></listitem>
858 </varlistentry>
859
860 <varlistentry>
861   <term><emphasis role="bold">evPlay</emphasis></term>
862   <listitem><para>
863   Zahájí přehrávání.
864   </para></listitem>
865 </varlistentry>
866
867 <varlistentry>
868   <term><emphasis role="bold">evPlaySwitchToPause</emphasis></term>
869   <listitem><para>
870   Protiklad <literal>evPauseSwitchToPlay</literal>. Tato zpráva zahájí přehrávání
871   a zobrazí obrázek pro tlačítko <literal>evPauseSwitchToPlay</literal>
872   (pro indikaci, že tlačítko může být stisknuto pro pozastavení přehrávání).
873   </para></listitem>
874 </varlistentry>
875
876 <varlistentry>
877   <term><emphasis role="bold">evPrev</emphasis></term>
878   <listitem><para>
879   Skočí na předchozí stopu v playlistu.
880   </para></listitem>
881 </varlistentry>
882
883 <varlistentry>
884   <term><emphasis role="bold">evStop</emphasis></term>
885   <listitem><para>
886   Zastaví přehrávání.
887   </para></listitem>
888 </varlistentry>
889 </variablelist>
890
891 <variablelist>
892 <title>Převíjení:</title>
893 <varlistentry>
894   <term><emphasis role="bold">evBackward10sec</emphasis></term>
895   <listitem><para>
896   Převine zpět o 10 sekund.
897   </para></listitem>
898 </varlistentry>
899
900 <varlistentry>
901   <term><emphasis role="bold">evBackward1min</emphasis></term>
902   <listitem><para>
903   Převine zpět o 1 minutu.
904   </para></listitem>
905 </varlistentry>
906
907 <varlistentry>
908   <term><emphasis role="bold">evBackward10min</emphasis></term>
909   <listitem><para>
910   Převine zpět o 10 minut.
911   </para></listitem>
912 </varlistentry>
913
914 <varlistentry>
915   <term><emphasis role="bold">evForward10sec</emphasis></term>
916   <listitem><para>
917   Převine vpřed o 10 sekund.
918   </para></listitem>
919 </varlistentry>
920
921 <varlistentry>
922   <term><emphasis role="bold">evForward1min</emphasis></term>
923   <listitem><para>
924   Převine vpřed o 1 minutu.
925   </para></listitem>
926 </varlistentry>
927
928 <varlistentry>
929   <term><emphasis role="bold">evForward10min</emphasis></term>
930   <listitem><para>
931   Převine vpřed o 10 minut.
932   </para></listitem>
933 </varlistentry>
934
935 <varlistentry>
936   <term><emphasis role="bold">evSetMoviePosition</emphasis></term>
937   <listitem><para>
938   Převine na danou pozici (může být přiřazeno potenciometru; použije se
939   relativní hodnota (0-100%) potenciometru).
940   </para></listitem>
941 </varlistentry>
942 </variablelist>
943
944 <variablelist>
945 <title>Ovládání videa:</title>
946 <varlistentry>
947   <term><emphasis role="bold">evHalfSize</emphasis></term>
948   <listitem><para>
949   Nastaví velikost okna filmu na poloviční velikost.
950   </para></listitem>
951 </varlistentry>
952 <varlistentry>
953   <term><emphasis role="bold">evDoubleSize</emphasis></term>
954   <listitem><para>
955   Nastaví velikost okna filmu na dvojnásobnou velikost.
956   </para></listitem>
957 </varlistentry>
958 <varlistentry>
959   <term><emphasis role="bold">evFullScreen</emphasis></term>
960   <listitem><para>
961   Přepíná do celoobrazovkového režimu a zpět.
962   </para></listitem>
963 </varlistentry>
964 <varlistentry>
965   <term><emphasis role="bold">evNormalSize</emphasis></term>
966   <listitem><para>
967   Nastaví velikost okna na normální velikost.
968   </para></listitem>
969 </varlistentry>
970 </variablelist>
971
972 <variablelist>
973 <title>Ovládání zvuku:</title>
974 <varlistentry>
975   <term><emphasis role="bold">evDecAudioBufDelay</emphasis></term>
976   <listitem><para>
977   Sníží zpoždění vyrovnávací paměti zvuku.
978   </para></listitem>
979 </varlistentry>
980
981 <varlistentry>
982   <term><emphasis role="bold">evDecBalance</emphasis></term>
983   <listitem><para>
984   Sníží hodnotu stereováhy.
985   </para></listitem>
986 </varlistentry>
987
988 <varlistentry>
989   <term><emphasis role="bold">evDecVolume</emphasis></term>
990   <listitem><para>
991   Sníží hlasitost.
992   </para></listitem>
993 </varlistentry>
994
995 <varlistentry>
996   <term><emphasis role="bold">evIncAudioBufDelay</emphasis></term>
997   <listitem><para>
998   Zvýší zpoždění vyrovnávací paměti zvuku.
999   </para></listitem>
1000 </varlistentry>
1001
1002 <varlistentry>
1003   <term><emphasis role="bold">evIncBalance</emphasis></term>
1004   <listitem><para>
1005   Zvýší hodnotu stereováhy.
1006   </para></listitem>
1007 </varlistentry>
1008
1009 <varlistentry>
1010   <term><emphasis role="bold">evIncVolume</emphasis></term>
1011   <listitem><para>
1012   Zvýší hlasitost.
1013   </para></listitem>
1014 </varlistentry>
1015
1016 <varlistentry>
1017   <term><emphasis role="bold">evMute</emphasis></term>
1018   <listitem><para>
1019   Vypne/zapne zvuk.
1020   </para></listitem>
1021 </varlistentry>
1022
1023 <varlistentry>
1024   <term><emphasis role="bold">evSetBalance</emphasis></term>
1025   <listitem><para>
1026   Nastaví stereováhu (může být sdruženo s potenciometrem; použije se
1027   relativní hodnota potenciometru (0-100%)).
1028   </para></listitem>
1029 </varlistentry>
1030
1031 <varlistentry>
1032   <term><emphasis role="bold">evSetVolume</emphasis></term>
1033   <listitem><para>
1034   Nastaví hlasitost (může být sdruženo s potenciometrem; použije se
1035   relativní hodnota potenciometru (0-100%)).
1036   </para></listitem>
1037 </varlistentry>
1038 </variablelist>
1039
1040 <variablelist>
1041 <title>Různé:</title>
1042 <varlistentry>
1043   <term><emphasis role="bold">evAbout</emphasis></term>
1044   <listitem><para>
1045   Otevře okno o aplikaci.
1046   </para></listitem>
1047 </varlistentry>
1048
1049 <varlistentry>
1050   <term><emphasis role="bold">evDropSubtitle</emphasis></term>
1051   <listitem><para>
1052   Vypne aktuálně použité titulky.
1053   </para></listitem>
1054 </varlistentry>
1055
1056 <varlistentry>
1057   <term><emphasis role="bold">evEqualizer</emphasis></term>
1058   <listitem><para>
1059   Zapne/vypne ekvalizér.
1060   </para></listitem>
1061 </varlistentry>
1062
1063 <varlistentry>
1064   <term><emphasis role="bold">evExit</emphasis></term>
1065   <listitem><para>
1066   Ukončí program.
1067   </para></listitem>
1068 </varlistentry>
1069
1070 <varlistentry>
1071   <term><emphasis role="bold">evIconify</emphasis></term>
1072   <listitem><para>
1073   Minimalizuje okno.
1074   </para></listitem>
1075 </varlistentry>
1076
1077 <varlistentry>
1078   <term><emphasis role="bold">evLoad</emphasis></term>
1079   <listitem><para>
1080   Otevře soubor (otevřením okna prohlížeče souborů, kde si soubor vyberete).
1081   </para></listitem>
1082 </varlistentry>
1083
1084 <varlistentry>
1085   <term><emphasis role="bold">evLoadPlay</emphasis></term>
1086   <listitem><para>
1087   Stejné jako <literal>evLoad</literal>, ale navíc se okamžitě spustí přehrávání
1088   otevřeného souboru.
1089   </para></listitem>
1090 </varlistentry>
1091
1092 <varlistentry>
1093   <term><emphasis role="bold">evLoadSubtitle</emphasis></term>
1094   <listitem><para>
1095   Otevře soubor s titulky (pomocí prohlížeče souborů)
1096   </para></listitem>
1097 </varlistentry>
1098
1099 <varlistentry>
1100   <term><emphasis role="bold">evLoadAudioFile</emphasis></term>
1101   <listitem><para>
1102   Otevře soubor se zvukem (pomocí prohlížeče souborů)
1103   </para></listitem>
1104 </varlistentry>
1105
1106 <varlistentry>
1107   <term><emphasis role="bold">evNone</emphasis></term>
1108   <listitem><para>
1109   Prázdná zpráva, nemá žádný efekt (možná s výjimkou Subversion verzí :-)).
1110   </para></listitem>
1111 </varlistentry>
1112
1113 <varlistentry>
1114   <term><emphasis role="bold">evPlaylist</emphasis></term>
1115   <listitem><para>
1116   Otevře/zavře okno playlistu.
1117   </para></listitem>
1118 </varlistentry>
1119
1120 <varlistentry>
1121   <term><emphasis role="bold">evPlayDVD</emphasis></term>
1122   <listitem><para>
1123   Zkusí otevřít disk v zadané DVD-ROM mechanice.
1124   </para></listitem>
1125 </varlistentry>
1126
1127 <varlistentry>
1128   <term><emphasis role="bold">evPlayVCD</emphasis></term>
1129   <listitem><para>
1130   Zkusí otevřít disk v zadané CD-ROM mechanice.
1131   </para></listitem>
1132 </varlistentry>
1133
1134 <varlistentry>
1135   <term><emphasis role="bold">evPreferences</emphasis></term>
1136   <listitem><para>
1137   Otevře okno předvoleb.
1138   </para></listitem>
1139 </varlistentry>
1140
1141 <varlistentry>
1142   <term><emphasis role="bold">evSetAspect</emphasis></term>
1143   <listitem><para>
1144   Nastaví poměr stran zobrazovaného obrázku.
1145   </para></listitem>
1146 </varlistentry>
1147
1148 <varlistentry>
1149   <term><emphasis role="bold">evSetURL</emphasis></term>
1150   <listitem><para>
1151   Zobrazí dialogové okno pro volbu URL.
1152   </para></listitem>
1153 </varlistentry>
1154
1155 <varlistentry>
1156   <term><emphasis role="bold">evSkinBrowser</emphasis></term>
1157   <listitem><para>
1158   Otevře okno voliče skinů.
1159   </para></listitem>
1160 </varlistentry>
1161 </variablelist>
1162 </sect1>
1163
1164
1165 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
1166
1167
1168 <sect1 id="skin-quality">
1169 <title>Tvorba kvalitních skinů</title>
1170
1171 <para>
1172 Co když jste si přečetli o skinech pro GUI
1173 <application>MPlayer</application>u, odvedli to nejlepší s
1174 <application>Gimp</application>em a chcete nám poslat svůj skin?
1175 Přečtěte si pár návodů, abyste se vyhnuli běžným omylům a vytvořili
1176 vysoce kvalitní skin.
1177 </para>
1178
1179 <para>
1180 Chceme, aby skiny, které přidáme do našeho repozitáře odpovídaly
1181 určitým standardům kvality. Je zde také mnoho věcí, které můžete
1182 udělat, abyste nám ulehčili práci.
1183 </para>
1184
1185 <para>
1186 Za příklad si vemte skin <systemitem>Blue</systemitem>.
1187 Ten splňuje všechna kritéria od verze 1.5.
1188 </para>
1189
1190 <itemizedlist>
1191   <listitem><para>
1192   Ke každému skinu by měl být soubor
1193   <filename>README</filename>, obsahující informace o vás jako autorovi,
1194   o copyrightu a licenci a vše ostatní, co chcete dodat.
1195   Chcete-li mít changelog, tento soubor je dobrým místem.
1196   </para></listitem>
1197
1198   <listitem><para>
1199   Měl by tu být soubor <filename>VERSION</filename>
1200   neobsahující nic jiného, než číslo verze na jediném řádku (např. 1.0).
1201   </para></listitem>
1202
1203   <listitem><para>
1204   Horizontální a vertikální ovládání (posuvníky jako hlasitost
1205   nebo pozice) by měly mít střed knoflíku správně zarovnán na stred posuvníku.
1206   Mělo by být možné posouvat knoflík na oba konce posuvníku, ale ne za ně.
1207   </para></listitem>
1208
1209   <listitem><para>
1210   Jednotlivé součásti skinu by měly mít správné rozměry
1211   deklarované v souboru skin. Pokud to tak není, můžete kliknout mimo např.
1212   tlačítko a to se stejně stiskne, nebo kliknout na jeho plochu a nestisknout
1213   jej.
1214   </para></listitem>
1215
1216   <listitem><para>
1217   Soubor <filename>skin</filename> by měl být srovnán na znaky
1218   a neobsahovat tabulátory. Srovnán na znaky znamená, že se čísla budou rovnat
1219   do úhledných sloupců.
1220   </para></listitem>
1221 </itemizedlist>
1222
1223 </sect1>
1224 </appendix>