1 ///////////////////////////////////////////////////////////////////////////// 2 // Name: wx/generic/colour.h 3 // Purpose: wxColour class 4 // Author: Julian Smart 5 // Modified by: 6 // Created: 01/02/97 7 // RCS-ID: $Id: colour.h 41751 2006-10-08 21:56:55Z VZ $ 8 // Copyright: (c) Julian Smart 9 // Licence: wxWindows licence 10 ///////////////////////////////////////////////////////////////////////////// 11 12 #ifndef _WX_GENERIC_COLOUR_H_ 13 #define _WX_GENERIC_COLOUR_H_ 14 15 #include "wx/object.h" 16 17 // Colour 18 class WXDLLEXPORT wxColour: public wxColourBase 19 { 20 public: 21 // constructors 22 // ------------ 23 24 // default 25 wxColour(); 26 DEFINE_STD_WXCOLOUR_CONSTRUCTORS 27 28 // copy ctors and assignment operators 29 wxColour(const wxColour& col); 30 wxColour& operator=(const wxColour& col); 31 32 // dtor 33 virtual ~wxColour(); 34 35 // accessors Ok()36 bool Ok() const { return IsOk(); } IsOk()37 bool IsOk() const { return m_isInit; } 38 Red()39 unsigned char Red() const { return m_red; } Green()40 unsigned char Green() const { return m_green; } Blue()41 unsigned char Blue() const { return m_blue; } Alpha()42 unsigned char Alpha() const { return m_alpha; } 43 44 // comparison 45 bool operator==(const wxColour& colour) const 46 { 47 return (m_red == colour.m_red && 48 m_green == colour.m_green && 49 m_blue == colour.m_blue && 50 m_alpha == colour.m_alpha && 51 m_isInit == colour.m_isInit); 52 } 53 54 bool operator!=(const wxColour& colour) const { return !(*this == colour); } 55 56 protected: 57 58 // Helper function 59 void Init(); 60 61 virtual void 62 InitRGBA(unsigned char r, unsigned char g, unsigned char b, unsigned char a); 63 64 private: 65 bool m_isInit; 66 unsigned char m_red; 67 unsigned char m_blue; 68 unsigned char m_green; 69 unsigned char m_alpha; 70 71 private: 72 DECLARE_DYNAMIC_CLASS(wxColour) 73 }; 74 75 #endif // _WX_GENERIC_COLOUR_H_ 76