home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / idmsrcrn.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-22  |  3.1 KB  |  86 lines

  1. #ifndef _IDMSRCRN_
  2. #define _IDMSRCRN_
  3. /*******************************************************************************
  4. * FILE NAME: idmsrcrn.hpp                                                      *
  5. *                                                                              *
  6. * DESCRIPTION:                                                                 *
  7. *   Declaration of the classes:                                                *
  8. *     IDMSourceRenderer                                                        *
  9. *                                                                              *
  10. * COPYRIGHT:                                                                   *
  11. *   IBM Open Class Library                                                     *
  12. *   (C) Copyright International Business Machines Corporation 1992, 1996       *
  13. *   Licensed Material - Program-Property of IBM - All Rights Reserved.         *
  14. *   US Government Users Restricted Rights - Use, duplication, or disclosure    *
  15. *   restricted by GSA ADP Schedule Contract with IBM Corp.                     *
  16. *                                                                              *
  17. *******************************************************************************/
  18. #include <idmrendr.hpp>
  19. #include <idmcomm.hpp>
  20. #include <istring.hpp>
  21.  
  22. struct  _DRAGTRANSFER;
  23.  
  24. class   IDMSourceRenderEvent;
  25. class   IDMSourcePrepareEvent;
  26. class   IDMSourceEndEvent;
  27. class   IDMSourceDiscardEvent;
  28. class   IDMSourcePrintEvent;
  29. class   IDMSourceRendererData;
  30.  
  31. #pragma pack(4)
  32.  
  33.  
  34. class IDMSourceRenderer : public IDMRenderer {
  35. typedef IDMRenderer
  36.   Inherited;
  37. public:
  38. /*------------------------------- Constructors -------------------------------*/
  39.   IDMSourceRenderer  ( const char* rmfs, const char* type = IDM::any );
  40.  
  41.   IDMSourceRenderer  ( );
  42.  
  43. virtual
  44.   ~IDMSourceRenderer ( );
  45.  
  46. /*----------------------- Source and Target Rendering ------------------------*/
  47. virtual IDMSourceRenderer
  48.  &sourceRender             ( IDMSourceRenderEvent&  event ),
  49.  &sourcePrepare            ( IDMSourcePrepareEvent& event ),
  50.  &sourceEnd                ( IDMSourceEndEvent&     event );
  51. #ifndef IC_WIN_FLAGNOP
  52. virtual IDMSourceRenderer
  53.  &sourceDiscard            ( IDMSourceDiscardEvent& event ),
  54.  &sourcePrint              ( IDMSourcePrintEvent&   event ),
  55.  &informTargetOfCompletion ( IDMSourceRenderEvent&  event );
  56. #endif
  57.  
  58. virtual Boolean
  59.   canRender     ( const IString&         types );
  60.  
  61. protected:
  62. /*----------------------------- Renderer Specifics ---------------------------*/
  63. virtual Boolean
  64.   doRender        ( IDMSourceRenderEvent&  event ),
  65.   doRenderPrepare ( IDMSourcePrepareEvent& event ),
  66.   doRenderEnd     ( IDMSourceEndEvent&     event ),
  67. #ifndef IC_WIN_FLAGNOP
  68.   doDiscard       ( IDMSourceDiscardEvent& event ),
  69.   doPrint         ( IDMSourcePrintEvent&   event );
  70. #endif
  71.  
  72. private:
  73. /*--------------------------------- Private ----------------------------------*/
  74.  
  75. _DRAGTRANSFER
  76.  *pPMDragTransfer;
  77.  
  78. IDMSourceRendererData
  79.  *fDMSourceRendererData;
  80.  
  81. }; // class IDMSourceRenderer
  82.  
  83. #pragma pack()
  84.  
  85. #endif // _IDMSRCRN_
  86.