home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
srctrn.zip
/
SRCTRANS.XIH
< prev
Wrap
Text File
|
1994-01-11
|
34KB
|
824 lines
/*
* This file was generated by the SOM Compiler.
* FileName: srctrans.xih.
* Generated using:
* SOM Precompiler spc: 1.22
* SOM Emitter emitxih: Development
*/
/*
*
* Source render drag/drop sample
*
* Author : Andrew Clinch
*
* Disclaimer :
* In no event shall Andrew Clinch be liable for any damages whatsoever
* (including, without limitation, damaged or loss of business profits, business
* interruption, loss of business information, or other pecuniary loss) arising
* out of the use or inability to use this sample code, even if Andrew Clinch
* has been advised of the possibility of such damages.
*
*/
#ifndef srctrans_xih
#define srctrans_xih
#include <somobj.xh>
#include <somcls.xh>
#include <somcm.xh>
/*
* Passthru lines: File: "C.xih", "before"
*/
#define INCL_WIN
#define INCL_DOS
#define INCL_GPIBITMAPS
#define INCL_DOSERRORS
#include <os2.h>
#include <string.h>
#include <stdio.h>
#include <memory.h>
#include <stdlib.h>
#include <setjmp.h>
#define INCL_WPCLASS
#define INCL_WPFOLDER
#include <pmwp.h>
#include "srctrans.ph"
#include "srctrans.xh"
#ifndef SOM_Scope
/*
* -- Set the scope of method functions
*/
#ifdef __cplusplus
#define SOM_Scope extern "C"
#else
#define SOM_Scope extern
#endif
#endif
/*
* Passthru lines: File: "C.xih", "after"
*/
/*
* DRAGSTRUCT: Structure used for object window
*/
typedef struct _DRAGSTRUCT
{
USHORT cb;
SrcTransient *somSelf;
} DRAGSTRUCT;
typedef DRAGSTRUCT *PDRAGSTRUCT;
#ifndef SOM_CurrentClass
#define SOM_CurrentClass SrcTransientCClassData.parentMtab
#endif
#define SrcTransient_MaxNoMethods 0
/*
* -- Instance Data
*/
typedef void SrcTransientData;
/*
* -- Instance Data Access Macros for use in Method Procedures
*/
#ifndef C_TRANSLATION_MACROS
/*
* -- C++-Style Method Macros for use in Method Procedures
*/
#define _wpAddObjectGeneralPage somSelf->wpAddObjectGeneralPage
#define _wpAddObjectWindowPage somSelf->wpAddObjectWindowPage
#define _wpAddSettingsPages somSelf->wpAddSettingsPages
#define _wpAddToObjUseList somSelf->wpAddToObjUseList
#define _wpAllocMem somSelf->wpAllocMem
#define _wpAppendObject somSelf->wpAppendObject
#define _wpAssertObjectMutexSem somSelf->wpAssertObjectMutexSem
#define _wpClose somSelf->wpClose
#define _wpCnrInsertObject somSelf->wpCnrInsertObject
#define _wpCnrRemoveObject somSelf->wpCnrRemoveObject
#define _wpCnrSetEmphasis somSelf->wpCnrSetEmphasis
#define _wpConfirmDelete somSelf->wpConfirmDelete
#define _wpConfirmObjectTitle somSelf->wpConfirmObjectTitle
#define _wpCopiedFromTemplate somSelf->wpCopiedFromTemplate
#define _wpCopyObject somSelf->wpCopyObject
#define _wpCreateAnother somSelf->wpCreateAnother
#define _wpCreateFromTemplate somSelf->wpCreateFromTemplate
#define _wpCreateShadowObject somSelf->wpCreateShadowObject
#define _wpDelete somSelf->wpDelete
#define _wpDeleteFromObjUseList somSelf->wpDeleteFromObjUseList
#define _wpDisplayHelp somSelf->wpDisplayHelp
#define _wpDoesObjectMatch somSelf->wpDoesObjectMatch
#define _wpDraggedOverObject somSelf->wpDraggedOverObject
#define _wpDragOver somSelf->wpDragOver
#define _wpDrop somSelf->wpDrop
#define _wpDroppedOnObject somSelf->wpDroppedOnObject
#define _wpEndConversation somSelf->wpEndConversation
#define _wpFilterPopupMenu somSelf->wpFilterPopupMenu
#define _wpFindUseItem somSelf->wpFindUseItem
#define _wpFree somSelf->wpFree
#define _wpFreeMem somSelf->wpFreeMem
#define _wpHide somSelf->wpHide
#define _wpInitData somSelf->wpInitData
#define _wpInsertPopupMenuItems somSelf->wpInsertPopupMenuItems
#define _wpInsertSettingsPage somSelf->wpInsertSettingsPage
#define _wpMenuItemHelpSelected somSelf->wpMenuItemHelpSelected
#define _wpMenuItemSelected somSelf->wpMenuItemSelected
#define _wpModifyPopupMenu somSelf->wpModifyPopupMenu
#define _wpMoveObject somSelf->wpMoveObject
#define _wpOpen somSelf->wpOpen
#define _wpPrintObject somSelf->wpPrintObject
#define _wpQueryConcurrentView somSelf->wpQueryConcurrentView
#define _wpQueryButtonAppearance somSelf->wpQueryButtonAppearance
#define _wpQueryConfirmations somSelf->wpQueryConfirmations
#define _wpQueryDefaultHelp somSelf->wpQueryDefaultHelp
#define _wpQueryDefaultView somSelf->wpQueryDefaultView
#define _wpQueryDetailsData somSelf->wpQueryDetailsData
#define _wpQueryError somSelf->wpQueryError
#define _wpQueryIcon somSelf->wpQueryIcon
#define _wpQueryIconData somSelf->wpQueryIconData
#define _wpQueryMinWindow somSelf->wpQueryMinWindow
#define _wpQueryNameClashOptions somSelf->wpQueryNameClashOptions
#define _wpQueryStyle somSelf->wpQueryStyle
#define _wpSetTaskRec somSelf->wpSetTaskRec
#define _wpFindTaskRec somSelf->wpFindTaskRec
#define _wpQueryTitle somSelf->wpQueryTitle
#define _wpRegisterView somSelf->wpRegisterView
#define _wpReleaseObjectMutexSem somSelf->wpReleaseObjectMutexSem
#define _wpRender somSelf->wpRender
#define _wpRenderComplete somSelf->wpRenderComplete
#define _wpReplaceObject somSelf->wpReplaceObject
#define _wpRequestObjectMutexSem somSelf->wpRequestObjectMutexSem
#define _wpRestore somSelf->wpRestore
#define _wpRestoreData somSelf->wpRestoreData
#define _wpRestoreLong somSelf->wpRestoreLong
#define _wpRestoreState somSelf->wpRestoreState
#define _wpRestoreString somSelf->wpRestoreString
#define _wpSaveData somSelf->wpSaveData
#define _wpSaveImmediate somSelf->wpSaveImmediate
#define _wpSaveDeferred somSelf->wpSaveDeferred
#define _wpSaveLong somSelf->wpSaveLong
#define _wpSaveState somSelf->wpSaveState
#define _wpSaveString somSelf->wpSaveString
#define _wpScanSetupString somSelf->wpScanSetupString
#define _wpSetConcurrentView somSelf->wpSetConcurrentView
#define _wpSetButtonAppearance somSelf->wpSetButtonAppearance
#define _wpSetDefaultHelp somSelf->wpSetDefaultHelp
#define _wpSetDefaultView somSelf->wpSetDefaultView
#define _wpSetError somSelf->wpSetError
#define _wpSetIcon somSelf->wpSetIcon
#define _wpSetIconData somSelf->wpSetIconData
#define _wpSetMinWindow somSelf->wpSetMinWindow
#define _wpSetStyle somSelf->wpSetStyle
#define _wpModifyStyle somSelf->wpModifyStyle
#define _wpSetTitle somSelf->wpSetTitle
#define _wpSetup somSelf->wpSetup
#define _wpSwitchTo somSelf->wpSwitchTo
#define _wpUnInitData somSelf->wpUnInitData
#define _wpViewObject somSelf->wpViewObject
#define _wpQueryTrueStyle somSelf->wpQueryTrueStyle
#define _wpQueryHandle somSelf->wpQueryHandle
#define _wpUnlockObject somSelf->wpUnlockObject
#define _somFree somSelf->somFree
#define _somGetClass somSelf->somGetClass
#define _somGetClassName somSelf->somGetClassName
#define _somGetSize somSelf->somGetSize
#define _somIsA somSelf->somIsA
#define _somIsInstanceOf somSelf->somIsInstanceOf
#define _somRespondsTo somSelf->somRespondsTo
#define _somDispatchV somSelf->somDispatchV
#define _somDispatchL somSelf->somDispatchL
#define _somDispatchA somSelf->somDispatchA
#define _somDispatchD somSelf->somDispatchD
#define _somPrintSelf somSelf->somPrintSelf
#define _somDumpSelf somSelf->somDumpSelf
#define _wpFormatDragItem somSelf->wpFormatDragItem
#else
/*
* -- Wierd C-Style Method Macros for use in Method Procedures
*/
#define _wpAddObjectGeneralPage(obj,arg1) obj->wpAddObjectGeneralPage(arg1)
#define _wpAddObjectWindowPage(obj,arg1) obj->wpAddObjectWindowPage(arg1)
#define _wpAddSettingsPages(obj,arg1) obj->wpAddSettingsPages(arg1)
#define _wpAddToObjUseList(obj,arg1) obj->wpAddToObjUseList(arg1)
#define _wpAllocMem(obj,arg1,arg2) obj->wpAllocMem(arg1,arg2)
#define _wpAppendObject(obj,arg1,arg2) obj->wpAppendObject(arg1,arg2)
#define _wpAssertObjectMutexSem(obj) obj->wpAssertObjectMutexSem()
#define _wpClose(obj) obj->wpClose()
#define _wpCnrInsertObject(obj,arg1,arg2,arg3,arg4) obj->wpCnrInsertObject(arg1,arg2,arg3,arg4)
#define _wpCnrRemoveObject(obj,arg1) obj->wpCnrRemoveObject(arg1)
#define _wpCnrSetEmphasis(obj,arg1,arg2) obj->wpCnrSetEmphasis(arg1,arg2)
#define _wpConfirmDelete(obj,arg1) obj->wpConfirmDelete(arg1)
#define _wpConfirmObjectTitle(obj,arg1,arg2,arg3,arg4,arg5) obj->wpConfirmObjectTitle(arg1,arg2,arg3,arg4,arg5)
#define _wpCopiedFromTemplate(obj) obj->wpCopiedFromTemplate()
#define _wpCopyObject(obj,arg1,arg2) obj->wpCopyObject(arg1,arg2)
#define _wpCreateAnother(obj,arg1,arg2,arg3) obj->wpCreateAnother(arg1,arg2,arg3)
#define _wpCreateFromTemplate(obj,arg1,arg2) obj->wpCreateFromTemplate(arg1,arg2)
#define _wpCreateShadowObject(obj,arg1,arg2) obj->wpCreateShadowObject(arg1,arg2)
#define _wpDelete(obj,arg1) obj->wpDelete(arg1)
#define _wpDeleteFromObjUseList(obj,arg1) obj->wpDeleteFromObjUseList(arg1)
#define _wpDisplayHelp(obj,arg1,arg2) obj->wpDisplayHelp(arg1,arg2)
#define _wpDoesObjectMatch(obj,arg1) obj->wpDoesObjectMatch(arg1)
#define _wpDraggedOverObject(obj,arg1) obj->wpDraggedOverObject(arg1)
#define _wpDragOver(obj,arg1,arg2) obj->wpDragOver(arg1,arg2)
#define _wpDrop(obj,arg1,arg2,arg3) obj->wpDrop(arg1,arg2,arg3)
#define _wpDroppedOnObject(obj,arg1) obj->wpDroppedOnObject(arg1)
#define _wpEndConversation(obj,arg1,arg2) obj->wpEndConversation(arg1,arg2)
#define _wpFilterPopupMenu(obj,arg1,arg2,arg3) obj->wpFilterPopupMenu(arg1,arg2,arg3)
#define _wpFindUseItem(obj,arg1,arg2) obj->wpFindUseItem(arg1,arg2)
#define _wpFree(obj) obj->wpFree()
#define _wpFreeMem(obj,arg1) obj->wpFreeMem(arg1)
#define _wpHide(obj) obj->wpHide()
#define _wpInitData(obj) obj->wpInitData()
#define _wpInsertPopupMenuItems(obj,arg1,arg2,arg3,arg4,arg5) obj->wpInsertPopupMenuItems(arg1,arg2,arg3,arg4,arg5)
#define _wpInsertSettingsPage(obj,arg1,arg2) obj->wpInsertSettingsPage(arg1,arg2)
#define _wpMenuItemHelpSelected(obj,arg1) obj->wpMenuItemHelpSelected(arg1)
#define _wpMenuItemSelected(obj,arg1,arg2) obj->wpMenuItemSelected(arg1,arg2)
#define _wpModifyPopupMenu(obj,arg1,arg2,arg3) obj->wpModifyPopupMenu(arg1,arg2,arg3)
#define _wpMoveObject(obj,arg1) obj->wpMoveObject(arg1)
#define _wpOpen(obj,arg1,arg2,arg3) obj->wpOpen(arg1,arg2,arg3)
#define _wpPrintObject(obj,arg1,arg2) obj->wpPrintObject(arg1,arg2)
#define _wpQueryConcurrentView(obj) obj->wpQueryConcurrentView()
#define _wpQueryButtonAppearance(obj) obj->wpQueryButtonAppearance()
#define _wpQueryConfirmations(obj) obj->wpQueryConfirmations()
#define _wpQueryDefaultHelp(obj,arg1,arg2) obj->wpQueryDefaultHelp(arg1,arg2)
#define _wpQueryDefaultView(obj) obj->wpQueryDefaultView()
#define _wpQueryDetailsData(obj,arg1,arg2) obj->wpQueryDetailsData(arg1,arg2)
#define _wpQueryError(obj) obj->wpQueryError()
#define _wpQueryIcon(obj) obj->wpQueryIcon()
#define _wpQueryIconData(obj,arg1) obj->wpQueryIconData(arg1)
#define _wpQueryMinWindow(obj) obj->wpQueryMinWindow()
#define _wpQueryNameClashOptions(obj,arg1) obj->wpQueryNameClashOptions(arg1)
#define _wpQueryStyle(obj) obj->wpQueryStyle()
#define _wpSetTaskRec(obj,arg1,arg2) obj->wpSetTaskRec(arg1,arg2)
#define _wpFindTaskRec(obj) obj->wpFindTaskRec()
#define _wpQueryTitle(obj) obj->wpQueryTitle()
#define _wpRegisterView(obj,arg1,arg2) obj->wpRegisterView(arg1,arg2)
#define _wpReleaseObjectMutexSem(obj) obj->wpReleaseObjectMutexSem()
#define _wpRender(obj,arg1) obj->wpRender(arg1)
#define _wpRenderComplete(obj,arg1,arg2) obj->wpRenderComplete(arg1,arg2)
#define _wpReplaceObject(obj,arg1,arg2) obj->wpReplaceObject(arg1,arg2)
#define _wpRequestObjectMutexSem(obj,arg1) obj->wpRequestObjectMutexSem(arg1)
#define _wpRestore(obj) obj->wpRestore()
#define _wpRestoreData(obj,arg1,arg2,arg3,arg4) obj->wpRestoreData(arg1,arg2,arg3,arg4)
#define _wpRestoreLong(obj,arg1,arg2,arg3) obj->wpRestoreLong(arg1,arg2,arg3)
#define _wpRestoreState(obj,arg1) obj->wpRestoreState(arg1)
#define _wpRestoreString(obj,arg1,arg2,arg3,arg4) obj->wpRestoreString(arg1,arg2,arg3,arg4)
#define _wpSaveData(obj,arg1,arg2,arg3,arg4) obj->wpSaveData(arg1,arg2,arg3,arg4)
#define _wpSaveImmediate(obj) obj->wpSaveImmediate()
#define _wpSaveDeferred(obj) obj->wpSaveDeferred()
#define _wpSaveLong(obj,arg1,arg2,arg3) obj->wpSaveLong(arg1,arg2,arg3)
#define _wpSaveState(obj) obj->wpSaveState()
#define _wpSaveString(obj,arg1,arg2,arg3) obj->wpSaveString(arg1,arg2,arg3)
#define _wpScanSetupString(obj,arg1,arg2,arg3,arg4) obj->wpScanSetupString(arg1,arg2,arg3,arg4)
#define _wpSetConcurrentView(obj,arg1) obj->wpSetConcurrentView(arg1)
#define _wpSetButtonAppearance(obj,arg1) obj->wpSetButtonAppearance(arg1)
#define _wpSetDefaultHelp(obj,arg1,arg2) obj->wpSetDefaultHelp(arg1,arg2)
#define _wpSetDefaultView(obj,arg1) obj->wpSetDefaultView(arg1)
#define _wpSetError(obj,arg1) obj->wpSetError(arg1)
#define _wpSetIcon(obj,arg1) obj->wpSetIcon(arg1)
#define _wpSetIconData(obj,arg1) obj->wpSetIconData(arg1)
#define _wpSetMinWindow(obj,arg1) obj->wpSetMinWindow(arg1)
#define _wpSetStyle(obj,arg1) obj->wpSetStyle(arg1)
#define _wpModifyStyle(obj,arg1,arg2) obj->wpModifyStyle(arg1,arg2)
#define _wpSetTitle(obj,arg1) obj->wpSetTitle(arg1)
#define _wpSetup(obj,arg1) obj->wpSetup(arg1)
#define _wpSwitchTo(obj,arg1) obj->wpSwitchTo(arg1)
#define _wpUnInitData(obj) obj->wpUnInitData()
#define _wpViewObject(obj,arg1,arg2,arg3) obj->wpViewObject(arg1,arg2,arg3)
#define _wpQueryTrueStyle(obj) obj->wpQueryTrueStyle()
#define _wpQueryHandle(obj) obj->wpQueryHandle()
#define _wpUnlockObject(obj) obj->wpUnlockObject()
#define _somFree(obj) obj->somFree()
#define _somGetClass(obj) obj->somGetClass()
#define _somGetClassName(obj) obj->somGetClassName()
#define _somGetSize(obj) obj->somGetSize()
#define _somIsA(obj,arg1) obj->somIsA(arg1)
#define _somIsInstanceOf(obj,arg1) obj->somIsInstanceOf(arg1)
#define _somRespondsTo(obj,arg1) obj->somRespondsTo(arg1)
#define _somDispatchV(obj,arg1,arg2,arg3) obj->somDispatchV(arg1,arg2,arg3)
#define _somDispatchL(obj,arg1,arg2,arg3) obj->somDispatchL(arg1,arg2,arg3)
#define _somDispatchA(obj,arg1,arg2,arg3) obj->somDispatchA(arg1,arg2,arg3)
#define _somDispatchD(obj,arg1,arg2,arg3) obj->somDispatchD(arg1,arg2,arg3)
#define _somPrintSelf(obj) obj->somPrintSelf()
#define _somDumpSelf(obj,arg1) obj->somDumpSelf(arg1)
#define _wpFormatDragItem(obj,arg1) obj->wpFormatDragItem(arg1)
#endif
/*
* -- Primary Implementation File Content.
*/
#ifdef SrcTransient_Class_Source
#ifndef M_SrcTransient_Class_Source
#define M_SrcTransient_Class_Source
#endif
/*
* -- Trace/Debug macro
*/
#ifndef SrcTransientMethodDebug
#define SrcTransientMethodDebug(c,m) SOMMethodDebug(c,m)
#endif
/*
* -- Current class macros for Instance and Meta classes.
*/
#undef SOMMeta
#define SOMMeta M_SrcTransientCClassData.parentMtab
#undef SOMInstance
#define SOMInstance SrcTransientCClassData.parentMtab
/*
* -- The SrcTransient ClassData Structure
*/
struct SrcTransientClassDataStructure SrcTransientClassData = {(SOMClass *) NULL};
/*
* -- The auxiliary SrcTransient ClassData structure
*/
SOMEXTERN struct SrcTransientCClassDataStructure {
somMethodTab *parentMtab;
somDToken instanceDataToken;
} SrcTransientCClassData = {(somMethodTab *) NULL};
/*
* -- Apply Stubs for new methods introduced by SrcTransient
*/
/*
* Overridden method: wpFormatDragItem
*/
SOM_Scope BOOL SOMLINK src_wpFormatDragItem(SrcTransient *somSelf,
PDRAGITEM pdrgItem);
#ifndef parent_wpFormatDragItem
static char *somMN_wpFormatDragItem = "wpFormatDragItem";
static somId somId_wpFormatDragItem = &somMN_wpFormatDragItem;
#define parent_wpFormatDragItem(somSelf,pdrgItem) \
((( somTD_WPObject_wpFormatDragItem ) \
somParentResolve(SOM_CurrentClass,WPObjectClassData.wpFormatDragItem)) \
(somSelf,pdrgItem))
#endif
/* ---------------------------------- */
/*
* Class Creation and Initialization
*/
/* a temporary, used during creation */
static somClassDataStructure SrcTransienttempClassData;
/* Initialization for SrcTransient */
static void SrcTransientsomInitializeClass ()
{
((SOMClass *)SrcTransienttempClassData.classObject)->somOverrideSMethod (
somId_wpFormatDragItem,
(somMethodProc *) src_wpFormatDragItem);
}
static void SOMLINK SrcTransientsomCreateClass(SOMClass *pClsObj,
SOMClass *mClsObj)
{
SrcTransienttempClassData.classObject = (SOMClass *)mClsObj->somNew();
SrcTransienttempClassData.classObject->somInitClass (
"SrcTransient",
pClsObj,
0,
SrcTransient_MaxNoMethods,
SrcTransient_MajorVersion,
SrcTransient_MinorVersion);
SrcTransientCClassData.instanceDataToken =
SrcTransienttempClassData.classObject->somGetInstanceToken();
SrcTransientsomInitializeClass();
SrcTransientCClassData.parentMtab =
SrcTransienttempClassData.classObject->somGetPClsMtab();
SrcTransienttempClassData.classObject->somSetClassData((somClassDataStructure *)&SrcTransientClassData);
SrcTransienttempClassData.classObject->somClassReady();
/* make newly created class object visible */
SrcTransientClassData.classObject = SrcTransienttempClassData.classObject;
}
SOMEXTERN SOMClass * SOMLINK SrcTransientNewClass (integer4 scemajorVersion,
integer4 sceminorVersion)
{
SOMClass *pClsObj;
SOMClass *mClsObj;
/* Check the version numbers */
if (((scemajorVersion != 0) &&
(scemajorVersion != SrcTransient_MajorVersion)) ||
((sceminorVersion != 0) &&
(sceminorVersion > SrcTransient_MinorVersion))) {
somPrintf("SrcTransientNewClass: Error, bad version numbers.\n");
SOM_Error(SOMERROR_BadVersion);
}
/* Don't do anything if class object is already created. */
if (SrcTransientClassData.classObject != (SOMClass *) NULL)
return(SrcTransientClassData.classObject);
/* Make sure the environment is initialized. */
if (SOMClassMgrObject == (SOMClassMgr *) NULL) somEnvironmentNew();
if (SOMClassMgrObject == (SOMClassMgr *) NULL)
SOM_Error(SOMERROR_CouldNotStartup);
/* Get the parent class object. */
WPTransientNewClass(1,2); /* static reference */
pClsObj = ((SOMClassMgr *)SOMClassMgrObject)->somFindClass(
SOM_IdFromString("WPTransient"), 1, 2);
if (pClsObj == (SOMClass *) NULL)
SOM_Error(SOMERROR_NoParentClass);
/* Explicit metaclass, so get it */
M_SrcTransientNewClass(0,0); /* static reference */
mClsObj = ((SOMClassMgr *)SOMClassMgrObject)->somFindClass(
SOM_IdFromString("M_SrcTransient"), 0, 0);
if (mClsObj == (SOMClass *) NULL)
SOM_Error(SOMERROR_NoMetaClass);
somConstructClass(SrcTransientsomCreateClass, pClsObj, mClsObj,
&SrcTransienttempClassData);
return (SrcTransientClassData.classObject);
}
#endif /* SrcTransient_Class_Source */
#endif /* srctrans_xih */
/*
* This file was generated by the SOM Compiler.
* FileName: srctrans.xih.
* Generated using:
* SOM Precompiler spc: 1.22
* SOM Emitter emitxih: Development
*/
#ifndef srctrans_mih
#define srctrans_mih
#ifndef SOM_Scope
/*
* -- Set the scope of method functions
*/
#ifdef __cplusplus
#define SOM_Scope extern "C"
#else
#define SOM_Scope extern
#endif
#endif
#ifndef SOM_CurrentClass
#define SOM_CurrentClass M_SrcTransientCClassData.parentMtab
#endif
#define M_SrcTransient_MaxNoMethods 1
/*
* -- Instance Data
*/
typedef void M_SrcTransientData;
/*
* -- Instance Data Access Macros for use in Method Procedures
*/
#ifndef C_TRANSLATION_MACROS
/*
* -- C++-Style Method Macros for use in Method Procedures
*/
#define _wpclsCreateDefaultTemplates somSelf->wpclsCreateDefaultTemplates
#define _wpclsInitData somSelf->wpclsInitData
#define _wpclsMakeAwake somSelf->wpclsMakeAwake
#define _wpclsNew somSelf->wpclsNew
#define _wpclsQueryDefaultHelp somSelf->wpclsQueryDefaultHelp
#define _wpclsQueryDefaultView somSelf->wpclsQueryDefaultView
#define _wpclsQueryDetails somSelf->wpclsQueryDetails
#define _wpclsQueryDetailsInfo somSelf->wpclsQueryDetailsInfo
#define _wpclsQueryExtendedCriteria somSelf->wpclsQueryExtendedCriteria
#define _wpclsQueryFolder somSelf->wpclsQueryFolder
#define _wpclsQueryIcon somSelf->wpclsQueryIcon
#define _wpclsQuerySearchInfo somSelf->wpclsQuerySearchInfo
#define _wpclsQueryStyle somSelf->wpclsQueryStyle
#define _wpclsQueryTitle somSelf->wpclsQueryTitle
#define _wpclsUnInitData somSelf->wpclsUnInitData
#define _wpclsFindObjectFirst somSelf->wpclsFindObjectFirst
#define _wpclsFindObjectNext somSelf->wpclsFindObjectNext
#define _wpclsFindObjectEnd somSelf->wpclsFindObjectEnd
#define _wpclsSetError somSelf->wpclsSetError
#define _wpclsQueryError somSelf->wpclsQueryError
#define _wpclsQuerySettingsPageSize somSelf->wpclsQuerySettingsPageSize
#define _wpclsQueryObject somSelf->wpclsQueryObject
#define _wpclsQueryButtonAppearance somSelf->wpclsQueryButtonAppearance
#define _somAddStaticMethod somSelf->somAddStaticMethod
#define _somClassReady somSelf->somClassReady
#define _somInitClass somSelf->somInitClass
#define _somOverrideSMethod somSelf->somOverrideSMethod
#define _somNew somSelf->somNew
#define _somNewNoInit somSelf->somNewNoInit
#define _somRenew somSelf->somRenew
#define _somRenewNoInit somSelf->somRenewNoInit
#define _somGetApplyStub somSelf->somGetApplyStub
#define _somGetClassData somSelf->somGetClassData
#define _somGetClassMtab somSelf->somGetClassMtab
#define _somGetInstanceToken somSelf->somGetInstanceToken
#define _somGetMemberToken somSelf->somGetMemberToken
#define _somGetInstanceOffset somSelf->somGetInstanceOffset
#define _somGetInstancePartSize somSelf->somGetInstancePartSize
#define _somGetInstanceSize somSelf->somGetInstanceSize
#define _somGetMethodDescriptor somSelf->somGetMethodDescriptor
#define _somGetName somSelf->somGetName
#define _somGetNumMethods somSelf->somGetNumMethods
#define _somGetNumStaticMethods somSelf->somGetNumStaticMethods
#define _somGetParent somSelf->somGetParent
#define _somGetPClsMtab somSelf->somGetPClsMtab
#define _somSetClassData somSelf->somSetClassData
#define _somCheckVersion somSelf->somCheckVersion
#define _somDescendedFrom somSelf->somDescendedFrom
#define _somSupportsMethod somSelf->somSupportsMethod
#define _somFindMethod somSelf->somFindMethod
#define _somFindMethodOk somSelf->somFindMethodOk
#define _somFindSMethod somSelf->somFindSMethod
#define _somFindSMethodOk somSelf->somFindSMethodOk
#define _somInit somSelf->somInit
#define _somUninit somSelf->somUninit
#define _somDumpSelfInt somSelf->somDumpSelfInt
#define _somFree somSelf->somFree
#define _somGetClass somSelf->somGetClass
#define _somGetClassName somSelf->somGetClassName
#define _somGetSize somSelf->somGetSize
#define _somIsA somSelf->somIsA
#define _somIsInstanceOf somSelf->somIsInstanceOf
#define _somRespondsTo somSelf->somRespondsTo
#define _somDispatchV somSelf->somDispatchV
#define _somDispatchL somSelf->somDispatchL
#define _somDispatchA somSelf->somDispatchA
#define _somDispatchD somSelf->somDispatchD
#define _somPrintSelf somSelf->somPrintSelf
#define _somDumpSelf somSelf->somDumpSelf
#define _clsQueryModuleHandle somSelf->clsQueryModuleHandle
#define _wpclsQueryIconData somSelf->wpclsQueryIconData
#else
/*
* -- Wierd C-Style Method Macros for use in Method Procedures
*/
#define _wpclsCreateDefaultTemplates(obj,arg1) obj->wpclsCreateDefaultTemplates(arg1)
#define _wpclsInitData(obj) obj->wpclsInitData()
#define _wpclsMakeAwake(obj,arg1,arg2,arg3,arg4,arg5,arg6) obj->wpclsMakeAwake(arg1,arg2,arg3,arg4,arg5,arg6)
#define _wpclsNew(obj,arg1,arg2,arg3,arg4) obj->wpclsNew(arg1,arg2,arg3,arg4)
#define _wpclsQueryDefaultHelp(obj,arg1,arg2) obj->wpclsQueryDefaultHelp(arg1,arg2)
#define _wpclsQueryDefaultView(obj) obj->wpclsQueryDefaultView()
#define _wpclsQueryDetails(obj) obj->wpclsQueryDetails()
#define _wpclsQueryDetailsInfo(obj,arg1,arg2) obj->wpclsQueryDetailsInfo(arg1,arg2)
#define _wpclsQueryExtendedCriteria(obj,arg1,arg2,arg3) obj->wpclsQueryExtendedCriteria(arg1,arg2,arg3)
#define _wpclsQueryFolder(obj,arg1,arg2) obj->wpclsQueryFolder(arg1,arg2)
#define _wpclsQueryIcon(obj) obj->wpclsQueryIcon()
#define _wpclsQuerySearchInfo(obj,arg1,arg2,arg3) obj->wpclsQuerySearchInfo(arg1,arg2,arg3)
#define _wpclsQueryStyle(obj) obj->wpclsQueryStyle()
#define _wpclsQueryTitle(obj) obj->wpclsQueryTitle()
#define _wpclsUnInitData(obj) obj->wpclsUnInitData()
#define _wpclsFindObjectFirst(obj,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8) obj->wpclsFindObjectFirst(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8)
#define _wpclsFindObjectNext(obj,arg1,arg2,arg3) obj->wpclsFindObjectNext(arg1,arg2,arg3)
#define _wpclsFindObjectEnd(obj,arg1) obj->wpclsFindObjectEnd(arg1)
#define _wpclsSetError(obj,arg1) obj->wpclsSetError(arg1)
#define _wpclsQueryError(obj) obj->wpclsQueryError()
#define _wpclsQuerySettingsPageSize(obj,arg1) obj->wpclsQuerySettingsPageSize(arg1)
#define _wpclsQueryObject(obj,arg1) obj->wpclsQueryObject(arg1)
#define _wpclsQueryButtonAppearance(obj) obj->wpclsQueryButtonAppearance()
#define _somAddStaticMethod(obj,arg1,arg2,arg3,arg4,arg5) obj->somAddStaticMethod(arg1,arg2,arg3,arg4,arg5)
#define _somClassReady(obj) obj->somClassReady()
#define _somInitClass(obj,arg1,arg2,arg3,arg4,arg5,arg6) obj->somInitClass(arg1,arg2,arg3,arg4,arg5,arg6)
#define _somOverrideSMethod(obj,arg1,arg2) obj->somOverrideSMethod(arg1,arg2)
#define _somNew(obj) obj->somNew()
#define _somNewNoInit(obj) obj->somNewNoInit()
#define _somRenew(obj,arg1) obj->somRenew(arg1)
#define _somRenewNoInit(obj,arg1) obj->somRenewNoInit(arg1)
#define _somGetApplyStub(obj,arg1) obj->somGetApplyStub(arg1)
#define _somGetClassData(obj) obj->somGetClassData()
#define _somGetClassMtab(obj) obj->somGetClassMtab()
#define _somGetInstanceToken(obj) obj->somGetInstanceToken()
#define _somGetMemberToken(obj,arg1,arg2) obj->somGetMemberToken(arg1,arg2)
#define _somGetInstanceOffset(obj) obj->somGetInstanceOffset()
#define _somGetInstancePartSize(obj) obj->somGetInstancePartSize()
#define _somGetInstanceSize(obj) obj->somGetInstanceSize()
#define _somGetMethodDescriptor(obj,arg1) obj->somGetMethodDescriptor(arg1)
#define _somGetName(obj) obj->somGetName()
#define _somGetNumMethods(obj) obj->somGetNumMethods()
#define _somGetNumStaticMethods(obj) obj->somGetNumStaticMethods()
#define _somGetParent(obj) obj->somGetParent()
#define _somGetPClsMtab(obj) obj->somGetPClsMtab()
#define _somSetClassData(obj,arg1) obj->somSetClassData(arg1)
#define _somCheckVersion(obj,arg1,arg2) obj->somCheckVersion(arg1,arg2)
#define _somDescendedFrom(obj,arg1) obj->somDescendedFrom(arg1)
#define _somSupportsMethod(obj,arg1) obj->somSupportsMethod(arg1)
#define _somFindMethod(obj,arg1,arg2) obj->somFindMethod(arg1,arg2)
#define _somFindMethodOk(obj,arg1,arg2) obj->somFindMethodOk(arg1,arg2)
#define _somFindSMethod(obj,arg1) obj->somFindSMethod(arg1)
#define _somFindSMethodOk(obj,arg1) obj->somFindSMethodOk(arg1)
#define _somInit(obj) obj->somInit()
#define _somUninit(obj) obj->somUninit()
#define _somDumpSelfInt(obj,arg1) obj->somDumpSelfInt(arg1)
#define _somFree(obj) obj->somFree()
#define _somGetClass(obj) obj->somGetClass()
#define _somGetClassName(obj) obj->somGetClassName()
#define _somGetSize(obj) obj->somGetSize()
#define _somIsA(obj,arg1) obj->somIsA(arg1)
#define _somIsInstanceOf(obj,arg1) obj->somIsInstanceOf(arg1)
#define _somRespondsTo(obj,arg1) obj->somRespondsTo(arg1)
#define _somDispatchV(obj,arg1,arg2,arg3) obj->somDispatchV(arg1,arg2,arg3)
#define _somDispatchL(obj,arg1,arg2,arg3) obj->somDispatchL(arg1,arg2,arg3)
#define _somDispatchA(obj,arg1,arg2,arg3) obj->somDispatchA(arg1,arg2,arg3)
#define _somDispatchD(obj,arg1,arg2,arg3) obj->somDispatchD(arg1,arg2,arg3)
#define _somPrintSelf(obj) obj->somPrintSelf()
#define _somDumpSelf(obj,arg1) obj->somDumpSelf(arg1)
#define _clsQueryModuleHandle(obj) obj->clsQueryModuleHandle()
#define _wpclsQueryIconData(obj,arg1) obj->wpclsQueryIconData(arg1)
#endif
/*
* -- Primary Implementation File Content.
*/
#ifdef M_SrcTransient_Class_Source
/*
* -- Trace/Debug macro
*/
#ifndef M_SrcTransientMethodDebug
#define M_SrcTransientMethodDebug(c,m) SOMMethodDebug(c,m)
#endif
/*
* -- Current class macros for Instance and Meta classes.
*/
/*
* -- The M_SrcTransient ClassData Structure
*/
struct M_SrcTransientClassDataStructure M_SrcTransientClassData = {(SOMClass *) NULL};
/*
* -- The auxiliary M_SrcTransient ClassData structure
*/
SOMEXTERN struct M_SrcTransientCClassDataStructure {
somMethodTab *parentMtab;
somDToken instanceDataToken;
} M_SrcTransientCClassData = {(somMethodTab *) NULL};
/*
* -- Apply Stubs for new methods introduced by M_SrcTransient
*/
static HMODULE SOMLINK somAP_clsQueryModuleHandle(M_SrcTransient *somSelf,
somId __id,
somId __desc,
va_list __ap)
{
(void) __ap; (void) __id; (void) __desc; /* Referenced to prevent warning msg */
return (somSelf->clsQueryModuleHandle());
}
/*
* New Method: clsQueryModuleHandle
*/
SOM_Scope HMODULE SOMLINK srcM_clsQueryModuleHandle(M_SrcTransient *somSelf);
static char *somMN_clsQueryModuleHandle = "clsQueryModuleHandle";
static somId somId_clsQueryModuleHandle = &somMN_clsQueryModuleHandle;
static char *somDS_clsQueryModuleHandle = "----";
static somId somDI_clsQueryModuleHandle = &somDS_clsQueryModuleHandle;
static HMODULE SOMLINK somRD_clsQueryModuleHandle(M_SrcTransient *somSelf)
{
return (HMODULE) somSelf->somDispatchL(somId_clsQueryModuleHandle,
(somSelf->somGetClass())->somGetMethodDescriptor(somId_clsQueryModuleHandle)
);
}
/*
* Overridden method: wpclsQueryIconData
*/
SOM_Scope ULONG SOMLINK srcM_wpclsQueryIconData(M_SrcTransient *somSelf,
PICONINFO pIconInfo);
#ifndef parent_wpclsQueryIconData
static char *somMN_wpclsQueryIconData = "wpclsQueryIconData";
static somId somId_wpclsQueryIconData = &somMN_wpclsQueryIconData;
#define parent_wpclsQueryIconData(somSelf,pIconInfo) \
((( somTD_M_WPObject_wpclsQueryIconData ) \
somParentResolve(SOM_CurrentClass,M_WPObjectClassData.wpclsQueryIconData)) \
(somSelf,pIconInfo))
#endif
/* ---------------------------------- */
/*
* Class Creation and Initialization
*/
/* a temporary, used during creation */
static somClassDataStructure M_SrcTransienttempClassData;
/* Initialization for M_SrcTransient */
static void M_SrcTransientsomInitializeClass ()
{
M_SrcTransientClassData.clsQueryModuleHandle =
((SOMClass *)M_SrcTransienttempClassData.classObject)->somAddStaticMethod (
somId_clsQueryModuleHandle,
somDI_clsQueryModuleHandle,
(somMethodProc *) srcM_clsQueryModuleHandle,
(somMethodProc *) somRD_clsQueryModuleHandle,
(somMethodProc *) somAP_clsQueryModuleHandle );
((SOMClass *)M_SrcTransienttempClassData.classObject)->somOverrideSMethod (
somId_wpclsQueryIconData,
(somMethodProc *) srcM_wpclsQueryIconData);
}
static void SOMLINK M_SrcTransientsomCreateClass(SOMClass *pClsObj,
SOMClass *mClsObj)
{
M_SrcTransienttempClassData.classObject = (SOMClass *)mClsObj->somNew();
M_SrcTransienttempClassData.classObject->somInitClass (
"M_SrcTransient",
pClsObj,
0,
M_SrcTransient_MaxNoMethods,
M_SrcTransient_MajorVersion,
M_SrcTransient_MinorVersion);
M_SrcTransientCClassData.instanceDataToken =
M_SrcTransienttempClassData.classObject->somGetInstanceToken();
M_SrcTransientsomInitializeClass();
M_SrcTransientCClassData.parentMtab =
M_SrcTransienttempClassData.classObject->somGetPClsMtab();
M_SrcTransienttempClassData.classObject->somSetClassData((somClassDataStructure *)&M_SrcTransientClassData);
M_SrcTransienttempClassData.classObject->somClassReady();
/* make newly created class object visible */
M_SrcTransientClassData.classObject = M_SrcTransienttempClassData.classObject;
}
SOMEXTERN SOMClass * SOMLINK M_SrcTransientNewClass (integer4 scemajorVersion,
integer4 sceminorVersion)
{
SOMClass *pClsObj;
SOMClass *mClsObj;
/* Check the version numbers */
if (((scemajorVersion != 0) &&
(scemajorVersion != M_SrcTransient_MajorVersion)) ||
((sceminorVersion != 0) &&
(sceminorVersion > M_SrcTransient_MinorVersion))) {
somPrintf("M_SrcTransientNewClass: Error, bad version numbers.\n");
SOM_Error(SOMERROR_BadVersion);
}
/* Don't do anything if class object is already created. */
if (M_SrcTransientClassData.classObject != (SOMClass *) NULL)
return(M_SrcTransientClassData.classObject);
/* Make sure the environment is initialized. */
if (SOMClassMgrObject == (SOMClassMgr *) NULL) somEnvironmentNew();
if (SOMClassMgrObject == (SOMClassMgr *) NULL)
SOM_Error(SOMERROR_CouldNotStartup);
/* Get the parent class object. */
M_WPTransientNewClass(1,2); /* static reference */
pClsObj = ((SOMClassMgr *)SOMClassMgrObject)->somFindClass(
SOM_IdFromString("M_WPTransient"), 1, 2);
if (pClsObj == (SOMClass *) NULL)
SOM_Error(SOMERROR_NoParentClass);
/* Use parent's metaclass */
mClsObj = pClsObj->somGetClass();
somConstructClass(M_SrcTransientsomCreateClass, pClsObj, mClsObj,
&M_SrcTransienttempClassData);
return (M_SrcTransientClassData.classObject);
}
#endif /* M_SrcTransient_Class_Source */
#endif /* srctrans_mih */