view DOCS/xml/pl/skin.xml @ 27528:0474738b5577

more French typography fixes and wording fixes, by C彨眃ric Viou and myself
author gpoirier
date Tue, 09 Sep 2008 21:07:26 +0000
parents 655565aafbe4
children 0f1b5b68af32
line wrap: on
line source

<?xml version="1.0" encoding="utf-8"?>
<!-- synced with r19081 -->
<!-- Opiekun: Flex -->
<appendix id="skin">
<title>Format sk贸rki <application>MPlayera</application></title>

<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 <application>MPlayer</application> <emphasis role="bold">nie</emphasis>
ma wbudowanej sk贸rki, w zwi膮zku z tym <emphasis role="bold"> co najmniej
jedna sk贸rka musi by膰 zainstalowana, aby艣 mia艂 mo偶liwo艣膰 korzystania z 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)/skins/</filename>
</para></listitem>
<listitem><para>
<filename class="directory">$(PREFIX)/share/mplayer/skins/</filename>
</para></listitem>
<listitem><para>
<filename class="directory">~/.mplayer/skins/</filename>
</para></listitem>
</orderedlist>
</para>

<para>
Zauwa偶, 偶e pierwsza 艣cie偶ka mo偶e si臋 r贸偶ni膰, w zale偶no艣ci od sposobu w jaki
<application>MPlayer</application> zosta艂 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 jednej z wy偶ej
wymienionych lokacji, na przyk艂ad:
<screen>$(PREFIX)/share/mplayer/skins/default/</screen>
</para>
</sect2>

<sect2 id="skin-overview-formats">
<title>Formaty obrazk贸w</title>
<para>Obrazki musz膮 by膰 zapisane w formacie PNG (paleta 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 <application>MPlayera</application>. Oznacza to, 偶e
mo偶esz mie膰 okna o r贸偶nych kszta艂tach je艣li Tw贸j X Server ma 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. 
<application>Winampa</application>/<application>XMMS</application>),
a wi臋c zale偶y to wy艂膮cznie od Ciebie, czy stworzysz co艣 wspania艂ego.
</para>

<para>
W chwili obecnej mamy cztery 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偶esz
  sterowa膰 <application>MPlayerem</application>.
  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 jest pod 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> czcionk臋).
  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, gdzie odtwarzany jest
  film. 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 <application>MPlayera</application> poprzez wpisy w menu. Dwa
  obrazki s膮 do tego potrzebne: 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 w ca艂o艣ci).
</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:
  <application>MPlayer</application> 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膰 wys艂ane podczas
  klikni臋cia na nie.
</para>
</sect2>

<sect2 id="skin-files">
<title>Pliki</title>
<para>
Potrzebujesz nast臋puj膮cych plik贸w do stworzenia sk贸rki:
<itemizedlist>
<listitem><para>
  Plik konfiguracyjny o nazwie <link linkend="skin-file">skin</link> m贸wi
  <application>MPlayerowi</application> jak po艂膮czy膰 r贸偶ne cz臋艣ci sk贸rki
  w jedn膮 ca艂o艣膰 i co zrobi膰, gdy kliknie si臋 gdzie艣 na 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 stworzy膰
  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' - jej nazwa 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">skins</filename>.
Mo偶esz (ale nie musisz) okre艣li膰 rozszerzenia tego pliku. Je艣li plik taki nie
istnieje, <application>MPlayer</application>
spr贸buje wczyta膰 plik <filename>&lt;nazwa pliku&gt;.&lt;rozszerzenie&gt;</filename>,
gdzie <literal>png</literal> oraz <literal>PNG</literal> s膮 brane 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偶esz
umie艣ci膰 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>
<application>MPlayer</application> spr贸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>'...'<literal>end</literal>'
oraz '<literal>window = playbar</literal>' ... '<literal>end</literal>'.
</para>

<variablelist>
<varlistentry>
  <term><literal>
  <anchor id="skin-main-base"/>base = obrazek, X, Y
  </literal></term>
  <listitem><para>
  Mo偶esz okre艣li膰 obrazek t艂a, kt贸ry b臋dzie u偶ywany w oknie g艂贸wnym.
  Okno b臋dzie widoczne na ekranie na wsp贸艂rz臋dnych <literal>X, Y</literal>. 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 niemaj膮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>
Umie艣ci przycisk o rozmiarze <literal>szeroko艣膰</literal> *
<literal>wysoko艣膰</literal> na 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艂膮czona)
  </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 fragmenty <literal>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 czcionk臋. <literal>plik_czcionek</literal> jest nazw膮 pliku opisu
czcionki 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膮 czcionki wskazywanych przez
<literal>id_czcionki</literal>. Tekst jest po prostu zwyk艂ym 艂a艅cuchem znak贸w
(zmienne <literal>$x</literal> nie dzia艂aj膮), kt贸ru musi by膰 umieszczony
pomi臋dzy podw贸jnym cudzys艂owem (znak &quot; nie mo偶e by膰 cz臋艣ci膮 tekstu).
Etykieta wy艣wietlana jest za pomoc膮 czcionki, na kt贸r膮 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. Maksymaln膮
d艂ugo艣膰 etykiety okre艣la parametr <literal>d艂ugo艣膰</literal> (jej wysoko艣膰
okre艣la wysoko艣膰 czcionki). 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 (znak &quot; nie mo偶e by膰 cz臋艣ci膮
tekstu). Etykieta wy艣wietlana jest za pomoc膮 czcionki, na kt贸r膮 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膰 znaki gdziekolwiek na obrazku,
ale miej pewno艣膰, 偶eich pozycja i rozmiar jest dok艂adnie podana w pliku
opisuj膮cym.
</para>

<para>
Plik opisuj膮cy czcionk臋 (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 czcionk臋 (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>

<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 odtwarzania/pauzy.
  Oba sygna艂y powinny by膰 powi膮zane z przyciskami wy艣wietlonymi na tej samej
  pozycji w oknie. Sygna艂 ten wstrzymuje odtwarzanie i wy艣wietla  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>
Rozpocznij 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艣wietla obrazek 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>
Zatrzymaj odtwarzanie.
    </para></listitem>
</varlistentry>
</variablelist>

<variablelist>
<title>Przewijanie:</title>
<varlistentry>
  <term><emphasis role="bold">evBackward10sec</emphasis></term>
  <listitem><para>
Przewi艅 do ty艂u o 10 sekund.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evBackward1min</emphasis></term>
  <listitem><para>
Przewi艅 do ty艂u o 1 minut臋.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evBackward10min</emphasis></term>
  <listitem><para>
Przewi艅 do ty艂u o 10 minut.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evForward10sec</emphasis></term>
  <listitem><para>
Przewi艅 do przodu o 10 sekund.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evForward1min</emphasis></term>
  <listitem><para>
Przewi艅 do przodu o 1 minut臋.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evForward10min</emphasis></term>
  <listitem><para>
Przewi艅 do przodu o 10 minut..
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evSetMoviePosition</emphasis></term>
  <listitem><para>
Przewi艅 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">evHalfSize</emphasis></term>
  <listitem><para>
Ustawia okno filmu na po艂ow臋 rozmiaru.
    </para></listitem>
</varlistentry>
<varlistentry>
  <term><emphasis role="bold">evDoubleSize</emphasis></term>
  <listitem><para>
Ustaw podw贸jny rozmiar okna z filmem.
    </para></listitem>
</varlistentry>
<varlistentry>
  <term><emphasis role="bold">evFullScreen</emphasis></term>
  <listitem><para>
W艂膮cz/wy艂膮cz tryb pe艂noekranowy.
    </para></listitem>
</varlistentry>
<varlistentry>
  <term><emphasis role="bold">evNormalSize</emphasis></term>
  <listitem><para>
Ustaw 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>
Zmniejsz op贸藕nienie bufora d藕wi臋ku.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evDecBalance</emphasis></term>
  <listitem><para>
Zmniejsz balans.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evDecVolume</emphasis></term>
  <listitem><para>
Zmniejsz g艂o艣no艣膰
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evIncAudioBufDelay</emphasis></term>
  <listitem><para>
Zwi臋ksz op贸藕nienie bufora d藕wi臋ku.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evIncBalance</emphasis></term>
  <listitem><para>
Zwi臋ksz balans.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evIncVolume</emphasis></term>
  <listitem><para>
Zwi臋ksz g艂o艣no艣膰.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evMute</emphasis></term>
  <listitem><para>
Wycisz/przywr贸膰 d藕wi臋k.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evSetBalance</emphasis></term>
  <listitem><para>
Ustawi 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>
Ustaw 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>
Otw贸rz okno "o programie".
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evDropSubtitle</emphasis></term>
  <listitem><para>
Wy艂膮cz aktualnie u偶ywane napisy.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evEqualizer</emphasis></term>
  <listitem><para>
W艂膮cz/wy艂膮cz korektor.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evExit</emphasis></term>
  <listitem><para>
Wy艂膮cz program.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evIconify</emphasis></term>
  <listitem><para>
Minimalizuj okno.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evLoad</emphasis></term>
  <listitem><para>
Wczytaj 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>
Tto samo co <literal>evLoad</literal>, ale zacznij automatycznie odtwarza膰
zaraz po wyborze pliku.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evLoadSubtitle</emphasis></term>
  <listitem><para>
Wczytaj plik z napisami (z przegl膮darki plik贸w).
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evLoadAudioFile</emphasis></term>
  <listitem><para>
Wczytaj 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 Subversion:-)).
    </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>
Spr贸buj odczyta膰 p艂yt臋 ze wskazanego czytnika DVD.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evPlayVCD</emphasis></term>
  <listitem><para>
Spr贸buj odczyta膰 p艂yt臋 ze wskazanego czytnika CD.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evPreferences</emphasis></term>
  <listitem><para>
Otw贸rz okno z ustawieniami.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evSetAspect</emphasis></term>
  <listitem><para>
Ustaw proporcje obrazu.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evSetURL</emphasis></term>
  <listitem><para>
Wy艣wietl okienko dialogowe URL.
    </para></listitem>
</varlistentry>

<varlistentry>
  <term><emphasis role="bold">evSkinBrowser</emphasis></term>
  <listitem><para>
Otw贸rz okno przegl膮darki sk贸rek.
    </para></listitem>
</varlistentry>
</variablelist>

</sect1>

<sect1 id="skin-quality">
	<title>Tworzenie dobrych sk贸rek</title>
	
	<para>
		Wygl膮da na to, 偶e przeczyta艂e艣 o tworzeniu sk贸rek
		dla GUI <application>MPlayera</application>, da艂e艣 z siebie
		wszystko u偶ywaj膮c <application>Gimpa</application>
		i chcia艂by艣 umie艣ci膰 u nas swoj膮 sk贸rk臋?
		Zapoznaj si臋 z kilkoma wytycznymi, 偶eby unikn膮膰 najcz臋stszych pomy艂ek
		i stworzy膰 sk贸rk臋 wysokiej jako艣ci.
	</para>
	
	<para>
		Chcemy aby sk贸rki, kt贸re dodajemy do naszego repozytorium,
		spe艂nia艂y okre艣lone standardy jako艣ci. Istnieje r贸wnie偶 kilka rzeczy,
		kt贸re mo偶esz zrobi膰, 偶eby u艂atwi膰 sobie 偶ycie.
	</para>
	
	<para>
		Jako wzorzec mo偶esz wzi膮膰 sk贸rk臋 <systemitem>Blue</systemitem>,
		od wersji 1.5 spe艂nia one wszystkie wymienione ni偶ej kryteria.
	</para>
	
	<itemizedlist>
		<listitem><para>Do ka偶dej sk贸rki powinien by膰 do艂膮czony plik
				<filename>README</filename> zawieraj膮cy informacje
				o tobie, czyli autorze, prawach autorskich i licencji i wszystkie
				inne informacje, kt贸re zechcesz doda膰. Je偶eli chcesz prowadzi膰
				list臋 zmian, ten plik jest na to dobrym miejscem.</para></listitem>
		
		<listitem><para>Nale偶y doda膰 plik <filename>VERSION</filename>
				zawieraj膮cy tylko i wy艂膮cznie wersj臋 sk贸rki zapisan膮 w jednej linii (np. 1.0)
			</para></listitem>
		
		<listitem><para>Poziome i pionowe kontrolki (suwaki do zmiany g艂o艣no艣ci
				albo pozycji) powinny mie膰 ga艂ki prawid艂owo wycentrowane na 艣rodku
				suwaka. Powinno si臋 da膰 przesun膮膰 ga艂k臋 na oba ko艅ce suwaka, ale nie
				poza jego obszar.</para></listitem>
		
		<listitem><para>Elementy sk贸rki powinny mie膰 prawid艂owo zadeklarowane
				rozmiary w pliku sk贸rki. W przeciwnym wypadku mo偶liwe b臋dzie
				klikni臋cie poza obszarem np. przycisku i jego naci艣ni臋cia
				lub klikni臋cie wewn膮trz obszaru przycisku i nie naci艣ni臋cie go.
			</para></listitem>
		
		<listitem><para>Plik <filename>skin</filename> powinien by膰
				艂adnie sformatowany i nie powinien zawiera膰 tabulacji. 艁adnie
				sformatowany, czyli taki w kt贸rym numery s膮 艂adnie ustawione
				w kolumnach.</para></listitem>
	</itemizedlist>
	
</sect1>

</appendix>