wxWidgets/include/wx/cocoa/dcmemory.h
Vadim Zeitlin fea35690f1 Added wxMemoryDC::SelectObjectAsSource() and make SelectObject() unshare
the bitmap to ensure that no other bitmaps are modified; also remove some code
duplication by introducing wxMemoryDCBase (patch 1580745)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-30 19:41:46 +00:00

48 lines
1.4 KiB
C++

/////////////////////////////////////////////////////////////////////////////
// Name: wx/cocoa/dcmemory.h
// Purpose: wxMemoryDC class
// Author: David Elliott
// Modified by:
// Created: 2003/03/16
// RCS-ID: $Id$
// Copyright: (c) 2003 David Elliott
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __WX_COCOA_DCMEMORY_H__
#define __WX_COCOA_DCMEMORY_H__
#include "wx/dc.h"
class WXDLLEXPORT wxMemoryDC: public wxDC, public wxMemoryDCBase
{
DECLARE_DYNAMIC_CLASS(wxMemoryDC)
public:
wxMemoryDC() { Init(); }
wxMemoryDC(wxBitmap& bitmap) { Init(); SelectObject(bitmap); }
wxMemoryDC( wxDC *dc ); // Create compatible DC
virtual ~wxMemoryDC(void);
virtual void DoGetSize(int *width, int *height) const;
virtual void DoSelect(const wxBitmap& bitmap);
protected:
wxBitmap m_selectedBitmap;
WX_NSImage m_cocoaNSImage;
// DC stack
virtual bool CocoaLockFocus();
virtual bool CocoaUnlockFocus();
virtual bool CocoaGetBounds(void *rectData);
// Blitting
virtual bool CocoaDoBlitOnFocusedDC(wxCoord xdest, wxCoord ydest,
wxCoord width, wxCoord height, wxCoord xsrc, wxCoord ysrc,
int logicalFunc, bool useMask, wxCoord xsrcMask, wxCoord ysrcMask);
private:
void Init();
};
#endif
// __WX_COCOA_DCMEMORY_H__