wxqt: improve wxbitmap and wxmask implementation

This commit is contained in:
Sean D'Epagnier
2016-08-24 16:39:23 -04:00
committed by Vadim Zeitlin
parent e7ca3220f3
commit 9f39eeb5e9
4 changed files with 72 additions and 71 deletions

View File

@@ -86,13 +86,14 @@ protected:
wxDECLARE_DYNAMIC_CLASS(wxBitmap);
};
class WXDLLIMPEXP_CORE wxMask : public wxObject
class WXDLLIMPEXP_CORE wxMask : public wxMaskBase
{
public:
wxMask();
// Copy constructor
wxMask(const wxMask &mask);
wxMask& operator=(const wxMask &mask);
// Construct a mask from a bitmap and a colour indicating the transparent
// area
@@ -104,19 +105,20 @@ public:
// Construct a mask from a mono bitmap (copies the bitmap).
wxMask(const wxBitmap& bitmap);
virtual ~wxMask();
bool Create(const wxBitmap& bitmap, const wxColour& colour);
bool Create(const wxBitmap& bitmap, int paletteIndex);
bool Create(const wxBitmap& bitmap);
wxBitmap GetBitmap() const;
// Implementation
QBitmap *GetHandle() const;
protected:
// this function is called from Create() to free the existing mask data
void FreeData();
// by the public wrappers
bool InitFromColour(const wxBitmap& bitmap, const wxColour& colour);
bool InitFromMonoBitmap(const wxBitmap& bitmap);
wxBitmap GetBitmap() const;
protected:
wxDECLARE_DYNAMIC_CLASS(wxMask);

View File

@@ -18,6 +18,7 @@ public:
wxMemoryDCImpl( wxMemoryDC *owner, wxDC *dc );
~wxMemoryDCImpl();
virtual wxBitmap DoGetAsBitmap(const wxRect *subrect) const;
virtual void DoSelect(const wxBitmap& bitmap);
virtual const wxBitmap& GetSelectedBitmap() const;