04-03-2010, 02:42 PM
04-03-2010, 03:05 PM
04-07-2010, 08:41 AM
Обнаружил проблему с отрисовкой кнопок прямо на полосе прокрутки. Если полоса идет первая в ini файле, то рисуется нормально, но фокус мыши потом на кнопку не ложится. Если первой кнопку поставить, то фокус ловится, но рисуется под полосой прокрутки. Ну и напомню про скрытие элементов если плеер не запущен, ":" явно не очень смотрится.
И конкретно про двоеточие: как уменьшить пробел между минутами и секундами? Программа автоматом ставит пробелы исходя из размера цифр.
И конкретно про двоеточие: как уменьшить пробел между минутами и секундами? Программа автоматом ставит пробелы исходя из размера цифр.
08-27-2011, 10:45 AM
Юрий, когда же обновится MediaControl, чтобы я мог доделать свои скины? В английском форуме mls правильно просил сделать всю графику(в том числе и вспывающую подсказку) такой же гибко настраиваемой, как в CDArtDisplay.
Напомню что я жду:
1) Первый пост в этой теме
2) Второй пост в этой теме
3) Предыдущий пост
Напомню что я жду:
1) Первый пост в этой теме
2) Второй пост в этой теме
3) Предыдущий пост
08-28-2011, 10:45 AM
Извиняюсь за задержку. Скоро займусь доработкой Media Control-а.
09-11-2011, 06:53 PM
Занялся Media Control-ом вплотную.
1) Буду выставлять для элементов состояние disabled если плеер не запущен, тогда кнопки можно скрыть. А текст соответственно будет пустой
2) Сделаю как бы отдельный скин на не запущенный плеер. Тогда можно будет и размер сделать по-компактней и ничего лишнего не будет.
Что еще уже точно будет в следующей версии:
1) команды timeleft и timepass чтобы показывать счетчики оставшегося и прошедшего времени трека.
2) параметр noMouse, выставляется в 1 чтобы элемент не реагировал на мышь
3) транзишены (transition) - анимация при переходе кнопки из одного состояния в другое, при наведении/нажатии мыши или при смене play/pause. Анимация будет в виде PNG с кадрами по горизонтали. Когда я тестировал все это дело, на каждый транзишен идеально было кадра 4-5
Quote:Обнаружил проблему с отрисовкой кнопок прямо на полосе прокрутки. Если полоса идет первая в ini файле, то рисуется нормально, но фокус мыши потом на кнопку не ложится. Если первой кнопку поставить, то фокус ловится, но рисуется под полосой прокрутки.Скин отрисовывается с первой позиции и мышь тоже была с первой исправлю, правдо вот этот скин перестанет работать.
Quote:Ну и напомню про скрытие элементов если плеер не запущен, ":" явно не очень смотрится.Тут я думаю сделать два варианта:
1) Буду выставлять для элементов состояние disabled если плеер не запущен, тогда кнопки можно скрыть. А текст соответственно будет пустой
2) Сделаю как бы отдельный скин на не запущенный плеер. Тогда можно будет и размер сделать по-компактней и ничего лишнего не будет.
Quote:И конкретно про двоеточие: как уменьшить пробел между минутами и секундами? Программа автоматом ставит пробелы исходя из размера цифр.Это когда цифры картинками показываются?
Quote:4. Добавить указания размера шрифта для текстовых элементов.А смысл? С высотой rect-а меняется и высота шрифта
Quote:И еще одна фишка: первое нажатие на кнопку PrevTrack(если трэк играет более 5 секунд) - воспроизведение сначала, второе и последующие - предыдущий трэк. Увидел это в одной автомагнитоле, где не было кнопки для остановки трэка, очень удобно. Отлично подойдет для скинов, где нет кнопки стоп. Опцию можно внести в настройки в виде чекбокса.Это интересно, попробую в следующую версию это реализовать.
Что еще уже точно будет в следующей версии:
1) команды timeleft и timepass чтобы показывать счетчики оставшегося и прошедшего времени трека.
2) параметр noMouse, выставляется в 1 чтобы элемент не реагировал на мышь
3) транзишены (transition) - анимация при переходе кнопки из одного состояния в другое, при наведении/нажатии мыши или при смене play/pause. Анимация будет в виде PNG с кадрами по горизонтали. Когда я тестировал все это дело, на каждый транзишен идеально было кадра 4-5
09-15-2011, 08:25 AM
Quote:Это когда цифры картинками показываются?Да.
Quote:4. Добавить указания размера шрифта для текстовых элементов.Это не нужно.
Quote:Cкин отрисовывается с первой позиции и мышь тоже была с первой исправлю, правдо вот этот скин перестанет работать.Может опцию в ini файле для типа отрисовки/фокуса (direct(фокус и отрисовка на одном уровне),reverse(отрисовка сверху, фокус снизу))? А можно вообще сделать опцию, чтобы управление мышью для элемента было неактивно(только отрисовка), тогда можно будет отрисовать все друг на друге и при этом получить функционал от нужного элемента.
Есть еще одно пожелание - просто анимация png bitstrip, которая воспроизводится постоянно на скине. Кол-во кадров не ограничивать. Два режима отрисовки:
1. Frame0>Frame1>...>Frame(N-1)>FrameN>Frame0>Frame1>....
2. Frame0>Frame1>...>Frame(N-1)>FrameN>Frame(N-1)>Frame(N-2)>...>Frame1>Frame0>Frame1>....
Настройки: положение, fps, когда воспроизводить[всегда, когда идет воспроизведение, когда плеер не запущен, когда не идет воспроизведение]. Это позволит добавить визуальные эффекты прямо на скин, скажем, динамичное преломление света по границе скина и т.п. Для ноутбуков это не очень подойдет, но для ПК нормально.
Ну и самое главное - это глубокая переработка всплывающего меню при наведении курсора на MediaControl: возможность сделать скин для этого меню, координаты появления, анимации появления/скрытия, время задержки курсора для появления меню(чтобы можно было сделать отличное от системного). Все-таки в Zune software это классно сделано.
09-16-2011, 06:16 PM
mitraleks Wrote:Понятно, сделаю чтобы можно было несколько наборов картинок делать. В частности одну для цифер - вторую для точек.Quote:Это когда цифры картинками показываются?Да.
mitraleks Wrote:да, там у элементов появится параметр "noMouse" для игнорирования мыши.Quote:Cкин отрисовывается с первой позиции и мышь тоже была с первой исправлю, правдо вот этот скин перестанет работать.Может опцию в ini файле для типа отрисовки/фокуса (direct(фокус и отрисовка на одном уровне),reverse(отрисовка сверху, фокус снизу))? А можно вообще сделать опцию, чтобы управление мышью для элемента было неактивно(только отрисовка), тогда можно будет отрисовать все друг на друге и при этом получить функционал от нужного элемента.
mitraleks Wrote:Есть еще одно пожелание - просто анимация png bitstrip, которая воспроизводится постоянно на скине. Кол-во кадров не ограничивать. Два режима отрисовки:ОК, принято. На счет указания FPS не думаю, что получтся, скорей там будет что-то вроде "скорости" но остальное будет.
1. Frame0>Frame1>...>Frame(N-1)>FrameN>Frame0>Frame1>....
2. Frame0>Frame1>...>Frame(N-1)>FrameN>Frame(N-1)>Frame(N-2)>...>Frame1>Frame0>Frame1>....
Настройки: положение, fps, когда воспроизводить[всегда, когда идет воспроизведение, когда плеер не запущен, когда не идет воспроизведение]. Это позволит добавить визуальные эффекты прямо на скин, скажем, динамичное преломление света по границе скина и т.п. Для ноутбуков это не очень подойдет, но для ПК нормально.
mitraleks Wrote:Ну и самое главное - это глубокая переработка всплывающего меню при наведении курсора на MediaControl: возможность сделать скин для этого меню, координаты появления, анимации появления/скрытия, время задержки курсора для появления меню(чтобы можно было сделать отличное от системного). Все-таки в Zune software это классно сделано.Это я скорей всего пока отложу. Для этого нужно будет немного саму TLB подточить.
09-19-2011, 01:18 AM
MC 6.0, отличное обновление!!!
Обнаружил, что thumb в прогрессбаре начинает рисоваться сразу после запуска плеера, хотелось бы, что если плеер не играет никакой трэк[т.е. тогда, когда у MediaControl нет информации о текущем треке], то thumb не рисовался.
В общем хотелось бы для прогрессбаров аналог опции whenPlay, как у анимации.
type = animation
whenPlay: always - play animation always; state-changed - play when the parameter is changed; state - when state is equal the value from the value parameter.
Тут все понятно.
param: any command with states
Что это? Commands: playpause, stop,...?
value: the state value
Какие состояния?
Эти state0=pause state1=play или эти normal over down disable?
Обнаружил, что thumb в прогрессбаре начинает рисоваться сразу после запуска плеера, хотелось бы, что если плеер не играет никакой трэк[т.е. тогда, когда у MediaControl нет информации о текущем треке], то thumb не рисовался.
В общем хотелось бы для прогрессбаров аналог опции whenPlay, как у анимации.
type = animation
whenPlay: always - play animation always; state-changed - play when the parameter is changed; state - when state is equal the value from the value parameter.
Тут все понятно.
param: any command with states
Что это? Commands: playpause, stop,...?
value: the state value
Какие состояния?
Эти state0=pause state1=play или эти normal over down disable?
09-19-2011, 01:34 AM
Quote:Обнаружил, что thumb в прогрессбаре начинает рисоваться сразу после запуска плеера, хотелось бы, что если плеер не играет никакой трэк[т.е. тогда, когда у MediaControl нет информации о текущем треке], то thumb не рисовался.Понял, сделаю.
В общем хотелось бы для прогрессбаров аналог опции whenPlay, как у анимации.
Когда whenPlay=state-changed то берется только param. И его состояния. Например если указать param=playpause то анимация заиграет когда состояние playpause изменится, т.е. при начале проигравания и при паузе. Эту вещь лучше применять совместно с playCount.
Когда whenPlay=state то нужно еще указать при каком состоянии играть анимацию. Соответственно в value можно поставить play или pause, чтобы анимация играла только когда идет проигрыванние или когда стоит пауза.
Тоже самое для других команд, которые имют состояния (mute, shuffle и repeat).
09-19-2011, 04:10 AM
Баг при отрисовке прогрессбара для большинства коротких треков[примерно до 1:10], на длинных треках такого нет:
Link
Link
09-19-2011, 04:41 AM
Еще пару идей:
1) Нажатие средней кнопкой мыши в любом месте MediaControl: Если плеер запущен - его закрытие, если нет, то наоборот. Это сделает элемент закрытия плеера ненужным. Да и целиться мышью не надо будет.
2) Чтобы при открытии плеера сразу начиналось воспроизведение(как опция в MediaControl GUI)
1) Нажатие средней кнопкой мыши в любом месте MediaControl: Если плеер запущен - его закрытие, если нет, то наоборот. Это сделает элемент закрытия плеера ненужным. Да и целиться мышью не надо будет.
2) Чтобы при открытии плеера сразу начиналось воспроизведение(как опция в MediaControl GUI)
09-19-2011, 04:52 AM
Quote:Баг при отрисовке прогрессбара для большинства коротких треков[примерно до 1:10], на длинных треках такого нет:Воспроизвел, спасибо. Буду править.
Quote:1) Нажатие средней кнопкой мыши в любом месте MediaControl: Если плеер запущен - его закрытие, если нет, то наоборот. Это сделает элемент закрытия плеера ненужным. Да и целиться мышью не надо будет.Классная идея! Тут же сделаю
Quote:2) Чтобы при открытии плеера сразу начиналось воспроизведение(как опция в MediaControl GUI)Точно! Давно собирался сделать такое... реализую.
Уже готовлю обновление. Если есть идеи что по-быстрому сделать, говорите.
09-19-2011, 05:13 AM
Есть пожелание, не создавать больше элементов(или отказаться от них вообще, добавив параметр skinversion=3 в ini фаил, при этом старые будут работать), которые используют расположение кадров в файле по горизонтали - только вертикальные png bitstrip. Их делать проще, чем пользоваться горизонтальной прокруткой при разработке.
09-19-2011, 05:25 AM
Quote:только вертикальные png bitstrip. Их делать проще, чем пользоваться горизонтальной прокруткой при разработке.Хмм...и то верно. Я могу просто дабавить еще один параметр в элементы, который указывает какие png bitstrip используются вертикальные или горизонтальные. Хотя можно и в [options] этот параметр вынести. Типа один на весь скин. К тому-же вся анимация в одну строчку делается. Я думал сделать в одном файле несколько анимаций и "мышиные состояния" пустить по вертикали, но потом решил сделать все это отдельно. Так что ничего не мешает сделать и вертикальные bitstrip-ы. Сделаю в следущей версии.