home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / source / wpshidl / idl / wpfsys.idl < prev    next >
Encoding:
Text File  |  1993-11-17  |  7.2 KB  |  267 lines

  1.  
  2. //# This file was generated by the SOM Compiler.
  3. //# FileName: wpfsys.id2.
  4. //# Generated using:
  5. //#     SOM Precompiler somopc: 2.2
  6. //#     SOM Emitter emitidl: 2.7
  7.  
  8. //  Module Header
  9. //
  10. //  Module Name: WPFSYS
  11. //
  12. //  OS/2 Presentation Manager Workplace class definitions
  13. //
  14. //  Copyright (c) International Business Machines Corporation 1991, 1992
  15. //
  16.  
  17. #ifndef wpfsys_idl
  18. #define wpfsys_idl
  19.  
  20. #include "wpobject.idl"
  21. #include <somcls.idl>
  22.  
  23. interface M_WPFileSystem;
  24.  
  25. interface WPFileSystem : WPObject
  26.  
  27. {
  28.   BOOL wpSetRealName(in PSZ pszName);
  29.  
  30.   BOOL wpSetType(in PSZ pszTypes,
  31.                  in PFEA2LIST pfeal);
  32.  
  33.   PSZ wpQueryType();
  34.  
  35.   BOOL wpSetAttr(in ULONG attrFile);
  36.  
  37.   ULONG wpQueryAttr();
  38.  
  39.   ULONG wpAddFile1Page(in HWND hwndNotebook);
  40.  
  41.   ULONG wpAddFile2Page(in HWND hwndNotebook);
  42.  
  43.   ULONG wpAddFile3Page(in HWND hwndNotebook);
  44.  
  45.   ULONG wpAddFileMenuPage(in HWND hwndNotebook);
  46.  
  47.   ULONG wpQueryCreation(inout FDATE fdate,
  48.                         inout FTIME ftime);
  49.  
  50.   ULONG wpQueryLastAccess(inout FDATE fdate,
  51.                           inout FTIME ftime);
  52.  
  53.   ULONG wpQueryLastWrite(inout FDATE fdate,
  54.                          inout FTIME ftime);
  55.  
  56.   ULONG wpQueryFileSize();
  57.  
  58.   ULONG wpQueryEASize();
  59.  
  60.   ULONG wpSetDateInfo(inout FILEFINDBUF4 pstFileFindBuf);
  61.  
  62.   ULONG wpSetFileSizeInfo(in ULONG cbFileSize,
  63.                           in ULONG cbEASize);
  64.  
  65.   BOOL wpRefresh(in ULONG ulView,
  66.                  in PVOID pReserved);
  67.  
  68.   ULONG wpQueryRefreshFlags();
  69.  
  70.   BOOL wpSetRefreshFlags(in ULONG ulRefreshFlags);
  71.  
  72.   BOOL wpPrintPlainTextFile(in PPRINTDEST pPrintDest);
  73.  
  74.   BOOL wpSetTitleAndRenameFile(in PSZ pszNewTitle,
  75.                                in ULONG fConfirmations);
  76.  
  77.   ULONG wpConfirmRenameFileWithExt();
  78.  
  79.   ULONG wpVerifyUpdateAccess();
  80.  
  81.   BOOL wpAddUserItemsToPopupMenu(in HWND hwndMenu,
  82.                                  in HWND hwndCnr,
  83.                                  in ULONG iPosition);
  84.  
  85.   BOOL wpQueryRealName(in PSZ pszFilename,
  86.                        in PULONG pcb,
  87.                        in BOOL fQualified);
  88.  
  89.  
  90.  
  91.  
  92. #ifdef __SOMIDL__
  93.   implementation {
  94.  
  95.     releaseorder: wpSetRealName,withdrawn_wpQueryRealName,wpSetType,
  96.                   wpQueryType,wpSetAttr,wpQueryAttr,wpQueryFilename,
  97.                   wpAddFile1Page,wpAddFile2Page,wpAddFile3Page,wpAddFileMenuPage,
  98.                   wpQueryCreation,wpQueryLastAccess,wpQueryLastWrite,
  99.                   wpQueryFileSize,wpQueryEASize,wpSetDateInfo,wpSetFileSizeInfo,
  100.                   wpRefresh,wpPrintPlainTextFile,wpSetRefreshFlags,
  101.                   wpQueryRefreshFlags,wpQueryDriveData,wpSetTitleAndRenameFile,
  102.                   wpConfirmRenameFileWithExt,wpConfirmKeepAssoc,wpAddUserMenuItem,
  103.                   wpQueryDisk,wpQueryDateInfo,wpSetNewRealName,wpAdoptNewRealName,
  104.                   wpQueryRealName,wpVerifyUpdateAccess,wpAddUserItemsToPopupMenu;
  105.  
  106.     //# Class Modifiers
  107.     externalstem = wpfs;
  108.     local;
  109.     externalprefix = fs_;
  110.     majorversion = 1;
  111.     minorversion = 2;
  112.     filestem = wpfsys;
  113.     metaclass = M_WPFileSystem;
  114.     callstyle = oidl;
  115.     dllname = "pmwp.dll";               //sahsom2
  116.  
  117.  
  118.     passthru C_h_after =  "      /* Structure used to read + write the .CLASSINFO ea */"
  119. ""
  120. "      typedef struct _INFOCLASS"
  121. "      {"
  122. "         ULONG    flags;"
  123. "         PSZ      pszClass;"
  124. "         ULONG    cbObjData;"
  125. "         POBJDATA pObjData;"
  126. "      } INFOCLASS;"
  127. "      typedef INFOCLASS * PINFOCLASS;"
  128. ""
  129. "      /* FILEDETAILS structure used for details view */"
  130. ""
  131. "    typedef struct _FILEDETAILS"
  132. "    {"
  133. "       PSZ      pszRealName;     /* Real name */"
  134. "       ULONG    ulSize;          /* Size of the file */"
  135. "       CDATE    cdateLastMod;    /* Last modification date */"
  136. "       CTIME    ctimeLastMod;    /* Last modification time */"
  137. "       CDATE    cdateLastAccess; /* Last access date */"
  138. "       CTIME    ctimeLastAccess; /* Last access time */"
  139. "       CDATE    cdateCreation;   /* Date of creation */"
  140. "       CTIME    ctimeCreation;   /* Time of creation */"
  141. "       ULONG    ulFlags;         /* File flags */"
  142. "    }  FILEDETAILS;"
  143. ""
  144. "    typedef FILEDETAILS * PFILEDETAILS;"
  145. ""
  146. "    #define NUM_FILEDETAILS_FIELDS    9     /* Count of fields in FILEDETAILS */"
  147. ""
  148. "      /* format of the extended search criteria for this class */"
  149. "      typedef struct _FILESYS_SEARCH_INFO {"
  150. "         USHORT Exclude;"
  151. "         USHORT MustHave;"
  152. ""
  153. "         BOOL   fIncludeLMD;"
  154. "         USHORT LMDyear;"
  155. "         USHORT LMDmonth;"
  156. "         USHORT LMDday;"
  157. "          SHORT LMDcriteria;"
  158. ""
  159. "         BOOL   fIncludeLMT;"
  160. "         USHORT LMThours;"
  161. "         USHORT LMTminutes;"
  162. "         USHORT LMTseconds;"
  163. "          SHORT LMTcriteria;"
  164. ""
  165. "         BOOL   fIncludeFDS;"
  166. "         ULONG  FDSsize;"
  167. "         SHORT  FDScriteria;"
  168. ""
  169. "         BOOL   fIncludeFEAS;"
  170. "         ULONG  FEASsize;"
  171. "         SHORT  FEAScriteria;"
  172. ""
  173. "         BOOL   fMustHaveNeedEA;"
  174. "         BOOL   fMustNotHaveNeedEA;"
  175. "         } FILESYS_SEARCH_INFO;"
  176. "         typedef FILESYS_SEARCH_INFO *PFILESYS_SEARCH_INFO;"
  177. ""
  178. ""
  179. "      /* Alignment macro: ensure alignment on 4byte boundary */"
  180. ""
  181. "      #define ALIGN4(p) (PVOID)( ( ((ULONG)p) + 3 ) & 0xFFFFFFFC )"
  182. ""
  183. "      /* return values for wpConfirmRenameFileWithExt */"
  184. "      #define KEEP_RENAMEFILESWITHEXT     1"
  185. "      #define DISCARD_RENAMEFILESWITHEXT  2"
  186. "      #define CANCEL_RENAMEFILESWITHEXT   3"
  187. ""
  188. ""
  189. "";
  190.  
  191.  
  192.     //# Method Modifiers
  193.     wpUnInitData: override;
  194.     wpQueryHandle: override;
  195.     wpSaveImmediate: override;
  196.     wpFilterPopupMenu: override;
  197.     wpSetTitle: override;
  198.     wpViewObject: override;
  199.     wpSwitchTo: override;
  200.     wpAddSettingsPages: override;
  201.     wpCopyObject: override;
  202.     wpCreateFromTemplate: override;
  203.     wpMoveObject: override;
  204.     wpQueryIconData: override;
  205.     wpSetIconData: override;
  206.     wpQueryDetailsData: override;
  207.     wpModifyPopupMenu: override;
  208.     wpSaveState: override;
  209.     wpRestoreState: override;
  210.     wpMenuItemSelected: override;
  211.     wpOpen: override;
  212.     wpDraggedOverObject: override;
  213.     wpDroppedOnObject: override;
  214.     wpFormatDragItem: override;
  215.     wpQueryNameClashOptions: override;
  216.     wpAppendObject: override;
  217.     wpReplaceObject: override;
  218.     wpQueryStyle: override;
  219.     wpSetStyle: override;
  220.     wpDoesObjectMatch: override;
  221.  
  222.     //# Data Modifiers
  223.  
  224.  
  225.   };
  226. #endif /* __SOMIDL__ */
  227. };
  228.  
  229. interface M_WPFileSystem
  230. {
  231.   WPObject wpclsQueryObjectFromPath(in PSZ pszFQPath);
  232.  
  233.   PSZ wpclsQueryInstanceType();
  234.  
  235.   PSZ wpclsQueryInstanceFilter();
  236.  
  237.  
  238.  
  239. #ifdef __SOMIDL__
  240.   implementation {
  241.  
  242.     releaseorder: wpclsQueryInstanceType,wpclsQueryInstanceFilter,wpclsQueryObjectFromPath;
  243.  
  244.     //# Class Modifiers
  245.     externalstem = wpfs;
  246.     local;
  247.     externalprefix = fsM_;
  248.     majorversion = 1;
  249.     minorversion = 2;
  250.     filestem = wpfsys;
  251.     callstyle = oidl;
  252.     dllname = "pmwp.dll";               //sahsom2
  253.  
  254.     //# Method Modifiers
  255.     wpclsInitData: override;
  256.     wpclsQueryTitle: override;
  257.     wpclsQueryDetailsInfo: override;
  258.     wpclsQuerySearchInfo: override;
  259.     wpclsQueryExtendedCriteria: override;
  260.  
  261.  
  262.   };
  263. #endif /* __SOMIDL__ */
  264. };
  265.  
  266. #endif  /* wpfsys_idl */
  267.