Mercurial > mplayer.hg
annotate DOCS/xml/en/skin.xml @ 33929:ef9b6445fc55
Ensure we do not use 100% CPU when waiting for input with no file-based inputs.
author | reimar |
---|---|
date | Sat, 27 Aug 2011 09:58:54 +0000 |
parents | 89157330d7da |
children | 6fd8caca0f9c |
rev | line source |
---|---|
20535 | 1 <?xml version="1.0" encoding="utf-8"?> |
10913
49b1a67e7381
Add revision keyword to english xml files, to ease translation synchronization
lumag
parents:
10875
diff
changeset
|
2 <!-- $Revision$ --> |
9675 | 3 <appendix id="skin"> |
11540 | 4 <title><application>MPlayer</application> skin format</title> |
9675 | 5 |
6 <sect1 id="skin-overview"> | |
7 <title>Overview</title> | |
21521 | 8 |
9 <!-- ********** --> | |
10 | |
9675 | 11 <sect2 id="skin-overview-components"> |
12 <title>Skin components</title> | |
21521 | 13 |
9675 | 14 <para> |
11715 | 15 Skins are quite free-format (unlike the fixed-format skins of |
16 <application>Winamp</application>/<application>XMMS</application>, | |
9675 | 17 for example), so it is up to you to create something great. |
18 </para> | |
19 | |
20 <para> | |
12405 | 21 Currently there are four windows to be decorated: the |
9675 | 22 <link linkend="skin-file-main">main window</link>, the |
23 <link linkend="skin-file-subwindow">subwindow</link>, the | |
24 <link linkend="skin-file-main">playbar</link>, and the | |
32872 | 25 <link linkend="skin-file-menu">skin menu</link>. |
9675 | 26 |
27 <itemizedlist> | |
21521 | 28 <listitem> |
29 <para> | |
32872 | 30 The <emphasis role="bold">main window</emphasis> is where you can control |
31 <application>MPlayer</application>. The <emphasis role="bold">playbar</emphasis> | |
32 shows up in fullscreen mode when moving the mouse to the bottom of | |
33 the screen. The background of the windows is an image. | |
21521 | 34 Various items can (and must) be placed in the window: |
35 <emphasis>buttons</emphasis>, <emphasis>potmeters</emphasis> (sliders) and | |
36 <emphasis>labels</emphasis>. | |
11540 | 37 For every item, you must specify its position and size. |
21521 | 38 </para> |
29263
0f1b5b68af32
whitespace cosmetics: Remove all trailing whitespace.
diego
parents:
29243
diff
changeset
|
39 |
21521 | 40 <para> |
9675 | 41 A <emphasis role="bold">button</emphasis> has three states (pressed, released, |
42 disabled), thus its image must be divided into three parts vertically. See the | |
43 <link linkend="skin-button">button</link> item for details. | |
21521 | 44 </para> |
29263
0f1b5b68af32
whitespace cosmetics: Remove all trailing whitespace.
diego
parents:
29243
diff
changeset
|
45 |
21521 | 46 <para> |
9675 | 47 A <emphasis role="bold">potmeter</emphasis> (mainly used for the seek bar and |
48 volume/balance control) can have any number of phases by dividing its image | |
49 into different parts below each other. See | |
50 <link linkend="skin-hpotmeter">hpotmeter</link> and | |
51 <link linkend="skin-potmeter">potmeter</link> for details. | |
21521 | 52 </para> |
29263
0f1b5b68af32
whitespace cosmetics: Remove all trailing whitespace.
diego
parents:
29243
diff
changeset
|
53 |
21521 | 54 <para> |
9675 | 55 <emphasis role="bold">Labels</emphasis> are a bit special: The characters |
56 needed to draw them are taken from an image file, and the characters in the | |
21521 | 57 image are described by a |
58 <link linkend="skin-fonts">font description file</link>. | |
9675 | 59 The latter is a plain text file which specifies the x,y position and size of |
60 each character in the image (the image file and its font description file | |
21521 | 61 form a font <emphasis>together</emphasis>). |
62 See <link linkend="skin-dlabel">dlabel</link> | |
9675 | 63 and <link linkend="skin-slabel">slabel</link> for details. |
21521 | 64 </para> |
65 | |
66 <note><para> | |
67 All images can have full transparency as described in the section about | |
9675 | 68 <link linkend="skin-overview-formats">image formats</link>. If the X server |
69 doesn't support the XShape extension, the parts marked transparent will be | |
70 black. If you'd like to use this feature, the width of the main window's | |
71 background image must be dividable by 8. | |
21521 | 72 </para></note> |
9675 | 73 </listitem> |
74 | |
75 <listitem><para> | |
33896 | 76 The <emphasis role="bold">subwindow</emphasis> is where the video appears. It |
9675 | 77 can display a specified image if there is no movie loaded (it is quite boring |
21521 | 78 to have an empty window :-)) <emphasis role="bold">Note:</emphasis> |
79 transparency is <emphasis role="bold">not allowed</emphasis> here. | |
9675 | 80 </para></listitem> |
81 | |
21521 | 82 <listitem> |
83 <para> | |
11540 | 84 The <emphasis role="bold">skin menu</emphasis> is just a way to control |
32872 | 85 <application>MPlayer</application> by means of menu entries (which can be |
86 activated by a middle mouse button click). Two images | |
11540 | 87 are required for the menu: one of them is the base image that shows the |
88 menu in its normal state, the other one is used to display the selected | |
89 entries. When you pop up the menu, the first image is shown. If you move | |
90 the mouse over the menu entries, the currently selected entry is copied | |
91 from the second image over the menu entry below the mouse pointer | |
9675 | 92 (the second image is never shown as a whole). |
21521 | 93 </para> |
94 <para> | |
9675 | 95 A menu entry is defined by its position and size in the image (see the |
21521 | 96 section about the <link linkend="skin-file-menu">skin menu</link> for |
97 details). | |
98 </para> | |
99 </listitem> | |
9675 | 100 </itemizedlist> |
101 </para> | |
102 | |
103 <para> | |
21521 | 104 There is an important thing not mentioned yet: For buttons, potmeters and |
105 menu entries to work, <application>MPlayer</application> must know what to | |
106 do if they are clicked. This is done by <link linkend="skin-gui">messages</link> | |
107 (events). For these items you must define the messages to be generated when | |
108 they are clicked. | |
9675 | 109 </para> |
110 </sect2> | |
111 | |
29242
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
112 <sect2 id="skin-overview-formats"> |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
113 <title>Image formats</title> |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
114 |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
115 <para>Images must be truecolor (24 or 32 bpp) PNGs.</para> |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
116 <para> |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
117 In the main window and in the playbar (see below) you can use images with |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
118 `transparency': Regions filled with the color #FF00FF (magenta) are fully |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
119 transparent when viewed by <application>MPlayer</application>. This means |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
120 that you can even have shaped windows if your X server has the XShape extension. |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
121 </para> |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
122 </sect2> |
75dce2e34e81
Move image formats section to a more appropriate place.
diego
parents:
26958
diff
changeset
|
123 |
21521 | 124 <!-- ********** --> |
125 | |
9675 | 126 <sect2 id="skin-files"> |
127 <title>Files</title> | |
21521 | 128 |
9675 | 129 <para> |
130 You need the following files to build a skin: | |
131 <itemizedlist> | |
132 <listitem><para> | |
133 The configuration file named <link linkend="skin-file">skin</link> tells | |
11540 | 134 <application>MPlayer</application> how to put different parts of the skin |
135 together and what to do if you click somewhere in the window. | |
9675 | 136 </para></listitem> |
137 <listitem><para> | |
138 The background image for the main window. | |
139 </para></listitem> | |
140 <listitem><para> | |
141 Images for the items in the main window (including one or more font | |
142 description files needed to draw labels). | |
143 </para></listitem> | |
144 <listitem><para> | |
145 The image to be displayed in the subwindow (optional). | |
146 </para></listitem> | |
147 <listitem><para> | |
148 Two images for the skin menu (they are needed only if you want to create | |
149 a menu). | |
150 </para></listitem> | |
151 </itemizedlist> | |
152 With the exception of the skin configuration file, you can name the other | |
153 files whatever you want (but note that font description files must have | |
154 a <filename>.fnt</filename> extension). | |
155 </para> | |
156 </sect2> | |
157 </sect1> | |
12815 | 158 |
21521 | 159 |
160 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | |
161 | |
162 | |
9675 | 163 <sect1 id="skin-file"> |
164 <title>The skin file</title> | |
21521 | 165 |
9675 | 166 <para> |
167 As mentioned above, this is the skin configuration file. It is line oriented; | |
33068 | 168 comments start with a '<literal>;</literal>' character and continue until |
33080 | 169 the end of the line, or start with a '<literal>#</literal>' character at the |
170 beginning of the line (in that case only spaces and tabs are allowed before the | |
171 '<literal>#</literal>'). | |
9675 | 172 </para> |
173 | |
174 <para> | |
175 The file is made up of sections. Each section describes the skin for an | |
176 application and has the following form: | |
177 <programlisting> | |
178 section = <replaceable>section name</replaceable> | |
179 . | |
180 . | |
181 . | |
182 end | |
183 </programlisting> | |
184 </para> | |
185 | |
186 <para> | |
21521 | 187 Currently there is only one application, so you need only one section: its name |
188 is <emphasis role="bold">movieplayer</emphasis>. | |
10111 | 189 </para> |
190 | |
191 <para> | |
192 Within this section each window is described by a block of the following form: | |
193 <programlisting> | |
194 window = <replaceable>window name</replaceable> | |
195 . | |
196 . | |
197 . | |
198 end | |
199 </programlisting> | |
200 </para> | |
201 | |
202 <para> | |
9675 | 203 where <replaceable>window name</replaceable> can be one of these strings: |
204 <itemizedlist> | |
21521 | 205 <listitem><para> |
206 <emphasis role="bold">main</emphasis> - for the main window | |
207 </para></listitem> | |
208 <listitem><para> | |
209 <emphasis role="bold">sub</emphasis> - for the subwindow | |
210 </para></listitem> | |
211 <listitem><para> | |
32872 | 212 <emphasis role="bold">playbar</emphasis> - for the playbar |
21521 | 213 </para></listitem> |
214 <listitem><para> | |
32872 | 215 <emphasis role="bold">menu</emphasis> - for the skin menu |
21521 | 216 </para></listitem> |
9675 | 217 </itemizedlist> |
218 </para> | |
219 | |
220 <para> | |
32872 | 221 (The sub, playbar and menu blocks are optional - you do not need to decorate |
222 the subwindow, have a playbar or create a menu. A default menu is always | |
223 available by a right mouse button click.) | |
9675 | 224 </para> |
225 | |
226 <para> | |
227 Within a window block, you can define each item for the window by a line in | |
228 this form: | |
229 <programlisting>item = parameter</programlisting> | |
230 Where <literal>item</literal> is a string that identifies the type of the GUI | |
231 item, <literal>parameter</literal> is a numeric or textual value (or a list of | |
232 values separated by commas). | |
233 </para> | |
234 | |
235 <para> | |
236 Putting the above together, the whole file looks something like this: | |
237 <programlisting> | |
238 section = movieplayer | |
239 window = main | |
240 ; ... items for main window ... | |
241 end | |
242 | |
243 window = sub | |
244 ; ... items for subwindow ... | |
245 end | |
12815 | 246 |
9675 | 247 window = menu |
248 ; ... items for menu ... | |
249 end | |
250 | |
251 window = playbar | |
252 ; ... items for playbar ... | |
253 end | |
254 end | |
255 </programlisting> | |
256 </para> | |
257 | |
258 <para> | |
259 The name of an image file must be given without leading directories - images | |
17974
9a5a62f480e6
Rename the default GUI skins directory from 'Skin' to 'skins', keeping
diego
parents:
17276
diff
changeset
|
260 are searched for in the <filename class="directory">skins</filename> directory. |
9675 | 261 You may (but you need not) specify the extension of the file. If the file does |
11540 | 262 not exist, <application>MPlayer</application> tries to load the file |
9675 | 263 <filename><filename>.<ext></filename>, where <literal>png</literal> |
264 and <literal>PNG</literal> are tried for <filename><ext></filename> | |
265 (in this order). The first matching file will be used. | |
266 </para> | |
267 | |
268 <para> | |
21521 | 269 Finally some words about positioning. The main window and the subwindow can be |
270 placed in the different corners of the screen by giving <literal>X</literal> | |
271 and <literal>Y</literal> coordinates. <literal>0</literal> is top or left, | |
9675 | 272 <literal>-1</literal> is center and <literal>-2</literal> is right or bottom, as |
273 shown in this illustration: | |
274 <informalfigure> | |
275 <screen> | |
276 (0, 0)----(-1, 0)----(-2, 0) | |
277 | | | | |
278 | | | | |
279 (0,-1)----(-1,-1)----(-2,-1) | |
280 | | | | |
281 | | | | |
282 (0,-2)----(-1,-2)----(-2,-2) | |
283 </screen> | |
284 </informalfigure> | |
285 </para> | |
286 | |
33174 | 287 <para> |
288 Here is an example to make this clear. Suppose that you have an image called | |
289 <filename>main.png</filename> that you use for the main window: | |
290 <programlisting>base = main, -1, -1</programlisting> | |
291 <application>MPlayer</application> tries to load <filename>main</filename>, | |
292 <filename>main.png</filename>, <filename>main.PNG</filename> files and centers it. | |
293 </para> | |
294 | |
21521 | 295 <!-- ********** --> |
9675 | 296 |
297 <sect2 id="skin-file-main"> | |
298 <title>Main window and playbar</title> | |
21521 | 299 |
9675 | 300 <para> |
301 Below is the list of entries that can be used in the | |
11444
d6ef9000aed5
removed for added consistency, we do not use them anywhere else.
diego
parents:
10913
diff
changeset
|
302 '<literal>window = main</literal>' ... '<literal>end</literal>', |
d6ef9000aed5
removed for added consistency, we do not use them anywhere else.
diego
parents:
10913
diff
changeset
|
303 and the '<literal>window = playbar</literal>' ... '<literal>end</literal>' |
9675 | 304 blocks. |
305 </para> | |
306 | |
307 <variablelist> | |
308 <varlistentry> | |
309 <term><literal> | |
310 <anchor id="skin-main-base"/>base = image, X, Y | |
311 </literal></term> | |
21521 | 312 <listitem> |
313 <para> | |
314 Lets you specify the background image to be used for the main window. | |
315 The window will appear at the given <literal>X,Y</literal> position on | |
33210 | 316 the screen. It will have the size of the image. |
21521 | 317 </para> |
318 <warning><para>Transparent regions in the image (colored #FF00FF) appear black | |
319 on X servers without the XShape extension. The image's width must be dividable | |
320 by 8.</para></warning> | |
321 </listitem> | |
9675 | 322 </varlistentry> |
323 | |
324 <varlistentry> | |
325 <term><literal> | |
326 <anchor id="skin-button"/>button = image, X, Y, width, height, message | |
327 </literal></term> | |
21521 | 328 <listitem> |
329 <para> | |
330 Place a button of <literal>width</literal> * <literal>height</literal> size at | |
331 position <literal>X,Y</literal>. The specified <literal>message</literal> is | |
332 generated when the button is clicked. The image given by | |
333 <literal>image</literal> must have three parts below each other (according to | |
334 the possible states of the button), like this: | |
335 </para> | |
336 <informalfigure> | |
337 <screen> | |
9675 | 338 +------------+ |
339 | pressed | | |
340 +------------+ | |
341 | released | | |
342 +------------+ | |
343 | disabled | | |
21521 | 344 +------------+<!-- |
345 --></screen> | |
346 </informalfigure> | |
9675 | 347 </listitem> |
348 </varlistentry> | |
349 | |
350 <varlistentry> | |
351 <term><literal> | |
352 <anchor id="skin-decoration"/>decoration = enable|disable | |
353 </literal></term> | |
21521 | 354 <listitem> |
355 <para> | |
356 Enable or disable window manager decoration of the main window. Default is | |
357 <emphasis role="bold">disable</emphasis>. | |
358 </para> | |
359 <note><para> | |
33176 | 360 This isn't available for the playbar. |
21521 | 361 </para></note> |
9675 | 362 </listitem> |
363 </varlistentry> | |
364 | |
365 <varlistentry> | |
366 <term><literal> | |
367 <anchor id="skin-hpotmeter"/>hpotmeter = button, bwidth, bheight, phases, numphases, default, X, Y, width, height, message | |
368 </literal></term> | |
369 <listitem><para> | |
21521 | 370 </para></listitem> |
9675 | 371 </varlistentry> |
372 | |
373 <varlistentry> | |
374 <term><literal> | |
375 <anchor id="skin-vpotmeter"/>vpotmeter = button, bwidth, bheight, phases, numphases, default, X, Y, width, height, message | |
376 </literal></term> | |
377 <listitem><para> | |
21521 | 378 Place a horizontal (hpotmeter) or vertical (vpotmeter) potmeter of |
379 <literal>width</literal> * <literal>height</literal> size at position | |
380 <literal>X,Y</literal>. The image can be divided into different parts for the | |
381 different phases of the potmeter (for example, you can have a pot for volume | |
382 control that turns from green to red while its value changes from the minimum | |
383 to the maximum.). <literal>hpotmeter</literal> can have a button that can be | |
384 dragged horizontally. The parameters are: | |
385 <itemizedlist> | |
386 <listitem><para> | |
387 <literal>button</literal> - the image to be used for the | |
9675 | 388 button (must have three parts below each other, like in case of |
389 <link linkend="skin-button">button</link>) | |
21521 | 390 </para></listitem> |
391 <listitem><para> | |
392 <literal>bwidth</literal>, <literal>bheight</literal> - size | |
9675 | 393 of the button |
21521 | 394 </para></listitem> |
395 <listitem><para> | |
396 <literal>phases</literal> - the image to be used for the | |
397 different phases of the hpotmeter. A special value of <literal>NULL</literal> | |
398 can be used if you want no such image. The image must be divided into | |
399 <literal>numphases</literal> parts vertically like this: | |
400 <informalfigure><screen> | |
9675 | 401 +------------+ |
402 | phase #1 | | |
403 +------------+ | |
404 | phase #2 | | |
405 +------------+ | |
406 ... | |
407 +------------+ | |
408 | phase #n | | |
21521 | 409 +------------+<!-- |
410 --></screen></informalfigure> | |
411 </para></listitem> | |
412 <listitem><para> | |
413 <literal>numphases</literal> - number of phases stored in the | |
9675 | 414 <literal>phases</literal> image |
21521 | 415 </para></listitem> |
416 <listitem><para> | |
417 <literal>default</literal> - default value for hpotmeter | |
9675 | 418 (in the range <literal>0</literal> to <literal>100</literal>) |
21521 | 419 </para></listitem> |
420 <listitem><para> | |
421 <literal>X</literal>, <literal>Y</literal> - position for the hpotmeter | |
422 </para></listitem> | |
423 <listitem><para> | |
424 <literal>width</literal>, <literal>height</literal> - width and height | |
9675 | 425 of the <literal>hpotmeter</literal> |
21521 | 426 </para></listitem> |
427 <listitem><para> | |
428 <literal>message</literal> - the message to be generated when the | |
9675 | 429 value of <literal>hpotmeter</literal> is changed |
21521 | 430 </para></listitem> |
431 </itemizedlist> | |
432 </para></listitem> | |
9675 | 433 </varlistentry> |
434 | |
435 <varlistentry> | |
436 <term><literal> | |
437 <anchor id="skin-potmeter"/>potmeter = phases, numphases, default, X, Y, width, height, message | |
438 </literal></term> | |
439 <listitem><para> | |
21521 | 440 A <literal>hpotmeter</literal> without a button. (I guess it is meant to be |
441 turned around, but it reacts to horizontal dragging only.) For the description | |
442 of the parameters see <link linkend="skin-hpotmeter">hpotmeter</link>. | |
443 <literal>phases</literal> can be <literal>NULL</literal>, but it is quite | |
444 useless, since you cannot see where the <literal>potmeter</literal> is set. | |
445 </para></listitem> | |
9675 | 446 </varlistentry> |
447 | |
448 <varlistentry> | |
449 <term><literal> | |
32740 | 450 <anchor id="skin-font"/>font = fontfile |
9675 | 451 </literal></term> |
452 <listitem><para> | |
21521 | 453 Defines a font. <literal>fontfile</literal> is the name of a font description |
454 file with a <filename>.fnt</filename> extension (do not specify the extension | |
32740 | 455 here) and is used to refer to the font |
21521 | 456 (see <link linkend="skin-dlabel">dlabel</link> |
457 and <link linkend="skin-slabel">slabel</link>). Up to 25 fonts can be defined. | |
458 </para></listitem> | |
9675 | 459 </varlistentry> |
460 | |
461 <varlistentry> | |
462 <term><literal> | |
32740 | 463 <anchor id="skin-slabel"/>slabel = X, Y, fontfile, "text" |
9675 | 464 </literal></term> |
465 <listitem><para> | |
21521 | 466 Place a static label at the position <literal>X,Y</literal>. |
467 <literal>text</literal> is displayed using the font identified by | |
32740 | 468 <literal>fontfile</literal>. The text is just a raw string |
21521 | 469 (<literal>$x</literal> variables do not work) that must be enclosed between |
21596 | 470 double quotes (but the " character cannot be part of the text). The |
32740 | 471 label is displayed using the font identified by <literal>fontfile</literal>. |
21521 | 472 </para></listitem> |
9675 | 473 </varlistentry> |
474 | |
475 <varlistentry> | |
476 <term><literal> | |
32910 | 477 <anchor id="skin-dlabel"/>dlabel = X, Y, width, align, fontfile, "text" |
9675 | 478 </literal></term> |
479 <listitem> | |
21521 | 480 <para> |
481 Place a dynamic label at the position <literal>X,Y</literal>. The label is | |
32910 | 482 called dynamic because its text is refreshed periodically. The maximum width |
483 of the label is given by <literal>width</literal> (its height is the height | |
21521 | 484 of a character). If the text to be displayed is wider than that, it will be |
485 scrolled, | |
486 otherwise it is aligned within the specified space by the value of the | |
487 <literal>align</literal> parameter: <literal>0</literal> is for right, | |
488 <literal>1</literal> is for center, <literal>2</literal> is for left. | |
489 </para> | |
490 <para> | |
491 The text to be displayed is given by <literal>text</literal>: It must be | |
21596 | 492 written between double quotes (but the " character cannot be part of the |
21521 | 493 text). The label is displayed using the font identified by |
32740 | 494 <literal>fontfile</literal>. You can use the following variables in the text: |
21521 | 495 </para> |
9675 | 496 |
21521 | 497 <informaltable> |
498 <tgroup cols="2"> | |
499 <thead> | |
30990 | 500 <row><entry>Variable</entry><entry>Meaning</entry></row> |
21521 | 501 </thead> |
502 <tbody> | |
503 <row> | |
504 <entry>$1</entry> | |
33896 | 505 <entry>elapsed time in <emphasis>hh:mm:ss</emphasis> format</entry> |
21521 | 506 </row> |
507 <row> | |
30990 | 508 <entry>$2</entry> |
33896 | 509 <entry>elapsed time in <emphasis>mmmm:ss</emphasis> format</entry> |
21521 | 510 </row> |
511 <row> | |
30990 | 512 <entry>$3</entry> |
33896 | 513 <entry>elapsed time in <emphasis>hh</emphasis> format (hours)</entry> |
21521 | 514 </row> |
515 <row> | |
30990 | 516 <entry>$4</entry> |
33896 | 517 <entry>elapsed time in <emphasis>mm</emphasis> format (minutes)</entry> |
21521 | 518 </row> |
519 <row> | |
30990 | 520 <entry>$5</entry> |
33896 | 521 <entry>elapsed time in <emphasis>ss</emphasis> format (seconds)</entry> |
21521 | 522 </row> |
523 <row> | |
30990 | 524 <entry>$6</entry> |
33896 | 525 <entry>running time in <emphasis>hh:mm:ss</emphasis> format</entry> |
21521 | 526 </row> |
527 <row> | |
30990 | 528 <entry>$7</entry> |
33896 | 529 <entry>running time in <emphasis>mmmm:ss</emphasis> format</entry> |
21521 | 530 </row> |
531 <row> | |
30990 | 532 <entry>$8</entry> |
33896 | 533 <entry>elapsed time in <emphasis>h:mm:ss</emphasis> format</entry> |
21521 | 534 </row> |
535 <row> | |
30990 | 536 <entry>$v</entry> |
537 <entry>volume in <emphasis>xxx.xx</emphasis>% format</entry> | |
21521 | 538 </row> |
539 <row> | |
30990 | 540 <entry>$V</entry> |
541 <entry>volume in <emphasis>xxx.xx</emphasis> format</entry> | |
21521 | 542 </row> |
543 <row> | |
30990 | 544 <entry>$b</entry> |
545 <entry>balance in <emphasis>xxx.xx</emphasis>% format</entry> | |
21521 | 546 </row> |
547 <row> | |
30990 | 548 <entry>$B</entry> |
549 <entry>balance in <emphasis>xxx.xx</emphasis> format</entry> | |
21521 | 550 </row> |
551 <row> | |
30990 | 552 <entry>$$</entry> |
553 <entry>the $ character</entry> | |
21521 | 554 </row> |
555 <row> | |
30990 | 556 <entry>$a</entry> |
33177 | 557 <entry>a character according to the audio type (none: <keycap>n</keycap>, |
558 mono: <keycap>m</keycap>, stereo: <keycap>t</keycap>)</entry> | |
21521 | 559 </row> |
560 <row> | |
30990 | 561 <entry>$t</entry> |
33896 | 562 <entry>track number (DVD, VCD or playlist)</entry> |
21521 | 563 </row> |
564 <row> | |
30990 | 565 <entry>$o</entry> |
566 <entry>filename</entry> | |
21521 | 567 </row> |
568 <row> | |
30990 | 569 <entry>$f</entry> |
570 <entry>filename in lower case</entry> | |
21521 | 571 </row> |
572 <row> | |
30990 | 573 <entry>$F</entry> |
574 <entry>filename in upper case</entry> | |
21521 | 575 </row> |
576 <row> | |
30990 | 577 <entry>$T</entry> |
578 <entry> | |
33177 | 579 a character according to the stream type (file: <keycap>f</keycap>, |
580 Video CD: <keycap>v</keycap>, DVD: <keycap>d</keycap>, | |
581 URL: <keycap>u</keycap>) | |
30990 | 582 </entry> |
21521 | 583 </row> |
584 <row> | |
33616 | 585 <entry>$p</entry> |
33177 | 586 <entry>the <keycap>p</keycap> character (if a movie is playing)</entry> |
21521 | 587 </row> |
588 <row> | |
589 <entry>$s</entry> | |
33177 | 590 <entry>the <keycap>s</keycap> character (if the movie is stopped)</entry> |
21521 | 591 </row> |
592 <row> | |
593 <entry>$e</entry> | |
33177 | 594 <entry>the <keycap>e</keycap> character (if playback is paused)</entry> |
21521 | 595 </row> |
596 <row> | |
597 <entry>$x</entry> | |
33896 | 598 <entry>video width</entry> |
21521 | 599 </row> |
600 <row> | |
601 <entry>$y</entry> | |
33896 | 602 <entry>video height</entry> |
21521 | 603 </row> |
604 <row> | |
605 <entry>$C</entry> | |
606 <entry>name of the codec used</entry> | |
607 </row> | |
608 </tbody> | |
609 </tgroup> | |
610 </informaltable> | |
9675 | 611 |
21521 | 612 <note><para> |
33616 | 613 The <literal>$a, $T, $p, $s</literal> and <literal>$e</literal> |
21521 | 614 variables all return characters that should be displayed as special symbols |
615 (for example, <keycap>e</keycap> is for the pause symbol that usually looks | |
616 something like ||). You should have a font for normal characters and | |
617 a different font for symbols. See the section about | |
618 <link linkend="skin-fonts-symbols">symbols</link> for more information. | |
619 </para></note> | |
620 </listitem> | |
9675 | 621 </varlistentry> |
622 </variablelist> | |
21521 | 623 </sect2> |
9675 | 624 |
21521 | 625 <!-- ********** --> |
9675 | 626 |
627 <sect2 id="skin-file-subwindow"> | |
628 <title>Subwindow</title> | |
21521 | 629 |
9675 | 630 <para> |
631 The following entries can be used in the | |
632 '<literal>window = sub</literal>' . . . '<literal>end</literal>' block. | |
633 </para> | |
634 | |
635 <variablelist> | |
636 <varlistentry> | |
637 <term><literal> | |
638 <anchor id="skin-sub-base"/>base = image, X, Y, width, height | |
639 </literal></term> | |
640 <listitem><para> | |
33175 | 641 The image to be displayed in the window. The window will be as large as the image. |
21521 | 642 <literal>width</literal> and <literal>height</literal> |
643 denote the size of the window; they are optional (if they are missing, the | |
644 window is the same size as the image). | |
33218
f0c2a62e3e89
Position windows initially at coordinates given in skin file.
ib
parents:
33210
diff
changeset
|
645 </para></listitem> |
9675 | 646 </varlistentry> |
647 | |
648 <varlistentry> | |
649 <term><literal> | |
650 <anchor id="skin-background"/>background = R, G, B | |
651 </literal></term> | |
652 <listitem><para> | |
21521 | 653 Lets you set the background color. It is useful if the image is smaller than |
654 the window. <literal>R</literal>, <literal>G</literal> and | |
655 <literal>B</literal> specifies the red, green and blue component of the color | |
656 (each of them is a decimal number from 0 to 255). | |
657 </para></listitem> | |
9675 | 658 </varlistentry> |
659 </variablelist> | |
660 </sect2> | |
661 | |
21521 | 662 <!-- ********** --> |
663 | |
9675 | 664 <sect2 id="skin-file-menu"> |
665 <title>Skin menu</title> | |
21521 | 666 |
9675 | 667 <para> |
668 As mentioned earlier, the menu is displayed using two images. Normal menu | |
669 entries are taken from the image specified by the <literal>base</literal> item, | |
670 while the currently selected entry is taken from the image specified by the | |
671 <literal>selected</literal> item. You must define the position and size of each | |
672 menu entry through the menu item. | |
673 </para> | |
674 | |
675 <para> | |
676 The following entries can be used in the | |
677 '<literal>window = menu</literal>'. . .'<literal>end</literal>' block. | |
678 </para> | |
679 | |
680 <variablelist> | |
681 <varlistentry> | |
682 <term><literal> | |
683 <anchor id="skin-menu-base"/>base = image | |
684 </literal></term> | |
685 <listitem><para> | |
21521 | 686 The image for normal menu entries. |
687 </para></listitem> | |
9675 | 688 </varlistentry> |
689 | |
690 <varlistentry> | |
691 <term><literal> | |
692 <anchor id="skin-selected"/>selected = image | |
693 </literal></term> | |
694 <listitem><para> | |
21521 | 695 The image showing the menu with all entries selected. |
696 </para></listitem> | |
9675 | 697 </varlistentry> |
698 | |
699 <varlistentry> | |
700 <term><literal> | |
701 <anchor id="skin-menu"/>menu = X, Y, width, height, message | |
702 </literal></term> | |
703 <listitem><para> | |
21521 | 704 Defines the <literal>X,Y</literal> position and the size of a menu entry in |
705 the image. <literal>message</literal> is the message to be generated when the | |
706 mouse button is released over the entry. | |
707 </para></listitem> | |
9675 | 708 </varlistentry> |
709 </variablelist> | |
710 </sect2> | |
711 </sect1> | |
712 | |
21521 | 713 |
714 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | |
715 | |
716 | |
9675 | 717 <sect1 id="skin-fonts"> |
718 <title>Fonts</title> | |
719 <para> | |
720 As mentioned in the section about the parts of a skin, a font is defined by an | |
21521 | 721 image and a description file. You can place the characters anywhere in the |
722 image, but make sure that their position and size is given in the description | |
723 file exactly. | |
9675 | 724 </para> |
725 | |
726 <para> | |
727 The font description file (with <filename>.fnt</filename> extension) can have | |
33080 | 728 comments like the skin configuration file starting with '<literal>;</literal>' |
729 (or '<literal>#</literal>', but only at the beginning of the line). The file must have a line | |
9675 | 730 in the form |
731 <anchor id="skin-font-image"/> | |
732 <programlisting>image = <replaceable>image</replaceable></programlisting> | |
733 Where <literal><replaceable>image</replaceable></literal> is the name of the | |
734 image file to be used for the font (you do not have to specify the extension). | |
735 <anchor id="skin-font-char"/> | |
21596 | 736 <programlisting>"char" = X, Y, width, height</programlisting> |
9675 | 737 Here <literal>X</literal> and <literal>Y</literal> specify the position of the |
738 <literal>char</literal> character in the image (<literal>0,0</literal> is the | |
739 upper left corner). <literal>width</literal> and <literal>height</literal> are | |
33864
1b795ff832d6
Clarify the encoding to be used in the font description file.
ib
parents:
33616
diff
changeset
|
740 the dimensions of the character in pixels. The character <literal>char</literal> |
1b795ff832d6
Clarify the encoding to be used in the font description file.
ib
parents:
33616
diff
changeset
|
741 shall be in UTF-8 encoding. |
9675 | 742 </para> |
743 | |
744 <para> | |
745 This example defines the A, B, C characters using <filename>font.png</filename>. | |
746 <programlisting> | |
21596 | 747 ; Can be "font" instead of "font.png". |
9675 | 748 image = font.png |
749 | |
750 ; Three characters are enough for demonstration purposes :-) | |
21596 | 751 "A" = 0,0, 7,13 |
752 "B" = 7,0, 7,13 | |
753 "C" = 14,0, 7,13 | |
9675 | 754 </programlisting> |
755 </para> | |
756 | |
21521 | 757 <!-- ********** --> |
758 | |
9675 | 759 <sect2 id="skin-fonts-symbols"> |
760 <title>Symbols</title> | |
21521 | 761 |
9675 | 762 <para> |
763 Some characters have special meanings when returned by some of the variables | |
764 used in <link linkend="skin-dlabel">dlabel</link>. These characters are meant | |
765 to be shown as symbols so that things like a nice DVD logo can be displayed | |
766 instead of the character '<literal>d</literal>' for a DVD stream. | |
767 </para> | |
21521 | 768 |
9675 | 769 <para> |
770 The following table lists all the characters that can be used to display | |
771 symbols (and thus require a different font). | |
772 </para> | |
773 | |
774 <informaltable> | |
775 <tgroup cols="2"> | |
776 <thead> | |
777 <row><entry>Character</entry><entry>Symbol</entry></row> | |
778 </thead> | |
779 <tbody> | |
33177 | 780 <row><entry><keycap>l</keycap></entry><entry>play</entry></row> |
21521 | 781 <row><entry><keycap>s</keycap></entry><entry>stop</entry></row> |
782 <row><entry><keycap>e</keycap></entry><entry>pause</entry></row> | |
783 <row><entry><keycap>n</keycap></entry><entry>no sound</entry></row> | |
784 <row><entry><keycap>m</keycap></entry><entry>mono sound</entry></row> | |
785 <row><entry><keycap>t</keycap></entry><entry>stereo sound</entry></row> | |
786 <row><entry><keycap>f</keycap></entry><entry>stream is a file</entry></row> | |
787 <row><entry><keycap>v</keycap></entry><entry>stream is a Video CD</entry></row> | |
788 <row><entry><keycap>d</keycap></entry><entry>stream is a DVD</entry></row> | |
789 <row><entry><keycap>u</keycap></entry><entry>stream is a URL</entry></row> | |
9675 | 790 </tbody> |
791 </tgroup> | |
792 </informaltable> | |
793 </sect2> | |
794 </sect1> | |
795 | |
21521 | 796 |
797 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | |
798 | |
799 | |
9675 | 800 <sect1 id="skin-gui"> |
801 <title>GUI messages</title> | |
21521 | 802 |
9675 | 803 <para> |
804 These are the messages that can be generated by buttons, potmeters and | |
805 menu entries. | |
806 </para> | |
807 | |
808 <variablelist> | |
809 <title>Playback control:</title> | |
810 <varlistentry> | |
811 <term><emphasis role="bold">evNext</emphasis></term> | |
812 <listitem><para> | |
21521 | 813 Jump to next track in the playlist. |
814 </para></listitem> | |
9675 | 815 </varlistentry> |
816 | |
817 <varlistentry> | |
818 <term><emphasis role="bold">evPause</emphasis></term> | |
819 <listitem><para> | |
21521 | 820 Forms a switch together with <literal>evPlaySwitchToPause</literal>. They can |
821 be used to have a common play/pause button. Both messages should be assigned | |
822 to buttons displayed at the very same position in the window. This message | |
823 pauses playing and the image for the <literal>evPlaySwitchToPause</literal> | |
824 button is displayed (to indicate that the button can be pressed to continue | |
825 playing). | |
826 </para></listitem> | |
9675 | 827 </varlistentry> |
828 | |
829 <varlistentry> | |
830 <term><emphasis role="bold">evPlay</emphasis></term> | |
831 <listitem><para> | |
21521 | 832 Start playing. |
833 </para></listitem> | |
9675 | 834 </varlistentry> |
835 | |
836 <varlistentry> | |
837 <term><emphasis role="bold">evPlaySwitchToPause</emphasis></term> | |
838 <listitem><para> | |
21521 | 839 The opposite of <literal>evPauseSwitchToPlay</literal>. This message starts |
840 playing and the image for the <literal>evPauseSwitchToPlay</literal> button | |
841 is displayed (to indicate that the button can be pressed to pause playing). | |
842 </para></listitem> | |
9675 | 843 </varlistentry> |
844 | |
845 <varlistentry> | |
846 <term><emphasis role="bold">evPrev</emphasis></term> | |
847 <listitem><para> | |
21521 | 848 Jump to previous track in the playlist. |
849 </para></listitem> | |
9675 | 850 </varlistentry> |
851 | |
852 <varlistentry> | |
853 <term><emphasis role="bold">evStop</emphasis></term> | |
854 <listitem><para> | |
21521 | 855 Stop playing. |
856 </para></listitem> | |
9675 | 857 </varlistentry> |
858 </variablelist> | |
859 | |
860 <variablelist> | |
861 <title>Seeking:</title> | |
862 <varlistentry> | |
863 <term><emphasis role="bold">evBackward10sec</emphasis></term> | |
864 <listitem><para> | |
21521 | 865 Seek backward 10 seconds. |
866 </para></listitem> | |
9675 | 867 </varlistentry> |
868 | |
869 <varlistentry> | |
870 <term><emphasis role="bold">evBackward1min</emphasis></term> | |
871 <listitem><para> | |
21521 | 872 Seek backward 1 minute. |
873 </para></listitem> | |
9675 | 874 </varlistentry> |
875 | |
876 <varlistentry> | |
877 <term><emphasis role="bold">evBackward10min</emphasis></term> | |
878 <listitem><para> | |
21521 | 879 Seek backward 10 minutes. |
880 </para></listitem> | |
9675 | 881 </varlistentry> |
882 | |
883 <varlistentry> | |
884 <term><emphasis role="bold">evForward10sec</emphasis></term> | |
885 <listitem><para> | |
21521 | 886 Seek forward 10 seconds. |
887 </para></listitem> | |
9675 | 888 </varlistentry> |
889 | |
890 <varlistentry> | |
891 <term><emphasis role="bold">evForward1min</emphasis></term> | |
892 <listitem><para> | |
21521 | 893 Seek forward 1 minute. |
894 </para></listitem> | |
9675 | 895 </varlistentry> |
896 | |
897 <varlistentry> | |
898 <term><emphasis role="bold">evForward10min</emphasis></term> | |
899 <listitem><para> | |
21521 | 900 Seek forward 10 minutes. |
901 </para></listitem> | |
9675 | 902 </varlistentry> |
903 | |
904 <varlistentry> | |
905 <term><emphasis role="bold">evSetMoviePosition</emphasis></term> | |
906 <listitem><para> | |
21521 | 907 Seek to position (can be used by a potmeter; the |
908 relative value (0-100%) of the potmeter is used). | |
909 </para></listitem> | |
9675 | 910 </varlistentry> |
911 </variablelist> | |
912 | |
913 <variablelist> | |
914 <title>Video control:</title> | |
915 <varlistentry> | |
14589 | 916 <term><emphasis role="bold">evHalfSize</emphasis></term> |
917 <listitem><para> | |
33896 | 918 Set the video window to half size. |
21521 | 919 </para></listitem> |
14589 | 920 </varlistentry> |
921 <varlistentry> | |
9675 | 922 <term><emphasis role="bold">evDoubleSize</emphasis></term> |
923 <listitem><para> | |
33896 | 924 Set the video window to double size. |
21521 | 925 </para></listitem> |
9675 | 926 </varlistentry> |
927 <varlistentry> | |
928 <term><emphasis role="bold">evFullScreen</emphasis></term> | |
929 <listitem><para> | |
21521 | 930 Switch fullscreen mode on/off. |
931 </para></listitem> | |
9675 | 932 </varlistentry> |
933 <varlistentry> | |
934 <term><emphasis role="bold">evNormalSize</emphasis></term> | |
935 <listitem><para> | |
33896 | 936 Set the video window to its normal size. |
21521 | 937 </para></listitem> |
9675 | 938 </varlistentry> |
939 </variablelist> | |
940 | |
941 <variablelist> | |
942 <title>Audio control:</title> | |
943 <varlistentry> | |
944 <term><emphasis role="bold">evDecAudioBufDelay</emphasis></term> | |
945 <listitem><para> | |
21521 | 946 Decrease audio buffer delay. |
947 </para></listitem> | |
9675 | 948 </varlistentry> |
949 | |
950 <varlistentry> | |
951 <term><emphasis role="bold">evDecBalance</emphasis></term> | |
952 <listitem><para> | |
21521 | 953 Decrease balance. |
954 </para></listitem> | |
9675 | 955 </varlistentry> |
956 | |
957 <varlistentry> | |
958 <term><emphasis role="bold">evDecVolume</emphasis></term> | |
959 <listitem><para> | |
21521 | 960 Decrease volume. |
961 </para></listitem> | |
9675 | 962 </varlistentry> |
963 | |
964 <varlistentry> | |
965 <term><emphasis role="bold">evIncAudioBufDelay</emphasis></term> | |
966 <listitem><para> | |
21521 | 967 Increase audio buffer delay. |
968 </para></listitem> | |
9675 | 969 </varlistentry> |
970 | |
971 <varlistentry> | |
972 <term><emphasis role="bold">evIncBalance</emphasis></term> | |
973 <listitem><para> | |
21521 | 974 Increase balance. |
975 </para></listitem> | |
9675 | 976 </varlistentry> |
977 | |
978 <varlistentry> | |
979 <term><emphasis role="bold">evIncVolume</emphasis></term> | |
980 <listitem><para> | |
21521 | 981 Increase volume. |
982 </para></listitem> | |
9675 | 983 </varlistentry> |
984 | |
985 <varlistentry> | |
986 <term><emphasis role="bold">evMute</emphasis></term> | |
987 <listitem><para> | |
21521 | 988 Mute/unmute the sound. |
989 </para></listitem> | |
9675 | 990 </varlistentry> |
991 | |
992 <varlistentry> | |
993 <term><emphasis role="bold">evSetBalance</emphasis></term> | |
994 <listitem><para> | |
21521 | 995 Set balance (can be used by a potmeter; the |
996 relative value (0-100%) of the potmeter is used). | |
997 </para></listitem> | |
9675 | 998 </varlistentry> |
999 | |
1000 <varlistentry> | |
1001 <term><emphasis role="bold">evSetVolume</emphasis></term> | |
1002 <listitem><para> | |
21521 | 1003 Set volume (can be used by a potmeter; the relative |
1004 value (0-100%) of the potmeter is used). | |
1005 </para></listitem> | |
9675 | 1006 </varlistentry> |
1007 </variablelist> | |
1008 | |
1009 <variablelist> | |
1010 <title>Miscellaneous:</title> | |
1011 <varlistentry> | |
1012 <term><emphasis role="bold">evAbout</emphasis></term> | |
1013 <listitem><para> | |
21521 | 1014 Open the about window. |
1015 </para></listitem> | |
9675 | 1016 </varlistentry> |
1017 | |
1018 <varlistentry> | |
1019 <term><emphasis role="bold">evDropSubtitle</emphasis></term> | |
1020 <listitem><para> | |
21521 | 1021 Disables the currently used subtitle. |
1022 </para></listitem> | |
9675 | 1023 </varlistentry> |
1024 | |
1025 <varlistentry> | |
1026 <term><emphasis role="bold">evEqualizer</emphasis></term> | |
1027 <listitem><para> | |
21521 | 1028 Turn the equalizer on/off. |
1029 </para></listitem> | |
9675 | 1030 </varlistentry> |
1031 | |
1032 <varlistentry> | |
1033 <term><emphasis role="bold">evExit</emphasis></term> | |
1034 <listitem><para> | |
21521 | 1035 Quit the program. |
1036 </para></listitem> | |
9675 | 1037 </varlistentry> |
1038 | |
1039 <varlistentry> | |
1040 <term><emphasis role="bold">evIconify</emphasis></term> | |
1041 <listitem><para> | |
21521 | 1042 Iconify the window. |
1043 </para></listitem> | |
9675 | 1044 </varlistentry> |
1045 | |
1046 <varlistentry> | |
1047 <term><emphasis role="bold">evLoad</emphasis></term> | |
1048 <listitem><para> | |
21521 | 1049 Load a file (by opening a file browser window, where you can choose a file). |
1050 </para></listitem> | |
9675 | 1051 </varlistentry> |
1052 | |
1053 <varlistentry> | |
1054 <term><emphasis role="bold">evLoadPlay</emphasis></term> | |
1055 <listitem><para> | |
21521 | 1056 Does the same as <literal>evLoad</literal>, but it automatically starts |
1057 playing after the file is loaded. | |
1058 </para></listitem> | |
9675 | 1059 </varlistentry> |
1060 | |
1061 <varlistentry> | |
1062 <term><emphasis role="bold">evLoadSubtitle</emphasis></term> | |
1063 <listitem><para> | |
26958 | 1064 Loads a subtitle file (with the file selector). |
21521 | 1065 </para></listitem> |
9675 | 1066 </varlistentry> |
1067 | |
1068 <varlistentry> | |
1069 <term><emphasis role="bold">evLoadAudioFile</emphasis></term> | |
1070 <listitem><para> | |
26958 | 1071 Loads an audio file (with the file selector). |
21521 | 1072 </para></listitem> |
9675 | 1073 </varlistentry> |
1074 | |
1075 <varlistentry> | |
1076 <term><emphasis role="bold">evNone</emphasis></term> | |
1077 <listitem><para> | |
33070 | 1078 Empty message, it has no effect. |
21521 | 1079 </para></listitem> |
9675 | 1080 </varlistentry> |
1081 | |
1082 <varlistentry> | |
13752
e193600132d5
Important typo noticed by Piero di Vita <scognito at libero dot it>
diego
parents:
12815
diff
changeset
|
1083 <term><emphasis role="bold">evPlaylist</emphasis></term> |
9675 | 1084 <listitem><para> |
21521 | 1085 Open/close the playlist window. |
1086 </para></listitem> | |
9675 | 1087 </varlistentry> |
1088 | |
1089 <varlistentry> | |
1090 <term><emphasis role="bold">evPlayDVD</emphasis></term> | |
1091 <listitem><para> | |
21521 | 1092 Tries to open the disc in the given DVD-ROM drive. |
1093 </para></listitem> | |
9675 | 1094 </varlistentry> |
1095 | |
1096 <varlistentry> | |
1097 <term><emphasis role="bold">evPlayVCD</emphasis></term> | |
1098 <listitem><para> | |
21521 | 1099 Tries to open the disc in the given CD-ROM drive. |
1100 </para></listitem> | |
9675 | 1101 </varlistentry> |
1102 | |
1103 <varlistentry> | |
1104 <term><emphasis role="bold">evPreferences</emphasis></term> | |
1105 <listitem><para> | |
21521 | 1106 Open the preferences window. |
1107 </para></listitem> | |
9675 | 1108 </varlistentry> |
1109 | |
1110 <varlistentry> | |
1111 <term><emphasis role="bold">evSetAspect</emphasis></term> | |
1112 <listitem><para> | |
21521 | 1113 Sets displayed image aspect. |
1114 </para></listitem> | |
9675 | 1115 </varlistentry> |
1116 | |
1117 <varlistentry> | |
1118 <term><emphasis role="bold">evSetURL</emphasis></term> | |
1119 <listitem><para> | |
21521 | 1120 Displays the URL dialog window. |
1121 </para></listitem> | |
9675 | 1122 </varlistentry> |
1123 | |
1124 <varlistentry> | |
1125 <term><emphasis role="bold">evSkinBrowser</emphasis></term> | |
1126 <listitem><para> | |
21521 | 1127 Open the skin browser window. |
1128 </para></listitem> | |
9675 | 1129 </varlistentry> |
1130 </variablelist> | |
21521 | 1131 </sect1> |
9675 | 1132 |
21521 | 1133 |
1134 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> | |
1135 | |
9675 | 1136 |
17276 | 1137 <sect1 id="skin-quality"> |
1138 <title>Creating quality skins</title> | |
1139 | |
1140 <para> | |
1141 So you have read up on creating skins for the | |
1142 <application>MPlayer</application> GUI, done your best with the | |
1143 <application>Gimp</application> and wish to submit your skin to us? | |
1144 Read on for some guidelines to avoid common mistakes and produce | |
1145 a high quality skin. | |
1146 </para> | |
1147 | |
1148 <para> | |
1149 We want skins that we add to our repository to conform to certain | |
1150 quality standards. There are also a number of things that you can do | |
1151 to make our lives easier. | |
1152 </para> | |
1153 | |
1154 <para> | |
1155 As an example you can look at the <systemitem>Blue</systemitem> skin, | |
1156 it satisfies all the criteria listed below since version 1.5. | |
1157 </para> | |
1158 | |
1159 <itemizedlist> | |
21521 | 1160 <listitem><para> |
1161 Each skin should come with a | |
17276 | 1162 <filename>README</filename> file that contains information about |
1163 you, the author, copyright and license notices and anything else | |
1164 you wish to add. If you wish to have a changelog, this file is a | |
21521 | 1165 good place. |
1166 </para></listitem> | |
17276 | 1167 |
21521 | 1168 <listitem><para> |
1169 There should be a file <filename>VERSION</filename> | |
17276 | 1170 with nothing more than the version number of the skin on a single |
21521 | 1171 line (e.g. 1.0). |
1172 </para></listitem> | |
17276 | 1173 |
21521 | 1174 <listitem><para> |
1175 Horizontal and vertical controls (sliders like volume | |
17276 | 1176 or position) should have the center of the knob properly centered on |
1177 the middle of the slider. It should be possible to move the knob to | |
21521 | 1178 both ends of the slider, but not past it. |
1179 </para></listitem> | |
17276 | 1180 |
21521 | 1181 <listitem><para> |
1182 Skin elements should have the right sizes declared | |
17276 | 1183 in the skin file. If this is not the case you can click outside of |
1184 e.g. a button and still trigger it or click inside its area and not | |
21521 | 1185 trigger it. |
1186 </para></listitem> | |
17276 | 1187 |
21521 | 1188 <listitem><para> |
1189 The <filename>skin</filename> file should be | |
17276 | 1190 prettyprinted and not contain tabs. Prettyprinted means that the |
21521 | 1191 numbers should line up neatly in columns. |
1192 </para></listitem> | |
17276 | 1193 </itemizedlist> |
1194 | |
1195 </sect1> | |
9675 | 1196 </appendix> |