home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 14 Text / 14-Text.zip / RB3774.ZIP / RECORD.ZIP / RECFLDER.IH < prev    next >
Text File  |  1992-04-01  |  15KB  |  490 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: recflder.ih.
  5.  * Generated using:
  6.  *     SOM Precompiler spc: 1.21
  7.  *     SOM Emitter emitih: 1.42
  8.  */
  9.  
  10. #ifndef recflder_ih
  11. #define recflder_ih
  12.  
  13.  
  14. #include "recflder.h"
  15.  
  16. /*
  17.  * Set the scope of methods functions
  18.  */
  19. #ifndef SOM_Scope
  20. #ifdef __cplusplus
  21. #define SOM_Scope extern "C"
  22. #else
  23. #define SOM_Scope extern
  24. #endif
  25. #endif
  26.  
  27. #ifndef SOM_CurrentClass
  28. #define SOM_CurrentClass RecordFolderCClassData.parentMtab
  29. #endif
  30.  
  31. #define RecordFolder_MaxNoMethods 1
  32.  
  33. /*
  34.  * Instance data
  35.  */
  36. typedef struct {
  37.     CHAR szLastQuery[200];
  38. } RecordFolderData;
  39.  
  40. /*
  41.  * Instance variable access macros
  42.  */
  43. #define _szLastQuery (somThis->szLastQuery)
  44.  
  45. /*
  46.  * Getdata macro
  47.  */
  48. #define RecordFolderGetData(somSelf) \
  49.     ((RecordFolderData *) \
  50.         SOM_DataResolve(somSelf, RecordFolderCClassData.instanceDataToken))
  51.  
  52. /*
  53.  * Trace/Debug macro
  54.  */
  55. #ifndef RecordFolderMethodDebug
  56. #define RecordFolderMethodDebug(c,m) SOMMethodDebug(c,m)
  57. #endif
  58.  
  59. /*
  60.  * Begin stuff that only goes in the primary file
  61.  */
  62. #ifdef RecordFolder_Class_Source
  63.  
  64. /*
  65.  * Current class macros for Instance and Meta classes.
  66.  */
  67. #undef SOMMeta
  68. #define SOMMeta M_RecordFolderCClassData.parentMtab
  69. #undef SOMInstance
  70. #define SOMInstance RecordFolderCClassData.parentMtab
  71.  
  72. #ifndef M_RecordFolder_Class_Source
  73. #define M_RecordFolder_Class_Source
  74. #endif    /* M_RecordFolder_Class_Source */
  75.  
  76. /*
  77.  * Overridden method: wpInitData
  78.  */
  79. #pragma linkage(recflder_wpInitData, system)
  80. SOM_Scope void   SOMLINK recflder_wpInitData(RecordFolder *somSelf);
  81. #ifndef parent_wpInitData
  82. static char *somMN_wpInitData = "wpInitData";
  83. static somId somId_wpInitData = &somMN_wpInitData;
  84. #define parent_wpInitData(somSelf) \
  85.     ((SOM_ParentResolveE(WPObject, SOM_CurrentClass, wpInitData)) \
  86.      (somSelf))
  87. #endif
  88. #define RecordFolderParent_wpInitData parent_wpInitData
  89.  
  90. /*
  91.  * Overridden method: wpModifyPopupMenu
  92.  */
  93. #pragma linkage(recflder_wpModifyPopupMenu, system)
  94. SOM_Scope BOOL   SOMLINK recflder_wpModifyPopupMenu(RecordFolder *somSelf,
  95.         HWND hwndMenu,
  96.         HWND hwndCnr,
  97.         ULONG iPosition);
  98. #ifndef parent_wpModifyPopupMenu
  99. static char *somMN_wpModifyPopupMenu = "wpModifyPopupMenu";
  100. static somId somId_wpModifyPopupMenu = &somMN_wpModifyPopupMenu;
  101. #define parent_wpModifyPopupMenu(somSelf,hwndMenu,hwndCnr,iPosition) \
  102.     ((SOM_ParentResolveE(WPObject, SOM_CurrentClass, wpModifyPopupMenu)) \
  103.      (somSelf,hwndMenu,hwndCnr,iPosition))
  104. #endif
  105. #define RecordFolderParent_wpModifyPopupMenu parent_wpModifyPopupMenu
  106.  
  107. /*
  108.  * Overridden method: wpMenuItemSelected
  109.  */
  110. #pragma linkage(recflder_wpMenuItemSelected, system)
  111. SOM_Scope void   SOMLINK recflder_wpMenuItemSelected(RecordFolder *somSelf,
  112.         HWND hwndFrame,
  113.         ULONG MenuId);
  114. #ifndef parent_wpMenuItemSelected
  115. static char *somMN_wpMenuItemSelected = "wpMenuItemSelected";
  116. static somId somId_wpMenuItemSelected = &somMN_wpMenuItemSelected;
  117. #define parent_wpMenuItemSelected(somSelf,hwndFrame,MenuId) \
  118.     ((SOM_ParentResolveE(WPObject, SOM_CurrentClass, wpMenuItemSelected)) \
  119.      (somSelf,hwndFrame,MenuId))
  120. #endif
  121. #define RecordFolderParent_wpMenuItemSelected parent_wpMenuItemSelected
  122.  
  123. /*
  124.  * Overridden method: wpSaveState
  125.  */
  126. #pragma linkage(recflder_wpSaveState, system)
  127. SOM_Scope BOOL   SOMLINK recflder_wpSaveState(RecordFolder *somSelf);
  128. #ifndef parent_wpSaveState
  129. static char *somMN_wpSaveState = "wpSaveState";
  130. static somId somId_wpSaveState = &somMN_wpSaveState;
  131. #define parent_wpSaveState(somSelf) \
  132.     ((SOM_ParentResolveE(WPObject, SOM_CurrentClass, wpSaveState)) \
  133.      (somSelf))
  134. #endif
  135. #define RecordFolderParent_wpSaveState parent_wpSaveState
  136.  
  137. /*
  138.  * Overridden method: wpRestoreState
  139.  */
  140. #pragma linkage(recflder_wpRestoreState, system)
  141. SOM_Scope BOOL   SOMLINK recflder_wpRestoreState(RecordFolder *somSelf,
  142.         ULONG ulReserved);
  143. #ifndef parent_wpRestoreState
  144. static char *somMN_wpRestoreState = "wpRestoreState";
  145. static somId somId_wpRestoreState = &somMN_wpRestoreState;
  146. #define parent_wpRestoreState(somSelf,ulReserved) \
  147.     ((SOM_ParentResolveE(WPObject, SOM_CurrentClass, wpRestoreState)) \
  148.      (somSelf,ulReserved))
  149. #endif
  150. #define RecordFolderParent_wpRestoreState parent_wpRestoreState
  151.  
  152. /*
  153.  * Temporary class data structure used only in class creation
  154.  */
  155. static somClassDataStructure RecordFoldertempClassData;
  156.  
  157. /*
  158.  * Initialize the class data structure
  159.  */
  160. struct RecordFolderClassDataStructure RecordFolderClassData = {(SOMAny *) NULL};
  161.  
  162. /*
  163.  * Define the C class data structure
  164.  */
  165. struct RecordFolderCClassDataStructure RecordFolderCClassData = {(somMethodTab *) NULL};
  166.  
  167. /*
  168.  * New Method: UpdateLastQuery
  169.  */
  170. #pragma linkage(recflder_UpdateLastQuery, system)
  171. SOM_Scope BOOL   SOMLINK recflder_UpdateLastQuery(RecordFolder *somSelf,
  172.         PSZ szQuery);
  173. static char *somMN_UpdateLastQuery = "UpdateLastQuery";
  174. static somId somId_UpdateLastQuery = &somMN_UpdateLastQuery;
  175. static char *somDS_UpdateLastQuery = somMD_RecordFolder_UpdateLastQuery;
  176. static somId somDI_UpdateLastQuery = &somDS_UpdateLastQuery;
  177. #pragma linkage(somRD_UpdateLastQuery, system)
  178. static BOOL   SOMLINK somRD_UpdateLastQuery(RecordFolder *somSelf,
  179.         PSZ szQuery)
  180. {
  181.     return ((BOOL) va_somDispatchL(somSelf, somId_UpdateLastQuery,
  182.         somDI_UpdateLastQuery,szQuery));
  183. }
  184. #pragma linkage(somAP_UpdateLastQuery, system)
  185. static BOOL   SOMLINK somAP_UpdateLastQuery(RecordFolder *somSelf,
  186.         somId __id,
  187.         somId __desc,
  188.         va_list __ap)
  189. {
  190.     PSZ szQuery = va_arg(__ap, PSZ);
  191.     __ap; __id; __desc;           /* Referenced to prevent warning msg */
  192.  
  193.     return (RecordFolder_UpdateLastQuery(somSelf,szQuery));
  194. }
  195.  
  196. /*
  197.  * Routines to create the class object
  198.  */
  199. static void RecordFoldersomInitializeClass ()
  200. {
  201.  
  202.     RecordFolderClassData.UpdateLastQuery = 
  203.       _somAddStaticMethod (RecordFoldertempClassData.classObject,
  204.         somId_UpdateLastQuery,
  205.         somDI_UpdateLastQuery,
  206.         (somMethodProc *) recflder_UpdateLastQuery,
  207.         (somMethodProc *) somRD_UpdateLastQuery,
  208.         (somMethodProc *) somAP_UpdateLastQuery);
  209.  
  210.     _somOverrideSMethod (RecordFoldertempClassData.classObject,
  211.             somId_wpInitData,
  212.             (somMethodProc *) recflder_wpInitData);
  213.  
  214.     _somOverrideSMethod (RecordFoldertempClassData.classObject,
  215.             somId_wpModifyPopupMenu,
  216.             (somMethodProc *) recflder_wpModifyPopupMenu);
  217.  
  218.     _somOverrideSMethod (RecordFoldertempClassData.classObject,
  219.             somId_wpMenuItemSelected,
  220.             (somMethodProc *) recflder_wpMenuItemSelected);
  221.  
  222.     _somOverrideSMethod (RecordFoldertempClassData.classObject,
  223.             somId_wpSaveState,
  224.             (somMethodProc *) recflder_wpSaveState);
  225.  
  226.     _somOverrideSMethod (RecordFoldertempClassData.classObject,
  227.             somId_wpRestoreState,
  228.             (somMethodProc *) recflder_wpRestoreState);
  229. }
  230.  
  231. #pragma linkage(RecordFoldersomCreateClass, system)
  232. static void SOMLINK RecordFoldersomCreateClass(SOMClass *pClsObj,
  233.                            SOMClass *mClsObj)
  234. {
  235.     RecordFoldertempClassData.classObject = _somNew (mClsObj);
  236.     _somInitClass (RecordFoldertempClassData.classObject,
  237.         "RecordFolder",
  238.         pClsObj,
  239.         sizeof(RecordFolderData),
  240.         RecordFolder_MaxNoMethods,
  241.         RecordFolder_MajorVersion,
  242.         RecordFolder_MinorVersion);
  243.     RecordFolderCClassData.instanceDataToken = 
  244.     _somGetInstanceToken(RecordFoldertempClassData.classObject);
  245.     RecordFoldersomInitializeClass();
  246.     RecordFolderCClassData.parentMtab =
  247.     _somGetPClsMtab(RecordFoldertempClassData.classObject);
  248.     _somSetClassData(RecordFoldertempClassData.classObject, (somClassDataStructure *)&RecordFolderClassData);
  249.     _somClassReady(RecordFoldertempClassData.classObject);
  250.     /* make newly created class object visible */
  251.     RecordFolderClassData.classObject = RecordFoldertempClassData.classObject;
  252. }
  253.  
  254. RecordFolder * SOMLINK RecordFolderNewClass (integer4 scemajorVersion,
  255.         integer4 sceminorVersion)
  256. {
  257.     SOMClass *pClsObj;
  258.     SOMClass *mClsObj;
  259.  
  260.     /* Check the version numbers */
  261.     if (((scemajorVersion != 0) && 
  262.          (scemajorVersion != RecordFolder_MajorVersion)) ||
  263.         ((sceminorVersion != 0) && 
  264.          (sceminorVersion < RecordFolder_MinorVersion))) {
  265.     somPrintf("RecordFolderNewClass: Error, bad version numbers.\n");
  266.     SOM_Error(SOMERROR_BadVersion);
  267.     }
  268.     /* Don't do anything if class object is already created. */
  269.     if (RecordFolderClassData.classObject != (SOMAny *) NULL)
  270.     return(RecordFolderClassData.classObject);
  271.  
  272.     /* Make sure the environment is initialized. */
  273.     if (SOMClassMgrObject == (SOMAny *) NULL) somEnvironmentNew();
  274.     if (SOMClassMgrObject == (SOMAny *) NULL)
  275.     SOM_Error(SOMERROR_CouldNotStartup);
  276.  
  277.     /* Get the parent class object. */
  278.     WPFolderNewClass(1,1);    /* static reference */
  279.     pClsObj = _somFindClass(SOMClassMgrObject,
  280.         SOM_IdFromString("WPFolder"), 1, 1);
  281.     if (pClsObj == (SOMClass *) NULL)
  282.     SOM_Error(SOMERROR_NoParentClass);
  283.  
  284.     /* Explicit metaclass, so get it */ 
  285.     M_RecordFolderNewClass(0,0);    /* static reference */
  286.     mClsObj = _somFindClass(SOMClassMgrObject,
  287.         SOM_IdFromString("M_RecordFolder"), 0, 0);
  288.     if (mClsObj == (SOMClass *) NULL)
  289.     SOM_Error(SOMERROR_NoMetaClass);
  290.  
  291.     somConstructClass(RecordFoldersomCreateClass, pClsObj, mClsObj,
  292.              &RecordFoldertempClassData);
  293.     return (RecordFolderClassData.classObject);
  294. }
  295.  
  296. #endif                   /* RecordFolder_Class_Source */
  297.  
  298. #endif       /* recflder_ih */
  299.  
  300. /*
  301.  * This file was generated by the SOM Compiler.
  302.  * FileName: recflder.ih.
  303.  * Generated using:
  304.  *     SOM Precompiler spc: 1.21
  305.  *     SOM Emitter emitih: 1.42
  306.  */
  307.  
  308. #ifndef recflder_mih
  309. #define recflder_mih
  310.  
  311.  
  312. /*
  313.  * Set the scope of methods functions
  314.  */
  315. #ifndef SOM_Scope
  316. #ifdef __cplusplus
  317. #define SOM_Scope extern "C"
  318. #else
  319. #define SOM_Scope extern
  320. #endif
  321. #endif
  322.  
  323. #ifndef SOM_CurrentClass
  324. #define SOM_CurrentClass M_RecordFolderCClassData.parentMtab
  325. #endif
  326.  
  327. #define M_RecordFolder_MaxNoMethods 0
  328.  
  329. /*
  330.  * Instance data
  331.  */
  332. typedef void M_RecordFolderData;
  333.  
  334. /*
  335.  * Trace/Debug macro
  336.  */
  337. #ifndef M_RecordFolderMethodDebug
  338. #define M_RecordFolderMethodDebug(c,m) SOMMethodDebug(c,m)
  339. #endif
  340.  
  341. /*
  342.  * Begin stuff that only goes in the primary file
  343.  */
  344. #ifdef M_RecordFolder_Class_Source
  345.  
  346. /*
  347.  * Current class macros for Instance and Meta classes.
  348.  */
  349.  
  350. /*
  351.  * Overridden method: wpclsQueryTitle
  352.  */
  353. #pragma linkage(recfldercls_wpclsQueryTitle, system)
  354. SOM_Scope PSZ   SOMLINK recfldercls_wpclsQueryTitle(M_RecordFolder *somSelf);
  355. #ifndef parent_wpclsQueryTitle
  356. static char *somMN_wpclsQueryTitle = "wpclsQueryTitle";
  357. static somId somId_wpclsQueryTitle = &somMN_wpclsQueryTitle;
  358. #define parent_wpclsQueryTitle(somSelf) \
  359.     ((SOM_ParentResolveE(M_WPObject, SOM_CurrentClass, wpclsQueryTitle)) \
  360.      (somSelf))
  361. #endif
  362. #define M_RecordFolderParent_wpclsQueryTitle parent_wpclsQueryTitle
  363.  
  364. /*
  365.  * Overridden method: wpclsInitData
  366.  */
  367. #pragma linkage(recfldercls_wpclsInitData, system)
  368. SOM_Scope void   SOMLINK recfldercls_wpclsInitData(M_RecordFolder *somSelf);
  369. #ifndef parent_wpclsInitData
  370. static char *somMN_wpclsInitData = "wpclsInitData";
  371. static somId somId_wpclsInitData = &somMN_wpclsInitData;
  372. #define parent_wpclsInitData(somSelf) \
  373.     ((SOM_ParentResolveE(M_WPObject, SOM_CurrentClass, wpclsInitData)) \
  374.      (somSelf))
  375. #endif
  376. #define M_RecordFolderParent_wpclsInitData parent_wpclsInitData
  377.  
  378. /*
  379.  * Overridden method: wpclsUnInitData
  380.  */
  381. #pragma linkage(recfldercls_wpclsUnInitData, system)
  382. SOM_Scope void   SOMLINK recfldercls_wpclsUnInitData(M_RecordFolder *somSelf);
  383. #ifndef parent_wpclsUnInitData
  384. static char *somMN_wpclsUnInitData = "wpclsUnInitData";
  385. static somId somId_wpclsUnInitData = &somMN_wpclsUnInitData;
  386. #define parent_wpclsUnInitData(somSelf) \
  387.     ((SOM_ParentResolveE(M_WPObject, SOM_CurrentClass, wpclsUnInitData)) \
  388.      (somSelf))
  389. #endif
  390. #define M_RecordFolderParent_wpclsUnInitData parent_wpclsUnInitData
  391.  
  392. /*
  393.  * Temporary class data structure used only in class creation
  394.  */
  395. static somClassDataStructure M_RecordFoldertempClassData;
  396.  
  397. /*
  398.  * Initialize the class data structure
  399.  */
  400. struct M_RecordFolderClassDataStructure M_RecordFolderClassData = {(SOMAny *) NULL};
  401.  
  402. /*
  403.  * Define the C class data structure
  404.  */
  405. struct M_RecordFolderCClassDataStructure M_RecordFolderCClassData = {(somMethodTab *) NULL};
  406.  
  407. /*
  408.  * Routines to create the class object
  409.  */
  410. static void M_RecordFoldersomInitializeClass ()
  411. {
  412.  
  413.     _somOverrideSMethod (M_RecordFoldertempClassData.classObject,
  414.             somId_wpclsQueryTitle,
  415.             (somMethodProc *) recfldercls_wpclsQueryTitle);
  416.  
  417.     _somOverrideSMethod (M_RecordFoldertempClassData.classObject,
  418.             somId_wpclsInitData,
  419.             (somMethodProc *) recfldercls_wpclsInitData);
  420.  
  421.     _somOverrideSMethod (M_RecordFoldertempClassData.classObject,
  422.             somId_wpclsUnInitData,
  423.             (somMethodProc *) recfldercls_wpclsUnInitData);
  424. }
  425.  
  426. #pragma linkage(M_RecordFoldersomCreateClass, system)
  427. static void SOMLINK M_RecordFoldersomCreateClass(SOMClass *pClsObj,
  428.                            SOMClass *mClsObj)
  429. {
  430.     M_RecordFoldertempClassData.classObject = _somNew (mClsObj);
  431.     _somInitClass (M_RecordFoldertempClassData.classObject,
  432.         "M_RecordFolder",
  433.         pClsObj,
  434.         0,
  435.         M_RecordFolder_MaxNoMethods,
  436.         M_RecordFolder_MajorVersion,
  437.         M_RecordFolder_MinorVersion);
  438.     M_RecordFolderCClassData.instanceDataToken = 
  439.     _somGetInstanceToken(M_RecordFoldertempClassData.classObject);
  440.     M_RecordFoldersomInitializeClass();
  441.     M_RecordFolderCClassData.parentMtab =
  442.     _somGetPClsMtab(M_RecordFoldertempClassData.classObject);
  443.     _somSetClassData(M_RecordFoldertempClassData.classObject, (somClassDataStructure *)&M_RecordFolderClassData);
  444.     _somClassReady(M_RecordFoldertempClassData.classObject);
  445.     /* make newly created class object visible */
  446.     M_RecordFolderClassData.classObject = M_RecordFoldertempClassData.classObject;
  447. }
  448.  
  449. M_RecordFolder * SOMLINK M_RecordFolderNewClass (integer4 scemajorVersion,
  450.         integer4 sceminorVersion)
  451. {
  452.     SOMClass *pClsObj;
  453.     SOMClass *mClsObj;
  454.  
  455.     /* Check the version numbers */
  456.     if (((scemajorVersion != 0) && 
  457.          (scemajorVersion != M_RecordFolder_MajorVersion)) ||
  458.         ((sceminorVersion != 0) && 
  459.          (sceminorVersion < M_RecordFolder_MinorVersion))) {
  460.     somPrintf("M_RecordFolderNewClass: Error, bad version numbers.\n");
  461.     SOM_Error(SOMERROR_BadVersion);
  462.     }
  463.     /* Don't do anything if class object is already created. */
  464.     if (M_RecordFolderClassData.classObject != (SOMAny *) NULL)
  465.     return(M_RecordFolderClassData.classObject);
  466.  
  467.     /* Make sure the environment is initialized. */
  468.     if (SOMClassMgrObject == (SOMAny *) NULL) somEnvironmentNew();
  469.     if (SOMClassMgrObject == (SOMAny *) NULL)
  470.     SOM_Error(SOMERROR_CouldNotStartup);
  471.  
  472.     /* Get the parent class object. */
  473.     M_WPFolderNewClass(1,1);    /* static reference */
  474.     pClsObj = _somFindClass(SOMClassMgrObject,
  475.         SOM_IdFromString("M_WPFolder"), 1, 1);
  476.     if (pClsObj == (SOMClass *) NULL)
  477.     SOM_Error(SOMERROR_NoParentClass);
  478.  
  479.     /* Use parent's metaclass */ 
  480.     mClsObj = SOM_GetClass(pClsObj);
  481.  
  482.     somConstructClass(M_RecordFoldersomCreateClass, pClsObj, mClsObj,
  483.              &M_RecordFoldertempClassData);
  484.     return (M_RecordFolderClassData.classObject);
  485. }
  486.  
  487. #endif                   /* M_RecordFolder_Class_Source */
  488.  
  489. #endif       /* recflder_ih */
  490.