1/////////////////////////////////////////////////////////////////////////////// 2// Name: wx/generic/mask.h 3// Purpose: generic implementation of wxMask 4// Author: Vadim Zeitlin 5// Created: 2006-09-28 6// RCS-ID: $Id: mask.h 41495 2006-09-28 23:02:39Z VZ $ 7// Copyright: (c) 2006 Vadim Zeitlin <vadim@wxwindows.org> 8// Licence: wxWindows licence 9/////////////////////////////////////////////////////////////////////////////// 10 11#ifndef _WX_GENERIC_MASKG_H_ 12#define _WX_GENERIC_MASKG_H_ 13 14// ---------------------------------------------------------------------------- 15// generic wxMask implementation 16// ---------------------------------------------------------------------------- 17 18class WXDLLEXPORT wxMask : public wxMaskBase 19{ 20public: 21 wxMask() { } 22 wxMask(const wxBitmap& bitmap, const wxColour& colour) 23 { 24 InitFromColour(bitmap, colour); 25 } 26 27#if wxUSE_PALETTE 28 wxMask(const wxBitmap& bitmap, int paletteIndex) 29 { 30 Create(bitmap, paletteIndex); 31 } 32#endif // wxUSE_PALETTE 33 34 wxMask(const wxBitmap& bitmap) 35 { 36 InitFromMonoBitmap(bitmap); 37 } 38 39 // implementation-only from now on 40 wxBitmap GetBitmap() const { return m_bitmap; } 41 42private: 43 // implement wxMaskBase pure virtuals 44 virtual void FreeData(); 45 virtual bool InitFromColour(const wxBitmap& bitmap, const wxColour& colour); 46 virtual bool InitFromMonoBitmap(const wxBitmap& bitmap); 47 48 wxBitmap m_bitmap; 49 50 DECLARE_DYNAMIC_CLASS(wxMask) 51}; 52 53#endif // _WX_GENERIC_MASKG_H_ 54 55