yes, please patch.
"William M. Perry" wrote:
Now, the scrollbars in athena behave differently than
gtk/motif/athena3d/windows in that scrollbar-page-up and
scrollbar-page-down require passing in a cons of (WINDOW . NUMBER) where
the others just want WINDOW.
My question is why in scrollbar.c the athena-like behaviour is
conditionalized with ifdefs instead of just checking whether NILP (XCDR
(object))? Couldn't this code:
/* Motif and Athena scrollbars behave differently, but in accordance
with their standard behaviors. It is not possible to hide the
differences down in lwlib because knowledge of XEmacs buffer and
cursor motion routines is necessary. */
#if defined (LWLIB_SCROLLBARS_MOTIF) || defined (LWLIB_SCROLLBARS_LUCID) || \
defined (LWLIB_SCROLLBARS_ATHENA3D) || defined(HAVE_MS_WINDOWS) || \
defined (HAVE_GTK)
window_scroll (window, Qnil, -1, ERROR_ME_NOT);
#else /* Athena */
{
athena
.
.
.
crap
}
#endif /* Athena */
Be simplified to:
if (NILP (XCDR (object)))
window_scroll (window, Qnil, -1, ERROR_ME_NOT)
else
{
athena
.
.
.
crap
}
That way whenever anybody adds a new (sane) scrollbar type, they don't have
to update scrollbar.c? And this way the hypothetical scrollbar-FOO.c could
decide whether it wants the athena-like code itself? Perhaps
conditionalize it?
Just curious... would anyone accept a patch to this effect?
-Bill P.
--
Ben
In order to save my hands, I am cutting back on my mail. I also write
as succinctly as possible -- please don't be offended. If you send me
mail, you _will_ get a response, but please be patient, especially for
XEmacs-related mail. If you need an immediate response and it is not
apparent in your message, please say so. Thanks for your understanding.
See also
http://www.666.com/ben/chronic-pain/