home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / dtswps.zip / DTSFILES.ZIP / WPFOLDER.IDL < prev    next >
Text File  |  1996-04-18  |  13KB  |  248 lines

  1. //  Module Header
  2. //
  3. //  Module Name: WPFOLDER
  4. //
  5. //  OS/2 Presentation Manager Workplace class definitions
  6. //
  7. //  Copyright (c) International Business Machines Corporation 1991, 1992
  8. //
  9. #ifndef wpfolder_idl
  10. #define wpfolder_idl
  11. #include "wpfsys.idl"
  12. #include <somcls.idl>
  13. interface M_WPFolder;
  14. interface WPFolder : WPFileSystem
  15. {
  16.   BOOL wpSetFldrFlags(in ULONG ulFlags);
  17.   ULONG wpQueryFldrFlags();
  18.   BOOL wpSetFldrFont(in PSZ pszFont,
  19.                      in ULONG ulView);
  20.   PSZ wpQueryFldrFont(in ULONG ulView);
  21.   BOOL wpSetFldrAttr(in ULONG Attr,
  22.                      in ULONG ulView);
  23.   ULONG wpQueryFldrAttr(in ULONG ulView);
  24.   BOOL wpSetNextIconPos(in PPOINTL pptl);
  25.   PPOINTL wpQueryNextIconPos();
  26.   BOOL wpPopulate(in ULONG ulReserved,
  27.                   in PSZ pszPath,
  28.                   in BOOL fFoldersOnly);
  29.   WPObject wpQueryContent(in WPObject Object,
  30.                           in ULONG ulOption);
  31.   ULONG wpAddFolderView1Page(in HWND hwndNotebook);
  32.   ULONG wpAddFolderView2Page(in HWND hwndNotebook);
  33.   ULONG wpAddFolderView3Page(in HWND hwndNotebook);
  34.   ULONG wpAddFolderIncludePage(in HWND hwndNotebook);
  35.   ULONG wpAddFolderSortPage(in HWND hwndNotebook);
  36.   ULONG wpAddFolderBackgroundPage(in HWND hwndNotebook);
  37.   ULONG wpAddFolderSelfClosePage (in HWND hwndNotebook);
  38.   BOOL wpInitIconPosData();
  39.   void wpFreeIconPosData();
  40.   BOOL wpStoreIconPosData(in PICONPOS pIconPos,
  41.                           in ULONG cbSize);
  42.   BOOL wpQueryIconPosition(in PSZ pszIdentity,
  43.                            in PPOINTL pptl,
  44.                            in PULONG pIndex);
  45.   BOOL wpSetFldrSort(in PVOID pSortRecord,
  46.                      in ULONG ulView,
  47.                      in ULONG ulType);
  48.   PVOID wpQueryFldrSort(in ULONG ulView,
  49.                         in ULONG ulType);
  50.   BOOL wpRestoreFldrRunObjs();
  51.   BOOL wpStoreFldrRunObjs(in ULONG ulType);
  52.   BOOL wpHideFldrRunObjs(in BOOL fHide);
  53.   ULONG wpDeleteContents(in ULONG fConfirmations);
  54.   BOOL wpSetFldrDetailsClass(in M_WPObject Class);
  55.   M_WPObject wpQueryFldrDetailsClass();
  56.   BOOL wpSearchFolder(in PSZ pszName,
  57.                       in ULONG ulSearchType,
  58.                       in ULONG ulLen,
  59.                       in PSEARCH_INFO pInfo,
  60.                       in WPFolder ResultFolder);
  61.   BOOL wpContainsFolders(inout BOOL pfSubFolders);
  62.   WPObject wpQueryOpenFolders(in ULONG ulOption);
  63.   BOOL wpModifyFldrFlags(in ULONG ulFlags,
  64.                          in ULONG ulFlagMask);
  65.   BOOL wpAddToContent(in WPObject Object);
  66.   BOOL wpDeleteFromContent(in WPObject Object);
  67.   BOOL wpSetDetailsColumnVisibility(in ULONG index,
  68.                                     in BOOL Visible);
  69.   BOOL wpIsDetailsColumnVisible(in ULONG index);
  70.   BOOL wpSetFldrSortClass(in M_WPObject Class);
  71.   M_WPObject wpQueryFldrSortClass();
  72.   BOOL wpSetSortAttribAvailable(in ULONG index,
  73.                                 in BOOL Available);
  74.   BOOL wpIsSortAttribAvailable(in ULONG index);
  75.   CHAR *wpQueryIconViewPos();
  76.   WPObject wpAddFirstChild();
  77. #ifdef __SOMIDL__
  78.   implementation {
  79.     releaseorder: wpSetFldrFlags,wpQueryFldrFlags,wpSetFldrFont,wpQueryFldrFont,
  80.                   wpSetNextIconPos,wpQueryNextIconPos,wpPopulate,wpAddToContent,
  81.                   wpQueryContent,wpAddFolderView1Page,wpAddFolderView2Page,
  82.                   wpAddFolderView3Page,wpAddFolderIncludePage,wpAddFolderSortPage,
  83.                   wpAddFolderBackgroundPage,wpInitIconPosData,wpFreeIconPosData,
  84.                   wpQueryIconPosition,wpStoreIconPosData,wpDeleteFromContent,
  85.                   wpSetFldrAttr,wpQueryFldrAttr,wpSetFldrSort,wpQueryFldrSort,
  86.                   wpRestoreFldrRunObjs,wpStoreFldrRunObjs,withdrawn30,
  87.                   withdrawn31,wpDeleteContents,wpQueryOpenFolders,
  88.                   wpSetNextOpenFldr,wpSearchFolder,wpSetFldrDetailsClass,
  89.                   wpQueryFldrDetailsClass,wpRefresh,wpSetDetailsColumnVisibility,
  90.                   wpIsDetailsColumnVisible,wpQuerySortArray,wpSetSortArray,
  91.                   wpQuerySortInfo,wpSetSortInfo,wpSetFldrSortClass,
  92.                   wpQueryFldrSortClass,wpSetSortAttribAvailable,wpIsSortAttribAvailable,
  93.                   wpQueryFldrFilter,wpContainsFolders,wpQueryBkgnd,
  94.                   wpQueryIconViewPos,wpQueryDefaultView,wpAddFirstChild,
  95.                   _get_FirstObj,wpHideFldrRunObjs,wpFSNotifyFolder,
  96.                   wpAddNotification,wpDeleteNotification,wpProcessNotification,
  97.                   wpModifySneakyCount,wpSneakySupported,wpAssertFolderMutexSem,
  98.                   wpReleaseFolderMutexSem,wpRequestFolderMutexSem,
  99.                   wpQueryContentHashTable,wpQueryNextOpenFldr,_get_hmtxOneFindAtATime,
  100.                   wpRequestFindMutexSem,wpReleaseFindMutexSem,_get_hevFillFolder,
  101.                   wpModifyFldrFlags,wpQueryTrueFldrFont,wpRemoveFldrFont,
  102.                   wpRemoveAllFldrInstanceFonts,wpRefreshNotebookPage,
  103.                   wpQueryRWMonitorObject,wpQueryIconTextBackgroundColor,
  104.                   wpSetIconTextBackgroundColor,
  105.                   wpRedrawFolderBackground,wpMakeInstanceBackground,                              wpUseDefaultBackground,                                                         wpQueryIconTextColor,wpSetIconTextColor,                                        wpQueryIconTextVisibility,                                                      wpSetIconTextVisibility,                                                        wpAddFolderSelfClosePage,                                                       wpSetFldrSelfClose,                                                             wpQueryFldrSelfClose,                                                           _get_retaddrFindSemOwner,                                                       wpIsOwnView,                                                                    wpSetIconDataN,wpSetIconN,wpQueryIconN,                                         wpSetFolderSelfClosePageID,                                                     wpQueryFolderSelfClosePageID,                                                   wpQueryIconDataN,                                                               wpApplyIconPosData;
  106.     externalstem = wpfdr;
  107.     local;
  108.     externalprefix = fdr_;
  109.     majorversion = 1;
  110.     minorversion = 2;
  111.     filestem = wpfolder;
  112.     metaclass = M_WPFolder;
  113.     callstyle = oidl;
  114.     dllname = "pmwp.dll";                   passthru C_h_after =  ""
  115. "      /* Folder flags */"
  116. ""
  117. "      #define FOI_POPULATEDWITHALL      0x0001"
  118. "      #define FOI_POPULATEDWITHFOLDERS  0x0002"
  119. "      #define FOI_WORKAREA              0x0004"
  120. "      #define FOI_CHANGEFONT            0x0008        /* anti-recursion flag */"
  121. "      #define FOI_WAMINIMIZED           0x0020"
  122. "      #define FOI_WASTARTONRESTORE      0x0040"
  123. "      #define FOI_NOREFRESHVIEWS        0x0080"
  124. "      #define FOI_ASYNCREFRESHONOPEN    0x0100"
  125. "      #define FOI_TREEPOPULATED         0x0200"
  126. "      #define FOI_POPULATEINPROGRESS    0x0400                          /*DORM*/"
  127. "      #define FOI_REFRESHINPROGRESS     0x0800"
  128. "      #define FOI_FIRSTPOPULATE         0x1000  /* folder has no iconposdata */ //LD62414"
  129. "      #define FOI_WAMCRINPROGRESS       0x2000  /* Minimize, close, restore in progress ihs67096 */"
  130. "      #define FOI_CNRBKGNDOLDFORMAT     0x4000  /* CnrBkgnd saved in old format   ihs77154 */"
  131. "      #define FOI_CHANGEICONBGNDCOLOR   0x8000  /* Icon Text Background Color changing ihs79998 */"
  132. "      #define FOI_CHANGEICONTEXTCOLOR   0x00010000 /* Icon Text Color changing    ihs89146 */"
  133. "      #define FOI_DELETEINPROGRESS      0x00020000 /* To prevent wpFree from repopulating */" ""
  134. "      /* Open views for the wpOpen() method */"
  135. ""
  136. "      #define OPEN_TREE          101"
  137. "      #define OPEN_DETAILS       102"
  138. ""
  139. "      /* Folder save-restore keys */"
  140. ""
  141. "      #define IDKEY_FDRCONTENTATTR     2900"
  142. "      #define IDKEY_FDRTREEATTR        2901"
  143. "      #define IDKEY_FDRCVLFONT         2902"
  144. "      #define IDKEY_FDRCVNFONT         2903"
  145. "      #define IDKEY_FDRCVIFONT         2904"
  146. "      #define IDKEY_FDRTVLFONT         2905"
  147. "      #define IDKEY_FDRTVNFONT         2906"
  148. "      #define IDKEY_FDRDETAILSATTR     2907"
  149. "      #define IDKEY_FDRDVFONT          2908"
  150. "      #define IDKEY_FDRDETAILSCLASS    2909"
  151. "      #define IDKEY_FDRICONPOS         2910"
  152. "      #define IDKEY_FDRINVISCOLUMNS    2914"
  153. "      #define IDKEY_FDRINCCLASS        2920"
  154. "      #define IDKEY_FDRINCNAME         2921"
  155. "      #define IDKEY_FDRFSYSSEARCHINFO  2922"
  156. "      #define IDKEY_FILTERCONTENT      2923"
  157. "      #define IDKEY_CNRBACKGROUND      2924"
  158. "      #define IDKEY_FDRINCCRITERIA     2925"
  159. "      #define IDKEY_FDRICONVIEWPOS     2926"
  160. "      #define IDKEY_FDRSORTCLASS       2927"
  161. "      #define IDKEY_FDRSORTATTRIBS     2928"
  162. "      #define IDKEY_FDRSORTINFO        2929"
  163. "      #define IDKEY_FDRSNEAKYCOUNT     2930                              /*SNK*/"
  164. "      #define IDKEY_FDRLONGARRAY       2931"
  165. "      #define IDKEY_FDRSTRARRAY        2932"
  166. "      #define IDKEY_FDRCNRBACKGROUND   2933  // This key was only used in"      "                                             // internal drivers 8.117-8.139"   "      #define IDKEY_FDRBKGNDIMAGEFILE  2934"                                    "      #define IDKEY_FDRBACKGROUND      2935"                                    "      #define IDKEY_FDRSELFCLOSE       2936"                                    ""
  167. "      /* Miscellaneous */"
  168. ""
  169. "      #define PPFONTSTRSIZE 20"
  170. ""
  171. "      #define ICONPOSSIZE(pI) ( sizeof(ICONPOS) + strlen(pI->szIdentity) )"
  172. "      #define PARTIAL_FILLFOLDER_SEM_TIMEOUT 5   /* avoid wasteful       */     //LD62414"
  173. "                                                 /* SEM_INDEFEINTE_WAIT  */     //LD62414"
  174. "      #define GETATTR(View) (View == OPEN_CONTENTS ? _ContentAttr : \ "
  175. "                             (View == OPEN_TREE ? _TreeAttr : _DetailsAttr))"
  176. "      #define FOLDER_DEFATTRS (CV_ICON | CA_OWNERPAINTBACKGROUND     |  \ "
  177. "                               CA_MIXEDTARGETEMPH | CA_OWNERDRAW)"
  178. "      #define FOLDER_DEFTREEATTRS (CV_ICON | CA_OWNERPAINTBACKGROUND |  \ "
  179. "                                   CV_TREE | CA_TREELINE | CA_OWNERDRAW)"
  180. "      #define FOLDER_DEFDETAILS (CV_DETAIL | CA_OWNERPAINTBACKGROUND |  \ "
  181. "                       CV_MINI | CA_DETAILSVIEWTITLES | CA_MIXEDTARGETEMPH)"
  182. "      #define FOLDER_DEFSORT NULL"
  183. ""
  184. "      /* wpSearchFolder structures */"
  185. "       typedef struct _SEARCH_INFO {"
  186. "          M_WPObject *ClassToBeFound;"
  187. "          BOOL   fSkipExtendedSearchCriteria;"
  188. "          PVOID  pvoidExtendedCriteria;"
  189. "       } SEARCH_INFO;"
  190. "       typedef SEARCH_INFO *PSEARCH_INFO;"
  191. ""
  192. "";
  193.     wpInitData: override;
  194.     wpUnInitData: override;
  195.     wpFree: override;
  196.     wpDelete: override;
  197.     wpConfirmDelete: override;
  198.     wpSaveState: override;
  199.     wpRestoreState: override;
  200.     wpMenuItemSelected: override;
  201.     wpModifyPopupMenu: override;
  202.     wpAddSettingsPages: override;
  203.     wpOpen: override;
  204.     wpSetup: override;
  205.     wpMoveObject: override;
  206.     wpDrop: override;
  207.     wpDragOver: override;
  208.     wpMenuItemHelpSelected: override;
  209.     wpAddFile3Page: override;
  210.     wpAddFile2Page: override;
  211.     wpFormatDragItem: override;
  212.     wpRender: override;
  213.     wpRefresh: override;
  214.     wpFilterPopupMenu: override;
  215.     wpQueryDefaultView: override;
  216.     wpRenderComplete: override;
  217.     wpQueryDefaultHelp: override;
  218.     wpObjectReady: override;
  219.     wpAddObjectWindowPage: override;       somDefaultInit: override;              somDestruct: override;                 wpSetIconData: override;             };
  220. #endif /* __SOMIDL__ */
  221. };
  222. interface M_WPFolder : M_WPFileSystem
  223. {
  224.   ULONG wpclsQueryIconDataN( inout ICONINFO pIconInfo, in ULONG ulIconIndex );   HPOINTER wpclsQueryIconN( in ULONG ulIconIndex );               WPFolder wpclsQueryOpenFolders(in WPFolder Folder,
  225.                                  in ULONG ulOption,
  226.                                  in BOOL fLock);
  227. #ifdef __SOMIDL__
  228.   implementation {
  229.     releaseorder: wpclsGetNotifySem,wpclsReleaseNotifySem,wpclsQueryOpenFolders,
  230.                   wpclsQueryContainerFont,
  231.                   wpclsQueryIconDataN,wpclsQueryIconN;                              externalstem = wpfdr;
  232.     local;
  233.     externalprefix = fdrM_;
  234.     majorversion = 1;
  235.     minorversion = 2;
  236.     filestem = wpfolder;
  237.     callstyle = oidl;
  238.     dllname = "pmwp.dll";                   wpclsInitData: override;
  239.     wpclsQueryDefaultView: override;
  240.     wpclsQueryTitle: override;
  241.     wpclsQueryIconData: override;
  242.     wpclsQueryStyle: override;
  243.     wpclsQueryDefaultHelp: override;
  244.   };
  245. #endif /* __SOMIDL__ */
  246. };
  247. #endif  /* wpfolder_idl */
  248.