/////////////////////////////////////////////////////////////////////////////
-// Name: src/mac/carbon/colordlg.mm
+// Name: src/osx/carbon/colordlg.mm
// Purpose: wxColourDialog class. NOTE: you can use the generic class
// if you wish, instead of implementing this.
// Author: Ryan Norton
if (data)
m_colourData = *data;
- //
- // This is the key call - this initializes
- // events and window stuff for cocoa for carbon
- // applications.
- //
- // This is also the only call here that is
- // 10.2+ specific (the rest is OSX only),
- // which, ironically, the carbon font
- // panel requires.
- //
- bool bOK = NSApplicationLoad();
-
//autorelease pool - req'd for carbon
NSAutoreleasePool *thePool;
thePool = [[NSAutoreleasePool alloc] init];
- if(m_colourData.m_dataColour.Ok())
+ if(m_colourData.GetColour().IsOk())
[[NSColorPanel sharedColorPanel] setColor:
- [NSColor colorWithCalibratedRed:m_colourData.m_dataColour.Red() / 255.0
- green:m_colourData.m_dataColour.Green() / 255.0
- blue:m_colourData.m_dataColour.Blue() / 255.0
- alpha:1.0]
+ [NSColor colorWithCalibratedRed:(CGFloat) (m_colourData.GetColour().Red() / 255.0)
+ green:(CGFloat) (m_colourData.GetColour().Green() / 255.0)
+ blue:(CGFloat) (m_colourData.GetColour().Blue() / 255.0)
+ alpha:(CGFloat) 1.0]
];
else
[[NSColorPanel sharedColorPanel] setColor:[NSColor blackColor]];
//We're done - free up the pool
[thePool release];
- return bOK;
+ return true;
}
int wxColourDialog::ShowModal()
{
[NSApp endModalSession:session];
//free up the memory for the delegates - we don't need them anymore
+ [theColorPanel setDelegate:nil];
[theCPDelegate release];
//Get the shared color panel along with the chosen color and set the chosen color
NSColor* theColor = [[theColorPanel color] colorUsingColorSpaceName:NSCalibratedRGBColorSpace];
- m_colourData.m_dataColour.Set(
+ m_colourData.GetColour().Set(
(unsigned char) ([theColor redComponent] * 255.0),
(unsigned char) ([theColor greenComponent] * 255.0),
(unsigned char) ([theColor blueComponent] * 255.0)