changeset 11179:321222d19de6

Another file translated.
author wight
date Sun, 19 Oct 2003 19:59:07 +0000
parents d5644a03c32e
children 3ec115f5f8b8
files DOCS/xml/pl/skin.xml
diffstat 1 files changed, 1093 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DOCS/xml/pl/skin.xml	Sun Oct 19 19:59:07 2003 +0000
@@ -0,0 +1,1093 @@
+<?xml version="1.0" encoding="iso-8859-2"?>
+<!-- synced with 1.4 -->
+<appendix id="skin">
+<title>Format skórki MPlayera</title>
+<para>
+Celem tego dokumentu jest opisanie formatu skórki MPlayera.
+Informacje zawarte tutaj mogą być niedokładne ponieważ
+<orderedlist>
+<listitem><para>Nie jestem tym, który pisał GUI.</para></listitem>
+<listitem><para>GUI nie jest ukończone.</para></listitem>
+<listitem><para>Mogę się mylić.</para></listitem>
+</orderedlist>
+A więc nie bądź zaskoczony jeśli coś nie będzie działać tak, jak przedstawiono tutaj.
+</para>
+
+<para>Podziękowania <emphasis>Zoltánowi Ponekkerowi</emphasis> za jego pomoc.</para>
+
+<para><emphasis>András Mohari &lt;mayday@freemail.hu&gt;</emphasis></para>
+
+<sect1 id="skin-overview">
+<title>Wstęp</title>
+<para>
+W zasadzie nie ma to żadnego związku z formatem skórki, ale powinieneś
+wiedzieć, że MPlayer  <emphasis role="bold">nie</emphasis> posiada wbudowanej skórki, w związku
+z tym <emphasis role="bold"> co najmniej jedna skórka musi być zainstalowana, aby była możliwość
+używania GUI.</emphasis>
+</para>
+
+<sect2 id="skin-overview-directories">
+<title>Katalogi</title>
+<para>
+Skórki są szukane w następujących katalogach (w kolejności):
+<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>
+Zauważ, że pierwsza ścieżka może się różnić w zależności od sposobu w jaki MPlayer był skonfigurowany
+(zobacz argumenty <option>--prefix</option> oraz <option>--datadir</option> w skrypcie
+ <command>configure</command>).
+</para>
+
+<para>
+Każda skórka jest instalowana w swoim własnym katalogu, w jednym z
+katalogów wyżej wymienionych, na przykład:
+<screen>$(PREFIX)/share/mplayer/Skin/default/</screen>
+</para>
+</sect2>
+
+<sect2 id="skin-overview-formats">
+<title>Formaty obrazków</title>
+<para>Obrazki muszą być w formacie PNG truecolor (24 lub 32 bpp).</para>
+<para>
+W głównym oknie oraz na panelu odtwarzania (zobacz niżej) możesz użyć
+obrazków z 'przezroczystością': obszary wypełnione kolorem #FF00FF (magenta) są w pełni
+przezroczyste dla MPlayera. Oznacza to, że możesz mieć okna o różnych kształtach
+jeśli Twój X Server posiada rozszerzenie XShape.
+</para>
+</sect2>
+
+<sect2 id="skin-overview-components">
+<title>Składniki skórki</title>
+<para>
+Skórki są całkowicie konfigurowalne (w odróżnieniu od skórek np. Winampa/XMMS),
+a więc zależy to od Ciebie, czy stworzysz coś wspaniałego.
+</para>
+
+<para>
+W chwili obecnej mamy trzy okna, które można ozdobić:
+<link linkend="skin-file-main">okno główne (main window)</link>,
+<link linkend="skin-file-subwindow">okno ekranu (subwindow)</link>,
+<link linkend="skin-file-main">panel odtwarzania (playbar)</link>,
+<link linkend="skin-file-menu">menu skórki (skin menu)</link> (które może być aktywowane
+prawym przyciskiem myszy).
+
+<itemizedlist>
+<listitem><para>
+  <emphasis role="bold">Okno główne</emphasis> i/lub
+  <emphasis role="bold">panel odtwarzania</emphasis> to miejsca, gdzie można sterować programem MPlayer.
+  Tłem tego okna jest obrazek. Różne elementy mogą (i muszą) być umieszczone
+  w tym oknie: <emphasis>przyciski</emphasis>, <emphasis>potencjometry</emphasis>
+  (suwaki) i <emphasis>etykiety</emphasis>. Dla każdego elementu musisz określić ich pozycję
+  oraz rozmiar.
+</para><para>
+   <emphasis role="bold">Przycisk</emphasis> ma trzy stany (wciśnięty, zwolniony, nieaktywny) ,
+    zatem jego obrazki muszą być podzielone na trzy części w pionie. Zobacz sekcję
+  <link linkend="skin-button">button</link>, by dowiedzieć się więcej.
+</para><para>
+  <emphasis role="bold">Potencjometr (suwak)</emphasis> (wykorzystywany głównie jako pasek
+  przewijania i kontrolka  głośności/balansu) może składać się z każdej liczby stanów poprzez podzielenie jego obrazka
+  na wiele części, z których jedna poprzedza drugą. Zobacz
+  <link linkend="skin-hpotmeter">hpotmeter</link> oraz
+  <link linkend="skin-potmeter">potmeter</link>, by dowiedzieć się więcej.
+</para><para>
+  <emphasis role="bold">Etykiety</emphasis> są nieco specyficzne: Znaki
+  potrzebne do ich narysowania są pobierane z pliku graficznego, a znaki umieszczone
+  w pliku graficznym są opisane przez <link linkend="skin-fonts">plik opisu czcionek</link>.
+  Jest to plik, który za pomocą czystego tekstu określa współrzędne x, y oraz wielkość
+  każdego znaku umieszczonego na obrazku (plik graficzny i jego plik opisu tworzą
+  <emphasis>razem</emphasis> zestaw czcionek). Zobacz <link linkend="skin-dlabel">dlabel</link>
+  oraz <link linkend="skin-slabel">slabel</link>, by dowiedzieć się więcej.
+</para>
+<note><para>Wszystkie obrazki mogą być całkowicie przezroczyste - tak, jak to opisano
+w sekcji <link linkend="skin-overview-formats">formaty plików graficznych</link>. Jeżeli X Server
+nie obsługuje rozszerzenia XShape, to elementy oznaczone jako przezroczyste będą czarne.
+Jeśli chciałbyś wykorzystać taką możliwość, szerokość obrazka tła głównego okna musi być
+podzielna przez 8.
+</para></note>
+</listitem>
+
+<listitem><para>
+  <emphasis role="bold">Okno ekranu</emphasis> to miejsce odtwarzania filmu. Może
+  ono wyświetlać określony obrazek jeśli żaden film nie jest uruchomiony
+  (to dość nudne mieć puste okno :-)) <emphasis role="bold">Uwaga:</emphasis> przezroczystość
+  <emphasis role="bold">nie jest</emphasis> tutaj dostępna.
+</para></listitem>
+
+<listitem><para>
+  <emphasis role="bold">Menu skórki</emphasis> to po prostu jeden ze sposobów
+  na kontrolowanie MPlayera poprzez wpisy w menu. Dwa obrazki są wymagane dla tego
+  menu: pierwszy z nich jest obrazkiem podstawowym, który pokazuje zwykły stan menu, drugi zaś
+  służy do wyświetlenia zaznaczonych obszarów. Gdy uaktywnisz menu, zostanie pokazany pierwszy obrazek.
+  Jeśli przesuniesz mysz nad któryś z jego wpisów, wówczas zaznaczony element jest kopiowany z drugiego
+  obrazka w miejsce, na które wskazuje kursor myszy (drugi obrazek nigdy nie jest wyświetlany jako całość).
+</para><para>
+ Wpis w menu jest określony przez jego pozycję oraz rozmiar na obrazku (zobacz
+  sekcję <link linkend="skin-file-menu">menu skórki</link> by dowiedzieć się więcej).
+</para></listitem>
+</itemizedlist>
+</para>
+
+<para>
+  Jedna ważna sprawa, która nie została jeszcze powiedziana: MPlayer musi wiedzieć co zrobić w momencie
+  kliknięcia na przyciski, potencjometry i wpisy w menu, aby zadziałały. Zostało to zrobione za pomocą
+  <link linkend="skin-gui">sygnałów</link> (zdarzeń).
+  Dla tych elementów musisz zdefiniować sygnały, które mają być generowane podczas ich kliknięcia.
+</para>
+</sect2>
+
+<sect2 id="skin-files">
+<title>Pliki</title>
+<para>
+Potrzebne są następujące pliki podczas tworzenia skórki:
+<itemizedlist>
+<listitem><para>
+  Plik konfiguracyjny o nazwie <link linkend="skin-file">skin</link>, mówiący
+  programowi MPlayer jak połączyć różne części skórki razem i co zrobić, gdy
+  nastąpi kliknięcie w którymś obszarze okna.
+</para></listitem>
+<listitem><para>
+  Plik graficzny tła w oknie głównym.
+</para></listitem>
+<listitem><para>
+  Obrazki dla elementów w głównym oknie (zawierające jeden lub
+  więcej plików opisu czcionek, potrzebnych do rysowania etykiet).
+</para></listitem>
+<listitem><para>
+  Obrazek wyświetlany w oknie ekranu (opcjonalnie)
+</para></listitem>
+<listitem><para>
+  Dwa obrazki dla menu skórki (potrzebne są tylko wtedy, gdy chcesz tworzyć
+  takie menu).
+</para></listitem>
+</itemizedlist>
+  Za wyjątkiem pliku konfiguracyjnego skórki możesz nazwać wszystkie pliki
+  tak, jak tego chcesz (ale weź pod uwagę, że pliki opisu czcionek muszą mieć
+  rozszerzenie <filename>.fnt</filename> ).
+</para>
+</sect2>
+</sect1>
+ 
+<sect1 id="skin-file">
+<title>Plik skin</title>
+<para>
+Jak zostało powiedziane wcześniej, plik ten jest plikiem konfigurującym skórkę. Obsługuje różne
+rodzaje wierszy; komentarze zaczynają wiersz znakiem '<literal>;</literal>' (tylko spacje i znaki
+tabulacji są dopuszczone przed '<literal>;</literal>').
+</para>
+
+<para>
+Plik podzielony jest na sekcje. Każda sekcja opisuje skórkę dla każdej
+aplikacji i ma następującą formę:
+
+<programlisting>
+section = <replaceable>nazwa sekcji</replaceable>
+.
+.
+.
+end
+</programlisting>
+</para>
+
+<para>
+Obecnie jest tylko jedna aplikacja, a więc potrzebujesz tylko jedną sekcję 'section': nazwa tej sekcji to
+<emphasis role="bold">movieplayer</emphasis>.
+</para>
+
+<para>
+Wewnątrz tej sekcji każde z okien jest opisane przez blok następującej postaci:
+<programlisting>
+window = <replaceable>nazwa okna</replaceable>
+.
+.
+.
+end
+</programlisting>
+</para>
+
+<para>
+gdzie <replaceable>nazwa okna</replaceable>może być jednym z poniższych łańcuchów:
+<itemizedlist>
+<listitem><para><emphasis role="bold">main</emphasis> - dla okna głównego</para></listitem>
+<listitem><para><emphasis role="bold">sub</emphasis> - dla okna ekranu</para></listitem>
+<listitem><para><emphasis role="bold">menu</emphasis> - dla menu skórki</para></listitem>
+<listitem><para><emphasis role="bold">playbar</emphasis> - dla panelu odtwarzania</para></listitem>
+</itemizedlist>
+</para>
+
+<para>
+(Bloki sub i menu są opcjonalne - nie musisz tworzyć menu czy elementów skórki dla okna ekranu)
+</para>
+
+<para>
+Wewnątrz bloku 'window' możesz definiować każdy element okna wpisując linijkę tej postaci:
+<programlisting>item = parametr</programlisting>
+Gdzie <literal>item</literal> jest łańcuchem, kóry identyfikuje typ elementu GUI,
+ <literal>parametr</literal> jest wartością numeryczną lub tekstową (lub listą takich
+ wartości oddzielonych od siebie znakiem przecinka).
+</para>
+
+<para>
+Złożenie powyższych elementów razem tworzy plik, który wygląda mniej więcej tak:
+<programlisting>
+section = movieplayer
+  window = main
+  ; ... elementy okna głównego ...
+  end
+
+  window = sub
+  ; ... elementy okna ekranu ...
+  end
+
+  window = menu
+  ; ... elementy menu skórki ...
+  end
+
+  window = playbar
+  ; ... elementy panelu odtwarzania ...
+  end
+end
+</programlisting>
+</para>
+
+<para>
+Nazwa pliku graficznego musi zostać podana bez żadnych nazw katalogów - obrazki
+są szukane w katalogu <filename class="directory">Skin</filename>.
+Możesz (ale nie musisz) określić rozszerzenia tego pliku. Jeśli plik taki nie istnieje, MPlayer
+próbuje wczytać plik <filename>&lt;nazwa pliku&gt;.&lt;rozszerzenie&gt;</filename>, gdzie <literal>png</literal>
+oraz <literal>PNG</literal> są próbowane jako <filename>&lt;rozszerzenie&gt;</filename>
+(w tej właśnie kolejności). Pierwszy pasujący plik będzie użyty.
+</para>
+
+<para>
+Na koniec kilka słów na temat pozycjonowania. Okno główne oraz okno ekranu może
+zostać umieszczone w różnych narożnikach ekranu poprzez ustawienie współrzędnych
+ <literal>X</literal> i <literal>Y</literal>. <literal>0</literal> to góra lub lewa strona,
+<literal>-1</literal> to środek, <literal>-2</literal> to strona prawa lub dół, tak jak
+przedstawiono na poniższej ilustracji:
+</para>
+<informalfigure>
+<screen>
+(0, 0)----(-1, 0)----(-2, 0)
+  |          |          |
+  |          |          |
+(0,-1)----(-1,-1)----(-2,-1)
+  |          |          |
+  |          |          |
+(0,-2)----(-1,-2)----(-2,-2)
+</screen>
+</informalfigure>
+
+<para>
+Oto przykład wyjaśniający to lepiej. Przypuśćmy, że masz obrazek nazwany
+<filename>main.png</filename>, który został użyty dla okna głównego:
+<programlisting>base = main, -1, -1</programlisting>
+MPlayer próbuje wczytać pliki <filename>main</filename>, <filename>main.png</filename>,
+<filename>main.PNG</filename>.
+</para>
+
+
+<sect2 id="skin-file-main">
+<title>Okno główne i panel odtwarzania</title>
+<para>
+Poniżej znajduje się lista wpisów, które mogą być użyte w blokach
+'<literal>window = main</literal>'.&nbsp;.&nbsp;.'<literal>end</literal>',
+oraz '<literal>window = playbar</literal>' .&nbsp;.&nbsp;. '<literal>end</literal>'.
+</para>
+
+<variablelist>
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-main-base"/>base = obrazek, X, Y
+  </literal></term>
+  <listitem><para>
+  Pozwala określić obrazek tła, który będzie używany w oknie głównym
+  Okno będzie widoczne w pozycji <literal>X, Y</literal> na ekranie. Okno
+  będzie wielkości tego obrazka.
+    </para>
+    <note><para>Współrzędne te nie działają na razie dla okna ekranu.</para></note>
+    <warning><para>Obszary przezroczystości obrazka (kolor #FF00FF) będą widoczne jako czarne
+    pod X serwerami nieposiadającymi rozszerzenia XShape. Szerokość obrazka musi być podzielna przez 8.</para></warning>
+    </listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-button"/>button = obrazek, X, Y, szerokość, wysokość, sygnał
+  </literal></term>
+  <listitem><para>
+Umieszcza przycisk o rozmiarze <literal>szerokość</literal> * <literal>wysokość</literal> w pozycji
+<literal>X</literal>, <literal>Y</literal>. Określony <literal>sygnał</literal> jest generowany podczas kliknięcia na przycisk.
+Obrazek ten opisany przez <literal>obrazek</literal> musi składać się z trzech części jedna pod drugą (stosownie
+do możliwych stanów przycisku), w ten oto sposób:
+</para>
+<informalfigure>
+<screen>
++---------------+
+|  wciśnięty    |
++---------------+
+|  zwolniony    |
++---------------+
+| nieaktywny    |
++---------------+
+</screen>
+</informalfigure>
+  </listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-decoration"/>decoration = enable|disable (włączona|wyłaczona)
+  </literal></term>
+  <listitem><para>
+Włącza lub wyłącza dekorację menedżera okna w oknie głównym.
+Domyślnie jest <emphasis role="bold">wyłączona</emphasis>.
+    </para>
+    <note><para>Nie działa to w oknie ekranu, gdyż nie ma takiej potrzeby.</para></note>
+  </listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-hpotmeter"/>hpotmeter = przycisk, szer_przycisku, wys_przycisku, faza, liczba_faz, domyślny, X, Y,
+  szerokość, wysokość, sygnał
+  </literal></term>
+  <listitem><para>
+
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-vpotmeter"/>vpotmeter = przycisk, szer_przycisku, wys_przycisku, fazy, liczba_faz,
+  domyślny, X, Y, szerokość, wysokość, sygnał
+  </literal></term>
+  <listitem><para>
+Umieszcza poziomo (hpotmeter) lub pionowo (vpotmeter) suwak o rozmiarze
+<literal>szerokość</literal> * <literal>wysokość</literal> i pozycji <literal>X,Y</literal>.
+Obrazek może być podzielony na różne części dla różnych faz suwaka (np. możesz mieć
+suwak głośności, który w zależności od położenia zmienia kolor z zielonego (minimum) na
+czerwony (maksimum)). <literal>hpotmeter</literal> może być przyciskiem umieszczonym poziomo.
+Jego parametry to:
+    </para>
+    <itemizedlist>
+    <listitem><para><literal>przycisk</literal> - obrazek użyty do przycisku (musi posiadać trzy części jedna pod drugą tak,
+     jak w przypadku <link linkend="skin-button">przycisku</link>)
+    </para></listitem>
+    <listitem><para><literal>szer_przycisku</literal>, <literal>wys_przycisku</literal> - wielkość przycisku
+    </para></listitem>
+   <listitem><para><literal>fazy</literal> - obrazek używany do określenie faz dla hpotmeter.
+Wartość specjalna <literal>NULL</literal> może być użyta jeśli nie chcesz żadnego obrazka.
+Obrazek musi być podzielony w pionie na <literal>fragmenty poszczególnych faz</literal> tak, jak poniżej:
+    </para>
+<informalfigure>
+<screen>
++------------+
+|  faza #1   |
++------------+
+|  faza #2   |
++------------+
+     ...
++------------+
+|  faza #n   |
++------------+
+</screen>
+
+</informalfigure>
+    </listitem>
+    <listitem><para><literal>liczba_faz</literal> - liczba faz znajdująca się na obrazku z <literal>fazami</literal>
+    </para></listitem>
+    <listitem><para><literal>domyślny</literal> - domyślne ustawienie dla hpotmeter
+    (zakres od <literal>0</literal> do <literal>100</literal>)
+    </para></listitem>
+    <listitem><para><literal>X</literal>, <literal>Y</literal> - pozycja dla hpotmeter
+    </para></listitem>
+    <listitem><para><literal>szerokość</literal>, <literal>wysokość</literal> - szerokość i wysokość dla
+  <literal>hpotmeter</literal>
+    </para></listitem>
+    <listitem><para><literal>sygnał</literal> - sygnał generowany podczas zmiany wartości <literal>hpotmeter</literal>
+    </para></listitem>
+    </itemizedlist>
+
+    </listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-potmeter"/>potmeter = fazy, liczba_faz, domyślny, X, Y, szerokość, wysokość, sygnał
+  </literal></term>
+  <listitem><para>
+<literal>hpotmeter</literal> bez przycisku. (domyślam się, że chodzi o to, aby
+nim kręcić, ale reaguje on tylko na poziome przesuwanie). Opis parametrów znajdziesz w części o
+<link linkend="skin-hpotmeter">hpotmeter</link>.
+Parametr <literal>fazy</literal> może mieć wartość <literal>NULL</literal>, ale
+jest to zupełnie bezużyteczne, gdyż nie widać wtedy położenia potencjometru.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-font"/>font = plik_czcionek, id_czcionki
+  </literal></term>
+  <listitem><para>
+Definiuje czcionki. <literal>plik_czcionek</literal> jest nazwą pliku opisu czcionek z rozszerzeniem
+<filename>.fnt</filename> (nie podawaj rozszerzenia w tym miejscu).
+<literal>id_czcionki</literal> jest używany do wskazywania konkretnej czcionki (zobacz <link linkend="skin-dlabel">dlabel</link>
+oraz <link linkend="skin-slabel">slabel</link>). Można zdefiniować do 25 czcionek.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-slabel"/>slabel = X, Y, id_czcionki, &quot;tekst&quot;
+  </literal></term>
+  <listitem><para>
+Umieszcza statyczną etykietę w pozycji <literal>X,Y</literal>. <literal>tekst</literal>
+jest wyświetlany za pomocą czcionek wskazywanych przez <literal>id_czcionki</literal>. Tekst jest
+po prostu zwykłym łańcuchem znaków (zmienne <literal>$x</literal> nie działają), które muszą być umieszczone
+pomiędzy podwójnym cudzysłowem (a znak &quot; nie może być częścią tekstu). Etykieta
+wyświetlana jest za pomocą czcionek, na które wskazuje <literal>id_czcionki</literal>.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-dlabel"/>dlabel = X, Y, długość, wyrównanie, id_czcionki, &quot;tekst&quot;
+  </literal></term>
+  <listitem>
+<para>
+Umieszcza dynamiczną etykietę w pozycji <literal>X,Y</literal>. Etykieta jest nazywana
+dynamiczną ponieważ jej tekst jest cyklicznie odświeżany. Maksymalna długość etykiety
+określa parametr <literal>długość</literal> (jej wysokość określa wysokość czcionek).
+Jeśli tekst jest szerszy niż zdefiniowana długość, będzie on przewijany, w przeciwnym wypadku
+będzie wyrównany w miejscu określonym przez wartość parametru <literal>wyrównanie</literal>: <literal>0</literal>
+oznacza do prawej, <literal>1</literal> to wyśrodkowanie, <literal>2</literal> to wyrównanie do lewej.
+</para>
+<para>
+Wyświetlany tekst jest określony przez zmienną <literal>tekst</literal>: musi być zawarty
+pomiędzy podwójnymi cudzysłowami (a znak &quot; nie może być częścią tekstu). Etykieta
+wyświetlana jest za pomocą czcionek, na które wskazuje parametr <literal>id_czcionki</literal>. Możesz
+użyć następujących zmiennych w tekście:
+</para>
+
+<informaltable>
+<tgroup cols="2">
+<thead>
+  <row><entry>Zmienna</entry><entry>Znaczenie</entry></row>
+</thead>
+<tbody>
+<row>
+<entry>$1</entry>
+<entry>czas odtwarzania w formacie <emphasis>hh:mm:ss</emphasis></entry>
+</row>
+<row>
+<entry>$2</entry>
+<entry>czas odtwarzania w formacie <emphasis>mmmm:ss</emphasis></entry>
+</row>
+<row>
+<entry>$3</entry>
+<entry>czas odtwarzania w formacie (godziny) <emphasis>hh</emphasis></entry>
+</row>
+<row>
+<entry>$4</entry>
+<entry>czas odtwarzania w formacie (minuty) <emphasis>mm</emphasis></entry>
+</row>
+<row>
+<entry>$5</entry>
+<entry>czas odtwarzania w formacie (sekundy) <emphasis>ss</emphasis></entry>
+</row>
+<row>
+<entry>$6</entry>
+<entry>długość filmu w formacie <emphasis>hh:mm:ss</emphasis></entry>
+</row>
+<row>
+<entry>$7</entry>
+<entry>długość filmu w formacie <emphasis>mmmm:ss</emphasis></entry>
+</row>
+<row>
+<entry>$8</entry>
+<entry>długość filmu w formacie<emphasis>h:mm:ss</emphasis></entry>
+</row>
+<row>
+<entry>$v</entry>
+<entry>format głośności w %<emphasis>xxx.xx</emphasis></entry>
+</row>
+<row>
+<entry>$V</entry>
+<entry>format głośności <emphasis>xxx.xx</emphasis> format</entry>
+</row>
+<row>
+<entry>$b</entry>
+<entry>format balansu w %<emphasis>xxx.xx</emphasis></entry>
+</row>
+<row>
+<entry>$B</entry>
+<entry>format balansu <emphasis>xxx.xx</emphasis></entry>
+</row>
+<row>
+<entry>$$</entry>
+<entry>znak $</entry>
+</row>
+<row>
+<entry>$a</entry>
+<entry>oznaczenie zgodne z rodzajem typu pliku audio (nic: <literal>n</literal>,
+mono: <literal>m</literal>, stereo: <literal>t</literal>)</entry>
+</row>
+<row>
+<entry>$t</entry>
+<entry>numer ścieżki (na liście odtwarzania)</entry>
+</row>
+<row>
+<entry>$o</entry>
+<entry>nazwa pliku</entry>
+</row>
+<row>
+<entry>$f</entry>
+<entry>nazwa pliku pisana małymi literami</entry>
+</row>
+<row>
+<entry>$F</entry>
+<entry>nazwa pliku pisana wielkimi literami</entry>
+</row>
+<row>
+<entry>$T</entry>
+<entry>oznaczenie zgodne z rodzajem strumienia (plik: <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> (gdy film jest odtwarzany i czcionka ma znak <keycap>p</keycap>)</entry>
+</row>
+<row>
+<entry>$s</entry>
+<entry>znak <keycap>s</keycap> (gdy film jest zatrzymany i czcionka ma znak <keycap>s</keycap>)</entry>
+</row>
+<row>
+<entry>$e</entry>
+<entry>znak <keycap>e</keycap> (gdy film jest wstrzymany (pauza) i czcionka ma znak <keycap>e</keycap>)
+</entry>
+</row>
+<row>
+<entry>$x</entry>
+<entry>rozdzielczość filmu (szerokość)</entry>
+</row>
+<row>
+<entry>$y</entry>
+<entry>rozdzielczość filmu (wysokość)</entry>
+</row>
+<row>
+<entry>$C</entry>
+<entry>nazwa używanego kodeka</entry>
+</row>
+
+</tbody>
+</tgroup>
+</informaltable>
+</listitem>
+
+</varlistentry>
+</variablelist>
+
+<note><para>
+Zmienne <literal>$a, $T, $p, $s</literal> oraz <literal>$e</literal>
+zwracają znaki, które powinny być wyświetlane jako znaki specjalne (na przykład
+<keycap>e</keycap> jest symbolem pauzy, która z reguły wygląda mniej więcej tak
+||). Powinieneś mieć czcionkę dla zwykłych znaków oraz osobną czcionkę dla symboli.
+Zobacz sekcję na temat <link linkend="skin-fonts-symbols">symboli</link>,
+by dowiedzieć się więcej.
+</para></note>
+</sect2>
+
+<sect2 id="skin-file-subwindow">
+<title>Okno ekranu</title>
+<para>
+Poniższe wpisy mogą być użyte w bloku
+'<literal>window = sub</literal>' . . . '<literal>end</literal>' .
+</para>
+
+<variablelist>
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-sub-base"/>base = obrazek, X, Y, szerokość, wysokość
+  </literal></term>
+  <listitem><para>
+Wyświetla obrazek w oknie. Okno będzie widoczne na ekranie w miejscu oznaczonym przez współrzędne
+<literal>X</literal>, <literal>Y</literal> (<literal>0,0</literal> to lewy górny narożnik).
+Możesz użyć <literal>-1</literal> dla środka, <literal>-2</literal>
+dla prawej strony (<literal>X</literal>) i dołu (<literal>Y</literal>). Okno
+będzie mieć wielkość obrazka. <literal>szerokość</literal> oraz <literal>wysokość</literal>
+oznaczają wielkość okna; są one opcjonalne (jeśli nie są określone, okno będzie wielkości takiej, jak obrazek).</para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-background"/>background = R, G, B
+  </literal></term>
+  <listitem><para>
+  Pozwala ustawić kolor tła. Jest to użyteczne jeśli obrazek jest mniejszy niż okno.
+  <literal>R</literal>, <literal>G</literal> oraz <literal>B</literal> określają składniki kolorów
+  czerwonego, zielonego i niebieskiego (każdy z nich jest reprezentowany przez liczbę dziesiętną w zakresie
+  od 0 do 255).</para></listitem>
+</varlistentry>
+</variablelist>
+</sect2>
+
+<sect2 id="skin-file-menu">
+<title>Menu skórki</title>
+<para>
+Jak wspomniano wcześniej, menu jest wyświetlane przy użyciu dwóch obrazków.
+Zwykłe obszary menu są pobierane z obrazka określonego przez element <literal>base</literal>,
+podczas gdy obszary zaznaczone są pobierane z obrazka wskazywanego przez element <literal>selected</literal>.
+Musisz zdefiniować pozycję i rozmiar każdego obszaru menu poprzez element menu.
+</para>
+
+<para>
+Poniższe wpisy mogą być użyte w bloku:
+'<literal>window = menu</literal>'. . .'<literal>end</literal>' .
+</para>
+
+<variablelist>
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-menu-base"/>base = obrazek
+  </literal></term>
+  <listitem><para>
+Obrazek dla zwykłych obszarów menu.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-selected"/>selected = obrazek
+  </literal></term>
+  <listitem><para>
+Obrazek pokazujący w menu wszystkie zaznaczone obszary.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><literal>
+  <anchor id="skin-menu"/>menu = X, Y, szerokość, wysokość, sygnał
+  </literal></term>
+  <listitem><para>
+Definiuje pozycję i rozmiar obszarów menu na obrazku przy pomocy <literal>X,Y</literal>.
+<literal>sygnał</literal> to zdarzenie wygenerowane podczas zwolnienia przycisku
+myszy nad obszarem.
+    </para></listitem>
+</varlistentry>
+</variablelist>
+</sect2>
+</sect1>
+
+<sect1 id="skin-fonts">
+<title>Czcionki</title>
+<para>
+Jak wspomniano w sekcji na temat fragmentów skórki, czcionka jest definiowana przez
+obrazek i plik opisujący. Możesz umieścić znak gdziekolwiek na obrazku, ale miej
+pewność, że jego pozycja i rozmiar jest podana właściwie w pliku opisującym.
+</para>
+
+<para>
+Plik opisujący czcionki (o rozszerzeniu <filename>.fnt</filename>) może posiadać
+linie komentarzy zaczynające się znakiem '<literal>;</literal>'. Plik musi zawierać
+linie w postaci:
+<anchor id="skin-font-image"/>
+<programlisting>image = <replaceable>obrazek</replaceable></programlisting>
+Gdzie <literal><replaceable>obrazek</replaceable></literal> jest nazwą pliku
+graficznego, który zawiera czcionki (nie musisz dopisywać jego rozszerzenia).
+<anchor id="skin-font-char"/>
+<programlisting>&quot;char&quot; = X, Y, szerokość, wysokość</programlisting>
+<literal>X</literal> oraz <literal>Y</literal> określają pozycję znaku
+<literal>char</literal> na obrazku (<literal>0,0</literal> to górny lewy narożnik).
+<literal>szerokość</literal> i <literal>wysokość</literal> to rozmiar znaku
+w pikselach.
+</para>
+
+<para>
+Przykład: definiujemy znaki A, B, C przy użyciu pliku <filename>font.png</filename>.
+<programlisting>
+; Może być &quot;font&quot; zamiast &quot;font.png&quot;.
+image = font.png
+
+; Trzy znaki wystarczą do tej demonstracji :-)
+&quot;A&quot; =  0,0, 7,13
+&quot;B&quot; =  7,0, 7,13
+&quot;C&quot; = 14,0, 7,13
+</programlisting>
+</para>
+
+<sect2 id="skin-fonts-symbols">
+<title>Znaki specjalne (symbole)</title>
+<para>
+Niektóre znaki mają specjalne znaczenie, gdy są zwracane przez pewne zmienne
+używane w <link linkend="skin-dlabel">dlabel</link>. Znaki te mogą być wyświetlane jako symbole
+w ten sposób, że np. podczas odtwarzania strumienia DVD widoczne jest ładne logo zamiast znaku '<literal>d</literal>'.
+</para>
+<para>
+Poniższa tablica zawiera znaki używane do wyświetlania symboli (wymagają one oddzielnych czcionek).
+</para>
+
+<informaltable>
+<tgroup cols="2">
+<thead>
+  <row><entry>Znak</entry><entry>Symbol</entry></row>
+</thead>
+<tbody>
+<row><entry><keycap>p</keycap></entry><entry>odtwarzanie</entry></row>
+<row><entry><keycap>s</keycap></entry><entry>stop</entry></row>
+<row><entry><keycap>e</keycap></entry><entry>pauza</entry></row>
+<row><entry><keycap>n</keycap></entry><entry>bez dźwięku</entry></row>
+<row><entry><keycap>m</keycap></entry><entry>dźwięk mono</entry></row>
+<row><entry><keycap>t</keycap></entry><entry>dźwięk stereo</entry></row>
+<row><entry><keycap>f</keycap></entry><entry>strumień z pliku</entry></row>
+<row><entry><keycap>v</keycap></entry><entry>strumień z Video CD</entry></row>
+<row><entry><keycap>d</keycap></entry><entry>strumień z DVD</entry></row>
+<row><entry><keycap>u</keycap></entry><entry>strumień z URL</entry></row>
+</tbody>
+</tgroup>
+</informaltable>
+</sect2>
+</sect1>
+
+<sect1 id="skin-gui">
+<title>Sygnały GUI</title>
+<para>
+Tutaj znajdują się sygnały, które mogą być generowane przez przyciski, suwaki
+i elementy menu.
+</para>
+<note><para>
+Niektóre sygnały mogą nie działać w oczekiwany sposób (lub nie działać w ogóle).
+Jak wiadomo, GUI jest jeszcze w fazie rozwoju.
+</para></note>
+
+<variablelist>
+<title>Kontrola odtwarzania :</title>
+<varlistentry>
+  <term><emphasis role="bold">evNext</emphasis></term>
+  <listitem><para>
+Przejdź do następnej pozycji na liście odtwarzania.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPause</emphasis></term>
+  <listitem><para>
+  Tworzy przełącznik razem z <literal>evPlaySwitchToPause</literal>.
+  Mogą być użyte do utworzenia wspólnego przycisku dla odtwarzania/pauzy.
+  Oba sygnały powinny być powiązane z przyciskami wyświetlonymi w tej samej
+  pozycji w oknie. Sygnał wstrzymuje wtedy odtwarzanie i wyświetlanty jest
+  obrazek dla przycisku <literal>evPlaySwitchToPause</literal> (aby zaznaczyć,
+  że przycisk ten może być użyty do kontynuowania odtwarzania).
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPlay</emphasis></term>
+  <listitem><para>
+Rozpoczyna odtwarzanie.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPlaySwitchToPause</emphasis></term>
+  <listitem><para>
+Przeciwieństwo <literal>evPauseSwitchToPlay</literal>. Ten sygnał zaczyna odtwarzanie
+oraz wyświetlenie obrazka dla przycisku <literal>evPauseSwitchToPlay</literal>
+(aby zaznaczyć, że przycisk ten może być użyty ponownie do wstrzymania odtwarzania).
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPrev</emphasis></term>
+  <listitem><para>
+Przejdź do poprzedniej pozycji na liście odtwarzania.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evStop</emphasis></term>
+  <listitem><para>
+Zatrzymuje odtwarzanie.
+    </para></listitem>
+</varlistentry>
+</variablelist>
+
+<variablelist>
+<title>Przewijanie:</title>
+<varlistentry>
+  <term><emphasis role="bold">evBackward10sec</emphasis></term>
+  <listitem><para>
+Przewija do tyłu o 10 sekund.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evBackward1min</emphasis></term>
+  <listitem><para>
+Przewija do tyłu o 1 minutę.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evBackward10min</emphasis></term>
+  <listitem><para>
+Przewija do tyłu o 10 minut.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evForward10sec</emphasis></term>
+  <listitem><para>
+Przewija do przodu o 10 sekund.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evForward1min</emphasis></term>
+  <listitem><para>
+Przewija do przodu o 1 minutę.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evForward10min</emphasis></term>
+  <listitem><para>
+Przewija do przodu o 10 minut..
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evSetMoviePosition</emphasis></term>
+  <listitem><para>
+Przewija do pozycji (może być wykorzystane przez suwak;
+użyte są względne wartości (0-100%) suwaka).
+    </para></listitem>
+</varlistentry>
+</variablelist>
+
+<variablelist>
+<title>Kontrola video:</title>
+<varlistentry>
+  <term><emphasis role="bold">evDoubleSize</emphasis></term>
+  <listitem><para>
+Ustawia podwójny rozmiar okna z filmem.
+    </para></listitem>
+</varlistentry>
+<varlistentry>
+  <term><emphasis role="bold">evFullScreen</emphasis></term>
+  <listitem><para>
+Włącza/wyłącza tryb pełnoekranowy.
+    </para></listitem>
+</varlistentry>
+<varlistentry>
+  <term><emphasis role="bold">evNormalSize</emphasis></term>
+  <listitem><para>
+Ustawia typowy rozmiar okna z filmem.
+    </para></listitem>
+</varlistentry>
+</variablelist>
+
+<variablelist>
+<title>Kontrola dźwięku:</title>
+<varlistentry>
+  <term><emphasis role="bold">evDecAudioBufDelay</emphasis></term>
+  <listitem><para>
+Zmniejsza opóźnienie bufora dźwięku.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evDecBalance</emphasis></term>
+  <listitem><para>
+Zmniejsza balans.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evDecVolume</emphasis></term>
+  <listitem><para>
+Zmniejsza głośność
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evIncAudioBufDelay</emphasis></term>
+  <listitem><para>
+Zwiększa opóźnienie bufora dźwięku.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evIncBalance</emphasis></term>
+  <listitem><para>
+Zwiększa balans.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evIncVolume</emphasis></term>
+  <listitem><para>
+Zwiększa głośność.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evMute</emphasis></term>
+  <listitem><para>
+Wycisza/przywraca dźwięk.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evSetBalance</emphasis></term>
+  <listitem><para>
+Ustawia balans (może być używane przez suwak;
+używana jest wartość względna (0-100%)).
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evSetVolume</emphasis></term>
+  <listitem><para>
+Ustawia głośność (może być używane przez suwak;
+używana jest wartość względna (0-100%)).
+    </para></listitem>
+</varlistentry>
+</variablelist>
+
+<variablelist>
+<title>Różne:</title>
+<varlistentry>
+  <term><emphasis role="bold">evAbout</emphasis></term>
+  <listitem><para>
+Otwiera okno "o programie".
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evDropSubtitle</emphasis></term>
+  <listitem><para>
+Wyłącza aktualnie używane napisy.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evEqualizer</emphasis></term>
+  <listitem><para>
+Włącza/wyłącza equalizer.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evExit</emphasis></term>
+  <listitem><para>
+Wyłącza 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>
+Wczytuje plik (poprzez otwarcie okna przeglądarki plików, gdzie możesz wybrać plik).
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evLoadPlay</emphasis></term>
+  <listitem><para>
+Robi to samo co <literal>evLoad</literal>, ale zaczyna automatycznie odtwarzać
+zaraz po wyborze pliku.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evLoadSubtitle</emphasis></term>
+  <listitem><para>
+Wczytuje plik z napisami (z przeglądarki plików).
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evLoadAudioFile</emphasis></term>
+  <listitem><para>
+Wczytuje plik dźwiękowy (z przeglądarki plików).
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evNone</emphasis></term>
+  <listitem><para>
+Sygnał pusty - nic nie robi (może za wyjątkiem wersji z CVS:-)).
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPlayList</emphasis></term>
+  <listitem><para>
+Otwórz/zamknij okno listy odtwarzania.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPlayDVD</emphasis></term>
+  <listitem><para>
+Próbuje odczytać płytę ze wskazanego czytnika DVD.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPlayVCD</emphasis></term>
+  <listitem><para>
+Próbuje odczytać płytę ze wskazanego czytnika CD.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evPreferences</emphasis></term>
+  <listitem><para>
+Otwiera okno z ustawieniami.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evSetAspect</emphasis></term>
+  <listitem><para>
+Ustawia proporcje obrazu.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evSetURL</emphasis></term>
+  <listitem><para>
+Wyświetla okienko dialogowe URL.
+    </para></listitem>
+</varlistentry>
+
+<varlistentry>
+  <term><emphasis role="bold">evSkinBrowser</emphasis></term>
+  <listitem><para>
+Otwiera okno przeglądarki skórek.
+    </para></listitem>
+</varlistentry>
+</variablelist>
+
+</sect1>
+
+</appendix>