home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / tolkit45.zip / os2tk45 / idl / wplnchpd.idl < prev    next >
Text File  |  1999-03-15  |  6KB  |  238 lines

  1.  
  2. //  Module Header
  3. //
  4. //  Module Name: WPLNCHPD
  5. //
  6. //  OS/2 Presentation Manager Workplace class definitions
  7. //
  8. //  Copyright (c) International Business Machines Corporation 1991, 1992, 1994
  9. //
  10.  
  11. //
  12.  
  13. #ifndef wplnchpd_idl
  14. #define wplnchpd_idl
  15.  
  16. #include "wpabs.idl"
  17. #include <somcls.idl>
  18.  
  19. struct tag_Actions
  20. {
  21.     PSZ pszTitle;
  22.     ULONG ulMenuId;
  23.     HPOINTER hIcon;
  24. };
  25.  
  26. typedef tag_Actions ACTIONS;
  27. typedef tag_Actions * PACTIONS;
  28.  
  29. struct tag_FPINFO
  30. {
  31.      ULONG       ulNumObjects;
  32.      HOBJECT    *phobjects;
  33.      tag_FPINFO *slideups;
  34.      HWND        hwndSlideup;
  35. };
  36. typedef tag_FPINFO  FPINFO;
  37. typedef tag_FPINFO *PFPINFO;
  38.  
  39. interface M_WPLaunchPad;
  40.  
  41. interface WPLaunchPad : WPAbstract
  42.  
  43. {
  44.   ULONG wpAddLaunchPadPage1(in HWND hwndNotebook);
  45.  
  46.   ULONG wpAddLaunchPadPage2(in HWND hwndNotebook);
  47.  
  48.   BOOL wpQueryCloseDrawer();
  49.  
  50.   BOOL wpQueryDisplayVertical();
  51.  
  52.   BOOL wpQueryDisplayText();
  53.  
  54.   BOOL wpQueryDisplayTextInDrawers();
  55.  
  56.   BOOL wpQueryDisplaySmallIcons();
  57.  
  58.   BOOL wpQueryHideLaunchPadFrameCtls();
  59.  
  60.   BOOL wpQueryFloatOnTop();
  61.  
  62.   VOID wpSetCloseDrawer(in BOOL fState);
  63.  
  64.   VOID wpSetDisplayVertical(in BOOL fState);
  65.  
  66.   VOID wpSetDisplayText(in BOOL fState);
  67.  
  68.   VOID wpSetDisplayTextInDrawers(in BOOL fState);
  69.  
  70.   VOID wpSetDisplaySmallIcons(in BOOL fState);
  71.  
  72.   VOID wpSetHideLaunchPadFrameCtls(in BOOL fState);
  73.  
  74.   VOID wpSetFloatOnTop(in BOOL fState);
  75.  
  76.   PACTIONS wpQueryActionButtons(in PULONG pulNumActions);
  77.  
  78.   HOBJECT* wpQueryObjectList(in ULONG ulDrawer,
  79.                              in PULONG pulNumObjects);
  80.  
  81.   BOOL wpSetObjectListFromStrings(in ULONG ulDrawer,
  82.                                   in PSZ pszSetup,
  83.                                   in ULONG ulAfter);
  84.  
  85.   BOOL wpSetObjectListFromHObjects(in ULONG ulDrawer,
  86.                                    in ULONG ulNumObjects,
  87.                                    inout HOBJECT phobjects,
  88.                                    in ULONG ulAfter);
  89.  
  90.   BOOL wpSetObjectListFromObjects(in ULONG ulDrawer,
  91.                                   in ULONG ulNumObjects,
  92.                                   inout WPObject objects,
  93.                                   in ULONG ulAfter);
  94.  
  95.   VOID wpSetDrawerHWND(in ULONG ulDrawer,
  96.                         in HWND hwnd);
  97.  
  98.   HWND wpQueryDrawerHWND(in ULONG ulDrawer);
  99.  
  100.   ULONG wpQueryActionButtonStyle( );
  101.  
  102.   BOOL wpSetActionButtonStyle( in ULONG ulStyle );
  103.  
  104.   VOID wpRefreshDrawer(in ULONG ulDrawer);
  105.  
  106. #ifdef __SOMIDL__
  107.   implementation {
  108.  
  109.     releaseorder: wpAddLaunchPadPage1,wpQueryCloseDrawer,wpQueryDisplayVertical,
  110.                   wpQueryDisplayText,wpQueryDisplaySmallIcons,wpQueryHideLaunchPadFrameCtls,
  111.                   wpQueryFloatOnTop,wpSetCloseDrawer,wpSetDisplayVertical,
  112.                   wpSetDisplayText,wpSetDisplaySmallIcons,wpSetHideLaunchPadFrameCtls,
  113.                   wpSetFloatOnTop,wpQueryActionButtons,wpQueryObjectList,
  114.                   wpSetObjectListFromStrings,wpSetObjectListFromObjects,
  115.                   wpSetObjectListFromHObjects,wpSetDrawerHWND,wpQueryDrawerHWND,
  116.                   wpRefreshDrawer, wpSetDisplayTextInDrawers,
  117.                   wpQueryDisplayTextInDrawers, wpQueryActionButtonStyle,
  118.                   wpSetActionButtonStyle,wpAddLaunchPadPage2;
  119.  
  120.     externalstem = WPlnchpd;
  121.     externalprefix = lnchpd_;
  122.     majorversion = 1;
  123.     minorversion = 2;
  124.     filestem = wplnchpd;
  125.     metaclass = M_WPLaunchPad;
  126.     dllname = "pmwp.dll";
  127.     callstyle = oidl;
  128.  
  129.     passthru C_h_before =  ""
  130. "        typedef struct tag_Actions {"
  131. "                PSZ pszTitle;"
  132. "                ULONG ulMenuId;"
  133. "                HPOINTER hIcon;"
  134. "        } ACTIONS, *PACTIONS;"
  135. ""
  136. "        #define ADD_OBJECT_FIRST ((ULONG)(-1))"
  137. "        #define ADD_OBJECT_LAST  ((ULONG)(-2))"
  138. ""
  139. "        #define ACTION_BUTTONS_TEXT   ((ULONG)0)"
  140. "        #define ACTION_BUTTONS_OFF    ((ULONG)1)"
  141. "        #define ACTION_BUTTONS_MINI   ((ULONG)2)"
  142. "        #define ACTION_BUTTONS_NORMAL ((ULONG)3)"
  143. "";
  144.     passthru C_ih_before =  ""
  145. "        typedef struct tag_FPINFO {"
  146. "                ULONG ulNumObjects;"
  147. "                HOBJECT *phobjects;"
  148. "                struct tag_FPINFO *slideups;"
  149. "                HWND hwndSlideup;"
  150. "        } FPINFO, *PFPINFO;"
  151. "";
  152.  
  153.     BOOL fCloseDrawer;
  154.     BOOL fDisplayVertical;
  155.     BOOL fDisplaytext;
  156.     BOOL fDisplaytextInDrawers;
  157.     BOOL fSmallIcons;
  158.     BOOL fHideCtls;
  159.     BOOL fFloatOnTop;
  160.     ULONG ulActionButtonStyle;
  161.     ULONG ulNumActions;
  162.     PACTIONS pActions;
  163.     FPINFO fpInfo;
  164.     BOOL fInRestoreState;
  165.     BOOL fDestroyLaunchPad;             
  166.  
  167.     wpFree: override;
  168.  
  169.     wpObjectReady: override;
  170.  
  171.     wpOpen: override;
  172.  
  173.     wpMenuItemHelpSelected: override;
  174.  
  175.     wpInitData: override;
  176.  
  177.     wpUnInitData: override;
  178.  
  179.     wpSetup: override;
  180.  
  181.     wpSaveState: override;
  182.  
  183.     wpRestoreState: override;
  184.  
  185.     wpMenuItemSelected: override;
  186.  
  187.     wpAddSettingsPages: override;
  188.  
  189.     wpAddObjectWindowPage: override;
  190.  
  191.     wpQueryConcurrentView: override;
  192.  
  193.     wpDragOver: override;
  194.  
  195.     wpDrop: override;
  196.  
  197.     wpFilterMenu: override;
  198.  
  199.     somDefaultInit: override;          
  200.     somDestruct:    override;          
  201.  
  202.   };
  203. #endif /* __SOMIDL__ */
  204. };
  205.  
  206. interface M_WPLaunchPad : M_WPAbstract
  207.  
  208. {
  209.  
  210. #ifdef __SOMIDL__
  211.   implementation {
  212.  
  213.     externalstem = WPlnchpd;
  214.     externalprefix = lnchpdM_;
  215.     majorversion = 1;
  216.     minorversion = 2;
  217.     filestem = wplnchpd;
  218.     dllname = "pmwp.dll";
  219.     callstyle = oidl;
  220.  
  221.     wpclsQueryTitle: override;
  222.  
  223.     wpclsQueryDefaultHelp: override;
  224.  
  225.     wpclsQueryDefaultView: override;
  226.  
  227.     wpclsQueryStyle: override;
  228.  
  229.     wpclsQueryIconData: override;
  230.  
  231.     wpclsQuerySettingsPageSize: override; 
  232.  
  233.   };
  234. #endif /* __SOMIDL__ */
  235. };
  236.  
  237. #endif  /* wplnchpd_idl */
  238.