Panels
и кликните по выпадающему списку ниже.Страница в разработке…
Новый интерфейс, объединяющий возможности Track Info Panel и Single Columns Playlist с поддержкой собственных панелей. Использует новые графические возможности Windows Vista, и имеет шанс стать популярным интерфейсом. Плагин находится в активной разработке (стадия BETA-версий).
$panel(ID,Name,x,y,width,height,options)
$glass(left,right,top,bottom)
Установка стандартна: скачайте последнюю версию и разархивируйте dll-файл в папку компонентов плеера. При апдейте убедитесь, что сохранили старые конфигурации Panels UI, сделайте бекап.
layout globals will change between layouts and are saved in the .pui, while user globals stay the same for all layouts.
Чтобы открыть окно конфигурации, кликните правой кнопкой по заголовку foobar2000 и выберите Settings… из контекстного меню. Альтернативный вариант: Ctrl+P → Display → PanelsUI → Edit Layout
.
Для облегчения кодирования начиная с версии 0.3.0 в область кодирования встроен редактор с возможностью подсветки на базе scintilla.
Чтобы изменить размер шрифта в области редактирования, нажмите Ctrl+колесо мышки вверх/вниз.
Табуляция и пробелы игнорируются.
Пример:
$if(%isplaying%, Playing , Not Playing )
Если вы хотите добавить пробелы в код, то заключите их в символы апострофа «'».
test ' 'test test
Позволяют вам экономить ресурсы путем разделения кода на разные секции в зависимости от требований по прорисовке изображений или другой информации. Доступно четыре различных типа прорисовки: global, background, per track и per second.
Примечание: It has to be the exact same syntax (capitalization, etc.)
Пример:
// Global $if($meta_test(album artist),$puts(album_is_va,1)) $puts(fontStyle,$font(Calibri,10,bold,0-255-128)) [[...]] // Background $imageabs(,,imagesbground.png,) [[...]] // PerTrack $button(0,0,0,0,0,0,imagesplay.png,imagesplay_hover.png,'Play or Pause',) [[...]] // PerSecond %playback_time% [[...]]
$panel(ID,Name,x,y,width,height,options)
* ID — идентификатор. * Name — название компонента. Для дополнительного синтаксиса обратитесь к выпадающему меню1) в окне конфигурирования Panels UI. * x & y — указывают позицию панели (значения могут быть отрицательными). * width & height — указывают размер панели. * options — пока недоступны.
Следующий пример создаст SCPL2) с координатами 5,5 и размером 200px на 300px. В верхнем правом углу экрана редактирования (где список панелей) появится новая панель «Identification»; нажав на кнопку Configure
, вы сможете редактировать код SCPL.
$panel(Identification,Single Column Playlist,5,5,200,300,)
Добавить свои границы3) со «стеклянным» эффектом Windows Vista:
$glass(left,right,top,bottom)
Вычисление математических функций.
$eval()
Примечание: эта функция может нестабильно работать4) в субпанелях Track Display.
Пример:
$eval(**{**%_width%**/**3**}**+$get(column.offset))
$setpvar(name,value) $getpvar(name)
Пример:
Код:
$getpvar(foo,bar) $setpvar(foo,bar) $getpvar(foo) $getpvar(Foo) $setpvar(foo,2000) $getpvar(foo)<\/code>
На выходе:
[[unknown|pvar]] bar bar 2000
Вы можете настроить три возможных раскладки используя PVAR'ы.
$select($getpvar(display), //Код первой панели , //Код второй панели , //Код третьей панели )
$align(H,V)
Параметр | Определение | Примечание |
---|---|---|
(H)orizontal | Горизонально. Может принимать значения left, center и right (слева, по центру или справа). | |
(V)ertical | Вертикально. Может принимать значения top, middle и bottom (сверху, по середине или снизу). | top будет проверяться на перезапись. |
Если с помощью этой функции выравнять несколько раз подряд (например, $align(left,middle)
больше чем один раз), то выравнивание будет происходить с той же точки отсчета.
Примечание: эта функция нормально работает только в секции PerSecond.
$alignset() - $alignrel(H,V)
Параметр | Определение | Примечание |
---|---|---|
(H)orizontal | Горизонтально. Может принимать значения left, center и right (слева, по центру или справа). | |
(V)ertical | Вертикально. Может принимать значения top, middle и bottom (сверху, по середине и внизу). | top будет проверяться на перезапись. |
$alignset() | Устанавливает точку отсчета для $alignrel(H,V) . | Может применяться как замена функции $char(10) , работает для всех следующих $alignrel(H,V) . |
Например:
$alignrel(left,middle) //Линия1_слева// $alignrel(center,middle) //Линия1_по_центру// $alignset() $alignrel(right,middle) //Линия2_справа//
$alignabs(X,Y,w,h,H,V)
Параметр | Определение | Примечание |
---|---|---|
X & Y | Координаты позиции границ прямоугольника в котором будет происходить выравнивание | Значения могут быть отрицательными. |
(W)idth & (H)eight | Ширина и высота прямоугольника в котором будет происходить выравнивание текста. | |
H & V | см. таблицу выше |
Примечание: $alignabs(H,V) может быть использована для относительного выравнивания без проверки на перезапись.
$font(NAME,SIZE,OPTIONS,COLOR)
Параметр | Определение | Примечание |
---|---|---|
NAME | Название шрифта. | |
SIZE | Размер шрифта. | |
OPTIONS | Опции. Могут иметь значение bold, italic, underline, strikeout, nocleartype, glow- и shadow | Также, возможно совмещать значения, например, «bolditalicunderlineglow-» даст комбинацию этих эффектов. Значения по-умолчанию для glow — glowexpand-2 и glowblur-2. Подробности в таблице ниже. |
COLOR | Цвет. Цвет шрифта указывается в пространстве R-G-B. | Например, 255-0-0 даст красный цвет. Используйте SYSCOL-x для использования стандартных цветов из вашей темы Windows (msstyle). X — это номер цвета от 0 до ?. |
Параметры OPTIONS:
Следующий пример создаст шрифт Arial, размером 10 пикселей, жирный, с синим эффектом glow и системным цевтом номер #15 (фон):
$font(Arial, 10, bold shadow glow-0-0-255,SYSCOL-15)
$puts(font,$font(Calibri,9,bold,100-100-100))
). Восстанавливать значения необходимо после использования функции $alignrel
, но не перед ней.$get
не оказывает никакого воздействия на $calcwidth/$calcheight
. Эти функции используют последнее реальное значение параметров $font
, даже если их задавали функцией $puts
.$alignabs
.Примеры шрифтов и код:
Поддерживает форматы изображений: PNG, BMP, GIF,JPG и ICO.
$imageabs(X,Y,imageName,imageOptions)
Параметр | Определение | Примечание |
---|---|---|
X & Y | Абсолютная позиция изображения с отсчетом от верхнего левого угла. | |
imageName | Относительный путь к изображению из папки, где хранится конфигурация плеера. | Если отключена поддержка профилей, то папка конфигурации будет той же, куда установлен плеер. Однако, если включена поддержка профилей, то папка будет расположена в C:\Documents and Settings\ИМЯ ПОЛЬЗОВАТЕЛЯ\Application Data\foobar2000\ |
imageOptions | Может включать в себя другие параметры, влияющие на представление изображения. | Описание параметров ниже. |
Параметры imageOptions:
Пример:
$imageabs(0,0,%папка_конфигурации_foobar%\картинки\моя_картинка.png,flow alpha-150)
$imageabs2(areaWidth,areaHeight,imageLeft,imageTop,imageWidth,imageHeight,areaLeft,areaTop,imagePath,imageOptions)
Параметр | Определение | Примечание |
---|---|---|
areaWidth & areaHeight | Параметры, управляющие размером изображения. Позволяют только уменьшать изображение. | |
imageLeft & imageTop | Указывают на позицию уменьшенного изображения от левого верхнего угла. | imageLeft — горизонтальная позиция уменьшенного изображения, imageTop — вертикальная позиция не уменьшенного изображения. Если у вас есть изображение в формате JPEG размером 300×300 пикселей, и с помощью функций areaWidth и areaHeight оно уменьшено до размера 150×150 пикселей (imageLeft = 75 and imageTop = 150), то точка в верхнем левом углу финального изображения будет центром оригинального изображения 300×300. |
imageWidth & imageHeight | Обрезание ширины и высоты, соответственно обрезание сжатого изображения. | Значения, которые больше, чем расстояние от обрезанного угла до границ уменьшенного изображения будут игнорироваться (обрезание как таковое будет пропущено). При значениях равных или больших, чем 32768, изображение вовсе не будет показано. |
areaLeft & areaTop | Расстояние, соответственно, влево и вниз, от верхнего левого угла панели до верхнего левого угла финального уменьшенного и обрезанного изображения. | |
imagePath | Абсолютный или относительный путь к папке с изображениями. | Для относительных путей нужно поставить слеш ('/') в начале пути. (например, «/путь\до\изображение.jpg»). Когда будете использовать относительные пути, учтите, что корневая папка — это инсталляционная папка foobar2000. |
imageOptions | Опции изображения. | Описание параметров ниже. |
Параметры imageOptions:
Поворот X | Поворот Y | Поворот XY | Нет | |
---|---|---|---|---|
Поворот 90° CW | 5 | 7 | 3 | 1 |
Поворот 180° CW | 6 | 4 | 0 | 2 |
Поворот 270° CW | 7 | 5 | 1 | 3 |
Нет | 4 | 6 | 2 | 0 |
Более просто:
$imageabs2(Размеры сжатия,Положение угла обрезания,Размеры обрезания,Расположение панели,Путь,Опции изображения)
Пример:
$imageabs2(48,48,0,0,48,48,20,20,C:\Program Files\foobar2000 v0.9\icons\$replace(%filename_ext%,%filename%'.',)_48x48.png,alpha-192)
Уменьшить изображение до 24×24 (изначальный размер 48х48) без обрезания:
$imageabs2(**24**,**24**,0,0,**24**,**24**,20,20,/icons\$replace(%filename_ext%,%filename%'.',)_48x48.png,alpha-192)
$drawrect(X,Y,W,H,brushColor-R-G-B penColor-R-G-B OPTIONS)
Параметр | Определение | Примечание |
---|---|---|
X & Y | Позиция прямоугольника относительно верхнего левого угла. | Если эти параметры пропустить или выставить на ноль, то они заменятся минимальными значениями относительно $pad . |
W & H | Определяет ширину и высоту прямоугольника. | Если эти параметры пропустить или выставить на ноль, то они заменятся минимальными значениями относительно $pad . |
brushColor & penColor | Цвета фона и границы в пространстве R-G-B. | Например, 255-0-0 даст красный цвет. Параметры могут быть отключены с помощью -null (например, brushColor-null). Используйте SYSCOL-x для использования стандартных цветов из вашей темы Windows (msstyle). X — это номер цвета от 0 до ?. |
OPTIONS | Опции прямоугольника. | Описание параметров ниже. |
Параметры OPTIONS:
При использовании сложных эффектов, таких как alpha blending или blurring, прямоугольник рисуется только используя цвет границы. Если вы укажите цвет фона, то возьмется цвет границы.
Пример:
$drawrect(,,,,pencolor-0-0-255 brushcolor-null width-2 alpha-100 blur-2)
%_trackinfo_mode% %_trackinfo_notrack%
Следующие функции возвращают ширину и высоту текста:
$calcwidth(//Text1//) $calcheight(//Text1//)
$calcwidth(%artist%) не возвращает не длину //%artist%//, а скорее ширину текста, хранимого в теге artist.
Если курсор в плейлисте стоит на элементе (треке).
%_selected%
Пример:
$if(%_selected%,$drawrect(2,1,$sub(%_width%,4),16,brushcolor-233-243-247 pencolor-203-233-246))
$fileexists(//Путь к файлу//)
Следующий пример ищет folder.* где расположены музыкальные файлы:
$if($fileexists($replace(%path%,%filename_ext%,folder.*), Yes , No )
%_height% %_width%