
/*
 * This file was generated by the SOM Compiler.
 * FileName: wpmouse.xh.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emitxh: 1.11
 */

/*
 * 
 *  Module Header
 * 
 *  Module Name: WPMOUSE
 * 
 *  OS/2 Presentation Manager Workplace class definitions
 * 
 *  Copyright (c) International Business Machines Corporation 1991, 1992
 * 
 */

#ifndef wpmouse_xh
#define wpmouse_xh
class WPMouse;

#define WPMouse_MajorVersion 1
#define WPMouse_MinorVersion 2

/* C++ som defs */
#include <somcls.xh>

/* C++ parent def */
#ifndef wpabs_xh
#include "wpabs.xh"
#endif

#ifndef WPMouse_API
#define WPMouse_API
/*
 * The Class API
 */

/* A procedure to create the WPMouse Class */
SOMEXTERN SOMClass * SOMLINK WPMouseNewClass(
		integer4 majorVersion,
		integer4 minorVersion);

/* A macro to return the WPMouse class object */
class M_WPMouse;
#define _WPMouse ((M_WPMouse*)WPMouseClassData.classObject)

/* The static interface to WPMouse and its instances */
SOMEXTERN struct WPMouseClassDataStructure {
	SOMClass *classObject;
	somMToken wpAddMouseMappingsPage;
	somMToken wpAddMouseTimingPage;
	somMToken wpAddMouseTypePage;
} WPMouseClassData;

/*
 * -- Typedefs for Procedures that support WPMouse Methods
 */
extern "C" {
typedef ULONG    (SOMLINK *somTD_WPMouse_wpAddMouseMappingsPage)(WPMouse *somSelf,HWND hwndNotebook);
typedef ULONG    (SOMLINK *somTD_WPMouse_wpAddMouseTimingPage)(WPMouse *somSelf,HWND hwndNotebook);
typedef ULONG    (SOMLINK *somTD_WPMouse_wpAddMouseTypePage)(WPMouse *somSelf,HWND hwndNotebook);
}


#endif /* WPMouse_API */


/*
 * -- The C++ Wrapper Class for WPMouse
 */
class WPMouse : public WPAbstract
{
public:

void *operator new(size_t size)
{
   (void) size;
   if (!WPMouseClassData.classObject) 
      WPMouseNewClass(WPMouse_MajorVersion,WPMouse_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(WPMouseClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(WPMouseClassData.classObject));
}

void operator delete(void * obj)
{
   ((SOMObject *)obj)->somFree();
}

/* public method: wpAddMouseMappingsPage */
ULONG    wpAddMouseMappingsPage(HWND hwndNotebook)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPMouse,wpAddMouseMappingsPage)
	(this,hwndNotebook);
}


/* public method: wpAddMouseTimingPage */
ULONG    wpAddMouseTimingPage(HWND hwndNotebook)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPMouse,wpAddMouseTimingPage)
	(this,hwndNotebook);
}


/* public method: wpAddMouseTypePage */
ULONG    wpAddMouseTypePage(HWND hwndNotebook)
{
   return (ULONG) SOM_Resolve((SOMAny *)this,WPMouse,wpAddMouseTypePage)
	(this,hwndNotebook);
}



};   /* WPMouse */



#endif       /* wpmouse_xh */

/*
 * This file was generated by the SOM Compiler.
 * FileName: wpmouse.xh.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emitxh: 1.11
 */
#ifndef wpmouse_mxh
#define wpmouse_mxh
class M_WPMouse;

#define M_WPMouse_MajorVersion 1
#define M_WPMouse_MinorVersion 2

/* C++ som defs */
#include <somcls.xh>

/* C++ parent def */
#ifndef wpabs_xh
#include "wpabs.xh"
#endif

#ifndef M_WPMouse_API
#define M_WPMouse_API
/*
 * The Class API
 */

/* A procedure to create the M_WPMouse Class */
SOMEXTERN SOMClass * SOMLINK M_WPMouseNewClass(
		integer4 majorVersion,
		integer4 minorVersion);

/* A macro to return the M_WPMouse class object */
#define _M_WPMouse ((SOMClass*)M_WPMouseClassData.classObject)

/* The static interface to M_WPMouse and its instances */
SOMEXTERN struct M_WPMouseClassDataStructure {
	SOMClass *classObject;
} M_WPMouseClassData;

/*
 * -- Typedefs for Procedures that support M_WPMouse Methods
 */
extern "C" {
}


#endif /* M_WPMouse_API */


/*
 * -- The C++ Wrapper Class for M_WPMouse
 */
class M_WPMouse : public M_WPAbstract
{
public:

void *operator new(size_t size)
{
   (void) size;
   if (!M_WPMouseClassData.classObject) 
      M_WPMouseNewClass(M_WPMouse_MajorVersion,M_WPMouse_MinorVersion);
   return (void *)
      ((somTD_SOMClass_somNew)
      somResolve(SOM_TestCls((SOMAny *)(M_WPMouseClassData.classObject),
                             SOMClassClassData.classObject),
                 SOMClassClassData.somNew))
         ((SOMClass*)(M_WPMouseClassData.classObject));
}

void operator delete(void * obj)
{
   ((SOMObject *)obj)->somFree();
}


};   /* M_WPMouse */



#endif       /* wpmouse_mxh */
