home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / xwplascr.zip / XWPL0208.ZIP / idl / xwpstring.idl < prev    next >
Text File  |  2002-07-15  |  5KB  |  192 lines

  1.  
  2. /*
  3.  * xwpstring.idl:
  4.  *      SOM interface description file for the following
  5.  *      XWorkplace classes (in this order):
  6.  *          XWPString
  7.  *      and the respective metaclasses.
  8.  *
  9.  *      See src\classes\xwpstring.c for details.
  10.  *
  11.  *      Copyright (C) 2000 Ulrich Möller.
  12.  *      This file is part of the XWorkplace source package.
  13.  *      XWorkplace is free software; you can redistribute it and/or modify
  14.  *      it under the terms of the GNU General Public License as published
  15.  *      by the Free Software Foundation, in version 2 as it comes in the
  16.  *      "COPYING" file of the XWorkplace main distribution.
  17.  *      This program is distributed in the hope that it will be useful,
  18.  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
  19.  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  20.  *      GNU General Public License for more details.
  21.  */
  22.  
  23. #include <wpabs.idl>         // this is SOM for WPAbstract
  24.  
  25. /*
  26.    CLASS: XWPString
  27.  
  28.    CLASS HIERARCHY:
  29.  
  30.        SOMObject
  31.          └── WPObject
  32.                └── WPAbstract
  33.                      └── XWPString
  34. */
  35.  
  36. interface M_XWPString;            // forward reference to metaclass
  37.  
  38. interface XWPString : WPAbstract
  39. {
  40.     /*
  41.      * New instance methods for XWPString:
  42.      *
  43.      */
  44.  
  45.     PSZ xwpQueryString();
  46.  
  47.     BOOL xwpSetString(in PSZ pszSetupString);
  48.  
  49.     WPObject xwpQueryStaticObject();
  50.     BOOL xwpSetStaticObject(in WPObject pObject);
  51.  
  52.     ULONG xwpAddXWPStringPages(in HWND hwndNotebook);
  53.  
  54.     BOOL xwpInvokeString(in ULONG cObjects,
  55.                          in WPObject apObjects[1]);
  56.  
  57.     BOOL xwpQuerySetup2(in PVOID pstrSetup);
  58.  
  59. #ifdef __SOMIDL__
  60.   implementation {
  61.  
  62.     releaseorder: xwpQueryString,
  63.                   xwpSetString,
  64.                   xwpQueryStaticObject,
  65.                   xwpSetStaticObject,
  66.                   xwpAddXWPStringPages,
  67.                   xwpInvokeString,
  68.                   xwpQuerySetup2;
  69.  
  70.     /*
  71.      * Class Modifiers:
  72.      *
  73.      */
  74.  
  75.     externalprefix = xwstr_;
  76.     externalstem = xwstr;
  77.     majorversion = 1;
  78.     minorversion = 1;
  79.     filestem = xwpstring;           //# specifies the filestem for sc-generated files
  80.     metaclass = M_XWPString;
  81.     dllname = "xfldr.dll";
  82.     callstyle = oidl;           //# forget CORBA stuff (*ev and such)
  83.  
  84.     /*
  85.      * Internal instance variables for XWPString:
  86.      *
  87.      */
  88.  
  89.     PSZ         pWszSetupString;    // setup string to be invoked on member
  90.                                     // object or other object dropped on instance;
  91.                                     // WARNING: allocated using wpAllocMem
  92.  
  93.     HOBJECT     hobjStatic;         // static object to invoke pszSetupString
  94.                                     // upon on double-click or hotkey press
  95.  
  96.     BOOL        fConfirm;           // display confirmation box before
  97.                                     // invoking setup string?
  98.  
  99.     BOOL        fNoStringPage;      // if TRUE, do not show "string" page
  100.                                     // V0.9.20 (2002-07-12) [umoeller]
  101.  
  102.     PVOID       pvtiSetupThread;    // PTHREADINFO of setup thread
  103.  
  104.     ULONG       tidRunning;         // or NULLHANDLE
  105.  
  106.     /*
  107.      * WPAbstract methods overridden by XWPString:
  108.      *
  109.      */
  110.  
  111.     wpInitData: override;
  112.     wpUnInitData: override;
  113.     wpObjectReady: override;
  114.  
  115.     wpSetup: override;
  116.  
  117.     wpSaveState: override;
  118.     wpRestoreState: override;
  119.  
  120.     wpModifyPopupMenu: override;
  121.  
  122.     wpMenuItemSelected: override;
  123.     wpMenuItemHelpSelected: override;
  124.  
  125.     wpOpen: override;
  126.  
  127. //#    wpQueryDefaultHelp: override;    replaced with class method V0.9.20 (2002-07-12) [umoeller]
  128.     wpQueryDefaultView: override;
  129.  
  130.     wpAddObjectWindowPage: override;
  131.  
  132.     wpAddSettingsPages: override;
  133.  
  134.     wpDragOver: override;
  135.     wpDrop: override;
  136.  
  137.   }; // implementation
  138. #endif /* __SOMIDL__ */
  139. };
  140.  
  141. //#
  142. //#
  143. //# Now define Metaclass.
  144. //# ---------------------
  145. //#
  146.  
  147. interface M_XWPString : M_WPAbstract
  148. {
  149.  
  150. #ifdef __SOMIDL__
  151.   implementation {
  152.  
  153.     /*
  154.      * Class Modifiers:
  155.      *
  156.      */
  157.  
  158.     externalprefix = xwstrM_;
  159.     externalstem = xwstrM;
  160.     functionprefix = xwstrM_;
  161.     majorversion = 1;
  162.     minorversion = 1;
  163.     filestem = xwpstring;           //# specifies the filestem for sc-generated files
  164.     dllname = "xfldr.dll";
  165.     callstyle = oidl;
  166.  
  167.     /*
  168.      * Internal class variables:
  169.      *
  170.      */
  171.  
  172.     /*
  173.      * M_WPAbstract methods overridden by M_XWPString:
  174.      *
  175.      */
  176.  
  177.     wpclsInitData: override;
  178.     wpclsQueryStyle: override;
  179.     wpclsQueryTitle: override;
  180.     wpclsQueryDefaultHelp: override;
  181.  
  182.     wpclsQueryIconData: override;
  183.  
  184.     wpclsQuerySettingsPageSize: override;
  185.  
  186.     wpclsCreateDefaultTemplates: override;
  187.   };
  188. #endif /* __SOMIDL__ */
  189. };
  190.  
  191.  
  192.