Mercurial > hg > xemacs-beta
diff src/EmacsFrame.c @ 80:1ce6082ce73f r20-0b90
Import from CVS: tag r20-0b90
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:06:37 +0200 |
parents | 131b0175ea99 |
children | 6a378aca36af |
line wrap: on
line diff
--- a/src/EmacsFrame.c Mon Aug 13 09:05:44 2007 +0200 +++ b/src/EmacsFrame.c Mon Aug 13 09:06:37 2007 +0200 @@ -495,6 +495,8 @@ XrmValuePtr fromVal, XrmValuePtr toVal) { +#if 0 + /* Martin, this is broken. Please fix it. */ XrmQuark q; char *lowerName = (char *) alloca (strlen ( (char *) fromVal->addr) + 1); @@ -516,6 +518,41 @@ toVal->addr = NULL; toVal->size = 0; XtStringConversionWarning (fromVal->addr, "scrollBarPlacement"); +#endif +#define done(address, type) \ +toVal->size = sizeof(type); \ +toVal->addr = (XtPointer) address; \ +return /* `;' supplied by caller */ + + XrmQuark q; + char lowerName[1000]; + + XmuCopyISOLatin1Lowered (lowerName, (char*)fromVal->addr); + q = XrmStringToQuark(lowerName); + if (q == XrmStringToQuark ("top_left")) + { + cvt_string_scrollbar_placement = XtTOP_LEFT; + done (&cvt_string_scrollbar_placement, unsigned char); + } + if (q == XrmStringToQuark ("bottom_left")) + { + cvt_string_scrollbar_placement = XtBOTTOM_LEFT; + done (&cvt_string_scrollbar_placement, unsigned char); + } + if (q == XrmStringToQuark ("top_right")) + { + cvt_string_scrollbar_placement = XtTOP_RIGHT; + done (&cvt_string_scrollbar_placement, unsigned char); + } + if (q == XrmStringToQuark ("bottom_right")) + { + cvt_string_scrollbar_placement = XtBOTTOM_RIGHT; + done (&cvt_string_scrollbar_placement, unsigned char); + } + XtStringConversionWarning (fromVal->addr, "scrollBarPlacement"); + toVal->addr = NULL; + toVal->size = 0; +#undef done } static void