home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / devtools / toolkt21 / cplus / os2h / wpshadow.xh < prev    next >
Encoding:
Text File  |  1993-05-02  |  4.3 KB  |  203 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: wpshadow.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler spc: 1.22
  7.  *     SOM Emitter emitxh: 1.11
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Module Header
  13.  * 
  14.  *  Module Name: WPSHADOW
  15.  * 
  16.  *  OS/2 Presentation Manager Workplace class definitions
  17.  * 
  18.  *  Copyright (c) International Business Machines Corporation 1991, 1992
  19.  * 
  20.  */
  21.  
  22. #ifndef wpshadow_xh
  23. #define wpshadow_xh
  24. class WPShadow;
  25.  
  26. #define WPShadow_MajorVersion 1
  27. #define WPShadow_MinorVersion 2
  28.  
  29. /* C++ som defs */
  30. #include <somcls.xh>
  31.  
  32. /* C++ parent def */
  33. #ifndef wpabs_xh
  34. #include "wpabs.xh"
  35. #endif
  36.  
  37. #ifndef WPShadow_API
  38. #define WPShadow_API
  39. /*
  40.  * The Class API
  41.  */
  42.  
  43. /* A procedure to create the WPShadow Class */
  44. SOMEXTERN SOMClass * SOMLINK WPShadowNewClass(
  45.         integer4 majorVersion,
  46.         integer4 minorVersion);
  47.  
  48. /* A macro to return the WPShadow class object */
  49. class M_WPShadow;
  50. #define _WPShadow ((M_WPShadow*)WPShadowClassData.classObject)
  51.  
  52. /* The static interface to WPShadow and its instances */
  53. SOMEXTERN struct WPShadowClassDataStructure {
  54.     SOMClass *classObject;
  55.     somMToken wpSetLinkToObject;
  56.     somMToken withdrawn;
  57.     somMToken wpSetShadowTitle;
  58.     somMToken wpQueryShadowedObject;
  59. } WPShadowClassData;
  60.  
  61. /*
  62.  * -- Typedefs for Procedures that support WPShadow Methods
  63.  */
  64. extern "C" {
  65. typedef WPObject *   (SOMLINK *somTD_WPShadow_wpQueryShadowedObject)(WPShadow *somSelf,BOOL fLock);
  66. typedef BOOL    (SOMLINK *somTD_WPShadow_wpSetShadowTitle)(WPShadow *somSelf,PSZ pszNewTitle);
  67. }
  68.  
  69.  
  70. #endif /* WPShadow_API */
  71.  
  72.  
  73. /*
  74.  * -- The C++ Wrapper Class for WPShadow
  75.  */
  76. class WPShadow : public WPAbstract
  77. {
  78. public:
  79.  
  80. void *operator new(size_t size)
  81. {
  82.    (void) size;
  83.    if (!WPShadowClassData.classObject) 
  84.       WPShadowNewClass(WPShadow_MajorVersion,WPShadow_MinorVersion);
  85.    return (void *)
  86.       ((somTD_SOMClass_somNew)
  87.       somResolve(SOM_TestCls((SOMAny *)(WPShadowClassData.classObject),
  88.                              SOMClassClassData.classObject),
  89.                  SOMClassClassData.somNew))
  90.          ((SOMClass*)(WPShadowClassData.classObject));
  91. }
  92.  
  93. void operator delete(void * obj)
  94. {
  95.    ((SOMObject *)obj)->somFree();
  96. }
  97.  
  98. /* public method: wpQueryShadowedObject */
  99. WPObject *   wpQueryShadowedObject(BOOL fLock)
  100. {
  101.    return (WPObject*) SOM_Resolve((SOMAny *)this,WPShadow,wpQueryShadowedObject)
  102.     (this,fLock);
  103. }
  104.  
  105.  
  106. /* public method: wpSetShadowTitle */
  107. BOOL    wpSetShadowTitle(PSZ pszNewTitle)
  108. {
  109.    return (BOOL) SOM_Resolve((SOMAny *)this,WPShadow,wpSetShadowTitle)
  110.     (this,pszNewTitle);
  111. }
  112.  
  113.  
  114.  
  115. };   /* WPShadow */
  116.  
  117.  
  118.  
  119. #endif       /* wpshadow_xh */
  120.  
  121. /*
  122.  * This file was generated by the SOM Compiler.
  123.  * FileName: wpshadow.xh.
  124.  * Generated using:
  125.  *     SOM Precompiler spc: 1.22
  126.  *     SOM Emitter emitxh: 1.11
  127.  */
  128. #ifndef wpshadow_mxh
  129. #define wpshadow_mxh
  130. class M_WPShadow;
  131.  
  132. #define M_WPShadow_MajorVersion 1
  133. #define M_WPShadow_MinorVersion 2
  134.  
  135. /* C++ som defs */
  136. #include <somcls.xh>
  137.  
  138. /* C++ parent def */
  139. #ifndef wpabs_xh
  140. #include "wpabs.xh"
  141. #endif
  142.  
  143. #ifndef M_WPShadow_API
  144. #define M_WPShadow_API
  145. /*
  146.  * The Class API
  147.  */
  148.  
  149. /* A procedure to create the M_WPShadow Class */
  150. SOMEXTERN SOMClass * SOMLINK M_WPShadowNewClass(
  151.         integer4 majorVersion,
  152.         integer4 minorVersion);
  153.  
  154. /* A macro to return the M_WPShadow class object */
  155. #define _M_WPShadow ((SOMClass*)M_WPShadowClassData.classObject)
  156.  
  157. /* The static interface to M_WPShadow and its instances */
  158. SOMEXTERN struct M_WPShadowClassDataStructure {
  159.     SOMClass *classObject;
  160. } M_WPShadowClassData;
  161.  
  162. /*
  163.  * -- Typedefs for Procedures that support M_WPShadow Methods
  164.  */
  165. extern "C" {
  166. }
  167.  
  168.  
  169. #endif /* M_WPShadow_API */
  170.  
  171.  
  172. /*
  173.  * -- The C++ Wrapper Class for M_WPShadow
  174.  */
  175. class M_WPShadow : public M_WPAbstract
  176. {
  177. public:
  178.  
  179. void *operator new(size_t size)
  180. {
  181.    (void) size;
  182.    if (!M_WPShadowClassData.classObject) 
  183.       M_WPShadowNewClass(M_WPShadow_MajorVersion,M_WPShadow_MinorVersion);
  184.    return (void *)
  185.       ((somTD_SOMClass_somNew)
  186.       somResolve(SOM_TestCls((SOMAny *)(M_WPShadowClassData.classObject),
  187.                              SOMClassClassData.classObject),
  188.                  SOMClassClassData.somNew))
  189.          ((SOMClass*)(M_WPShadowClassData.classObject));
  190. }
  191.  
  192. void operator delete(void * obj)
  193. {
  194.    ((SOMObject *)obj)->somFree();
  195. }
  196.  
  197.  
  198. };   /* M_WPShadow */
  199.  
  200.  
  201.  
  202. #endif       /* wpshadow_mxh */
  203.