home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD2.mdf / c / library / os2 / blackhol / blakhole.c next >
Encoding:
C/C++ Source or Header  |  1992-12-01  |  3.4 KB  |  133 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: Blakhole.c.
  5.  * Generated using:
  6.  *     SOM Precompiler spc: 1.22
  7.  *     SOM Emitter emitc: 1.24
  8.  */
  9.  
  10. /*
  11.  *  WPS class template
  12.  */
  13.  
  14.  
  15. #define INCL_DOSMODULEMGR
  16. #define INCL_WINSTDDRAG
  17.  
  18. #define Blakhole_Class_Source
  19. #include "Blakhole.ih"
  20.  
  21. #undef SOM_CurrentClass
  22. #define SOM_CurrentClass SOMMeta
  23.  
  24. /*** query module handle ***/
  25.  
  26. HMODULE QueryModuleHandle()
  27. {
  28.     zString ModulePathName;
  29.     static HMODULE hmod = NULLHANDLE;
  30.  
  31.     if (hmod == NULLHANDLE)
  32.     {
  33.         ModulePathName =
  34.             _somLocateClassFile
  35.             (
  36.                 SOMClassMgrObject,
  37.                 SOM_IdFromString("Blakhole"),
  38.                 Blakhole_MajorVersion,
  39.                 Blakhole_MinorVersion
  40.             )
  41.         ;
  42.  
  43.         DosQueryModuleHandle(ModulePathName, &hmod);
  44.     }
  45.  
  46.     return hmod;
  47. }
  48.  
  49. SOM_Scope ULONG   SOMLINK blakholeM_wpclsQueryStyle(M_Blakhole *somSelf)
  50. {
  51.     /* M_BlakholeData *somThis = M_BlakholeGetData(somSelf); */
  52.     M_BlakholeMethodDebug("M_Blakhole","blakholeM_wpclsQueryStyle");
  53.  
  54.     return (parent_wpclsQueryStyle(somSelf) | CLSSTYLE_NEVERTEMPLATE);
  55. }
  56.  
  57. SOM_Scope PSZ   SOMLINK blakholeM_wpclsQueryTitle(M_Blakhole *somSelf)
  58. {
  59.     /* M_BlakholeData *somThis = M_BlakholeGetData(somSelf); */
  60.     M_BlakholeMethodDebug("M_Blakhole","blakholeM_wpclsQueryTitle");
  61.  
  62.     return "Blakhole";
  63.  
  64. /***    return (parent_wpclsQueryTitle(somSelf)); ***/
  65. }
  66.  
  67. SOM_Scope ULONG   SOMLINK blakholeM_wpclsQueryIconData(M_Blakhole *somSelf,
  68.         PICONINFO pIconInfo)
  69. {
  70.     /* M_BlakholeData *somThis = M_BlakholeGetData(somSelf); */
  71.     M_BlakholeMethodDebug("M_Blakhole","blakholeM_wpclsQueryIconData");
  72.  
  73.     if (pIconInfo)
  74.     {
  75.         pIconInfo->cb = sizeof(ICONINFO);
  76.         pIconInfo->fFormat = ICON_RESOURCE;
  77.         pIconInfo->hmod = QueryModuleHandle();
  78.         pIconInfo->resid = ID_ICON;
  79.     }
  80.  
  81.     return (ULONG)sizeof(ICONINFO);
  82.  
  83. /***    return (parent_wpclsQueryIconData(somSelf,pIconInfo)); ***/
  84. }
  85.  
  86. #undef SOM_CurrentClass
  87. #define SOM_CurrentClass SOMInstance
  88.  
  89. SOM_Scope MRESULT   SOMLINK blakhole_wpDragOver(Blakhole *somSelf,
  90.         HWND hwndCnr,
  91.         PDRAGINFO pdrgInfo)
  92. {
  93.     PDRAGITEM pdrgItem;
  94.     ULONG ulIndex;
  95.  
  96.     /* BlakholeData *somThis = BlakholeGetData(somSelf); */
  97.     BlakholeMethodDebug("Blakhole","blakhole_wpDragOver");
  98.  
  99.     for (ulIndex = 0; ulIndex < DrgQueryDragitemCount(pdrgInfo); ulIndex ++)
  100.     {
  101.         pdrgItem = DrgQueryDragitemPtr(pdrgInfo, ulIndex);
  102.  
  103.         if (!DrgVerifyRMF(pdrgItem, "DRM_OBJECT", "DRF_OBJECT"))
  104.         {
  105.             return MRFROM2SHORT(DOR_NEVERDROP, DO_UNKNOWN);
  106.         }
  107.     }
  108.  
  109.     return MRFROM2SHORT(DOR_DROP, DO_UNKNOWN);
  110.  
  111. /***    return (parent_wpDragOver(somSelf,hwndCnr,pdrgInfo)); ***/
  112. }
  113.  
  114. SOM_Scope MRESULT   SOMLINK blakhole_wpDrop(Blakhole *somSelf,
  115.         HWND hwndCnr,
  116.         PDRAGINFO pdrgInfo,
  117.         PDRAGITEM pdrgItem)
  118. {
  119.     WPObject* object;
  120.  
  121.     /* BlakholeData *somThis = BlakholeGetData(somSelf); */
  122.     BlakholeMethodDebug("Blakhole","blakhole_wpDrop");
  123.   
  124.     if (DrgVerifyRMF(pdrgItem, "DRM_OBJECT", "DRF_OBJECT"))
  125.     {
  126.         object = (WPObject *)OBJECT_FROM_PREC(pdrgItem->ulItemID);
  127.         _wpSetStyle(object, _wpQueryStyle(object) & (~OBJSTYLE_NODELETE));
  128.         _wpDelete(object, CONFIRM_DELETE);
  129.     }
  130.  
  131.     return (parent_wpDrop(somSelf,hwndCnr,pdrgInfo,pdrgItem));
  132. }
  133.