foo_uie_mega_panel_splitter

Список разделов foobar2000 Плагины

Описание: Все о плагинах, компонентах, расширениях

Сообщение #1 kgena_ua » 28.06.2015, 14:49

Интересный плагин, на мой взгляд. Взял с www.hydrogenaud.io.
http://1drv.ms/1EbzBou

Добавляем после установки плагина панель Mega_Panel_Splitter.
Правой клавишей по панели - Add Panel.
Спойлер
Безымянный.png

Добавляем панели. Для примера добавил две WSH панели.
Configure..., откроется окно похожее на WSH.
Спойлер
Безымянный2.png

Кнопка Splitter (внизу слева) - окно Splitters Settings... .
Видим две панели, которые я добавил. Двойной клик откроются настройки панели.
Я поставил такие:
Спойлер
Безымянный3.png
Безымянный3.png (25.17 КБ) Просмотров: 6478

Теперь есть возможность включать и отключать эти панели:
pss.GetPanel(0).Show();
pss.GetPanel(0).Move(0, 50, ww, wh - 50, true);
pss.GetPanel(1).Show(false);

Сделал на левую клавишу.
Нужно разбираться. Документации никакой. Может там еще что есть.
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #2 kgena_ua » 29.06.2015, 18:09

Demo foobar2000_foo_uie_mega_panel_splitter
http://rghost.ru/65Nr9TBDy
Демо-версия для возможного способа переключений панелей (анимация), на примере - WSH Panel Mod, Панель Фонотеки, Graphical Browser, Playlist switcher, Library Tree, Explorer Tree, используя foo_uie_mega_panel_splitter
Безымянный.png
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #3 megane68 » 02.07.2015, 16:32

kgena_ua, Не понял как вместо размеров указывать формулы, к примеру - координаты Х = ширина панели разделить на 3?
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #4 kgena_ua » 02.07.2015, 17:52

Demo foobar2000_foo_uie_mega_panel_splitter
http://rghost.ru/8RsWNyCnS
Плавная замена одной панели (библиотеки и т.д.) не другую - смещение влево или вправо.
Сборка портативная. Скачать и настроить библиотеку.
Безымянный.png
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #5 megane68 » 02.07.2015, 18:03

kgena_ua,
И где там смотреть? В Splitter Setting всё по нулям.
В общем я понял, что ничего не понял.
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #6 kgena_ua » 02.07.2015, 18:20

megane68,
Безымянный.png
Безымянный.png (9.52 КБ) Просмотров: 6257

Вот так будет удобней:
Верхняя панель (foo_uie_wsh_panel_mod), это просто переключатель номера панели.
Нижняя (foo_uie_mega_panel_splitter), там скрипт отображения панелей. Тут задаются координаты и само движение.
Попасть в скрипт - пр.кл. на серую область - Configure... (если ниже, то попадете в настройки выводимых панелей).
Splitter Settings - список выводимых панелей (В Splitter Setting всё по нулям).
Координаты для панелей:
c_x и c_ww - X и ширина текущей панели;
n_x и n_ww - X и ширина следующей панели;
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #7 megane68 » 02.07.2015, 20:50

kgena_ua:Координаты для панелей:
c_x и c_ww - X и ширина текущей панели;
n_x и n_ww - X и ширина следующей панели;
Ну вот меня это и интересует.
Как я понимаю в Splitter Settings задаются координаты всех панелей на MPS.
Вот как для них задать формулу? Например c_ww разделить на 3 и т. д.
Синтаксис такое предусматривает?
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #8 kgena_ua » 02.07.2015, 22:08

megane68,
Ширина панелей должна быть равной ширине mega panel splitter те.е ww = window.Width;.
Как работает скрипт, например движение вправо:
1 - текущая панель имеет с_x = 0 и с_ww = ww;
2 - при выборе новой панели, которую необходимо показать
включается новая панель с n_x = 0 - window.Width т.е ее не видно т.к. она находится слева с координатами n_x = - ww, и n_ww = ww;
3 - затем движение:
для текущей панели c_x растет с 0 до ww, т.е. уезжает вправо в невидимую область (c_x = ww);
для новой панели n_x растет с -ww до 0, т.е. появляется слева пока не заполнит всю область (n_x = 0 а ширина = ww);

Изменить ширину выводимых панелей можно изменив ширину панели mega panel splitter через Splitter Settings...
Вы раньше попадали в Splitter - пустышку.
Чтоб попасть в нужный Splitter я изменил конфиг (синяя область).
foobar2000_foo_uie_mega_panel_splitter.fcl
(35.45 КБ) Скачиваний: 657

Установка:
- обновляем *.fcl;
- закрываем Foobar;
- чистим папку foobar2000_foo_uie_mega_panel_splitter\maybe\settings\;
- запускаем Foobar.
Безымянный.png


Безымянный2.png


Хотя если изменять не только c_x и n_x а и c_ww и n_ww .......
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #9 megane68 » 02.07.2015, 23:13

kgena_ua,
То есть MPS может создавать только что- то типа перелистывающихся страниц?
Блин, зачем тогда сплиттером надо было называть? Вечно эти японцы/китайцы напутают. :)
Я то думал, что на MPS можно создать несколько панелей одновременно, чтобы не вещать каждую группу на PSS.
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #10 kgena_ua » 02.07.2015, 23:23

megane68, нет можно. Меня заинтересовала возможность анимации. Я решил ее пока только таким образом. Пока .... :wink:.
Я найду сборку , где решена возможность переключения различных панелей, т.е. несколько панелей одновременно
Это на hydrogenaud, только я не помню как тема называлась.
Последний раз редактировалось kgena_ua 02.07.2015, 23:31, всего редактировалось 1 раз.
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #11 megane68 » 02.07.2015, 23:29

kgena_ua, ОК!
Хорошо бы надыбать хоть какую- то документацию.
Хотя китайцы они себе на уме. Никогда не расскажут. :wink:
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #12 kgena_ua » 02.07.2015, 23:37

megane68, да, документации пока никакой.
Вот:
http://www.hydrogenaud.io/forums/index.php?showtopic=63984&st=2200&start=2200
FooTube v2
zeremy Jun 27 2015, 19:20

Там правая часть на MPS .
Т.е. при нажатии на кнопку такие-то панели (панель) закрыть:
pss.GetPanel(панель такая).Show(false);
pss.GetPanel(панель такая).Show(false);
....
А другие открыть (панель) :
pss.GetPanel(панель такая).Show();
pss.GetPanel(панель такая).Move(x,y,ww, wh, true);
pss.GetPanel(панель такая).Show();
pss.GetPanel(панель такая).Move(x,y,ww, wh, true);

///
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #13 megane68 » 03.07.2015, 20:52

kgena_ua, Вы меня не так поняли.
Я имел в виду не переключение панелей, а их одновременное отображение в MPS, но чтобы размеры панелей задавались не числами, а математическими формулами типа: ww разделить на 3 и т. д.
Такие есть примеры?
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #14 kgena_ua » 03.07.2015, 23:48

megane68, да не проблем, я почему зациклился на переключении, потому, что тут намного проще чем в PSS гоняю эту библиотеку с субботы и пока доволен.
Давайте разместим три панели, ширина каждой рана ww / 3 а высота wh.
pss.GetPanel(панель 0).Show();
pss.GetPanel(панель 0).Move( 0, 0, ww / 3, wh, true);
pss.GetPanel(панель 1).Show();
pss.GetPanel(панель 1).Move( ww / 3 * 2, 0, ww / 3 , wh, true);
pss.GetPanel(панель 2).Show();
pss.GetPanel(панель 2).Move( ww / 3 * 3, 0, ww / 3, wh, true);

т.е. примерно так.

Добавлено спустя 1 час 26 минут:
megane68, вот простая сборка. В PSS всего одна панель MPS, где всего три панели: EsPlaylist, Панель Фонотеки и Playlist switcher.
Размеры правда задавал в процентах.
Спойлер
Безымянный.png

Безымянный2.png
и короткий скрипт в MPS.
http://rghost.ru/8bNhTDdLm
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #15 megane68 » 04.07.2015, 16:50

kgena_ua, вот это уже кон что.
А весь синтаксис математических действий как выглядит?
И ещё. Не врубаюсь почему на своём плеере я не могу вызвать Splitter Settings? Где оно включается?
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #16 kgena_ua » 04.07.2015, 20:26

megane68, что имеется "" синтаксис математических действий как выглядит" - он такой-же как и в WSH. Если "математические действия" который в том, что я выложил, то там только:
Спойлер
function RGB(r, g, b) {
return (0xff000000 | (r << 16) | (g << 8) | (b));
}

function on_paint(gr) {
gr.FillSolidRect(0, 0, ww, wh + 5, RGB(0,10,20));

pss.GetPanel(0).Show();
pss.GetPanel(0).Move( 0, 0, ww / 100 * 60, wh, true);
pss.GetPanel(1).Show();
pss.GetPanel(1).Move( ww / 100 * 60, 0, ww / 100 * 20 , wh, true);
pss.GetPanel(2).Show();
pss.GetPanel(2).Move( ww / 100 * 80 , 0, ww / 100 * 20, wh, true);
}

function on_size() {
ww = window.Width;
wh = window.Height -10;
}
megane68:на своём плеере я не могу вызвать Splitter Settings?
На каком на своем, не видя трудно ответить.
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #17 megane68 » 04.07.2015, 20:30

kgena_ua:На каком на своем, не видя трудно ответить.
Просто на чистый профиль добавил MPS и не могу понять почему Configure не вызывается в Layout и ПКМ.
Извиняюсь, Configure не вызывается никак.

Добавлено спустя 3 минуты 36 секунд:
Что удивительно, конфигурационный файл не появляется в папке configuration.
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #18 kgena_ua » 05.07.2015, 00:32

megane68, мне так трудно ответить , выложи сборку.
Не получается попасть сюда:
Безымянный.png
Безымянный.png (13.12 КБ) Просмотров: 5990
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

Сообщение #19 megane68 » 05.07.2015, 13:35

kgena_ua, http://rghost.ru/7JmPQPpXl

Добавлено спустя 24 секунды:
kgena_ua:Не получается попасть сюда:
Ага.
megane68 M
Репутация: -18
С нами: 15 лет 9 месяцев

Сообщение #20 kgena_ua » 05.07.2015, 22:06

megane68, у меня уже голова распухла, плюс пиво. Уже скачал чистый Foobar. Разберусь.
kgena_ua M
Автор темы
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 7 месяцев

След.

Вернуться в Плагины