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

  1.  
  2. /*
  3.  * xfstart.idl:
  4.  *      SOM interface description file for the following
  5.  *      XWorkplace classes (in this order):
  6.  *          XFldStartup
  7.  *          XFldShutdown
  8.  *      and the respective metaclasses.
  9.  *
  10.  *      See src\classes\xfstart.c for details.
  11.  *
  12.  *      Copyright (C) 1997-2002 Ulrich Möller.
  13.  *      This file is part of the XWorkplace source package.
  14.  *      XWorkplace is free software; you can redistribute it and/or modify
  15.  *      it under the terms of the GNU General Public License as published
  16.  *      by the Free Software Foundation, in version 2 as it comes in the
  17.  *      "COPYING" file of the XWorkplace main distribution.
  18.  *      This program is distributed in the hope that it will be useful,
  19.  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
  20.  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  21.  *      GNU General Public License for more details.
  22.  */
  23.  
  24. #include <xfldr.idl>         // this is SOM for XFolder
  25.  
  26. /*
  27.    CLASS: XFldStartup
  28.  
  29.    CLASS HIERARCHY:
  30.  
  31.        SOMObject
  32.          └── WPObject = XFldObject
  33.                └── WPFileSystem
  34.                      └── WPFolder = XFolder
  35.                                       └── XFldStartup
  36.  
  37.    Note that the class is derived from XFolder directly, not
  38.    WPFolder, because we need some of the new XFolder methods.
  39. */
  40.  
  41. interface M_XFldStartup;            // forward reference to metaclass
  42.  
  43. interface XFldStartup : XFolder
  44. {
  45.  
  46.     /*
  47.      * New instance methods for XFldStartup:
  48.      *
  49.      */
  50.  
  51.     ULONG xwpAddXFldStartupPage(in HWND hwndDlg);
  52.     ULONG xwpSetXStartup(in BOOL fInsert);
  53.     ULONG xwpQueryXStartupType();
  54.     ULONG xwpQueryXStartupObjectDelay();
  55.  
  56. #ifdef __SOMIDL__
  57.   implementation {
  58.  
  59.     releaseorder:
  60.         xwpAddXFldStartupPage,
  61.         xwpSetXStartup,
  62.         xwpQueryXStartupType,
  63.         xwpQueryXStartupObjectDelay;
  64.  
  65.     /*
  66.      * Class Modifiers:
  67.      *
  68.      */
  69.  
  70.     externalprefix = xfstup_;
  71.     externalstem = xfstup;
  72.     majorversion = 1;
  73.     minorversion = 1;
  74.     filestem = xfstart;           //# specifies the filestem for sc-generated files
  75.     metaclass = M_XFldStartup;
  76.     dllname = "xfldr.dll";
  77.     callstyle = oidl;           //# forget CORBA stuff (*ev and such)
  78.  
  79.     passthru C_h =
  80.     "#define XSTARTUP_NONE               0"
  81.     "#define XSTARTUP_REBOOTSONLY        1"
  82.     "#define XSTARTUP_EVERYWPSRESTART    2"
  83.     ""
  84.     "#define XSTARTUP_DEFAULTOBJECTDELAY 1000";
  85.  
  86.     /*
  87.      * Internal instance variables for XFldStartup:
  88.      *
  89.      */
  90.  
  91.     ULONG           ulType;
  92.     ULONG           ulObjectDelay;
  93.  
  94.     /*
  95.      * XFolder methods overridden by XFldStartup:
  96.      *
  97.      */
  98.  
  99.     wpInitData: override;
  100.     wpObjectReady: override;
  101.  
  102.     wpFree: override;
  103.  
  104.     wpSaveState: override;
  105.     wpRestoreState: override;
  106.  
  107.     wpFilterPopupMenu: override;
  108.     wpModifyPopupMenu: override;
  109.     wpMenuItemSelected: override;
  110.     wpMenuItemHelpSelected: override;
  111.  
  112. //#    wpQueryDefaultHelp: override;    replaced with class method V0.9.20 (2002-07-12) [umoeller]
  113.  
  114.     wpAddSettingsPages: override;
  115.  
  116. #ifdef __PRIVATE__
  117.  
  118. #endif
  119.  
  120.   }; // implementation
  121. #endif /* __SOMIDL__ */
  122. };
  123.  
  124. //#
  125. //#
  126. //# Now define Metaclass.
  127. //# ---------------------
  128. //#
  129.  
  130. interface M_XFldStartup : M_XFolder
  131. {
  132.  
  133.     /*
  134.      * New class methods for M_XFldStartup:
  135.      *
  136.      */
  137.  
  138.     XFldStartup xwpclsQueryXStartupFolder(in XFldStartup pFolder);
  139.  
  140. #ifdef __SOMIDL__
  141.   implementation {
  142.  
  143.     releaseorder:
  144.             xwpclsQueryXStartupFolder;
  145.  
  146.     /*
  147.      * Class Modifiers:
  148.      *
  149.      */
  150.  
  151.     externalprefix = xfstupM_;
  152.     externalstem = xfstupM;
  153.     functionprefix = xfstupM_;
  154.     majorversion = 1;
  155.     minorversion = 1;
  156.     filestem = xfstart;           //# specifies the filestem for sc-generated files
  157.     dllname = "xfldr.dll";
  158.     callstyle = oidl;
  159.  
  160.     /*
  161.      * Internal instance variables for M_XFldStartup:
  162.      *
  163.      */
  164.  
  165.     /*
  166.      * M_XFolder methods overridden by M_XFldStartup:
  167.      *
  168.      */
  169.  
  170.     wpclsInitData: override;
  171.  
  172.     wpclsQueryTitle: override;
  173.     wpclsQueryStyle: override;
  174.     wpclsQueryDefaultHelp: override;
  175.  
  176.     wpclsQueryIconData: override;
  177.     wpclsQueryIconDataN: override;
  178.   };
  179. #endif /* __SOMIDL__ */
  180. };
  181.  
  182.  
  183. /*
  184.    CLASS: XFldShutdown
  185.  
  186.    CLASS HIERARCHY:
  187.  
  188.        SOMObject
  189.          └── WPObject = XFldObject
  190.                └── WPFileSystem
  191.                      └── WPFolder = XFolder
  192.                                       └── XFldStartup
  193.  
  194.    Note that the class is derived from XFolder directly, not
  195.    WPFolder, because we need some of the new XFolder methods.
  196. */
  197.  
  198. interface M_XFldShutdown;           // forward reference to metaclass
  199.  
  200. interface XFldShutdown : XFolder
  201. {
  202.  
  203.     /*
  204.      * New instance methods for XFldShutdown:
  205.      *
  206.      */
  207.  
  208. #ifdef __SOMIDL__
  209.   implementation {
  210.  
  211.     /*
  212.      * Class Modifiers:
  213.      *
  214.      */
  215.  
  216.     externalprefix = xfshut_;
  217.     externalstem = xfshut;
  218.     majorversion = 1;
  219.     minorversion = 1;
  220.     filestem = xfstart;           //# specifies the filestem for sc-generated files
  221.     metaclass = M_XFldShutdown;
  222.     dllname = "xfldr.dll";
  223.     callstyle = oidl;           //# forget CORBA stuff (*ev and such)
  224.  
  225.     /*
  226.      * Internal instance variables for XFldShutdown:
  227.      *
  228.      */
  229.  
  230.     /*
  231.      * The following is forced into the .H file:
  232.      *
  233.      */
  234.  
  235.     /*
  236.      * XFolder methods overridden by XFldShutdown:
  237.      *
  238.      */
  239.  
  240. //#    wpQueryDefaultHelp: override;    replaced with class method V0.9.20 (2002-07-12) [umoeller]
  241.  
  242. #ifdef __PRIVATE__
  243.  
  244. #endif
  245.  
  246.   }; // implementation
  247. #endif /* __SOMIDL__ */
  248. };
  249.  
  250. //#
  251. //#
  252. //# Now define Metaclass.
  253. //# ---------------------
  254. //#
  255.  
  256. interface M_XFldShutdown : M_XFolder
  257. {
  258.  
  259.     /*
  260.      * New class methods for M_XFldShutdown:
  261.      *
  262.      */
  263.  
  264. #ifdef __SOMIDL__
  265.   implementation {
  266.  
  267.     /*
  268.      * Class Modifiers:
  269.      *
  270.      */
  271.  
  272.     externalprefix = xfshutM_;
  273.     externalstem = xfshutM;
  274.     functionprefix = xfshutM_;
  275.     majorversion = 1;
  276.     minorversion = 1;
  277.     filestem = xfstart;           //# specifies the filestem for sc-generated files
  278.     dllname = "xfldr.dll";
  279.     callstyle = oidl;
  280.  
  281.     /*
  282.      * Internal instance variables for M_XFldShutdown:
  283.      *
  284.      */
  285.  
  286.     /*
  287.      * M_XFolder methods overridden by M_XFldShutdown:
  288.      *
  289.      */
  290.  
  291.     wpclsInitData: override;
  292.  
  293.     wpclsQueryTitle: override;
  294.     wpclsQueryStyle: override;
  295.     wpclsQueryDefaultHelp: override;
  296.  
  297.     wpclsQueryIconData: override;
  298.     wpclsQueryIconDataN: override;
  299.   };
  300. #endif /* __SOMIDL__ */
  301. };
  302.  
  303.