Обьявление глобальных переменных, используемых в шаблонах GSM_TOOLS.
#!==========================================================================
#EXTENSION (GSM_GLOB, 'Add GSM Globals To Application'), APPLICATION, LAST
#!==========================================================================
#!
#SHEET
#TAB ('GSM_TOOLS')
#IMAGE('PILOT.ICO'),AT(10,20)
#DISPLAY('Pilot Corp.'),AT(40,20)
#DISPLAY('Version: 1.0 - Build: 0')
#DISPLAY('')
#ENDTAB
#TAB ('Options')
#BOXED ('Обои окон'), AT(,15)
#PROMPT ('&Разрешить обои
окон',CHECK),%GsmPatternFlag,AT(10),Default(1)
#ENABLE(%GSMPATTERNFLAG)
#PROMPT('Обои таблиц:',@S30),%GsmTabl1,AT(80),Default('.\Pic\Tabl1.bmp')
#PROMPT('Обои Select:',@S30),%GsmTablSel,AT(80),Default('.\Pic\TablSel.bmp')
#PROMPT('Обои форм:',@S30),%GsmForm1,AT(80),Default('.\Pic\Form1.bmp')
#PROMPT('Обои
удаления:',@S30),%GsmFormDel,AT(80),Default('.\Pic\FormDel1.bmp')
#PROMPT('Обои
ведомостей:',@S30),%GsmVedom1,AT(80),Default('.\Pic\Vedom1.bmp')
#PROMPT('Обои документов:',@S30),%GsmDoc1,AT(80),Default('.\Pic\Doc1.bmp')
#ENDENABLE
#ENDBOXED
#ENDTAB
#ENDSHEET
#! ------------------------------------------------------------------------
#AT(%BeforeGlobalIncludes)
THIS EQUATE( 0 )
NIL EQUATE( '' )
G:IniFileName CSTRING( 121 )
G:BasePath CSTRING( 121 )
G:PicPath CSTRING( 121 )
G:HelpPath CSTRING( 121 )
G:PatternFlag BYTE( 1 )
G:Tabl1 CSTRING( 81 )
G:Tabl2 CSTRING( 81 )
G:TablSel CSTRING( 81 )
G:Form1 CSTRING( 81 )
G:Form2 CSTRING( 81 )
G:FormDel CSTRING( 81 )
G:Vedom1 CSTRING( 81 )
G:Vedom2 CSTRING( 81 )
G:Doc1 CSTRING( 81 )
G:Doc2 CSTRING( 81 )
G:IconSFlag BYTE
G:IconFile CSTRING( 81 )
G:FlatFlag BYTE
G:TipsFlag BYTE( 1 )
G:FrameFile CSTRING( 81)
G:TiledFlag BYTE
G:SCode USHORT( 1 )
#ENDAT
THIS - обозначение, которым удобно пользоваться для указания свойств текущего окна (чтобы не путать с другими нулями
NIL - обозначение пустой строки
G:IniFileName - переменная для имени INI-файла приложения
В глобальной переменной G:BasePath хранится путь к файлам базы данных приложения. Он используется для инициализации имен файлов базы данных (смотрите раздел Имена файлов базы данных).
В глобальной переменной G:HelpPath хранится путь к файлам подсистемы помощи (смотрите Шаблон ButtonHelp).
G:PatternFlag - признак "Выводить обои окон". Следующие за ним 10 глобальных переменных предназначены для хранения имен файлов "обоев" (смотрите Шаблон WallPaper).
G:IconsFlag -
признак "Применять Значек приложения"
G:IconFile -
переменная для имени файла Значка (icon)
приложения. Этот значок будет использоваться во
всех окнах, если установлен признак G:IconsFlag.
G:FlatFlag - признак "Плавающие кнопки". Если этот признак включен, то все кнопки во всех окнах приложения будут выводиться "плавающими" (flat). Смотрите Шаблон FlatButtons.
G:TipsFlag - признак наличия подсказочек (tips). Включает вывод подсказочек у control-ов во всем приложении.
G:FrameFile -
переменная для имени файла c изображением фона
для основного окна (frame) приложения.
G:TiledFlag -
признак "Размножать фоновую картинку"
для фона основного окна приложения.
Инициализируются глобальные переменные шаблонов при помощи шаблона InitGlob, а редактируются и записываются - шаблоном SetupGlob.
Если ваше приложение состоит из нескольких DLL и EXE-файлов, то объявлять глобальные переменные этим шаблоном нужно только в одном из DLL. В остальных частях большого приложения их нужно объявлять при помощи похожего шаблона, в котором каждая из глобальных переменных имеет дополнительно атрибуты External и DLL(dll_mode).