AIMP Forum

Разное => Предложения (архив) => Архив => Реализовано в AIMP v4.0 => Topic started by: ScrollUnLock on February 03, 2013, 10:57:56

Title: [Запланировано] Создание выпадающего меню
Post by: ScrollUnLock on February 03, 2013, 10:57:56
Предлагаю добавить возможность создания своего выпадающего меню для кнопок

Я придумал - можно сделать пользовательский провайдер в его настройках задаётся количество строк и создаются связи для каждого пункта
(https://www.aimp.ru/forum/index.php?action=dlattach;topic=38833.0;attach=42630)
А если нужен разделитель в связях пропустить пункт.
Title: Re: Создание выпадающего меню
Post by: Tarik on February 03, 2013, 17:38:54
Как ты себе это представляешь?
Title: Re: Создание выпадающего меню
Post by: ScrollUnLock on February 03, 2013, 17:44:14
Как ты себе это представляешь?
Отдельное меню для создания выпадающего меню где указывается количество строк, каждой строке задается определенная функция как это делается у обыкновенных кнопок
Title: Re: Создание выпадающего меню
Post by: Soolo on February 03, 2013, 17:46:03
Отдельное меню для создания выпадающего меню где указывается количество строк, каждой строке задается определенная функция как это делается у обыкновенных кнопок
будет проблема с локализацией таких кнопок (я про всплывающие подсказки)
но в целом, я не против сабжа
Title: Re: Создание выпадающего меню
Post by: ScrollUnLock on February 03, 2013, 17:51:59
будет проблема с локализацией таких кнопок (я про всплывающие подсказки)
но в целом, я не против сабжа
Ну а, что если использовать определенные "шаблоны"
Title: Re: Создание выпадающего меню
Post by: ZeoN7 on February 02, 2014, 19:29:37
Как на картинке ниже

(https://www.aimp.ru/forum/index.php?action=dlattach;topic=38833.0;attach=38958)
Title: Re: Создание выпадающего меню
Post by: Tarik on February 02, 2014, 20:28:11
Как на картинке ниже

(https://www.aimp.ru/forum/index.php?action=dlattach;topic=38833.0;attach=38958)
за такой вариант
Title: Re: Создание выпадающего меню
Post by: Aleksandr009 on February 11, 2014, 16:39:44
(https://www.aimp.ru/forum/index.php?action=dlattach;topic=38833.0;attach=38958)

Я придумал - можно сделать пользовательский провайдер в его настройках задаётся количество строк и создаются связи для каждого пункта
(https://www.aimp.ru/forum/index.php?action=dlattach;topic=38833.0;attach=42630)
А если нужен разделитель в связях пропустить пункт.
Title: Re: Создание выпадающего меню
Post by: Tarik on February 11, 2014, 17:05:58
А что - вариант не плох. И с локализацией проблем не будет.
+1
Title: Re: Создание выпадающего меню
Post by: ZeoN7 on February 12, 2014, 14:21:20
отличный вариант, +1
Title: [Повтор] Новый элемент TASEMenu
Post by: Black_AVP on January 23, 2015, 07:09:36
В связи с тем, что в последнее время всё больше появляется кастомизированных скинов, полагаю, этот элемент был бы очень востребован. Это избавило бы от необходимости городить кривые костыли, имитируя окна/меню настроек скина и привело бы всё к одному стилю.
Обозвать элемент можно как угодно: TASEMenu, TASECustomMenu, TASEUserMenu - не суть важно.
Как мне видится реализация этого в редакторе:
- возможно, потребуется отдельная вкладка, а может, можно обойтись уже имеющейся "ContextMenu", поскольку графического отображения этот элемент не требует (графика вся заимствуется от ContextMenu, а древовидная структура как нельзя лучше подходит для создания пользовательского меню.
- в контекстное меню окна дерева добавить команды:
   New Menu - может понадобится несколько меню;
   New SubMenu - элемент, наверное, с одним лишь свойством Caption (понятно для чего);
   New Item - функционально аналог кнопки. Здесь, наверное, нужно еще и свойсво Checked - в таком случае этот элемент становится аналогом TASESwitch;
   New RadioGroup - группа, объединяющая в себе RadioButtons с зависимым переключением;
   Delimiter - возможно.
- и важный момент: чтоб созданные меню появилось в выпадающем списке PopupMenu тех элементов, которые обладают этим свойством.

Предвижу возражения по поводу локализации. Ну, пока, хотя бы, на английском - международном.
Title: Re: Создание выпадающего меню
Post by: Artem on January 27, 2015, 17:01:32
Хочу поднять тему вновь. Вопрос мой звучит так: хватит ли текущего набора команд и провайдеров для реализации тех контекстных меню, что вы хотели сделать?
Title: Re: Создание выпадающего меню
Post by: Soolo on January 27, 2015, 17:13:32
Хочу поднять тему вновь. Вопрос мой звучит так: хватит ли текущего набора команд и провайдеров для реализации тех контекстных меню, что вы хотели сделать?
Меню с возможностью вызова любого окна скина - вот это мне не помешало бы для одного из скинов.
Как я понял, это можно будет реализовать с помощью существующего набора.
Title: Re: Создание выпадающего меню
Post by: Artem on January 30, 2015, 14:42:43
Как я понимаю, фича не особо востребована в современных реалиях?
Title: Re: Создание выпадающего меню
Post by: ScrollUnLock on January 30, 2015, 15:16:25
Как я понимаю, фича не особо востребована в современных реалиях?
Как мне кажется с текущим трендом на минималистичность, необходимость в выпадающих меню никуда не денется
Title: Re: Создание выпадающего меню
Post by: ZeoN7 on January 30, 2015, 15:42:28
Тоже так считаю.
Title: Re: Создание выпадающего меню
Post by: ScrollUnLock on January 30, 2015, 15:50:51
К тому же, если в 4ой версии фонетика будет объединена( чего лично очень сильно жду)  то будет необходимость "прятать" кнопки, но не слишком глубоко и вот тут возможность создания выпадающего меню будет очень кстати.
Title: Re: Создание выпадающего меню
Post by: Artem on January 30, 2015, 16:34:31
Как мне кажется с текущим трендом на минималистичность, необходимость в выпадающих меню никуда не денется

В таком случае, я жду ответа на свой предыдущий вопрос:

Вопрос мой звучит так: хватит ли текущего набора команд и провайдеров для реализации тех контекстных меню, что вы хотели сделать?
Title: Re: Создание выпадающего меню
Post by: ZeoN7 on January 30, 2015, 16:37:59
Будет ли возможность делать многоуровневые выпадающие меню?
Title: Re: Создание выпадающего меню
Post by: ScrollUnLock on January 30, 2015, 16:41:34
Хочу поднять тему вновь. Вопрос мой звучит так: хватит ли текущего набора команд и провайдеров для реализации тех контекстных меню, что вы хотели сделать?
Думаю да.
Title: Re: Создание выпадающего меню
Post by: Artem on January 30, 2015, 16:47:07
Будет ли возможность делать многоуровневые выпадающие меню?

Для начала хочется узнать, что нужно скиноделам. Если речь идет только о реализации самого меню (без расширения списка провайдеров) - это одно дело.
P.S Если меню делать, то естественно с вложенными меню.
Title: Re: Создание выпадающего меню
Post by: Tarik on January 30, 2015, 17:09:38
Если пункт меню можно связать с любым из существующих провайдеров (в том числе управлять пользовательскими провайдерами), то думаю, этого будет достаточно.

Для начала хочется узнать, что нужно скиноделам. Если речь идет только о реализации самого меню (без расширения списка провайдеров) - это одно дело.
А что ты имеешь в виду под "без расширения списка провайдеров"?
Title: Re: Создание выпадающего меню
Post by: Artem on January 30, 2015, 17:15:45
А что ты имеешь в виду под "без расширения списка провайдеров"?

Сейчас в родных менюшках полно пунктов, которые не представлены ни одним из провайдеров. Дать к ним доступ весьма проблематично... 
Title: Re: Создание выпадающего меню
Post by: ScrollUnLock on January 30, 2015, 17:43:59
Сейчас в родных менюшках полно пунктов, которые не представлены ни одним из провайдеров. Дать к ним доступ весьма проблематично...
Приведу пример реализации выпадающего меню который мне интересен: В нижней части плейлиста одна кнопка, вызывающая меню с "кнопками" add items, remove items, bookmarks, misc, sort. Поэтому для моей реализации текущих провайдеров должно хватить. А вот к примеру если взять кнопку track repeat, то возникают проблемы, левый клик включает повтор, а правый открывает всплывающее меню с настройками этого самого повтора, соответственно эту кнопку надо выводить в отдельный провайдер.
Title: Re: Создание выпадающего меню
Post by: Tarik on January 30, 2015, 21:45:24
Сейчас есть такие стандартные менюшки:
==============================================================
pmAdd              |   меню добавления файлов/папок (кнопка +)
pmDelete           |   меню удаления (кнопка -)
pmDisplay          |   конт. меню дисплея виз-ции и спектрума / выбор обложки
pmEqualizer        |   меню эквалайзера
pmJump             |   конт. меню прогресс-бара
pmMainMenu         |   главное меню программы
pmManagePlaylist   |   меню управления плейлистами
pmMisc             |   меню Разное
pmOpenVariants     |   конт. меню кнопки Открыть
pmPlaylistList     |   вызывает список плейлистов
pmPlaylistMain     |   конт. меню плейлиста
pmPlaylistTabs     |   конт. меню вкладок плейлистов
pmQuickOptions     |   меню быстрых настроек
pmSorting          |   меню сортировки
pmStopOptions      |   конт. меню кнопки Стоп
pmTray             |   конт. меню трей-иконки
pmUtilites         |   список утилит/подключенных плагинов
==============================================================

Насколько я понял Артема, вопрос в том, есть ли надобность в создании пользовательских меню, в котором нужны будут пункты из стандартных меню.
Лично я считаю, расширять провайдеры не нужно, тем более что для большинства основных пунктов уже есть необходимые провайдеры.
Title: Re: Создание выпадающего меню
Post by: Artem on February 01, 2015, 16:52:55
Было бы здорово, если вы приведете примеры, когда вам потребовалось меню и с какими пунктами при разработке скинов.
Title: Re: Создание выпадающего меню
Post by: ScrollUnLock on February 01, 2015, 17:29:05
Было бы здорово, если вы приведете примеры, когда вам потребовалось меню и с какими пунктами при разработке скинов.
Наподобие того, что я выше приводил?
Title: Re: Создание выпадающего меню
Post by: Artem on February 01, 2015, 21:35:48
Наподобие того, что я выше приводил?

Да
Title: Re: Создание выпадающего меню
Post by: Soolo on February 06, 2015, 11:00:15
Вот ещё вариант развития событий: сложная структура скина и переключение режимов с помощью одного выпадающего меню: (вкл/выкл окон, переключение многостраничных групп и т.д.)
Title: Re: Создание выпадающего меню
Post by: Black_AVP on February 06, 2015, 11:34:18
Для минималистичных скинов, меню - пожалуй, единственный выход, чтоб обеспечить нужный функционал.
Title: Re: Создание выпадающего меню
Post by: Artem on February 06, 2015, 12:42:14
Для минималистичных скинов, меню - пожалуй, единственный выход, чтоб обеспечить нужный функционал.

Я это понимаю, нужны реальные примеры, когда что-то хотелось убрать в меню, но не вышло из-за отсутствия функционала. Чем больше будет примеров, тем лучше
Title: Re: Создание выпадающего меню
Post by: Black_AVP on February 06, 2015, 13:16:25
Вот ещё вариант развития событий: сложная структура скина и переключение режимов с помощью одного выпадающего меню: (вкл/выкл окон, переключение многостраничных групп и т.д.)
Я это понимаю, нужны реальные примеры, когда что-то хотелось убрать в меню, но не вышло из-за отсутствия функционала. Чем больше будет примеров, тем лучше
Тут я не совсем всё-таки понимаю: разве то же управление окнами, многостраничными группами не обеспечивается существующим функцилналом?
А если в будущем планируется еще и доступ к свойствам элементов, тем более имеющихся провайдеров будет достаточно.
Title: Re: Создание выпадающего меню
Post by: Soolo on February 06, 2015, 13:22:41
Тут я не совсем всё-таки понимаю: разве то же управление окнами, многостраничными группами не обеспечивается существующим функцилналом?
А если в будущем планируется еще и доступ к свойствам элементов, тем более имеющихся провайдеров будет достаточно.
в том и дело, что все мои фантазии пока что ограничиваются существующим набором провайдеров
Title: Re: Создание выпадающего меню
Post by: Black_AVP on February 06, 2015, 13:58:23
в том и дело, что все мои фантазии пока что ограничиваются существующим набором провайдеров
Так придумывание того, чего нет, порой, сродни открытию  ;)
У меня, вот, мысль давно вертится вокруг пользовательских глобальных переменных для скина, которые можно было бы задавать в том же диалоге, где и польз. провайдеры, но при существующей архитектуре обратной связи с элементами нет и к одному выходу Action не подцепишь 2 провайдера. Элементы меню тут, скорее всего, тоже не помогут. А так, можно было бы управлять этой переменной с помощью какого-либо элемента, а другие могли бы отрабатывать это значение, да ещё с применением выражений.
К примеру, хотелось бы иметь настоящий "Mute", как в рельной аппаратуре, т.е. понижение громкости от текущего не до 0, а на -20 dB,  с последующим восстановлением, но регулятор громкости оставался при этом в том же положении, и, более того, позволял менять уровень, но уже с учётом тех же -20 dB.
И уж совсем сумашедшая фантазия: используя пару таких глобальных переменных можно было даже при существующем эквалайзере сделать его 2-х полосным, подав на его входы значения этой переменной помноженные на дробные коэффициенты, т.е. один регулятор управлял бы сразу 9-ю полосами.
Да, наверное, много ещё чего можно было бы придумать с использованием переменных, наши скинмейкеры - народ изобретательный.
Title: Re: Создание выпадающего меню
Post by: Artem on February 06, 2015, 14:19:44
В качестве такой переменной можно использовать счетчик.
Title: Re: Создание выпадающего меню
Post by: Black_AVP on February 06, 2015, 14:37:15
В качестве такой переменной можно использовать счетчик.
В некоторых случаях используем, но его не подключишь ни к prvVolume, ни к prvEqualizer... (в свете вышеизложенных фантазий).
И в выражениях его значение тоже не вставить.