dcmemory.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /////////////////////////////////////////////////////////////////////////////
  2. // Name: wx/cocoa/dcmemory.h
  3. // Purpose: wxMemoryDCImpl class
  4. // Author: David Elliott
  5. // Modified by:
  6. // Created: 2003/03/16
  7. // Copyright: (c) 2003 David Elliott
  8. // Licence: wxWindows licence
  9. /////////////////////////////////////////////////////////////////////////////
  10. #ifndef __WX_COCOA_DCMEMORY_H__
  11. #define __WX_COCOA_DCMEMORY_H__
  12. #include "wx/cocoa/dc.h"
  13. #include "wx/dcmemory.h"
  14. class WXDLLIMPEXP_CORE wxMemoryDCImpl: public wxCocoaDCImpl
  15. {
  16. DECLARE_DYNAMIC_CLASS(wxMemoryDCImpl)
  17. public:
  18. wxMemoryDCImpl(wxMemoryDC *owner)
  19. : wxCocoaDCImpl(owner)
  20. { Init(); }
  21. wxMemoryDCImpl(wxMemoryDC *owner, wxBitmap& bitmap)
  22. : wxCocoaDCImpl(owner)
  23. { Init();
  24. owner->SelectObject(bitmap);
  25. }
  26. wxMemoryDCImpl(wxMemoryDC *owner, wxDC *dc ); // Create compatible DC
  27. virtual ~wxMemoryDCImpl(void);
  28. virtual void DoGetSize(int *width, int *height) const;
  29. virtual void DoSelect(const wxBitmap& bitmap);
  30. protected:
  31. wxBitmap m_selectedBitmap;
  32. WX_NSImage m_cocoaNSImage;
  33. // DC stack
  34. virtual bool CocoaLockFocus();
  35. virtual bool CocoaUnlockFocus();
  36. virtual bool CocoaGetBounds(void *rectData);
  37. // Blitting
  38. virtual bool CocoaDoBlitOnFocusedDC(wxCoord xdest, wxCoord ydest,
  39. wxCoord width, wxCoord height, wxCoord xsrc, wxCoord ysrc,
  40. wxRasterOperationMode logicalFunc, bool useMask, wxCoord xsrcMask, wxCoord ysrcMask);
  41. private:
  42. void Init();
  43. };
  44. #endif
  45. // __WX_COCOA_DCMEMORY_H__