home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / header45.zip / wpshdir.xh < prev    next >
Text File  |  1999-03-15  |  8KB  |  352 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: E:\cwpsh\rel\os2c\include\base\os2\wpshdir.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.14
  7.  *     SOM Emitter emitxh: 2.43
  8.  */
  9.  
  10. /*
  11.  *   Module Header
  12.  * 
  13.  *   Module Name: WPSHDIR
  14.  * 
  15.  *   OS/2 Presentation Manager Workplace class definitions
  16.  * 
  17.  *   Copyright (c) International Business Machines Corporation 1991, 1992
  18.  * 
  19.  */
  20.  
  21.  
  22. #ifndef SOM_WPSharedDir_xh
  23. #define SOM_WPSharedDir_xh
  24.  
  25. class WPSharedDir;
  26.  
  27. #define WPSharedDir_MajorVersion 1
  28. #define WPSharedDir_MinorVersion 2
  29.  
  30. /* C++ SOM defs */
  31. #include <somcls.xh>
  32. #include <somcm.xh>
  33.  
  34. /* C++ parent defs */
  35. #ifndef SOM_WPFolder_xh
  36. #include <wpfolder.xh>
  37. #endif
  38.  
  39. #ifndef WPSharedDir_API
  40. #define WPSharedDir_API
  41. /*
  42.  * -- The Class API
  43.  */
  44.  
  45. /*
  46.  * Start of bindings for IDL types
  47.  */
  48.  
  49. class SOMClass;
  50. class SOMObject;
  51. class WPFolder;
  52. class M_WPObject;
  53. class WPObject;
  54. class WPImageFile;
  55. class M_WPFileSystem;
  56. class M_WPFolder;
  57. class M_WPSharedDir;
  58.  
  59. /*
  60.  * End of bindings for IDL types.
  61.  */
  62.  
  63. /* A procedure to create the WPSharedDir Class */
  64. class M_WPSharedDir;
  65. SOMEXTERN M_WPSharedDir * SOMLINK WPSharedDirNewClass(
  66.         integer4 majorVersion,
  67.         integer4 minorVersion);
  68.  
  69. /* The API to the WPSharedDir class object, and the methods it introduces. */
  70. SOMEXTERN struct WPSharedDirClassDataStructure {
  71.     M_WPSharedDir *classObject;
  72.     somMToken wpAddResourcePage;
  73. } SOMDLINK WPSharedDirClassData;
  74. #define _WPSharedDir WPSharedDirClassData.classObject
  75.  
  76. /* The API to parentMtabs for WPSharedDir, and the instance data it introduces. */
  77. SOMEXTERN struct WPSharedDirCClassDataStructure {
  78.     somMethodTabs parentMtab;
  79.     somDToken              instanceDataToken;
  80. } SOMDLINK WPSharedDirCClassData;
  81.  
  82. /*
  83.  * -- Typedefs for WPSharedDir Method Procedures
  84.  */
  85. SOMEXTERN {
  86. typedef ULONG   SOMLINK somTP_WPSharedDir_wpAddResourcePage(WPSharedDir *somSelf, 
  87.         HWND hwndNotebook);
  88. typedef somTP_WPSharedDir_wpAddResourcePage *somTD_WPSharedDir_wpAddResourcePage;
  89.  
  90. /*
  91.  * -- Typedefs for Reintroduced Wrapper Methods
  92.  */
  93. typedef M_WPSharedDir*   SOMLINK somTP_WPSharedDir_somGetClass(WPSharedDir *somSelf);
  94. typedef somTP_WPSharedDir_somGetClass *somTD_WPSharedDir_somGetClass;
  95. }
  96.  
  97. #endif /* WPSharedDir_API */
  98.  
  99.  
  100. /*
  101.  * -- This emitter treats Method Tokens as Thunks by default.
  102.  * -- Use the sc modifier "nothunks" to change this default
  103.  */
  104. #undef somresolve_
  105. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  106.  
  107. /*
  108.  * -- The C++ Wrapper Class for WPSharedDir
  109.  */
  110. class WPSharedDir : public WPFolder
  111. {
  112. public:
  113.  
  114. // WPSharedDir::new creates the class object if necessary, and then uses somNewNoInit
  115. // to allocate memory and create the object. Initialization is in ctors.
  116. void *operator new(size_t)
  117. {
  118.    if (!_WPSharedDir) WPSharedDirNewClass(WPSharedDir_MajorVersion,WPSharedDir_MinorVersion);
  119.    return (void*)
  120.       SOM_Resolve(_WPSharedDir,SOMClass,somNewNoInit)
  121.          ((SOMClass *)((void*)_WPSharedDir));
  122. }
  123.  
  124. // WPSharedDir::delete uses somDestruct.
  125. void operator delete(void * obj)
  126. {
  127.    if (obj && *(void**)obj) {
  128.       SOM_Resolve(obj,SOMObject,somDestruct)
  129.          ((SOMObject*)obj, 1, 0);
  130.    }
  131. }
  132.  
  133. WPSharedDir& operator=(WPSharedDir& fromObj)
  134. {
  135.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  136.    return *this;
  137. }
  138.  
  139. WPSharedDir()
  140. {
  141.    if (*(void**)this != 
  142.        ((somParentMtabStructPtr)
  143.         (WPSharedDirCClassData.parentMtab))->mtab)
  144.       return;
  145.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  146. }
  147.  
  148. WPSharedDir(WPSharedDir* fromObj)
  149. {
  150.    if (*(void**)this != 
  151.        ((somParentMtabStructPtr)
  152.         (WPSharedDirCClassData.parentMtab))->mtab)
  153.       return;
  154.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  155. }
  156.  
  157. WPSharedDir(const WPSharedDir* fromObj)
  158. {
  159.    if (*(void**)this != 
  160.        ((somParentMtabStructPtr)
  161.         (WPSharedDirCClassData.parentMtab))->mtab)
  162.       return;
  163.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  164. }
  165.  
  166.  
  167. /* method: wpAddResourcePage */
  168. ULONG   wpAddResourcePage(HWND hwndNotebook)
  169. {
  170.    return SOM_ResolveD(this,WPSharedDir,WPSharedDir,wpAddResourcePage)
  171.     (this,hwndNotebook);
  172. }
  173.  
  174.  
  175. /*
  176.  * Reintroduce inherited methods
  177.  */
  178.  
  179. /* method: somGetClass */
  180. M_WPSharedDir*  somGetClass()
  181. {
  182. /*
  183.  *  Return the receiver's class.
  184.  */
  185.    return SOM_ResolveD(this,WPSharedDir,SOMObject,somGetClass)
  186.     (this);
  187. }
  188.  
  189.  
  190.  
  191. };   /* WPSharedDir */
  192.  
  193.  
  194.  
  195. #endif       /* SOM_WPSharedDir_xh */
  196.  
  197. #ifndef SOM_M_WPSharedDir_xh
  198. #define SOM_M_WPSharedDir_xh
  199.  
  200. class M_WPSharedDir;
  201.  
  202. #define M_WPSharedDir_MajorVersion 1
  203. #define M_WPSharedDir_MinorVersion 2
  204.  
  205. /* C++ SOM defs */
  206. #include <somcls.xh>
  207. #include <somcm.xh>
  208.  
  209. /* C++ parent defs */
  210. #ifndef SOM_M_WPFolder_xh
  211. #include <wpfolder.xh>
  212. #endif
  213.  
  214. #ifndef M_WPSharedDir_API
  215. #define M_WPSharedDir_API
  216. /*
  217.  * -- The Class API
  218.  */
  219.  
  220. /*
  221.  * Start of bindings for IDL types
  222.  */
  223.  
  224.  
  225. /*
  226.  * End of bindings for IDL types.
  227.  */
  228.  
  229. /*
  230.  * -- M_WPSharedDir is a metaclass for WPSharedDir. Make sure WPSharedDir is known.
  231.  */
  232. class WPSharedDir;
  233.  
  234.  
  235. /* A procedure to create the M_WPSharedDir Class */
  236. SOMEXTERN SOMClass * SOMLINK M_WPSharedDirNewClass(
  237.         integer4 majorVersion,
  238.         integer4 minorVersion);
  239.  
  240. /* The API to the M_WPSharedDir class object, and the methods it introduces. */
  241. SOMEXTERN struct M_WPSharedDirClassDataStructure {
  242.     SOMClass *classObject;
  243. } SOMDLINK M_WPSharedDirClassData;
  244. #define _M_WPSharedDir M_WPSharedDirClassData.classObject
  245.  
  246. /* The API to parentMtabs for M_WPSharedDir, and the instance data it introduces. */
  247. SOMEXTERN struct M_WPSharedDirCClassDataStructure {
  248.     somMethodTabs parentMtab;
  249.     somDToken              instanceDataToken;
  250. } SOMDLINK M_WPSharedDirCClassData;
  251.  
  252. /*
  253.  * -- Typedefs for M_WPSharedDir Method Procedures
  254.  */
  255. SOMEXTERN {
  256.  
  257. /*
  258.  * -- Typedefs for Reintroduced Wrapper Methods
  259.  */
  260. typedef WPSharedDir*   SOMLINK somTP_M_WPSharedDir_somNew(M_WPSharedDir *somSelf);
  261. typedef somTP_M_WPSharedDir_somNew *somTD_M_WPSharedDir_somNew;
  262. }
  263.  
  264. #endif /* M_WPSharedDir_API */
  265.  
  266.  
  267. /*
  268.  * -- This emitter treats Method Tokens as Thunks by default.
  269.  * -- Use the sc modifier "nothunks" to change this default
  270.  */
  271. #undef somresolve_
  272. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  273.  
  274. /*
  275.  * -- The C++ Wrapper Class for M_WPSharedDir
  276.  */
  277. class M_WPSharedDir : public M_WPFolder
  278. {
  279. public:
  280.  
  281. // M_WPSharedDir::new creates the class object if necessary, and then uses somNewNoInit
  282. // to allocate memory and create the object. Initialization is in ctors.
  283. void *operator new(size_t)
  284. {
  285.    if (!_M_WPSharedDir) M_WPSharedDirNewClass(M_WPSharedDir_MajorVersion,M_WPSharedDir_MinorVersion);
  286.    return (void*)
  287.       SOM_Resolve(_M_WPSharedDir,SOMClass,somNewNoInit)
  288.          ((SOMClass *)((void*)_M_WPSharedDir));
  289. }
  290.  
  291. // M_WPSharedDir::delete uses somDestruct.
  292. void operator delete(void * obj)
  293. {
  294.    if (obj && *(void**)obj) {
  295.       SOM_Resolve(obj,SOMObject,somDestruct)
  296.          ((SOMObject*)obj, 1, 0);
  297.    }
  298. }
  299.  
  300. M_WPSharedDir& operator=(M_WPSharedDir& fromObj)
  301. {
  302.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  303.    return *this;
  304. }
  305.  
  306. M_WPSharedDir()
  307. {
  308.    if (*(void**)this != 
  309.        ((somParentMtabStructPtr)
  310.         (M_WPSharedDirCClassData.parentMtab))->mtab)
  311.       return;
  312.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  313. }
  314.  
  315. M_WPSharedDir(M_WPSharedDir* fromObj)
  316. {
  317.    if (*(void**)this != 
  318.        ((somParentMtabStructPtr)
  319.         (M_WPSharedDirCClassData.parentMtab))->mtab)
  320.       return;
  321.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  322. }
  323.  
  324. M_WPSharedDir(const M_WPSharedDir* fromObj)
  325. {
  326.    if (*(void**)this != 
  327.        ((somParentMtabStructPtr)
  328.         (M_WPSharedDirCClassData.parentMtab))->mtab)
  329.       return;
  330.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  331. }
  332.  
  333.  
  334. /*
  335.  * Reintroduce inherited methods
  336.  */
  337.  
  338. /* method: somNew */
  339. WPSharedDir*  somNew()
  340. {
  341.    return SOM_ResolveD(this,M_WPSharedDir,SOMClass,somNew)
  342.     (this);
  343. }
  344.  
  345.  
  346.  
  347. };   /* M_WPSharedDir */
  348.  
  349.  
  350.  
  351. #endif       /* SOM_M_WPSharedDir_xh */
  352.