
/*
 * This file was generated by the SOM Compiler.
 * FileName: penobj.h.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emith: 1.11
 */

/*
 * 
 *  SCC: @(#) 42 12/4/92 16:37:08 1.1 @(#)
 *  Module Header
 * 
 *  Module Name: PENOBJ
 * 
 *  OS/2 Presentation Manager Workplace class definitions
 * 
 *  Copyright (c) International Business Machines Corporation 1992
 * 
 */


#ifndef penobj_h
#define penobj_h


#include <som.h>

/*
 * Define the class name as an object type
 */
#ifndef PenObject
#define PenObject SOMAny
#endif
#include "wpobject.h"

#define PenObject_MajorVersion 1
#define PenObject_MinorVersion 2

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define PenObjectNewClass Penobjc
#pragma linkage(Penobjc, system)
#define PenObjectClassData Penobjd
#define PenObjectCClassData Penobjx
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define PenObject_classObj PenObjectClassData.classObject
#define _PenObject PenObject_classObj

/*
 * New and Renew macros for PenObject
 */
#define _PenObjectNew() (_somNew(PenObjectClassData.classObject))
#define PenObjectNew() \
	( PenObjectClassData.classObject \
		? _PenObjectNew() \
		: ( PenObjectNewClass(PenObject_MajorVersion, PenObject_MinorVersion), _PenObjectNew() ) )
#define PenObjectRenew(buf) \
	( _somRenew(PenObjectClassData.classObject, buf) )

/*
 * Override method: wpAddSettingsPages
 */
#define PenObject_wpAddSettingsPages(somSelf,hwndNotebook) \
	WPObject_wpAddSettingsPages(somSelf,hwndNotebook)

/*
 * Override method: wpInitData
 */
#define PenObject_wpInitData(somSelf) \
	WPObject_wpInitData(somSelf)

/*
 * Override method: wpUnInitData
 */
#define PenObject_wpUnInitData(somSelf) \
	WPObject_wpUnInitData(somSelf)

/*
 * Override method: wpCreateAnother
 */
#define PenObject_wpCreateAnother(somSelf,pszTitle,pszSetupEnv,Folder) \
	WPObject_wpCreateAnother(somSelf,pszTitle,pszSetupEnv,Folder)

/*
 * Override method: wpRestoreState
 */
#define PenObject_wpRestoreState(somSelf,ulReserved) \
	WPObject_wpRestoreState(somSelf,ulReserved)

/*
 * Override method: wpSaveState
 */
#define PenObject_wpSaveState(somSelf) \
	WPObject_wpSaveState(somSelf)

/*
 * Override method: wpFree
 */
#define PenObject_wpFree(somSelf) \
	WPObject_wpFree(somSelf)

/*
 * New Name Lookup Method: penInvokeGestureHelp
 */
typedef ULONG    SOMLINK somTP_PenObject_penInvokeGestureHelp(PenObject *somSelf);
#pragma linkage(somTP_PenObject_penInvokeGestureHelp, system)
typedef somTP_PenObject_penInvokeGestureHelp *somTD_PenObject_penInvokeGestureHelp;
#define somMD_PenObject_penInvokeGestureHelp "----"
#define PenObject_penInvokeGestureHelp(somSelf) \
    (SOM_Resolve(somSelf, PenObject, penInvokeGestureHelp) \
	(somSelf))

#ifndef lookup_penInvokeGestureHelp
static char *somLMN_penInvokeGestureHelp = "penInvokeGestureHelp";
static somId somLId_penInvokeGestureHelp = &somLMN_penInvokeGestureHelp;
#define lookup_penInvokeGestureHelp(somSelf) \
    ((( somTD_PenObject_penInvokeGestureHelp ) \
	_somFindSMethodOk(SOM_GetClass(somSelf), somLId_penInvokeGestureHelp)) \
	    (somSelf))
#define _penInvokeGestureHelp lookup_penInvokeGestureHelp
#endif     /* _penInvokeGestureHelp */

/*
 * New Name Lookup Method: penAddObjectEventPage
 */
typedef ULONG    SOMLINK somTP_PenObject_penAddObjectEventPage(PenObject *somSelf,
		HWND hwndNotebook,
		PVOID pMappingInfo);
#pragma linkage(somTP_PenObject_penAddObjectEventPage, system)
typedef somTP_PenObject_penAddObjectEventPage *somTD_PenObject_penAddObjectEventPage;
#define somMD_PenObject_penAddObjectEventPage "----"
#define PenObject_penAddObjectEventPage(somSelf,hwndNotebook,pMappingInfo) \
    (SOM_Resolve(somSelf, PenObject, penAddObjectEventPage) \
	(somSelf,hwndNotebook,pMappingInfo))

#ifndef lookup_penAddObjectEventPage
static char *somLMN_penAddObjectEventPage = "penAddObjectEventPage";
static somId somLId_penAddObjectEventPage = &somLMN_penAddObjectEventPage;
#define lookup_penAddObjectEventPage(somSelf,hwndNotebook,pMappingInfo) \
    ((( somTD_PenObject_penAddObjectEventPage ) \
	_somFindSMethodOk(SOM_GetClass(somSelf), somLId_penAddObjectEventPage)) \
	    (somSelf,hwndNotebook,pMappingInfo))
#define _penAddObjectEventPage lookup_penAddObjectEventPage
#endif     /* _penAddObjectEventPage */

/*
 * New Method: penAddObjectOverridesPage
 */
typedef ULONG    SOMLINK somTP_PenObject_penAddObjectOverridesPage(PenObject *somSelf,
		HWND hwndNotebook);
#pragma linkage(somTP_PenObject_penAddObjectOverridesPage, system)
typedef somTP_PenObject_penAddObjectOverridesPage *somTD_PenObject_penAddObjectOverridesPage;
#define somMD_PenObject_penAddObjectOverridesPage "----"
#define PenObject_penAddObjectOverridesPage(somSelf,hwndNotebook) \
    (SOM_Resolve(somSelf, PenObject, penAddObjectOverridesPage) \
	(somSelf,hwndNotebook))
#define _penAddObjectOverridesPage PenObject_penAddObjectOverridesPage

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOMAny * SOMLINK PenObjectNewClass(integer4 scemajorVersion,
		integer4 sceminorVersion);
#pragma linkage(PenObjectNewClass, system)

/*
 * Declare the class data structure
 */
SOMEXTERN struct PenObjectClassDataStructure {
	SOMAny *classObject;
	somMToken penAddObjectEventPage;
	somMToken penAddObjectOverridesPage;
	somMToken penInvokeGestureHelp;
	somMToken penNotifyChangeofSystemMappings;
} PenObjectClassData;

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct PenObjectCClassDataStructure {
	somMethodTab *parentMtab;
	somDToken instanceDataToken;
} PenObjectCClassData;

#endif       /* penobj_h */

/*
 * This file was generated by the SOM Compiler.
 * FileName: penobj.h.
 * Generated using:
 *     SOM Precompiler spc: 1.22
 *     SOM Emitter emith: 1.11
 */

#ifndef penobj_mh
#define penobj_mh


/*
 * Define the class name as an object type
 */
#ifndef M_PenObject
#define M_PenObject SOMAny
#endif

#define M_PenObject_MajorVersion 1
#define M_PenObject_MinorVersion 2

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define M_PenObjectNewClass Penobjc
#pragma linkage(Penobjc, system)
#define M_PenObjectClassData Penobjd
#define M_PenObjectCClassData Penobjx
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define M_PenObject_classObj M_PenObjectClassData.classObject
#define _M_PenObject M_PenObject_classObj

/*
 * New and Renew macros for M_PenObject
 */
#define _M_PenObjectNew() (_somNew(M_PenObjectClassData.classObject))
#define M_PenObjectNew() \
	( M_PenObjectClassData.classObject \
		? _M_PenObjectNew() \
		: ( M_PenObjectNewClass(M_PenObject_MajorVersion, M_PenObject_MinorVersion), _M_PenObjectNew() ) )
#define M_PenObjectRenew(buf) \
	( _somRenew(M_PenObjectClassData.classObject, buf) )

/*
 * Override method: wpclsQueryIcon
 */
#define M_PenObject_wpclsQueryIcon(somSelf) \
	M_WPObject_wpclsQueryIcon(somSelf)

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOMAny * SOMLINK M_PenObjectNewClass(integer4 scemajorVersion,
		integer4 sceminorVersion);
#pragma linkage(M_PenObjectNewClass, system)

/*
 * Declare the class data structure
 */
SOMEXTERN struct M_PenObjectClassDataStructure {
	SOMAny *classObject;
} M_PenObjectClassData;

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct M_PenObjectCClassDataStructure {
	somMethodTab *parentMtab;
	somDToken instanceDataToken;
} M_PenObjectCClassData;

#endif       /* penobj_h */
