]> git.saurik.com Git - wxWidgets.git/blame - include/wx/x11/colour.h
using subclass as impl ptr, common code in macro because mix-in are not possible...
[wxWidgets.git] / include / wx / x11 / colour.h
CommitLineData
83df96d6 1/////////////////////////////////////////////////////////////////////////////
edc536d3 2// Name: wx/x11/colour.h
83df96d6 3// Purpose: wxColour class
3cd0b8c5 4// Author: Julian Smart, Robert Roebling
83df96d6
JS
5// Modified by:
6// Created: 17/09/98
7// RCS-ID: $Id$
3cd0b8c5 8// Copyright: (c) Julian Smart, Robert Roebling
edc536d3 9// Licence: wxWindows licence
83df96d6
JS
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_COLOUR_H_
13#define _WX_COLOUR_H_
14
3cd0b8c5 15#include "wx/defs.h"
83df96d6
JS
16#include "wx/object.h"
17#include "wx/string.h"
3cd0b8c5
RR
18#include "wx/gdiobj.h"
19#include "wx/palette.h"
83df96d6 20
3cd0b8c5
RR
21//-----------------------------------------------------------------------------
22// classes
23//-----------------------------------------------------------------------------
24
b5dbe15d
VS
25class WXDLLIMPEXP_FWD_CORE wxDC;
26class WXDLLIMPEXP_FWD_CORE wxPaintDC;
27class WXDLLIMPEXP_FWD_CORE wxBitmap;
28class WXDLLIMPEXP_FWD_CORE wxWindow;
3cd0b8c5 29
b5dbe15d 30class WXDLLIMPEXP_FWD_CORE wxColour;
3cd0b8c5
RR
31
32//-----------------------------------------------------------------------------
33// wxColour
34//-----------------------------------------------------------------------------
35
53a2db12 36class WXDLLIMPEXP_CORE wxColour : public wxColourBase
83df96d6 37{
83df96d6 38public:
edc536d3
WS
39 // constructors
40 // ------------
40989e46 41 DEFINE_STD_WXCOLOUR_CONSTRUCTORS
564a150b 42
d3c7fc99 43 virtual ~wxColour();
3cd0b8c5 44
8f884a0d
VZ
45 bool operator==(const wxColour& col) const;
46 bool operator!=(const wxColour& col) const { return !(*this == col); }
3cd0b8c5 47
3cd0b8c5
RR
48 unsigned char Red() const;
49 unsigned char Green() const;
50 unsigned char Blue() const;
51
52 // Implementation part
aad6765c 53
3cd0b8c5
RR
54 void CalcPixel( WXColormap cmap );
55 unsigned long GetPixel() const;
56 WXColor *GetColor() const;
57
58protected:
8f884a0d
VZ
59 virtual wxGDIRefData *CreateGDIRefData() const;
60 virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
aad6765c 61
aea95b1c
VZ
62 virtual void
63 InitRGBA(unsigned char r, unsigned char g, unsigned char b, unsigned char a);
64
e86d4e59 65 virtual bool FromString(const wxString& str);
3cd0b8c5 66
83df96d6 67private:
3cd0b8c5 68 DECLARE_DYNAMIC_CLASS(wxColour)
83df96d6
JS
69};
70
8f884a0d 71#endif // _WX_COLOUR_H_