X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4b6480c8ebc550327caeb50e20ddb81434a7a7d0..6362d82b3ed82aa6795e4ad03160820f94c9e4d4:/src/motif/xmcombo/xmcombo.c?ds=sidebyside diff --git a/src/motif/xmcombo/xmcombo.c b/src/motif/xmcombo/xmcombo.c index dd806ccae9..be780d1fbc 100644 --- a/src/motif/xmcombo/xmcombo.c +++ b/src/motif/xmcombo/xmcombo.c @@ -92,9 +92,21 @@ * */ #ifdef __VMS +/* vms_x_fix.h should be included before any of the X11/Motif headers */ #include <wx/vms_x_fix.h> +#undef XtDisplay +#undef XtScreen +#undef XtWindow +#undef XtIsRealized +#undef XtParent +#undef XtClass #endif +/* get XmVersion definition */ +#include <Xm/Xm.h> + +#if (XmVersion < 2000) + #include <X11/IntrinsicP.h> #include <X11/StringDefs.h> #include <X11/cursorfont.h> @@ -112,6 +124,7 @@ #include <Xm/TextF.h> #include <Xm/List.h> #include <Xm/LabelP.h> + #include <string.h> #include <ctype.h> /* define toupper */ #include "combop.h" @@ -557,7 +570,10 @@ static XtActionsRec actions[] = { * durchgefuehrt werden. */ static XtTranslations NewEditTranslations, NewEditTranslationsNE, - NewListTranslations, NewListTranslationsE; +#ifdef NODRAGNDROP + NewListTranslations, +#endif + NewListTranslationsE; static XtConvertArgRec ConverterScreenConvertArg[] = { { XtBaseOffset, (XtPointer) XtOffset(Widget, core.screen), @@ -1265,24 +1281,32 @@ static struct { String Resource; int Flag; } static int UpdateColors(XmComboBoxWidget w, int flags) { - Pixel Color; + Pixel Color, White, Black, EditCol; int i, size = XtNumber(ColorResources); Widget ScrolledWin, ScrollBar; ScrolledWin = XtParent(w->combobox.ListCtrl); XtVaGetValues(ScrolledWin, XmNverticalScrollBar, &ScrollBar, NULL); + White = WhitePixel(XtDisplay(w), WidgetToScreen((Widget) w)); + Black = BlackPixel(XtDisplay(w), WidgetToScreen((Widget) w)); for ( i=0; i<size; i++ ) if ( flags & ColorResources[i].Flag ) { + if ( ColorResources[i].Flag == BACKGROUND ) + EditCol = White; + else if ( ColorResources[i].Flag == FOREGROUND ) + EditCol = Black; + else + EditCol = Color; XtVaGetValues((Widget) w, ColorResources[i].Resource, &Color, NULL); - XtVaSetValues(w->combobox.ListCtrl, - ColorResources[i].Resource, Color, NULL); - XtVaSetValues(ScrolledWin, - ColorResources[i].Resource, Color, NULL); XtVaSetValues(ScrollBar, ColorResources[i].Resource, Color, NULL); - XtVaSetValues(w->combobox.EditCtrl, - ColorResources[i].Resource, Color, NULL); + XtVaSetValues(w->combobox.ListCtrl, + ColorResources[i].Resource, EditCol, NULL); + XtVaSetValues(w->combobox.EditCtrl, + ColorResources[i].Resource, EditCol, NULL); + XtVaSetValues(ScrolledWin, + ColorResources[i].Resource, Color, NULL); XtVaSetValues(w->combobox.LabelCtrl, ColorResources[i].Resource, Color, NULL); XtVaSetValues(w->combobox.ArrowCtrl, @@ -1597,6 +1621,8 @@ static void GetValuesAlmost(XmComboBoxWidget w, ArgList args, break; } break; + case RWIGNORE: + ; } /* case read mode */ } /* if entry found */ } /* for every mirrored entry */ @@ -3543,3 +3569,5 @@ Widget XmCreateComboBox(Widget parent, String name, ArgList arglist, } /* XmCreateComboBox */ /* Ende von ComboBox.c */ + +#endif /* XmVersion < 2000 */