wxColour wxGetColourFromUser(wxWindow *parent, const wxColour& colInit, const wxString& caption) { static wxColourData data; data.SetChooseFull(true); if ( colInit.Ok() ) { data.SetColour((wxColour &)colInit); // const_cast } wxColour colRet; wxColourDialog dialog(parent, &data); if (!caption.empty()) dialog.SetTitle(caption); if ( dialog.ShowModal() == wxID_OK ) { colRet = dialog.GetColourData().GetColour(); } //else: leave it invalid return colRet; }
//--------------------------------------------------------- bool DLG_Color(long &_Colour) { static wxColourData Colours; Colours.SetChooseFull(true); wxColour Colour(SG_GET_R(_Colour), SG_GET_G(_Colour), SG_GET_B(_Colour)); wxColourDialog dlg(MDI_Get_Top_Window(), &Colours); dlg.GetColourData().SetColour(Colour); if( dlg.ShowModal() == wxID_OK ) { Colours = dlg.GetColourData(); Colour = dlg.GetColourData().GetColour(); _Colour = Get_Color_asInt(Colour); return( true ); } return( false ); }