Кнопка она же bouton

Схемы, информация о внутреннем устройстве.
Yosic
Site Admin
Сообщения: 573
Зарегистрирован: 20 сен 2018, 10:23
Репутация: 192

Кнопка она же bouton

Сообщение Yosic » 17 дек 2018, 12:46

Кнопка - это маленькое приложение которое можно запустить и сделать еще одну(несколько) кнопку в меню MediaNav.
За основу взяты исходники от наших французских друзей. Однако они были переработаны и улучшены.
Так же было исправлено несколько критических багов которые приводили к зависанию или даже перезагрузке MediaNav в определенных условиях.

Какие изменения по сравнению с оригиналом
  • Убрана зависимость от libpng которая могла приводить к падению MediaNav. Png все так же можно загружать, но делается это теперь штатными средствами, точно так же как это делает родная оболочка.
  • Модифицирован фильтр видимости кнопки. Добавился новый фильтр не только по классу окна, но и по его ID.
  • Появилась негативная фильтрация. То есть можно указать не когда показывать, а когда не показывать кнопку.
  • Добавился вывод текста на кнопку с возможностью установки шрифта и его размера и цвета.
  • Добавился вывод текущей даты вместо текста на кнопке. По аналогии с date(отдельное приложение такое для вывода даты). Теперь в date нету необходимости.
  • Добавился вывод диагностической информации помогающей при определении класса или ID окна которое сейчас активно. Это нужно при определении когда показывать кнопку и когда нет.
  • Добавилась настройка интервала проверки состояния видимости кнопки. По умолчанию это 200мс. Можно ставить меньше или больше. Это влияет на скорость исчезания/появления кнопки при переключении между панелями в оболочке.
Кнопка стала компактнее(меньше размер файла) и работает быстрее.
Описание параметров настройки
Show
[StartOnTap]
;Запуск программ при обычном нажатии <1.5c. Задается в виде <программа> = <командная строка>
\Storage Card\itaskmgr_mips.exe =

[CloseOnTap]
;Закрытие программ при коротком нажатии. <программа> = <метод закрытия close или kill>.
;Если метод закрыти close то указывается полный путь к программе(например \Storage Card\itaskmgr_mips.exe).
;Если метод закрыти kill то указывается только имя программы(например itaskmgr_mips.exe).
;Если вместо имени указать @self - кнопка закроет саму себя.
\Storage Card4\MD\Ttcmd\TTCMD.exe = close

[StartOnLongTap]
;Запуск программ при обычном нажатии от 1.5c до 3.5с. Задается в виде <программа> = <командная строка>
;\MD\navi\navi.exe =
\Storage Card4\MD\Ttcmd\TTCMD.exe =
;\windows\explorer.exe =

[CloseOnLongTap]
;Закрытие программ при длинном нажатии. <программа> = <метод закрытия close или kill>.
;Если метод закрыти close то указывается полный путь к программе(например \Storage Card\itaskmgr_mips.exe).
;Если метод закрыти kill то указывается только имя программы(например itaskmgr_mips.exe).
itaskmgr_mips.exe = kill

[Raccourci]
;Файл который запускается при нажатии на кнопку. Если не задан то кнопка не кликабельна
exe = \Storage Card4\MD\Ttcmd\TTCMD.exe
;Картинка для кнопки, если не задано то bouton.bmp в той же папке где и bouton.exe
;Картинка должна быть подготовлена специальным образом и должна состоять из двух картинок кнопки одинакового размера, с начала в обычном состоянии затем в нажатом, расположенных одна за другой по длине.
;bmp = \Storage Card\System\Img\M1\home\home_navi_btn.bmp

[Visibility]
;Метод определения активного окна. Если оба этих параметра 0 или не заданы то берется текущее окно которое имеет фокус,
;иначе то окно которое видно пользователю по заданным координатам X и Y.
;WindowPointCheckX = 17
;WindowPointCheckY = 177
;Фильтры видимости кнопки. Филтры действуют по принципу И то есть если НЕ подходит хотя бы по одному из фильтров то НЕ отображается.
;Значения указываются через | . Если перед значением поставить ! , то по этому значению буде происходить негативная фильтрация
;то есть если условие для этого значения выполняется то окно НЕ отображается.
;Например WindowIDFilter = !3724 значит отображать всегда кроме случая когда активное окно имееть ID 3724
;WindowIDFilter = !5555|!3724 - не отображать только когда активны окна с ID 5555 или 3724
;WindowIDFilter = 7777|4273 - отображать только когда активны окна с ID 7777 или 4273
;Если фильтр не задан то он отключен. Это значит не влияет.
;Если оба филтра отключены - то отображается всегда.
;Фильтр по классам окон
;ClassFilter = CGUIEmptyDlg 00025AE8
;Фильтр по ID окон
WindowIDFilter = 5AE8|7414|0000
;Интервал проверки состояния (показывать кнопку или спрятать) в миллисекундах
StatePollIntervalMS = 200

[Position]
;Всегда делать окно самым верхним среди остальных. По умолчанию отключено(0).
AlwaysOnTop = 0
IconXPosition = 300
IconYPosition = 420
;Сохранять новую позицию кнопки после перемещения в файл
SaveAfterMove = 0
;Если 1 кнопку нельзя будет двигать. Она будет в той позиции как задана в файле.
Locked = 1

[Text]
;Параметры вывода текста на кнопке. Расставлены в порядке приоритета. То есть ShowWindowID - имеет наивысший приоритет
;И будет отображаться именно он даже если остальные виды текста тоже включены

;Отображать ID текущего активного окна на кнопке. Удобно использовать, чтобы узнать ID тех окон на которых кнопка должна быть видна.
;То есть принцип такой. Отключаються все фильтра, запускается кнопка, и можно ходить по нужным экранам и записывать их ID.
;Затем эти ID Записываются в WindowIDFilter через |, например 0493|AB49|2019 и кнопка будет отображаться тоько тогда когда активно одно из окон с ID из списка.
;ID имеет ВСЕГДА 4 СИМВОЛА то есть если вам написало на окно 0123 то так и нужно писать, а не 123
ShowWindowID = 1
;Аналогично ID только классы окон, ID - более точный параметр
ShowWindowClass = 1
;Отображать текущую загрузку процессора.
;ShowCPULoad = 1
;Отображать на кнопке текущую дату вместо текста
ShowDate = 1
;Текст который нужно отображать на кнопке
;ButtonText=Video
;Формат даты. соответсвующие имена заменяются их значениями. То есть {year} будет заменен на год при отображении итд.
;По умолчанию имеет значение {day}/{month}/|{year}. {wday} - день недели
;DateFormat = {wday}|{day}|{month}|{year}
;Карта отображения дней недели. Соответственно вместо 1 будет Пн, вместо 2 Вт итд.
DayMap = Пн,Вт,Ср,Чт,Пт,Сб,Вс
;Карта отображения месяцев. Соответственно вместо 1 будет Янв, вместо 2 Фев итд.
MonthMap = Янв,Фев,Мрт,Апр,Май,Июн,Июл,Авг,Сен,Окт,Ноя,Дек
;имя фонта для отображения текста на кнопке
TextFont = Tahoma
;Размер шрифта, точно так же как в ворде, например
FontSize = 36
;Цвет текста
TextColorR = 255
TextColorG = 255
TextColorB = 255
Список ID некоторых экранов для версии 9.1.3. ID могут меняться от версии к версии.
Список
Show
home 5AE8
radio
частота D610
список B07C
предустановки 3EE0
опции 1138

media
плеер CA3C
окно видео 0890
список A2B0
опции E368

Eco
отчет 4C28
балы 7454
обучение 16A8

Setting
аудио EF3C
баланс D1D0
гр. режимы 8CB0
дисплей 4D24
блютуз 1158
устройства A69C
изменить ключ 88C4
смартфон 7F98
система F340
язык A43C
часы един 0D84
настройка времени 7214
заводская настройка 61E4
версия системы 5A78
lge open... ACC4

ночной режим 21D8
спящий режим

Igo 4050

navitel 12EC

total 3724
правка в тотал 6898
Ссылка на скачивание
Show
Нужно зарегистрироваться :)
Баг трекер этого проекта https://bugs.medianav.ru/set_project.php?project_id=5. Тут можно сообщать о проблемах и просить новые улучшения.

P.S. Автор оригинальной кнопки дал свое разрешение на публикацию данного материала.

ludo13
Член команды
Сообщения: 538
Зарегистрирован: 20 сен 2018, 18:18
Репутация: 81

Re: Кнопка она же bouton

Сообщение ludo13 » 02 янв 2019, 07:44

Roman-RV78 писал(а):
31 дек 2018, 19:57

Ну это очень хорошо.
Остаётся один косяк с этими кнопками, при включении окна камеры или окна выключенной магнитолы они остаются на нём и не пропадают пока не кликнешь по экрану, правда не пробовал обратный фильтр
забыл написать или писал ранее. Ид экрана выключенной гу равен экрану на котором ее выключили. Проверял с основных 6 экранов. Т.е. Выключили на радио, будет радио и т.д.

Аватара пользователя
Roman
Сообщения: 89
Зарегистрирован: 20 ноя 2018, 11:13
Репутация: -1

Re: Кнопка она же bouton

Сообщение Roman » 02 янв 2019, 11:10

Roman писал(а):
01 янв 2019, 18:21
Так всё-таки с новой кнопкой удалось вывести дату над часами на черном экране выключенной магнитолы? Какой id этого экрана?
Сам себе отвечу - видимо не удалось.

Аватара пользователя
Roman
Сообщения: 89
Зарегистрирован: 20 ноя 2018, 11:13
Репутация: -1

Re: Кнопка она же bouton

Сообщение Roman » 02 янв 2019, 11:13

Yosic писал(а):
17 дек 2018, 12:46
Добавился вывод диагностической информации помогающей при определении класса или ID окна которое сейчас активно. Это нужно при определении когда показывать кнопку и когда нет.
Приложение отдельное такое мне Роман78 скидывал. И кстати не всех окон id показывает.
Последний раз редактировалось Roman 02 янв 2019, 11:17, всего редактировалось 1 раз.

Аватара пользователя
Roman
Сообщения: 89
Зарегистрирован: 20 ноя 2018, 11:13
Репутация: -1

Re: Кнопка она же bouton

Сообщение Roman » 02 янв 2019, 11:16

Yosic писал(а):
17 дек 2018, 12:46
Добавилась настройка интервала проверки состояния видимости кнопки. По умолчанию это 200мс. Можно ставить меньше или больше. Это влияет на скорость исчезания/появления кнопки при переключении между панелями в оболочке.
От маускликов в скриптах удалось избавиться СОВСЕМ?

Аватара пользователя
Roman
Сообщения: 89
Зарегистрирован: 20 ноя 2018, 11:13
Репутация: -1

Re: Кнопка она же bouton

Сообщение Roman » 02 янв 2019, 11:25

Yosic писал(а):
17 дек 2018, 12:46
Так же было исправлено несколько критических багов которые приводили к зависанию или даже перезагрузке MediaNav в определенных условиях.
Может скажете что за определенные условия? У меня эти кнопки уже год, ничего не зависало и не падало, именно из-за кнопок. Тут скорее "сторонние" приложения виноваты.

Yosic
Site Admin
Сообщения: 573
Зарегистрирован: 20 сен 2018, 10:23
Репутация: 192

Re: Кнопка она же bouton

Сообщение Yosic » 02 янв 2019, 11:32

Праздники, всем не до этого пока. Потому и не отвечает никто

Yosic
Site Admin
Сообщения: 573
Зарегистрирован: 20 сен 2018, 10:23
Репутация: 192

Re: Кнопка она же bouton

Сообщение Yosic » 02 янв 2019, 11:42

Roman писал(а):
02 янв 2019, 11:25
Yosic писал(а):
17 дек 2018, 12:46
Так же было исправлено несколько критических багов которые приводили к зависанию или даже перезагрузке MediaNav в определенных условиях.
Может скажете что за определенные условия? У меня эти кнопки уже год, ничего не зависало и не падало, именно из-за кнопок. Тут скорее "сторонние" приложения виноваты.
Я понимаю к чему вы клоните,но если вы чего-то не знаете или не понимаете, то это не значит, что этого нет.
Вас никто не заставляет что-то менять или чем-то пользоваться. Дело именно в кнопке, а верить или нет дело ваше. А некоторые условия это определённое сечение обстоятельств из-за которых кнопка начинала разрушать систему из-за ошибок в коде

Аватара пользователя
Roman
Сообщения: 89
Зарегистрирован: 20 ноя 2018, 11:13
Репутация: -1

Re: Кнопка она же bouton

Сообщение Roman » 02 янв 2019, 12:04

Yosic писал(а):
02 янв 2019, 11:42
А некоторые условия это определённое сечение обстоятельств из-за которых кнопка начинала разрушать систему из-за ошибок в коде
Мне думается что такие условия возможны только при установленном новом плеере?

Аватара пользователя
Roman
Сообщения: 89
Зарегистрирован: 20 ноя 2018, 11:13
Репутация: -1

Re: Кнопка она же bouton

Сообщение Roman » 02 янв 2019, 12:10

Yosic писал(а):
02 янв 2019, 11:42
Я понимаю к чему вы клоните,но если вы чего-то не знаете или не понимаете, то это не значит, что этого нет.
Вас никто не заставляет что-то менять или чем-то пользоваться. Дело именно в кнопке, а верить или нет дело ваше
Я вижу антирекламу МНЕ+. Вот и защищаю свое. Обсирать чужое очень легко. Спросите у Романа78 сколько мы с ним правили скрипты чтобы избавить систему от неправильной реакции на те или иные события при установленных кнопках, кореплеере и навителе, при входящих звонках и так далее, продумывали защиту от дурака, чтобы нельзя было нажать те или иные кнопки, да много чего еще.
Вот ludo пишет в каптюрклубе в ветке про свои украшательства: "поТдержку мне+ в скором времени считаю не актуальной." Ну дело его конечно что ему поддерживать, но просто так плюнуть на множество людей кто пользует МНЕ+ (а я по количеству скачиваний вижу что многим он интересен), это тоже его решение. А я не собираюсь отказываться от "своей" софтины, как он говорит в кавычках. Да, я с нуля не писал систему, кнопки, навител, и что с того? Грамотно объединить разрозненные приложения в одну систему и обеспечить их бесконфликтную совместную работу - это тоже надо уметь. Многие вопросы мы с Романом78 решили, тратили много часов времени на переписывание скриптов. Всего этого не видно, но всё это работает.

ludo13
Член команды
Сообщения: 538
Зарегистрирован: 20 сен 2018, 18:18
Репутация: 81

Re: Кнопка она же bouton

Сообщение ludo13 » 02 янв 2019, 12:27

Я не про техпотдержку, а про потдержу кнопок мне+ в своих скинах.

ludo13
Член команды
Сообщения: 538
Зарегистрирован: 20 сен 2018, 18:18
Репутация: 81

Re: Кнопка она же bouton

Сообщение ludo13 » 02 янв 2019, 12:35

я скажу даже больше если получится наладить одну вещицу, то можно будет вообще от скриптов запуска навитела избавиться. и можно будет запускать любую сборку навитела параллельно с иго. в данный момент я запустил иго и 7 дорог без закрытия первого.

Аватара пользователя
Roman
Сообщения: 89
Зарегистрирован: 20 ноя 2018, 11:13
Репутация: -1

Re: Кнопка она же bouton

Сообщение Roman » 02 янв 2019, 13:48

ludo13 писал(а):
02 янв 2019, 12:35
в данный момент я запустил иго и 7 дорог без закрытия первого.
А как же две навигашки один com-порт делят? И переключаться между ними можно?
А насчет чтобы при запущенном Навителе продолжало играть радио или мп3, и при подсказках приглушалось, есть какие-то идеи?
Тут еще вопрос хватало бы ресурсов при одновременной работе двух прог.
В МНЕ+ при запуске кореплеера мы с Романом78 сделали специально прибитие штатной навигации. Иначе не хватало ресурсов, и при входящем звонке во время просмотра видео - булькало. И видеоплеер больше тормозил кстати.

ludo13
Член команды
Сообщения: 538
Зарегистрирован: 20 сен 2018, 18:18
Репутация: 81

Re: Кнопка она же bouton

Сообщение ludo13 » 02 янв 2019, 14:06

Не сравнивай не доведенный до ума для нашего проца плеер. Надо наоборот чтобы не приглушало. Наложение подсказок на видео или мр3 гораздо удобней. Чем постановка на паузу.

Yosic
Site Admin
Сообщения: 573
Зарегистрирован: 20 сен 2018, 10:23
Репутация: 192

Re: Кнопка она же bouton

Сообщение Yosic » 02 янв 2019, 14:08

Roman писал(а):
02 янв 2019, 12:10
Yosic писал(а):
02 янв 2019, 11:42
Я понимаю к чему вы клоните,но если вы чего-то не знаете или не понимаете, то это не значит, что этого нет.
Вас никто не заставляет что-то менять или чем-то пользоваться. Дело именно в кнопке, а верить или нет дело ваше
Я вижу антирекламу МНЕ+. Вот и защищаю свое. Обсирать чужое очень легко. Спросите у Романа78 сколько мы с ним правили скрипты чтобы избавить систему от неправильной реакции на те или иные события при установленных кнопках, кореплеере и навителе, при входящих звонках и так далее, продумывали защиту от дурака, чтобы нельзя было нажать те или иные кнопки, да много чего еще.
Вот ludo пишет в каптюрклубе в ветке про свои украшательства: "поТдержку мне+ в скором времени считаю не актуальной." Ну дело его конечно что ему поддерживать, но просто так плюнуть на множество людей кто пользует МНЕ+ (а я по количеству скачиваний вижу что многим он интересен), это тоже его решение. А я не собираюсь отказываться от "своей" софтины, как он говорит в кавычках. Да, я с нуля не писал систему, кнопки, навител, и что с того? Грамотно объединить разрозненные приложения в одну систему и обеспечить их бесконфликтную совместную работу - это тоже надо уметь. Многие вопросы мы с Романом78 решили, тратили много часов времени на переписывание скриптов. Всего этого не видно, но всё это работает.
Вместо того, чтобы выяснять кто круче взяли бы и обновили кнопки в своей сборке, чтобы избежать проблем. Вам все дали для этого. Мы же не будем переделывать вашу сборку за вас. На данный момент, со старой кнопкой, ваша сборка практически не совместима с плеером. Мы просто констатирует факт, и написал это в ветке с плеером просто, чтобы из бежать проблем и претензий. Будет ваша сборка совместима мы это убераем - всё просто. Не хотите не обновляйте, мы вас не заставляем

ludo13
Член команды
Сообщения: 538
Зарегистрирован: 20 сен 2018, 18:18
Репутация: 81

Re: Кнопка она же bouton

Сообщение ludo13 » 02 янв 2019, 14:21

Плюсик не поставить))) Проблемма заменить кнопки причем 5 штук.

Ответить