X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b26c0958c0c5aa2506844678728860e08a02b73b..34bbbc276dc470014c8d200cfbbf7f588076aeaf:/samples/config/conftest.cpp diff --git a/samples/config/conftest.cpp b/samples/config/conftest.cpp index 4626dd0122..0dbc6cd148 100644 --- a/samples/config/conftest.cpp +++ b/samples/config/conftest.cpp @@ -46,7 +46,7 @@ public: void OnQuit(wxCommandEvent& event); void OnAbout(wxCommandEvent& event); void OnDelete(wxCommandEvent& event); - bool OnClose() { return TRUE; } + void OnCloseWindow(wxCloseEvent& event); private: wxTextCtrl *m_text; @@ -69,6 +69,7 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_MENU(Minimal_Quit, MyFrame::OnQuit) EVT_MENU(Minimal_About, MyFrame::OnAbout) EVT_MENU(Minimal_Delete, MyFrame::OnDelete) + EVT_CLOSE(MyFrame::OnCloseWindow) END_EVENT_TABLE() // ============================================================================ @@ -140,6 +141,12 @@ int MyApp::OnExit() MyFrame::MyFrame() : wxFrame((wxFrame *) NULL, -1, "wxConfig Demo") { + // submenu + wxMenu *sub_menu = new wxMenu( wxEmptyString, wxMENU_TEAROFF ); + sub_menu->Append(Minimal_About, "&About", "About this sample"); + sub_menu->Append(Minimal_About, "&About", "About this sample"); + sub_menu->Append(Minimal_About, "&About", "About this sample"); + // menu wxMenu *file_menu = new wxMenu; @@ -189,6 +196,11 @@ MyFrame::MyFrame() SetClientSize(w, h); } +void MyFrame::OnCloseWindow(wxCloseEvent& event) +{ + this->Destroy(); +} + void MyFrame::OnQuit(wxCommandEvent&) { Close(TRUE); @@ -196,24 +208,22 @@ void MyFrame::OnQuit(wxCommandEvent&) void MyFrame::OnAbout(wxCommandEvent&) { - wxMessageBox("wxConfig demo\n© Vadim Zeitlin 1998", "About", + wxMessageBox(_T("wxConfig demo\n© Vadim Zeitlin 1998"), _T("About"), wxICON_INFORMATION | wxOK); } void MyFrame::OnDelete(wxCommandEvent&) { - // VZ: it seems that DeleteAll() wreaks havoc on NT. Disabled until I - // investigate it further, do _not_ compile this code in meanwhile! -#if 0 - if ( wxConfigBase::Get()->DeleteAll() ) { - wxLogMessage("Config file/registry key successfully deleted."); - - delete wxConfigBase::Set((wxConfigBase *) NULL); - wxConfigBase::DontCreateOnDemand(); - } - else -#endif // 0 - wxLogError("Deleting config file/registry key failed."); + if ( wxConfigBase::Get()->DeleteAll() ) { + wxLogMessage(_T("Config file/registry key successfully deleted.")); + + delete wxConfigBase::Set((wxConfigBase *) NULL); + wxConfigBase::DontCreateOnDemand(); + } + else + { + wxLogError(_T("Deleting config file/registry key failed.")); + } } MyFrame::~MyFrame()