home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / wpentk.zip / WBPENTK4.DSK / IDMOBJ.H < prev    next >
C/C++ Source or Header  |  1994-10-07  |  59KB  |  1,474 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: ..\..\pentkt\h\idmobj.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.7
  7.  *     SOM Emitter emith: 2.22
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *   idmobj.idl
  13.  * 
  14.  *   CLASS: IDMObject
  15.  * 
  16.  *   CLASS HIERARCHY:
  17.  * 
  18.  *      SOMObject
  19.  *        └── IDMObject
  20.  * 
  21.  *   DESCRIPTION:
  22.  * 
  23.  *      Input Data Management class.
  24.  * 
  25.  */
  26.  
  27.  
  28. #ifndef SOM_IDMObject_h
  29. #define SOM_IDMObject_h
  30.  
  31.  
  32. #include <som.h>
  33.  
  34. /*
  35.  * -- This emitter treats Method Tokens as Thunks by default
  36.  * -- Use the sc modifier "nothunks" to change this default
  37.  */
  38. #undef somresolve_
  39. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  40.  
  41. /*
  42.  * Define the class name as an object type
  43.  */
  44. #ifndef IDMObject
  45. #define IDMObject SOMObject
  46. #endif
  47. #include <somobj.h>
  48.  
  49. /*
  50.  * Start of user-defined types:
  51.  */
  52. #ifndef SOMClass
  53.     #define SOMClass SOMObject
  54. #endif /* SOMClass */
  55. #ifndef SOMObject
  56.     #define SOMObject SOMObject
  57. #endif /* SOMObject */
  58. #ifndef IDODoodle
  59.     #define IDODoodle SOMObject
  60. #endif /* IDODoodle */
  61. #define ex_IDMObject_IDM_PROB "::IDMObject::IDM_PROB"
  62. typedef
  63. struct IDMObject_IDM_PROB {
  64. ULONG ulErrorCode;
  65. } IDMObject_IDM_PROB;
  66.  
  67. #ifndef SOM_DONT_USE_SHORT_NAMES
  68. #ifndef SOMTGD_ex_IDM_PROB
  69.     #ifdef ex_IDM_PROB
  70.         #undef ex_IDM_PROB
  71.         #define SOMTGD_ex_IDM_PROB 1
  72.     #else
  73.         #define ex_IDM_PROB ex_IDMObject_IDM_PROB
  74.     #endif /* ex_IDM_PROB */
  75. #endif /* SOMTGD_ex_IDM_PROB */
  76. #ifndef SOMTGD_IDM_PROB
  77.     #ifdef IDM_PROB
  78.         #undef IDM_PROB
  79.         #define SOMTGD_IDM_PROB 1
  80.     #else
  81.         #define IDM_PROB IDMObject_IDM_PROB
  82.     #endif /* IDM_PROB */
  83. #endif /* SOMTGD_IDM_PROB */
  84. #endif /* SOM_DONT_USE_SHORT_NAMES */
  85.  
  86. /*
  87.  * End of user-defined types.
  88.  */
  89.  
  90. /*
  91.  * Passthru lines: File: "C.h", "after"
  92.  */
  93.  
  94.  
  95. #include <idmdef.h>
  96. #include <idmerror.h>
  97. #include <idmres.h>
  98. #include <idmcoll.h>
  99. #include <idmreco.h>
  100. #include <idmgest.h>
  101. #include <idmtext.h>
  102. #include <idmmixed.h>
  103. #include <idrtext.h>
  104.  
  105. /* Results structure in mp2 of WM_RESULT */
  106. typedef struct                             
  107. {                                          
  108.    ULONG ulResultType;                     
  109.    union                                   
  110.    {                                       
  111.       PSZ           pszText;               
  112.       PRECODATA     pRecoData;             
  113.       IDODoodle *   objDoodle;             
  114.    } Data;                                 
  115.    ULONG ulAltResultType;                  
  116.    union                                   
  117.    {                                       
  118.       PSZ        pszText;                  
  119.       PRECODATA  pRecoData;                
  120.    } AltData;                              
  121. } IDM_RESULTDATA;                          
  122.  typedef IDM_RESULTDATA *PIDM_RESULTDATA;  
  123.  
  124. /* Result type defines. */                 
  125. #define RES_NULL           0x00000000      
  126. #define RES_TEXT           0x00000001      
  127. #define RES_GESTURE        0x00000002      
  128. #define RES_STROKE         0x00000004      
  129.  
  130. /****************************************************************************/
  131. /* IDM_RECTLIST is an array of exclude rectangles used by IDM and specified */
  132. /* specified in the IDMCTLDATA structure using the idmSetCtlData method     */
  133. /****************************************************************************/
  134.                                                                                        
  135.  typedef struct                                                                        
  136.  {                                                                                     
  137.    ULONG  ulRectlCnt;          /* Number of rectangles in list      */                 
  138.    RECTL  RectList[1];         /* Array of exclude rectangles       */                 
  139.  } IDM_RECTLIST;                                                                       
  140.  typedef IDM_RECTLIST *PIDM_RECTLIST; 
  141.                                                                                        
  142.                                                                                        
  143. /****************************************************************************/
  144. /* IDM_TDNDATA structure is returned in mp2 of the IDM_NOTIFY message when  */
  145. /* the notification message is IDM_TOUCHDOWN                                */
  146. /****************************************************************************/
  147.                                                                                        
  148.  typedef struct                                                                        
  149.  {                                                                                     
  150.    SOMObject       *idmObject;       /* IDM object pointer                */           
  151.    POINTS          ptsPointerPos;    /* Pointer position.                 */           
  152.    PWRTEVENTDATA   pedEventData;     /* Pointer to event data             */           
  153.  } IDM_TDNDATA;                                                                        
  154.  typedef IDM_TDNDATA *PIDM_TDNDATA;                                                    
  155.                                                                                        
  156.                                                                                        
  157.  /***************************************************************************/         
  158.  /* IDMCTLDATA structure used to set IDM parameters using the idmSetCtlData */         
  159.  /* method                                                                  */         
  160.  /***************************************************************************/         
  161.                                                                                        
  162.  typedef struct                                                                        
  163.  {                                                                                     
  164.    ULONG    cbSize;            /* size of IDMCTLDATA structure      */                 
  165.    HWND     hwndOwner;         /* window to send results to         */                 
  166.    ULONG    ulInkingStyle;     /* system inking or ink to window PS */                 
  167.    HPS      hps;               /* presentation space to ink into    */                 
  168.    ULONG    ulStrokeType;      /* ink stroke or eraser stroke       */                 
  169.    LONG     lInkColor;         /* ink color index                   */                 
  170.    LONG     lBackColor;        /* Background color index value      */                 
  171.    FIXED    ulInkWidth;        /* ink width color index             */                 
  172.    LONG     lLineType;         /* cosmetic line-type attribute      */                 
  173.    LONG     lInkMix;           /* determines the ink color mix mode */                 
  174.    HPOINTER hProximityPtr;     /* in proximity, not writing         */                 
  175.    HPOINTER hWritingPtr;       /* in proximity, writing             */                 
  176.    HBITMAP  hbmpBackBitmap;    /* Background Bitmap                 */                 
  177.    ULONG    ulAuxData;         /* Auxiliary data to be retrieved    */                 
  178.    ULONG    ulIDMOp;           /* indicates IDM operation desired   */                 
  179.    IDODoodle doodleObject;    /* initialize IDM with doodle        */                  
  180.    ULONG    ulDoodlePrePr;     /* pre-processing of input doodle    */                 
  181.    PIDR_INKMETRICS pInkMetrics; /* segmentation mode and metrics   */                  
  182.    ULONG    ulRecoTrigger;     /* events that start recognition     */                 
  183.    RECTL    rclInclude;        /* valid touchdown region            */                 
  184.    PIDM_RECTLIST pRectList;    /* invalid touchdown regions         */                 
  185.    HWORD    hWordList;         /* wordlist handle                   */                 
  186.    ULONG    ulWLCoercion;      /* degree of wordlist influence      */                 
  187.    PIDR_SYMSET pSymSet;        /* list of valid symbols             */                 
  188.    ULONG    ulSymSetPrio;      /* give specified subsets priority   */                 
  189.    ULONG    ulDictCoer;        /* degree of dictionary influence    */                 
  190.    ULONG    ulTextSpecLM;      /* text-specific language modeling   */                 
  191.    ULONG    ulMaxResults;      /* max # of results engine returns   */                 
  192.    ULONG    ulNotifyFlags;     /* request notification messages     */                 
  193.    ULONG    ulTapFlags;        /* Process taps                      */                 
  194.    ULONG    ulUser1;           /* User-defined field 1              */                 
  195.    ULONG    ulUser2;           /* User defined field 2              */                 
  196.  } IDMCTLDATA;                                                                         
  197.  typedef IDMCTLDATA *PIDMCTLDATA,                                                      
  198.                    **PPIDMCTLDATA;                                                     
  199.  
  200.  
  201.  
  202. #define IDMObject_MajorVersion 0
  203. #define IDMObject_MinorVersion 0
  204.  
  205. /*
  206.  * External name shortening if required
  207.  */
  208. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  209. #define IDMObjectNewClass c
  210. #pragma linkage(c, system)
  211. #define IDMObjectClassData d
  212. #define IDMObjectCClassData x
  213. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  214. /*--------------Migration------------*/
  215. #define IDMObject_classObj IDMObjectClassData.classObject
  216. #define _IDMObject IDMObject_classObj
  217.  
  218. /*
  219.  * Declare the class creation procedure
  220.  */
  221. SOMEXTERN SOMClass * SOMLINK IDMObjectNewClass(integer4 somtmajorVersion,
  222.         integer4 somtminorVersion);
  223. #pragma linkage(IDMObjectNewClass, system)
  224.  
  225. /*
  226.  * Declare the class data structure
  227.  */
  228. SOMEXTERN struct IDMObjectClassDataStructure {
  229.     SOMAny *classObject;
  230.     somMToken idmSetCtlData;
  231.     somMToken idmStart;
  232.     somMToken idmStop;
  233.     somMToken idmInputComplete;
  234.     somMToken idmGetRecoTrigger;
  235.     somMToken idmSetRecoTrigger;
  236.     somMToken idmGetOwner;
  237.     somMToken idmSetOwner;
  238.     somMToken idmGetHps;
  239.     somMToken idmSetHps;
  240.     somMToken idmGetInkColor;
  241.     somMToken idmSetInkColor;
  242.     somMToken idmGetInkWidth;
  243.     somMToken idmSetInkWidth;
  244.     somMToken idmGetLineType;
  245.     somMToken idmSetLineType;
  246.     somMToken idmGetInkMix;
  247.     somMToken idmSetInkMix;
  248.     somMToken idmGetInkingStyle;
  249.     somMToken idmSetInkingStyle;
  250.     somMToken idmGetBackColor;
  251.     somMToken idmSetBackColor;
  252.     somMToken idmPaintDoodle;
  253.     somMToken idmGetSymbolSubset;
  254.     somMToken idmSetSymbolSubset;
  255.     somMToken idmGetIDMOp;
  256.     somMToken idmSetIDMOp;
  257.     somMToken idmGetMetrics;
  258.     somMToken idmSetMetrics;
  259.     somMToken idmGetDictionaryLangModel;
  260.     somMToken idmSetDictionaryLangModel;
  261.     somMToken idmGetDictCoer;
  262.     somMToken idmSetDictCoer;
  263.     somMToken idmGetTextSpecLM;
  264.     somMToken idmSetTextSpecLM;
  265.     somMToken idmGetMaxResults;
  266.     somMToken idmSetMaxResults;
  267.     somMToken idmGetDoodle;
  268.     somMToken idmSetDoodle;
  269.     somMToken idmGetNotifyFlags;
  270.     somMToken idmSetNotifyFlags;
  271.     somMToken idmGetProximityPtr;
  272.     somMToken idmSetProximityPtr;
  273.     somMToken idmGetWritingPtr;
  274.     somMToken idmSetWritingPtr;
  275.     somMToken idmGetErasingPtr;
  276.     somMToken idmSetErasingPtr;
  277.     somMToken idmInitNow;
  278.     somMToken idmSetTrainString;
  279.     somMToken idmInitObjects;
  280.     somMToken idmInitInking;
  281.     somMToken idmGetHwndClient;
  282.     somMToken idmSetHwndClient;
  283.     somMToken idmClearHwndClient;
  284.     somMToken idmChangeState;
  285.     somMToken idmSendOwner;
  286.     somMToken idmPostOwner;
  287.     somMToken idmDoRecoTrigger;
  288.     somMToken idmGetInker;
  289.     somMToken idmGetState;
  290.     somMToken idmGetCollectorObjForBeta;
  291.     somMToken idmPutCollectorObjForBeta;
  292.     somMToken idmGetCollectorObject;
  293.     somMToken idmIDRResult;
  294.     somMToken idmWMTouchdown;
  295.     somMToken idmWMLiftoff;
  296.     somMToken idmWMMouseMove;
  297.     somMToken idmWMWritingMode;
  298.     somMToken idmWMDestroy;
  299.     somMToken idmWMStroke;
  300.     somMToken idmWMExitProximity;
  301.     somMToken idmWMExitWindow;
  302.     somMToken idmWMEnterWindow;
  303.     somMToken idmWMPauseTimeout;
  304.     somMToken idmWMWritingCancelled;
  305.     somMToken idmWMWritingTimeout;
  306.     somMToken idmWMFocusChange;
  307.     somMToken idmIGetDoodleObj;
  308.     somMToken idmIQueryDoodleObj;
  309.     somMToken idmGetGestureObject;
  310.     somMToken idmQueryGestureObject;
  311.     somMToken idmGetResultObject;
  312.     somMToken idmSendCollectResult;
  313.     somMToken idmSendMixedResult;
  314.     somMToken idmSendTextResult;
  315.     somMToken idmSendGestureResult;
  316.     somMToken idmSendMixedResultNoReco;
  317.     somMToken idmSendTextResultNoReco;
  318.     somMToken idmSendGestureResultNoReco;
  319.     somMToken idmSendCollectResultNoStrokes;
  320.     somMToken idmInitNowForCmpat;
  321.     somMToken idmGetGestureObjectForCmpat;
  322.     somMToken idmFreeAllResources;
  323.     somMToken idmGetFreePending;
  324.     somMToken idmPerformPendingFree;
  325.     somMToken idmGetTrainStrings;
  326.     somMToken idmGetTrainingLevel;
  327.     somMToken idmGetHwndTD;
  328.     somMToken idmSetHwndTD;
  329.     somMToken idmGetSaveIDMOp;
  330.     somMToken idmSetSaveIDMOp;
  331.     somMToken idmGetTapFlags;
  332.     somMToken idmSetTapFlags;
  333.     somMToken idmRemoveResultObjectFromPool;
  334.     somMToken idmPutResultObjectInPool;
  335.     somMToken idmExitCollectState;
  336.     somMToken idmExitRecoState;
  337. } IDMObjectClassData;
  338.  
  339. /*
  340.  * Declare the C specific class data structure
  341.  */
  342. SOMEXTERN struct IDMObjectCClassDataStructure {
  343.     somMethodTabs parentMtab;
  344.     somDToken instanceDataToken;
  345. } IDMObjectCClassData;
  346.  
  347. /*
  348.  * New and Renew macros for IDMObject
  349.  */
  350. #define IDMObjectNew() \
  351.     ( IDMObjectClassData.classObject \
  352.         ? (_somNew(IDMObjectClassData.classObject)) \
  353.         : ( IDMObjectNewClass(IDMObject_MajorVersion, IDMObject_MinorVersion), (_somNew(IDMObjectClassData.classObject)) ) )
  354. #define IDMObjectRenew(buf) \
  355.     ( _somRenew(IDMObjectClassData.classObject, buf) )
  356.  
  357. /*
  358.  * Override method: somInit
  359.  */
  360. #define IDMObject_somInit(somSelf) \
  361.     SOMObject_somInit(somSelf)
  362.  
  363. /*
  364.  * Override method: somUninit
  365.  */
  366. #define IDMObject_somUninit(somSelf) \
  367.     SOMObject_somUninit(somSelf)
  368.  
  369. /*
  370.  * Override method: somFree
  371.  */
  372. #define IDMObject_somFree(somSelf) \
  373.     SOMObject_somFree(somSelf)
  374.  
  375. /*
  376.  * New Method: idmStart
  377.  */
  378. typedef void   SOMLINK somTP_IDMObject_idmStart(IDMObject *somSelf, Environment *ev);
  379. #pragma linkage(somTP_IDMObject_idmStart, system)
  380. typedef somTP_IDMObject_idmStart *somTD_IDMObject_idmStart;
  381. #define somMD_IDMObject_idmStart "::IDMObject::idmStart"
  382. #define IDMObject_idmStart(somSelf,ev) \
  383.     (SOM_Resolve(somSelf, IDMObject, idmStart) \
  384.     (somSelf,ev))
  385. #ifndef SOMGD_idmStart
  386.     #if (defined(_idmStart) || defined(__idmStart))
  387.         #undef _idmStart
  388.         #undef __idmStart
  389.         #define SOMGD_idmStart 1
  390.     #else
  391.         #define _idmStart IDMObject_idmStart
  392.     #endif /* _idmStart */
  393. #endif /* SOMGD_idmStart */
  394.  
  395. /*
  396.  * New Method: idmStop
  397.  */
  398. typedef void   SOMLINK somTP_IDMObject_idmStop(IDMObject *somSelf, Environment *ev,
  399.         ULONG ulStopIndicator);
  400. #pragma linkage(somTP_IDMObject_idmStop, system)
  401. typedef somTP_IDMObject_idmStop *somTD_IDMObject_idmStop;
  402. #define somMD_IDMObject_idmStop "::IDMObject::idmStop"
  403. #define IDMObject_idmStop(somSelf,ev,ulStopIndicator) \
  404.     (SOM_Resolve(somSelf, IDMObject, idmStop) \
  405.     (somSelf,ev,ulStopIndicator))
  406. #ifndef SOMGD_idmStop
  407.     #if (defined(_idmStop) || defined(__idmStop))
  408.         #undef _idmStop
  409.         #undef __idmStop
  410.         #define SOMGD_idmStop 1
  411.     #else
  412.         #define _idmStop IDMObject_idmStop
  413.     #endif /* _idmStop */
  414. #endif /* SOMGD_idmStop */
  415.  
  416. /*
  417.  * New Method: idmInputComplete
  418.  */
  419. typedef void   SOMLINK somTP_IDMObject_idmInputComplete(IDMObject *somSelf, Environment *ev);
  420. #pragma linkage(somTP_IDMObject_idmInputComplete, system)
  421. typedef somTP_IDMObject_idmInputComplete *somTD_IDMObject_idmInputComplete;
  422. #define somMD_IDMObject_idmInputComplete "::IDMObject::idmInputComplete"
  423. #define IDMObject_idmInputComplete(somSelf,ev) \
  424.     (SOM_Resolve(somSelf, IDMObject, idmInputComplete) \
  425.     (somSelf,ev))
  426. #ifndef SOMGD_idmInputComplete
  427.     #if (defined(_idmInputComplete) || defined(__idmInputComplete))
  428.         #undef _idmInputComplete
  429.         #undef __idmInputComplete
  430.         #define SOMGD_idmInputComplete 1
  431.     #else
  432.         #define _idmInputComplete IDMObject_idmInputComplete
  433.     #endif /* _idmInputComplete */
  434. #endif /* SOMGD_idmInputComplete */
  435.  
  436. /*
  437.  * New Method: idmSetCtlData
  438.  */
  439. typedef void   SOMLINK somTP_IDMObject_idmSetCtlData(IDMObject *somSelf, Environment *ev,
  440.         PVOID pIDMCtlData);
  441. #pragma linkage(somTP_IDMObject_idmSetCtlData, system)
  442. typedef somTP_IDMObject_idmSetCtlData *somTD_IDMObject_idmSetCtlData;
  443. #define somMD_IDMObject_idmSetCtlData "::IDMObject::idmSetCtlData"
  444. #define IDMObject_idmSetCtlData(somSelf,ev,pIDMCtlData) \
  445.     (SOM_Resolve(somSelf, IDMObject, idmSetCtlData) \
  446.     (somSelf,ev,pIDMCtlData))
  447. #ifndef SOMGD_idmSetCtlData
  448.     #if (defined(_idmSetCtlData) || defined(__idmSetCtlData))
  449.         #undef _idmSetCtlData
  450.         #undef __idmSetCtlData
  451.         #define SOMGD_idmSetCtlData 1
  452.     #else
  453.         #define _idmSetCtlData IDMObject_idmSetCtlData
  454.     #endif /* _idmSetCtlData */
  455. #endif /* SOMGD_idmSetCtlData */
  456.  
  457. /*
  458.  * New Method: idmInitNow
  459.  */
  460. typedef void   SOMLINK somTP_IDMObject_idmInitNow(IDMObject *somSelf, Environment *ev);
  461. #pragma linkage(somTP_IDMObject_idmInitNow, system)
  462. typedef somTP_IDMObject_idmInitNow *somTD_IDMObject_idmInitNow;
  463. #define somMD_IDMObject_idmInitNow "::IDMObject::idmInitNow"
  464. #define IDMObject_idmInitNow(somSelf,ev) \
  465.     (SOM_Resolve(somSelf, IDMObject, idmInitNow) \
  466.     (somSelf,ev))
  467. #ifndef SOMGD_idmInitNow
  468.     #if (defined(_idmInitNow) || defined(__idmInitNow))
  469.         #undef _idmInitNow
  470.         #undef __idmInitNow
  471.         #define SOMGD_idmInitNow 1
  472.     #else
  473.         #define _idmInitNow IDMObject_idmInitNow
  474.     #endif /* _idmInitNow */
  475. #endif /* SOMGD_idmInitNow */
  476.  
  477. /*
  478.  * New Method: idmGetOwner
  479.  */
  480. typedef HWND   SOMLINK somTP_IDMObject_idmGetOwner(IDMObject *somSelf, Environment *ev);
  481. #pragma linkage(somTP_IDMObject_idmGetOwner, system)
  482. typedef somTP_IDMObject_idmGetOwner *somTD_IDMObject_idmGetOwner;
  483. #define somMD_IDMObject_idmGetOwner "::IDMObject::idmGetOwner"
  484. #define IDMObject_idmGetOwner(somSelf,ev) \
  485.     (SOM_Resolve(somSelf, IDMObject, idmGetOwner) \
  486.     (somSelf,ev))
  487. #ifndef SOMGD_idmGetOwner
  488.     #if (defined(_idmGetOwner) || defined(__idmGetOwner))
  489.         #undef _idmGetOwner
  490.         #undef __idmGetOwner
  491.         #define SOMGD_idmGetOwner 1
  492.     #else
  493.         #define _idmGetOwner IDMObject_idmGetOwner
  494.     #endif /* _idmGetOwner */
  495. #endif /* SOMGD_idmGetOwner */
  496.  
  497. /*
  498.  * New Method: idmSetOwner
  499.  */
  500. typedef void   SOMLINK somTP_IDMObject_idmSetOwner(IDMObject *somSelf, Environment *ev,
  501.         HWND hOwner);
  502. #pragma linkage(somTP_IDMObject_idmSetOwner, system)
  503. typedef somTP_IDMObject_idmSetOwner *somTD_IDMObject_idmSetOwner;
  504. #define somMD_IDMObject_idmSetOwner "::IDMObject::idmSetOwner"
  505. #define IDMObject_idmSetOwner(somSelf,ev,hOwner) \
  506.     (SOM_Resolve(somSelf, IDMObject, idmSetOwner) \
  507.     (somSelf,ev,hOwner))
  508. #ifndef SOMGD_idmSetOwner
  509.     #if (defined(_idmSetOwner) || defined(__idmSetOwner))
  510.         #undef _idmSetOwner
  511.         #undef __idmSetOwner
  512.         #define SOMGD_idmSetOwner 1
  513.     #else
  514.         #define _idmSetOwner IDMObject_idmSetOwner
  515.     #endif /* _idmSetOwner */
  516. #endif /* SOMGD_idmSetOwner */
  517.  
  518. /*
  519.  * New Method: idmGetInkingStyle
  520.  */
  521. typedef ULONG   SOMLINK somTP_IDMObject_idmGetInkingStyle(IDMObject *somSelf, Environment *ev);
  522. #pragma linkage(somTP_IDMObject_idmGetInkingStyle, system)
  523. typedef somTP_IDMObject_idmGetInkingStyle *somTD_IDMObject_idmGetInkingStyle;
  524. #define somMD_IDMObject_idmGetInkingStyle "::IDMObject::idmGetInkingStyle"
  525. #define IDMObject_idmGetInkingStyle(somSelf,ev) \
  526.     (SOM_Resolve(somSelf, IDMObject, idmGetInkingStyle) \
  527.     (somSelf,ev))
  528. #ifndef SOMGD_idmGetInkingStyle
  529.     #if (defined(_idmGetInkingStyle) || defined(__idmGetInkingStyle))
  530.         #undef _idmGetInkingStyle
  531.         #undef __idmGetInkingStyle
  532.         #define SOMGD_idmGetInkingStyle 1
  533.     #else
  534.         #define _idmGetInkingStyle IDMObject_idmGetInkingStyle
  535.     #endif /* _idmGetInkingStyle */
  536. #endif /* SOMGD_idmGetInkingStyle */
  537.  
  538. /*
  539.  * New Method: idmSetInkingStyle
  540.  */
  541. typedef void   SOMLINK somTP_IDMObject_idmSetInkingStyle(IDMObject *somSelf, Environment *ev,
  542.         ULONG ulInkingStyle);
  543. #pragma linkage(somTP_IDMObject_idmSetInkingStyle, system)
  544. typedef somTP_IDMObject_idmSetInkingStyle *somTD_IDMObject_idmSetInkingStyle;
  545. #define somMD_IDMObject_idmSetInkingStyle "::IDMObject::idmSetInkingStyle"
  546. #define IDMObject_idmSetInkingStyle(somSelf,ev,ulInkingStyle) \
  547.     (SOM_Resolve(somSelf, IDMObject, idmSetInkingStyle) \
  548.     (somSelf,ev,ulInkingStyle))
  549. #ifndef SOMGD_idmSetInkingStyle
  550.     #if (defined(_idmSetInkingStyle) || defined(__idmSetInkingStyle))
  551.         #undef _idmSetInkingStyle
  552.         #undef __idmSetInkingStyle
  553.         #define SOMGD_idmSetInkingStyle 1
  554.     #else
  555.         #define _idmSetInkingStyle IDMObject_idmSetInkingStyle
  556.     #endif /* _idmSetInkingStyle */
  557. #endif /* SOMGD_idmSetInkingStyle */
  558.  
  559. /*
  560.  * New Method: idmGetHps
  561.  */
  562. typedef HPS   SOMLINK somTP_IDMObject_idmGetHps(IDMObject *somSelf, Environment *ev);
  563. #pragma linkage(somTP_IDMObject_idmGetHps, system)
  564. typedef somTP_IDMObject_idmGetHps *somTD_IDMObject_idmGetHps;
  565. #define somMD_IDMObject_idmGetHps "::IDMObject::idmGetHps"
  566. #define IDMObject_idmGetHps(somSelf,ev) \
  567.     (SOM_Resolve(somSelf, IDMObject, idmGetHps) \
  568.     (somSelf,ev))
  569. #ifndef SOMGD_idmGetHps
  570.     #if (defined(_idmGetHps) || defined(__idmGetHps))
  571.         #undef _idmGetHps
  572.         #undef __idmGetHps
  573.         #define SOMGD_idmGetHps 1
  574.     #else
  575.         #define _idmGetHps IDMObject_idmGetHps
  576.     #endif /* _idmGetHps */
  577. #endif /* SOMGD_idmGetHps */
  578.  
  579. /*
  580.  * New Method: idmSetHps
  581.  */
  582. typedef void   SOMLINK somTP_IDMObject_idmSetHps(IDMObject *somSelf, Environment *ev,
  583.         HPS hps);
  584. #pragma linkage(somTP_IDMObject_idmSetHps, system)
  585. typedef somTP_IDMObject_idmSetHps *somTD_IDMObject_idmSetHps;
  586. #define somMD_IDMObject_idmSetHps "::IDMObject::idmSetHps"
  587. #define IDMObject_idmSetHps(somSelf,ev,hps) \
  588.     (SOM_Resolve(somSelf, IDMObject, idmSetHps) \
  589.     (somSelf,ev,hps))
  590. #ifndef SOMGD_idmSetHps
  591.     #if (defined(_idmSetHps) || defined(__idmSetHps))
  592.         #undef _idmSetHps
  593.         #undef __idmSetHps
  594.         #define SOMGD_idmSetHps 1
  595.     #else
  596.         #define _idmSetHps IDMObject_idmSetHps
  597.     #endif /* _idmSetHps */
  598. #endif /* SOMGD_idmSetHps */
  599.  
  600. /*
  601.  * New Method: idmGetInkColor
  602.  */
  603. typedef long   SOMLINK somTP_IDMObject_idmGetInkColor(IDMObject *somSelf, Environment *ev);
  604. #pragma linkage(somTP_IDMObject_idmGetInkColor, system)
  605. typedef somTP_IDMObject_idmGetInkColor *somTD_IDMObject_idmGetInkColor;
  606. #define somMD_IDMObject_idmGetInkColor "::IDMObject::idmGetInkColor"
  607. #define IDMObject_idmGetInkColor(somSelf,ev) \
  608.     (SOM_Resolve(somSelf, IDMObject, idmGetInkColor) \
  609.     (somSelf,ev))
  610. #ifndef SOMGD_idmGetInkColor
  611.     #if (defined(_idmGetInkColor) || defined(__idmGetInkColor))
  612.         #undef _idmGetInkColor
  613.         #undef __idmGetInkColor
  614.         #define SOMGD_idmGetInkColor 1
  615.     #else
  616.         #define _idmGetInkColor IDMObject_idmGetInkColor
  617.     #endif /* _idmGetInkColor */
  618. #endif /* SOMGD_idmGetInkColor */
  619.  
  620. /*
  621.  * New Method: idmSetInkColor
  622.  */
  623. typedef void   SOMLINK somTP_IDMObject_idmSetInkColor(IDMObject *somSelf, Environment *ev,
  624.         long lInkColor);
  625. #pragma linkage(somTP_IDMObject_idmSetInkColor, system)
  626. typedef somTP_IDMObject_idmSetInkColor *somTD_IDMObject_idmSetInkColor;
  627. #define somMD_IDMObject_idmSetInkColor "::IDMObject::idmSetInkColor"
  628. #define IDMObject_idmSetInkColor(somSelf,ev,lInkColor) \
  629.     (SOM_Resolve(somSelf, IDMObject, idmSetInkColor) \
  630.     (somSelf,ev,lInkColor))
  631. #ifndef SOMGD_idmSetInkColor
  632.     #if (defined(_idmSetInkColor) || defined(__idmSetInkColor))
  633.         #undef _idmSetInkColor
  634.         #undef __idmSetInkColor
  635.         #define SOMGD_idmSetInkColor 1
  636.     #else
  637.         #define _idmSetInkColor IDMObject_idmSetInkColor
  638.     #endif /* _idmSetInkColor */
  639. #endif /* SOMGD_idmSetInkColor */
  640.  
  641. /*
  642.  * New Method: idmGetBackColor
  643.  */
  644. typedef long   SOMLINK somTP_IDMObject_idmGetBackColor(IDMObject *somSelf, Environment *ev);
  645. #pragma linkage(somTP_IDMObject_idmGetBackColor, system)
  646. typedef somTP_IDMObject_idmGetBackColor *somTD_IDMObject_idmGetBackColor;
  647. #define somMD_IDMObject_idmGetBackColor "::IDMObject::idmGetBackColor"
  648. #define IDMObject_idmGetBackColor(somSelf,ev) \
  649.     (SOM_Resolve(somSelf, IDMObject, idmGetBackColor) \
  650.     (somSelf,ev))
  651. #ifndef SOMGD_idmGetBackColor
  652.     #if (defined(_idmGetBackColor) || defined(__idmGetBackColor))
  653.         #undef _idmGetBackColor
  654.         #undef __idmGetBackColor
  655.         #define SOMGD_idmGetBackColor 1
  656.     #else
  657.         #define _idmGetBackColor IDMObject_idmGetBackColor
  658.     #endif /* _idmGetBackColor */
  659. #endif /* SOMGD_idmGetBackColor */
  660.  
  661. /*
  662.  * New Method: idmSetBackColor
  663.  */
  664. typedef void   SOMLINK somTP_IDMObject_idmSetBackColor(IDMObject *somSelf, Environment *ev,
  665.         long lBackColor);
  666. #pragma linkage(somTP_IDMObject_idmSetBackColor, system)
  667. typedef somTP_IDMObject_idmSetBackColor *somTD_IDMObject_idmSetBackColor;
  668. #define somMD_IDMObject_idmSetBackColor "::IDMObject::idmSetBackColor"
  669. #define IDMObject_idmSetBackColor(somSelf,ev,lBackColor) \
  670.     (SOM_Resolve(somSelf, IDMObject, idmSetBackColor) \
  671.     (somSelf,ev,lBackColor))
  672. #ifndef SOMGD_idmSetBackColor
  673.     #if (defined(_idmSetBackColor) || defined(__idmSetBackColor))
  674.         #undef _idmSetBackColor
  675.         #undef __idmSetBackColor
  676.         #define SOMGD_idmSetBackColor 1
  677.     #else
  678.         #define _idmSetBackColor IDMObject_idmSetBackColor
  679.     #endif /* _idmSetBackColor */
  680. #endif /* SOMGD_idmSetBackColor */
  681.  
  682. /*
  683.  * New Method: idmGetInkWidth
  684.  */
  685. typedef FIXED   SOMLINK somTP_IDMObject_idmGetInkWidth(IDMObject *somSelf, Environment *ev);
  686. #pragma linkage(somTP_IDMObject_idmGetInkWidth, system)
  687. typedef somTP_IDMObject_idmGetInkWidth *somTD_IDMObject_idmGetInkWidth;
  688. #define somMD_IDMObject_idmGetInkWidth "::IDMObject::idmGetInkWidth"
  689. #define IDMObject_idmGetInkWidth(somSelf,ev) \
  690.     (SOM_Resolve(somSelf, IDMObject, idmGetInkWidth) \
  691.     (somSelf,ev))
  692. #ifndef SOMGD_idmGetInkWidth
  693.     #if (defined(_idmGetInkWidth) || defined(__idmGetInkWidth))
  694.         #undef _idmGetInkWidth
  695.         #undef __idmGetInkWidth
  696.         #define SOMGD_idmGetInkWidth 1
  697.     #else
  698.         #define _idmGetInkWidth IDMObject_idmGetInkWidth
  699.     #endif /* _idmGetInkWidth */
  700. #endif /* SOMGD_idmGetInkWidth */
  701.  
  702. /*
  703.  * New Method: idmSetInkWidth
  704.  */
  705. typedef void   SOMLINK somTP_IDMObject_idmSetInkWidth(IDMObject *somSelf, Environment *ev,
  706.         FIXED ulInkWidth);
  707. #pragma linkage(somTP_IDMObject_idmSetInkWidth, system)
  708. typedef somTP_IDMObject_idmSetInkWidth *somTD_IDMObject_idmSetInkWidth;
  709. #define somMD_IDMObject_idmSetInkWidth "::IDMObject::idmSetInkWidth"
  710. #define IDMObject_idmSetInkWidth(somSelf,ev,ulInkWidth) \
  711.     (SOM_Resolve(somSelf, IDMObject, idmSetInkWidth) \
  712.     (somSelf,ev,ulInkWidth))
  713. #ifndef SOMGD_idmSetInkWidth
  714.     #if (defined(_idmSetInkWidth) || defined(__idmSetInkWidth))
  715.         #undef _idmSetInkWidth
  716.         #undef __idmSetInkWidth
  717.         #define SOMGD_idmSetInkWidth 1
  718.     #else
  719.         #define _idmSetInkWidth IDMObject_idmSetInkWidth
  720.     #endif /* _idmSetInkWidth */
  721. #endif /* SOMGD_idmSetInkWidth */
  722.  
  723. /*
  724.  * New Method: idmGetLineType
  725.  */
  726. typedef long   SOMLINK somTP_IDMObject_idmGetLineType(IDMObject *somSelf, Environment *ev);
  727. #pragma linkage(somTP_IDMObject_idmGetLineType, system)
  728. typedef somTP_IDMObject_idmGetLineType *somTD_IDMObject_idmGetLineType;
  729. #define somMD_IDMObject_idmGetLineType "::IDMObject::idmGetLineType"
  730. #define IDMObject_idmGetLineType(somSelf,ev) \
  731.     (SOM_Resolve(somSelf, IDMObject, idmGetLineType) \
  732.     (somSelf,ev))
  733. #ifndef SOMGD_idmGetLineType
  734.     #if (defined(_idmGetLineType) || defined(__idmGetLineType))
  735.         #undef _idmGetLineType
  736.         #undef __idmGetLineType
  737.         #define SOMGD_idmGetLineType 1
  738.     #else
  739.         #define _idmGetLineType IDMObject_idmGetLineType
  740.     #endif /* _idmGetLineType */
  741. #endif /* SOMGD_idmGetLineType */
  742.  
  743. /*
  744.  * New Method: idmSetLineType
  745.  */
  746. typedef void   SOMLINK somTP_IDMObject_idmSetLineType(IDMObject *somSelf, Environment *ev,
  747.         long lLineType);
  748. #pragma linkage(somTP_IDMObject_idmSetLineType, system)
  749. typedef somTP_IDMObject_idmSetLineType *somTD_IDMObject_idmSetLineType;
  750. #define somMD_IDMObject_idmSetLineType "::IDMObject::idmSetLineType"
  751. #define IDMObject_idmSetLineType(somSelf,ev,lLineType) \
  752.     (SOM_Resolve(somSelf, IDMObject, idmSetLineType) \
  753.     (somSelf,ev,lLineType))
  754. #ifndef SOMGD_idmSetLineType
  755.     #if (defined(_idmSetLineType) || defined(__idmSetLineType))
  756.         #undef _idmSetLineType
  757.         #undef __idmSetLineType
  758.         #define SOMGD_idmSetLineType 1
  759.     #else
  760.         #define _idmSetLineType IDMObject_idmSetLineType
  761.     #endif /* _idmSetLineType */
  762. #endif /* SOMGD_idmSetLineType */
  763.  
  764. /*
  765.  * New Method: idmGetInkMix
  766.  */
  767. typedef long   SOMLINK somTP_IDMObject_idmGetInkMix(IDMObject *somSelf, Environment *ev);
  768. #pragma linkage(somTP_IDMObject_idmGetInkMix, system)
  769. typedef somTP_IDMObject_idmGetInkMix *somTD_IDMObject_idmGetInkMix;
  770. #define somMD_IDMObject_idmGetInkMix "::IDMObject::idmGetInkMix"
  771. #define IDMObject_idmGetInkMix(somSelf,ev) \
  772.     (SOM_Resolve(somSelf, IDMObject, idmGetInkMix) \
  773.     (somSelf,ev))
  774. #ifndef SOMGD_idmGetInkMix
  775.     #if (defined(_idmGetInkMix) || defined(__idmGetInkMix))
  776.         #undef _idmGetInkMix
  777.         #undef __idmGetInkMix
  778.         #define SOMGD_idmGetInkMix 1
  779.     #else
  780.         #define _idmGetInkMix IDMObject_idmGetInkMix
  781.     #endif /* _idmGetInkMix */
  782. #endif /* SOMGD_idmGetInkMix */
  783.  
  784. /*
  785.  * New Method: idmPaintDoodle
  786.  */
  787. typedef void   SOMLINK somTP_IDMObject_idmPaintDoodle(IDMObject *somSelf, Environment *ev,
  788.         PRECTL pInvalidRect);
  789. #pragma linkage(somTP_IDMObject_idmPaintDoodle, system)
  790. typedef somTP_IDMObject_idmPaintDoodle *somTD_IDMObject_idmPaintDoodle;
  791. #define somMD_IDMObject_idmPaintDoodle "::IDMObject::idmPaintDoodle"
  792. #define IDMObject_idmPaintDoodle(somSelf,ev,pInvalidRect) \
  793.     (SOM_Resolve(somSelf, IDMObject, idmPaintDoodle) \
  794.     (somSelf,ev,pInvalidRect))
  795. #ifndef SOMGD_idmPaintDoodle
  796.     #if (defined(_idmPaintDoodle) || defined(__idmPaintDoodle))
  797.         #undef _idmPaintDoodle
  798.         #undef __idmPaintDoodle
  799.         #define SOMGD_idmPaintDoodle 1
  800.     #else
  801.         #define _idmPaintDoodle IDMObject_idmPaintDoodle
  802.     #endif /* _idmPaintDoodle */
  803. #endif /* SOMGD_idmPaintDoodle */
  804.  
  805. /*
  806.  * New Method: idmSetInkMix
  807.  */
  808. typedef void   SOMLINK somTP_IDMObject_idmSetInkMix(IDMObject *somSelf, Environment *ev,
  809.         long lInkMix);
  810. #pragma linkage(somTP_IDMObject_idmSetInkMix, system)
  811. typedef somTP_IDMObject_idmSetInkMix *somTD_IDMObject_idmSetInkMix;
  812. #define somMD_IDMObject_idmSetInkMix "::IDMObject::idmSetInkMix"
  813. #define IDMObject_idmSetInkMix(somSelf,ev,lInkMix) \
  814.     (SOM_Resolve(somSelf, IDMObject, idmSetInkMix) \
  815.     (somSelf,ev,lInkMix))
  816. #ifndef SOMGD_idmSetInkMix
  817.     #if (defined(_idmSetInkMix) || defined(__idmSetInkMix))
  818.         #undef _idmSetInkMix
  819.         #undef __idmSetInkMix
  820.         #define SOMGD_idmSetInkMix 1
  821.     #else
  822.         #define _idmSetInkMix IDMObject_idmSetInkMix
  823.     #endif /* _idmSetInkMix */
  824. #endif /* SOMGD_idmSetInkMix */
  825.  
  826. /*
  827.  * New Method: idmGetIDMOp
  828.  */
  829. typedef ULONG   SOMLINK somTP_IDMObject_idmGetIDMOp(IDMObject *somSelf, Environment *ev);
  830. #pragma linkage(somTP_IDMObject_idmGetIDMOp, system)
  831. typedef somTP_IDMObject_idmGetIDMOp *somTD_IDMObject_idmGetIDMOp;
  832. #define somMD_IDMObject_idmGetIDMOp "::IDMObject::idmGetIDMOp"
  833. #define IDMObject_idmGetIDMOp(somSelf,ev) \
  834.     (SOM_Resolve(somSelf, IDMObject, idmGetIDMOp) \
  835.     (somSelf,ev))
  836. #ifndef SOMGD_idmGetIDMOp
  837.     #if (defined(_idmGetIDMOp) || defined(__idmGetIDMOp))
  838.         #undef _idmGetIDMOp
  839.         #undef __idmGetIDMOp
  840.         #define SOMGD_idmGetIDMOp 1
  841.     #else
  842.         #define _idmGetIDMOp IDMObject_idmGetIDMOp
  843.     #endif /* _idmGetIDMOp */
  844. #endif /* SOMGD_idmGetIDMOp */
  845.  
  846. /*
  847.  * New Method: idmSetIDMOp
  848.  */
  849. typedef void   SOMLINK somTP_IDMObject_idmSetIDMOp(IDMObject *somSelf, Environment *ev,
  850.         ULONG ulIDMOp);
  851. #pragma linkage(somTP_IDMObject_idmSetIDMOp, system)
  852. typedef somTP_IDMObject_idmSetIDMOp *somTD_IDMObject_idmSetIDMOp;
  853. #define somMD_IDMObject_idmSetIDMOp "::IDMObject::idmSetIDMOp"
  854. #define IDMObject_idmSetIDMOp(somSelf,ev,ulIDMOp) \
  855.     (SOM_Resolve(somSelf, IDMObject, idmSetIDMOp) \
  856.     (somSelf,ev,ulIDMOp))
  857. #ifndef SOMGD_idmSetIDMOp
  858.     #if (defined(_idmSetIDMOp) || defined(__idmSetIDMOp))
  859.         #undef _idmSetIDMOp
  860.         #undef __idmSetIDMOp
  861.         #define SOMGD_idmSetIDMOp 1
  862.     #else
  863.         #define _idmSetIDMOp IDMObject_idmSetIDMOp
  864.     #endif /* _idmSetIDMOp */
  865. #endif /* SOMGD_idmSetIDMOp */
  866.  
  867. /*
  868.  * New Method: idmGetDoodle
  869.  */
  870. typedef IDODoodle*   SOMLINK somTP_IDMObject_idmGetDoodle(IDMObject *somSelf, Environment *ev,
  871.         ULONG ulOptions);
  872. #pragma linkage(somTP_IDMObject_idmGetDoodle, system)
  873. typedef somTP_IDMObject_idmGetDoodle *somTD_IDMObject_idmGetDoodle;
  874. #define somMD_IDMObject_idmGetDoodle "::IDMObject::idmGetDoodle"
  875. #define IDMObject_idmGetDoodle(somSelf,ev,ulOptions) \
  876.     (SOM_Resolve(somSelf, IDMObject, idmGetDoodle) \
  877.     (somSelf,ev,ulOptions))
  878. #ifndef SOMGD_idmGetDoodle
  879.     #if (defined(_idmGetDoodle) || defined(__idmGetDoodle))
  880.         #undef _idmGetDoodle
  881.         #undef __idmGetDoodle
  882.         #define SOMGD_idmGetDoodle 1
  883.     #else
  884.         #define _idmGetDoodle IDMObject_idmGetDoodle
  885.     #endif /* _idmGetDoodle */
  886. #endif /* SOMGD_idmGetDoodle */
  887.  
  888. /*
  889.  * New Method: idmSetDoodle
  890.  */
  891. typedef void   SOMLINK somTP_IDMObject_idmSetDoodle(IDMObject *somSelf, Environment *ev,
  892.         IDODoodle* doodleObject,
  893.         ULONG ulDoodlePrePr);
  894. #pragma linkage(somTP_IDMObject_idmSetDoodle, system)
  895. typedef somTP_IDMObject_idmSetDoodle *somTD_IDMObject_idmSetDoodle;
  896. #define somMD_IDMObject_idmSetDoodle "::IDMObject::idmSetDoodle"
  897. #define IDMObject_idmSetDoodle(somSelf,ev,doodleObject,ulDoodlePrePr) \
  898.     (SOM_Resolve(somSelf, IDMObject, idmSetDoodle) \
  899.     (somSelf,ev,doodleObject,ulDoodlePrePr))
  900. #ifndef SOMGD_idmSetDoodle
  901.     #if (defined(_idmSetDoodle) || defined(__idmSetDoodle))
  902.         #undef _idmSetDoodle
  903.         #undef __idmSetDoodle
  904.         #define SOMGD_idmSetDoodle 1
  905.     #else
  906.         #define _idmSetDoodle IDMObject_idmSetDoodle
  907.     #endif /* _idmSetDoodle */
  908. #endif /* SOMGD_idmSetDoodle */
  909.  
  910. /*
  911.  * New Method: idmGetMetrics
  912.  */
  913. typedef void   SOMLINK somTP_IDMObject_idmGetMetrics(IDMObject *somSelf, Environment *ev,
  914.         PIDR_INKMETRICS pInkMetrics);
  915. #pragma linkage(somTP_IDMObject_idmGetMetrics, system)
  916. typedef somTP_IDMObject_idmGetMetrics *somTD_IDMObject_idmGetMetrics;
  917. #define somMD_IDMObject_idmGetMetrics "::IDMObject::idmGetMetrics"
  918. #define IDMObject_idmGetMetrics(somSelf,ev,pInkMetrics) \
  919.     (SOM_Resolve(somSelf, IDMObject, idmGetMetrics) \
  920.     (somSelf,ev,pInkMetrics))
  921. #ifndef SOMGD_idmGetMetrics
  922.     #if (defined(_idmGetMetrics) || defined(__idmGetMetrics))
  923.         #undef _idmGetMetrics
  924.         #undef __idmGetMetrics
  925.         #define SOMGD_idmGetMetrics 1
  926.     #else
  927.         #define _idmGetMetrics IDMObject_idmGetMetrics
  928.     #endif /* _idmGetMetrics */
  929. #endif /* SOMGD_idmGetMetrics */
  930.  
  931. /*
  932.  * New Method: idmSetMetrics
  933.  */
  934. typedef void   SOMLINK somTP_IDMObject_idmSetMetrics(IDMObject *somSelf, Environment *ev,
  935.         PIDR_INKMETRICS pInkMetrics);
  936. #pragma linkage(somTP_IDMObject_idmSetMetrics, system)
  937. typedef somTP_IDMObject_idmSetMetrics *somTD_IDMObject_idmSetMetrics;
  938. #define somMD_IDMObject_idmSetMetrics "::IDMObject::idmSetMetrics"
  939. #define IDMObject_idmSetMetrics(somSelf,ev,pInkMetrics) \
  940.     (SOM_Resolve(somSelf, IDMObject, idmSetMetrics) \
  941.     (somSelf,ev,pInkMetrics))
  942. #ifndef SOMGD_idmSetMetrics
  943.     #if (defined(_idmSetMetrics) || defined(__idmSetMetrics))
  944.         #undef _idmSetMetrics
  945.         #undef __idmSetMetrics
  946.         #define SOMGD_idmSetMetrics 1
  947.     #else
  948.         #define _idmSetMetrics IDMObject_idmSetMetrics
  949.     #endif /* _idmSetMetrics */
  950. #endif /* SOMGD_idmSetMetrics */
  951.  
  952. /*
  953.  * New Method: idmGetRecoTrigger
  954.  */
  955. typedef ULONG   SOMLINK somTP_IDMObject_idmGetRecoTrigger(IDMObject *somSelf, Environment *ev);
  956. #pragma linkage(somTP_IDMObject_idmGetRecoTrigger, system)
  957. typedef somTP_IDMObject_idmGetRecoTrigger *somTD_IDMObject_idmGetRecoTrigger;
  958. #define somMD_IDMObject_idmGetRecoTrigger "::IDMObject::idmGetRecoTrigger"
  959. #define IDMObject_idmGetRecoTrigger(somSelf,ev) \
  960.     (SOM_Resolve(somSelf, IDMObject, idmGetRecoTrigger) \
  961.     (somSelf,ev))
  962. #ifndef SOMGD_idmGetRecoTrigger
  963.     #if (defined(_idmGetRecoTrigger) || defined(__idmGetRecoTrigger))
  964.         #undef _idmGetRecoTrigger
  965.         #undef __idmGetRecoTrigger
  966.         #define SOMGD_idmGetRecoTrigger 1
  967.     #else
  968.         #define _idmGetRecoTrigger IDMObject_idmGetRecoTrigger
  969.     #endif /* _idmGetRecoTrigger */
  970. #endif /* SOMGD_idmGetRecoTrigger */
  971.  
  972. /*
  973.  * New Method: idmSetRecoTrigger
  974.  */
  975. typedef void   SOMLINK somTP_IDMObject_idmSetRecoTrigger(IDMObject *somSelf, Environment *ev,
  976.         ULONG ulRecoTrigger);
  977. #pragma linkage(somTP_IDMObject_idmSetRecoTrigger, system)
  978. typedef somTP_IDMObject_idmSetRecoTrigger *somTD_IDMObject_idmSetRecoTrigger;
  979. #define somMD_IDMObject_idmSetRecoTrigger "::IDMObject::idmSetRecoTrigger"
  980. #define IDMObject_idmSetRecoTrigger(somSelf,ev,ulRecoTrigger) \
  981.     (SOM_Resolve(somSelf, IDMObject, idmSetRecoTrigger) \
  982.     (somSelf,ev,ulRecoTrigger))
  983. #ifndef SOMGD_idmSetRecoTrigger
  984.     #if (defined(_idmSetRecoTrigger) || defined(__idmSetRecoTrigger))
  985.         #undef _idmSetRecoTrigger
  986.         #undef __idmSetRecoTrigger
  987.         #define SOMGD_idmSetRecoTrigger 1
  988.     #else
  989.         #define _idmSetRecoTrigger IDMObject_idmSetRecoTrigger
  990.     #endif /* _idmSetRecoTrigger */
  991. #endif /* SOMGD_idmSetRecoTrigger */
  992.  
  993. /*
  994.  * New Method: idmGetSymbolSubset
  995.  */
  996. typedef void   SOMLINK somTP_IDMObject_idmGetSymbolSubset(IDMObject *somSelf, Environment *ev,
  997.         PIDR_SYMSET pSymSet,
  998.         PULONG pulSize);
  999. #pragma linkage(somTP_IDMObject_idmGetSymbolSubset, system)
  1000. typedef somTP_IDMObject_idmGetSymbolSubset *somTD_IDMObject_idmGetSymbolSubset;
  1001. #define somMD_IDMObject_idmGetSymbolSubset "::IDMObject::idmGetSymbolSubset"
  1002. #define IDMObject_idmGetSymbolSubset(somSelf,ev,pSymSet,pulSize) \
  1003.     (SOM_Resolve(somSelf, IDMObject, idmGetSymbolSubset) \
  1004.     (somSelf,ev,pSymSet,pulSize))
  1005. #ifndef SOMGD_idmGetSymbolSubset
  1006.     #if (defined(_idmGetSymbolSubset) || defined(__idmGetSymbolSubset))
  1007.         #undef _idmGetSymbolSubset
  1008.         #undef __idmGetSymbolSubset
  1009.         #define SOMGD_idmGetSymbolSubset 1
  1010.     #else
  1011.         #define _idmGetSymbolSubset IDMObject_idmGetSymbolSubset
  1012.     #endif /* _idmGetSymbolSubset */
  1013. #endif /* SOMGD_idmGetSymbolSubset */
  1014.  
  1015. /*
  1016.  * New Method: idmSetSymbolSubset
  1017.  */
  1018. typedef void   SOMLINK somTP_IDMObject_idmSetSymbolSubset(IDMObject *somSelf, Environment *ev,
  1019.         PIDR_SYMSET pSymSet);
  1020. #pragma linkage(somTP_IDMObject_idmSetSymbolSubset, system)
  1021. typedef somTP_IDMObject_idmSetSymbolSubset *somTD_IDMObject_idmSetSymbolSubset;
  1022. #define somMD_IDMObject_idmSetSymbolSubset "::IDMObject::idmSetSymbolSubset"
  1023. #define IDMObject_idmSetSymbolSubset(somSelf,ev,pSymSet) \
  1024.     (SOM_Resolve(somSelf, IDMObject, idmSetSymbolSubset) \
  1025.     (somSelf,ev,pSymSet))
  1026. #ifndef SOMGD_idmSetSymbolSubset
  1027.     #if (defined(_idmSetSymbolSubset) || defined(__idmSetSymbolSubset))
  1028.         #undef _idmSetSymbolSubset
  1029.         #undef __idmSetSymbolSubset
  1030.         #define SOMGD_idmSetSymbolSubset 1
  1031.     #else
  1032.         #define _idmSetSymbolSubset IDMObject_idmSetSymbolSubset
  1033.     #endif /* _idmSetSymbolSubset */
  1034. #endif /* SOMGD_idmSetSymbolSubset */
  1035.  
  1036. /*
  1037.  * New Method: idmGetDictionaryLangModel
  1038.  */
  1039. typedef void   SOMLINK somTP_IDMObject_idmGetDictionaryLangModel(IDMObject *somSelf, Environment *ev,
  1040.         PULONG pulCoercion,
  1041.         PULONG pulDomSpecUse);
  1042. #pragma linkage(somTP_IDMObject_idmGetDictionaryLangModel, system)
  1043. typedef somTP_IDMObject_idmGetDictionaryLangModel *somTD_IDMObject_idmGetDictionaryLangModel;
  1044. #define somMD_IDMObject_idmGetDictionaryLangModel "::IDMObject::idmGetDictionaryLangModel"
  1045. #define IDMObject_idmGetDictionaryLangModel(somSelf,ev,pulCoercion,pulDomSpecUse) \
  1046.     (SOM_Resolve(somSelf, IDMObject, idmGetDictionaryLangModel) \
  1047.     (somSelf,ev,pulCoercion,pulDomSpecUse))
  1048. #ifndef SOMGD_idmGetDictionaryLangModel
  1049.     #if (defined(_idmGetDictionaryLangModel) || defined(__idmGetDictionaryLangModel))
  1050.         #undef _idmGetDictionaryLangModel
  1051.         #undef __idmGetDictionaryLangModel
  1052.         #define SOMGD_idmGetDictionaryLangModel 1
  1053.     #else
  1054.         #define _idmGetDictionaryLangModel IDMObject_idmGetDictionaryLangModel
  1055.     #endif /* _idmGetDictionaryLangModel */
  1056. #endif /* SOMGD_idmGetDictionaryLangModel */
  1057.  
  1058. /*
  1059.  * New Method: idmSetDictionaryLangModel
  1060.  */
  1061. typedef void   SOMLINK somTP_IDMObject_idmSetDictionaryLangModel(IDMObject *somSelf, Environment *ev,
  1062.         ULONG ulCoercion,
  1063.         ULONG ulDomSpecUse);
  1064. #pragma linkage(somTP_IDMObject_idmSetDictionaryLangModel, system)
  1065. typedef somTP_IDMObject_idmSetDictionaryLangModel *somTD_IDMObject_idmSetDictionaryLangModel;
  1066. #define somMD_IDMObject_idmSetDictionaryLangModel "::IDMObject::idmSetDictionaryLangModel"
  1067. #define IDMObject_idmSetDictionaryLangModel(somSelf,ev,ulCoercion,ulDomSpecUse) \
  1068.     (SOM_Resolve(somSelf, IDMObject, idmSetDictionaryLangModel) \
  1069.     (somSelf,ev,ulCoercion,ulDomSpecUse))
  1070. #ifndef SOMGD_idmSetDictionaryLangModel
  1071.     #if (defined(_idmSetDictionaryLangModel) || defined(__idmSetDictionaryLangModel))
  1072.         #undef _idmSetDictionaryLangModel
  1073.         #undef __idmSetDictionaryLangModel
  1074.         #define SOMGD_idmSetDictionaryLangModel 1
  1075.     #else
  1076.         #define _idmSetDictionaryLangModel IDMObject_idmSetDictionaryLangModel
  1077.     #endif /* _idmSetDictionaryLangModel */
  1078. #endif /* SOMGD_idmSetDictionaryLangModel */
  1079.  
  1080. /*
  1081.  * New Method: idmGetDictCoer
  1082.  */
  1083. typedef ULONG   SOMLINK somTP_IDMObject_idmGetDictCoer(IDMObject *somSelf, Environment *ev);
  1084. #pragma linkage(somTP_IDMObject_idmGetDictCoer, system)
  1085. typedef somTP_IDMObject_idmGetDictCoer *somTD_IDMObject_idmGetDictCoer;
  1086. #define somMD_IDMObject_idmGetDictCoer "::IDMObject::idmGetDictCoer"
  1087. #define IDMObject_idmGetDictCoer(somSelf,ev) \
  1088.     (SOM_Resolve(somSelf, IDMObject, idmGetDictCoer) \
  1089.     (somSelf,ev))
  1090. #ifndef SOMGD_idmGetDictCoer
  1091.     #if (defined(_idmGetDictCoer) || defined(__idmGetDictCoer))
  1092.         #undef _idmGetDictCoer
  1093.         #undef __idmGetDictCoer
  1094.         #define SOMGD_idmGetDictCoer 1
  1095.     #else
  1096.         #define _idmGetDictCoer IDMObject_idmGetDictCoer
  1097.     #endif /* _idmGetDictCoer */
  1098. #endif /* SOMGD_idmGetDictCoer */
  1099.  
  1100. /*
  1101.  * New Method: idmSetDictCoer
  1102.  */
  1103. typedef void   SOMLINK somTP_IDMObject_idmSetDictCoer(IDMObject *somSelf, Environment *ev,
  1104.         ULONG ulDictCoer);
  1105. #pragma linkage(somTP_IDMObject_idmSetDictCoer, system)
  1106. typedef somTP_IDMObject_idmSetDictCoer *somTD_IDMObject_idmSetDictCoer;
  1107. #define somMD_IDMObject_idmSetDictCoer "::IDMObject::idmSetDictCoer"
  1108. #define IDMObject_idmSetDictCoer(somSelf,ev,ulDictCoer) \
  1109.     (SOM_Resolve(somSelf, IDMObject, idmSetDictCoer) \
  1110.     (somSelf,ev,ulDictCoer))
  1111. #ifndef SOMGD_idmSetDictCoer
  1112.     #if (defined(_idmSetDictCoer) || defined(__idmSetDictCoer))
  1113.         #undef _idmSetDictCoer
  1114.         #undef __idmSetDictCoer
  1115.         #define SOMGD_idmSetDictCoer 1
  1116.     #else
  1117.         #define _idmSetDictCoer IDMObject_idmSetDictCoer
  1118.     #endif /* _idmSetDictCoer */
  1119. #endif /* SOMGD_idmSetDictCoer */
  1120.  
  1121. /*
  1122.  * New Method: idmGetTextSpecLM
  1123.  */
  1124. typedef ULONG   SOMLINK somTP_IDMObject_idmGetTextSpecLM(IDMObject *somSelf, Environment *ev);
  1125. #pragma linkage(somTP_IDMObject_idmGetTextSpecLM, system)
  1126. typedef somTP_IDMObject_idmGetTextSpecLM *somTD_IDMObject_idmGetTextSpecLM;
  1127. #define somMD_IDMObject_idmGetTextSpecLM "::IDMObject::idmGetTextSpecLM"
  1128. #define IDMObject_idmGetTextSpecLM(somSelf,ev) \
  1129.     (SOM_Resolve(somSelf, IDMObject, idmGetTextSpecLM) \
  1130.     (somSelf,ev))
  1131. #ifndef SOMGD_idmGetTextSpecLM
  1132.     #if (defined(_idmGetTextSpecLM) || defined(__idmGetTextSpecLM))
  1133.         #undef _idmGetTextSpecLM
  1134.         #undef __idmGetTextSpecLM
  1135.         #define SOMGD_idmGetTextSpecLM 1
  1136.     #else
  1137.         #define _idmGetTextSpecLM IDMObject_idmGetTextSpecLM
  1138.     #endif /* _idmGetTextSpecLM */
  1139. #endif /* SOMGD_idmGetTextSpecLM */
  1140.  
  1141. /*
  1142.  * New Method: idmSetTextSpecLM
  1143.  */
  1144. typedef void   SOMLINK somTP_IDMObject_idmSetTextSpecLM(IDMObject *somSelf, Environment *ev,
  1145.         ULONG ulTextSpecLM);
  1146. #pragma linkage(somTP_IDMObject_idmSetTextSpecLM, system)
  1147. typedef somTP_IDMObject_idmSetTextSpecLM *somTD_IDMObject_idmSetTextSpecLM;
  1148. #define somMD_IDMObject_idmSetTextSpecLM "::IDMObject::idmSetTextSpecLM"
  1149. #define IDMObject_idmSetTextSpecLM(somSelf,ev,ulTextSpecLM) \
  1150.     (SOM_Resolve(somSelf, IDMObject, idmSetTextSpecLM) \
  1151.     (somSelf,ev,ulTextSpecLM))
  1152. #ifndef SOMGD_idmSetTextSpecLM
  1153.     #if (defined(_idmSetTextSpecLM) || defined(__idmSetTextSpecLM))
  1154.         #undef _idmSetTextSpecLM
  1155.         #undef __idmSetTextSpecLM
  1156.         #define SOMGD_idmSetTextSpecLM 1
  1157.     #else
  1158.         #define _idmSetTextSpecLM IDMObject_idmSetTextSpecLM
  1159.     #endif /* _idmSetTextSpecLM */
  1160. #endif /* SOMGD_idmSetTextSpecLM */
  1161.  
  1162. /*
  1163.  * New Method: idmGetMaxResults
  1164.  */
  1165. typedef ULONG   SOMLINK somTP_IDMObject_idmGetMaxResults(IDMObject *somSelf, Environment *ev);
  1166. #pragma linkage(somTP_IDMObject_idmGetMaxResults, system)
  1167. typedef somTP_IDMObject_idmGetMaxResults *somTD_IDMObject_idmGetMaxResults;
  1168. #define somMD_IDMObject_idmGetMaxResults "::IDMObject::idmGetMaxResults"
  1169. #define IDMObject_idmGetMaxResults(somSelf,ev) \
  1170.     (SOM_Resolve(somSelf, IDMObject, idmGetMaxResults) \
  1171.     (somSelf,ev))
  1172. #ifndef SOMGD_idmGetMaxResults
  1173.     #if (defined(_idmGetMaxResults) || defined(__idmGetMaxResults))
  1174.         #undef _idmGetMaxResults
  1175.         #undef __idmGetMaxResults
  1176.         #define SOMGD_idmGetMaxResults 1
  1177.     #else
  1178.         #define _idmGetMaxResults IDMObject_idmGetMaxResults
  1179.     #endif /* _idmGetMaxResults */
  1180. #endif /* SOMGD_idmGetMaxResults */
  1181.  
  1182. /*
  1183.  * New Method: idmSetMaxResults
  1184.  */
  1185. typedef void   SOMLINK somTP_IDMObject_idmSetMaxResults(IDMObject *somSelf, Environment *ev,
  1186.         ULONG ulMaxResults);
  1187. #pragma linkage(somTP_IDMObject_idmSetMaxResults, system)
  1188. typedef somTP_IDMObject_idmSetMaxResults *somTD_IDMObject_idmSetMaxResults;
  1189. #define somMD_IDMObject_idmSetMaxResults "::IDMObject::idmSetMaxResults"
  1190. #define IDMObject_idmSetMaxResults(somSelf,ev,ulMaxResults) \
  1191.     (SOM_Resolve(somSelf, IDMObject, idmSetMaxResults) \
  1192.     (somSelf,ev,ulMaxResults))
  1193. #ifndef SOMGD_idmSetMaxResults
  1194.     #if (defined(_idmSetMaxResults) || defined(__idmSetMaxResults))
  1195.         #undef _idmSetMaxResults
  1196.         #undef __idmSetMaxResults
  1197.         #define SOMGD_idmSetMaxResults 1
  1198.     #else
  1199.         #define _idmSetMaxResults IDMObject_idmSetMaxResults
  1200.     #endif /* _idmSetMaxResults */
  1201. #endif /* SOMGD_idmSetMaxResults */
  1202.  
  1203. /*
  1204.  * New Method: idmGetNotifyFlags
  1205.  */
  1206. typedef ULONG   SOMLINK somTP_IDMObject_idmGetNotifyFlags(IDMObject *somSelf, Environment *ev);
  1207. #pragma linkage(somTP_IDMObject_idmGetNotifyFlags, system)
  1208. typedef somTP_IDMObject_idmGetNotifyFlags *somTD_IDMObject_idmGetNotifyFlags;
  1209. #define somMD_IDMObject_idmGetNotifyFlags "::IDMObject::idmGetNotifyFlags"
  1210. #define IDMObject_idmGetNotifyFlags(somSelf,ev) \
  1211.     (SOM_Resolve(somSelf, IDMObject, idmGetNotifyFlags) \
  1212.     (somSelf,ev))
  1213. #ifndef SOMGD_idmGetNotifyFlags
  1214.     #if (defined(_idmGetNotifyFlags) || defined(__idmGetNotifyFlags))
  1215.         #undef _idmGetNotifyFlags
  1216.         #undef __idmGetNotifyFlags
  1217.         #define SOMGD_idmGetNotifyFlags 1
  1218.     #else
  1219.         #define _idmGetNotifyFlags IDMObject_idmGetNotifyFlags
  1220.     #endif /* _idmGetNotifyFlags */
  1221. #endif /* SOMGD_idmGetNotifyFlags */
  1222.  
  1223. /*
  1224.  * New Method: idmSetNotifyFlags
  1225.  */
  1226. typedef void   SOMLINK somTP_IDMObject_idmSetNotifyFlags(IDMObject *somSelf, Environment *ev,
  1227.         ULONG ulNotifyFlags);
  1228. #pragma linkage(somTP_IDMObject_idmSetNotifyFlags, system)
  1229. typedef somTP_IDMObject_idmSetNotifyFlags *somTD_IDMObject_idmSetNotifyFlags;
  1230. #define somMD_IDMObject_idmSetNotifyFlags "::IDMObject::idmSetNotifyFlags"
  1231. #define IDMObject_idmSetNotifyFlags(somSelf,ev,ulNotifyFlags) \
  1232.     (SOM_Resolve(somSelf, IDMObject, idmSetNotifyFlags) \
  1233.     (somSelf,ev,ulNotifyFlags))
  1234. #ifndef SOMGD_idmSetNotifyFlags
  1235.     #if (defined(_idmSetNotifyFlags) || defined(__idmSetNotifyFlags))
  1236.         #undef _idmSetNotifyFlags
  1237.         #undef __idmSetNotifyFlags
  1238.         #define SOMGD_idmSetNotifyFlags 1
  1239.     #else
  1240.         #define _idmSetNotifyFlags IDMObject_idmSetNotifyFlags
  1241.     #endif /* _idmSetNotifyFlags */
  1242. #endif /* SOMGD_idmSetNotifyFlags */
  1243.  
  1244. /*
  1245.  * New Method: idmGetTapFlags
  1246.  */
  1247. typedef ULONG   SOMLINK somTP_IDMObject_idmGetTapFlags(IDMObject *somSelf, Environment *ev);
  1248. #pragma linkage(somTP_IDMObject_idmGetTapFlags, system)
  1249. typedef somTP_IDMObject_idmGetTapFlags *somTD_IDMObject_idmGetTapFlags;
  1250. #define somMD_IDMObject_idmGetTapFlags "::IDMObject::idmGetTapFlags"
  1251. #define IDMObject_idmGetTapFlags(somSelf,ev) \
  1252.     (SOM_Resolve(somSelf, IDMObject, idmGetTapFlags) \
  1253.     (somSelf,ev))
  1254. #ifndef SOMGD_idmGetTapFlags
  1255.     #if (defined(_idmGetTapFlags) || defined(__idmGetTapFlags))
  1256.         #undef _idmGetTapFlags
  1257.         #undef __idmGetTapFlags
  1258.         #define SOMGD_idmGetTapFlags 1
  1259.     #else
  1260.         #define _idmGetTapFlags IDMObject_idmGetTapFlags
  1261.     #endif /* _idmGetTapFlags */
  1262. #endif /* SOMGD_idmGetTapFlags */
  1263.  
  1264. /*
  1265.  * New Method: idmSetTapFlags
  1266.  */
  1267. typedef void   SOMLINK somTP_IDMObject_idmSetTapFlags(IDMObject *somSelf, Environment *ev,
  1268.         ULONG ulTapFlags);
  1269. #pragma linkage(somTP_IDMObject_idmSetTapFlags, system)
  1270. typedef somTP_IDMObject_idmSetTapFlags *somTD_IDMObject_idmSetTapFlags;
  1271. #define somMD_IDMObject_idmSetTapFlags "::IDMObject::idmSetTapFlags"
  1272. #define IDMObject_idmSetTapFlags(somSelf,ev,ulTapFlags) \
  1273.     (SOM_Resolve(somSelf, IDMObject, idmSetTapFlags) \
  1274.     (somSelf,ev,ulTapFlags))
  1275. #ifndef SOMGD_idmSetTapFlags
  1276.     #if (defined(_idmSetTapFlags) || defined(__idmSetTapFlags))
  1277.         #undef _idmSetTapFlags
  1278.         #undef __idmSetTapFlags
  1279.         #define SOMGD_idmSetTapFlags 1
  1280.     #else
  1281.         #define _idmSetTapFlags IDMObject_idmSetTapFlags
  1282.     #endif /* _idmSetTapFlags */
  1283. #endif /* SOMGD_idmSetTapFlags */
  1284.  
  1285. /*
  1286.  * New Method: idmGetProximityPtr
  1287.  */
  1288. typedef HPOINTER   SOMLINK somTP_IDMObject_idmGetProximityPtr(IDMObject *somSelf, Environment *ev);
  1289. #pragma linkage(somTP_IDMObject_idmGetProximityPtr, system)
  1290. typedef somTP_IDMObject_idmGetProximityPtr *somTD_IDMObject_idmGetProximityPtr;
  1291. #define somMD_IDMObject_idmGetProximityPtr "::IDMObject::idmGetProximityPtr"
  1292. #define IDMObject_idmGetProximityPtr(somSelf,ev) \
  1293.     (SOM_Resolve(somSelf, IDMObject, idmGetProximityPtr) \
  1294.     (somSelf,ev))
  1295. #ifndef SOMGD_idmGetProximityPtr
  1296.     #if (defined(_idmGetProximityPtr) || defined(__idmGetProximityPtr))
  1297.         #undef _idmGetProximityPtr
  1298.         #undef __idmGetProximityPtr
  1299.         #define SOMGD_idmGetProximityPtr 1
  1300.     #else
  1301.         #define _idmGetProximityPtr IDMObject_idmGetProximityPtr
  1302.     #endif /* _idmGetProximityPtr */
  1303. #endif /* SOMGD_idmGetProximityPtr */
  1304.  
  1305. /*
  1306.  * New Method: idmSetProximityPtr
  1307.  */
  1308. typedef void   SOMLINK somTP_IDMObject_idmSetProximityPtr(IDMObject *somSelf, Environment *ev,
  1309.         HPOINTER hptrNewPointer);
  1310. #pragma linkage(somTP_IDMObject_idmSetProximityPtr, system)
  1311. typedef somTP_IDMObject_idmSetProximityPtr *somTD_IDMObject_idmSetProximityPtr;
  1312. #define somMD_IDMObject_idmSetProximityPtr "::IDMObject::idmSetProximityPtr"
  1313. #define IDMObject_idmSetProximityPtr(somSelf,ev,hptrNewPointer) \
  1314.     (SOM_Resolve(somSelf, IDMObject, idmSetProximityPtr) \
  1315.     (somSelf,ev,hptrNewPointer))
  1316. #ifndef SOMGD_idmSetProximityPtr
  1317.     #if (defined(_idmSetProximityPtr) || defined(__idmSetProximityPtr))
  1318.         #undef _idmSetProximityPtr
  1319.         #undef __idmSetProximityPtr
  1320.         #define SOMGD_idmSetProximityPtr 1
  1321.     #else
  1322.         #define _idmSetProximityPtr IDMObject_idmSetProximityPtr
  1323.     #endif /* _idmSetProximityPtr */
  1324. #endif /* SOMGD_idmSetProximityPtr */
  1325.  
  1326. /*
  1327.  * New Method: idmGetWritingPtr
  1328.  */
  1329. typedef HPOINTER   SOMLINK somTP_IDMObject_idmGetWritingPtr(IDMObject *somSelf, Environment *ev);
  1330. #pragma linkage(somTP_IDMObject_idmGetWritingPtr, system)
  1331. typedef somTP_IDMObject_idmGetWritingPtr *somTD_IDMObject_idmGetWritingPtr;
  1332. #define somMD_IDMObject_idmGetWritingPtr "::IDMObject::idmGetWritingPtr"
  1333. #define IDMObject_idmGetWritingPtr(somSelf,ev) \
  1334.     (SOM_Resolve(somSelf, IDMObject, idmGetWritingPtr) \
  1335.     (somSelf,ev))
  1336. #ifndef SOMGD_idmGetWritingPtr
  1337.     #if (defined(_idmGetWritingPtr) || defined(__idmGetWritingPtr))
  1338.         #undef _idmGetWritingPtr
  1339.         #undef __idmGetWritingPtr
  1340.         #define SOMGD_idmGetWritingPtr 1
  1341.     #else
  1342.         #define _idmGetWritingPtr IDMObject_idmGetWritingPtr
  1343.     #endif /* _idmGetWritingPtr */
  1344. #endif /* SOMGD_idmGetWritingPtr */
  1345.  
  1346. /*
  1347.  * New Method: idmSetWritingPtr
  1348.  */
  1349. typedef void   SOMLINK somTP_IDMObject_idmSetWritingPtr(IDMObject *somSelf, Environment *ev,
  1350.         HPOINTER hptrNewPointer);
  1351. #pragma linkage(somTP_IDMObject_idmSetWritingPtr, system)
  1352. typedef somTP_IDMObject_idmSetWritingPtr *somTD_IDMObject_idmSetWritingPtr;
  1353. #define somMD_IDMObject_idmSetWritingPtr "::IDMObject::idmSetWritingPtr"
  1354. #define IDMObject_idmSetWritingPtr(somSelf,ev,hptrNewPointer) \
  1355.     (SOM_Resolve(somSelf, IDMObject, idmSetWritingPtr) \
  1356.     (somSelf,ev,hptrNewPointer))
  1357. #ifndef SOMGD_idmSetWritingPtr
  1358.     #if (defined(_idmSetWritingPtr) || defined(__idmSetWritingPtr))
  1359.         #undef _idmSetWritingPtr
  1360.         #undef __idmSetWritingPtr
  1361.         #define SOMGD_idmSetWritingPtr 1
  1362.     #else
  1363.         #define _idmSetWritingPtr IDMObject_idmSetWritingPtr
  1364.     #endif /* _idmSetWritingPtr */
  1365. #endif /* SOMGD_idmSetWritingPtr */
  1366.  
  1367. /*
  1368.  * New Method: idmGetErasingPtr
  1369.  */
  1370. typedef HPOINTER   SOMLINK somTP_IDMObject_idmGetErasingPtr(IDMObject *somSelf, Environment *ev);
  1371. #pragma linkage(somTP_IDMObject_idmGetErasingPtr, system)
  1372. typedef somTP_IDMObject_idmGetErasingPtr *somTD_IDMObject_idmGetErasingPtr;
  1373. #define somMD_IDMObject_idmGetErasingPtr "::IDMObject::idmGetErasingPtr"
  1374. #define IDMObject_idmGetErasingPtr(somSelf,ev) \
  1375.     (SOM_Resolve(somSelf, IDMObject, idmGetErasingPtr) \
  1376.     (somSelf,ev))
  1377. #ifndef SOMGD_idmGetErasingPtr
  1378.     #if (defined(_idmGetErasingPtr) || defined(__idmGetErasingPtr))
  1379.         #undef _idmGetErasingPtr
  1380.         #undef __idmGetErasingPtr
  1381.         #define SOMGD_idmGetErasingPtr 1
  1382.     #else
  1383.         #define _idmGetErasingPtr IDMObject_idmGetErasingPtr
  1384.     #endif /* _idmGetErasingPtr */
  1385. #endif /* SOMGD_idmGetErasingPtr */
  1386.  
  1387. /*
  1388.  * New Method: idmSetErasingPtr
  1389.  */
  1390. typedef void   SOMLINK somTP_IDMObject_idmSetErasingPtr(IDMObject *somSelf, Environment *ev,
  1391.         HPOINTER hptrNewPointer);
  1392. #pragma linkage(somTP_IDMObject_idmSetErasingPtr, system)
  1393. typedef somTP_IDMObject_idmSetErasingPtr *somTD_IDMObject_idmSetErasingPtr;
  1394. #define somMD_IDMObject_idmSetErasingPtr "::IDMObject::idmSetErasingPtr"
  1395. #define IDMObject_idmSetErasingPtr(somSelf,ev,hptrNewPointer) \
  1396.     (SOM_Resolve(somSelf, IDMObject, idmSetErasingPtr) \
  1397.     (somSelf,ev,hptrNewPointer))
  1398. #ifndef SOMGD_idmSetErasingPtr
  1399.     #if (defined(_idmSetErasingPtr) || defined(__idmSetErasingPtr))
  1400.         #undef _idmSetErasingPtr
  1401.         #undef __idmSetErasingPtr
  1402.         #define SOMGD_idmSetErasingPtr 1
  1403.     #else
  1404.         #define _idmSetErasingPtr IDMObject_idmSetErasingPtr
  1405.     #endif /* _idmSetErasingPtr */
  1406. #endif /* SOMGD_idmSetErasingPtr */
  1407.  
  1408. /*
  1409.  * New Method: idmGetHwndClient
  1410.  */
  1411. typedef HWND   SOMLINK somTP_IDMObject_idmGetHwndClient(IDMObject *somSelf, Environment *ev);
  1412. #pragma linkage(somTP_IDMObject_idmGetHwndClient, system)
  1413. typedef somTP_IDMObject_idmGetHwndClient *somTD_IDMObject_idmGetHwndClient;
  1414. #define somMD_IDMObject_idmGetHwndClient "::IDMObject::idmGetHwndClient"
  1415. #define IDMObject_idmGetHwndClient(somSelf,ev) \
  1416.     (SOM_Resolve(somSelf, IDMObject, idmGetHwndClient) \
  1417.     (somSelf,ev))
  1418. #ifndef SOMGD_idmGetHwndClient
  1419.     #if (defined(_idmGetHwndClient) || defined(__idmGetHwndClient))
  1420.         #undef _idmGetHwndClient
  1421.         #undef __idmGetHwndClient
  1422.         #define SOMGD_idmGetHwndClient 1
  1423.     #else
  1424.         #define _idmGetHwndClient IDMObject_idmGetHwndClient
  1425.     #endif /* _idmGetHwndClient */
  1426. #endif /* SOMGD_idmGetHwndClient */
  1427.  
  1428. /*
  1429.  * New Method: idmGetState
  1430.  */
  1431. typedef ULONG   SOMLINK somTP_IDMObject_idmGetState(IDMObject *somSelf, Environment *ev);
  1432. #pragma linkage(somTP_IDMObject_idmGetState, system)
  1433. typedef somTP_IDMObject_idmGetState *somTD_IDMObject_idmGetState;
  1434. #define somMD_IDMObject_idmGetState "::IDMObject::idmGetState"
  1435. #define IDMObject_idmGetState(somSelf,ev) \
  1436.     (SOM_Resolve(somSelf, IDMObject, idmGetState) \
  1437.     (somSelf,ev))
  1438. #ifndef SOMGD_idmGetState
  1439.     #if (defined(_idmGetState) || defined(__idmGetState))
  1440.         #undef _idmGetState
  1441.         #undef __idmGetState
  1442.         #define SOMGD_idmGetState 1
  1443.     #else
  1444.         #define _idmGetState IDMObject_idmGetState
  1445.     #endif /* _idmGetState */
  1446. #endif /* SOMGD_idmGetState */
  1447. #ifndef SOM_DONT_USE_INHERITED_MACROS
  1448. #define IDMObject_somDefaultInit SOMObject_somDefaultInit
  1449. #define IDMObject_somDefaultCopyInit SOMObject_somDefaultCopyInit
  1450. #define IDMObject_somDefaultConstCopyInit SOMObject_somDefaultConstCopyInit
  1451. #define IDMObject_somDestruct SOMObject_somDestruct
  1452. #define IDMObject_somDefaultAssign SOMObject_somDefaultAssign
  1453. #define IDMObject_somDefaultConstAssign SOMObject_somDefaultConstAssign
  1454. #define IDMObject_somGetClass SOMObject_somGetClass
  1455. #define IDMObject_somGetClassName SOMObject_somGetClassName
  1456. #define IDMObject_somGetSize SOMObject_somGetSize
  1457. #define IDMObject_somIsA SOMObject_somIsA
  1458. #define IDMObject_somIsInstanceOf SOMObject_somIsInstanceOf
  1459. #define IDMObject_somRespondsTo SOMObject_somRespondsTo
  1460. #define IDMObject_somDispatchV SOMObject_somDispatchV
  1461. #define IDMObject_somDispatchL SOMObject_somDispatchL
  1462. #define IDMObject_somDispatchA SOMObject_somDispatchA
  1463. #define IDMObject_somDispatchD SOMObject_somDispatchD
  1464. #define IDMObject_somDispatch SOMObject_somDispatch
  1465. #define IDMObject_somClassDispatch SOMObject_somClassDispatch
  1466. #define IDMObject_somCastObj SOMObject_somCastObj
  1467. #define IDMObject_somResetObj SOMObject_somResetObj
  1468. #define IDMObject_somPrintSelf SOMObject_somPrintSelf
  1469. #define IDMObject_somDumpSelf SOMObject_somDumpSelf
  1470. #define IDMObject_somDumpSelfInt SOMObject_somDumpSelfInt
  1471. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  1472.  
  1473. #endif       /* SOM_IDMObject_h */
  1474.