X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d96cdd4a885886d1c76c6f4cb1a7eefba34b3d10..55325d01e68cfb071e42699ca72ba84a7071aa2b:/samples/xrc/myframe.cpp?ds=sidebyside diff --git a/samples/xrc/myframe.cpp b/samples/xrc/myframe.cpp index 577997cc1e..0d396f3d56 100644 --- a/samples/xrc/myframe.cpp +++ b/samples/xrc/myframe.cpp @@ -7,14 +7,6 @@ // Licence: wxWindows licence //----------------------------------------------------------------------------- -//----------------------------------------------------------------------------- -// GCC implementation -//----------------------------------------------------------------------------- - -#ifdef __GNUG__ - #pragma implementation "myframe.h" -#endif - //----------------------------------------------------------------------------- // Standard wxWidgets headers //----------------------------------------------------------------------------- @@ -82,6 +74,9 @@ // ID name to help new users emphasize this point which is often overlooked // when starting out with wxWidgets. BEGIN_EVENT_TABLE(MyFrame, wxFrame) + EVT_MENU(XRCID("unload_resource_menuitem"), MyFrame::OnUnloadResourceMenuCommand) + EVT_MENU(XRCID("reload_resource_menuitem"), MyFrame::OnReloadResourceMenuCommand) + EVT_MENU(XRCID("exit_tool_or_menuitem"), MyFrame::OnExitToolOrMenuCommand) EVT_MENU(XRCID("exit_tool_or_menuitem"), MyFrame::OnExitToolOrMenuCommand) EVT_MENU(XRCID("non_derived_dialog_tool_or_menuitem"), MyFrame::OnNonDerivedDialogToolOrMenuCommand) EVT_MENU(XRCID("derived_tool_or_menuitem"), MyFrame::OnDerivedDialogToolOrMenuCommand) @@ -123,7 +118,7 @@ MyFrame::MyFrame(wxWindow* parent) SetToolBar(wxXmlResource::Get()->LoadToolBar(this, wxT("main_toolbar"))); #if wxUSE_STATUSBAR - // Give the frame a optional statusbar. The '1' just means one field. + // Give the frame an optional statusbar. The '1' just means one field. // A gripsizer will automatically get put on into the corner, if that // is the normal OS behaviour for frames on that platform. Helptext // for menu items and toolbar tools will automatically get displayed @@ -136,6 +131,23 @@ MyFrame::MyFrame(wxWindow* parent) // Private methods //----------------------------------------------------------------------------- +void MyFrame::OnUnloadResourceMenuCommand(wxCommandEvent& WXUNUSED(event)) +{ + if ( wxXmlResource::Get()->Unload(wxT("rc/basicdlg.xrc")) ) + wxLogMessage(_T("Basic dialog resource has now been unloaded, you ") + _T("won't be able to use it before loading it again")); + else + wxLogWarning(_T("Failed to unload basic dialog resource")); +} + +void MyFrame::OnReloadResourceMenuCommand(wxCommandEvent& WXUNUSED(event)) +{ + if ( wxXmlResource::Get()->Load(wxT("rc/basicdlg.xrc")) ) + wxLogStatus(_T("Basic dialog resource has been loaded.")); + else + wxLogError(_T("Failed to load basic dialog resource")); +} + void MyFrame::OnExitToolOrMenuCommand(wxCommandEvent& WXUNUSED(event)) { // true is to force the frame to close. @@ -148,9 +160,8 @@ void MyFrame::OnNonDerivedDialogToolOrMenuCommand(wxCommandEvent& WXUNUSED(event wxDialog dlg; // "non_derived_dialog" is the name of the wxDialog XRC node that should // be loaded. - wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("non_derived_dialog")); - dlg.ShowModal(); - + if ( wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("non_derived_dialog")) ) + dlg.ShowModal(); } @@ -172,7 +183,7 @@ void MyFrame::OnControlsToolOrMenuCommand(wxCommandEvent& WXUNUSED(event)) #if wxUSE_LISTCTRL // There is no data in the listctrl. This will add some columns - // and some data. You don't need use any pointers + // and some data. You don't need to use any pointers // at all to manipulate the controls, just simply use the XRCCTL(...) macros. // "controls_treectrl" is the name of this control in the XRC. // (1) Insert a column, with the column header of "Name"