X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e146b8c8bf449e2264ac3edc6a0228585c619dd1..a0378c28b877a68d8ef9991ce4b1433b2560d928:/src/motif/utils.cpp diff --git a/src/motif/utils.cpp b/src/motif/utils.cpp index b2a48459f0..094a3e8699 100644 --- a/src/motif/utils.cpp +++ b/src/motif/utils.cpp @@ -75,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. @@ -462,8 +462,8 @@ void wxXMergeDatabases (wxApp * theApp, Display * display) size_t len; environment = GetIniFile (filename, NULL); len = strlen (environment); - wxString hostname; - if ( wxGetHostName(hostname) ) + wxString hostname = wxGetHostName(); + if ( !!hostname ) strncat(environment, hostname, 1024 - len); } homeDB = XrmGetFileDatabase (environment); @@ -541,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; } @@ -725,8 +725,12 @@ char wxFindMnemonic (const char *s) return mnem; } -char * wxFindAccelerator (char *s) +char * wxFindAccelerator (const char *s) { + // VZ: this function returns incorrect keysym which completely breaks kbd + // handling + return NULL; + // The accelerator text is after the \t char. while (*s && *s != '\t') s++; @@ -748,7 +752,7 @@ char * wxFindAccelerator (char *s) wxBuffer[0] = '\0'; char *tmp = copystring (s); s = tmp; - char *p = s; + char *p = tmp; while (1) { @@ -763,8 +767,7 @@ char * wxFindAccelerator (char *s) strcat (wxBuffer, s); else strcat (wxBuffer, "Meta"); - s = p + 1; - p = s; + s = p++; } else { @@ -777,15 +780,19 @@ char * wxFindAccelerator (char *s) return wxBuffer; } -XmString wxFindAcceleratorText (char *s) +XmString wxFindAcceleratorText (const char *s) { + // VZ: this function returns incorrect keysym which completely breaks kbd + // handling + return NULL; + // The accelerator text is after the \t char. while (*s && *s != '\t') s++; if (*s == '\0') return (NULL); s++; - XmString text = XmStringCreateSimple (s); + XmString text = XmStringCreateSimple ((char *)s); return text; } @@ -1127,8 +1134,11 @@ void wxAllocNearestColor(Display *d,Colormap cmp,XColor *xc) xc -> green = color_defs[pixel].green; xc -> blue = color_defs[pixel].blue; xc -> flags = DoRed | DoGreen | DoBlue; + +/* FIXME, TODO if (!XAllocColor(d,cmp,xc)) cout << "wxAllocNearestColor : Warning : Cannot find nearest color !\n"; +*/ delete[] color_defs; }