Mercurial > mplayer.hg
comparison DOCS/Italian/skin.html @ 4867:2729796fb896
Italian translation
author | frodone |
---|---|
date | Tue, 26 Feb 2002 02:07:17 +0000 |
parents | |
children | c8a3e58a43d8 |
comparison
equal
deleted
inserted
replaced
4866:550e86ba0390 | 4867:2729796fb896 |
---|---|
1 <html> | |
2 <head> | |
3 <meta http-equiv=Content-Type content="text/html; charset=iso-8859-1"> | |
4 <title>MPlayer skin format</title> | |
5 <style type="text/css"> | |
6 em.note {color: green} | |
7 em.warn {color: red} | |
8 </style> | |
9 </head> | |
10 | |
11 <body bgcolor=white text=black> | |
12 | |
13 <h1 align="center">Formato skin di MPlayer</h1> | |
14 | |
15 <hr> | |
16 | |
17 <h2>Contenuti</h2> | |
18 | |
19 <ul type=disc> | |
20 <li><a href="#intro">1 Introduzione</a></li> | |
21 <li><a href="#overview">2 Generale</a></li> | |
22 <ul type=circle> | |
23 <li><a href="#dirs">2.1 Directory</a></li> | |
24 <li><a href="#images">2.2 Immagini</a></li> | |
25 <li><a href="#parts">2.3 Parti di una skin</a></li> | |
26 <li><a href="#files">2.4 File</a></li> | |
27 </ul> | |
28 <li><a href="#skin">3 Il file <code>skin</code></a></li> | |
29 <ul type=circle> | |
30 <li><a href="#mainwin">3.1 Finestra principale</a></li> | |
31 <li><a href="#subwindow">3.2 Sotto finestra</a></li> | |
32 <li><a href="#skinmenu">3.3 Menu della skin</a></li> | |
33 </ul> | |
34 <li><a href="#fonts">4 Font</a></li> | |
35 <ul type=circle> | |
36 <li><a href="#symbols">4.1 Simboli</a></li> | |
37 </ul> | |
38 <li><a href="#guimsg">Appendice A: messaggi della GUI</a></li> | |
39 </ul> | |
40 | |
41 <hr> | |
42 | |
43 <div align=center> | |
44 Ultima modifica: Sep 10, 2001 | |
45 </div> | |
46 | |
47 <hr> | |
48 | |
49 <h2><a name="intro">1 Introduzione</a></h2> | |
50 | |
51 Il proposito di questo documento è di descrivere il formato delle skin di MPlayer. | |
52 Le in formazioni qui contenute possono essere errate, in quanto <em>a)</em> non sono stato io | |
53 a scrivere la GUI, <em>b)</em> la GUI non è finita, <em>c)</em> posso | |
54 sbagliarmi. Quindi non sorprenderti se qualcosa non funziona come descritto qui. | |
55 | |
56 <p> | |
57 Grazie a <em>Zoltán Ponekker</em> per il suo aiuto. | |
58 | |
59 <p> | |
60 <em>András Mohari <mayday@freemail.hu></em> | |
61 | |
62 | |
63 <h2><a name="overview">2 Generale</a></h2> | |
64 | |
65 Non ha niente a che fare col formato delle skin, ma dovresti sapere | |
66 che <em>MPlayer <b>non</b> ha include una skin, quindi <b>devi installare almeno | |
67 una skin per poter usare la GUI.</b></em> | |
68 | |
69 | |
70 <h3><a name="dirs">2.1 Directory</a></h3> | |
71 | |
72 Le directory in cui si cerca per le skin sono (in ordine): | |
73 <pre> | |
74 /usr/local/share/mplayer/Skin/ | |
75 ~/.mplayer/Skin/ | |
76 </pre> | |
77 | |
78 <p> | |
79 Nota che il primo path può variare a seconda di come è stato configurato MPlayer | |
80 (vedi l'argomento <code>--datadir</code> dello script <code>configure</code>). | |
81 | |
82 | |
83 <p> | |
84 Ogni skin è installata in una sua propria directory sotto una delle directory | |
85 elencate sopra, per esempio: | |
86 <pre> | |
87 /usr/local/share/mplayer/Skin/default/ | |
88 </pre> | |
89 | |
90 | |
91 <h3><a name="images">2.2 Formati delle immagini</a></h3> | |
92 | |
93 Le immagini devono essere in truecolor (24 o 32 bpp) e possono essere in formato | |
94 BMP, PNG e TGA (nota che le immagini TGA devono essere non compresse). | |
95 <em>Il formato preferito è PNG perchè si comprime molto bene.</em> | |
96 | |
97 <p> | |
98 Nella finestra principale (vedi sotto) puoi usare immagini con `trasparenze': | |
99 regioni riempite col colore #FF00FF (<font color="#FF00FF">magenta</font>) | |
100 sono del tutto trasparenti quando viste con MPlayer. Questo significa che puoi anche ottenere | |
101 finestre con una certa forma se il tuo server X ha l'estensione XShape. | |
102 | |
103 | |
104 <h3><a name="parts">2.3 Parti di una skin</a></h3> | |
105 | |
106 Le skin sono del tutto in formato libero (non come le skin a formato fisso di | |
107 Winamp/XMMS, per esempio), quindi sta a te creare qualcosa di grandioso. | |
108 | |
109 <p> | |
110 Attualmente ci sono tre finestre da essere decorate: la | |
111 <a href="#mainwin">finestra principale</a>, la <a href="#subwindow">sotto finestra</a> e | |
112 il <a href="#skinmenu">menu della skin</a> (che può essere attivata con il tasto | |
113 destro). | |
114 | |
115 <ul> | |
116 <li> | |
117 La <b>finestra principale</b> è dove puoi controllare MPlayer. Lo sfondo della | |
118 finestra è un'immagine. Vari oggetti possono (e devono) essere | |
119 piazzati nella finestra: <em>bottoni</em>, <em>slider</em> e <em>etichetta</em>. | |
120 Per ogni oggetto, devi | |
121 specificare la sua posizione e dimensione. | |
122 | |
123 <p> | |
124 Un <b>bottone</b> ha tre stati (premuto, rilasciato, | |
125 disabilitato), quindi la sua immagine deve essere divisa in tre parti verticalmente. | |
126 Vedi l'oggetto <a href="#main.button">bottone</a> per dettagli. | |
127 <p> | |
128 Uno <b>slider</b> (usati principalmente per la barra di ricerca e il controllo di volume/bilanciamento) | |
129 può avere qualsiasi numero di fasi dividendo la sua immagine in differenti parti | |
130 una sotto l'altra. | |
131 Vedi <a href="#main.hpotmeter">hslider</a> e | |
132 <a href="#main.potmeter">slider</a> per dettagli. | |
133 | |
134 <p> | |
135 Le <b>etichette</b> sono un po' speciali: i caratteri necessari a disegnarli sono presi | |
136 da un file immagine, e i caratteri nell'immagine sono descritti | |
137 da un <a href="#fonts">file per la descrizione del font</a>. | |
138 Questo è un normale file di testo che specifica | |
139 la posizione x,y e la dimensione di ogni carattere nell'immagine. (Quindi | |
140 il file d'immagine e il suo file di descrizione del font formano un font <em>insieme</em>.) | |
141 Vedi <a href="#main.dlabel">dlabel</a> e <a href="#main.slabel">slabel</a> | |
142 per dettagli. | |
143 | |
144 <p> | |
145 <em class=note> | |
146 <b>Nota:</b> tutte le immagini possono avere la piena trasparenza come descritto nella | |
147 sezione sui <a href="#images">formati immagine</a>. | |
148 </em> | |
149 </li> | |
150 | |
151 <li> | |
152 La <b>sotto finestra</b> è dove appare il filmato. Può mostrare una specifica immagine | |
153 se non c'è nessun video caricato (è noioso avere una finestra vuota | |
154 :-)) | |
155 <em class=note><b>Nota:</b> la trasparenza | |
156 <b>non è permessa</b> qui.</em> | |
157 </li> | |
158 | |
159 <li> | |
160 Il <b>menu della skin</b> è solo un modo per controllare MPlayer per mezzo delle voci | |
161 del menu. Sono necessarie due immagini per il menu: una è l'immagine di base | |
162 che mostra il menu nel suo stato normale, l'altra è usata per mostrare | |
163 le voci selezionate. Quando attivi il menu, viene mostrata la prima immagine. | |
164 Se muovi il mouse sulle voci del menu, la voce attualmente selezionata | |
165 è copiata dalla seconda immagine sotto il puntatore del mouse. | |
166 (Quindi la seconda immagine non è mai mostrata interamente.) | |
167 <p> | |
168 Una voce del menu è definita dalla sua posizione e dimensione nell'immagine (vedi la | |
169 sezione sul <a href="#skinmenu">menu della skin</a> per dettagli). | |
170 </li> | |
171 </ul> | |
172 | |
173 <p> | |
174 C'è una cosa importante non ancora menzionata: per far funzionare bottoni, slider e | |
175 voci del menu, MPlayer deve sapere cosa fare se sono cliccati. | |
176 Questo è fatto tramite <a href="#guimsg">messaggi</a> (eventi). Per questi oggetti | |
177 devi definire i messaggi che devono essere generati quando vengono attivati. | |
178 | |
179 <h3><a name="files">2.4 File</a></h3> | |
180 | |
181 Devi avere i seguenti file per fare una skin. | |
182 <ul> | |
183 <li> | |
184 Il file di configurazione chiamato <a href="#skin">skin</a> dice a MPlayer come | |
185 mettere insieme le diverse parti della skin e cosa fare se si clicca | |
186 da qualche parte nella finestra. | |
187 </li> | |
188 <li>L'immagine di sfondo della finestra principale.</li> | |
189 <li>Immagini per gli oggetti della finestra principale (inclusi uno o più file di descrizione dei font | |
190 necessari per disegnare le etichette).</li> | |
191 <li>l'immagine da mostrare nella sotto finestra (opzionale).</li> | |
192 <li>Due immagini per il menu della skin (ne hai bisogno solo se vuoi creare un | |
193 menu). | |
194 </ul> | |
195 | |
196 Con l'eccezione del file di configurazione della skin, puoi nominare gli altri file | |
197 come vuoi (ma nota che i file di descrizione dei font devono avere l'estensione | |
198 .fnt). | |
199 | |
200 | |
201 <h2><a name="skin">3 Il file <code><b>skin</b></code></a></h2> | |
202 | |
203 <p> | |
204 Come menzionato sopra, questo è il file di configurazione della skin. | |
205 E' orientato alla linea; le linee di commento iniziano col carattere '<code>;</code>' | |
206 all'inizio della linea (solo spazi e tab sono permessi prima del | |
207 '<code>;</code>'). | |
208 | |
209 <p> | |
210 Il file è fatto di sezioni. Ogni sezione descrive la skin per un'applicazione e | |
211 ha la seguente forma: | |
212 <table border=1 width="100%"><tr bgcolor=silver><td><pre> | |
213 section = <i>nome sezione</i> | |
214 . | |
215 . | |
216 . | |
217 end | |
218 </pre></td></tr></table> | |
219 | |
220 <p> | |
221 Attualmente c'è solo una applicazione, quindi hai bisogno solo di una sezione: | |
222 il suo nome è <b>movieplayer</b>. | |
223 | |
224 <p> | |
225 Dentro questa sezione ogni finestra è descritta da un blocco nella seguente forma: | |
226 <table border=1 width="100%"><tr bgcolor=silver><td><pre> | |
227 window = <i>nome finestra</i> | |
228 . | |
229 . | |
230 . | |
231 end | |
232 </pre></tr></td></table> | |
233 dove <i>nome finestra</i> può essere una di queste stringhe: | |
234 <ul> | |
235 <li><b>main</b> - per la finestra principale</li> | |
236 <li><b>sub</b> - per la sotto finestra</li> | |
237 <li><b>menu</b> - per il menu della skin</li> | |
238 </ul> | |
239 | |
240 <p> | |
241 (I blocchi sub e menu sono opzionali---non devi per forza creare un menu o decorare | |
242 la sotto finestra.) | |
243 | |
244 <p> | |
245 Dentro un blocco finestra, puoi definire ogni oggetto della finestra | |
246 con una linea in questa forma: | |
247 | |
248 <blockquote> | |
249 <pre> | |
250 oggetto = parametro | |
251 </pre> | |
252 </blockquote> | |
253 | |
254 <p> | |
255 dove <i>oggetto</i> è unastringa che identifica il tipo di oggetto della GUI, | |
256 <i>parametro</i> è un valore numerico o testuale (o una lista di valori | |
257 separati da virgole). | |
258 </p> | |
259 | |
260 <p> | |
261 mettendo insieme quanto sopra, l'intero file appare così: | |
262 | |
263 <p> | |
264 <table border=1 width="100%"><tr bgcolor=silver><td><pre> | |
265 section = movieplayer | |
266 window = main | |
267 ; ... oggetti della finestra principale ... | |
268 end | |
269 | |
270 window = sub | |
271 ; ... oggetti della sotto finestra ... | |
272 end | |
273 | |
274 window = menu | |
275 ; ... oggetti del menu della skin ... | |
276 end | |
277 end | |
278 </pre></tr></td></table> | |
279 | |
280 <p> | |
281 In fine alcune parole su come specificare le immagini per i vari oggetti. | |
282 <br> | |
283 Il nome di un file immagine deve essere dato senza il percorso--- | |
284 le immagini vengono cercate nella directory della skin. Puoi (ma non è necessario) | |
285 specificare l'estensione del file. Se il file non esiste, MPlayer cerca di | |
286 caricare il file <i><nomefile>.<est></i>, dove <i>tga</i>, | |
287 <i>TGA</i>, <i>bmp</i>, <i>BMP</i>, <i>png</i> e <i>PNG</i> sono provati | |
288 al posto di <i><est></i> (in questo ordine). Il primo file corrispondente sarà usato. | |
289 | |
290 <p> | |
291 | |
292 <table border=1 cellpadding=5 width="100%"><tr bgcolor="#ffffcc"><td> | |
293 Ecco un esempio per rendere le cose chiare. Supponi di avere un'immagine chiamata | |
294 <i>main.png</i> che usi per la finestra principale: | |
295 <blockquote> | |
296 <pre> | |
297 base = main, -1, -1 | |
298 </pre> | |
299 </blockquote> | |
300 | |
301 MPlayer cerca di caricare <i>main</i>, <i>main.tga</i>, <i>main.TGA</i>, | |
302 <i>main.bmp</i> ecc, quindi verrà trovata <i>main.png</i>. | |
303 <br> | |
304 Se (per sbaglio) scrivi | |
305 <blockquote> | |
306 <pre> | |
307 base = main.bmp, -1, -1 | |
308 </pre> | |
309 </blockquote> | |
310 allora saranno cercati <i>main.bmp</i>, <i>main.bmp.tga</i>, <i>main.bmp.TGA</i>, | |
311 <i>main.bmp.bmp</i> e MPlayer alla fine rinuncerà | |
312 perchè non c'è nessun <i>main.bmp</i> nella directory, ma <i>main.png</i>. | |
313 </td></tr></table> | |
314 | |
315 | |
316 <h3><a name="mainwin">3.1 Finestra principale</a></h3> | |
317 | |
318 Sotto puoi vedere la lista degli oggetti che possono essere usati nel blocco | |
319 '<code>window = main</code>' . . . '<code>end</code>' | |
320 | |
321 <dl> | |
322 <dt><a name="main.base"> | |
323 <b>base = <i>immagine, x, y</i></b> | |
324 </a></dt> | |
325 <dd> | |
326 Permette di specificare l'immagine di sfondo da usare per la finestra principale. | |
327 La finestra apparirà sullo schermo alla posizione <i>x</i>,<i>y</i> data | |
328 (0,0 è l'angolo in alto a sinistra). Puoi specificare -1 per il centro | |
329 e -2 per destra (x) e in basso (y). La finestra sarà larga quanto l'immagine. | |
330 <p> | |
331 <em class=warn> | |
332 <b>Avvertimento:</b> le zone trasparenti dell' immagine (colore #FF00FF) appaiono | |
333 nere se il server X non supporta l'estensione XShape. | |
334 </em> | |
335 </dd> | |
336 </dl> | |
337 | |
338 <dl> | |
339 <dt><a name="main.button"> | |
340 <b>button = <i>immagine, x, y, larghezza, altezza, messaggio</i></b></a></dt> | |
341 <dd> | |
342 Posiziona un bottone di dimensioni <i>larghezza</i> * <i>altezza</i> alla posizione | |
343 <i>x</i>,<i>y</i>. Il messaggio specificato è generato quando viene | |
344 cliccato il bottone. | |
345 L'immagine data da <i>immagine</i> deve avere tre parti una sotto l'altra | |
346 (secondo i possibili stati del bottone), in questo modo: | |
347 <div align=center><table><tr><td><pre><small> | |
348 +------------+ | |
349 | premuto | | |
350 +------------+ | |
351 | rilasciato | | |
352 +------------+ | |
353 |disabilitato| | |
354 +------------+ | |
355 </small></pre></td></tr></table></div> | |
356 </dd> | |
357 </dl> | |
358 | |
359 <dl> | |
360 <dt><a name="main.decoration"> | |
361 <b>decoration = enable|disable</b> | |
362 </a></dt> | |
363 <dd> | |
364 Abilita o disabilita la decorazione della finestra principale. Il default | |
365 è <b>disable</b>. | |
366 </dd> | |
367 </dl> | |
368 | |
369 <dl> | |
370 <dt> | |
371 <a name="main.hpotmeter"> | |
372 <b> | |
373 hpotmeter = <i>bott, lb,ab, fasi, numfasi, default, x, y, l, a, msg</i> | |
374 </b> | |
375 </a> | |
376 </dt> | |
377 <dd> | |
378 Inserisce uno slider orizzontale di dimensioni <i>l</i> * <i>a</i> alla posizione | |
379 <i>x</i>,<i>y</i>. L'immagine può essere divisa in diverse parti | |
380 per le diverse fasi dello slider (per esempio, | |
381 puoi avere uno slider per il controllo volume che cambia da verde a rosso | |
382 al cambiare del suo valore dal minimo al massimo.) | |
383 hpotmeter può avere un bottone che si può trascinare orizzontalmente. | |
384 I parametri sono: | |
385 <ul> | |
386 <li><i>bott</i> - l'immagine da usare per il bottone | |
387 (deve avere tre parti una sotto l'altra, come nel caso del | |
388 <a href="#main.button">bottone</a>)</li> | |
389 <li><i>lb</i>, <i>ab</i> - dimensione del bottone</li> | |
390 <li><i>fasi</i> - L'immagine da usare per le differenti fasi dello | |
391 slider. L'immagine deve essere divisa in <i>numfasi</i> parti verticalmente | |
392 (vedi sotto). Può essere usato un valore speciale <kbd>NULL</kbd> se non vuoi | |
393 l'immagine. | |
394 </li> | |
395 <li><i>numfasi</i> - numero di fasi inserite nell'immagine <i>fasi</i> | |
396 </li> | |
397 <li><i>default</i> - valore di default dello slider (da 0 a | |
398 100)</li> | |
399 <li><i>x</i>, <i>y</i> - posizione dello slider</li> | |
400 <li><i>l</i>, <i>a</i> - larghezza e altezza dello slider</li> | |
401 <li><i>msg</i> - il messaggio da generare quando viene cambiato il valore dello | |
402 slider</li> | |
403 </ul> | |
404 L'immagine usata per le differenti fasi deve essere più o meno così: | |
405 <div align=center><table border=0><tr><td><pre><small> | |
406 +------------+ | |
407 | fase #1 | | |
408 +------------+ | |
409 | fase #2 | | |
410 +------------+ | |
411 ... | |
412 +------------+ | |
413 | fase #n | | |
414 +------------+ | |
415 </small></pre></td></tr></table></div> | |
416 <em class=note> | |
417 <b>Nota:</b> ci sarà anche un oggetto vpotmeter, ma non è ancora stato | |
418 implementato. | |
419 </em> | |
420 </dd> | |
421 </dl> | |
422 | |
423 <dl> | |
424 <dt><a name="main.potmeter"> | |
425 <b>potmeter = <i>fasi, numfasi, default, x, y, l, a, msg</i></b> | |
426 </a></dt> | |
427 <dd> | |
428 Uno slider senza bottone. (Penso sia inteso per essere girato, | |
429 ma reagisce solo al trascinamento orizzontale.) | |
430 Per la descrizione dei parametri vedi | |
431 <a href="#main.hpotmeter">hpotmeter</a>. <i>fasi</i> può essere | |
432 <code>NULL</code>, ma è proprio inutile, infatti non puoi vedere dove | |
433 è situato lo slider. | |
434 </dd> | |
435 </dl> | |
436 | |
437 <dl> | |
438 <dt><a name="main.font"> | |
439 <b>font = <i>filefont, fontid</i></b> | |
440 </a></dt> | |
441 <dd> | |
442 Definisce un font. <i>filefont</i> è il nome di un file che descrive un font | |
443 con estensione <code>.fnt</code> (<b>non c'è bisogno</b> di specificare l'estensione | |
444 qui). | |
445 <i>fontid</i> è usato per riferirsi al font | |
446 (vedi <a href="#main.dlabel">dlabel</a> e <a href="#main.slabel">slabel</a>). | |
447 Possono essere definiti fino a 25 font. | |
448 </dd> | |
449 </dl> | |
450 | |
451 <dl> | |
452 <dt><a name="main.dlabel"> | |
453 <b>dlabel = <i>x, y, lunghezza, allineamento, fontid, "testo"</i></b> | |
454 </a></dt> | |
455 <dd> | |
456 Posiziona una etichetta dinamica in <i>x</i>,<i>y</i>. L'etichetta è detta | |
457 dinamica perchè il suo testo è aggiornato periodicamente. | |
458 La lunghezza massima dell'etichetta è data da <i>lunghezza</i> (la sua altezza è quella di un | |
459 carattere). | |
460 Se il testo da visualizzare è più largo, allora sarà fatto | |
461 ruotare, altrimenti è allineato nello spazio specificato tramite il valore | |
462 del parametro <i>allineamento</i>: 0 per destra, 1 per centro, | |
463 2 per sinistra. | |
464 <br> | |
465 Il testo da mostrare è dato da <i>testo</i>: deve essere scritto tra | |
466 virgolette (<code>"</code>) (ma le <code>"</code> non possono essere parte del | |
467 testo). L'etichetta è visualizzata usando il font identificato da <i>fontid</i>. | |
468 Puoi usare le seguenti variabili nel testo. | |
469 | |
470 <div align=center> | |
471 <table valign=top border=1> | |
472 <tr align=center><th>Variabile</th><th align=left>Significato</th></tr> | |
473 <tr><td align=center><kbd>$1</kbd></td> | |
474 <td>tempo in formato <em>hh:mm:ss</em></td></tr> | |
475 <tr><td align=center><kbd>$2</kbd></td> | |
476 <td>tempo in formato <em>mmmm:ss</em></td></tr> | |
477 <tr><td align=center><kbd>$3</kbd></td> | |
478 <td>tempo in formato <em>hh</em> (ore)</td></tr> | |
479 <tr><td align=center><kbd>$4</kbd></td> | |
480 <td>tempo in formato <em>mm</em> (minuti)</td></tr> | |
481 <tr><td align=center><kbd>$5</kbd></td> | |
482 <td>tempo in formato <em>ss</em> (secondi)</td></tr> | |
483 <tr><td align=center><kbd>$6</kbd></td> | |
484 <td>lunghezza filmato nel formato <em>hh:mm:ss</em></td></tr> | |
485 <tr><td align=center><kbd>$7</kbd></td> | |
486 <td>lunghezza filmato nel formato <em>mmmm:ss</em></td></tr> | |
487 <tr><td align=center><kbd>$8</kbd></td> | |
488 <td>tempo in formato <em>h:mm:ss</em></td></tr> | |
489 <tr><td align=center><kbd>$v</kbd></td> | |
490 <td>volume in formato <em>xxx.xx%</em></td></tr> | |
491 <tr><td align=center><kbd>$V</kbd></td> | |
492 <td>volume in formato <em>xxx.x</em></td></tr> | |
493 <tr><td align=center><kbd>$b</kbd></td> | |
494 <td>bilanciamento in formato <em>xxx.xx%</em></td></tr> | |
495 <tr><td align=center><kbd>$B</kbd></td> | |
496 <td>bilanciamento in formato <em>xxx.x</em></td></tr> | |
497 <tr><td align=center><kbd>$$</kbd></td> | |
498 <td>il carattere <kbd>$</kbd></td></tr> | |
499 <tr><td align=center><kbd>$a</kbd></td> | |
500 <td>un carattere a seconda del tipo di audio (nessuno: <code>n</code>, | |
501 mono: <code>m</code>, stereo: <code>t</code>)</td></tr> | |
502 <tr><td align=center><kbd>$t</kbd></td> | |
503 <td>numero traccia (nella playlist)</td></tr> | |
504 <tr><td align=center><kbd>$o</kbd></td> | |
505 <td>nomefile</td></tr> | |
506 <tr><td align=center><kbd>$f</kbd></td> | |
507 <td>nomefile in minuscolo</td></tr> | |
508 <tr><td align=center><kbd>$F</kbd></td> | |
509 <td>nomefile in maiuscolo</td></tr> | |
510 <tr><td align=center><kbd>$T</kbd></td> | |
511 <td>un carattere a seconda del tipo di stream (file: <code>f</code>, | |
512 video CD: <code>v</code>, DVD: <code>d</code>, URL: <code>u</code>) | |
513 </td></tr> | |
514 <tr><td align=center><kbd>$p</kbd></td> | |
515 <td>il carattere "p" (se si sta leggendo un filmato e il font ha il carattere | |
516 "p") | |
517 </td></tr> | |
518 <tr><td align=center><kbd>$s</kbd></td> | |
519 <td>il carattere "s" (se non si sta leggendo un filmato e il font ha il carattere | |
520 "s") | |
521 </td></tr> | |
522 <tr><td align=center><kbd>$e</kbd></td> | |
523 <td>il carattere "e" (se il filmato è in pausa e il font ha il carattere | |
524 "e") | |
525 </td></tr> | |
526 </table></div> | |
527 <p> | |
528 <b>Nota:</b> Le variabili <kbd>$a</kbd>, <kbd>$T</kbd>, <kbd>$p</kbd>, <kbd>$s</kbd> | |
529 e <kbd>$e</kbd> ritornano tutte caratteri che dovrebbero essere visualizzati | |
530 come simboli speciali (per esempio, "e" è per il simbolo della pausa che di solito | |
531 appare come <code>||</code>). Dovresti avere un font per i caratteri normali | |
532 e un altro per i simboli. | |
533 Vedi la sezione sui <a href="#symbols">simboli</a> per altre informazioni. | |
534 </dd> | |
535 </dl> | |
536 | |
537 <dl> | |
538 <dt><a name="main.slabel"> | |
539 <b>slabel = <i>x, y, fontid, testo</i></b> | |
540 </a></dt> | |
541 <dd> | |
542 Posiziona una etichetta statica in <i>x</i>,<i>y</i>. | |
543 Il <i>testo</i> è visualizzato usando il font identificato da <i>fontid</i>. | |
544 Il testo è una pura stringa (le variabili $x non funzionano) che deve essere racchiuso | |
545 tra virgolette (le <code>"</code> non possono essere parte del testo). | |
546 | |
547 </dd> | |
548 </dl> | |
549 | |
550 | |
551 <h3><a name="subwindow">3.2 Sotto finestra</a></h3> | |
552 | |
553 I seguenti oggetti possono essere usati nel blocco | |
554 '<code>window = sub</code>' . . . '<code>end</code>'. | |
555 | |
556 <dl> | |
557 <dt><a name="sub.base"> | |
558 <b>base = <i>immagine, x, y, larghezza, altezza</i></b> | |
559 </a></dt> | |
560 <dd> | |
561 L'immagine da visualizzare nella finestra. | |
562 La finestra apparirà alla posizione <i>x</i>,<i>y</i> data | |
563 sullo schermo (0,0 è l'angolo in alto a sinistra). Puoi specificare -1 per centro | |
564 e -2 destra (x) e sotto (y). La finestra sarà grande quanto l'immagine. | |
565 <i>larghezza</i> e <i>altezza</i> danno la dimensione della finestra; sono opzionali | |
566 (se mancano, la finestra è grande quanto l'immagine). | |
567 </dd> | |
568 </dl> | |
569 | |
570 <dl> | |
571 <dt><a name="sub.background"> | |
572 <b>background = <i>r, g, b</i></b> | |
573 </a></dt> | |
574 <dd> | |
575 Permette di definire il colore di sfondo. Utile se l'immagine è più piccola della | |
576 finestra. | |
577 <i>r</i>, <i>g</i> e <i>b</i> specificano le componenti rossa, verde e blu | |
578 del colore (ognuno è un numero decimale compreso tra 0 e 255). | |
579 </dd> | |
580 </dl> | |
581 | |
582 | |
583 <h3><a name="skinmenu">3.3 Menu della skin</a></h3> | |
584 | |
585 Come menzionatoprima, il menu è visualizzato usando due immagini. | |
586 Le normali voci del menu sono prese dall'immagine specificata dall'oggetto <i>base</i>, | |
587 mentre la voce attualmente selezionata è presa dall'immagine specificata dall'oggetto | |
588 <i>selected</i>. | |
589 Devi definire la posizione e la dimensione di ogni voce del menu tramite l'oggetto <i>menu</i>. | |
590 | |
591 | |
592 <p> | |
593 Questi sono gli oggetti che possono essere usati nel blocco '<code>window = menu</code>' | |
594 . . . '<code>end</code>'. | |
595 | |
596 <dl> | |
597 <dt><a name="menu.base"> | |
598 <b>base = <i>immagine</i></b> | |
599 </a></dt> | |
600 <dd> | |
601 L'immagine delle normali voci del menu. | |
602 </dl> | |
603 </dd> | |
604 | |
605 <dl> | |
606 <dt><a name="menu.selected"> | |
607 <b>selected = <i>immagine</i></b> | |
608 </a></dt> | |
609 <dd> | |
610 L'immagine che mostra il menu con tutte le voci selezionate. | |
611 </dd> | |
612 </dl> | |
613 | |
614 <dl> | |
615 <dt><a name="menu.menu"> | |
616 <b>menu = <i>x, y, larghezza, altezza, messaggio</i></b> | |
617 </a></dt> | |
618 <dd> | |
619 Definisce la posizione <i>x</i>,<i>y</i> e la grandezza di una voce del menu nelle | |
620 immagini. <i>messaggio</i> è il messaggio da generare quando | |
621 il bottone del mouse è rilasciato sopra la voce. | |
622 </dd> | |
623 </dl> | |
624 | |
625 | |
626 <h2><a name="fonts">4 Font</a></h2> | |
627 | |
628 Come detto nella sezione sulle varie parti di una skin, un font è definito da | |
629 un'immagine e un file di descrizione. | |
630 Puoi mettere i caratteri ovunque nell'immagine, ma assicurati | |
631 che la loro posizione e dimensione sia data esattamente nel file di descrizione. | |
632 | |
633 <p> | |
634 Il file di descrizione del font (con estensione .fnt) può avere linee di commento | |
635 che iniziano con '<code>;</code>'. | |
636 Il file deve avere una linea nella forma | |
637 <blockquote> | |
638 <pre> | |
639 image = <i>immagine</i> | |
640 </pre> | |
641 </blockquote> | |
642 | |
643 <p> | |
644 dove <i>immagine</i> è il nome del file immagine da usare per | |
645 il font (non devi specificare l'estensione). | |
646 La linea sopra è seguita dalle linee di definizione del carattere nella forma: | |
647 | |
648 <blockquote> | |
649 <pre> | |
650 "<i>car</i>" = <i>x, y, l, a</i> | |
651 </pre> | |
652 </blockquote> | |
653 | |
654 <p> | |
655 Qui <i>x</i> e <i>y</i> specificano la posizione del carattere | |
656 <i>car</i> nell'immagine (0,0 è l'angolo in alto a sinistra). | |
657 <i>l</i> e <i>a</i> sono la larghezza e l'altezza del carattere | |
658 (in pixel, naturalmente). | |
659 | |
660 <p> | |
661 Ecco un esempio che definisce i caratteri A, B, C usando font.png. | |
662 <table width="100%" border=1><tr bgcolor=silver><td><pre> | |
663 ; può essere "font" invece di "font.png" | |
664 image = font.png | |
665 | |
666 ; Tre caratteri sono abbastanza solo per una dimostrazione. :-) | |
667 "A" = 0,0, 7,13 | |
668 "B" = 7,0, 7,13 | |
669 "C" = 14,0, 7,13 | |
670 </pre></td></tr></table> | |
671 | |
672 | |
673 <h3><a name="symbols">4.1 Simboli</a></h3> | |
674 | |
675 Alcuni caratteri hanno significati speciali quando ritornati da alcune variabili | |
676 usate in | |
677 <a href="#main.dlabel">dlabel</a>; questi caratteri vengono visualizzati | |
678 come simboli. (Per esempio, in caso di un flusso DVD, si può visualizzare | |
679 un bel logo DVD invece del carattere 'd'.) | |
680 | |
681 <p> | |
682 La tabella seguente elenca tutti i caratteri che possono essere usati per visualizzare | |
683 simboli (e quindi richiedono un font differente). | |
684 | |
685 <div align=center> | |
686 <table> | |
687 <tr><th align=center>Carattere</th><th align=left>Simbolo</th></tr> | |
688 <tr><td align=center><kbd>p</kbd></td> | |
689 <td align=left>play</td></tr> | |
690 <tr><td align=center><kbd>s</kbd></td> | |
691 <td align=left>stop</td></tr> | |
692 <tr><td align=center><kbd>e</kbd></td> | |
693 <td align=left>pausa</td></tr> | |
694 <tr><td align=center><kbd>n</kbd></td> | |
695 <td align=left>muto</td></tr> | |
696 <tr><td align=center><kbd>m</kbd></td> | |
697 <td align=left>suono mono</td></tr> | |
698 <tr><td align=center><kbd>t</kbd></td> | |
699 <td align=left>suono stereo</td></tr> | |
700 <tr><td align=center><kbd>f</kbd></td> | |
701 <td align=left>lo stream è un file</td></tr> | |
702 <tr><td align=center><kbd>v</kbd></td> | |
703 <td align=left>lo stream è un video CD</td></tr> | |
704 <tr><td align=center><kbd>d</kbd></td> | |
705 <td align=left>lo stream è un DVD</td></tr> | |
706 <tr><td align=center><kbd>u</kbd></td> | |
707 <td align=left>lo stream è una URL</td></tr> | |
708 </table> | |
709 </div> | |
710 | |
711 <p> | |
712 <b>Nota:</b> attualmente sono usati solo 'p', 's', 'e', 'n', 'm' e 't'. | |
713 </p> | |
714 | |
715 <h2><a name="guimsg">Appendice A: messaggi della GUI</a></h2> | |
716 | |
717 Questi sono i messaggi che possono essere generati da bottoni, slider e | |
718 voci del menu. | |
719 | |
720 <p> | |
721 <em class=note> | |
722 <b>Nota:</b> alcuni messaggi possono non funzionare come ci si aspetta (o non | |
723 funzionare del tutto). Come sai, la GUI è in sviluppo.</em> | |
724 | |
725 <p> | |
726 <i>Controllo riproduzione:</i> | |
727 <blockquote> | |
728 <dl> | |
729 <dt><b>evNext</b> | |
730 <dd>Salta alla prossima traccia della playlist. | |
731 | |
732 <dt><b>evPause</b> | |
733 <dd>Pausa la riproduzione. | |
734 | |
735 <dt><b>evPauseSwitchToPlay</b> | |
736 <dd>Forma un interruttore logico insieme a <i>evPlaySwitchToPause</i>. Possono essere usati | |
737 per avere un bottone comune di play/pausa. Entrambi i messaggi dovrebbero venire assegnati | |
738 a bottoni visualizzati nella stessa posizione della finestra. Questo | |
739 messaggio mette in pausa la riproduzione e viene mostrata l'immagine per il bottone <i>evPlaySwitchToPause</i> | |
740 (ad indicare che il bottone può essere premuto per continuare la riproduzione). | |
741 | |
742 <dt><b>evPlay</b> | |
743 <dd>Inizia la riproduzione. | |
744 | |
745 <dt><b>evPlaySwitchToPause</b> | |
746 <dd>L'opposto di <i>evPauseSwitchToPlay</i>. Questo messaggio inizia la riproduzione | |
747 ed è mostrata l'immagine per il bottone <i>evPauseSwitchToPlay</i> (ad | |
748 indicare che il bottone può essere premuto per mettere in pausa). | |
749 | |
750 <dt><b>evPrev</b> | |
751 <dd>Salta alla traccia precedente nella playlist. | |
752 | |
753 <dt><b>evStop</b> | |
754 <dd>Ferma la riproduzione. | |
755 </dl> | |
756 </blockquote> | |
757 | |
758 <p> | |
759 <i>Ricerca nello stream:</i> | |
760 <blockquote> | |
761 <dl> | |
762 <dt><b>evBackward10sec</b> | |
763 <dt><b>evBackward1min</b> | |
764 <dt><b>evBackward10min</b> | |
765 <dd>Per andare indietro di 10 secondi / 1 minuto / 10 minuti. | |
766 | |
767 <dt><b>evForward10sec</b> | |
768 <dt><b>evForward1min</b> | |
769 <dt><b>evForward10min</b> | |
770 <dd>Per andare avanti di 10 secondi / 1 minuto / 10 minuti. | |
771 | |
772 <dt><b>evSetMoviePosition</b> | |
773 <dd>Per andare alla posizione (può essere usato da uno slider; è usato il valore | |
774 relativo (0-100%) dello slider). | |
775 </dl> | |
776 </blockquote> | |
777 | |
778 <p> | |
779 <i>Controllo video:</i> | |
780 <blockquote> | |
781 <dl> | |
782 <dt><b>evDoubleSize</b> | |
783 <dd>Raddoppia le dimensioni della finestra del filmato. | |
784 | |
785 <dt><b>evFullScreen</b> | |
786 <dd>Manda a pieno schermo e vice versa. | |
787 | |
788 <dt><b>evNormalSize</b> | |
789 <dd>Regola la finestra del filmato alle sue dimensioni normali. | |
790 </dl> | |
791 </blockquote> | |
792 | |
793 <p> | |
794 <i>Controllo audio:</i> | |
795 <blockquote> | |
796 <dl> | |
797 <dt><b>evDecAudioBufDelay</b> | |
798 <dd>Diminuisce il ritardo del buffer audio. | |
799 | |
800 <dt><b>evDecBalance</b> | |
801 <dd>Diminuisce il bilanciamento. | |
802 | |
803 <dt><b>evDecVolume</b> | |
804 <dd>Diminuisce il volume. | |
805 | |
806 <dt><b>evIncAudioBufDelay</b> | |
807 <dd>Aumenta il ritardo del buffer audio. | |
808 | |
809 <dt><b>evIncBalance</b> | |
810 <dd>Aumenta il bilanciamento. | |
811 | |
812 <dt><b>evIncVolume</b> | |
813 <dd>Aumenta il volume. | |
814 | |
815 <dt><b>evMute</b> | |
816 <dd>Regola il suono su muto e vice versa. | |
817 | |
818 <dt><b>evSetBalance</b> | |
819 <dd>Regola il bilanciamento (può essere usato da uno slider; è usato il valore | |
820 relativo (0-100%) dello slider). | |
821 | |
822 <dt><b>evSetVolume</b> | |
823 <dd>Regola il volume (può essere usato da uno slider; è usato il valore | |
824 relativo (0-100%) dello slider). | |
825 </dl> | |
826 </blockquote> | |
827 | |
828 <p> | |
829 <i>Vari:</i> | |
830 <blockquote> | |
831 <dl> | |
832 <dt><b>evAbout</b> | |
833 <dd>Apre la finestra "about". | |
834 | |
835 <dt><b>evEqualeaser</b> | |
836 <dd>Accende/spegne l'equalizzatore. | |
837 | |
838 <dt><b>evExit</b> | |
839 <dd>Esce dal programma. | |
840 | |
841 <dt><b>evIconify</b> | |
842 <dd>Riduce ad icona la finestra. | |
843 | |
844 <dt><b>evLoad</b> | |
845 <dd>Carica un file (aprendo una finestra del file browser, dove puoi scegliere | |
846 un file). | |
847 | |
848 <dt><b>evLoadPlay</b> | |
849 <dd>Fa la stessa cosa di <i>evLoad</i>, ma inizia automaticamente la riproduzione | |
850 dopo il caricamento del file. | |
851 | |
852 <dt><b>evNone</b> | |
853 <dd>Messaggio vuoto, non ha nessun effetto. (Eccetto forse nella versione CVS. :-)) | |
854 | |
855 <dt><b>evPlayList</b> | |
856 <dd>Apre/chiude la finestra della playlist. | |
857 | |
858 <dt><b>evPreferences</b> | |
859 <dd>Apre la finestra delle preferenze. | |
860 | |
861 <dt><b>evSkinBrowser</b> | |
862 <dd>Apre la finestra dello skin browser. | |
863 </dl> | |
864 </blockquote> | |
865 | |
866 </body> | |
867 </html> |