PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   iCarDS (http://pccar.ru/forumdisplay.php?f=121)
-   -   iCarDS или как это работает. Обсуждение (http://pccar.ru/showthread.php?t=14957)

pierrotm777 22.05.2011 21:54

If you want i have a BMV6 skin into my RoadRunner archives !

Bersenev 22.05.2011 22:09

Цитата:

Сообщение от pierrotm777 (Сообщение 184862)
If you want i have a BMV6 skin into my RoadRunner archives !

Then have got to skin. I will describe conversions skin for RoadRunner in skin for iCarDS on example BMV6

zanuda 12.07.2011 23:41

А вот у меня ламерский вопрос. Временами в текстах встречаются координаты каких либо картинок-кнопок только с одной координатой. например картинка с обложкой альбома.
Код:

IMG,734,#ywh_case_audio#,"case.png",out
IMG,734,#ywh_case_audio#,"case.png",off
IMG,734,#ywh_case_audio#,"case.png",on
IMG,734,#ywh_case_audio#,"case.png",down
 
/
J,761,#ywh_j_audio#
INC,audio_player0_$MyApp_Monitor$.txt
/A,761,#ywh_j_audio#,

где 734 это координата Х
а вот как изменить координату Y ?

Bersenev 12.07.2011 23:47

Если хочешь изменить и координату Y, то скорее всего придётся менять также и W с H

Данное определение #ywh_case_audio# используется только из-за универсальности скина и прописано в файле xy.txt

Так что просто здесь задай полный набор x,y,w,h и всё

DarkDuke 02.09.2011 15:02

Всем привет. Незнаю куда задать мои вопросы, но смысл в том, что я подумываю портировать свой плагин для БМВ радио, так чтобы минимально переделывать его.
Итак вопросы:
1) Что есть iCarDS? Это самостоятельна оболочка? Что есть CFStyle? просто скин?
2) На каких языках программирования можно писать для этого дела плагины?
3) Можно ли принимать/отсылать сообщения типа WM_DATA в этом чуде. И являеться ли каждый плагин отдельным окном как в CF?
4) Какие есть колбеки? Интересует такие вещи как:
а) колбеки: вкллючение/выключение плагина, т.е. аналоги методов Show/Resume/Pause в centrafuse.
b) колбек перехвата нажатия клавиш.
с) колбек powerchange, с аргументами Resume/suspent/poweroff итд...
5) Какова скорость работы по сравнению с CF, при тех же ресурсах?
6) Как обстоит дело с лицензией? Платная/бесплатная или условно бесплатная?

Bersenev 02.09.2011 15:46

Цитата:

Сообщение от DarkDuke (Сообщение 194433)
1) Что есть iCarDS? Это самостоятельна оболочка? Что есть CFStyle? просто скин?

iCar DS это программа наподобие RideRunner. Поддерживает 90% его команд, а также свои. CFStyle это скин. Но я бы не сказал, что просто скин. Благодаря возможностям программы iCarDS, скин это не просто набором картинок, а фактически полнофункциональная программа. Допустим такие вещи как встраивание программ, дневная и ночная тема, яркость скина, темы скина, автозагрузка, встраивание медиа программ, звуковые предупреждения, авторегулировка громкости от скорости, калькулятор и многое другое реализовано скином CFStyle, на основании команд iCarDS.

Для лучшего понимания можно сказать так: iCarDS это интерпретатор, а CFStyle это уже программа написанная на языке iCarDS.

Цитата:

Сообщение от DarkDuke (Сообщение 194433)
2) На каких языках программирования можно писать для этого дела плагины?

В принципе на любом, я делал на C#, Delphi, AutoIt3. Есть еще примеры на VB6 и VB.NET

Цитата:

Сообщение от DarkDuke (Сообщение 194433)
3) Можно ли принимать/отсылать сообщения типа WM_DATA в этом чуде. И являеться ли каждый плагин отдельным окном как в CF?

Да, плагин iCarVOBD и работает по этому принципу. Нет, в iCarDS плагин не привязан к окну(экрану), если конечно это не требуется для плагина. Допустим плагин RRPoi, RRCheckEngine и iCarVOBD не привязаны к конкретным экранам, а плагин RRMail и RRTMS привязан к определённым экранам. То есть всё зависит от желания разработчика плагина

Цитата:

Сообщение от DarkDuke (Сообщение 194433)
4) Какие есть колбеки? Интересует такие вещи как:
а) колбеки: вкллючение/выключение плагина, т.е. аналоги методов Show/Resume/Pause в centrafuse.
b) колбек перехвата нажатия клавиш.
с) колбек powerchange, с аргументами Resume/suspent/poweroff итд...

а) плагин загружается по команде LoadExt;<имя плагина>. Про выгрузку ничего не скажу, так как не пользовался не разу. Но если будет нужна, то добавим.

b) клавиши перехватывает сам iCarDS, а в дальнейшем на перехваченные клавиши можно повесить любые команды икара или его плагинов

c) Всё это есть, только называется событиями. События могут обрабатываться как внутри плагина, так и внутри скина. То есть можно сделать в плагине команду которую требуется выполнить при засыпании, а внутри скина повесить её на событие onsuspend. А можно обработать это событие внутри плагина.

Цитата:

Сообщение от DarkDuke (Сообщение 194433)
5) Какова скорость работы по сравнению с CF, при тех же ресурсах?

Скорость работы плагина будет зависить от разработчика. А вот скорость работы икара однозначно выше чем у сф. По крайней мере у меня на еее 900 сф это тормоз, а икар летает.

Цитата:

Сообщение от DarkDuke (Сообщение 194433)
6) Как обстоит дело с лицензией? Платная/бесплатная или условно бесплатная?

Триал 90 суток, дальше платная. Но с разработчиками полезных плагинов у нас особые отношения. Пиши в личку

DarkDuke 02.09.2011 18:06

Есть еще вопросик, как устроено радио? Предоставляеться стандартный интерфейс как в CF? Или больше гибкости? У меня в плагине не поддерживаются предустановки, т.к. они в принципе не поддерживаться моим радио блоком. Т.е. нельзя задать частоту канала и включить его. Поэтому все написано как отдельный плагин. В связи с этим я потерял возможность той же визуализации по бассам. Так же интересует, есть ли буфферизация радио как в CF? можно ли ей управлять?

По поводу WM_DATA ообщений: Если не создавать отдельное окно, не попортят ли мои сообщения, которые я буду слать от радио, например ту же диагностику? Или есть какие-то нюансы?

И последние, есть ли примеры плагинов на С#? Он наверное будет самым лучшим для меня т.к. если соберусь силами переходить на эту оболочку, то буду писать на С++ .net

Bersenev 02.09.2011 18:41

Цитата:

Сообщение от DarkDuke (Сообщение 194449)
Есть еще вопросик, как устроено радио? Предоставляеться стандартный интерфейс как в CF? Или больше гибкости? У меня в плагине не поддерживаются предустановки, т.к. они в принципе не поддерживаться моим радио блоком. Т.е. нельзя задать частоту канала и включить его. Поэтому все написано как отдельный плагин. В связи с этим я потерял возможность той же визуализации по бассам. Так же интересует, есть ли буфферизация радио как в CF? можно ли ей управлять?

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

Цитата:

Сообщение от DarkDuke (Сообщение 194449)
По поводу WM_DATA ообщений: Если не создавать отдельное окно, не попортят ли мои сообщения, которые я буду слать от радио, например ту же диагностику? Или есть какие-то нюансы?

Окно плагином создаваться как бы будет, в Delphi оно создаётся через функцию AllocateHWnd, думаю в С++ .net есть нечто подобное. Так что сообщения будет обрабатывать только плагин.

Цитата:

Сообщение от DarkDuke (Сообщение 194449)
И последние, есть ли примеры плагинов на С#? Он наверное будет самым лучшим для меня т.к. если соберусь силами переходить на эту оболочку, то буду писать на С++ .net

Есть. Пиши в личку куда сбросить. Но лучше для начала понять как устроены скины в iCar DS (RideRunner), причём CFSlyle не лучший вариант для этого. Можешь поставить RideRunner, в нем есть простейший скин и примеры плагинов, они полностью подходят к икару. А так же редактор для скинов.

DarkDuke 02.09.2011 18:50

Большое спасибо за развернутый ответ. В общем как только закончу работу над бортовым компьютером, начну потихоньку портирование.

Bersenev 06.09.2013 20:06

Сообщение перенёс сюда http://www.pccar.ru/showthread.php?t=19185&page=48


Часовой пояс GMT +4, время: 22:18.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot