Шаблон  BrowseFormat    

Сохранение формата колонок Browse в INI-файле.   Можно отменить формат пользователя нажатием "горячей клавиши".
Взято целиком из набора шаблонов TinTools   (c) 1996,97 By Tinman Development Corp (All Rights Reserved World Wide).

#!---------------------------------------------------------------------------
#!
Сохранение формата колонок Browse Browse
#!---------------------------------------------------------------------------
#EXTENSION (BrowseFormatSave,'Save Browse Box Columns'),REQ(BrowseBox(Clarion))
#BOXED ('Сохранение формата Browse')
#DISPLAY ('Сохраняет изменения колонок browse ')
#PROMPT('Гор.клавиша для сброса: ',KEYCODE),%GsmBRWALERTKEY,Default('CtrlShiftC')
#ENDBOXED
#ATSTART
#DECLARE(%GsmBrowsePrefix)
#DECLARE(%GsmBrowseCTRL)
#SET(%GsmBrowsePrefix,'GsmBRW::' & %ActiveTemplateInstance)
#! #FIND(%ActiveTemplateInstance,%ControlInstance,%ActiveTemplate)
#FOR(%CONTROL),WHERE(%ControlInstance=%ActiveTemplateParentInstance)
  #SET(%GsmBrowseCTRL,%CONTROL)
#ENDFOR
#ENDAT
#AT(%DataSectionBeforeWindow)
%GsmBrowsePrefix:ORIG STRING(255) !PROGRAM SETTINGS
%GsmBrowsePrefix:USER STRING(255) !USERS SETTINGS
%GsmBrowsePrefix:USERFSET BYTE
#ENDAT
#AT(%AfterWindowOpening)
  do %GsmBrowsePrefix::SETUP
#ENDAT
#AT(%AcceptLoopBeforeEventHandling)
#IF(%GsmBRWALERTKEY)
if EVENT() = EVENT:ALERTKEY AND KEYCODE() = %GsmBRWALERTKEY
   do %GsmBrowsePrefix::FORMAT
   cycle
.
#ENDIF
#ENDAT
#AT(%BeforeWindowClosing)
  alert()
  do %GsmBrowsePrefix::SAVE
#ENDAT
#AT(%ProcedureRoutines)
%GsmBrowsePrefix::FORMAT ROUTINE
if %GsmBrowsePrefix:USERFSET
   %GsmBrowseCTRL{Prop:Format} = %GsmBrowsePrefix:ORIG
   %GsmBrowsePrefix:USERFSET = FALSE
else
   %GsmBrowseCTRL{Prop:Format} = %GsmBrowsePrefix:USER
   %GsmBrowsePrefix:USERFSET = TRUE
.
display(%GsmBrowseCTRL)

%GsmBrowsePrefix::SETUP Routine
%GsmBrowsePrefix:ORIG = GetIni('%Procedure','%GsmBrowseCTRL:ORIG',%GsmBrowseCTRL{Prop:Format},'%IniFileName')
%GsmBrowsePrefix:USER = GetIni('%Procedure','%GsmBrowseCTRL:USER',%GsmBrowseCTRL{Prop:Format},'%IniFileName')
%GsmBrowseCTRL{Prop:Format} = %GsmBrowsePrefix:USER
%GsmBrowsePrefix:USERFSET = TRUE
#IF(%GsmBRWALERTKEY)
alert(%GsmBRWALERTKEY)
#ENDIF

%GsmBrowsePrefix::SAVE Routine
PutIni('%Procedure','%GsmBrowseCTRL:ORIG',%GsmBrowsePrefix:ORIG,'%IniFileName')
PutIni('%Procedure','%GsmBrowseCTRL:USER',%GsmBrowseCTRL{Prop:Format},'%IniFileName')
#ENDAT

Hosted by uCoz