Создание DESK-Taskbar'а |
Описание DESK'а компилируется VIP'ом и кладется в стандартный ресурс.
Формат входного файла:
gDesk <Идентификатор>; //далее описания кнопок button <ИмяКнопки> = { title = <ПодписьПодКнопкой>; hotkey = <ГорячаяКлавиша>; hint = <ПодсказкаДляКнопки>; bitmapSmallNormal = <ИмяФайлаДляКнопкиSN>; bitmapSmallUp = <ИмяФайлаДляКнопкиSU>; bitmapSmallDown = <ИмяФайлаДляКнопкиSD>; bitmapSmallGray = <ИмяФайлаДляКнопкиSG>; bitmapLargeNormal = <ИмяФайлаДляКнопкиLN>; bitmapLargeUp = <ИмяФайлаДляКнопкиLU>; bitmapLargeDown = <ИмяФайлаДляКнопкиLD>; bitmapLargeGray = <ИмяФайлаДляКнопкиLG>; bitmapHorNormal = <ИмяФайлаДляКнопкиHN>; bitmapHorGray = <ИмяФайлаДляКнопкиHG>; bitmapVertNormal = <ИмяФайлаДляКнопкиVN>; bitmapVertGray = <ИмяФайлаДляКнопкиVG>; };
<Идентификатор> - Имя DESK'а, совпадающее с именем интегратора (на данный момент используются имена GAL и SUPPORT).
<ИмяКнопки> - имя кнопки совпадает с именем меню контура, вызываемого по ней.
<ПодписьПодКнопкой> - текст, который будет размещен на кнопке. Буква после символа '&' будет выделена на кнопке.
<ГорячаяКлавиша> - символ, соответствующий "горячей клавише".
<ПодсказкаДляКнопки> - подсказка к кнопке. Для перевода строки используется разделение с помощью знака "+". Каждая строка в кавычках не может быть больше 255 символов.
<ИмяФайлаДляКнопкиSN> - имя файла для маленькой ненажатой, неподнятой и разрешенной (незаблокированной) кнопки, могут использоваться переменные среды. Например: '%ATLANTIS%\support\desk\knopka.bmp'.
<ИмяФайлаДляКнопкиSU> - имя файла для маленькой поднятой кнопки.
<ИмяФайлаДляКнопкиSD> - имя файла для маленькой нажатой кнопки.
<ИмяФайлаДляКнопкиSG> - имя файла для маленькой заблокированной кнопки.
<ИмяФайлаДляКнопкиLN> - имя файла для большой ненажатой, неподнятой и разрешенной (незаблокированной) кнопки.
<ИмяФайлаДляКнопкиLU> - имя файла для большой поднятой кнопки.
<ИмяФайлаДляКнопкиLD> - имя файла для большой нажатой кнопки.
<ИмяФайлаДляКнопкиLG> - имя файла для большой заблокированной кнопки.
<ИмяФайлаДляКнопкиHN> - имя файла для нормальной кнопки перемотки DESK'а в горизонтальном положении.
<ИмяФайлаДляКнопкиHG> - имя файла для заблокированной кнопки перемотки DESK'а в горизонтальном положении.
<ИмяФайлаДляКнопкиVN> - имя файла для нормальной кнопки перемотки DESK'а в вертикальном положении.
<ИмяФайлаДляКнопкиVG> - имя файла для заблокированной кнопки перемотки DESK'а в вертикальном положении.
Описания кнопок разделяются точкой с запятой. После последнего описания должна стоять точка.
В описании кнопки обязательно должны быть указаны bitmapSmallNormal и bitmapLargeNormal. Если не указаны битмапы для других состояний кнопки, они будут совпадать с битмапом её нормального состояния соответствующего размера.
В любом DESK'е обязательно должны быть описаны кнопки с именами _LOGO_VERT (вертикальный логотип Галактики), _LOGO_HOR (горизонтальный логотип Галактики), _DOWN_HOR (стрелка для перемотки DESK'а на одну позицию к началу списка кнопок) и _UP_HOR (стрелка для перемотки DESK'а на одну позицию к концу списка кнопок). Соответствующие им битмапы лежат в директории SOURCE.
Для кнопок _LOGO_VERT и _LOGO_HOR задаются bitmapSmallNormal и bitmapLargeNormal.
Для кнопок _DOWN_HOR и _UP_HOR задаются bitmapHorNormal, bitmapHorGray, bitmapVertNormal и bitmapVertGray. До 3.03.20 вместо указанных кнопок использовались bitmapSmallNormal, bitmapSmallGray, bitmapLargeNormal и bitmapLargeGray соответственно.
Пример. Приведенный в данном примере DESK будет загружать меню dogovor, buy и Nastr_g.
gDesk GAL; button _LOGO_VERT = { bitmapSmallNormal = 'desk\logo_vert_small.bmp'; bitmapLargeNormal = 'desk\logo_vert_large.bmp'; }; button _LOGO_HOR = { bitmapSmallNormal = 'desk\logo_hor_small.bmp'; bitmapLargeNormal = 'desk\logo_hor_large.bmp'; }; button _DOWN_HOR = { bitmapHorNormal = 'desk\down_hor_small_0.bmp'; bitmapHorGray = 'desk\down_hor_small_3.bmp'; bitmapVertNormal = 'desk\down_vert_small_0.bmp'; bitmapVertGray = 'desk\down_vert_small_3.bmp'; }; button _UP_HOR = { bitmapHorNormal = 'desk\up_hor_small_0.bmp'; bitmapHorGray = 'desk\up_hor_small_3.bmp'; bitmapVertNormal = 'desk\up_vert_small_0.bmp'; bitmapVertGray = 'desk\up_vert_small_3.bmp'; }; button dogovor = { title = 'Управление договорами'; bitmapSmallNormal = 'desk\16upr_dog.bmp'; bitmapLargeNormal = 'desk\upr_dog.bmp'; bitmapSmallDown = 'desk\16upr_dog-p.bmp'; bitmapLargeDown = 'desk\upr_dog-p.bmp'; hint = ' - ведение долгосрочных многоэтапных договоров на поставку товаров, оказание услуг по транспортировке' + ' - формирование наряд-заказов на отгрузку товаров на внутренний рынок и на экспорт' + ' - оперативное планирование и определение приоритетов отгрузок; формирование распоряжений и накладных на отгрузку' + ' - формирование отчетности и контроль состояния взаиморасчетов'; }; button buy = { title = 'У&правление снабжением'; bitmapSmallNormal = 'desk\16upr_snab.bmp'; bitmapLargeNormal = 'desk\upr_snab.bmp'; bitmapSmallDown = 'desk\16upr_snab-p.bmp'; bitmapLargeDown = 'desk\upr_snab-p.bmp'; hotKey = 'G'; hint = ' - ввод документов-оснований на закупку, этапов договоров' + ' - ввод накладных на приход и возврат по рекламации, актов на услуги и работы' + ' - выписка доверенностей' + ' - бартерные договоры' + ' - пакетное формирование ордеров по накладным' + ' - формирование платежных документов по закупкам' + ' - реестры исполняемых счетов' + ' - отчеты по закупкам'; }; button nastr_g = { title = '&Настройка'; bitmapSmallNormal = 'desk\16nastr.bmp'; bitmapLargeNormal = 'desk\nastr.bmp'; bitmapSmallDown = 'desk\16nastr-p.bmp'; bitmapLargeDown = 'desk\nastr-p.bmp'; hotKey = 'Y'; hint = ' - ведение каталогов и справочников' + ' - установка даты начала отчетного периода, базовой валюты и других системных данных' + ' - переход к новому месяцу' + ' - настройки пользователя' + ' - общесистемная настройка' + ' - работа с базой данных'; }.