Инструменты пользователя

Инструменты сайта


foobar2000:tagz:tutorial:script_bars

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
foobar2000:tagz:tutorial:script_bars [2006/06/07 07:42]
Mishail создано
foobar2000:tagz:tutorial:script_bars [2007/02/08 14:02] (текущий)
Mishail
Строка 16: Строка 16:
  
 Не думаю, что этот скрипт требует каких-либо дополнительных разъяснений. :-) Не думаю, что этот скрипт требует каких-либо дополнительных разъяснений. :-)
 +
  
 ===== Скрипт для строки состояния ===== ===== Скрипт для строки состояния =====
Строка 32: Строка 33:
     ))))     ))))
  
-Это часть для отображения кодека. Вспомните,​ что мы делали при создании информации о кодеке в [[столбце Artist/​Album]] и этот скрипт станет Вам понятен. Первые две строки,​ про AC3 и Lame MP3, полностью идентичны,​ отсальные строки работают по тому же принципу:​ "​отлавливают"​ указанный кодек и меняют для него отображаемое имя. Вы можете расширить эту секцию как Вам угодно,​ добавив обработку нужных Вам кодеков.+Это часть для отображения кодека. Вспомните,​ что мы делали при создании информации о кодеке в [[foobar2000:​tagz:​tutorial:​create_columns#​stolbec_artist_album|столбце Artist/​Album]] и этот скрипт станет Вам понятен. Первые две строки,​ про AC3 и Lame MP3, полностью идентичны,​ отсальные строки работают по тому же принципу:​ "​отлавливают"​ указанный кодек и меняют для него отображаемое имя. Вы можете расширить эту секцию как Вам угодно,​ добавив обработку нужных Вам кодеков.
  
     [%bitrate%'​ kbit/​s'​]['​ '​%samplerate%'​ Hz']     [%bitrate%'​ kbit/​s'​]['​ '​%samplerate%'​ Hz']
Строка 49: Строка 50:
 Переходим к четвертой секции,​ оторая содержит индикатор прогресса (//progress bar//). Чтобы было понятней,​ для начала изучим общий синтаксис:​ Переходим к четвертой секции,​ оторая содержит индикатор прогресса (//progress bar//). Чтобы было понятней,​ для начала изучим общий синтаксис:​
  
-<​html><​pre>​+<​html><​pre ​class="​code"​>
 $progress2(<​i>​position</​i>,<​i>​range</​i>,<​i>​length</​i>,<​i>​char1</​i>,<​i>​char2</​i>​) $progress2(<​i>​position</​i>,<​i>​range</​i>,<​i>​length</​i>,<​i>​char1</​i>,<​i>​char2</​i>​)
 </​pre></​html>​ </​pre></​html>​
Строка 62: Строка 63:
 Два аргумента,​ ''​%_time_elapsed_seconds%''​ и ''​%_time_total_seconds%'',​ определяют какая часть песни уже проиграна,​ и насколько индикатор должен быть заполнен. Наш индикатор будет длиной в 10 символов. Символы заданы в 3-й строке,​ и они у нас идентичны:​ ''​$char(9679'',​ это большой кружок. В дополнение мы задали различные цвета для символов,​ //​заполненная//​ часть будет красной,​ //​незаполненная//​ серой. Мы определим переменные для цветов немного ниже. И вот уже снабженная все этой информацией,​ функция ''​$progress2()''​ рисует индикатор прогресса. Также существует другая версия этой функции:​ ''​$progress()'',​ использующая такие же аргументы,​ но отображающая индикатор немного иначе. Два аргумента,​ ''​%_time_elapsed_seconds%''​ и ''​%_time_total_seconds%'',​ определяют какая часть песни уже проиграна,​ и насколько индикатор должен быть заполнен. Наш индикатор будет длиной в 10 символов. Символы заданы в 3-й строке,​ и они у нас идентичны:​ ''​$char(9679'',​ это большой кружок. В дополнение мы задали различные цвета для символов,​ //​заполненная//​ часть будет красной,​ //​незаполненная//​ серой. Мы определим переменные для цветов немного ниже. И вот уже снабженная все этой информацией,​ функция ''​$progress2()''​ рисует индикатор прогресса. Также существует другая версия этой функции:​ ''​$progress()'',​ использующая такие же аргументы,​ но отображающая индикатор немного иначе.
  
-<​html><​pre>​ +<​html><​pre ​class="​code"​
-$if(%_time_total_seconds%</br> +$if(%_time_total_seconds% 
-,</br> +
-<font color="#​808080">​$progress2(%_time_elapsed_seconds%,​%_time_total_seconds%,​</br> +<font color="#​808080">​$progress2(%_time_elapsed_seconds%,​%_time_total_seconds%,​ 
-10,</br> +10, 
-$get(pbarColour1)$char(9679),​$get(pbarColour2)$char(9679)</br> +$get(pbarColour1)$char(9679),​$get(pbarColour2)$char(9679) 
-)</font></br+)</​font>​ 
-</br> + 
-$rgb()'​ '</br> +$rgb()'​ ' 
-$muldiv(%_time_elapsed_seconds%,​100,​%_time_total_seconds%)</br> +$muldiv(%_time_elapsed_seconds%,​100,​%_time_total_seconds%) 
-' %'</br>+' %'
 ) )
 </​pre></​html>​ </​pre></​html>​
Строка 84: Строка 85:
 Теперь настала пора собрать все кусочки в одно целое, и еще сделать 2 вещи. Во-первых,​ вставить несколько разделителей между секциями,​ для этого нам прекрасно подойдут пробелы. И, во-вторых,​ определить переменную для красного цвета во второй секции (часть технической информации),​ для того чтобы еще более разделить секции. Ниже приведен законченный скрипт. Теперь настала пора собрать все кусочки в одно целое, и еще сделать 2 вещи. Во-первых,​ вставить несколько разделителей между секциями,​ для этого нам прекрасно подойдут пробелы. И, во-вторых,​ определить переменную для красного цвета во второй секции (часть технической информации),​ для того чтобы еще более разделить секции. Ниже приведен законченный скрипт.
  
-<​html><​pre>​ +<​html><​pre ​class="​code"​
-$puts(AltColour,​$rgb(126,​16,​16))</br> +$puts(AltColour,​$rgb(126,​16,​16)) 
-$puts(pbarColour1,​$rgb(126,​16,​16))</br> +$puts(pbarColour1,​$rgb(126,​16,​16)) 
-$puts(pbarColour2,​$rgb(170,​170,​170))</br> +$puts(pbarColour2,​$rgb(170,​170,​170)) 
-</br> + 
-<font color="#​808080">​$if($strcmp(%codec%,'​ATSC A/​52'​),'​Dolby Digital AC3',</br> +<font color="#​808080">​$if($strcmp(%codec%,'​ATSC A/​52'​),'​Dolby Digital AC3',​ 
-$if($info(lame_version),'​Lame MP3',</br> +$if($info(lame_version),'​Lame MP3',​ 
-$if($strcmp(%codec%,'​FLAC'​),'​FLAC lossless',​</br> +$if($strcmp(%codec%,'​FLAC'​),'​FLAC lossless',​ 
-$if($strcmp(%codec%,'​PCM'​),'​PCM uncompressed',​</br> +$if($strcmp(%codec%,'​PCM'​),'​PCM uncompressed',​ 
-%codec%</br> +%codec% 
-))))</​font></br+))))</​font>​ 
-</br> + 
-$get(AltColour)' ​  '​</br> +$get(AltColour)' ​  '​ 
-</br> + 
-<font color="#​808080">​[%bitrate%'​ kbit/​s'​]['​ '​%samplerate%'​ Hz']</br> +<font color="#​808080">​[%bitrate%'​ kbit/​s'​]['​ '​%samplerate%'​ Hz'] 
-$ifgreater(%channels%,​2,​</br> +$ifgreater(%channels%,​2,​ 
-' '​%channels%'​ channels',​</br> +' '​%channels%'​ channels',​ 
-[' '​%channels%])</​font></br+[' '​%channels%])</​font>​ 
-</br> + 
-$rgb()' ​  '​</br> +$rgb()' ​  '​ 
-</br> + 
-<font color="#​808080">​%_time_elapsed%['​ of '​%_time_total%]</​font></br+<font color="#​808080">​%_time_elapsed%['​ of '​%_time_total%]</​font>​ 
-</br> + 
-' ​  '​</br> +' ​  '​ 
-</br> + 
-// progress bar</br> +// progress bar 
-<font color="#​808080">​$if(%_time_total_seconds%</br> +<font color="#​808080">​$if(%_time_total_seconds% 
-,</br> +
-$progress2(%_time_elapsed_seconds%,​%_time_total_seconds%,​</br> +$progress2(%_time_elapsed_seconds%,​%_time_total_seconds%,​ 
-10,</br> +10, 
-$get(pbarColour1)$char(9679),​$get(pbarColour2)$char(9679)</br> +$get(pbarColour1)$char(9679),​$get(pbarColour2)$char(9679) 
-)</br> +
-</br> + 
-$rgb()'​ '</br> +$rgb()'​ ' 
-$muldiv(%_time_elapsed_seconds%,​100,​%_time_total_seconds%)</br> +$muldiv(%_time_elapsed_seconds%,​100,​%_time_total_seconds%) 
-' %'</br> +' %' 
-)</br></​font>​ +)</​font>​ 
-</br> + 
-// paused status</br>+// paused status
 <font color="#​808080">​$if(%_ispaused%,​$char(9)'​pause {on} '​)</​font>​ <font color="#​808080">​$if(%_ispaused%,​$char(9)'​pause {on} '​)</​font>​
 </​pre></​html>​ </​pre></​html>​
Строка 150: Строка 151:
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
- 
foobar2000/tagz/tutorial/script_bars.1149651731.txt.gz · Последние изменения: 2006/06/08 12:24 (внешнее изменение)