` Printed Icetips Article

Icetips Article



Par2: Template to exclude unneeded classes
1999-06-18 -- Randy Rogers
 
#TEMPLATE (EGC, 'Exclude Global Class Application Builder Class Template
v1.0'),FAMILY('ABC')
#EXTENSION(ExcludeGlobalClass,'Exclude Global Class Generation'),APPLICATION
#!--------------------------------------------------------------
#BOXED('Keystone')
  #DISPLAY ('The default ABC templates generate an instance of each '),AT(10)
  #DISPLAY ('base class when the target type is DLL and the ''generate'),AT(10)
  #DISPLAY ('template globals and ABC''s as EXTERNAL'' check box is'),AT(10)
  #DISPLAY ('not checked.  This can cause compile errors for some'),AT(10)
  #DISPLAY ('ABC compatible classes that require supporting libraries.'),AT(10)
  #DISPLAY ('For example, our Network Class will cause compiler errors.'),AT(10)
  #DISPLAY ('Adding ''NetworkClass'' to the list box below will override'),AT(10)
  #DISPLAY ('the default template behaviour and eliminate the compiler'),AT(10)
  #DISPLAY ('errors.'),AT(10)
  #DISPLAY ('')
  #PROMPT  ('Exclude All Non-Topspeed ABC
Classes',CHECK),%ExcludeAll,AT(10),DEFAULT(%FALSE)
  #DISPLAY ('')
  #ENABLE(~%ExcludeAll),CLEAR
    #DISPLAY ('Exclude Class:')
    #PROMPT('&Exclude Class:',FROM(%pClassname)),%ExcludeClass,MULTI('ABC
Classes'),INLINE
  #ENDENABLE
  #DISPLAY ('')
#ENDBOXED
#!
#ATSTART
#DECLARE(%SortedClassname),MULTI,UNIQUE
#FOR(%pClassname)
  #ADD(%SortedClassname,%pClassname)
#ENDFOR
  #IF(%ExcludeAll)
    #FOR(%SortedClassname)
      #CASE(%SortedClassname)
      #OF('AsciiFileClass')
      #OROF('AsciiPrintClass')
      #OROF('AsciiSearchClass')
      #OROF('AsciiViewerClass')
      #OROF('BrowseClass')
      #OROF('BrowseEIPManager')
      #OROF('BufferedPairsClass')
      #OROF('ConstantClass')
      #OROF('EditCheckClass')
      #OROF('EditClass')
      #OROF('EditColorClass')
      #OROF('EditDropListClass')
      #OROF('EditEntryClass')
      #OROF('EditFileClass')
      #OROF('EditFontClass')
      #OROF('EditMultiSelectClass')
      #OROF('EditSpinClass')
      #OROF('EditTextClass')
      #OROF('EIPManager')
      #OROF('EntryLocatorClass')
      #OROF('ErrorClass')
      #OROF('FieldPairsClass')
      #OROF('FileDropClass')
      #OROF('FileDropComboClass')
      #OROF('FileManager')
      #OROF('FilterLocatorClass')
      #OROF('IncrementalLocatorClass')
      #OROF('INIClass')
      #OROF('LocatorClass')
      #OROF('PopupClass')
      #OROF('PrintPreviewClass')
      #OROF('ProcessClass')
      #OROF('QueryClass')
      #OROF('QueryFormClass')
      #OROF('QueryFormVisual')
      #OROF('QueryListClass')
      #OROF('QueryListVisual')
      #OROF('QueryVisual')
      #OROF('RelationManager')
      #OROF('ReportManager')
      #OROF('SelectFileClass')
      #OROF('StepClass')
      #OROF('StepCustomClass')
      #OROF('StepLocatorClass')
      #OROF('StepLongClass')
      #OROF('StepRealClass')
      #OROF('StepStringClass')
      #OROF('ToolbarClass')
      #OROF('ToolbarListboxClass')
      #OROF('ToolbarReltreeClass')
      #OROF('ToolbarTarget')
      #OROF('ToolbarUpdateClass')
      #OROF('TranslatorClass')
      #OROF('ViewManager')
      #OROF('WindowManager')
      #OROF('WindowResizeClass')
        #! Do Nothing
      #ELSE
        #FIX(%pClassname,%SortedClassname)
        #DELETE(%pClassname)
      #ENDCASE
    #ENDFOR
  #ELSE
    #FOR(%ExcludeClass)
      #FIX(%pClassname,%ExcludeClass)
      #IF(%pClassname = %ExcludeClass)
        #DELETE(%pClassname)
      #ENDIF
    #ENDFOR
  #ENDIF
#ENDAT
#!



Printed November 21, 2024, 6:43 am
This article has been viewed/printed 35345 times.