]> git.saurik.com Git - wxWidgets.git/blobdiff - src/motif/app.cpp
fix wxStringOutputStream::Write() in Unicode build when the output overlaps a boundar...
[wxWidgets.git] / src / motif / app.cpp
index d6c6206c93fe9474dc1009a6b4d4b1beabcf6a2a..e36d19b6e6f2873f01de6bb3e70a2e6c0be642a8 100644 (file)
 #endif
 
 #include "wx/app.h"
-#include "wx/utils.h"
-#include "wx/module.h"
-#include "wx/memory.h"
-#include "wx/log.h"
-#include "wx/intl.h"
+
+#ifndef WX_PRECOMP
+    #include "wx/hash.h"
+    #include "wx/intl.h"
+    #include "wx/log.h"
+    #include "wx/utils.h"
+    #include "wx/memory.h"
+    #include "wx/font.h"
+#endif
+
 #include "wx/evtloop.h"
-#include "wx/hash.h"
 
 #if wxUSE_THREADS
     #include "wx/thread.h"
 #endif
 
 #ifdef __VMS__
-#pragma message disable nosimpint
+    #pragma message disable nosimpint
 #endif
 #include <Xm/Xm.h>
 #include <X11/Xlib.h>
@@ -39,7 +43,7 @@
 #include <X11/Xresource.h>
 #include <X11/Xatom.h>
 #ifdef __VMS__
-#pragma message enable nosimpint
+    #pragma message enable nosimpint
 #endif
 
 #include "wx/motif/private.h"
@@ -63,7 +67,6 @@ static void wxTLWidgetDestroyCallback(Widget w, XtPointer clientData,
                                       XtPointer ptr);
 static WXWidget wxCreateTopLevelWidget( WXDisplay* display );
 
-extern wxList wxPendingDelete;
 extern bool wxAddIdleCallback();
 
 wxHashTable *wxWidgetHashTable = NULL;
@@ -96,15 +99,15 @@ static int wxXErrorHandler(Display *dpy, XErrorEvent *xevent)
 
 bool wxApp::Initialize(int& argcOrig, wxChar **argvOrig)
 {
+#if wxUSE_INTL
+    wxFont::SetDefaultEncoding(wxLocale::GetSystemEncoding());
+#endif
+
     if ( !wxAppBase::Initialize(argcOrig, argvOrig) )
         return false;
 
     wxWidgetHashTable = new wxHashTable(wxKEY_INTEGER);
 
-#if wxUSE_INTL
-    wxFont::SetDefaultEncoding(wxLocale::GetSystemEncoding());
-#endif
-
     return true;
 }
 
@@ -129,8 +132,6 @@ void wxApp::CleanUp()
 #endif
         delete it->second;
     }
-
-    delete m_perDisplayData;
 }
 
 void wxApp::Exit()
@@ -158,7 +159,7 @@ wxApp::wxApp()
 
 wxApp::~wxApp()
 {
-    wxApp::SetInstance(NULL);
+    delete m_perDisplayData;
 }
 
 int wxApp::MainLoop()
@@ -196,10 +197,17 @@ static char *fallbackResources[] = {
     wxMOTIF_STR("*sgiMode: True"),
     wxMOTIF_STR("*useSchemes: all"),
 #else // !__SGI__
-    wxMOTIF_STR("*menuBar.marginHeight: 0"),
-    wxMOTIF_STR("*menuBar.shadowThickness: 1"),
-    wxMOTIF_STR("*background: #c0c0c0"),
-    wxMOTIF_STR("*foreground: black"),
+#if !wxMOTIF_USE_RENDER_TABLE
+    wxMOTIF_STR("*.fontList: -*-helvetica-medium-r-normal-*-*-120-*-*-*-*-*-*"),
+#else
+    wxMOTIF_STR("*wxDefaultRendition.fontName: -*-helvetica-medium-r-normal-*-*-120-*-*-*-*-*-*"),
+    wxMOTIF_STR("*wxDefaultRendition.fontType: FONT_IS_FONTSET"),
+    wxMOTIF_STR("*.renderTable: wxDefaultRendition"),
+#endif
+    wxMOTIF_STR("*listBox.background: white"),
+    wxMOTIF_STR("*text.background: white"),
+    wxMOTIF_STR("*comboBox.Text.background: white"),
+    wxMOTIF_STR("*comboBox.List.background: white"),
 #endif // __SGI__/!__SGI__
     NULL
 };