
/*
 * This file was generated by the SOM Compiler.
 * FileName: \odwin\h\WINDOW.h.
 * Generated using:
 *     SOM Precompiler somipc: 2.29.1.3
 *     SOM Emitter emith.dll: 2.41
 */

/*
 * 
 *  Classes defined in this interface
 * 
 */


#ifndef SOM_ODWindow_h
#define SOM_ODWindow_h


#include <som.h>

/*
 * -- This emitter treats Method Tokens as Thunks by default.
 * -- Use the sc modifier "nothunks" to change this default
 */
#undef somresolve_
#define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))



/*
 * Define class data structures as resolution macros
 */
#define ODWindowClassData (*resolve_ODWindowClassData())
#define ODWindowCClassData (*resolve_ODWindowCClassData())

/*
 * Define the class name as an object type
 */
#ifndef ODWindow
#define ODWindow SOMObject
#endif
#include <WindowB.h>

/*
 * Start of user-defined types:
 */
#ifndef SOMClass
    #define SOMClass SOMObject
#endif /* SOMClass */
#ifndef ODObject
    #define ODObject SOMObject
#endif /* ODObject */
#ifndef ODExtension
    #define ODExtension SOMObject
#endif /* ODExtension */
#ifndef ODRefCntObject
    #define ODRefCntObject SOMObject
#endif /* ODRefCntObject */
#ifndef ODBaseWindow
    #define ODBaseWindow SOMObject
#endif /* ODBaseWindow */
#ifndef ODFacet
    #define ODFacet SOMObject
#endif /* ODFacet */
#ifndef ODFrame
    #define ODFrame SOMObject
#endif /* ODFrame */
#ifndef ODPart
    #define ODPart SOMObject
#endif /* ODPart */
#ifndef ODStorageUnit
    #define ODStorageUnit SOMObject
#endif /* ODStorageUnit */
#ifndef ODSession
    #define ODSession SOMObject
#endif /* ODSession */
#ifndef ODArbitrator
    #define ODArbitrator SOMObject
#endif /* ODArbitrator */
#ifndef ODDraft
    #define ODDraft SOMObject
#endif /* ODDraft */
#ifndef ODWindow
    #define ODWindow SOMObject
#endif /* ODWindow */

/*
 * End of user-defined types.
 */

#define ODWindow_MajorVersion 1
#define ODWindow_MinorVersion 0

/*
 * External name shortening if required
 */
#ifdef SOM_USE_SHORT_EXTERNAL_NAMES
#define ODWindowNewClass c
#define ODWindowClassData d
#define ODWindowCClassData x
#endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
/*--------------Migration------------*/
#define ODWindow_classObj ODWindowClassData.classObject
#define _ODWindow ODWindow_classObj

/*
 * Declare the class creation procedure
 */
SOMEXTERN SOMClass * SOMLINK ODWindowNewClass(integer4 somntmajorVersion,
		integer4 somntminorVersion);

/*
 * Declare the class data structure
 */
SOMEXTERN struct ODWindowClassDataStructure {
	SOMClass *classObject;
	somMToken Select;
	somMToken Update;
	somMToken InitWindow;
	somMToken InitWindowFromStorage;
	somMToken HandleActivateEvent;
	somMToken HandleUpdateEvent;
	somMToken IsAOCEMailerAware;
	somMToken SetAOCEMailerAware;
	somMToken GetAOCEObj;
	somMToken SetAOCEObj;
	somMToken Activate;
	somMToken Deactivate;
	somMToken Drag;
	somMToken SuspendResume;
	somMToken SetWindowTitle;
	somMToken GetWindowPoint;
	somMToken SetWasVisible;
	somMToken GetWasVisible;
	somMToken Externalize;
	somMToken SetID;
	somMToken GetStorageUnit;
	somMToken SetStorageUnit;
	somMToken GetDraft;
	somMToken CommonInitWindow;
	somMToken CreateRootFrame;
	somMToken CreateRootFacet;
	somMToken PrepareCanvas;
	somMToken DrawActiveBorder;
	somMToken HasCloseBox;
	somMToken HasZoomBox;
	somMToken HasGrowBox;
	somMToken GetProcID;
	somMToken GetWindowBounds;
	somMToken GetRefCon;
	somMToken LinkDocShell;
	somMToken GetRootPart;
	somMToken SetRootPart;
	somMToken SetRootFrame;
	somMToken SetRootFacet;
	somMToken GetSession;
	somMToken SetSession;
	somMToken SetDraft;
	somMToken SetPlatformWindow;
	somMToken GetArbitrator;
	somMToken SetArbitrator;
	somMToken SetIsRootWindow;
	somMToken SetIsResizable;
	somMToken SetIsFloating;
}  _ODWindowClassData;
SOMEXTERN struct ODWindowClassDataStructure * SOMLINK resolve_ODWindowClassData(void);

/*
 * Declare the C specific class data structure
 */
SOMEXTERN struct ODWindowCClassDataStructure {
	somMethodTabs parentMtab;
	somDToken instanceDataToken;
}  _ODWindowCClassData;
SOMEXTERN struct ODWindowCClassDataStructure * SOMLINK resolve_ODWindowCClassData(void);

/*
 * New and Renew macros for ODWindow
 */
#define ODWindowNew() \
   (_somNew(_ODWindow ? _ODWindow : ODWindowNewClass(ODWindow_MajorVersion, ODWindow_MinorVersion)))
#define ODWindowRenew(buf) \
   (_somRenew(_ODWindow ? _ODWindow : ODWindowNewClass(ODWindow_MajorVersion, ODWindow_MinorVersion), buf))

/*
 * Override method: somInit
 */
#define ODWindow_somInit(somSelf) \
	SOMObject_somInit(somSelf)

/*
 * Override method: somUninit
 */
#define ODWindow_somUninit(somSelf) \
	SOMObject_somUninit(somSelf)

/*
 * Override method: Release
 */
#define ODWindow_Release(somSelf,ev) \
	ODRefCntObject_Release(somSelf,ev)

/*
 * Override method: Purge
 */
#define ODWindow_Purge(somSelf,ev,size) \
	ODObject_Purge(somSelf,ev,size)

/*
 * Override method: GetPlatformWindow
 */
#define ODWindow_GetPlatformWindow(somSelf,ev) \
	ODBaseWindow_GetPlatformWindow(somSelf,ev)

/*
 * Override method: GetSourceFrame
 */
#define ODWindow_GetSourceFrame(somSelf,ev) \
	ODBaseWindow_GetSourceFrame(somSelf,ev)

/*
 * Override method: GetRootFrame
 */
#define ODWindow_GetRootFrame(somSelf,ev) \
	ODBaseWindow_GetRootFrame(somSelf,ev)

/*
 * Override method: GetFacetUnderPoint
 */
#define ODWindow_GetFacetUnderPoint(somSelf,ev,aPoint) \
	ODBaseWindow_GetFacetUnderPoint(somSelf,ev,aPoint)

/*
 * Override method: IsActive
 */
#define ODWindow_IsActive(somSelf,ev) \
	ODBaseWindow_IsActive(somSelf,ev)

/*
 * Override method: Open
 */
#define ODWindow_Open(somSelf,ev) \
	ODBaseWindow_Open(somSelf,ev)

/*
 * Override method: Close
 */
#define ODWindow_Close(somSelf,ev) \
	ODBaseWindow_Close(somSelf,ev)

/*
 * Override method: CloseAndRemove
 */
#define ODWindow_CloseAndRemove(somSelf,ev) \
	ODBaseWindow_CloseAndRemove(somSelf,ev)

/*
 * Override method: Show
 */
#define ODWindow_Show(somSelf,ev) \
	ODBaseWindow_Show(somSelf,ev)

/*
 * Override method: Hide
 */
#define ODWindow_Hide(somSelf,ev) \
	ODBaseWindow_Hide(somSelf,ev)

/*
 * Override method: IsShown
 */
#define ODWindow_IsShown(somSelf,ev) \
	ODBaseWindow_IsShown(somSelf,ev)

/*
 * Override method: IsResizable
 */
#define ODWindow_IsResizable(somSelf,ev) \
	ODBaseWindow_IsResizable(somSelf,ev)

/*
 * Override method: IsRootWindow
 */
#define ODWindow_IsRootWindow(somSelf,ev) \
	ODBaseWindow_IsRootWindow(somSelf,ev)

/*
 * Override method: ShouldSave
 */
#define ODWindow_ShouldSave(somSelf,ev) \
	ODBaseWindow_ShouldSave(somSelf,ev)

/*
 * Override method: SetShouldSave
 */
#define ODWindow_SetShouldSave(somSelf,ev,shouldSave) \
	ODBaseWindow_SetShouldSave(somSelf,ev,shouldSave)

/*
 * Override method: ShouldShowLinks
 */
#define ODWindow_ShouldShowLinks(somSelf,ev) \
	ODBaseWindow_ShouldShowLinks(somSelf,ev)

/*
 * Override method: SetShouldShowLinks
 */
#define ODWindow_SetShouldShowLinks(somSelf,ev,shouldShowLinks) \
	ODBaseWindow_SetShouldShowLinks(somSelf,ev,shouldShowLinks)

/*
 * Override method: AdjustWindowShape
 */
#define ODWindow_AdjustWindowShape(somSelf,ev) \
	ODBaseWindow_AdjustWindowShape(somSelf,ev)

/*
 * Override method: GetID
 */
#define ODWindow_GetID(somSelf,ev) \
	ODBaseWindow_GetID(somSelf,ev)

/*
 * Override method: IsFloating
 */
#define ODWindow_IsFloating(somSelf,ev) \
	ODBaseWindow_IsFloating(somSelf,ev)

/*
 * Override method: GetRootFacet
 */
#define ODWindow_GetRootFacet(somSelf,ev) \
	ODBaseWindow_GetRootFacet(somSelf,ev)

/*
 * New Method: Select
 */
typedef void   (SOMLINK * somTD_ODWindow_Select)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_Select "::ODWindow::Select"
#define ODWindow_Select(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, Select) \
	(somSelf,ev))
#ifndef SOMGD_Select
    #if (defined(_Select) || defined(__Select))
        #undef _Select
        #undef __Select
        #define SOMGD_Select 1
    #else
        #define _Select ODWindow_Select
    #endif /* _Select */
#endif /* SOMGD_Select */

/*
 * New Method: Update
 */
typedef void   (SOMLINK * somTD_ODWindow_Update)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_Update "::ODWindow::Update"
#define ODWindow_Update(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, Update) \
	(somSelf,ev))
#ifndef SOMGD_Update
    #if (defined(_Update) || defined(__Update))
        #undef _Update
        #undef __Update
        #define SOMGD_Update 1
    #else
        #define _Update ODWindow_Update
    #endif /* _Update */
#endif /* SOMGD_Update */

/*
 * New Method: InitWindow
 */
typedef void   (SOMLINK * somTD_ODWindow_InitWindow)(ODWindow *somSelf, Environment *ev,
		ODPlatformWindow platformWindow,
		ODType frameType,
		ODBoolean isRootWindow,
		ODBoolean isResizable,
		ODBoolean isFloating,
		ODBoolean shouldSave,
		ODPart* rootPart,
		ODTypeToken viewType,
		ODTypeToken presentation,
		ODFrame* sourceFrame);
#define somMD_ODWindow_InitWindow "::ODWindow::InitWindow"
#define ODWindow_InitWindow(somSelf,ev,platformWindow,frameType,isRootWindow,isResizable,isFloating,shouldSave,rootPart,viewType,presentation,sourceFrame) \
    (SOM_Resolve(somSelf, ODWindow, InitWindow) \
	(somSelf,ev,platformWindow,frameType,isRootWindow,isResizable,isFloating,shouldSave,rootPart,viewType,presentation,sourceFrame))
#ifndef SOMGD_InitWindow
    #if (defined(_InitWindow) || defined(__InitWindow))
        #undef _InitWindow
        #undef __InitWindow
        #define SOMGD_InitWindow 1
    #else
        #define _InitWindow ODWindow_InitWindow
    #endif /* _InitWindow */
#endif /* SOMGD_InitWindow */

/*
 * New Method: InitWindowFromStorage
 */
typedef void   (SOMLINK * somTD_ODWindow_InitWindowFromStorage)(ODWindow *somSelf, Environment *ev,
		ODStorageUnit* su);
#define somMD_ODWindow_InitWindowFromStorage "::ODWindow::InitWindowFromStorage"
#define ODWindow_InitWindowFromStorage(somSelf,ev,su) \
    (SOM_Resolve(somSelf, ODWindow, InitWindowFromStorage) \
	(somSelf,ev,su))
#ifndef SOMGD_InitWindowFromStorage
    #if (defined(_InitWindowFromStorage) || defined(__InitWindowFromStorage))
        #undef _InitWindowFromStorage
        #undef __InitWindowFromStorage
        #define SOMGD_InitWindowFromStorage 1
    #else
        #define _InitWindowFromStorage ODWindow_InitWindowFromStorage
    #endif /* _InitWindowFromStorage */
#endif /* SOMGD_InitWindowFromStorage */

/*
 * New Method: HandleActivateEvent
 */
typedef void   (SOMLINK * somTD_ODWindow_HandleActivateEvent)(ODWindow *somSelf, Environment *ev,
		ODEventData* theEvent);
#define somMD_ODWindow_HandleActivateEvent "::ODWindow::HandleActivateEvent"
#define ODWindow_HandleActivateEvent(somSelf,ev,theEvent) \
    (SOM_Resolve(somSelf, ODWindow, HandleActivateEvent) \
	(somSelf,ev,theEvent))
#ifndef SOMGD_HandleActivateEvent
    #if (defined(_HandleActivateEvent) || defined(__HandleActivateEvent))
        #undef _HandleActivateEvent
        #undef __HandleActivateEvent
        #define SOMGD_HandleActivateEvent 1
    #else
        #define _HandleActivateEvent ODWindow_HandleActivateEvent
    #endif /* _HandleActivateEvent */
#endif /* SOMGD_HandleActivateEvent */

/*
 * New Method: HandleUpdateEvent
 */
typedef void   (SOMLINK * somTD_ODWindow_HandleUpdateEvent)(ODWindow *somSelf, Environment *ev,
		ODEventData* theEvent);
#define somMD_ODWindow_HandleUpdateEvent "::ODWindow::HandleUpdateEvent"
#define ODWindow_HandleUpdateEvent(somSelf,ev,theEvent) \
    (SOM_Resolve(somSelf, ODWindow, HandleUpdateEvent) \
	(somSelf,ev,theEvent))
#ifndef SOMGD_HandleUpdateEvent
    #if (defined(_HandleUpdateEvent) || defined(__HandleUpdateEvent))
        #undef _HandleUpdateEvent
        #undef __HandleUpdateEvent
        #define SOMGD_HandleUpdateEvent 1
    #else
        #define _HandleUpdateEvent ODWindow_HandleUpdateEvent
    #endif /* _HandleUpdateEvent */
#endif /* SOMGD_HandleUpdateEvent */

/*
 * New Method: Activate
 */
typedef void   (SOMLINK * somTD_ODWindow_Activate)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_Activate "::ODWindow::Activate"
#define ODWindow_Activate(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, Activate) \
	(somSelf,ev))
#ifndef SOMGD_Activate
    #if (defined(_Activate) || defined(__Activate))
        #undef _Activate
        #undef __Activate
        #define SOMGD_Activate 1
    #else
        #define _Activate ODWindow_Activate
    #endif /* _Activate */
#endif /* SOMGD_Activate */

/*
 * New Method: Deactivate
 */
typedef void   (SOMLINK * somTD_ODWindow_Deactivate)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_Deactivate "::ODWindow::Deactivate"
#define ODWindow_Deactivate(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, Deactivate) \
	(somSelf,ev))
#ifndef SOMGD_Deactivate
    #if (defined(_Deactivate) || defined(__Deactivate))
        #undef _Deactivate
        #undef __Deactivate
        #define SOMGD_Deactivate 1
    #else
        #define _Deactivate ODWindow_Deactivate
    #endif /* _Deactivate */
#endif /* SOMGD_Deactivate */

/*
 * New Method: Drag
 */
typedef void   (SOMLINK * somTD_ODWindow_Drag)(ODWindow *somSelf, Environment *ev,
		POINT* startPoint,
		RECT* draggingBounds);
#define somMD_ODWindow_Drag "::ODWindow::Drag"
#define ODWindow_Drag(somSelf,ev,startPoint,draggingBounds) \
    (SOM_Resolve(somSelf, ODWindow, Drag) \
	(somSelf,ev,startPoint,draggingBounds))
#ifndef SOMGD_Drag
    #if (defined(_Drag) || defined(__Drag))
        #undef _Drag
        #undef __Drag
        #define SOMGD_Drag 1
    #else
        #define _Drag ODWindow_Drag
    #endif /* _Drag */
#endif /* SOMGD_Drag */

/*
 * New Method: SuspendResume
 */
typedef void   (SOMLINK * somTD_ODWindow_SuspendResume)(ODWindow *somSelf, Environment *ev,
		ODEventData* event);
#define somMD_ODWindow_SuspendResume "::ODWindow::SuspendResume"
#define ODWindow_SuspendResume(somSelf,ev,event) \
    (SOM_Resolve(somSelf, ODWindow, SuspendResume) \
	(somSelf,ev,event))
#ifndef SOMGD_SuspendResume
    #if (defined(_SuspendResume) || defined(__SuspendResume))
        #undef _SuspendResume
        #undef __SuspendResume
        #define SOMGD_SuspendResume 1
    #else
        #define _SuspendResume ODWindow_SuspendResume
    #endif /* _SuspendResume */
#endif /* SOMGD_SuspendResume */

/*
 * New Method: SetWindowTitle
 */
typedef void   (SOMLINK * somTD_ODWindow_SetWindowTitle)(ODWindow *somSelf, Environment *ev,
		char* title);
#define somMD_ODWindow_SetWindowTitle "::ODWindow::SetWindowTitle"
#define ODWindow_SetWindowTitle(somSelf,ev,title) \
    (SOM_Resolve(somSelf, ODWindow, SetWindowTitle) \
	(somSelf,ev,title))
#ifndef SOMGD_SetWindowTitle
    #if (defined(_SetWindowTitle) || defined(__SetWindowTitle))
        #undef _SetWindowTitle
        #undef __SetWindowTitle
        #define SOMGD_SetWindowTitle 1
    #else
        #define _SetWindowTitle ODWindow_SetWindowTitle
    #endif /* _SetWindowTitle */
#endif /* SOMGD_SetWindowTitle */

/*
 * New Method: GetWindowPoint
 */
typedef ODPoint   (SOMLINK * somTD_ODWindow_GetWindowPoint)(ODWindow *somSelf, Environment *ev,
		POINT* globalPoint);
#define somMD_ODWindow_GetWindowPoint "::ODWindow::GetWindowPoint"
#define ODWindow_GetWindowPoint(somSelf,ev,globalPoint) \
    (SOM_Resolve(somSelf, ODWindow, GetWindowPoint) \
	(somSelf,ev,globalPoint))
#ifndef SOMGD_GetWindowPoint
    #if (defined(_GetWindowPoint) || defined(__GetWindowPoint))
        #undef _GetWindowPoint
        #undef __GetWindowPoint
        #define SOMGD_GetWindowPoint 1
    #else
        #define _GetWindowPoint ODWindow_GetWindowPoint
    #endif /* _GetWindowPoint */
#endif /* SOMGD_GetWindowPoint */

/*
 * New Method: SetWasVisible
 */
typedef void   (SOMLINK * somTD_ODWindow_SetWasVisible)(ODWindow *somSelf, Environment *ev,
		ODBoolean wasVisible);
#define somMD_ODWindow_SetWasVisible "::ODWindow::SetWasVisible"
#define ODWindow_SetWasVisible(somSelf,ev,wasVisible) \
    (SOM_Resolve(somSelf, ODWindow, SetWasVisible) \
	(somSelf,ev,wasVisible))
#ifndef SOMGD_SetWasVisible
    #if (defined(_SetWasVisible) || defined(__SetWasVisible))
        #undef _SetWasVisible
        #undef __SetWasVisible
        #define SOMGD_SetWasVisible 1
    #else
        #define _SetWasVisible ODWindow_SetWasVisible
    #endif /* _SetWasVisible */
#endif /* SOMGD_SetWasVisible */

/*
 * New Method: GetWasVisible
 */
typedef ODBoolean   (SOMLINK * somTD_ODWindow_GetWasVisible)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetWasVisible "::ODWindow::GetWasVisible"
#define ODWindow_GetWasVisible(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetWasVisible) \
	(somSelf,ev))
#ifndef SOMGD_GetWasVisible
    #if (defined(_GetWasVisible) || defined(__GetWasVisible))
        #undef _GetWasVisible
        #undef __GetWasVisible
        #define SOMGD_GetWasVisible 1
    #else
        #define _GetWasVisible ODWindow_GetWasVisible
    #endif /* _GetWasVisible */
#endif /* SOMGD_GetWasVisible */

/*
 * New Method: Externalize
 */
typedef void   (SOMLINK * somTD_ODWindow_Externalize)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_Externalize "::ODWindow::Externalize"
#define ODWindow_Externalize(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, Externalize) \
	(somSelf,ev))
#ifndef SOMGD_Externalize
    #if (defined(_Externalize) || defined(__Externalize))
        #undef _Externalize
        #undef __Externalize
        #define SOMGD_Externalize 1
    #else
        #define _Externalize ODWindow_Externalize
    #endif /* _Externalize */
#endif /* SOMGD_Externalize */

/*
 * New Method: SetID
 */
typedef void   (SOMLINK * somTD_ODWindow_SetID)(ODWindow *somSelf, Environment *ev,
		ODID windowID);
#define somMD_ODWindow_SetID "::ODWindow::SetID"
#define ODWindow_SetID(somSelf,ev,windowID) \
    (SOM_Resolve(somSelf, ODWindow, SetID) \
	(somSelf,ev,windowID))
#ifndef SOMGD_SetID
    #if (defined(_SetID) || defined(__SetID))
        #undef _SetID
        #undef __SetID
        #define SOMGD_SetID 1
    #else
        #define _SetID ODWindow_SetID
    #endif /* _SetID */
#endif /* SOMGD_SetID */

/*
 * New Method: GetStorageUnit
 */
typedef ODStorageUnit*   (SOMLINK * somTD_ODWindow_GetStorageUnit)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetStorageUnit "::ODWindow::GetStorageUnit"
#define ODWindow_GetStorageUnit(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetStorageUnit) \
	(somSelf,ev))
#ifndef SOMGD_GetStorageUnit
    #if (defined(_GetStorageUnit) || defined(__GetStorageUnit))
        #undef _GetStorageUnit
        #undef __GetStorageUnit
        #define SOMGD_GetStorageUnit 1
    #else
        #define _GetStorageUnit ODWindow_GetStorageUnit
    #endif /* _GetStorageUnit */
#endif /* SOMGD_GetStorageUnit */

/*
 * New Method: SetStorageUnit
 */
typedef void   (SOMLINK * somTD_ODWindow_SetStorageUnit)(ODWindow *somSelf, Environment *ev,
		ODStorageUnit* su);
#define somMD_ODWindow_SetStorageUnit "::ODWindow::SetStorageUnit"
#define ODWindow_SetStorageUnit(somSelf,ev,su) \
    (SOM_Resolve(somSelf, ODWindow, SetStorageUnit) \
	(somSelf,ev,su))
#ifndef SOMGD_SetStorageUnit
    #if (defined(_SetStorageUnit) || defined(__SetStorageUnit))
        #undef _SetStorageUnit
        #undef __SetStorageUnit
        #define SOMGD_SetStorageUnit 1
    #else
        #define _SetStorageUnit ODWindow_SetStorageUnit
    #endif /* _SetStorageUnit */
#endif /* SOMGD_SetStorageUnit */

/*
 * New Method: GetDraft
 */
typedef ODDraft*   (SOMLINK * somTD_ODWindow_GetDraft)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetDraft "::ODWindow::GetDraft"
#define ODWindow_GetDraft(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetDraft) \
	(somSelf,ev))
#ifndef SOMGD_GetDraft
    #if (defined(_GetDraft) || defined(__GetDraft))
        #undef _GetDraft
        #undef __GetDraft
        #define SOMGD_GetDraft 1
    #else
        #define _GetDraft ODWindow_GetDraft
    #endif /* _GetDraft */
#endif /* SOMGD_GetDraft */

/*
 * New Method: CommonInitWindow
 */
typedef void   (SOMLINK * somTD_ODWindow_CommonInitWindow)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_CommonInitWindow "::ODWindow::CommonInitWindow"
#define ODWindow_CommonInitWindow(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, CommonInitWindow) \
	(somSelf,ev))
#ifndef SOMGD_CommonInitWindow
    #if (defined(_CommonInitWindow) || defined(__CommonInitWindow))
        #undef _CommonInitWindow
        #undef __CommonInitWindow
        #define SOMGD_CommonInitWindow 1
    #else
        #define _CommonInitWindow ODWindow_CommonInitWindow
    #endif /* _CommonInitWindow */
#endif /* SOMGD_CommonInitWindow */

/*
 * New Method: CreateRootFrame
 */
typedef void   (SOMLINK * somTD_ODWindow_CreateRootFrame)(ODWindow *somSelf, Environment *ev,
		ODType frameType,
		ODTypeToken viewType,
		ODTypeToken presentation);
#define somMD_ODWindow_CreateRootFrame "::ODWindow::CreateRootFrame"
#define ODWindow_CreateRootFrame(somSelf,ev,frameType,viewType,presentation) \
    (SOM_Resolve(somSelf, ODWindow, CreateRootFrame) \
	(somSelf,ev,frameType,viewType,presentation))
#ifndef SOMGD_CreateRootFrame
    #if (defined(_CreateRootFrame) || defined(__CreateRootFrame))
        #undef _CreateRootFrame
        #undef __CreateRootFrame
        #define SOMGD_CreateRootFrame 1
    #else
        #define _CreateRootFrame ODWindow_CreateRootFrame
    #endif /* _CreateRootFrame */
#endif /* SOMGD_CreateRootFrame */

/*
 * New Method: CreateRootFacet
 */
typedef void   (SOMLINK * somTD_ODWindow_CreateRootFacet)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_CreateRootFacet "::ODWindow::CreateRootFacet"
#define ODWindow_CreateRootFacet(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, CreateRootFacet) \
	(somSelf,ev))
#ifndef SOMGD_CreateRootFacet
    #if (defined(_CreateRootFacet) || defined(__CreateRootFacet))
        #undef _CreateRootFacet
        #undef __CreateRootFacet
        #define SOMGD_CreateRootFacet 1
    #else
        #define _CreateRootFacet ODWindow_CreateRootFacet
    #endif /* _CreateRootFacet */
#endif /* SOMGD_CreateRootFacet */

/*
 * New Method: PrepareCanvas
 */
typedef void   (SOMLINK * somTD_ODWindow_PrepareCanvas)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_PrepareCanvas "::ODWindow::PrepareCanvas"
#define ODWindow_PrepareCanvas(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, PrepareCanvas) \
	(somSelf,ev))
#ifndef SOMGD_PrepareCanvas
    #if (defined(_PrepareCanvas) || defined(__PrepareCanvas))
        #undef _PrepareCanvas
        #undef __PrepareCanvas
        #define SOMGD_PrepareCanvas 1
    #else
        #define _PrepareCanvas ODWindow_PrepareCanvas
    #endif /* _PrepareCanvas */
#endif /* SOMGD_PrepareCanvas */

/*
 * New Method: DrawActiveBorder
 */
typedef void   (SOMLINK * somTD_ODWindow_DrawActiveBorder)(ODWindow *somSelf, Environment *ev,
		ODFrame* frame);
#define somMD_ODWindow_DrawActiveBorder "::ODWindow::DrawActiveBorder"
#define ODWindow_DrawActiveBorder(somSelf,ev,frame) \
    (SOM_Resolve(somSelf, ODWindow, DrawActiveBorder) \
	(somSelf,ev,frame))
#ifndef SOMGD_DrawActiveBorder
    #if (defined(_DrawActiveBorder) || defined(__DrawActiveBorder))
        #undef _DrawActiveBorder
        #undef __DrawActiveBorder
        #define SOMGD_DrawActiveBorder 1
    #else
        #define _DrawActiveBorder ODWindow_DrawActiveBorder
    #endif /* _DrawActiveBorder */
#endif /* SOMGD_DrawActiveBorder */

/*
 * New Method: GetProcID
 */
typedef ODSShort   (SOMLINK * somTD_ODWindow_GetProcID)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetProcID "::ODWindow::GetProcID"
#define ODWindow_GetProcID(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetProcID) \
	(somSelf,ev))
#ifndef SOMGD_GetProcID
    #if (defined(_GetProcID) || defined(__GetProcID))
        #undef _GetProcID
        #undef __GetProcID
        #define SOMGD_GetProcID 1
    #else
        #define _GetProcID ODWindow_GetProcID
    #endif /* _GetProcID */
#endif /* SOMGD_GetProcID */

/*
 * New Method: GetWindowBounds
 */
typedef void   (SOMLINK * somTD_ODWindow_GetWindowBounds)(ODWindow *somSelf, Environment *ev,
		RECT* bounds);
#define somMD_ODWindow_GetWindowBounds "::ODWindow::GetWindowBounds"
#define ODWindow_GetWindowBounds(somSelf,ev,bounds) \
    (SOM_Resolve(somSelf, ODWindow, GetWindowBounds) \
	(somSelf,ev,bounds))
#ifndef SOMGD_GetWindowBounds
    #if (defined(_GetWindowBounds) || defined(__GetWindowBounds))
        #undef _GetWindowBounds
        #undef __GetWindowBounds
        #define SOMGD_GetWindowBounds 1
    #else
        #define _GetWindowBounds ODWindow_GetWindowBounds
    #endif /* _GetWindowBounds */
#endif /* SOMGD_GetWindowBounds */

/*
 * New Method: GetRefCon
 */
typedef ODSLong   (SOMLINK * somTD_ODWindow_GetRefCon)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetRefCon "::ODWindow::GetRefCon"
#define ODWindow_GetRefCon(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetRefCon) \
	(somSelf,ev))
#ifndef SOMGD_GetRefCon
    #if (defined(_GetRefCon) || defined(__GetRefCon))
        #undef _GetRefCon
        #undef __GetRefCon
        #define SOMGD_GetRefCon 1
    #else
        #define _GetRefCon ODWindow_GetRefCon
    #endif /* _GetRefCon */
#endif /* SOMGD_GetRefCon */

/*
 * New Method: LinkDocShell
 */
typedef void   (SOMLINK * somTD_ODWindow_LinkDocShell)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_LinkDocShell "::ODWindow::LinkDocShell"
#define ODWindow_LinkDocShell(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, LinkDocShell) \
	(somSelf,ev))
#ifndef SOMGD_LinkDocShell
    #if (defined(_LinkDocShell) || defined(__LinkDocShell))
        #undef _LinkDocShell
        #undef __LinkDocShell
        #define SOMGD_LinkDocShell 1
    #else
        #define _LinkDocShell ODWindow_LinkDocShell
    #endif /* _LinkDocShell */
#endif /* SOMGD_LinkDocShell */

/*
 * New Method: GetRootPart
 */
typedef ODPart*   (SOMLINK * somTD_ODWindow_GetRootPart)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetRootPart "::ODWindow::GetRootPart"
#define ODWindow_GetRootPart(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetRootPart) \
	(somSelf,ev))
#ifndef SOMGD_GetRootPart
    #if (defined(_GetRootPart) || defined(__GetRootPart))
        #undef _GetRootPart
        #undef __GetRootPart
        #define SOMGD_GetRootPart 1
    #else
        #define _GetRootPart ODWindow_GetRootPart
    #endif /* _GetRootPart */
#endif /* SOMGD_GetRootPart */

/*
 * New Method: SetRootPart
 */
typedef void   (SOMLINK * somTD_ODWindow_SetRootPart)(ODWindow *somSelf, Environment *ev,
		ODPart* aPart);
#define somMD_ODWindow_SetRootPart "::ODWindow::SetRootPart"
#define ODWindow_SetRootPart(somSelf,ev,aPart) \
    (SOM_Resolve(somSelf, ODWindow, SetRootPart) \
	(somSelf,ev,aPart))
#ifndef SOMGD_SetRootPart
    #if (defined(_SetRootPart) || defined(__SetRootPart))
        #undef _SetRootPart
        #undef __SetRootPart
        #define SOMGD_SetRootPart 1
    #else
        #define _SetRootPart ODWindow_SetRootPart
    #endif /* _SetRootPart */
#endif /* SOMGD_SetRootPart */

/*
 * New Method: SetRootFrame
 */
typedef void   (SOMLINK * somTD_ODWindow_SetRootFrame)(ODWindow *somSelf, Environment *ev,
		ODFrame* aFrame);
#define somMD_ODWindow_SetRootFrame "::ODWindow::SetRootFrame"
#define ODWindow_SetRootFrame(somSelf,ev,aFrame) \
    (SOM_Resolve(somSelf, ODWindow, SetRootFrame) \
	(somSelf,ev,aFrame))
#ifndef SOMGD_SetRootFrame
    #if (defined(_SetRootFrame) || defined(__SetRootFrame))
        #undef _SetRootFrame
        #undef __SetRootFrame
        #define SOMGD_SetRootFrame 1
    #else
        #define _SetRootFrame ODWindow_SetRootFrame
    #endif /* _SetRootFrame */
#endif /* SOMGD_SetRootFrame */

/*
 * New Method: SetRootFacet
 */
typedef void   (SOMLINK * somTD_ODWindow_SetRootFacet)(ODWindow *somSelf, Environment *ev,
		ODFacet* aFacet);
#define somMD_ODWindow_SetRootFacet "::ODWindow::SetRootFacet"
#define ODWindow_SetRootFacet(somSelf,ev,aFacet) \
    (SOM_Resolve(somSelf, ODWindow, SetRootFacet) \
	(somSelf,ev,aFacet))
#ifndef SOMGD_SetRootFacet
    #if (defined(_SetRootFacet) || defined(__SetRootFacet))
        #undef _SetRootFacet
        #undef __SetRootFacet
        #define SOMGD_SetRootFacet 1
    #else
        #define _SetRootFacet ODWindow_SetRootFacet
    #endif /* _SetRootFacet */
#endif /* SOMGD_SetRootFacet */

/*
 * New Method: GetSession
 */
typedef ODSession*   (SOMLINK * somTD_ODWindow_GetSession)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetSession "::ODWindow::GetSession"
#define ODWindow_GetSession(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetSession) \
	(somSelf,ev))
#ifndef SOMGD_GetSession
    #if (defined(_GetSession) || defined(__GetSession))
        #undef _GetSession
        #undef __GetSession
        #define SOMGD_GetSession 1
    #else
        #define _GetSession ODWindow_GetSession
    #endif /* _GetSession */
#endif /* SOMGD_GetSession */

/*
 * New Method: SetSession
 */
typedef void   (SOMLINK * somTD_ODWindow_SetSession)(ODWindow *somSelf, Environment *ev,
		ODSession* aSession);
#define somMD_ODWindow_SetSession "::ODWindow::SetSession"
#define ODWindow_SetSession(somSelf,ev,aSession) \
    (SOM_Resolve(somSelf, ODWindow, SetSession) \
	(somSelf,ev,aSession))
#ifndef SOMGD_SetSession
    #if (defined(_SetSession) || defined(__SetSession))
        #undef _SetSession
        #undef __SetSession
        #define SOMGD_SetSession 1
    #else
        #define _SetSession ODWindow_SetSession
    #endif /* _SetSession */
#endif /* SOMGD_SetSession */

/*
 * New Method: SetDraft
 */
typedef void   (SOMLINK * somTD_ODWindow_SetDraft)(ODWindow *somSelf, Environment *ev,
		ODDraft* aDraft);
#define somMD_ODWindow_SetDraft "::ODWindow::SetDraft"
#define ODWindow_SetDraft(somSelf,ev,aDraft) \
    (SOM_Resolve(somSelf, ODWindow, SetDraft) \
	(somSelf,ev,aDraft))
#ifndef SOMGD_SetDraft
    #if (defined(_SetDraft) || defined(__SetDraft))
        #undef _SetDraft
        #undef __SetDraft
        #define SOMGD_SetDraft 1
    #else
        #define _SetDraft ODWindow_SetDraft
    #endif /* _SetDraft */
#endif /* SOMGD_SetDraft */

/*
 * New Method: SetPlatformWindow
 */
typedef void   (SOMLINK * somTD_ODWindow_SetPlatformWindow)(ODWindow *somSelf, Environment *ev,
		ODPlatformWindow aWnd);
#define somMD_ODWindow_SetPlatformWindow "::ODWindow::SetPlatformWindow"
#define ODWindow_SetPlatformWindow(somSelf,ev,aWnd) \
    (SOM_Resolve(somSelf, ODWindow, SetPlatformWindow) \
	(somSelf,ev,aWnd))
#ifndef SOMGD_SetPlatformWindow
    #if (defined(_SetPlatformWindow) || defined(__SetPlatformWindow))
        #undef _SetPlatformWindow
        #undef __SetPlatformWindow
        #define SOMGD_SetPlatformWindow 1
    #else
        #define _SetPlatformWindow ODWindow_SetPlatformWindow
    #endif /* _SetPlatformWindow */
#endif /* SOMGD_SetPlatformWindow */

/*
 * New Method: GetArbitrator
 */
typedef ODArbitrator*   (SOMLINK * somTD_ODWindow_GetArbitrator)(ODWindow *somSelf, Environment *ev);
#define somMD_ODWindow_GetArbitrator "::ODWindow::GetArbitrator"
#define ODWindow_GetArbitrator(somSelf,ev) \
    (SOM_Resolve(somSelf, ODWindow, GetArbitrator) \
	(somSelf,ev))
#ifndef SOMGD_GetArbitrator
    #if (defined(_GetArbitrator) || defined(__GetArbitrator))
        #undef _GetArbitrator
        #undef __GetArbitrator
        #define SOMGD_GetArbitrator 1
    #else
        #define _GetArbitrator ODWindow_GetArbitrator
    #endif /* _GetArbitrator */
#endif /* SOMGD_GetArbitrator */

/*
 * New Method: SetArbitrator
 */
typedef void   (SOMLINK * somTD_ODWindow_SetArbitrator)(ODWindow *somSelf, Environment *ev,
		ODArbitrator* anArbitrator);
#define somMD_ODWindow_SetArbitrator "::ODWindow::SetArbitrator"
#define ODWindow_SetArbitrator(somSelf,ev,anArbitrator) \
    (SOM_Resolve(somSelf, ODWindow, SetArbitrator) \
	(somSelf,ev,anArbitrator))
#ifndef SOMGD_SetArbitrator
    #if (defined(_SetArbitrator) || defined(__SetArbitrator))
        #undef _SetArbitrator
        #undef __SetArbitrator
        #define SOMGD_SetArbitrator 1
    #else
        #define _SetArbitrator ODWindow_SetArbitrator
    #endif /* _SetArbitrator */
#endif /* SOMGD_SetArbitrator */

/*
 * New Method: SetIsRootWindow
 */
typedef void   (SOMLINK * somTD_ODWindow_SetIsRootWindow)(ODWindow *somSelf, Environment *ev,
		ODBoolean isRootWindow);
#define somMD_ODWindow_SetIsRootWindow "::ODWindow::SetIsRootWindow"
#define ODWindow_SetIsRootWindow(somSelf,ev,isRootWindow) \
    (SOM_Resolve(somSelf, ODWindow, SetIsRootWindow) \
	(somSelf,ev,isRootWindow))
#ifndef SOMGD_SetIsRootWindow
    #if (defined(_SetIsRootWindow) || defined(__SetIsRootWindow))
        #undef _SetIsRootWindow
        #undef __SetIsRootWindow
        #define SOMGD_SetIsRootWindow 1
    #else
        #define _SetIsRootWindow ODWindow_SetIsRootWindow
    #endif /* _SetIsRootWindow */
#endif /* SOMGD_SetIsRootWindow */

/*
 * New Method: SetIsResizable
 */
typedef void   (SOMLINK * somTD_ODWindow_SetIsResizable)(ODWindow *somSelf, Environment *ev,
		ODBoolean isResizable);
#define somMD_ODWindow_SetIsResizable "::ODWindow::SetIsResizable"
#define ODWindow_SetIsResizable(somSelf,ev,isResizable) \
    (SOM_Resolve(somSelf, ODWindow, SetIsResizable) \
	(somSelf,ev,isResizable))
#ifndef SOMGD_SetIsResizable
    #if (defined(_SetIsResizable) || defined(__SetIsResizable))
        #undef _SetIsResizable
        #undef __SetIsResizable
        #define SOMGD_SetIsResizable 1
    #else
        #define _SetIsResizable ODWindow_SetIsResizable
    #endif /* _SetIsResizable */
#endif /* SOMGD_SetIsResizable */

/*
 * New Method: SetIsFloating
 */
typedef void   (SOMLINK * somTD_ODWindow_SetIsFloating)(ODWindow *somSelf, Environment *ev,
		ODBoolean isFloating);
#define somMD_ODWindow_SetIsFloating "::ODWindow::SetIsFloating"
#define ODWindow_SetIsFloating(somSelf,ev,isFloating) \
    (SOM_Resolve(somSelf, ODWindow, SetIsFloating) \
	(somSelf,ev,isFloating))
#ifndef SOMGD_SetIsFloating
    #if (defined(_SetIsFloating) || defined(__SetIsFloating))
        #undef _SetIsFloating
        #undef __SetIsFloating
        #define SOMGD_SetIsFloating 1
    #else
        #define _SetIsFloating ODWindow_SetIsFloating
    #endif /* _SetIsFloating */
#endif /* SOMGD_SetIsFloating */
#ifndef SOM_DONT_USE_INHERITED_MACROS
#define ODWindow_InitBaseWindow ODBaseWindow_InitBaseWindow
#define ODWindow_InitRefCntObject ODRefCntObject_InitRefCntObject
#define ODWindow_IncrementRefCount ODRefCntObject_IncrementRefCount
#define ODWindow_GetRefCount ODRefCntObject_GetRefCount
#define ODWindow_InitObject ODObject_InitObject
#define ODWindow_IsInitialized ODObject_IsInitialized
#define ODWindow_HasExtension ODObject_HasExtension
#define ODWindow_GetExtension ODObject_GetExtension
#define ODWindow_ReleaseExtension ODObject_ReleaseExtension
#define ODWindow_IsEqualTo ODObject_IsEqualTo
#define ODWindow_SubClassResponsibility ODObject_SubClassResponsibility
#define ODWindow_somDefaultInit SOMObject_somDefaultInit
#define ODWindow_somDestruct SOMObject_somDestruct
#define ODWindow_somDefaultCopyInit SOMObject_somDefaultCopyInit
#define ODWindow_somDefaultAssign SOMObject_somDefaultAssign
#define ODWindow_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
#define ODWindow_somDefaultVCopyInit SOMObject_somDefaultVCopyInit
#define ODWindow_somDefaultConstVCopyInit SOMObject_somDefaultConstVCopyInit
#define ODWindow_somDefaultConstAssign SOMObject_somDefaultConstAssign
#define ODWindow_somDefaultVAssign SOMObject_somDefaultVAssign
#define ODWindow_somDefaultConstVAssign SOMObject_somDefaultConstVAssign
#define ODWindow_somFree SOMObject_somFree
#define ODWindow_somGetClass SOMObject_somGetClass
#define ODWindow_somGetClassName SOMObject_somGetClassName
#define ODWindow_somGetSize SOMObject_somGetSize
#define ODWindow_somIsA SOMObject_somIsA
#define ODWindow_somIsInstanceOf SOMObject_somIsInstanceOf
#define ODWindow_somRespondsTo SOMObject_somRespondsTo
#define ODWindow_somDispatch SOMObject_somDispatch
#define ODWindow_somClassDispatch SOMObject_somClassDispatch
#define ODWindow_somCastObj SOMObject_somCastObj
#define ODWindow_somResetObj SOMObject_somResetObj
#define ODWindow_somDispatchV SOMObject_somDispatchV
#define ODWindow_somDispatchL SOMObject_somDispatchL
#define ODWindow_somDispatchA SOMObject_somDispatchA
#define ODWindow_somDispatchD SOMObject_somDispatchD
#define ODWindow_somPrintSelf SOMObject_somPrintSelf
#define ODWindow_somDumpSelf SOMObject_somDumpSelf
#define ODWindow_somDumpSelfInt SOMObject_somDumpSelfInt
#endif /* SOM_DONT_USE_INHERITED_MACROS */

#endif       /* SOM_ODWindow_h */
