X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cb43b372fb1567caf7ccfa523aca10c676ceaec4..3f38e38ba5d6e3c433596e404d44060e60e6dd28:/samples/validate/validate.cpp diff --git a/samples/validate/validate.cpp b/samples/validate/validate.cpp index 334150af31..6236f14778 100644 --- a/samples/validate/validate.cpp +++ b/samples/validate/validate.cpp @@ -6,7 +6,7 @@ // Created: 04/01/98 // RCS-ID: $Id$ // Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows license +// Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// #ifdef __GNUG__ @@ -30,66 +30,82 @@ #include "validate.h" BEGIN_EVENT_TABLE(MyFrame, wxFrame) - EVT_MENU(wxID_EXIT, MyFrame::OnQuit) - EVT_MENU(VALIDATE_TEST_DIALOG, MyFrame::OnTestDialog) + EVT_MENU(wxID_EXIT, MyFrame::OnQuit) + EVT_MENU(VALIDATE_TEST_DIALOG, MyFrame::OnTestDialog) + EVT_MENU(VALIDATE_SILENT, MyFrame::OnSilent) END_EVENT_TABLE() IMPLEMENT_APP(MyApp) -MyData g_data; +MyData g_data; -bool MyApp::OnInit(void) +bool MyApp::OnInit() { // Create the main frame window - MyFrame *frame = new MyFrame((wxFrame *) NULL, (char *) "Validation Test", 50, 50, 300, 250); + MyFrame *frame = new MyFrame((wxFrame *) NULL, "Validation Test", 50, 50, 300, 250); + // Show the frame + frame->Show(TRUE); + + SetTopWindow(frame); + + return TRUE; +} + +// My frame constructor +MyFrame::MyFrame(wxFrame *frame, const char *title, int x, int y, int w, int h) + : wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h)) +{ // Give it an icon #ifdef __WXMSW__ - frame->SetIcon(wxIcon("mondrian")); + SetIcon(wxIcon("mondrian")); #endif #ifdef __X__ - frame->SetIcon(wxIcon("aiai.xbm")); + SetIcon(wxIcon("aiai.xbm")); #endif // Make a menubar wxMenu *file_menu = new wxMenu; - file_menu->Append(VALIDATE_TEST_DIALOG, "&Test dialog"); + file_menu->Append(VALIDATE_TEST_DIALOG, "&Test dialog", "Show example dialog"); + file_menu->Append(VALIDATE_SILENT, "&Bell on error", "Toggle bell on error", TRUE); + file_menu->AppendSeparator(); file_menu->Append(wxID_EXIT, "E&xit"); - wxMenuBar *menu_bar = new wxMenuBar; - menu_bar->Append(file_menu, "File"); - frame->SetMenuBar(menu_bar); - - frame->CreateStatusBar(1); - // Show the frame - frame->Show(TRUE); + file_menu->Check(VALIDATE_SILENT, !wxValidator::IsSilent()); - SetTopWindow(frame); + wxMenuBar *menu_bar = new wxMenuBar; + menu_bar->Append(file_menu, "File"); + SetMenuBar(menu_bar); - return TRUE; + CreateStatusBar(1); } -// My frame constructor -MyFrame::MyFrame(wxFrame *frame, char *title, int x, int y, int w, int h): - wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h)) -{} - void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event)) { - Close(TRUE); + Close(TRUE); } void MyFrame::OnTestDialog(wxCommandEvent& WXUNUSED(event)) { - MyDialog dialog(this, "Validation test dialog", wxPoint(100, 100), wxSize(340, 170)); + MyDialog dialog(this, "Validation test dialog", wxPoint(100, 100), wxSize(340, 170)); + + dialog.ShowModal(); +} + +void MyFrame::OnSilent(wxCommandEvent& event) +{ + static bool s_silent = FALSE; + + s_silent = !s_silent; + wxValidator::SetBellOnError(s_silent); - dialog.ShowModal(); + event.Skip(); } -MyDialog::MyDialog( wxWindow *parent, const wxString& title, +MyDialog::MyDialog( wxWindow *parent, const wxString& title, const wxPoint& pos, const wxSize& size, const long WXUNUSED(style) ) : - wxDialog(parent, VALIDATE_DIALOG_ID, title, pos, size, wxDEFAULT_DIALOG_STYLE|wxDIALOG_MODAL) + wxDialog(parent, VALIDATE_DIALOG_ID, title, pos, size, wxDEFAULT_DIALOG_STYLE|wxDIALOG_MODAL) { wxButton *but1 = new wxButton(this, wxID_OK, "OK", wxPoint(250, 10), wxSize(80, 30)); (void)new wxButton(this, wxID_CANCEL, "Cancel", wxPoint(250, 60), wxSize(80, 30));