From 7ea1c917764fb2588fe1aadc75c49ba300f8cb2f Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Fri, 10 Mar 2006 16:03:09 +0000 Subject: [PATCH] using new API (no visual difference) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/mac/carbon/colordlg.cpp | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/mac/carbon/colordlg.cpp b/src/mac/carbon/colordlg.cpp index a60aad9323..4109e33488 100644 --- a/src/mac/carbon/colordlg.cpp +++ b/src/mac/carbon/colordlg.cpp @@ -50,8 +50,30 @@ bool wxColourDialog::Create(wxWindow *parent, wxColourData *data) int wxColourDialog::ShowModal() { + RGBColor currentColor = *((RGBColor*)m_colourData.m_dataColour.GetPixel()) ; + +#if TARGET_API_MAC_OSX + NColorPickerInfo info; + OSStatus err ; + memset(&info, 0, sizeof(info)) ; + // TODO : use parent to determine better position and then kAtSpecifiedOrigin + info.placeWhere = kCenterOnMainScreen ; + info.flags = kColorPickerDialogIsMoveable | kColorPickerDialogIsModal ; + info.theColor.color.rgb.red = currentColor.red ; + info.theColor.color.rgb.green = currentColor.green ; + info.theColor.color.rgb.blue = currentColor.blue ; + err = NPickColor(&info); + if ((err == noErr) && info.newColorChosen) + { + currentColor.red = info.theColor.color.rgb.red ; + currentColor.green = info.theColor.color.rgb.green ; + currentColor.blue = info.theColor.color.rgb.blue ; + m_colourData.m_dataColour.Set((WXCOLORREF*) ¤tColor); + return wxID_OK; + } +#else + RGBColor newColor ; Point where ; - RGBColor currentColor = *((RGBColor*)m_colourData.m_dataColour.GetPixel()) , newColor ; where.h = where.v = -1; @@ -60,7 +82,7 @@ int wxColourDialog::ShowModal() m_colourData.m_dataColour.Set( (WXCOLORREF*) &newColor ) ; return wxID_OK; } - +#endif return wxID_CANCEL; } -- 2.50.0