improve wxqt color implementation thanks @catalinr

This commit is contained in:
Sean D'Epagnier
2016-09-12 12:17:20 -04:00
committed by Vadim Zeitlin
parent bf9eacad16
commit 42144b93b7
2 changed files with 10 additions and 16 deletions

View File

@@ -18,12 +18,12 @@ public:
DEFINE_STD_WXCOLOUR_CONSTRUCTORS DEFINE_STD_WXCOLOUR_CONSTRUCTORS
wxColour(const QColor& color); wxColour(const QColor& color);
virtual bool IsOk() const; virtual bool IsOk() const { return valid; }
unsigned char Red() const; ChannelType Red() const { return m_red; }
unsigned char Green() const; ChannelType Green() const { return m_green; }
unsigned char Blue() const; ChannelType Blue() const { return m_blue; }
unsigned char Alpha() const; ChannelType Alpha() const { return m_alpha; }
bool operator==(const wxColour& color) const; bool operator==(const wxColour& color) const;
bool operator!=(const wxColour& color) const; bool operator!=(const wxColour& color) const;
@@ -37,7 +37,7 @@ protected:
virtual void InitRGBA(ChannelType r, ChannelType g, ChannelType b, ChannelType a); virtual void InitRGBA(ChannelType r, ChannelType g, ChannelType b, ChannelType a);
private: private:
unsigned char red, green, blue, alpha; ChannelType m_red, m_green, m_blue, m_alpha;
bool valid; bool valid;
wxDECLARE_DYNAMIC_CLASS(wxColour); wxDECLARE_DYNAMIC_CLASS(wxColour);

View File

@@ -28,16 +28,9 @@ wxColour::wxColour(const QColor& color)
InitRGBA(color.red(), color.green(), color.blue(), color.alpha()); InitRGBA(color.red(), color.green(), color.blue(), color.alpha());
} }
bool wxColour::IsOk() const { return valid; }
unsigned char wxColour::Red() const { return red; }
unsigned char wxColour::Green() const { return green; }
unsigned char wxColour::Blue() const { return blue; }
unsigned char wxColour::Alpha() const { return alpha; }
bool wxColour::operator==(const wxColour& color) const bool wxColour::operator==(const wxColour& color) const
{ {
return red == color.red && green == color.green && blue == color.blue && alpha == color.alpha; return m_red == color.m_red && m_green == color.m_green && m_blue == color.m_blue && m_alpha == color.m_alpha;
} }
bool wxColour::operator!=(const wxColour& color) const bool wxColour::operator!=(const wxColour& color) const
@@ -54,17 +47,18 @@ int wxColour::GetPixel() const
QColor wxColour::GetQColor() const QColor wxColour::GetQColor() const
{ {
if( valid ) if( valid )
return QColor(red, green, blue, alpha); return QColor(m_red, m_green, m_blue, m_alpha);
return QColor(); return QColor();
} }
void wxColour::Init() void wxColour::Init()
{ {
m_red = m_green = m_blue = m_alpha = 0;
valid = false; valid = false;
} }
void wxColour::InitRGBA(ChannelType r, ChannelType g, ChannelType b, ChannelType a) void wxColour::InitRGBA(ChannelType r, ChannelType g, ChannelType b, ChannelType a)
{ {
red = r, green = g, blue = b, alpha = a; m_red = r, m_green = g, m_blue = b, m_alpha = a;
valid = true; valid = true;
} }