+ // any class wishing to process wxWindows events must use this macro
+ DECLARE_EVENT_TABLE()
+ };
+
+// ----------------------------------------------------------------------------
+// constants
+// ----------------------------------------------------------------------------
+
+// IDs for the controls and the menu commands
+ enum
+ {
+ // menu items
+ Minimal_Quit = 1,
+ Minimal_Help
+ };
+
+// ----------------------------------------------------------------------------
+// event tables and other macros for wxWindows
+// ----------------------------------------------------------------------------
+
+// the event tables connect the wxWindows events with the functions (event
+// handlers) which process them. It can be also done at run-time, but for the
+// simple menu events like this the static method is much simpler.
+ BEGIN_EVENT_TABLE(MyFrame, wxFrame)
+ EVT_MENU(Minimal_Quit, MyFrame::OnQuit)
+ EVT_MENU(Minimal_Help, MyFrame::OnHelp)
+ EVT_CLOSE(MyFrame::OnClose)
+ END_EVENT_TABLE()
+
+ // Create a new application object: this macro will allow wxWindows to create
+ // the application object during program execution (it's better than using a
+ // static object for many reasons) and also declares the accessor function
+ // wxGetApp() which will return the reference of the right type (i.e. MyApp and
+ // not wxApp)
+ IMPLEMENT_APP(MyApp)
+
+ // ============================================================================
+ // implementation
+ // ============================================================================