]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/mdi/mdi.h
Fixed resizing problem with GTK 1.2.3 notebooks.
[wxWidgets.git] / samples / mdi / mdi.h
index 08f59a8c7e21549c65d7d6858e343711b5728415..6efb5b61ada0e56c52d424b4122c36886cbb4210 100644 (file)
@@ -6,35 +6,42 @@
 // Created:     04/01/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart and Markus Holzem
 // Created:     04/01/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart and Markus Holzem
-// Licence:    wxWindows license
+// Licence:     wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
 #include <wx/toolbar.h>
 
 // Define a new application
 /////////////////////////////////////////////////////////////////////////////
 
 #include <wx/toolbar.h>
 
 // Define a new application
-class MyApp: public wxApp
+class MyApp : public wxApp
 {
 {
-  public:
-    bool OnInit(void);
+public:
+    bool OnInit();
 };
 
 };
 
-class MyCanvas: public wxScrolledWindow
+class MyCanvas : public wxScrolledWindow
 {
 {
-  public:
+public:
     MyCanvas(wxWindow *parent, const wxPoint& pos, const wxSize& size);
     virtual void OnDraw(wxDC& dc);
     MyCanvas(wxWindow *parent, const wxPoint& pos, const wxSize& size);
     virtual void OnDraw(wxDC& dc);
+
+    bool IsDirty() const { return m_dirty; }
+
     void OnEvent(wxMouseEvent& event);
 
     void OnEvent(wxMouseEvent& event);
 
+private:
+    bool m_dirty;
+
     DECLARE_EVENT_TABLE()
 };
 
 // Define a new frame
     DECLARE_EVENT_TABLE()
 };
 
 // Define a new frame
-class MyFrame: public wxMDIParentFrame
+class MyFrame : public wxMDIParentFrame
 {
 {
-  public:
+public:
     wxTextCtrl *textWindow;
     wxTextCtrl *textWindow;
-    
-    MyFrame(wxWindow *parent, const wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long style);
+
+    MyFrame(wxWindow *parent, const wxWindowID id, const wxString& title,
+            const wxPoint& pos, const wxSize& size, const long style);
 
     void InitToolBar(wxToolBar* toolBar);
 
 
     void InitToolBar(wxToolBar* toolBar);
 
@@ -42,24 +49,33 @@ class MyFrame: public wxMDIParentFrame
     void OnAbout(wxCommandEvent& event);
     void OnNewWindow(wxCommandEvent& event);
     void OnQuit(wxCommandEvent& event);
     void OnAbout(wxCommandEvent& event);
     void OnNewWindow(wxCommandEvent& event);
     void OnQuit(wxCommandEvent& event);
+    void OnClose(wxCloseEvent& event);
 
 
-DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 class MyChild: public wxMDIChildFrame
 {
 };
 
 class MyChild: public wxMDIChildFrame
 {
-  public:
+public:
     MyCanvas *canvas;
     MyChild(wxMDIParentFrame *parent, const wxString& title, const wxPoint& pos, const wxSize& size, const long style);
     MyCanvas *canvas;
     MyChild(wxMDIParentFrame *parent, const wxString& title, const wxPoint& pos, const wxSize& size, const long style);
-    ~MyChild(void);
+    ~MyChild();
+
     void OnActivate(wxActivateEvent& event);
     void OnActivate(wxActivateEvent& event);
+
+    void OnRefresh(wxCommandEvent& event);
     void OnQuit(wxCommandEvent& event);
     void OnQuit(wxCommandEvent& event);
+    void OnClose(wxCloseEvent& event);
 
 
-DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 };
 
-#define MDI_QUIT        1
-#define MDI_NEW_WINDOW  2
-#define MDI_REFRESH     3
-#define MDI_CHILD_QUIT  4
-#define MDI_ABOUT       5
+// menu items ids
+enum
+{
+    MDI_QUIT = 100,
+    MDI_NEW_WINDOW,
+    MDI_REFRESH,
+    MDI_CHILD_QUIT,
+    MDI_ABOUT
+};