X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/248834a066bf167b0496161f47ad8ca07a1cada6..a1900c9e1d07ac71f373f94656bf26a45f032c39:/wxPython/samples/embedded/embedded.cpp?ds=inline

diff --git a/wxPython/samples/embedded/embedded.cpp b/wxPython/samples/embedded/embedded.cpp
index 36ccdefc79..50b8b1a34a 100644
--- a/wxPython/samples/embedded/embedded.cpp
+++ b/wxPython/samples/embedded/embedded.cpp
@@ -42,7 +42,7 @@ public:
     virtual ~MyApp();
     void Init_wxPython();
 private:
-    PyThreadState* main_tstate;
+    PyThreadState* m_mainTState;
 };
 
 
@@ -83,16 +83,22 @@ void MyApp::Init_wxPython()
     // module and sets a pointer to a function table located there.
     wxPyCoreAPI_IMPORT();
 
+    // Ensure that the new classes defined in the wxPython wrappers are
+    // recognised by the wx RTTI system.  (If you don't use wxWindow in
+    // your C++ app you won't need to do this.)
+    wxClassInfo::CleanUpClasses();
+    wxClassInfo::InitializeClasses();
+
     // Save the current Python thread state and release the
     // Global Interpreter Lock.
-    main_tstate = wxPyBeginAllowThreads();
+    m_mainTState = wxPyBeginAllowThreads();
 }
 
 
 MyApp::~MyApp()
 {
     // Restore the thread state and tell Python to cleanup after itself.
-    wxPyEndAllowThreads(main_tstate);
+    wxPyEndAllowThreads(m_mainTState);
     Py_Finalize();
 }
 
@@ -212,7 +218,7 @@ wxWindow* MyFrame::DoPythonStuff(wxWindow* parent)
     // More complex embedded situations will require passing C++ objects to
     // Python and/or returning objects from Python to be used in C++.  This
     // sample shows one way to do it.  NOTE: The above code could just have
-    // easily come from a file, or the whole thing coupld be in the Python
+    // easily come from a file, or the whole thing could be in the Python
     // module that is imported and manipulated directly in this C++ code.  See
     // the Python API for more details.