]> git.saurik.com Git - wxWidgets.git/blobdiff - src/motif/utils.cpp
Added an #ifdef
[wxWidgets.git] / src / motif / utils.cpp
index e981f6e89daca5df03293110dfb91c3de1bab64d..41679869ccc21b60dc255280af6fc568ca780a63 100644 (file)
@@ -22,6 +22,7 @@
 #include "wx/app.h"
 #include "wx/msgdlg.h"
 #include "wx/cursor.h"
+#include "wx/window.h" // for wxTopLevelWindows
 
 #include <ctype.h>
 #include <stdarg.h>
@@ -42,6 +43,8 @@
 
 #include <Xm/Xm.h>
 
+#include "wx/unix/execute.h"
+
 #include "wx/motif/private.h"
 
 // ----------------------------------------------------------------------------
@@ -58,8 +61,6 @@
 
 static char *GetIniFile (char *dest, const char *filename);
 
-extern wxList wxTopLevelWindows;
-
 // ============================================================================
 // implementation
 // ============================================================================
@@ -74,7 +75,7 @@ void wxFlushEvents()
     Display *display = (Display*) wxGetDisplay();
 
     XSync (display, FALSE);
-    XEvent event;
+
     // XtAppPending returns availability of events AND timers/inputs, which
     // are processed via callbacks, so XtAppNextEvent will not return if
     // there are no events. So added '& XtIMXEvent' - Sergey.
@@ -122,7 +123,7 @@ bool wxCheckForInterrupt(wxWindow *wnd)
 // wxExecute stuff
 // ----------------------------------------------------------------------------
 
-static void xt_notify_end_process(XtPointer client, int *fid,
+static void xt_notify_end_process(XtPointer data, int *fid,
                                   XtInputId *id)
 {
     wxEndProcessData *proc_data = (wxEndProcessData *)data;
@@ -141,7 +142,7 @@ int wxAddProcessCallback(wxEndProcessData *proc_data, int fd)
                                  fd,
                                  (XtPointer *) XtInputReadMask,
                                  (XtInputCallbackProc) xt_notify_end_process,
-                                 (XtPointer) process_data);
+                                 (XtPointer) proc_data);
 
     return (int)id;
 }
@@ -461,11 +462,9 @@ void wxXMergeDatabases (wxApp * theApp, Display * display)
         size_t len;
         environment = GetIniFile (filename, NULL);
         len = strlen (environment);
-#if defined(__SOLARIS__) || defined(__SVR4__) && !defined(__HPUX__)
-        (void) sysinfo (SI_HOSTNAME, environment + len, 1024 - len);
-#else
-        (void) gethostname (environment + len, 1024 - len);
-#endif
+        wxString hostname = wxGetHostName();
+        if ( !!hostname )
+            strncat(environment, hostname, 1024 - len);
     }
     homeDB = XrmGetFileDatabase (environment);
     XrmMergeDatabases (homeDB, &wxResourceDatabase);
@@ -542,8 +541,8 @@ wxXSetBusyCursor (wxWindow * win, wxCursor * cursor)
     else
     {
         // Restore old cursor
-        if (win->GetCursor()->Ok())
-            attrs.cursor = (Cursor) win->GetCursor()->GetXCursor(display);
+        if (win->GetCursor().Ok())
+            attrs.cursor = (Cursor) win->GetCursor().GetXCursor(display);
         else
             attrs.cursor = None;
     }