+ //=========================================================================
+ class WxApp;
+ //=========================================================================
+
+ //=========================================================================
+ static WxApp* mgWxApp = 0;
+ static wxWindow* mgTopWindow = 0;
+ static int mgNbWindowsAlive = 0;
+ //=========================================================================
+
+ //=========================================================================
+ // BBTKWXSIG
+ static Wx::Signal_type mgWxSignal;
+ // \BBTKWXSIG
+ //=========================================================================
+
+
+ //=========================================================================
+ // The wxApp class which is used when no user wxApp was created
+ class WxApp : public wxApp
+ {
+ public:
+ bool OnInit( );
+ int OnExit() { return true; }
+ };
+ //=========================================================================
+ IMPLEMENT_APP_NO_MAIN(WxApp);
+ //=========================================================================
+ bool WxApp::OnInit( )
+ {
+ std::cout<<"Testing OnINIT Wx ---- JFGA !!!DELETE ME!!! bbtkWx"<<std::endl;
+ wxApp::OnInit();
+#ifdef __WXGTK__
+ //See http://www.wxwindows.org/faqgtk.htm#locale
+ setlocale(LC_NUMERIC, "C");
+#endif
+ return true;
+ }
+ //=========================================================================
+
+ //=========================================================================
+ void Wx::CreateWxAppIfNeeded()
+ {
+
+ std::cout<<"Testing CreateWxAppIfNeeded --- DELETE ME ----"<<std::endl;
+ if (wxApp::GetInstance()==0)
+ {
+ if (mgWxApp != 0)
+ {
+ bbtkGlobalError("Wx::CreateWxAppIfNeeded() : INTERNAL ERROR ! (wxApp::GetInstance()==0) && (mgWxApp != 0)");
+ }
+ bbtkDebugMessage("wx",1," --> Creating bbtk wxApp"<<std::endl);
+ mgWxApp = new WxApp;
+ wxApp::SetInstance(mgWxApp);
+ wxInitialize();
+ }
+ }
+ //=========================================================================
+
+ //=========================================================================
+ void Wx::DestroyWxAppIfNeeded()
+ {
+ if (mgWxApp!= 0)
+ {
+ // bbtkDebugMessage("wx",1," --> Destructing bbtk WxApp"<<std::endl);
+ //delete mgWxApp;
+ // mgWxApp = 0;
+ // Uninit wx
+ // wxUninitialize();
+ }
+ }
+ //=========================================================================
+
+
+ //=========================================================================
+ void Wx::ProcessPendingEvents()