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

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


foobar2000:plugins:ui:columnsui:playlist_switcher

Columns UI: панель выбора плэйлистов (Playlist Switcher)

Оригинал статьи (нем.)

Панель Playlist switcher отображает список всех Ваших плейлистов, переключение между ними осуществляется однократным нажатием левой кнопки мыши. Данная панель представляет собой неплохую альтернативу вкладкам Playlist tabs. Ее настройка производится здесь: File→Preferences→Columns UI→Playlist switcher.

рис. 1

Добавить новый плэйлист можно либо при помощи пункта меню File→New Playlist, либо посредством двойного нажатия на левую или однократного нажатия на среднюю кнопку мыши на свободной области панели. Чтобы переименовать плейлист, нужно дважды нажать на левую кнопку мыши, а удаляется плейлист однократным нажатием на среднюю кнопку мыши. Вы также можете перемещать плейлисты, меняя их очерёдность в списке, используя функцию Drag & Drop. Все эти функции доступны так же и из контекстного меню, вызываемого опять же кликом правой кнопкой мыши на названии плейлиста.

Взаимодейcтвие посредством Drag & Drop

Playlist switcher позволяет добавлять копозиции из активного плейлиста в любой неактивный при помощи правой кнопки мыши. Настройки Drag & Drop находятся в одноимённой вкладке Display→Columns UI→Playlist switcher→Drag & Drop. Здесь Вы можете установить автоматическую активацию «целевого» плейлиста.

При импорте из Windows Explorer группы файлов они будут добавлены в указанный Вами плейлист. Если Вы перетащите папку (группу файлов) на свободную область панели, Playlist switcher автоматически создаст отдельный плейлист. Название плейлиста по умолчанию определяется названием альбома/папки. Вы можете использовать коды foobar2000 для установки своей модели названия плейлиста. Но при этом у Вас должна быть установлена галочка Compare following string and use output for name if identical for all files dropped во вкладке Drag & Drop. В этом случае имя плейлиста будет создано с учётом этой модели. Например, строка %artist% - %album% устанавливает проверку по исполнителю и альбому. Если все композиции будут иметь одинаковые по содержанию поля ARTIST и ALBUM, будет автоматически создан плейлист с таким именем. Есть возможность прописать несколько строк кода. Для этого используйте символ «\» в конце каждой строки.

Использование Titleformatting для названий плейлистов

По умолчанию названия плейлистов имеют простую структуру - на панели Playlist switcher отображаются только их имена. Опытные пользователи могут использовать всю мощь TAGZ для отображения такой полезной информации как количество композиций или общая продолжительность плейлиста в минутах.

Для этого установите галочку Use titleformatting for playlist title in panel. Активировав эту опцию, Вы включите окно для ввода данных, расположенное ниже. Обратите внимание, что это не влияет на считывание тегов из аудиофайлов в самих плейлистах. То, что Вы введёте в этом окне будет отображаться только на панели Playlist switcher. Кромо того, Вы можете использовать и дополнительные (работающие только в этой панели) поля и фунции, приведённые ниже.

Доступные поля

  • %title% - отображает имя плейлиста, т.е. то, что вы видете в названиях закладок
  • %is_locked% - выводит «1», если работа с плейлистом заблокирована, как в случае с автоплейлистами. Эту переменную следует использовать с функцией $if(). См. пример ниже.
  • %lock_name% - выводит тип заблокированного плейлиста, т.е. применительно к автоплейлистам эта переменная будет выводить «Autoplaylist».
  • %size% - выводит количество композиций в данном плейлисте
  • %length% - возвращает общую продолжительность плейлиста в виде DD:HH:MM:SS
  • %is_active% - возвращает «1», если данный плейлист активен в настоящий момент.
  • %is_playing% - возвращает «1», если в настоящий момент проигрывается композиция из данного плейлиста.

Источник (англ.)

Примеры:

Для начала приведём самый простой вариант. Этот пример выводит лишь название плейлиста:

%title%

Следующий код выводит название плейлиста и его общую продолжительность. Функция $tab() выравнивает вторую часть кода (общую продолжительность плейлиста) по правому краю.

%title%
$tab()
%length%

Идем дальше. Этот код выводит название плейлиста, количество композиций и общую продолжительность. Количество композиций отображается в скобках и окрашивается в серый цвет. Скобки являются элементами синтаксиса языка, поэтому они взяты в кавычки. Функция $tab() выравнивает данные об общей продолжительности плейлиста по правому краю и автоматически сбрасывает параметры цвета. Поэтому эти данные снова окрасятся в чёрный цвет.

%title%
$rgb(144,144,144) '('%size%')'
$tab()
%length%

Следующий код, в том случае, если плейлист заблокирован (locked) будет ставить перед его названием букву «х». Вы, конечно, можете сменить её на любой другой символ.

$if(%is_locked%,x, )
%title%

Данный код окрашивает имя плейлиста, который содержит проигрываемую в данный момент композицию, в зелёный цвет. И опять же Вы можете поменять его параметры на свое усмотрение.

$if(%is_playing%,$rgb(0,128,0,0,128,0))
%title%

Пустые строки, разделительные линии, заголовки

Тем пользователям, у которых очень много плейлистов, могут пригодиться пустые строки (отступы для разделения плэйлистов), горизонтальные разделители и категории. Всё это можно реализовать посредством умелого использования TAGZ в строке названия плейлиста.

Я приведу несколько вариантов подобной работы. Мой первый пример позволяет создавать пустые строки. Вначале код проверяет, есть ли у плейлиста название. Если есть, то оно выводится вместе с общей продолжительностью. Если же названия нет, то остаётся пустая строка, использование которых позволит Вам представить в удобном виде список всех своих плейлистов.

$if($greater($len(%title%),0),
%title%
$tab()
%length%)

Второй пример: если в названии плейлиста присутствует только один символ «-», то код автоматически проводит разделительную линию, в противном случае код выводит название плейлиста и его общую продолжительность.

$if($strcmp($left(%title%,1),-),
$rgb(144,144,144)
$substr(%title%,2,$len(%title%)),
%title%
$tab()
%length%)

В последнем примере, я соединил два предыдущих:

$if($greater($len(%title%),0),
$if($strcmp(%title%,-),
$rgb(232,232,232,178,181,190)
$repeat($char(8212),100),
$if($strcmp($left(%title%,1),-),
$rgb(144,144,144)
$substr(%title%,2,$len(%title%)),
%title%
$tab()
$rgb(144,144,144)
%length%)))

И вот что у меня получилось:

рис. 2

Всё, что мы проделали касается только стиля отображения списка плейлистов. При этом, мы не затрагивали их содержимое, т.е. сами композиции.

Вы можете создавать заблокированные пустые автоплейлисты, используя, к примеру, модель NOT %filename% HAS «.».

~~DISCUSSION~~

foobar2000/plugins/ui/columnsui/playlist_switcher.txt · Последние изменения: 2007/01/03 11:18 (внешнее изменение)