1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxColour class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
16 #pragma interface "colour.h"
20 class WXDLLEXPORT wxColour
: public wxObject
24 wxColour(const unsigned char r
, const unsigned char g
, const unsigned char b
);
25 wxColour(unsigned long colRGB
) { Set(colRGB
); }
26 wxColour(const wxColour
& col
);
27 wxColour(const wxString
& col
) { InitFromName(col
); }
28 wxColour(const char *col
) { InitFromName(col
); }
31 wxColour
& operator =(const wxColour
& src
) ;
32 wxColour
& operator =(const wxString
& src
) ;
33 inline int Ok() const { return (m_isInit
) ; }
35 void Set(unsigned char r
, unsigned char g
, unsigned char b
);
36 void Set(unsigned long colRGB
)
38 // we don't need to know sizeof(long) here because we assume that the three
39 // least significant bytes contain the R, G and B values
40 Set((unsigned char)colRGB
,
41 (unsigned char)(colRGB
>> 8),
42 (unsigned char)(colRGB
>> 16));
45 // Let's remove this inelegant function
46 #if WXWIN_COMPATIBILITY
47 void Get(unsigned char *r
, unsigned char *g
, unsigned char *b
) const;
50 inline unsigned char Red() const { return m_red
; }
51 inline unsigned char Green() const { return m_green
; }
52 inline unsigned char Blue() const { return m_blue
; }
54 inline bool operator == (const wxColour
& colour
) { return (m_red
== colour
.m_red
&& m_green
== colour
.m_green
&& m_blue
== colour
.m_blue
); }
56 inline bool operator != (const wxColour
& colour
) { return (!(m_red
== colour
.m_red
&& m_green
== colour
.m_green
&& m_blue
== colour
.m_blue
)); }
58 WXCOLORREF
GetPixel() const { return m_pixel
; };
64 unsigned char m_green
;
67 void InitFromName(const wxString
& colourName
);
73 DECLARE_DYNAMIC_CLASS(wxColour
)
76 #define wxColor wxColour