home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 8 Other / 08-Other.zip / SOMINF.ZIP / SOMWPS.INF (.txt) < prev    next >
OS/2 Help File  |  1992-05-13  |  59KB  |  2,452 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Introduction to the Workplace Shell' ΓòÉΓòÉΓòÉ
  3.  
  4. o The Workplace Shell under OS/2 2.0 introduces an object oriented layer into 
  5.   the Presentation Manager environment. 
  6. o A mechanism is provided for registration of object classes, creation of 
  7.   objects of the registered classes and the inheritance of characteristics and 
  8.   behaviors from existing classes. 
  9. o A Workplace Shell application my be created as a series of interactive 
  10.   objects on the desktop. 
  11. o Each object possesses data and a set of methods that may be defined for the 
  12.   entire class or for each instance of that object. 
  13. o The Workplace Shell objects are based on the System Object Model (SOM) which 
  14.   establishes a basic inheritance hierarchy for objects in the system. 
  15.  
  16.  
  17. ΓòÉΓòÉΓòÉ 2. Objects in the Workplace Shell ΓòÉΓòÉΓòÉ
  18.  
  19. o SOM provides the base hierarchy from which all other objects are descended 
  20.  
  21. o Workplace Shell extends this hierarchy by creating a number of classes of its 
  22.   own based on the SOMObject class. 
  23.  
  24.              CLASS NAME                         CLASS DEFINITION FILE
  25.  
  26.           SOMObject                                    somobj.sc
  27.             Γö£ΓöÇΓöÇ SOMClass                               somcls.sc
  28.             Γö£ΓöÇΓöÇ SOMClassMgr                            somcm.sc
  29.             ΓööΓöÇΓöÇ WPObject                               wpobject.sc
  30.                   Γö£ΓöÇΓöÇ WPAbstract                       wpabs.sc
  31.                   Γöé     Γö£ΓöÇΓöÇ WPClock                    wpclock.sc
  32.                   Γöé     Γö£ΓöÇΓöÇ WPCountry                  wpctry.sc
  33.                   Γöé     Γö£ΓöÇΓöÇ WPDisk                     wpdisk.sc
  34.                   Γöé     Γö£ΓöÇΓöÇ WPKeyboard                 wpkeybd.sc
  35.                   Γöé     Γö£ΓöÇΓöÇ WPMouse                    wpmouse.sc
  36.                   Γöé     Γö£ΓöÇΓöÇ WPPalette                  wppalet.sc
  37.                   Γöé     Γöé     Γö£ΓöÇΓöÇ WPColorPalette       wpclrpal.sc
  38.                   Γöé     Γöé     Γö£ΓöÇΓöÇ WPFontPalette        wpfntpal.sc
  39.                   Γöé     Γöé     ΓööΓöÇΓöÇ WPSchemePalette      wpscheme.sc
  40.                   Γöé     Γö£ΓöÇΓöÇ WPPrinter                  wpprint.sc
  41.                   Γöé     Γö£ΓöÇΓöÇ WPProgram                  wppgm.sc
  42.                   Γöé     Γö£ΓöÇΓöÇ WPShadow                   wpshadow.sc
  43.                   Γöé     Γö£ΓöÇΓöÇ WPShredder                 wpshred.sc
  44.                   Γöé     Γö£ΓöÇΓöÇ WPSound                    wpsound.sc
  45.                   Γöé     Γö£ΓöÇΓöÇ WPSpecialNeeds             wpspneed.sc
  46.                   Γöé     Γö£ΓöÇΓöÇ WPSpooler                  wpspool.sc
  47.                   Γöé     ΓööΓöÇΓöÇ WPSystem                   wpsystem.sc
  48.                   Γö£ΓöÇΓöÇ WPFileSystem                     wpfsys.sc
  49.                   Γöé     Γö£ΓöÇΓöÇ WPDataFile                 wpdataf.sc
  50.                   Γöé     Γö£ΓöÇΓöÇ WPFolder                   wpfolder.sc
  51.                   Γöé     Γöé      Γö£ΓöÇΓöÇ WPDesktop           wpdesk.sc
  52.                   Γöé     Γöé      Γö£ΓöÇΓöÇ WPDrives            wpdrives.sc
  53.                   Γöé     Γöé      Γö£ΓöÇΓöÇ WPStartup           wpstart.sc
  54.                   Γöé     Γöé      ΓööΓöÇΓöÇ WPTemplateFolder    wptemps.sc
  55.                   Γöé     ΓööΓöÇΓöÇ WPProgramFile              wppgmf.sc
  56.                   ΓööΓöÇΓöÇ WPTransient                      wptrans.sc
  57.                         Γö£ΓöÇΓöÇ WPJob                      wpjob.sc
  58.                         Γö£ΓöÇΓöÇ WPPort                     wpport.sc
  59.                         Γö£ΓöÇΓöÇ WPPrinterDriver            wppdr.sc
  60.                         ΓööΓöÇΓöÇ WPQueueDriver              wpqdr.sc
  61.  
  62. o As well as being descended from SOM's base inheritance hierarchy, all 
  63.   Workplace Shell object classes are descended from one of three base storage 
  64.   classes: 
  65.  
  66.              WPAbstract   - is the base for abstract objects such as programs,
  67.                             devices, etc. Control information for these objects is
  68.                             stored in OS2.INI.
  69.              WPFileSystem - is the base class for objects that are stored as files
  70.                             in the file system. Control information for these
  71.                             objects is stored in the file system as extended
  72.                             attributes.
  73.              WPTransient  - is the base class for objects that only exist during
  74.                             execution of a particular program. These objects are
  75.                             alive only for a particular processing purpose.
  76.  
  77.  
  78. ΓòÉΓòÉΓòÉ 3. Object Behavior ΓòÉΓòÉΓòÉ
  79.  
  80. o The behavior of an object in the Workplace Shell is similar to that of a 
  81.   window under PM. 
  82.  
  83.    - The object must have its class registered. 
  84.    - An instance of the class must be instantiated in the system. 
  85.    - The instance then receives messages and uses its methods to process those 
  86.      messages. 
  87.  
  88. o A significant difference is that, normally, a Workplace Shell object is 
  89.   persistent, while a PM window only exists for the duration of the program's 
  90.   execution. 
  91.  
  92.  
  93. ΓòÉΓòÉΓòÉ 4. Creating a Workplace Shell object. ΓòÉΓòÉΓòÉ
  94.  
  95. o A new object in the Workplace Shell is generally created by subclassing an 
  96.   existing object, then registering that object with the Workplace Shell. 
  97.   Registration is accomplished after a class has been built and placed into a 
  98.   DLL by calling the WinRegisterObjectClass function. This function records the 
  99.   name of the object class and the name of the DLL that contains the 
  100.   implentation code. 
  101. o Class data is owned by the object class, not an instance of the class, and 
  102.   needs to be initialized before any instances of the class are created. 
  103.  
  104.    - Class data is initialized by the _wpclsInitData method, which is called by 
  105.      the system when the class is loaded. 
  106.    - Any resources loaded during initialization should be freed when 
  107.      _wpclsUnInitdata is called as a class is being deregistered. 
  108.  
  109. o Once an object class has been registered with the Workplace Shell, an 
  110.   instance of that object may be created (instantiated). This is accomplished 
  111.   by using the WinCreateObject function. This function takes as parameters info 
  112.   that will be used to setup the instance being created. 
  113. o Instance data is initialized by the _wpInitData function, which is called 
  114.   when the object is created or awakened from a dormant state. 
  115. o Resources allocated during initialization should be freed when _wpUnInitData 
  116.   is called as the object is put back into a dormant state. 
  117.  
  118.  
  119. ΓòÉΓòÉΓòÉ 5. Opening and Closing Workplace Shell objects. ΓòÉΓòÉΓòÉ
  120.  
  121. o When an object is opened, the _wpOpen method is invoked by the Workplace 
  122.   Shell. This method may be overridden to perform class specific processing. An 
  123.   object may be opened automatically when it is created by using the OPEN= 
  124.   keyword in the setup string passed when WinCreateObject is called 
  125. o When an object is closed, the _wpClose method is invoked. This method may be 
  126.   overridden if it is necessary to perform any class specific processing for 
  127.   closing views 
  128. o Because objects are generally persistent, it is necessary to save instance 
  129.   data so that the object may be opened in the same state in which it was 
  130.   closed. This may be accomplished by overriding the _wpSaveState and 
  131.   _wpRestoreState methods. A number of predefined methods are available for use 
  132.   when these are invoked such as _wpSaveString and _wpRestoreString. 
  133. o An instance of an object may be destroyed by the user dropping the object on 
  134.   the shredder. If an application wishes to destroy an object, it may call the 
  135.   WinDestroyObject function passing the handle that was obtained when 
  136.   WinCreateObject was called. 
  137. o An object class may be removed from the system by calling the 
  138.   WinDeregisterObjectClass function. However, it is then necessary to remove 
  139.   the object's DLL from the system LIBPATH. It may require a re-boot to 
  140.   accomplish this. 
  141.  
  142.  
  143. ΓòÉΓòÉΓòÉ 6. Workplace Shell usage notes. ΓòÉΓòÉΓòÉ
  144.  
  145. o A Workplace Shell object may access PM resources such as icons, bitmaps, 
  146.   dialogs, etc. However, this requires that the object obtain the module handle 
  147.   of the DLL that contains these resources. This would normally be accomplished 
  148.   during class initialization (_wpclsInitData), then the handles would be 
  149.   stored in class or global variables. 
  150. o All Workplace Shell objects run in a SINGLE process. It is possible for an 
  151.   error in an object to cause the Workplace Shell to terminate. The Workplace 
  152.   Shell will restart itself, but, any processing that was occurring at the time 
  153.   of termination will be halted. It is recommended that any lengthy or critical 
  154.   processing be implemented using multiple processes. Other processes are NOT 
  155.   affected by an abend of the Workplace Shell. 
  156.  
  157.  
  158. ΓòÉΓòÉΓòÉ 7. Workplace Shell Objects: Base and Storage classes ΓòÉΓòÉΓòÉ
  159.  
  160.  
  161. ΓòÉΓòÉΓòÉ 7.1. The WPObject class ΓòÉΓòÉΓòÉ
  162.  
  163. Class definition file:  wpobject.sc 
  164.  
  165. Class hierarchy 
  166.  
  167. SOMObject
  168.       WPObject
  169.  
  170. Description 
  171.  
  172. This is the root Workplace object class. This is the fundamental class from 
  173. which all workplace objects are derived, irrespective of where they are 
  174. actually stored. Immediate descendant classes of WPObject are called storage 
  175. classes, since they take responsibility for storing the object information, 
  176. typically in a persistent form. Predefined workplace object storage classes 
  177. are: 
  178.  
  179.  WPAbstract
  180.  WPFileSystem
  181.  WPTransient
  182.  
  183. A Workplace object of this class cannot be created. 
  184.  
  185. Instance methods 
  186.  
  187. The following lists show how all the WPObject instance methods are related 
  188. within functional areas. 
  189.  
  190. Settings notebook methods 
  191.  
  192.    wpAddObjectGeneralPage 
  193.    wpAddSettingsPages 
  194.    wpInsertSettingsPage 
  195.  
  196. Save/restore state methods 
  197.  
  198.    wpRestoreData 
  199.    wpRestoreLong 
  200.    wpRestoreState 
  201.    wpRestoreString 
  202.    wpSaveData 
  203.    wpSaveImmediate 
  204.    wpSaveLong 
  205.    wpSaveState 
  206.    wpSaveString 
  207.  
  208. Object usage methods 
  209.  
  210.    wpAddToObjUseList 
  211.    wpDeleteFromObjUseList 
  212.    wpFindUseItem 
  213.    wpUnlockObject 
  214.  
  215. Popup menu methods 
  216.  
  217.    wpClose 
  218.    wpCopyObject 
  219.    wpCreateFromTemplate 
  220.    wpCreateShadowObject 
  221.    wpDelete 
  222.    wpDisplayHelp 
  223.    wpFilterPopupMenu 
  224.    wpHide 
  225.    wpInsertPopupMenuItems 
  226.    wpMenuItemHelpSelected 
  227.    wpMenuItemSelected 
  228.    wpModifyPopupMenu 
  229.    wpMoveObject 
  230.    wpOpen 
  231.    wpPrintObject 
  232.    wpRestore 
  233.  
  234. Query and Set object information methods 
  235.  
  236.    wpQueryConfirmations 
  237.    wpQueryDefaultHelp 
  238.    wpQueryDefaultView 
  239.    wpQueryDetailsData 
  240.    wpQueryIcon 
  241.    wpQueryIconData 
  242.    wpQueryStyle 
  243.    wpQueryTitle 
  244.    wpSetDefaultHelp 
  245.    wpSetDefaultView 
  246.    wpSetIcon 
  247.    wpSetIconData 
  248.    wpSetStyle 
  249.    wpSetTitle 
  250.  
  251. Error handling methods 
  252.  
  253.    wpQueryError 
  254.    wpSetError 
  255.  
  256. Memory management methods 
  257.  
  258.    wpAllocMem 
  259.    wpFreeMem 
  260.  
  261. Setup/cleanup methods 
  262.  
  263.    wpFree 
  264.    wpInitData 
  265.    wpScanSetupString 
  266.    wpSetup 
  267.    wpUnInitData 
  268.  
  269. Direct manipulation methods 
  270.  
  271.    wpDragOver 
  272.    wpDraggedOverObject 
  273.    wpDrop 
  274.    wpDroppedOnObject 
  275.    wpEndConversation 
  276.    wpFormatDragItem 
  277.    wpRender 
  278.    wpRenderComplete 
  279.  
  280. Miscellaneous methods 
  281.  
  282.    wpCnrInsertObject 
  283.    wpCnrRemoveObject 
  284.    wpCnrSetEmphasis 
  285.    wpConfirmDelete 
  286.    wpCopiedFromTemplate 
  287.    wpDoesObjectMatch 
  288.    wpRegisterView 
  289.    wpSwitchTo 
  290.  
  291. SOMObject methods 
  292.  
  293. The following lists show all the instance methods overridden by the WPObject 
  294. class. These instance methods are overridden in order to modify the behavior 
  295. defined by an ancestor class. 
  296.  
  297.      somFree
  298.      somInit
  299.      somUninit
  300.  
  301. Class Methods 
  302.  
  303. The following list shows all the WPObject class methods. 
  304.  
  305.    wpclsCreateDefaultTemplates 
  306.    wpclsFindObjectEnd 
  307.    wpclsFindObjectFirst 
  308.    wpclsFindObjectNext 
  309.    wpclsInitData 
  310.    wpclsMakeAwake 
  311.    wpclsNew 
  312.    wpclsQueryDefaultHelp 
  313.    wpclsQueryDefaultView 
  314.    wpclsQueryDetails 
  315.    wpclsQueryDetailsInfo 
  316.    wpclsQueryError 
  317.    wpclsQueryFolder 
  318.    wpclsQueryIcon 
  319.    wpclsQueryIconData 
  320.    wpclsQueryObject 
  321.    wpclsSetError 
  322.    wpclsQuerySettingsPageSize 
  323.    wpclsQueryStyle 
  324.    wpclsQueryTitle 
  325.    wpclsUnInitData 
  326.  
  327. SOMObject methods 
  328.  
  329. The following lists show all the class methods overridden by the WPObject 
  330. class. These methods are overridden in order to modify the behavior defined by 
  331. ancestor class. 
  332.  
  333.    somUnInit
  334.  
  335. SOMClass methods 
  336.  
  337.    somInitClass 
  338.    somNew 
  339.    somRenew 
  340.  
  341.  
  342. ΓòÉΓòÉΓòÉ 7.2. The WPAbstractClass ΓòÉΓòÉΓòÉ
  343.  
  344. Class definition file:  wpabs.sc 
  345.  
  346. Class hierarchy 
  347.  
  348.    SOMObject
  349.          WPObject
  350.                WPAbstract
  351.  
  352. Description 
  353.  
  354. This is the abstract object storage class. The storage medium for objects that 
  355. are descendants of the WPAbstract class is the INI file. In other words, any 
  356. object class derived from WPAbstract will have persistent storage for its 
  357. instance variables in the INI file. Note that an abstract object does not have 
  358. a file name, just a numeric handle that can be used to identify it. An instance 
  359. of this class can be created as a Workplace object. There are no instances of 
  360. this class initially created by the system. 
  361.  
  362. Instance methods 
  363.  
  364. There are currently no methods defined for the WPAbstract Workplace object 
  365. class. 
  366.  
  367. WPObject instance methods 
  368.  
  369. The following list shows all the methods overridden by the WPAbstract class. 
  370. These methods are overridden in order to modify the behavior defined by an 
  371. ancestor class. 
  372.  
  373.    wpCopyObject 
  374.    wpCreateFromTemplate 
  375.    wpSaveImmediate 
  376.    wpSaveState 
  377.    wpRestoreState 
  378.    wpMoveObject 
  379.    wpQueryIconData 
  380.    wpSetIconData 
  381.    wpSetTitle 
  382.  
  383. Class methods 
  384.  
  385. The following shows the class methods overridden by the WPAbstract class. These 
  386. methods are overridden to modify the behavior defined by an ancestor class. 
  387.  
  388. WPObject class methods. 
  389.  
  390.    wpclsQueryTitle 
  391.  
  392.  
  393. ΓòÉΓòÉΓòÉ 7.3. The WPFileSystem class ΓòÉΓòÉΓòÉ
  394.  
  395. Class definition file:  wpfsys.sc 
  396.  
  397. Class hierarchy 
  398.  
  399.    SOMObject
  400.          WPObject
  401.                WPFileSystem
  402.  
  403. Description  This is the file system object storage class. WPFileSystem is the 
  404. storage class that represents all file system objects including directory 
  405. (folder), data file, executable file, and root directory (drive) objects. This 
  406. class also provides persistent storage of instance variables for all classes 
  407. derived from it. A Workplace object of this class cannot be created. 
  408.  
  409. Instance methods 
  410.  
  411. The following list shows all the WPFileSystem class methods. 
  412.  
  413.    wpAddFileMenuPage 
  414.    wpAddFile1Page 
  415.    wpAddFile2Page 
  416.    wpAddFile3Page 
  417.    wpQueryHandle 
  418.    wpQueryRealName 
  419.    wpQueryType 
  420.    wpSetRealName 
  421.    wpSetType 
  422.  
  423. WPObject instance methods 
  424.  
  425. The following list shows all the methods overridden by the WPFileSystem class. 
  426. These methods are overridden in order to modify the behavior defined by an 
  427. ancestor class. 
  428.  
  429.    wpAddSettingsPages 
  430.    wpCopyObject 
  431.    wpCreateFromTemplate 
  432.    wpDoesObjectMatch 
  433.    wpDraggedOverObject 
  434.    wpDroppedOnObject 
  435.    wpFilterPopupMenu 
  436.    wpFormatDragItem 
  437.    wpMenuItemSelected 
  438.    wpModifyPopupMenu 
  439.    wpMoveObject 
  440.    wpOpen 
  441.    wpQueryDetailsData 
  442.    wpQueryIconData 
  443.    wpRestoreState 
  444.    wpSaveImmediate 
  445.    wpSaveState 
  446.    wpSetIconData 
  447.    wpSetTitle 
  448.    wpUnInitData 
  449.  
  450. Class methods 
  451.  
  452. The following list shows the wpFileSystem class methods. 
  453.  
  454.    wpclsQueryInstanceFilter 
  455.    wpclsQueryInstanceType 
  456.  
  457. WPObject class methods. 
  458.  
  459. The following list shows all the class methods overridden by the WPFileSystem 
  460. class.  These methods are overridden to modify the behavior defined by an 
  461. ancestor class. 
  462.  
  463.    wpclsInitData 
  464.    wpclsQueryDetailsInfo 
  465.    wpclsQueryIconData 
  466.    wpclsQueryTitle 
  467.  
  468.  
  469. ΓòÉΓòÉΓòÉ 7.4. The WPTransient class ΓòÉΓòÉΓòÉ
  470.  
  471. Class definition file:  wptrans.sc 
  472.  
  473. Class hierarchy 
  474.  
  475.    SOMObject
  476.          WPObject
  477.                WPTransient
  478.  
  479. Description 
  480.  
  481. This is the non-persistent object storage class. The WPTransient class is a 
  482. storage class with no storage medium. That means that instances of object 
  483. classes derived from WPTransient do not persist across reboots. This class is 
  484. available for applications which need to utilize a large amount of workplace 
  485. functionality (such as context menus and settings notebooks) in their object 
  486. class without having to be a file, directory or a record in the INI file. An 
  487. instance of this class can be created as a Workplace object. There are no 
  488. instances of this class initially created by the system. 
  489.  
  490. Instance methods 
  491.  
  492. There are currently no methods defined for the WPTransient Workplace object 
  493. class. 
  494.  
  495. WPObject instance methods 
  496.  
  497. The following list shows all the methods overridden by the WPTransient class. 
  498. These methods are overridden in order to modify the behavior defined by an 
  499. ancestor class. 
  500.  
  501.    wpCopyObject 
  502.  
  503. Class methods 
  504.  
  505. The following list shows all the class methods overridden by the WPTransient 
  506. class. These methods are overridden to modify the behavior defined by an 
  507. ancestor class. 
  508.  
  509. WPObject class methods. 
  510.  
  511.    wpclsQueryIconData 
  512.    wpclsQueryStyle 
  513.    wpclsQueryTitle 
  514.  
  515.  
  516. ΓòÉΓòÉΓòÉ <hidden> wpAddObjectGeneralPage ΓòÉΓòÉΓòÉ
  517.  
  518.   /*******************************************/
  519.   /* The wpAddObjectGeneralPage instance     */
  520.   /* method is called to allow the object to */
  521.   /* add the General page to its settings    */
  522.   /* notebook.                               */
  523.   /*******************************************/
  524.  
  525.   #define INCL_WINWORKPLACE
  526.   #include <os2.h>
  527.  
  528.   WPObject *  self;
  529.   HWND            hwndNotebook;
  530.   ULONG           ulRetCode;              /* Page identifier */
  531.  
  532.   ulRetCode = _wpAddObjectGeneralPage(self, hwndNotebook);
  533.  
  534.  
  535. ΓòÉΓòÉΓòÉ <hidden> wpAddSettingsPages ΓòÉΓòÉΓòÉ
  536.  
  537.   /*******************************************/
  538.   /* The wpAddSettingsPages instance method  */
  539.   /* is called to allow the object to add    */
  540.   /* all of its settings pages to its        */
  541.   /* settings notebook.                      */
  542.   /*******************************************/
  543.  
  544.   #define INCL_WINWORKPLACE
  545.   #include <os2.h>
  546.  
  547.   WPObject *  self;
  548.   HWND            hwndNotebook;
  549.   BOOL            fSuccess;               /* Success indicator */
  550.  
  551.   fSuccess = _wpAddSettingsPages(self,
  552.                hwndNotebook);
  553.  
  554.  
  555. ΓòÉΓòÉΓòÉ <hidden> wpInsertSettingsPage ΓòÉΓòÉΓòÉ
  556.  
  557.   /*******************************************/
  558.   /* The wpInsertSettingsPage instance       */
  559.   /* method is called to insert a page into  */
  560.   /* the object's settings notebook.         */
  561.   /*******************************************/
  562.  
  563.   #define INCL_WINWORKPLACE
  564.   #include <os2.h>
  565.  
  566.   WPObject *  self;
  567.   HWND            hwndNotebook;
  568.   PPAGEINFO       ppageinfo;
  569.   ULONG           ulRetid;                /* Page identifier */
  570.  
  571.   ulRetid = _wpInsertSettingsPage(self, hwndNotebook, ppageinfo);
  572.  
  573.  
  574. ΓòÉΓòÉΓòÉ <hidden> wpRestoreData ΓòÉΓòÉΓòÉ
  575.  
  576.   /*******************************************/
  577.   /* The wpRestoreData instance method is    */
  578.   /* called to allow the object to restore   */
  579.   /* its binary instance data.               */
  580.   /*******************************************/
  581.  
  582.   #define INCL_WINWORKPLACE
  583.   #include <os2.h>
  584.  
  585.   WPObject *  self;
  586.   PSZ             pszClass;
  587.   ULONG           ulKey;
  588.   PBYTE           pbValue;
  589.   PULONG          cbValue;
  590.   BOOL            fSuccess;           /* Success indicator */
  591.  
  592.   fSuccess = _wpRestoreData(self, pszClass, ulKey, pbValue, cbValue);
  593.  
  594.  
  595. ΓòÉΓòÉΓòÉ <hidden> wpRestoreLong ΓòÉΓòÉΓòÉ
  596.  
  597.   /*******************************************/
  598.   /* The wpRestoreLong instance method is    */
  599.   /* called to allow the object to restore a */
  600.   /* 32-bit instance data value.             */
  601.   /*******************************************/
  602.  
  603.   #define INCL_WINWORKPLACE
  604.   #include <os2.h>
  605.  
  606.   WPObject *  self;
  607.   PSZ             pszClass;
  608.   ULONG           ulKey;
  609.   PULONG          pValue;
  610.   BOOL            fSuccess;           /* Success indicator */
  611.  
  612.   fSuccess = _wpRestoreLong(self, pszClass, ulKey, pValue);
  613.  
  614.  
  615. ΓòÉΓòÉΓòÉ <hidden> wpRestoreState ΓòÉΓòÉΓòÉ
  616.  
  617.   /*******************************************/
  618.   /* This method restores the state of the   */
  619.   /* object which was saved during the       */
  620.   /* processing of the wpSaveState method.   */
  621.   /*******************************************/
  622.  
  623.   #define INCL_WINWORKPLACE
  624.   #include <os2.h>
  625.  
  626.   WPObject *  self;
  627.   ULONG           ulReserved;
  628.   BOOL            fReturn;              /* Success indicator */
  629.  
  630.   fReturn = _wpRestoreState(self, ulReserved);
  631.  
  632.  
  633. ΓòÉΓòÉΓòÉ <hidden> wpRestoreString ΓòÉΓòÉΓòÉ
  634.  
  635.   /*******************************************/
  636.   /* The wpRestoreString instance method is  */
  637.   /* called to allow the object to restore   */
  638.   /* an ASCIIZ instance data string.         */
  639.   /*******************************************/
  640.  
  641.   #define INCL_WINWORKPLACE
  642.   #include <os2.h>
  643.  
  644.   WPObject *  self;
  645.   PSZ             pszClass;
  646.   ULONG           ulKey;
  647.   PSZ             pszValue;
  648.   PULONG          pulValue;
  649.   BOOL            fSuccess;           /* Success indicator */
  650.  
  651.   fSuccess = _wpRestoreString(self, pszClass, ulKey, pszValue, pulValue);
  652.  
  653.  
  654. ΓòÉΓòÉΓòÉ <hidden> wpSaveData ΓòÉΓòÉΓòÉ
  655.  
  656.   /*******************************************/
  657.   /* The wpSaveData instance method is       */
  658.   /* called to allow an object to save its   */
  659.   /* binary instance data.                   */
  660.   /*******************************************/
  661.  
  662.   #define INCL_WINWORKPLACE
  663.   #include <os2.h>
  664.  
  665.   WPObject *  self;
  666.   PSZ             pszClass;
  667.   ULONG           ulKey;
  668.   PBYTE           pbValue;
  669.   ULONG           ulValue;
  670.   BOOL            fSuccess;           /* Success indicator */
  671.  
  672.   fSuccess = _wpSaveData(self, pszClass, ulKey, pbValue, ulValue);
  673.  
  674.  
  675. ΓòÉΓòÉΓòÉ <hidden> wpSaveImmediate ΓòÉΓòÉΓòÉ
  676.  
  677.   /*******************************************/
  678.   /* The wpSaveImmediate instance method is  */
  679.   /* called to allow the object to save its  */
  680.   /* current state.                          */
  681.   /*******************************************/
  682.  
  683.   #define INCL_WINWORKPLACE
  684.   #include <os2.h>
  685.  
  686.   WPObject *  self;              /* The pointer to this object */
  687.   BOOL            fReturn;           /* Success indicator */
  688.  
  689.   fReturn = _wpSaveImmediate(self);
  690.  
  691.  
  692. ΓòÉΓòÉΓòÉ <hidden> wpSaveLong ΓòÉΓòÉΓòÉ
  693.  
  694.   /*******************************************/
  695.   /* The wpSaveLong instance method is       */
  696.   /* called to allow the object to save a    */
  697.   /* 32-bit instance data value.             */
  698.   /*******************************************/
  699.  
  700.   #define INCL_WINWORKPLACE
  701.   #include <os2.h>
  702.  
  703.   WPObject *  self;
  704.   PSZ             pszClass;
  705.   ULONG           ulKeyle;
  706.   ULONG           ulValue;
  707.   BOOL            fSuccess;           /* Success indicator */
  708.  
  709.   fSuccess = _wpSaveLong(self, pszClass, ulKeyle, ulValue);
  710.  
  711.  
  712. ΓòÉΓòÉΓòÉ <hidden> wpSaveState ΓòÉΓòÉΓòÉ
  713.  
  714.   /*******************************************/
  715.   /* The wpSaveState instance method is      */
  716.   /* called to allow the object to save its  */
  717.   /* state.                                  */
  718.   /*******************************************/
  719.  
  720.   #define INCL_WINWORKPLACE
  721.   #include <os2.h>
  722.  
  723.   WPObject *  self;
  724.   BOOL            fSuccess;           /* Success indicator */
  725.  
  726.   fSuccess = _wpSaveState(self);
  727.  
  728.  
  729. ΓòÉΓòÉΓòÉ <hidden> wpSaveString ΓòÉΓòÉΓòÉ
  730.  
  731.   /*******************************************/
  732.   /* The wpSaveString instance method is     */
  733.   /* called to allow the object to save an   */
  734.   /* ASCIIZ instance data string.            */
  735.   /*******************************************/
  736.  
  737.   #define INCL_WINWORKPLACE
  738.   #include <os2.h>
  739.  
  740.   WPObject *  self;
  741.   PSZ             pszClass;
  742.   ULONG           ulKey;
  743.   PSZ             pszValue;
  744.   BOOL            fSuccess;           /* Success indicator */
  745.  
  746.   fSuccess = _wpSaveString(self, pszClass, ulKey, pszValue);
  747.  
  748.  
  749. ΓòÉΓòÉΓòÉ <hidden> wpAddToObjUseList ΓòÉΓòÉΓòÉ
  750.  
  751.   /*******************************************/
  752.   /* The wpAddToObjUseList instance method   */
  753.   /* is called to add a item type to an      */
  754.   /* object's in-use list.                   */
  755.   /*******************************************/
  756.  
  757.   #define INCL_WINWORKPLACE
  758.   #include <os2.h>
  759.  
  760.   WPObject *  self;
  761.   PUSEITEM        pUseItem;
  762.   BOOL            fSuccess;           /* Success indicator */
  763.  
  764.   fSuccess = _wpAddToObjUseList(self, pUseItem);
  765.  
  766.  
  767. ΓòÉΓòÉΓòÉ <hidden> wpDeleteFromObjUseList ΓòÉΓòÉΓòÉ
  768.  
  769.   /*******************************************/
  770.   /* The wpDeleteFromObjUseList instance     */
  771.   /* method is called to remove an item type */
  772.   /* from an object's in-use list.           */
  773.   /*******************************************/
  774.  
  775.   #define INCL_WINWORKPLACE
  776.   #include <os2.h>
  777.  
  778.   WPObject *  self;
  779.   PUSEITEM        pUseItem;
  780.   BOOL            fSuccess;           /* Success indicator */
  781.  
  782.   fSuccess = _wpDeleteFromObjUseList(self, pUseItem);
  783.  
  784.  
  785. ΓòÉΓòÉΓòÉ <hidden> wpFindUseItem ΓòÉΓòÉΓòÉ
  786.  
  787.   /*******************************************/
  788.   /* The wpFindUseItem instance method is    */
  789.   /* called to retrieve an item type from    */
  790.   /* the object's in-use list.               */
  791.   /*******************************************/
  792.  
  793.   #define INCL_WINWORKPLACE
  794.   #include <os2.h>
  795.  
  796.   WPObject *  self;
  797.   ULONG           ultype;
  798.   PUSEITEM        pCurrentUseItem;           /* A pointer to a USEITEM structure */
  799.   PUSEITEM        ppUseItem;                 /* Success indicator */
  800.  
  801.   ppUseItem = _wpFindUseItem(self, ultype, pCurrentUseItem);
  802.  
  803.  
  804. ΓòÉΓòÉΓòÉ <hidden> wpUnlockObject ΓòÉΓòÉΓòÉ
  805.  
  806.   /*******************************************/
  807.   /* The wpUnlockObject instance method is   */
  808.   /* called to allow an object to go into    */
  809.   /* the dormant state.                      */
  810.   /*******************************************/
  811.  
  812.   #define INCL_WINWORKPLACE
  813.   #include <os2.h>
  814.  
  815.   WPObject *  self;
  816.   BOOL            fSuccess;           /* Success indicator */
  817.  
  818.   fSuccess = _wpUnlockObject(self);
  819.  
  820.  
  821. ΓòÉΓòÉΓòÉ <hidden> wpClose ΓòÉΓòÉΓòÉ
  822.  
  823.   /*******************************************/
  824.   /* The wpClose instance method is called   */
  825.   /* to close all open views of an object.   */
  826.   /*******************************************/
  827.  
  828.   #define INCL_WINWORKPLACE
  829.   #include <os2.h>
  830.  
  831.   WPObject *  self;
  832.   BOOL            fReturn;           /* Success indicator */
  833.  
  834.   fReturn = _wpClose(self);
  835.  
  836.  
  837. ΓòÉΓòÉΓòÉ <hidden> wpCopyObject ΓòÉΓòÉΓòÉ
  838.  
  839.   /*******************************************/
  840.   /* The wpCopyObject instance method is     */
  841.   /* called to create a new copy of the      */
  842.   /* object.                                 */
  843.   /*******************************************/
  844.  
  845.   #define INCL_WINWORKPLACE
  846.   #include <os2.h>
  847.  
  848.   WPObject *  self;
  849.   WPFolder *  Folder;
  850.   BOOL            fLock;             /* The lock object flag */
  851.   WPObject *  Success;           /* Success indicator */
  852.  
  853.   Success = _wpCopyObject(self, Folder, fLock);
  854.  
  855.  
  856. ΓòÉΓòÉΓòÉ <hidden> wpCreateFromTemplate ΓòÉΓòÉΓòÉ
  857.  
  858.   /*******************************************/
  859.   /* The wpCreateFromTemplate instance       */
  860.   /* method is called to create an object    */
  861.   /* from a template.                        */
  862.   /*******************************************/
  863.  
  864.   #define INCL_WINWORKPLACE
  865.   #include <os2.h>
  866.  
  867.   WPObject *  self;
  868.   WPFolder *  Folder;
  869.   BOOL            fLock;             /* The lock object flag */
  870.   WPObject *  Success;           /* Success indicator */
  871.  
  872.   Success = _wpCreateFromTemplate(self, Folder, fLock);
  873.  
  874.  
  875. ΓòÉΓòÉΓòÉ <hidden> wpCreateShadowObject ΓòÉΓòÉΓòÉ
  876.  
  877.   /*******************************************/
  878.   /* The wpCreateShadowObject instance       */
  879.   /* method is called to create a shadow of  */
  880.   /* an object.                              */
  881.   /*******************************************/
  882.  
  883.   #define INCL_WINWORKPLACE
  884.   #include <os2.h>
  885.  
  886.   WPObject *  self;
  887.   WPFolder *  Folder;
  888.   BOOL            fLock;             /* Lock object flag */
  889.   WPObject *  Success;           /* Success indicator */
  890.  
  891.   Success = _wpCreateShadowObject(self, Folder, fLock);
  892.  
  893.  
  894. ΓòÉΓòÉΓòÉ <hidden> wpDelete ΓòÉΓòÉΓòÉ
  895.  
  896.   /*******************************************/
  897.   /* The wpDelete instance method is called  */
  898.   /* to delete an object and prompt for      */
  899.   /* confirmation if necessary.              */
  900.   /*******************************************/
  901.  
  902.   #define INCL_WINWORKPLACE
  903.   #include <os2.h>
  904.  
  905.   WPObject *  self;
  906.   ULONG           ulConfirmations;
  907.   ULONG           ulsuccess;                 /* Success indicator */
  908.  
  909.   ulsuccess = _wpDelete(self, ulConfirmations);
  910.  
  911.  
  912. ΓòÉΓòÉΓòÉ <hidden> wpDisplayHelp ΓòÉΓòÉΓòÉ
  913.  
  914.   /*******************************************/
  915.   /* The wpDisplayHelp instance method is    */
  916.   /* called to allow the object to display a */
  917.   /* help panel.                             */
  918.   /*******************************************/
  919.  
  920.   #define INCL_WINWORKPLACE
  921.   #include <os2.h>
  922.  
  923.   WPObject *  self;
  924.   ULONG           ulHelpPanelId;
  925.   PSZ             pszHelpLibrary;
  926.   BOOL            fSuccess;                 /* Success indicator */
  927.  
  928.   fSuccess = _wpDisplayHelp(self, ulHelpPanelId, pszHelpLibrary);
  929.  
  930.  
  931. ΓòÉΓòÉΓòÉ <hidden> wpFilterPopupMenu ΓòÉΓòÉΓòÉ
  932.  
  933.   /*******************************************/
  934.   /* The wpFilterPopupMenu instance method   */
  935.   /* is called to allow the object to modify */
  936.   /* its context menu.                       */
  937.   /*******************************************/
  938.  
  939.   #define INCL_WINWORKPLACE
  940.   #include <os2.h>
  941.  
  942.   WPObject *  self;
  943.   ULONG           ulFlags;
  944.   HWND            hwndcnr;
  945.   BOOL            fMultiSelect;
  946.   ULONG           ulRetcode;              /* New pop-up menu flags for this object */
  947.  
  948.   ulRetcode = _wpFilterPopupMenu(self, ulFlags, hwndcnr, fMultiSelect);
  949.  
  950.  
  951. ΓòÉΓòÉΓòÉ <hidden> wpHide ΓòÉΓòÉΓòÉ
  952.  
  953.   /*******************************************/
  954.   /* The wpHide instance method is called to */
  955.   /* hide or minimize open views of this     */
  956.   /* object.                                 */
  957.   /*******************************************/
  958.  
  959.   #define INCL_WINWORKPLACE
  960.   #include <os2.h>
  961.  
  962.   WPObject *  self;
  963.   BOOL            fReturn;           /* Success indicator */
  964.  
  965.   fReturn = _wpHide(self);
  966.  
  967.  
  968. ΓòÉΓòÉΓòÉ <hidden> wpInsertPopupMenuItems ΓòÉΓòÉΓòÉ
  969.  
  970.   /*******************************************/
  971.   /* The wpInsertPopupMenuItems instance     */
  972.   /* method is called to allow an object to  */
  973.   /* insert items into its popup menu.       */
  974.   /*******************************************/
  975.  
  976.   #define INCL_WINWORKPLACE
  977.   #include <os2.h>
  978.  
  979.   WPObject *  self;
  980.   HWND            hwndMenu;
  981.   ULONG           ulPostition;
  982.   HMODULE         hmod;
  983.   ULONG           ulMenuID;
  984.   ULONG           ulSubMenuId;
  985.   BOOL            fSuccess;              /* Success indicator */
  986.  
  987.   fSuccess = _wpInsertPopupMenuItems(self, hwndMenu, ulPostition, hmod,
  988.                                      ulMenuID, ulSubMenuId);
  989.  
  990.  
  991. ΓòÉΓòÉΓòÉ <hidden> wpMenuItemHelpSelected ΓòÉΓòÉΓòÉ
  992.  
  993.   /*******************************************/
  994.   /* The wpMenuItemHelpSelected instance     */
  995.   /* method is called to allow the object to */
  996.   /* display the requested help panel.       */
  997.   /*******************************************/
  998.  
  999.   #define INCL_WINWORKPLACE
  1000.   #include <os2.h>
  1001.  
  1002.   WPObject *  self;
  1003.   ULONG           ulMenuId;
  1004.   BOOL            fSuccess;           /* Success indicator */
  1005.  
  1006.   fSuccess = _wpMenuItemHelpSelected(self, ulMenuId);
  1007.  
  1008.  
  1009. ΓòÉΓòÉΓòÉ <hidden> wpMenuItemSelected ΓòÉΓòÉΓòÉ
  1010.  
  1011.   /*******************************************/
  1012.   /* The wpMenuItemSelected instance method  */
  1013.   /* is called to allow an object to process */
  1014.   /* a pop-up menu selection.                */
  1015.   /*******************************************/
  1016.  
  1017.   #define INCL_WINWORKPLACE
  1018.   #include <os2.h>
  1019.  
  1020.   WPObject *  self;
  1021.   HWND            hwndFrame;
  1022.   ULONG           ulMenuId;
  1023.   BOOL            fSuccess;            /* Success indicator */
  1024.  
  1025.   fSuccess = _wpMenuItemSelected(self, hwndFrame, ulMenuId);
  1026.  
  1027.  
  1028. ΓòÉΓòÉΓòÉ <hidden> wpModifyPopupMenu ΓòÉΓòÉΓòÉ
  1029.  
  1030.   /*******************************************/
  1031.   /* The wpModifyPopupMenu instance method   */
  1032.   /* is called to allow an object to add     */
  1033.   /* additional items to its pop-up menu.    */
  1034.   /*******************************************/
  1035.  
  1036.   #define INCL_WINWORKPLACE
  1037.   #include <os2.h>
  1038.  
  1039.   WPObject *  self;
  1040.   HWND            hwndMenu;
  1041.   HWND            hwndCnr;
  1042.   ULONG           ulPosition;
  1043.   BOOL            fSuccess;             /* Success indicator */
  1044.  
  1045.   fSuccess = _wpModifyPopupMenu(self, hwndMenu, hwndCnr, ulPosition);
  1046.  
  1047.  
  1048. ΓòÉΓòÉΓòÉ <hidden> wpMoveObject ΓòÉΓòÉΓòÉ
  1049.  
  1050.   /*******************************************/
  1051.   /* The wpMoveObject instance method is     */
  1052.   /* called to move the object to a          */
  1053.   /* different location.                     */
  1054.   /*******************************************/
  1055.  
  1056.   #define INCL_WINWORKPLACE
  1057.   #include <os2.h>
  1058.  
  1059.   WPObject *  self;
  1060.   WPFolder *  Folder;
  1061.   BOOL            fSuccess;           /* Success indicator */
  1062.  
  1063.   fSuccess = _wpMoveObject(self, Folder);
  1064.  
  1065.  
  1066. ΓòÉΓòÉΓòÉ <hidden> wpOpen ΓòÉΓòÉΓòÉ
  1067.  
  1068.   /*******************************************/
  1069.   /* The wpOpen instance method is called to */
  1070.   /* open a view to the object.              */
  1071.   /*******************************************/
  1072.  
  1073.   #define INCL_WINWORKPLACE
  1074.   #include <os2.h>
  1075.  
  1076.   WPObject *  self;
  1077.   HWND            hwndCnr;
  1078.   ULONG           ulView;
  1079.   ULONG           ulparam;           /* Open view parameter */
  1080.   HWND            hwnd;              /* Success indicator */
  1081.  
  1082.   hwnd = _wpOpen(self, hwndCnr, ulView, ulparam);
  1083.  
  1084.  
  1085. ΓòÉΓòÉΓòÉ <hidden> wpPrintObject ΓòÉΓòÉΓòÉ
  1086.  
  1087.   /*******************************************/
  1088.   /* The wpPrintObject instance method is    */
  1089.   /* called to print a view of the object.   */
  1090.   /*******************************************/
  1091.  
  1092.   #define INCL_WINWORKPLACE
  1093.   #include <os2.h>
  1094.  
  1095.   WPObject *  self;
  1096.   PPRINTDEST      pPrintDest;           /* The pointer to print data */
  1097.   ULONG           ulReserved;
  1098.   BOOL            fSuccess;             /* Success indicator */
  1099.  
  1100.   fSuccess = _wpPrintObject(self, pPrintDest, ulReserved);
  1101.  
  1102.  
  1103. ΓòÉΓòÉΓòÉ <hidden> wpRestore ΓòÉΓòÉΓòÉ
  1104.  
  1105.   /*******************************************/
  1106.   /* The wpRestore instance method is called */
  1107.   /* to allow the object to restore its      */
  1108.   /* views from the hidden or minimized      */
  1109.   /* states.                                 */
  1110.   /*******************************************/
  1111.  
  1112.   #define INCL_WINWORKPLACE
  1113.   #include <os2.h>
  1114.  
  1115.   WPObject *  self;
  1116.   BOOL            fReturn;           /* Success indicator */
  1117.  
  1118.   fReturn = _wpRestore(self);
  1119.  
  1120.  
  1121. ΓòÉΓòÉΓòÉ <hidden> wpQueryConfirmations ΓòÉΓòÉΓòÉ
  1122.  
  1123.   /*******************************************/
  1124.   /* The wpQueryConfirmations instance       */
  1125.   /* method is called to determine which     */
  1126.   /* confirmations are set on this object.   */
  1127.   /*******************************************/
  1128.  
  1129.   #define INCL_WINWORKPLACE
  1130.   #include <os2.h>
  1131.  
  1132.   WPObject *  self;
  1133.   ULONG           ulflag;           /* Confirmation flags */
  1134.  
  1135.   ulflag = _wpQueryConfirmations(self);
  1136.  
  1137.  
  1138. ΓòÉΓòÉΓòÉ <hidden> wpQueryDefaultHelp ΓòÉΓòÉΓòÉ
  1139.  
  1140.   /*******************************************/
  1141.   /* The wpQueryDefaultHelp instance method  */
  1142.   /* is called to allow the object to        */
  1143.   /* specify its default help panel.         */
  1144.   /*******************************************/
  1145.  
  1146.   #define INCL_WINWORKPLACE
  1147.   #include <os2.h>
  1148.  
  1149.   WPObject *  self;
  1150.   PULONG          pHelpPanelId;
  1151.   PSZ             pszHelpLibrary;
  1152.   BOOL            fSuccess;                 /* Success indicator */
  1153.  
  1154.   fSuccess = _wpQueryDefaultHelp(self, pHelpPanelId, pszHelpLibrary);
  1155.  
  1156.  
  1157. ΓòÉΓòÉΓòÉ <hidden> wpQueryDefaultView ΓòÉΓòÉΓòÉ
  1158.  
  1159.   /*******************************************/
  1160.   /* The wpQueryDefaultView instance method  */
  1161.   /* is called to allow the object to query  */
  1162.   /* its current default open view.          */
  1163.   /*******************************************/
  1164.  
  1165.   #define INCL_WINWORKPLACE
  1166.   #include <os2.h>
  1167.  
  1168.   WPObject *  self;
  1169.   ULONG           ulView;
  1170.  
  1171.   ulView = _wpQueryDefaultView(self);
  1172.  
  1173.  
  1174. ΓòÉΓòÉΓòÉ <hidden> wpQueryDetailsData ΓòÉΓòÉΓòÉ
  1175.  
  1176.   /*******************************************/
  1177.   /* The wpQueryDetailsData instance method  */
  1178.   /* is called to allow the object to query  */
  1179.   /* its current details data.               */
  1180.   /*******************************************/
  1181.  
  1182.   #define INCL_WINWORKPLACE
  1183.   #include <os2.h>
  1184.  
  1185.   WPObject *  self;
  1186.   PVOID           *ppDetailsData;
  1187.   PULONG          pcp;
  1188.   BOOL            fReturn;                  /* Success indicator */
  1189.  
  1190.   fReturn = _wpQueryDetailsData(self, *ppDetailsData, pcp);
  1191.  
  1192.  
  1193. ΓòÉΓòÉΓòÉ <hidden> wpQueryIcon ΓòÉΓòÉΓòÉ
  1194.  
  1195.   /*******************************************/
  1196.   /* The wpQueryIcon instance method is      */
  1197.   /* called to allow the object to query its */
  1198.   /* current icon.                           */
  1199.   /*******************************************/
  1200.  
  1201.   #define INCL_WINWORKPLACE
  1202.   #include <os2.h>
  1203.  
  1204.   WPObject *  self;
  1205.   HPOINTER        hptrQryIcon;           /* Success indicator */
  1206.  
  1207.   hptrQryIcon = _wpQueryIcon(self);
  1208.  
  1209.  
  1210. ΓòÉΓòÉΓòÉ <hidden> wpQueryIconData ΓòÉΓòÉΓòÉ
  1211.  
  1212.   /*******************************************/
  1213.   /* The wpQueryIconData instance method is  */
  1214.   /* called to allow the object to query the */
  1215.   /* data to be used for its current icon.   */
  1216.   /*******************************************/
  1217.  
  1218.   #define INCL_WINWORKPLACE
  1219.   #include <os2.h>
  1220.  
  1221.   WPObject *  self;
  1222.   PICONINFO       ppIconInfo;
  1223.   BOOL            fReturn;              /* Success indicator */
  1224.  
  1225.   fReturn = _wpQueryIconData(self, ppIconInfo);
  1226.  
  1227.  
  1228. ΓòÉΓòÉΓòÉ <hidden> wpQueryStyle ΓòÉΓòÉΓòÉ
  1229.  
  1230.   /*******************************************/
  1231.   /* The wpQueryStyle instance method allows */
  1232.   /* the object to query its current class   */
  1233.   /* style.                                  */
  1234.   /*******************************************/
  1235.  
  1236.   #define INCL_WINWORKPLACE
  1237.   #include <os2.h>
  1238.  
  1239.   WPObject *  self;
  1240.   ULONG           ulnwQrySt;
  1241.  
  1242.   ulnwQrySt = _wpQueryStyle(self);
  1243.  
  1244.  
  1245. ΓòÉΓòÉΓòÉ <hidden> wpQueryTitle ΓòÉΓòÉΓòÉ
  1246.  
  1247.   /*******************************************/
  1248.   /* The wpQueryTitle instance method is     */
  1249.   /* called to allow the object to query its */
  1250.   /* current title.                          */
  1251.   /*******************************************/
  1252.  
  1253.   #define INCL_WINWORKPLACE
  1254.   #include <os2.h>
  1255.  
  1256.   WPObject *  self;
  1257.   PSZ             pszQTitle;           /* A pointer to the object's title */
  1258.  
  1259.   pszQTitle = _wpQueryTitle(self);
  1260.  
  1261.  
  1262. ΓòÉΓòÉΓòÉ <hidden> wpSetDefaultHelp ΓòÉΓòÉΓòÉ
  1263.  
  1264.   /*******************************************/
  1265.   /* The wpSetDefaultHelp instance method is */
  1266.   /* called to set the default help panel    */
  1267.   /* for the object.                         */
  1268.   /*******************************************/
  1269.  
  1270.   #define INCL_WINWORKPLACE
  1271.   #include <os2.h>
  1272.  
  1273.   WPObject *  self;
  1274.   ULONG           ulPanelID;
  1275.   PSZ             pszHelpLibrary;
  1276.   BOOL            fSuccess;                 /* Success indicator */
  1277.  
  1278.   fSuccess = _wpSetDefaultHelp(self, ulPanelID, pszHelpLibrary);
  1279.  
  1280.  
  1281. ΓòÉΓòÉΓòÉ <hidden> wpSetDefaultView ΓòÉΓòÉΓòÉ
  1282.  
  1283.   /*******************************************/
  1284.   /* The wpSetDefaultView instance method is */
  1285.   /* called to allow an object to change its */
  1286.   /* current default open view.              */
  1287.   /*******************************************/
  1288.  
  1289.   #define INCL_WINWORKPLACE
  1290.   #include <os2.h>
  1291.  
  1292.   WPObject *  self;
  1293.   ULONG           ulView;
  1294.   BOOL            fReturn;           /* Success indicator */
  1295.  
  1296.   fReturn = _wpSetDefaultView(self, ulView);
  1297.  
  1298.  
  1299. ΓòÉΓòÉΓòÉ <hidden> wpSetIcon ΓòÉΓòÉΓòÉ
  1300.  
  1301.   /*******************************************/
  1302.   /* The wpSetIcon instance method is called */
  1303.   /* to allow the object to set its current  */
  1304.   /* icon.                                   */
  1305.   /*******************************************/
  1306.  
  1307.   #define INCL_WINWORKPLACE
  1308.   #include <os2.h>
  1309.  
  1310.   WPObject *  self;
  1311.   HPOINTER        hptrNewIcon;
  1312.   BOOL            fSuccess;              /* Success indicator */
  1313.  
  1314.   fSuccess = _wpSetIcon(self, hptrNewIcon);
  1315.  
  1316.  
  1317. ΓòÉΓòÉΓòÉ <hidden> wpSetIconData ΓòÉΓòÉΓòÉ
  1318.  
  1319.   /*******************************************/
  1320.   /* The wpSetIconData instance method is    */
  1321.   /* called to allow the object to           */
  1322.   /* permanently set its current icon.       */
  1323.   /*******************************************/
  1324.  
  1325.   #define INCL_WINWORKPLACE
  1326.   #include <os2.h>
  1327.  
  1328.   WPObject *  self;
  1329.   PICONINFO       ppIconInfo;
  1330.   BOOL            fReturn;              /* Success indicator */
  1331.  
  1332.   fReturn = _wpSetIconData(self, ppIconInfo);
  1333.  
  1334.  
  1335. ΓòÉΓòÉΓòÉ <hidden> wpSetStyle ΓòÉΓòÉΓòÉ
  1336.  
  1337.   /*******************************************/
  1338.   /* The wpSetStyle instance method is       */
  1339.   /* called to allow an object to set its    */
  1340.   /* current object style.                   */
  1341.   /*******************************************/
  1342.  
  1343.   #define INCL_WINWORKPLACE
  1344.   #include <os2.h>
  1345.  
  1346.   WPObject *  self;
  1347.   ULONG           ulNewStyle;
  1348.   BOOL            fSuccess;             /* Success indicator */
  1349.  
  1350.   fSuccess = _wpSetStyle(self, ulNewStyle);
  1351.  
  1352.  
  1353. ΓòÉΓòÉΓòÉ <hidden> wpSetTitle ΓòÉΓòÉΓòÉ
  1354.  
  1355.   /*******************************************/
  1356.   /* The wpSetTitle instance method is       */
  1357.   /* called to allow the object to set its   */
  1358.   /* current title.                          */
  1359.   /*******************************************/
  1360.  
  1361.   #define INCL_WINWORKPLACE
  1362.   #include <os2.h>
  1363.  
  1364.   WPObject *  self;
  1365.   PSZ             pszNewTitle;
  1366.   BOOL            fSuccess;              /* Success indicator */
  1367.  
  1368.   fSuccess = _wpSetTitle(self, pszNewTitle);
  1369.  
  1370.  
  1371. ΓòÉΓòÉΓòÉ <hidden> wpQueryError ΓòÉΓòÉΓòÉ
  1372.  
  1373.   /*******************************************/
  1374.   /* The wpQueryError instance method is     */
  1375.   /* called to retrieve the error identity   */
  1376.   /* of the last error condition.            */
  1377.   /*******************************************/
  1378.  
  1379.   #define INCL_WINWORKPLACE
  1380.   #include <os2.h>
  1381.  
  1382.   WPObject *  self;
  1383.   ULONG           ulerrorid;           /* Error identities */
  1384.  
  1385.   ulerrorid = _wpQueryError(self);
  1386.  
  1387.  
  1388. ΓòÉΓòÉΓòÉ <hidden> wpSetError ΓòÉΓòÉΓòÉ
  1389.  
  1390.   /*******************************************/
  1391.   /* The wpSetError instance method is       */
  1392.   /* called to identify an error condition.  */
  1393.   /*******************************************/
  1394.  
  1395.   #define INCL_WINWORKPLACE
  1396.   #include <os2.h>
  1397.  
  1398.   WPObject *  self;
  1399.   ULONG           ulErrorID;
  1400.   BOOL            fsuccess;            /* Success indicator */
  1401.  
  1402.   fsuccess = _wpSetError(self, ulErrorID);
  1403.  
  1404.  
  1405. ΓòÉΓòÉΓòÉ <hidden> wpAllocMem ΓòÉΓòÉΓòÉ
  1406.  
  1407.   /*******************************************/
  1408.   /* The wpAllocMem instance method is       */
  1409.   /* called to allocate memory for use by an */
  1410.   /* object.                                 */
  1411.   /*******************************************/
  1412.  
  1413.   #define INCL_WINWORKPLACE
  1414.   #include <os2.h>
  1415.  
  1416.   WPObject *  self;
  1417.   ULONG           cbBytes;
  1418.   PULONG          prc;                    /* Report error indicator */
  1419.   PBYTE           pbNewMem;               /* Success indicator */
  1420.  
  1421.   pbNewMem = _wpAllocMem(self, cbBytes, prc);
  1422.  
  1423.  
  1424. ΓòÉΓòÉΓòÉ <hidden> wpFreeMem ΓòÉΓòÉΓòÉ
  1425.  
  1426.   /*******************************************/
  1427.   /* The wpFreeMem instance method is called */
  1428.   /* to deallocate memory allocated by a     */
  1429.   /* call to the wpAllocMem method.          */
  1430.   /*******************************************/
  1431.  
  1432.   #define INCL_WINWORKPLACE
  1433.   #include <os2.h>
  1434.  
  1435.   WPObject *  self;
  1436.   PBYTE           pbMemory;
  1437.   BOOL            fSuccess;           /* Success indicator */
  1438.  
  1439.   fSuccess = _wpFreeMem(self, pbMemory);
  1440.  
  1441.  
  1442. ΓòÉΓòÉΓòÉ <hidden> wpFree ΓòÉΓòÉΓòÉ
  1443.  
  1444.   /*******************************************/
  1445.   /* The wpFree instance method is called to */
  1446.   /* destroy the object and deallocate its   */
  1447.   /* associated resources.                   */
  1448.   /*******************************************/
  1449.  
  1450.   #define INCL_WINWORKPLACE
  1451.   #include <os2.h>
  1452.  
  1453.   WPObject *  self;
  1454.   BOOL            fReturn;           /* Success indicator */
  1455.  
  1456.   fReturn = _wpFree(self);
  1457.  
  1458.  
  1459. ΓòÉΓòÉΓòÉ <hidden> wpInitData ΓòÉΓòÉΓòÉ
  1460.  
  1461.   /*******************************************/
  1462.   /* The wpInitData instance method is       */
  1463.   /* called to allow the object to           */
  1464.   /* initialize its instance data.           */
  1465.   /*******************************************/
  1466.  
  1467.   #define INCL_WINWORKPLACE
  1468.   #include <os2.h>
  1469.  
  1470.   WPObject *  self;
  1471.   VOID            void;
  1472.  
  1473.   void = _wpInitData(self);
  1474.  
  1475.  
  1476. ΓòÉΓòÉΓòÉ <hidden> wpScanSetupString ΓòÉΓòÉΓòÉ
  1477.  
  1478.   /*******************************************/
  1479.   /* The wpScanSetupString instance method   */
  1480.   /* is called to allow an object to parse   */
  1481.   /* the setup string that is passed when    */
  1482.   /* the object is created.                  */
  1483.   /*******************************************/
  1484.  
  1485.   #define INCL_WINWORKPLACE
  1486.   #include <os2.h>
  1487.  
  1488.   WPObject *  self;
  1489.   PSZ             pszSetupString;
  1490.   PSZ             pszKey;
  1491.   PSZ             pszValue;
  1492.   PULONG          pcbValue;
  1493.   BOOL            fReturn;                  /* Success indicator */
  1494.  
  1495.   fReturn = _wpScanSetupString(self, pszSetupString, pszKey,
  1496.                                pszValue, pcbValue);
  1497.  
  1498.  
  1499. ΓòÉΓòÉΓòÉ <hidden> wpSetup ΓòÉΓòÉΓòÉ
  1500.  
  1501.   /*******************************************/
  1502.   /* The wpSetup instance method is called   */
  1503.   /* to allow the newly created object to    */
  1504.   /* initialize itself.                      */
  1505.   /*******************************************/
  1506.  
  1507.   #define INCL_WINWORKPLACE
  1508.   #include <os2.h>
  1509.  
  1510.   WPObject *  self;
  1511.   PSZ             pszSetupString;
  1512.   BOOL            fSuccess;                 /* Success indicator */
  1513.  
  1514.   fSuccess = _wpSetup(self, pszSetupString);
  1515.  
  1516.  
  1517. ΓòÉΓòÉΓòÉ <hidden> wpUnInitData ΓòÉΓòÉΓòÉ
  1518.  
  1519.   /*******************************************/
  1520.   /* The wpUnInitData instance method is     */
  1521.   /* called to allow the object to free      */
  1522.   /* allocated resources.                    */
  1523.   /*******************************************/
  1524.  
  1525.   #define INCL_WINWORKPLACE
  1526.   #include <os2.h>
  1527.  
  1528.   WPObject *  self;
  1529.   VOID            void;
  1530.  
  1531.   void = _wpUnInitData(self);
  1532.  
  1533.  
  1534. ΓòÉΓòÉΓòÉ <hidden> wpDragOver ΓòÉΓòÉΓòÉ
  1535.  
  1536.   /*******************************************/
  1537.   /* The wpDragOver instance method is       */
  1538.   /* called to inform the object that other  */
  1539.   /* objects are being dragged over it.      */
  1540.   /*******************************************/
  1541.  
  1542.   #define INCL_WINWORKPLACE
  1543.   #include <os2.h>
  1544.  
  1545.   WPObject *  self;
  1546.   HWND            hwndCnr;
  1547.   PDRAGINFO       pDragInfo;
  1548.   MRESULT         mresRetcode;           /*   */
  1549.  
  1550.   mresRetcode = _wpDragOver(self, hwndCnr, pDragInfo);
  1551.  
  1552.  
  1553. ΓòÉΓòÉΓòÉ <hidden> wpDraggedOverObject ΓòÉΓòÉΓòÉ
  1554.  
  1555.   /*******************************************/
  1556.   /* The wpDraggedOverObject instance method */
  1557.   /* may be called on an object that is      */
  1558.   /* currently being dragged with the mouse  */
  1559.   /* to tell it what the current target      */
  1560.   /* object is.  The return code from this   */
  1561.   /* method lets the system know whether the */
  1562.   /* object being dragged can be dropped on  */
  1563.   /* the specified target.                   */
  1564.   /*******************************************/
  1565.  
  1566.   #define INCL_WINWORKPLACE
  1567.   #include <os2.h>
  1568.  
  1569.   WPObject *  somSelf;
  1570.   WPObject *  DraggedOverObject;
  1571.   MRESULT         mresMRESULT;
  1572.  
  1573.   mresMRESULT = _wpDraggedOverObject(somSelf, DraggedOverObject);
  1574.  
  1575.  
  1576. ΓòÉΓòÉΓòÉ <hidden> wpDrop ΓòÉΓòÉΓòÉ
  1577.  
  1578.   /*******************************************/
  1579.   /* The wpDrop instance method is called to */
  1580.   /* inform an object that another object    */
  1581.   /* has been dropped on it.                 */
  1582.   /*******************************************/
  1583.  
  1584.   #define INCL_WINWORKPLACE
  1585.   #include <os2.h>
  1586.  
  1587.   WPObject *  self;
  1588.   HWND            hwndCnr;
  1589.   PDRAGINFO       pDragInfo;
  1590.   PDRAGITEM       pDragItem;
  1591.   MRESULT         mresRetcode;           /*   */
  1592.  
  1593.   mresRetcode = _wpDrop(self, hwndCnr, pDragInfo, pDragItem);
  1594.  
  1595.  
  1596. ΓòÉΓòÉΓòÉ <hidden> wpDroppedOnObject ΓòÉΓòÉΓòÉ
  1597.  
  1598.   /*******************************************/
  1599.   /* The wpDroppedOnObject instance method   */
  1600.   /* is called on an object that has just    */
  1601.   /* been dragged (a source object) when the */
  1602.   /* target object that it was dropped on    */
  1603.   /* does not know what action to perform.   */
  1604.   /* This instance method is only called on  */
  1605.   /* a source object when that source object */
  1606.   /* has previously responded favorably to a */
  1607.   /* wpDraggedOverObject instance method     */
  1608.   /* call.                                   */
  1609.   /*******************************************/
  1610.  
  1611.   #define INCL_WINWORKPLACE
  1612.   #include <os2.h>
  1613.  
  1614.   WPObject *  somSelf;
  1615.   WPObject *  DroppedOnObject;
  1616.   BOOL            fMRESULT;
  1617.  
  1618.   fMRESULT = _wpDroppedOnObject(somSelf, DroppedOnObject);
  1619.  
  1620.  
  1621. ΓòÉΓòÉΓòÉ <hidden> wpEndConversation ΓòÉΓòÉΓòÉ
  1622.  
  1623.   /*******************************************/
  1624.   /* The wpEndConversation instance method   */
  1625.   /* is called to notify the object that the */
  1626.   /* drag or drop operation is complete.     */
  1627.   /*******************************************/
  1628.  
  1629.   #define INCL_WINWORKPLACE
  1630.   #include <os2.h>
  1631.  
  1632.   WPObject *  self;
  1633.   ULONG           ulItemId;
  1634.   ULONG           ulResult;
  1635.   MRESULT         mresreturn;
  1636.  
  1637.   mresreturn = _wpEndConversation(self, ulItemId, ulResult);
  1638.  
  1639.  
  1640. ΓòÉΓòÉΓòÉ <hidden> wpFormatDragItem ΓòÉΓòÉΓòÉ
  1641.  
  1642.  
  1643.   /*******************************************/
  1644.   /* The wpFormatDragItem instance method is */
  1645.   /* called to allow the object to format    */
  1646.   /* its drag information when the user      */
  1647.   /* starts to drag it.                      */
  1648.   /*******************************************/
  1649.  
  1650.   #define INCL_WINWORKPLACE
  1651.   #include <os2.h>
  1652.  
  1653.   WPObject *  self;
  1654.   PDRAGITEM       pDragItem;
  1655.   BOOL            fSuccess;            /* Success indicator */
  1656.  
  1657.   fSuccess = _wpFormatDragItem(self, pDragItem);
  1658.  
  1659.  
  1660. ΓòÉΓòÉΓòÉ <hidden> wpRender ΓòÉΓòÉΓòÉ
  1661.  
  1662.   /*******************************************/
  1663.   /* The wpRender instance method is called  */
  1664.   /* to request a drag or drop rendering     */
  1665.   /* format from the object.                 */
  1666.   /*******************************************/
  1667.  
  1668.   #define INCL_WINWORKPLACE
  1669.   #include <os2.h>
  1670.  
  1671.   WPObject *  self;
  1672.   PDRAGTRANSFER   ppdxfer;
  1673.   MRESULT         mresreturn;
  1674.  
  1675.   mresreturn = _wpRender(self, ppdxfer);
  1676.  
  1677.  
  1678. ΓòÉΓòÉΓòÉ <hidden> wpRenderComplete ΓòÉΓòÉΓòÉ
  1679.  
  1680.   /*******************************************/
  1681.   /* The wpRenderComplete instance method is */
  1682.   /* called to notify the object that the    */
  1683.   /* drag or drop rendering request is       */
  1684.   /* complete.                               */
  1685.   /*******************************************/
  1686.  
  1687.   #define INCL_WINWORKPLACE
  1688.   #include <os2.h>
  1689.  
  1690.   WPObject *  self;
  1691.   PDRAGTRANSFER   ppdxfer;
  1692.   ULONG           ulResult;
  1693.   MRESULT         mresreturn;
  1694.  
  1695.   mresreturn = _wpRenderComplete(self, ppdxfer, ulResult);
  1696.  
  1697.  
  1698. ΓòÉΓòÉΓòÉ <hidden> wpInsertObject ΓòÉΓòÉΓòÉ
  1699.  
  1700.   /*******************************************/
  1701.   /* The wpCnrInsertObject instance method   */
  1702.   /* is called to insert a record into a     */
  1703.   /* container control window.               */
  1704.   /*******************************************/
  1705.  
  1706.   #define INCL_WINWORKPLACE
  1707.   #include <os2.h>
  1708.  
  1709.   WPObject *   self;
  1710.   HWND             hwndCnr;
  1711.   PPOINTL          pIcon;
  1712.   PMINIRECORDCORE  pParent;
  1713.   PRECORDINSERT    pRecInsert;            /* Record position */
  1714.   PMINIRECORDCORE  pRetcode;              /* Success indicator */
  1715.  
  1716.   pRetcode = _wpCnrInsertObject(self, hwndCnr, pIcon, pParent,
  1717.                                 pRecInsert);
  1718.  
  1719.  
  1720. ΓòÉΓòÉΓòÉ <hidden> wpRemoveObject ΓòÉΓòÉΓòÉ
  1721.  
  1722.   /*******************************************/
  1723.   /* The wpCnrRemoveObject instance method   */
  1724.   /* is called to remove a record from a     */
  1725.   /* container control window.               */
  1726.   /*******************************************/
  1727.  
  1728.   #define INCL_WINWORKPLACE
  1729.   #include <os2.h>
  1730.  
  1731.   WPObject *   self;
  1732.   HWND             hwndCnr;
  1733.   PMINIRECORDCORE  pRecord;
  1734.   BOOL             freturn;            /* Success indicator */
  1735.  
  1736.   freturn = _wpCnrRemoveObject(self, hwndCnr, pRecord);
  1737.  
  1738.  
  1739. ΓòÉΓòÉΓòÉ <hidden> wpSetEmphasis ΓòÉΓòÉΓòÉ
  1740.  
  1741.   /*******************************************/
  1742.   /* The wpCnrSetEmphasis instance method is */
  1743.   /* called to allow the object to change    */
  1744.   /* its visual emphasis.                    */
  1745.   /*******************************************/
  1746.  
  1747.   #define INCL_WINWORKPLACE
  1748.   #include <os2.h>
  1749.  
  1750.   WPObject *  self;
  1751.   ULONG           ulEmphasisAttr;
  1752.   BOOL            fTurnOn;
  1753.   BOOL            fSuccess;                 /* Success indicator */
  1754.  
  1755.   fSuccess = _wpCnrSetEmphasis(self, ulEmphasisAttr, fTurnOn);
  1756.  
  1757.  
  1758. ΓòÉΓòÉΓòÉ <hidden> wpConfirmDelete ΓòÉΓòÉΓòÉ
  1759.  
  1760.   /*******************************************/
  1761.   /* The wpConfirmDelete instance method is  */
  1762.   /* called to allow the object to prompt    */
  1763.   /* the user to confirm the deletion of     */
  1764.   /* this object.                            */
  1765.   /*******************************************/
  1766.  
  1767.   #define INCL_WINWORKPLACE
  1768.   #include <os2.h>
  1769.  
  1770.   WPObject *  self;
  1771.   ULONG           fConfirmations;           /* The confirmation flags */
  1772.   ULONG           ulReturn;
  1773.  
  1774.   ulReturn = _wpConfirmDelete(self, fConfirmations);
  1775.  
  1776.  
  1777. ΓòÉΓòÉΓòÉ <hidden> wpCopyFromTemplate ΓòÉΓòÉΓòÉ
  1778.  
  1779.   /*******************************************/
  1780.   /* The wpCopiedFromTemplate instance       */
  1781.   /* method is called to allow an object to  */
  1782.   /* perform class specific processing when  */
  1783.   /* a new object is created from a template.*/
  1784.   /*******************************************/
  1785.  
  1786.   #define INCL_WINWORKPLACE
  1787.   #include <os2.h>
  1788.  
  1789.   WPObject *  self;
  1790.   VOID            void;
  1791.  
  1792.   void = _wpCopiedFromTemplate(self);
  1793.  
  1794.  
  1795. ΓòÉΓòÉΓòÉ <hidden> wpDoesObjectMatch ΓòÉΓòÉΓòÉ
  1796.  
  1797.   /*******************************************/
  1798.   /* The wpDoesObjectMatch instance method   */
  1799.   /* is called to allow the object to        */
  1800.   /* determine if it matches the specified   */
  1801.   /* criteria.                               */
  1802.   /*******************************************/
  1803.  
  1804.   #define INCL_WINWORKPLACE
  1805.   #include <os2.h>
  1806.  
  1807.   WPObject *  object;
  1808.   PVOID           pExtendedCriteria;
  1809.   BOOL            fSuccess;                    /* Success indicator */
  1810.  
  1811.   fSuccess = _wpDoesObjectMatch(object, pExtendedCriteria);
  1812.  
  1813.  
  1814. ΓòÉΓòÉΓòÉ <hidden> wpRegisterView ΓòÉΓòÉΓòÉ
  1815.  
  1816.   /*******************************************/
  1817.   /* The wpRegisterView instance method is   */
  1818.   /* called to allow the object to register  */
  1819.   /* a new open view.                        */
  1820.   /*******************************************/
  1821.  
  1822.   #define INCL_WINWORKPLACE
  1823.   #include <os2.h>
  1824.  
  1825.   WPObject *  self;
  1826.   HWND            hwndFrame;
  1827.   PSZ             pszViewTitle;
  1828.   BOOL            fReturn;                /* Success indicator */
  1829.  
  1830.   fReturn = _wpRegisterView(self, hwndFrame, pszViewTitle);
  1831.  
  1832.  
  1833. ΓòÉΓòÉΓòÉ <hidden> wpSwitchTo ΓòÉΓòÉΓòÉ
  1834.  
  1835.   /*******************************************/
  1836.   /* The wpSwitchTo instance method is       */
  1837.   /* called to allow the object to give      */
  1838.   /* focus to the specified open view.       */
  1839.   /*******************************************/
  1840.  
  1841.   #define INCL_WINWORKPLACE
  1842.   #include <os2.h>
  1843.  
  1844.   WPObject *  self;
  1845.   ULONG           ulView;
  1846.   BOOL            fSuccess;           /* Success indicator */
  1847.  
  1848.   fSuccess = _wpSwitchTo(self, ulView);
  1849.  
  1850. =============================================================================== 
  1851.  
  1852.  
  1853. ΓòÉΓòÉΓòÉ <hidden> wpclsCreateDefaultTemplates ΓòÉΓòÉΓòÉ
  1854.  
  1855.  
  1856.   /*******************************************/
  1857.   /* The wpclsCreateDefaultTemplates method  */
  1858.   /* is called to allow the specified class  */
  1859.   /* to create default template instances of */
  1860.   /* its class.                              */
  1861.   /*******************************************/
  1862.  
  1863.   #define INCL_WINWORKPLACE
  1864.   #include <os2.h>
  1865.  
  1866.   M_WPObject *  self;
  1867.   WPFolder *    Folder;
  1868.   ULONG             ulreturn;             /* Number of templates created */
  1869.  
  1870.   ulreturn = _wpclsCreateDefaultTemplates( self, Folder);
  1871.  
  1872.  
  1873. ΓòÉΓòÉΓòÉ <hidden> wpclsFindObjectEnd ΓòÉΓòÉΓòÉ
  1874.  
  1875.   /*******************************************/
  1876.   /* The wpclsFindObjectEnd method is called */
  1877.   /* to end the find operation started by a  */
  1878.   /* call to the wpclsFindObjectFirst method.*/
  1879.   /*******************************************/
  1880.  
  1881.   #define INCL_WINWORKPLACE
  1882.   #include <os2.h>
  1883.  
  1884.   M_WPObject *  self;
  1885.   HFIND             hfindfind;
  1886.   BOOL              fSuccess;              /* Success indicator */
  1887.  
  1888.   fSuccess = _wpclsFindObjectEnd(self, hfindfind);
  1889.  
  1890.  
  1891. ΓòÉΓòÉΓòÉ <hidden> wpclsFindObjectFirst ΓòÉΓòÉΓòÉ
  1892.  
  1893.   /*******************************************/
  1894.   /* The wpclsFindObjectFirst method is      */
  1895.   /* called to find workplace objects.       */
  1896.   /*******************************************/
  1897.  
  1898.   #define INCL_WINWORKPLACE
  1899.   #include <os2.h>
  1900.  
  1901.   M_WPObject *  self;
  1902.   PHFIND            pfind;
  1903.   PSZ               pszTitle;
  1904.   WPFolder *    Folder;
  1905.   BOOL              fSubfolders;                   /* Scope indicator */
  1906.   PVOID             pExtendedCriteria;
  1907.   POBJECTS          pBuf;
  1908.   PULONG            pCount;
  1909.   BOOL              fSuccess;                      /* Success indicator */
  1910.  
  1911.   fSuccess = _wpclsFindObjectFirst(self, pfind, pszTitle, Folder,
  1912.                                    fSubfolders, pExtendedCriteria,
  1913.                                    pBuf, pCount);
  1914.  
  1915.  
  1916. ΓòÉΓòÉΓòÉ <hidden> wpclsFindObjectNext ΓòÉΓòÉΓòÉ
  1917.  
  1918.   /*******************************************/
  1919.   /* The wpclsFindObjectNext method is       */
  1920.   /* called to find the next set of matching */
  1921.   /* objects.                                */
  1922.   /*******************************************/
  1923.  
  1924.   #define INCL_WINWORKPLACE
  1925.   #include <os2.h>
  1926.  
  1927.   M_WPObject *  self;
  1928.   HFIND             hfindfind;
  1929.   POBJECTS          pBuf;
  1930.   PULONG            pCount;
  1931.   BOOL              fSuccess;              /* Success indicator */
  1932.  
  1933.   fSuccess = _wpclsFindObjectNext(self, hfindfind, pBuf, pCount);
  1934.  
  1935.  
  1936. ΓòÉΓòÉΓòÉ <hidden> wpclsInitData ΓòÉΓòÉΓòÉ
  1937.  
  1938.   /*******************************************/
  1939.   /* The wpclsInitData method is called to   */
  1940.   /* allow the class object to initialize    */
  1941.   /* its instance data.                      */
  1942.   /*******************************************/
  1943.  
  1944.   #define INCL_WINWORKPLACE
  1945.   #include <os2.h>
  1946.  
  1947.   M_WPObject *  self;
  1948.   VOID              void;
  1949.  
  1950.   void = _wpclsInitData(self);
  1951.  
  1952.  
  1953. ΓòÉΓòÉΓòÉ <hidden> wpclsMakeAwake ΓòÉΓòÉΓòÉ
  1954.  
  1955.   /*******************************************/
  1956.   /* The wpclsMakeAwake method is called to  */
  1957.   /* allow the specified class to awaken an  */
  1958.   /* object.                                 */
  1959.   /*******************************************/
  1960.  
  1961.   #define INCL_WINWORKPLACE
  1962.   #include <os2.h>
  1963.  
  1964.   M_WPObject *  self;
  1965.   PSZ               pszTitle;
  1966.   ULONG             ulStyle;
  1967.   HPOINTER          hptrIcon;
  1968.   POBJDATA          pObjData;
  1969.   WPFolder *    Folder;
  1970.   ULONG             ulUser;
  1971.   WPObject *    Success;              /* Success indicator */
  1972.  
  1973.   Success = _wpclsMakeAwake(self, pszTitle, ulStyle, hptrIcon,
  1974.                             pObjData, Folder, ulUser);
  1975.  
  1976.  
  1977. ΓòÉΓòÉΓòÉ <hidden> wpclsNew ΓòÉΓòÉΓòÉ
  1978.  
  1979.   /*******************************************/
  1980.   /* The wpclsNew method is called to make   */
  1981.   /* an new instance of this class of object.*/
  1982.   /*******************************************/
  1983.  
  1984.   #define INCL_WINWORKPLACE
  1985.   #include <os2.h>
  1986.  
  1987.   M_WPObject *  self;
  1988.   PSZ               pszTitle;
  1989.   PSZ               pszSetupEnv;
  1990.   WPFolder *    Folder;
  1991.   BOOL              fLock;                   /* The lock object flag */
  1992.   WPObject *    Success;                 /* Success indicator */
  1993.  
  1994.   Success = _wpclsNew(self, pszTitle, pszSetupEnv, Folder, fLock);
  1995.  
  1996.  
  1997. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryDefaultHelp ΓòÉΓòÉΓòÉ
  1998.  
  1999.   /*******************************************/
  2000.   /* The wpclsQueryDefaultHelp method is     */
  2001.   /* called to allow the class object to     */
  2002.   /* specify its default help panel for its  */
  2003.   /* instances.                              */
  2004.   /*******************************************/
  2005.  
  2006.   #define INCL_WINWORKPLACE
  2007.   #include <os2.h>
  2008.  
  2009.   M_WPObject *  self;
  2010.   PULONG            pHelpPanelId;
  2011.   PSZ               pszHelpLibrary;
  2012.   ULONG             ulSuccess;                  /* Success indicator */
  2013.  
  2014.   ulSuccess = _wpclsQueryDefaultHelp(self, pHelpPanelId, pszHelpLibrary);
  2015.  
  2016.  
  2017. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryDefaultView ΓòÉΓòÉΓòÉ
  2018.  
  2019.   /*******************************************/
  2020.   /* The wpclsQueryDefaultView method is     */
  2021.   /* called to allow the class object to     */
  2022.   /* specify the default open view for its   */
  2023.   /* instance.                               */
  2024.   /*******************************************/
  2025.  
  2026.   #define INCL_WINWORKPLACE
  2027.   #include <os2.h>
  2028.  
  2029.   M_WPObject *  self;
  2030.   ULONG             ulView;             /* Default open view */
  2031.  
  2032.   ulView = _wpclsQueryDefaultView(self);
  2033.  
  2034.  
  2035. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryDetails ΓòÉΓòÉΓòÉ
  2036.  
  2037.   /*******************************************/
  2038.   /* The wpclsQueryDetails method is called  */
  2039.   /* to allow the class object to specify    */
  2040.   /* the default details view items for its  */
  2041.   /* instances.                              */
  2042.   /*******************************************/
  2043.  
  2044.   #define INCL_WINWORKPLACE
  2045.   #include <os2.h>
  2046.  
  2047.   M_WPObject *  self;
  2048.   PCLASSDETAILS     pReturn;             /* Success indicator */
  2049.  
  2050.   pReturn = _wpclsQueryDetails(self);
  2051.  
  2052.  
  2053. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryDetailsInfo ΓòÉΓòÉΓòÉ
  2054.  
  2055.   /*******************************************/
  2056.   /* The wpclsQueryDetailsInfo method is     */
  2057.   /* called to allow the class object to     */
  2058.   /* specify its details to be used for its  */
  2059.   /* instances.                              */
  2060.   /*******************************************/
  2061.  
  2062.   #define INCL_WINWORKPLACE
  2063.   #include <os2.h>
  2064.  
  2065.   M_WPObject *  self;
  2066.   PCLASSFIELDINFO   pClassFieldInfo;
  2067.   PULONG            pSize;
  2068.   ULONG             ulReturn;
  2069.  
  2070.   ulReturn = _wpclsQueryDetailsInfo(self, pClassFieldInfo, pSize);
  2071.  
  2072.  
  2073. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryError ΓòÉΓòÉΓòÉ
  2074.  
  2075.   /*******************************************/
  2076.   /* The wpclsQueryError class method        */
  2077.   /* queries the current error code held     */
  2078.   /* within a class object.                  */
  2079.   /*******************************************/
  2080.  
  2081.   #define INCL_WINWORKPLACE
  2082.   #include <os2.h>
  2083.  
  2084.   M_WPObject *  somSelf;
  2085.   ULONG             ulErrorId;
  2086.  
  2087.   ulErrorId = _wpclsQueryError(somSelf);
  2088.  
  2089.  
  2090. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryFolder ΓòÉΓòÉΓòÉ
  2091.  
  2092.   /*******************************************/
  2093.   /* The wpclsQueryFolder method is called   */
  2094.   /* to get a pointer to a folder object     */
  2095.   /* that corresponds to a given file system */
  2096.   /* location.                               */
  2097.   /*******************************************/
  2098.  
  2099.   #define INCL_WINWORKPLACE
  2100.   #include <os2.h>
  2101.  
  2102.   M_WPObject *  self;
  2103.   PSZ               pszLocation;             /* Folder location */
  2104.   BOOL              fLock;                   /* The lock object flag */
  2105.   WPFolder *    Success;                 /* Success indicator */
  2106.  
  2107.   Success = _wpclsQueryFolder(self, pszLocation, fLock);
  2108.  
  2109.  
  2110. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryIcon ΓòÉΓòÉΓòÉ
  2111.  
  2112.   /*******************************************/
  2113.   /* The wpclsQueryIcon method is called to  */
  2114.   /* allow the class object to specify the   */
  2115.   /* default icon to be used for its         */
  2116.   /* instances.                              */
  2117.   /*******************************************/
  2118.  
  2119.   #define INCL_WINWORKPLACE
  2120.   #include <os2.h>
  2121.  
  2122.   M_WPObject *  self;
  2123.   HPOINTER          hptrSuccess;             /* Success indicator */
  2124.  
  2125.   hptrSuccess = _wpclsQueryIcon(self);
  2126.  
  2127.  
  2128. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryIconData ΓòÉΓòÉΓòÉ
  2129.  
  2130.   /*******************************************/
  2131.   /* The wpclsQueryIconData class method     */
  2132.   /* allows the system to build the class    */
  2133.   /* default icon for a given class.         */
  2134.   /*******************************************/
  2135.  
  2136.   #define INCL_WINWORKPLACE
  2137.   #include <os2.h>
  2138.  
  2139.   M_WPObject *  somSelf;
  2140.   PICONINFO         pIconInfo;
  2141.   ULONG             ulcbIconInfo;
  2142.  
  2143.   ulcbIconInfo = _wpclsQueryIconData(somSelf, pIconInfo);
  2144.  
  2145.  
  2146. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryObject ΓòÉΓòÉΓòÉ
  2147.  
  2148.   /*******************************************/
  2149.   /* The wpclsQueryObject class method       */
  2150.   /* returns the object pointer for a given  */
  2151.   /* persistent object handle.               */
  2152.   /*******************************************/
  2153.  
  2154.   #define INCL_WINWORKPLACE
  2155.   #include <os2.h>
  2156.  
  2157.   M_WPObject *  somSelf;
  2158.   HOBJECT           hObject;
  2159.   WPObject *    object;
  2160.  
  2161.   object = _wpclsQueryObject(somSelf, hObject);
  2162.  
  2163.  
  2164. ΓòÉΓòÉΓòÉ <hidden> wpclsSetError ΓòÉΓòÉΓòÉ
  2165.  
  2166.   /*******************************************/
  2167.   /* The wpclsSetError class method sets the */
  2168.   /* current error code within a class       */
  2169.   /* object.                                 */
  2170.   /*******************************************/
  2171.  
  2172.   #define INCL_WINWORKPLACE
  2173.   #include <os2.h>
  2174.  
  2175.   M_WPObject *  somSelf;
  2176.   ULONG             ulErrorId;
  2177.   BOOL              fMRESULT;
  2178.  
  2179.   fMRESULT = _wpclsSetError(somSelf, ulErrorId);
  2180.  
  2181.  
  2182. ΓòÉΓòÉΓòÉ <hidden> wpclsQuerySettingsPageSize ΓòÉΓòÉΓòÉ
  2183.  
  2184.   /*******************************************/
  2185.   /* The wpclsQuerySettingsPageSize class    */
  2186.   /* method returns the default size of a    */
  2187.   /* settings page in dialog units for       */
  2188.   /* instances of this object class.         */
  2189.   /*******************************************/
  2190.  
  2191.   #define INCL_WINWORKPLACE
  2192.   #include <os2.h>
  2193.  
  2194.   M_WPObject *  somSelf;
  2195.   PSIZEL            pSizl;
  2196.   BOOL              fSuccess;
  2197.  
  2198.   fSuccess = _wpclsQuerySettingsPageSize( somSelf, pSizl);
  2199.  
  2200.  
  2201. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryStyle ΓòÉΓòÉΓòÉ
  2202.  
  2203.   /*******************************************/
  2204.   /* The wpclsQueryStyle method is called to */
  2205.   /* allow the class object to specify the   */
  2206.   /* default object class style for its      */
  2207.   /* instances.                              */
  2208.   /*******************************************/
  2209.  
  2210.   #define INCL_WINWORKPLACE
  2211.   #include <os2.h>
  2212.  
  2213.   M_WPObject *  self;
  2214.   ULONG             ulReturn;             /* Class style for this object */
  2215.  
  2216.   ulReturn = _wpclsQueryStyle(self);
  2217.  
  2218.  
  2219. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryTitle ΓòÉΓòÉΓòÉ
  2220.  
  2221.   /*******************************************/
  2222.   /* The wpclsQueryTitle method is called to */
  2223.   /* allow the class object to specify the   */
  2224.   /* default title for its instances.        */
  2225.   /*******************************************/
  2226.  
  2227.   #define INCL_WINWORKPLACE
  2228.   #include <os2.h>
  2229.  
  2230.   M_WPObject *  self;
  2231.   PSZ               pszTitle;
  2232.  
  2233.   pszTitle = _wpclsQueryTitle(self);
  2234.  
  2235.  
  2236. ΓòÉΓòÉΓòÉ <hidden> wpclsUnInitData ΓòÉΓòÉΓòÉ
  2237.  
  2238.   /*******************************************/
  2239.   /* The wpclsUnInitData method is called to */
  2240.   /* allow the class object to free          */
  2241.   /* allocated resources.                    */
  2242.   /*******************************************/
  2243.  
  2244.   #define INCL_WINWORKPLACE
  2245.   #include <os2.h>
  2246.  
  2247.   M_WPObject *  self;
  2248.   VOID              void;
  2249.  
  2250.   void = _wpclsUnInitData(self);
  2251.  
  2252.  
  2253. ΓòÉΓòÉΓòÉ <hidden> wpAddFileMenuPage ΓòÉΓòÉΓòÉ
  2254.  
  2255.   /*******************************************/
  2256.   /* The wpAddFileMenuPage instance method   */
  2257.   /* is called to allow the object to add    */
  2258.   /* the Menu  page to its settings          */
  2259.   /* notebook.                               */
  2260.   /*******************************************/
  2261.  
  2262.   #define INCL_WINWORKPLACE
  2263.   #include <os2.h>
  2264.  
  2265.   WPFileSystem *  self;
  2266.   HWND                hwndNotebook;
  2267.   ULONG               ulRetCode;                  /* Page identifier */
  2268.  
  2269.   ulRetCode = _wpAddFileMenuPage(self, hwndNotebook);
  2270.  
  2271.  
  2272. ΓòÉΓòÉΓòÉ <hidden> wpAddFile1Page ΓòÉΓòÉΓòÉ
  2273.  
  2274.  
  2275.   /*******************************************/
  2276.   /* The wpAddFile1Page instance method is   */
  2277.   /* called to allow the object to add the   */
  2278.   /* File 1 page to its settings notebook.   */
  2279.   /*******************************************/
  2280.  
  2281.   #define INCL_WINWORKPLACE
  2282.   #include <os2.h>
  2283.  
  2284.   WPFileSystem *  self;
  2285.   HWND                hwndNotebook;
  2286.   ULONG               ulRetCode;                  /* Page identifier */
  2287.  
  2288.   ulRetCode = _wpAddFile1Page(self, hwndNotebook);
  2289.  
  2290.  
  2291. ΓòÉΓòÉΓòÉ <hidden> wpAddFile2Page ΓòÉΓòÉΓòÉ
  2292.  
  2293.   /*******************************************/
  2294.   /* The wpAddFile2Page instance method is   */
  2295.   /* called to allow the object to add the   */
  2296.   /* File 2 page to its settings notebook.   */
  2297.   /*******************************************/
  2298.  
  2299.   #define INCL_WINWORKPLACE
  2300.   #include <os2.h>
  2301.  
  2302.   WPFileSystem *  self;
  2303.   HWND                hwndNotebook;
  2304.   ULONG               ulRetCode;                  /* Page identifier */
  2305.  
  2306.   ulRetCode = _wpAddFile2Page(self, hwndNotebook);
  2307.  
  2308.  
  2309. ΓòÉΓòÉΓòÉ <hidden> wpAddFile3Page ΓòÉΓòÉΓòÉ
  2310.  
  2311.   /*******************************************/
  2312.   /* The wpAddFile3Page instance method is   */
  2313.   /* called to allow the object to add the   */
  2314.   /* File 3 page to its settings notebook.   */
  2315.   /*******************************************/
  2316.  
  2317.   #define INCL_WINWORKPLACE
  2318.   #include <os2.h>
  2319.  
  2320.   WPFileSystem *  self;
  2321.   HWND                hwndNotebook;
  2322.   ULONG               ulRetCode;                  /* Page identifier */
  2323.  
  2324.   ulRetCode = _wpAddFile3Page(self, hwndNotebook);
  2325.  
  2326.  
  2327. ΓòÉΓòÉΓòÉ <hidden> wpQueryHandle ΓòÉΓòÉΓòÉ
  2328.  
  2329.   /*******************************************/
  2330.   /* The wpQueryHandle instance method       */
  2331.   /* returns a persistent object handle for  */
  2332.   /* the given object instance.              */
  2333.   /*******************************************/
  2334.  
  2335.   #define INCL_WINWORKPLACE
  2336.   #include <os2.h>
  2337.  
  2338.   WPObject *  somSelf;
  2339.   HOBJECT         hObject;
  2340.  
  2341.   hObject = _wpQueryHandle(somSelf);
  2342.  
  2343.  
  2344. ΓòÉΓòÉΓòÉ <hidden> wpQueryRealName ΓòÉΓòÉΓòÉ
  2345.  
  2346.   /*******************************************/
  2347.   /* The wpQueryRealName instance method is  */
  2348.   /* called to allow the object to query its */
  2349.   /* physical file name.                     */
  2350.   /*******************************************/
  2351.  
  2352.   #define INCL_WINWORKPLACE
  2353.   #include <os2.h>
  2354.  
  2355.   WPFileSystem *  self;
  2356.   PSZ                 pszFilename;
  2357.   PULONG              pcb;
  2358.   BOOL                fQualified;                /* Success indicator */
  2359.   BOOL                fSuccess;                  /* Success indicator */
  2360.  
  2361.   fSuccess = _wpQueryRealName(self, pszFilename, pcb, fQualified);
  2362.  
  2363.  
  2364. ΓòÉΓòÉΓòÉ <hidden> wpQueryType ΓòÉΓòÉΓòÉ
  2365.  
  2366.   /*******************************************/
  2367.   /* The wpQueryType instance method is      */
  2368.   /* called to allow the object to query the */
  2369.   /* type of its file.                       */
  2370.   /*******************************************/
  2371.  
  2372.   #define INCL_WINWORKPLACE
  2373.   #include <os2.h>
  2374.  
  2375.   WPFileSystem *  self;
  2376.   PSZ                 psztype;
  2377.  
  2378.   psztype = _wpQueryType(self);
  2379.  
  2380.  
  2381. ΓòÉΓòÉΓòÉ <hidden> wpSetRealName ΓòÉΓòÉΓòÉ
  2382.  
  2383.   /*******************************************/
  2384.   /* The wpSetRealName instance method will  */
  2385.   /* set the physical name of a file system  */
  2386.   /* object.                                 */
  2387.   /*******************************************/
  2388.  
  2389.   #define INCL_WINWORKPLACE
  2390.   #include <os2.h>
  2391.  
  2392.   WPObject *  self;
  2393.   PSZ             pszFilename;
  2394.   BOOL            fsuccess;              /* Success indicator */
  2395.  
  2396.   fsuccess = _wpSetRealName(self, pszFilename);
  2397.  
  2398.  
  2399. ΓòÉΓòÉΓòÉ <hidden> wpSetType ΓòÉΓòÉΓòÉ
  2400.  
  2401.   /*******************************************/
  2402.   /* The wpSetType instance method is called */
  2403.   /* to allow the object to change the type  */
  2404.   /* of its file.                            */
  2405.   /*******************************************/
  2406.  
  2407.   #define INCL_WINWORKPLACE
  2408.   #include <os2.h>
  2409.  
  2410.   WPFileSystem *  self;
  2411.   PSZ                 pszTypes;
  2412.   BOOL                fReturn;                /* Success indicator */
  2413.  
  2414.   fReturn = _wpSetType(self, pszTypes);
  2415.  
  2416.  
  2417. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryInstanceFilter ΓòÉΓòÉΓòÉ
  2418.  
  2419.   /*******************************************/
  2420.   /* The wpclsQueryInstanceFilter method is  */
  2421.   /* called to allow the class object to     */
  2422.   /* specify the file title filters for      */
  2423.   /* instances of its class.                 */
  2424.   /*******************************************/
  2425.  
  2426.   #define INCL_WINWORKPLACE
  2427.   #include <os2.h>
  2428.  
  2429.   M_WPFileSystem *  self;
  2430.   PSZ                   pszsuccess;                 /* Success indicator */
  2431.  
  2432.   pszsuccess = _wpclsQueryInstanceFilter(self);
  2433.  
  2434.  
  2435. ΓòÉΓòÉΓòÉ <hidden> wpclsQueryInstanceType ΓòÉΓòÉΓòÉ
  2436.  
  2437.   /*******************************************/
  2438.   /* The wpclsQueryInstanceType method is    */
  2439.   /* called to allow the class object to     */
  2440.   /* specify the file types  for instances   */
  2441.   /* of its class.                           */
  2442.   /*******************************************/
  2443.  
  2444.   #define INCL_WINWORKPLACE
  2445.   #include <os2.h>
  2446.  
  2447.   M_WPFileSystem *  self;
  2448.   PSZ                   pszsuccess;                 /* Success indicator */
  2449.  
  2450.   pszsuccess = _wpclsQueryInstanceType(self);
  2451.  
  2452.