home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / source / wpshidl / samples / wpsamps / dragfold.ih < prev    next >
Encoding:
Text File  |  1993-11-18  |  6.8 KB  |  231 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: dragfold.ih.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.2
  7.  *     SOM Emitter emitih: 2.7
  8.  */
  9.  
  10. /*
  11.  * 
  12.  * 
  13.  *    Module Name: DRAGFOLD
  14.  * 
  15.  *    OS/2 Work Place Shell Sample Program - SOM 2.0 / IDL Version
  16.  * 
  17.  *    Copyright (C) 1993 IBM Corporation
  18.  * 
  19.  *        DISCLAIMER OF WARRANTIES.  The following [enclosed] code is
  20.  *        sample code created by IBM Corporation. This sample code is not
  21.  *        part of any standard or IBM product and is provided to you solely
  22.  *        for  the purpose of assisting you in the development of your
  23.  *        applications.  The code is provided "AS IS", without
  24.  *        warranty of any kind.  IBM shall not be liable for any damages
  25.  *        arising out of your use of the sample code, even if they have been
  26.  *        advised of the possibility of such damages.
  27.  * 
  28.  */
  29.  
  30.  
  31. #ifndef SOM_DRAGFOLD_ih
  32. #define SOM_DRAGFOLD_ih
  33.  
  34. #pragma checkout(suspend)
  35.  
  36. #include <dragfold.h>
  37.  
  38. /*
  39.  * Set the scope of methods functions
  40.  */
  41. #ifndef SOM_Scope
  42. #ifdef __cplusplus
  43.   #define SOM_Scope extern "C"
  44. #else
  45.   #define SOM_Scope extern
  46. #endif  /* __cplusplus */
  47. #endif  /* SOM_Scope */
  48.  
  49. #ifndef SOM_CurrentClass
  50.     #define SOM_CurrentClass DRAGFOLDCClassData.parentMtab
  51. #endif  /* SOM_CurrentClass */
  52.  
  53. #define DRAGFOLD_MaxNoMethods 0
  54.  
  55. /*
  56.  * Instance data
  57.  */
  58. typedef void DRAGFOLDData;
  59.  
  60. /*
  61.  * Begin stuff that only goes in the primary file
  62.  */
  63. #if (defined(DRAGFOLD_Class_Source) || defined(SOM_Module_dragfold_Source))
  64.  
  65. /*
  66.  * Trace/Debug macro
  67.  */
  68. #ifndef DRAGFOLDMethodDebug
  69.    #define DRAGFOLDMethodDebug(c,m) SOMMethodDebug(c,m)
  70. #endif  /* DRAGFOLDMethodDebug */
  71.  
  72. /*
  73.  * Current class macros for Instance and Meta classes.
  74.  */
  75. #undef SOMMeta
  76. #define SOMMeta M_DRAGFOLDCClassData.parentMtab
  77. #undef SOMInstance
  78. #define SOMInstance DRAGFOLDCClassData.parentMtab
  79.  
  80. #ifndef M_DRAGFOLD_Class_Source
  81.    #define M_DRAGFOLD_Class_Source
  82. #endif    /* M_DRAGFOLD_Class_Source */
  83.  
  84. /*
  85.  * Overridden method: wpDragOver
  86.  */
  87. #pragma linkage(dragf_wpDragOver, system)
  88. SOM_Scope MRESULT  SOMLINK dragf_wpDragOver(DRAGFOLD *somSelf,
  89.         HWND hwndCnr,
  90.         PDRAGINFO pdrgInfo);
  91. #ifndef somMN_wpDragOver_defined
  92. #define somMN_wpDragOver_defined
  93.    static char *somMN_wpDragOver = "wpDragOver";
  94.    static somId somId_wpDragOver = &somMN_wpDragOver;
  95. #endif  /* somMN_wpDragOver_defined */
  96. #define DRAGFOLD_parent_WPFolder_wpDragOver(somSelf,hwndCnr,pdrgInfo) \
  97.     ((SOM_ParentNumResolve(WPObject, 1, DRAGFOLDCClassData.parentMtab, wpDragOver)) \
  98.      (somSelf,hwndCnr,pdrgInfo))
  99. #ifndef SOMGD_pmc_WPFolder_wpDragOver
  100.   #ifdef parent_WPFolder_wpDragOver
  101.      #undef parent_WPFolder_wpDragOver
  102.      #define SOMGD_pmc_WPFolder_wpDragOver 1
  103.   #else
  104.      #define parent_WPFolder_wpDragOver DRAGFOLD_parent_WPFolder_wpDragOver
  105.   #endif /* parent_WPFolder_wpDragOver */
  106. #endif /* SOMGD_pmc_WPFolder_wpDragOver */
  107. #ifndef parent_wpDragOver
  108.    #define parent_wpDragOver(somSelf,hwndCnr,pdrgInfo) \
  109.     ((SOM_ParentNumResolve(WPObject, 1, SOM_CurrentClass, wpDragOver)) \
  110.      (somSelf,hwndCnr,pdrgInfo))
  111. #endif  /* parent_wpDragOver */
  112. #define DRAGFOLD_parents_wpDragOver(arg0,arg1,arg2) \
  113.   (void) DRAGFOLD_parent_WPFolder_wpDragOver(arg0,arg1,arg2);
  114.  
  115. /*
  116.  * Overridden method: wpDrop
  117.  */
  118. #pragma linkage(dragf_wpDrop, system)
  119. SOM_Scope MRESULT  SOMLINK dragf_wpDrop(DRAGFOLD *somSelf,
  120.         HWND hwndCnr,
  121.         PDRAGINFO pdrgInfo,
  122.         PDRAGITEM pdrgItem);
  123. #ifndef somMN_wpDrop_defined
  124. #define somMN_wpDrop_defined
  125.    static char *somMN_wpDrop = "wpDrop";
  126.    static somId somId_wpDrop = &somMN_wpDrop;
  127. #endif  /* somMN_wpDrop_defined */
  128. #define DRAGFOLD_parent_WPFolder_wpDrop(somSelf,hwndCnr,pdrgInfo,pdrgItem) \
  129.     ((SOM_ParentNumResolve(WPObject, 1, DRAGFOLDCClassData.parentMtab, wpDrop)) \
  130.      (somSelf,hwndCnr,pdrgInfo,pdrgItem))
  131. #ifndef SOMGD_pmc_WPFolder_wpDrop
  132.   #ifdef parent_WPFolder_wpDrop
  133.      #undef parent_WPFolder_wpDrop
  134.      #define SOMGD_pmc_WPFolder_wpDrop 1
  135.   #else
  136.      #define parent_WPFolder_wpDrop DRAGFOLD_parent_WPFolder_wpDrop
  137.   #endif /* parent_WPFolder_wpDrop */
  138. #endif /* SOMGD_pmc_WPFolder_wpDrop */
  139. #ifndef parent_wpDrop
  140.    #define parent_wpDrop(somSelf,hwndCnr,pdrgInfo,pdrgItem) \
  141.     ((SOM_ParentNumResolve(WPObject, 1, SOM_CurrentClass, wpDrop)) \
  142.      (somSelf,hwndCnr,pdrgInfo,pdrgItem))
  143. #endif  /* parent_wpDrop */
  144. #define DRAGFOLD_parents_wpDrop(arg0,arg1,arg2,arg3) \
  145.   (void) DRAGFOLD_parent_WPFolder_wpDrop(arg0,arg1,arg2,arg3);
  146.  
  147. /*
  148.  * Initialize the class data structure
  149.  */
  150. struct DRAGFOLDClassDataStructure DRAGFOLDClassData = {(SOMAny *) NULL};
  151.  
  152. /*
  153.  * Define the C class data structure
  154.  */
  155. struct DRAGFOLDCClassDataStructure DRAGFOLDCClassData = {(somMethodTabs) NULL};
  156.  
  157. /*
  158.  * Routines and Structures to create the class object
  159.  */
  160.  
  161. /*
  162.  * Declare the Override Methods table.
  163.  */
  164. static somOverrideMethod_t DRAGFOLDOM[] = {
  165.     {    &somId_wpDragOver,
  166.          (somMethodProc *) dragf_wpDragOver    },
  167.     {    &somId_wpDrop,
  168.          (somMethodProc *) dragf_wpDrop    },
  169. };
  170.  
  171.  
  172. /*
  173.  *  Initializers for class Ids
  174.  */
  175. static char * somCN_DRAGFOLD = "DRAGFOLD";
  176. static char * somPCN_DRAGFOLD_WPFolder = "WPFolder";
  177.  
  178. static somId somPCDRAGFOLD[] = {
  179.     &somPCN_DRAGFOLD_WPFolder,
  180. };
  181.  
  182. static somStaticClassInfo DRAGFOLDSCI = {
  183.     3, 0, 2, 0, 0, 0,
  184.     DRAGFOLD_MajorVersion, DRAGFOLD_MinorVersion,
  185.     0, DRAGFOLD_MaxNoMethods, 1,
  186.     &somCN_DRAGFOLD,
  187.     (somId) NULL, 1,
  188.     somPCDRAGFOLD,
  189.     (somClassDataStructure *) &DRAGFOLDClassData,
  190.     (somCClassDataStructure *) &DRAGFOLDCClassData,
  191.     (somStaticMethod_t *) NULL, DRAGFOLDOM,
  192.     (char *) NULL,
  193.     (somNonInternalData_t *) NULL,  (somProcMethods_t *) NULL,
  194.     (somVarargsFuncs_t *) NULL,
  195.     (somTP_somClassInitFunc *) NULL,
  196.     0,
  197.     0,  /* old style class, zero directinitclasses */
  198.     0, /* no directinitclasses */
  199.     0, /* number of methods */
  200.     0, /* methods of the class */
  201.     0, /* dataOffset1 */
  202.     0, /* dataOffset2 */
  203.     0, /* number of SelectInheritedMethods */
  204.     0, /* SelectInheritedMethods */
  205.     0, /* number of releaseorder entries */
  206.     0, /* ReleaseOrder */
  207.     0, /* number of migrated methods */
  208.     0, /* migrated method implementations */
  209.     0, /* number of initializers */
  210.     0, /* initializers */
  211.     0, /* used to identify a DTS class */
  212.     0, /* used to register dynamically computed info */
  213. };
  214.  
  215.  
  216. DRAGFOLD * SOMLINK DRAGFOLDNewClass (integer4 somtmajorVersion,
  217.         integer4 somtminorVersion)
  218. {
  219.     WPFolderNewClass(WPFolder_MajorVersion,WPFolder_MinorVersion);    /* static reference */
  220.     return (somBuildClass(1,&DRAGFOLDSCI, somtmajorVersion, somtminorVersion));
  221. }
  222.  
  223. /*
  224.  * Functions for attributes.
  225.  */
  226.  
  227. #endif                   /* DRAGFOLD_Class_Source */
  228. #pragma checkout(resume)
  229.  
  230. #endif       /* SOM_DRAGFOLD_ih */
  231.