]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/mdi/mdi.cpp
Don't use GetThreadId() in wxMSW code.
[wxWidgets.git] / samples / mdi / mdi.cpp
index 18669832603017e1592f2074a1580178085703d9..c65e285682fa48d1ef3b750c45989a3a0a67f29b 100644 (file)
@@ -7,7 +7,7 @@
 // RCS-ID:      $Id$
 // Copyright:   (c) 1997 Julian Smart
 //              (c) 2008 Vadim Zeitlin
 // RCS-ID:      $Id$
 // Copyright:   (c) 1997 Julian Smart
 //              (c) 2008 Vadim Zeitlin
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // ===========================================================================
 /////////////////////////////////////////////////////////////////////////////
 
 // ===========================================================================
@@ -32,7 +32,7 @@
 
 #include "wx/toolbar.h"
 
 
 #include "wx/toolbar.h"
 
-#if !defined(__WXMSW__)
+#ifndef wxHAS_IMAGES_IN_RESOURCES
     #include "../sample.xpm"
     #include "chart.xpm"
 #endif
     #include "../sample.xpm"
     #include "chart.xpm"
 #endif
@@ -99,6 +99,10 @@ BEGIN_EVENT_TABLE(MyCanvas, wxScrolledWindow)
     EVT_MOUSE_EVENTS(MyCanvas::OnEvent)
 END_EVENT_TABLE()
 
     EVT_MOUSE_EVENTS(MyCanvas::OnEvent)
 END_EVENT_TABLE()
 
+BEGIN_EVENT_TABLE(MyChild::EventHandler, wxEvtHandler)
+    EVT_MENU(MDI_REFRESH, MyChild::EventHandler::OnRefresh)
+END_EVENT_TABLE()
+
 // ===========================================================================
 // implementation
 // ===========================================================================
 // ===========================================================================
 // implementation
 // ===========================================================================
@@ -336,7 +340,7 @@ MyCanvas::MyCanvas(wxWindow *parent, const wxPoint& pos, const wxSize& size)
                            wxNO_FULL_REPAINT_ON_RESIZE |
                            wxVSCROLL | wxHSCROLL)
 {
                            wxNO_FULL_REPAINT_ON_RESIZE |
                            wxVSCROLL | wxHSCROLL)
 {
-    SetBackgroundColour(wxColour("WHITE"));
+    SetBackgroundColour(*wxWHITE);
     SetCursor(wxCursor(wxCURSOR_PENCIL));
 
     SetScrollbars(20, 20, 50, 50);
     SetCursor(wxCursor(wxCURSOR_PENCIL));
 
     SetScrollbars(20, 20, 50, 50);
@@ -451,10 +455,16 @@ MyChild::MyChild(wxMDIParentFrame *parent)
     // they can be resized at all
     if ( canBeResized )
         SetSizeHints(100, 100);
     // they can be resized at all
     if ( canBeResized )
         SetSizeHints(100, 100);
+
+    // test that event handlers pushed on top of MDI children do work (this
+    // used to be broken, see #11225)
+    PushEventHandler(new EventHandler(ms_numChildren));
 }
 
 MyChild::~MyChild()
 {
 }
 
 MyChild::~MyChild()
 {
+    PopEventHandler(true);
+
     ms_numChildren--;
 }
 
     ms_numChildren--;
 }