Add constructor and Set taking NSColor.
Change eqauality operator to check if the NSColor objects are the same instance or if all of the color components (m_red/green/blue) are identical. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -39,6 +39,12 @@ wxColour::wxColour (const wxColour& col)
|
||||
[m_cocoaNSColor retain];
|
||||
}
|
||||
|
||||
wxColour::wxColour( WX_NSColor aColor )
|
||||
: m_cocoaNSColor(nil)
|
||||
{
|
||||
Set(aColor);
|
||||
}
|
||||
|
||||
wxColour& wxColour::operator =(const wxColour& col)
|
||||
{
|
||||
m_cocoaNSColor = col.m_cocoaNSColor;
|
||||
@@ -80,3 +86,18 @@ void wxColour::Set (unsigned char r, unsigned char g, unsigned char b)
|
||||
m_blue = b;
|
||||
}
|
||||
|
||||
void wxColour::Set( WX_NSColor aColor )
|
||||
{
|
||||
[aColor retain];
|
||||
[m_cocoaNSColor release];
|
||||
m_cocoaNSColor = aColor;
|
||||
|
||||
/* Make a temporary color in RGB format and get the values. Note that
|
||||
unless the color was actually RGB to begin with it's likely that
|
||||
these will be fairly bogus. Particulary if the color is a pattern. */
|
||||
NSColor *rgbColor = [m_cocoaNSColor colorUsingColorSpaceName:NSCalibratedRGBColorSpace];
|
||||
m_red = [rgbColor redComponent]*255.0;
|
||||
m_green = [rgbColor greenComponent]*255.0;
|
||||
m_blue = [rgbColor blueComponent]*255.0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user