home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / detk45he.zip / wpqdr.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\wpqdr.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: WPQDR
  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_WPQdr_xh
  23. #define SOM_WPQdr_xh
  24.  
  25. class WPQdr;
  26.  
  27. #define WPQdr_MajorVersion 1
  28. #define WPQdr_MinorVersion 1
  29.  
  30. /*
  31.  * Passthru lines: File: "C.h", "before"
  32.  */
  33.  
  34. /* common context menu ids    */
  35. #define WPPOIDM_QDR_INSTALL         8001
  36.  
  37.  
  38. /* C++ SOM defs */
  39. #include <somcls.xh>
  40. #include <somcm.xh>
  41.  
  42. /* C++ parent defs */
  43. #ifndef SOM_WPTransient_xh
  44. #include <wptrans.xh>
  45. #endif
  46.  
  47. #ifndef WPQdr_API
  48. #define WPQdr_API
  49. /*
  50.  * -- The Class API
  51.  */
  52.  
  53. /*
  54.  * Start of bindings for IDL types
  55.  */
  56.  
  57. class SOMClass;
  58. class SOMObject;
  59. class WPFolder;
  60. class M_WPObject;
  61. class WPObject;
  62. class WPImageFile;
  63. class M_WPTransient;
  64. class M_WPQdr;
  65.  
  66. /*
  67.  * End of bindings for IDL types.
  68.  */
  69.  
  70. /* A procedure to create the WPQdr Class */
  71. class M_WPQdr;
  72. SOMEXTERN M_WPQdr * SOMLINK WPQdrNewClass(
  73.         integer4 majorVersion,
  74.         integer4 minorVersion);
  75.  
  76. /* The API to the WPQdr class object, and the methods it introduces. */
  77. SOMEXTERN struct WPQdrClassDataStructure {
  78.     M_WPQdr *classObject;
  79.     somMToken prtGetQDriverInfo;
  80.     somMToken prtSetQDriverInfo;
  81.     somMToken prtSetQdrIcon;
  82.     somMToken prtSetQDriverDiscardhwndDlg;
  83.     somMToken prtSetQDriverInstallhwndDlg;
  84. } SOMDLINK WPQdrClassData;
  85. #define _WPQdr WPQdrClassData.classObject
  86.  
  87. /* The API to parentMtabs for WPQdr, and the instance data it introduces. */
  88. SOMEXTERN struct WPQdrCClassDataStructure {
  89.     somMethodTabs parentMtab;
  90.     somDToken              instanceDataToken;
  91. } SOMDLINK WPQdrCClassData;
  92.  
  93. /*
  94.  * -- Typedefs for WPQdr Method Procedures
  95.  */
  96. SOMEXTERN {
  97.  
  98. /*
  99.  * -- Typedefs for Reintroduced Wrapper Methods
  100.  */
  101. typedef M_WPQdr*   SOMLINK somTP_WPQdr_somGetClass(WPQdr *somSelf);
  102. typedef somTP_WPQdr_somGetClass *somTD_WPQdr_somGetClass;
  103. }
  104.  
  105. #endif /* WPQdr_API */
  106.  
  107.  
  108. /*
  109.  * -- This emitter normally treats Method Tokens as Thunks,
  110.  * -- but the sc modifier "nothunks" was used, so somResolve will be called.
  111.  */
  112. #undef somresolve_
  113. #define somresolve_(obj,mToken) (somResolve(obj,mToken))
  114.  
  115. /*
  116.  * -- The C++ Wrapper Class for WPQdr
  117.  */
  118. class WPQdr : public WPTransient
  119. {
  120. public:
  121.  
  122. // WPQdr::new creates the class object if necessary, and then uses somNewNoInit
  123. // to allocate memory and create the object. Initialization is in ctors.
  124. void *operator new(size_t)
  125. {
  126.    if (!_WPQdr) WPQdrNewClass(WPQdr_MajorVersion,WPQdr_MinorVersion);
  127.    return (void*)
  128.       SOM_Resolve(_WPQdr,SOMClass,somNewNoInit)
  129.          ((SOMClass *)((void*)_WPQdr));
  130. }
  131.  
  132. // WPQdr::delete uses somDestruct.
  133. void operator delete(void * obj)
  134. {
  135.    if (obj && *(void**)obj) {
  136.       SOM_Resolve(obj,SOMObject,somDestruct)
  137.          ((SOMObject*)obj, 1, 0);
  138.    }
  139. }
  140.  
  141. WPQdr& operator=(WPQdr& fromObj)
  142. {
  143.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  144.    return *this;
  145. }
  146.  
  147. WPQdr()
  148. {
  149.    if (*(void**)this != 
  150.        ((somParentMtabStructPtr)
  151.         (WPQdrCClassData.parentMtab))->mtab)
  152.       return;
  153.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  154. }
  155.  
  156. WPQdr(WPQdr* fromObj)
  157. {
  158.    if (*(void**)this != 
  159.        ((somParentMtabStructPtr)
  160.         (WPQdrCClassData.parentMtab))->mtab)
  161.       return;
  162.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  163. }
  164.  
  165. WPQdr(const WPQdr* fromObj)
  166. {
  167.    if (*(void**)this != 
  168.        ((somParentMtabStructPtr)
  169.         (WPQdrCClassData.parentMtab))->mtab)
  170.       return;
  171.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  172. }
  173.  
  174.  
  175. /*
  176.  * Reintroduce inherited methods
  177.  */
  178.  
  179. /* method: somGetClass */
  180. M_WPQdr*  somGetClass()
  181. {
  182. /*
  183.  *  Return the receiver's class.
  184.  */
  185.    return SOM_ResolveD(this,WPQdr,SOMObject,somGetClass)
  186.     (this);
  187. }
  188.  
  189.  
  190.  
  191. };   /* WPQdr */
  192.  
  193.  
  194.  
  195. #endif       /* SOM_WPQdr_xh */
  196.  
  197. #ifndef SOM_M_WPQdr_xh
  198. #define SOM_M_WPQdr_xh
  199.  
  200. class M_WPQdr;
  201.  
  202. #define M_WPQdr_MajorVersion 1
  203. #define M_WPQdr_MinorVersion 1
  204.  
  205. /* C++ SOM defs */
  206. #include <somcls.xh>
  207. #include <somcm.xh>
  208.  
  209. /* C++ parent defs */
  210. #ifndef SOM_M_WPTransient_xh
  211. #include <wptrans.xh>
  212. #endif
  213.  
  214. #ifndef M_WPQdr_API
  215. #define M_WPQdr_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_WPQdr is a metaclass for WPQdr. Make sure WPQdr is known.
  231.  */
  232. class WPQdr;
  233.  
  234.  
  235. /* A procedure to create the M_WPQdr Class */
  236. SOMEXTERN SOMClass * SOMLINK M_WPQdrNewClass(
  237.         integer4 majorVersion,
  238.         integer4 minorVersion);
  239.  
  240. /* The API to the M_WPQdr class object, and the methods it introduces. */
  241. SOMEXTERN struct M_WPQdrClassDataStructure {
  242.     SOMClass *classObject;
  243. } SOMDLINK M_WPQdrClassData;
  244. #define _M_WPQdr M_WPQdrClassData.classObject
  245.  
  246. /* The API to parentMtabs for M_WPQdr, and the instance data it introduces. */
  247. SOMEXTERN struct M_WPQdrCClassDataStructure {
  248.     somMethodTabs parentMtab;
  249.     somDToken              instanceDataToken;
  250. } SOMDLINK M_WPQdrCClassData;
  251.  
  252. /*
  253.  * -- Typedefs for M_WPQdr Method Procedures
  254.  */
  255. SOMEXTERN {
  256.  
  257. /*
  258.  * -- Typedefs for Reintroduced Wrapper Methods
  259.  */
  260. typedef WPQdr*   SOMLINK somTP_M_WPQdr_somNew(M_WPQdr *somSelf);
  261. typedef somTP_M_WPQdr_somNew *somTD_M_WPQdr_somNew;
  262. }
  263.  
  264. #endif /* M_WPQdr_API */
  265.  
  266.  
  267. /*
  268.  * -- This emitter normally treats Method Tokens as Thunks,
  269.  * -- but the sc modifier "nothunks" was used, so somResolve will be called.
  270.  */
  271. #undef somresolve_
  272. #define somresolve_(obj,mToken) (somResolve(obj,mToken))
  273.  
  274. /*
  275.  * -- The C++ Wrapper Class for M_WPQdr
  276.  */
  277. class M_WPQdr : public M_WPTransient
  278. {
  279. public:
  280.  
  281. // M_WPQdr::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_WPQdr) M_WPQdrNewClass(M_WPQdr_MajorVersion,M_WPQdr_MinorVersion);
  286.    return (void*)
  287.       SOM_Resolve(_M_WPQdr,SOMClass,somNewNoInit)
  288.          ((SOMClass *)((void*)_M_WPQdr));
  289. }
  290.  
  291. // M_WPQdr::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_WPQdr& operator=(M_WPQdr& fromObj)
  301. {
  302.    this->somDefaultAssign(0,(SOMObject*)((void*)&fromObj));
  303.    return *this;
  304. }
  305.  
  306. M_WPQdr()
  307. {
  308.    if (*(void**)this != 
  309.        ((somParentMtabStructPtr)
  310.         (M_WPQdrCClassData.parentMtab))->mtab)
  311.       return;
  312.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  313. }
  314.  
  315. M_WPQdr(M_WPQdr* fromObj)
  316. {
  317.    if (*(void**)this != 
  318.        ((somParentMtabStructPtr)
  319.         (M_WPQdrCClassData.parentMtab))->mtab)
  320.       return;
  321.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  322. }
  323.  
  324. M_WPQdr(const M_WPQdr* fromObj)
  325. {
  326.    if (*(void**)this != 
  327.        ((somParentMtabStructPtr)
  328.         (M_WPQdrCClassData.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. WPQdr*  somNew()
  340. {
  341.    return SOM_ResolveD(this,M_WPQdr,SOMClass,somNew)
  342.     (this);
  343. }
  344.  
  345.  
  346.  
  347. };   /* M_WPQdr */
  348.  
  349.  
  350.  
  351. #endif       /* SOM_M_WPQdr_xh */
  352.