home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mod201j.zip / modula2.exe / os2api / wpfilter.def < prev    next >
Text File  |  1994-05-24  |  5KB  |  170 lines

  1. DEFINITION MODULE WPFILTER;
  2.  
  3. (***************************************************************************
  4.   OS/2 2.1 Workplace class interface for WPFilter
  5.  
  6.   Copyright (c) 1994 by Juergen Neuhoff
  7. ****************************************************************************)
  8.  
  9. (*$XL+       Modula-2 language extensions: '_' allowed for symbol names *)
  10. (*$CDECL+    C-style procedures                                         *)
  11. (*$A         default alignment for record fields                        *)
  12.  
  13. IMPORT SOM;
  14. IMPORT WPTRANS;
  15. IMPORT WPOBJECT;
  16. IMPORT OS2DEF;
  17. IMPORT SYSTEM;
  18.  
  19. TYPE PSOMClass              = SOM.PSOMClass;
  20. TYPE INTEGER4               = SOM.INTEGER4;
  21. TYPE somMToken              = SOM.somMToken;
  22. TYPE somDToken              = SOM.somDToken;
  23. TYPE somMethodProc          = SOM.somMethodProc;
  24. TYPE PWPFilter              = POINTER TO WPFilter;
  25. TYPE PM_WPFilter            = POINTER TO M_WPFilter;
  26.  
  27. (************************************************************************
  28.   Additional TYPE- and CONST-declarations supporting WPFilter
  29. *************************************************************************)
  30.  
  31. TYPE PCLASS                 = WPOBJECT.PCLASS;
  32. TYPE PSZ                    = OS2DEF.PSZ;
  33. TYPE PWPFolder              = WPOBJECT.PWPObject;
  34. TYPE HWND                   = OS2DEF.HWND;
  35. TYPE PWPObject              = WPOBJECT.PWPObject;
  36. TYPE CLASSCRITERIA          = WPOBJECT.CLASSCRITERIA;
  37. TYPE BYTE                   = SYSTEM.BYTE;
  38.  
  39. (*************************************************************************
  40.   SOM class API for WPFilter, including type-bound procedures
  41. **************************************************************************)
  42.  
  43. CONST
  44.   WPFilter_MajorVersion     = 1;
  45.   WPFilter_MinorVersion     = 2;
  46.  
  47. TYPE
  48.   WPFilterClassDataStructure     = RECORD
  49.     classObject                    : PSOMClass;
  50.     wpMatchesFilter                : somMToken;
  51.     wpAddFilterSettingsPage        : somMToken;
  52.     wpSetClassList                 : somMToken;
  53.     wpQueryClassList               : somMToken;
  54.     wpSetNameFilter                : somMToken;
  55.     wpQueryNameFilter              : somMToken;
  56.     wpSetFolderToFilter            : somMToken;
  57.     wpQueryFolderToFilter          : somMToken;
  58.     wpFilterFolderView             : somMToken;
  59.     wpConvertDataToCriteria        : somMToken;
  60.     wpConvertCriteriaToData        : somMToken;
  61.     wpOnlyHasDefaultCriteria       : somMToken;
  62.     wpAddFilterCriteriaPage        : somMToken;
  63.                                    END;
  64.  
  65. VAR
  66.   WPFilterClassData : WPFilterClassDataStructure;
  67.  
  68. TYPE
  69.   (*$SOM+ *)
  70.   WPFilter = RECORD( WPTRANS.WPTransient ) END;
  71.   (*$SOM- *)
  72.  
  73.  
  74. PROCEDURE WPFilterNewClass
  75. (
  76.   majorVersion  : INTEGER4;
  77.   minorVersion  : INTEGER4
  78. )               : PSOMClass;
  79.  
  80. PROCEDURE( Self : PWPFilter ) wpSetClassList
  81. (
  82.   pClassList    : PCLASS
  83. )               : BOOLEAN;
  84.  
  85. PROCEDURE( Self : PWPFilter ) wpQueryClassList( ) : PCLASS;
  86.  
  87. PROCEDURE( Self : PWPFilter ) wpSetNameFilter
  88. (
  89.   szNameFilter  : ARRAY OF CHAR
  90. )               : BOOLEAN;
  91.  
  92. PROCEDURE( Self : PWPFilter ) wpQueryNameFilter( ) : PSZ;
  93.  
  94. PROCEDURE( Self : PWPFilter ) wpSetFolderToFilter
  95. (
  96.   Folder        : PWPFolder
  97. )               : BOOLEAN;
  98.  
  99. PROCEDURE( Self : PWPFilter ) wpQueryFolderToFilter( ) : PWPFolder;
  100.  
  101. PROCEDURE( Self : PWPFilter ) wpFilterFolderView
  102. (
  103.   hwndCnr       : HWND;
  104.   fInvalidate   : BOOLEAN
  105. )               : BOOLEAN;
  106.  
  107. PROCEDURE( Self : PWPFilter ) wpMatchesFilter
  108. (
  109.   Object        : PWPObject
  110. )               : BOOLEAN;
  111.  
  112. PROCEDURE( Self : PWPFilter ) wpAddFilterSettingsPage
  113. (
  114.   hwndNotebook  : HWND;
  115.   fActionDialog : BOOLEAN
  116. )               : LONGCARD;
  117.  
  118. PROCEDURE( Self : PWPFilter ) wpAddFilterCriteriaPage
  119. (
  120.   hwndNotebook      : HWND;
  121.   fActionDialog     : BOOLEAN;
  122.   VAR ClassCriteria : CLASSCRITERIA
  123. )                   : LONGCARD;
  124.  
  125. PROCEDURE( Self : PWPFilter ) wpConvertDataToCriteria
  126. (
  127.   VAR CriteriaData : ARRAY OF BYTE;
  128.   cbCriteriaData   : LONGCARD
  129. )                  : BOOLEAN;
  130.  
  131. PROCEDURE( Self : PWPFilter ) wpConvertCriteriaToData
  132. (
  133.   VAR CriteriaData   : ARRAY OF BYTE;
  134.   VAR cbCriteriaData : LONGCARD
  135. )                    : BOOLEAN;
  136.  
  137. PROCEDURE( Self : PWPFilter ) wpOnlyHasDefaultCriteria( ) : BOOLEAN;
  138.  
  139.  
  140. (*************************************************************************
  141.   SOM class API for M_WPFilter, including type-bound procedures
  142. **************************************************************************)
  143.  
  144. CONST
  145.   M_WPFilter_MajorVersion   = 1;
  146.   M_WPFilter_MinorVersion   = 2;
  147.  
  148. TYPE
  149.   M_WPFilterClassDataStructure   = RECORD
  150.     classObject                    : PSOMClass;
  151.                                    END;
  152.  
  153. VAR
  154.   M_WPFilterClassData : M_WPFilterClassDataStructure;
  155.  
  156. TYPE
  157.   (*$SOM+ *)
  158.   M_WPFilter = RECORD( WPTRANS.M_WPTransient ) END;
  159.   (*$SOM- *)
  160.  
  161.  
  162. PROCEDURE M_WPFilterNewClass
  163. (
  164.   majorVersion : INTEGER4;
  165.   minorVersion : INTEGER4
  166. )              : PSOMClass;
  167.  
  168.  
  169. END WPFILTER.
  170.