From 8fee6a9a2bd35cb3044463dd3cb2badb93cded67 Mon Sep 17 00:00:00 2001 From: Artur Wieczorek Date: Thu, 29 Oct 2015 09:29:46 +0100 Subject: [PATCH] Modify dialogs sample to present also generic colour dialog with alpha support. Added separate submenu and menu items to show generic colour dialogs with opacity control enabled/disabled. --- samples/dialogs/dialogs.cpp | 9 +++++++-- samples/dialogs/dialogs.h | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/samples/dialogs/dialogs.cpp b/samples/dialogs/dialogs.cpp index ec3f4ab0bc..b31c00629c 100644 --- a/samples/dialogs/dialogs.cpp +++ b/samples/dialogs/dialogs.cpp @@ -221,6 +221,7 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) #if USE_COLOURDLG_GENERIC EVT_MENU(DIALOGS_CHOOSE_COLOUR_GENERIC, MyFrame::ChooseColourGeneric) + EVT_MENU(DIALOGS_CHOOSE_COLOUR_GENERIC_ALPHA, MyFrame::ChooseColourGeneric) #endif // USE_COLOURDLG_GENERIC #if wxUSE_PROGRESSDLG @@ -400,7 +401,10 @@ bool MyApp::OnInit() #endif // USE_COLOURDLG_GENERIC || USE_FONTDLG_GENERIC #if USE_COLOURDLG_GENERIC - choices_menu->Append(DIALOGS_CHOOSE_COLOUR_GENERIC, wxT("&Choose colour (generic)")); + wxMenu *colourGeneric_menu = new wxMenu; + colourGeneric_menu->Append(DIALOGS_CHOOSE_COLOUR_GENERIC, wxT("&No opacity")); + colourGeneric_menu->Append(DIALOGS_CHOOSE_COLOUR_GENERIC_ALPHA, wxT("&With opacity")); + choices_menu->Append(wxID_ANY, wxT("&Choose colour (generic)"), colourGeneric_menu); #endif // USE_COLOURDLG_GENERIC #if USE_FONTDLG_GENERIC @@ -741,12 +745,13 @@ void MyFrame::GetColour(wxCommandEvent& WXUNUSED(event)) #if USE_COLOURDLG_GENERIC -void MyFrame::ChooseColourGeneric(wxCommandEvent& WXUNUSED(event)) +void MyFrame::ChooseColourGeneric(wxCommandEvent& event) { m_clrData.SetColour(m_canvas->GetBackgroundColour()); //FIXME:TODO:This has no effect... m_clrData.SetChooseFull(true); + m_clrData.SetChooseAlpha(event.GetId() == DIALOGS_CHOOSE_COLOUR_GENERIC_ALPHA); for (int i = 0; i < 16; i++) { diff --git a/samples/dialogs/dialogs.h b/samples/dialogs/dialogs.h index bf174f8dbf..3d8647399b 100644 --- a/samples/dialogs/dialogs.h +++ b/samples/dialogs/dialogs.h @@ -536,6 +536,7 @@ enum DIALOGS_CHOOSE_COLOUR = wxID_HIGHEST, DIALOGS_GET_COLOUR, DIALOGS_CHOOSE_COLOUR_GENERIC, + DIALOGS_CHOOSE_COLOUR_GENERIC_ALPHA, DIALOGS_CHOOSE_FONT, DIALOGS_CHOOSE_FONT_GENERIC, DIALOGS_MESSAGE_BOX,