#ifndef _WX_GTK_COLOUR_H_
#define _WX_GTK_COLOUR_H_
+#ifdef __WXGTK3__
+typedef struct _GdkRGBA GdkRGBA;
+#endif
+
//-----------------------------------------------------------------------------
// wxColour
//-----------------------------------------------------------------------------
public:
// constructors
// ------------
-
- // default
- wxColour() {}
DEFINE_STD_WXCOLOUR_CONSTRUCTORS
wxColour(const GdkColor& gdkColor);
+#ifdef __WXGTK3__
+ wxColour(const GdkRGBA& gdkRGBA);
+#endif
- ~wxColour();
-
- bool Ok() const { return m_refData != NULL; }
+ virtual ~wxColour();
- bool operator == ( const wxColour& col ) const;
- bool operator != ( const wxColour& col ) const { return !(*this == col); }
+ bool operator==(const wxColour& col) const;
+ bool operator!=(const wxColour& col) const { return !(*this == col); }
unsigned char Red() const;
unsigned char Green() const;
unsigned char Blue() const;
+ unsigned char Alpha() const;
// Implementation part
+#ifdef __WXGTK3__
+ operator const GdkRGBA*() const;
+#else
void CalcPixel( GdkColormap *cmap );
int GetPixel() const;
-#ifdef __WXGTK24__
- const GdkColor *GetColor() const;
-#else
- // GDK functions from old gtk2 versions take non-const color parameters,
- // too many uses to deal with individually
- GdkColor *GetColor() const;
#endif
+ const GdkColor *GetColor() const;
protected:
- virtual bool FromString(const wxChar *str);
- virtual void InitWith( unsigned char red, unsigned char green, unsigned char blue );
+ virtual void
+ InitRGBA(unsigned char r, unsigned char g, unsigned char b, unsigned char a);
+
+ virtual bool FromString(const wxString& str);
-private:
DECLARE_DYNAMIC_CLASS(wxColour)
};