AIMP Forum

AIMP для Windows => Skin Editor / Skin Engine => Вопросы => Topic started by: Zhenya on May 16, 2013, 00:08:59

Title: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Zhenya on May 16, 2013, 00:08:59
Будет ли добавлено плавное появление элементов связанных с точкой доступа IsActive контейнера?
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Tarik on May 16, 2013, 00:19:13
Плавное появление может быть только у кнопок (и фейдинг будет работать только тогда, когда осуществляется переход на первый кадр текстуры)

В скине Zix (https://www.aimp.ru/forum/index.php?topic=39720.0) в окне визуализации подобное реализовано
Также обрати внимание на мое сообщение https://www.aimp.ru/forum/index.php?topic=39720.msg241786#msg241786
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Zhenya on May 16, 2013, 00:40:25
В скине Zix (https://www.aimp.ru/forum/index.php?topic=39720.0) в окне визуализации подобное реализовано
Также обрати внимание на мое сообщение https://www.aimp.ru/forum/index.php?topic=39720.msg241786#msg241786
Сообщение видел)
Только это не подойдет, если нужен настоящий переключатель с прозрачным фоном, появляющийся при наведении мышки на родительский контейнер.
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Raider01 on May 16, 2013, 01:27:53
Что-то мне кажется, что для этого придется перелопатить пол скин-движка :-\
Сообщение видел)
Только это не подойдет, если нужен настоящий переключатель с прозрачным фоном, появляющийся при наведении мышки на родительский контейнер.
А что значит "настоящий переключатель с прозрачным фоном"?
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Soolo on May 16, 2013, 01:31:04
Что-то мне кажется, что для этого придется перелопатить пол скин-движка
не всё так плохо со скин-движком ;)
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Zhenya on May 16, 2013, 02:52:43
не всё так плохо со скин-движком ;)
Skin Engine v3.50 очень крут 8)

А что значит "настоящий переключатель с прозрачным фоном"?
Имел ввиду кнопку с отображением переключения состояния при нажатии на нее (кнопка повтора, например) на не статичном фоне (полоса уровня сигнала), как пример - кнопка R в скине Alice (https://www.aimp.ru/forum/index.php?topic=35377.0) (только там она не скрывающаяся, как я хочу сделать).

Для фейдинга нужно задействовать State переключателя, а State уже занят отображением текущего состояния данного переключателя.
Можно это обойти используя поверх обычной кнопки-переключателя еще одну кнопку с переключением State, закрывающую нижнюю кнопку цветом фона, но это подойдет только если фон статичный.

Получается, что такую кнопку-переключатель с фейдингом при появлении на данный момент не сделать, а без фейдинга резкое появление кнопки немного раздражает :)
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Raider01 on May 16, 2013, 04:12:42
Имел ввиду кнопку с отображением переключения состояния при нажатии на нее (кнопка повтора, например) на не статичном фоне (полоса уровня сигнала), как пример - кнопка R в скине Alice (https://www.aimp.ru/forum/index.php?topic=35377.0) (только там она не скрывающаяся, как я хочу сделать).

Для фейдинга нужно задействовать State переключателя, а State уже занят отображением текущего состояния данного переключателя.
Можно это обойти используя поверх обычной кнопки-переключателя еще одну кнопку с переключением State, закрывающую нижнюю кнопку цветом фона, но это подойдет только если фон статичный.

Получается, что такую кнопку-переключатель с фейдингом при появлении на данный момент не сделать, а без фейдинга резкое появление кнопки немного раздражает :)
Ааа, теперь понятно))

ЗЫ: В принципе, State некоторых кнопок (в т.ч. повтора, шафла) можно сделать через LogicalOperatorCommutator :)

Берем кнопку с тремя группами кадров, первый кадр третьей группы прозрачный.
Связи LogicalOperatorCommutator: 
Value1 --> State - acPlayerRepeat или другое
Value2 --> IsActive - контейнера
Параметры связи LogicalOperatorCommutator - If(value2=0,2,value1)
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Tarik on May 16, 2013, 10:42:12
Так я не понял, а для чего делать фейдинг для кнопки-переключателя?
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Zhenya on May 16, 2013, 12:41:14
Так я не понял, а для чего делать фейдинг для кнопки-переключателя?
Просто потому что резкое появление скрытой кнопки раздражает.

ЗЫ: В принципе, State некоторых кнопок (в т.ч. повтора, шафла) можно сделать через LogicalOperatorCommutator :)

Берем кнопку с тремя группами кадров, первый кадр третьей группы прозрачный.
Связи LogicalOperatorCommutator: 
Value1 --> State - acPlayerRepeat или другое
Value2 --> IsActive - контейнера
Параметры связи LogicalOperatorCommutator - If(value2=0,2,value1)
Супер, спасибо! Skin Engine v3.50 ведь действительно очень крут :)

Сначала, правда не получалось сделать, потому что группы у меня состояли по 3 кадра (всего 9 кадров), потом сделал по 4 кадра (всего 12) - заработало.

Только, в таком случае, кнопка повтора всегда скрывается если контейнер неактивен.
Я же хотел, чтобы она работала так: контейнер неактивен - кнопка скрыта, но если повтор включен - кнопка отображается в любом случае.

Поэтому, подумал и подправил немного параметры связи:
Code: [Select]
If(Value1=0 AND Value2=0,2,Value1)
Если фейдинг у скрытых кнопок при их появлении (через Visibility) не будет добавлен, то можно в принципе играться со State кнопки. Хотя бы так :)
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Tarik on May 16, 2013, 12:49:44
Просто потому что резкое появление скрытой кнопки раздражает.
Тьфу, точно. Я забыл, что кнопка при наведении резко загорается... Тогда поможет только State элемента.
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Artem on May 16, 2013, 14:12:27
Если фейдинг у скрытых кнопок при их появлении (через Visibility) не будет добавлен, то можно в принципе играться со State кнопки. Хотя бы так :)

Вряд ли, т.к. движок не сможет оценить, нужен фейдинг или нет, ибо через видимость можно менять лейаут и типы элементов, не всегда фейдинг будет уместен.
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Zhenya on October 10, 2013, 19:17:19
Видимо, я неправильно назвал тему. В общем интересует фейдинг только у кнопок. Ведь только у этих элементов он есть при переключении кадров и состояний.

Вряд ли, т.к. движок не сможет оценить, нужен фейдинг или нет, ибо через видимость можно менять лейаут и типы элементов, не всегда фейдинг будет уместен.
То есть вы имеете ввиду обеспечить срабатывание фейдинга самой точкой доступа Visibility для всех элементов. Но ведь можно сделать срабатывание фейдинга на стороне кнопок при их появлении. Тем более, что фейдинг у них уже есть при переключении кадров и состояний, и тем более, что этот самый фейдинг при появлении кнопки можно сделать прямо сейчас, но только через костыль и довольно муторным образом.

И тем более, что в будущем планируется добавить анимацию контейнерам (https://www.aimp.ru/forum/index.php?topic=41646.msg251877#msg251877).
Title: Re: Плавное появление элементов связанных с точкой доступа IsActive контейнера
Post by: Zhenya on October 12, 2013, 01:05:21
Хотя нет, иногда, быстрое, без фейдинга, скрытие и появление кнопок всё-таки полезно.
Так что я в замешательстве... Или скорее даже против добавления неотключаемого плавного появления кнопок, связанных с точкой доступа IsActive контейнера :)