Автор Тема: Скин справочной системы  (Прочитано 8617 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн Pinin

  • Администратор
  • Постоялец
  • *****
  • Сообщений: 135
    • Просмотр профиля
Скин справочной системы
« : 01 Март 2009, 20:49:46 »
Странное дело - все вопросы по данному проекту сыплются в личку. Коллеги! Если что-то неясно вам, скорее всего столь же неясно и остальным - посему ответ полезно будет увидеть не только спрашивавшему. Не обессудьте - в личку отвечать не буду, все ответы - здесь.


Вопрос от Sova6174:

Цитировать
...один вопрос родился, какой софт использовали для справочной информации. У меня практически похожий набор требований. и вот теперь потихоньку собираю подборку софта и заодно просматриваю на предмет подходит-нет.
[/size]

Изначально было несколько файлов pdf`овского формата (мануал на машину, альбомы узлов/агрегатов), так же в pdf`е были созданы страницы с "горячими" телефонами, штрафами, etc. Адобовский акробат поддерживает настройку окна, в котором он открывается умолчально - это облегчает задачу вписывания его в скин.

Следующим шагом будет создание графических файлов конечного скина справки - того, в котором будут открываться собственно справочные файла. Здесь задача минимальная - само окно и кнопки навигации по документу вверх/вниз построчно/постранично. Этот скин назовем условно APP_BROWSER.skin. Сам файл создадим чуть позднее, пока же необходимо нарисовать три графических APP_BROWSER_OFF.jpg, APP_BROWSER_ON.jpg, APP_BROWSER_DOWN.jpg, чем они должны отличаться друг от друга - легко понять, посмотрев для примера любой другой скин из комплекта RR.

Следующим шагом будет создание общего скина для всего справочного раздела. Начать стоит с чистого листа, единственное ограничение - соблюдайте стандартные размеры скинов фронт-энда (800х600 в данном случае).
Рисуете требуемые кнопки, названия на них, словом, резвитесь, как хотите - расплата за это наступит чуть позже...;) Не забывайте, что таких файлов нужно будет три - таковы требования RR. Но после того, как создан первый из них, оставшиеся два сделать легко. В любом текстовом редакторе (вполне сгодится обычный "Блокнот" ) создадим текстовый файл HT.skin к примеру с следующим содержанием:

Цитировать

MEDIACAR Skin
MEDIACAR "HT" Skin
HT_OFF.jpg,HT_OFF.jpg,HT_ON.jpg,HT_DOWN.jpg


где HT_OFF.jpg,HT_ON.jpg,HT_DOWN.jpg - только что созданные нами файлы.

Теперь открываем Skin Editor, загружаем в него HT.skin, нажимаем кнопку Add, выбираем из выпадающего списка опцию Button и вводим в пустые поля любые численные значения. В результате имеем произвольных размеров и положения на скине прямоугольник желтого цвета - это созданная вами только что кнопка :S

Поигравшись немного с числами, вводимыми в поля x, y, w, h вы через какое-то время поймете логику дальнейших действий (и проклянете себя за неуемный аппетит и чертову прорву кнопок, которые вы нарисовали). А смысл в том, чтобы каждую нарисованную вами кнопку скина покрывала такая-вот желтая рамочка в Skin Editor`e. Зато после того, как вы этого добьетесь, в файле HT.skin появятся записи о всех ваших кнопках (правда, пока еще без навешенных на них функций).

Теперь наша задача на каждую кнопку основного скина справки повесить вызов конкретного pdf`ника. В общем случае это будет выглядеть примерно так:

Цитировать

B5,435,335,215,45,"LOAD;APP_BROWSER.skin||RUN;C:\...\Reader\AcroRd32.exe|C:\...\Имя_файла_справки_1.pdf;Имя_файла_справки_1.pdf -  Adobe Reader",""
...
B30,,0,0,215,45,"LOAD;APP_BROWSER.skin||RUN;C:\...\Reader\AcroRd32.exe|C:\...\Имя_файла_справки_N.pdf;Имя_файла_справки_N.pdf -  Adobe Reader",""
B35,585,507,210,86,"CLOSEWINDOW;Adobe Reader||EXIT",""


Здесь LOAD;APP_BROWSER.skin вызывает ранее созданный скин для просмотра конкретной справки, RUN;C:\...\Reader\AcroRd32.exe запускает Акробат, C:\...\Имя_файла_справки_1.pdf указывает путь к файлу справки, Имя_файла_справки_1.pdf -  Adobe Reader обозначает окно, которое RR должен перехватить. Кнопка B35 с функцией CLOSEWINDOW;Adobe Reader||EXIT убивает окно Акробата при выходе из скина - не будь ее, у вас останется куча запущенных версий Акробата без контента внутри него...

Имя файла лучше писать на басурманском (с русскими названиями могут быть проблемы), пути к файлам прописываем в соответствии с тем, что у вас имеется, название перехватываемого окна может меняться в зависимости от версии Акробата, который вы используете (в конкретном примере это Reader 8.0)

Осталась самая малость - примерно ту же процедуру необходимо проделать и для APP_BROWSER.skin. Т.е. грузим его в Skin Editor, привязываем кнопки навигации к графическим изображениям их, создаем файл APP_BROWSER.skin

В конкретном случае он имеет следующий вид:

Цитировать

MEDIACAR Skin
MEDIACAR "APP_BROWSER" Skin
APP_BROWSER_OFF.jpg,APP_BROWSER_OFF.jpg,APP_BROWSER_ON.jpg,APP_BROWSER_DOWN.jpg

/, I, x, y, w, h, Code;INDICATORCODES
I01,694,23,20,35,"TOPDL"
I02,694,545,20,35,"BOTTOMDL"

/, B, x, y, w, h, Command;COMMANDCODES, Tooltip
B10,731,7,58,74,"ACTIVATE;Adobe Reader||SENDKEY;{PGUP}||GETFOCUS","PGUP"
B13,731,311,58,74,"ACTIVATE;Adobe Reader||SENDKEY;{PGDN}||GETFOCUS","PGDN"
B14,726,507,68,86,"CLOSEWINDOW;Adobe Reader||EXIT",""

/, S, x, y, w, h, x1, y1, w1, h1, O, Style, Pointer file path, h2, Code;SLIDERCODES, Tooltip
S01,699,66,10,472,695,61,18,482,V,,"POINTER_LONG.gif",60,"DLSLIDER",""

/, S, x, y, w, h, fore R;RGB, G, B,  back R;RGB, G, B,  folder R;RGB, G, B,  file R;RGB, G, B, selected R;RGB, G, B, select R;RGB, G, B, trs, font pt;FONT, font name
A02,15,16,660,550

END


Комментировать все содержание этого файла, думаю, смысла нет - уж если вы залезли в такие дебри, то расписывать вам каждую строчку кода было бы бестактно...

Справка по номерам регионов несколько отличается от всего остального - там используется просто txt`шный файл. Если будут вопросы по нему - отвечу отдельно.