Damian.Cugley@prg.ox.ac.uk (Damian Cugley) (12/04/90)
[Sorry if this has already been discussed to death and is about to be fixed in X11R5.] So. The X toolkit uses string-comparisons for every aspect of its operation. This is rationalized on the grounds that it makes X maximally configurable by the user: if *everything* is be set from the resources database then every customization is possible, whereas leaving it to the programmer to decide what is configurable will always leave something useful out. Unfortunately this fine theory doesn't quite work. I wanted to use the `thumb' resource of Xaw to make my scrollbars match the titlebar stripe (and also so that the resources nonsense was finally doing something other than make X run slow). The first snag is that the resources for scrollbars assumes both horizontal and vertical scrollbars use the same bitmap, which is very foolish. I can get around this partially by setting the two scrollbars of (say) Viewports explicitly, and similarly for applications that use horizontal bars separately. (Since most scrollbars are vertical the easiest way is to set *Scrollbar.thumb to the vertical bitmap and set each horizontal bar separately.) But. The Text widget. The Text @#$%!&* widgit. This has two scrollbars which are PRIVATE to the widget structure - they CAN'T have their resources set. Result: either I make do with the horizontal scrollbar looking terrible because it has the vertical bar's pattern replicated oddly, or I come up with some pattern that works both horizontally and vertically, which either way really does suck. OK, OK, I know what you'll say. "If you don't like this toolkit, why don't you write your own?" "Why not write a window manager that works they way you want it?" "If you don't like XTerm, write your own termulator!" "Patch the source, everybody else does!" Good grief. Alternately, is there a solution I've missed? Some EccentricallyNamedResource for the TextSourceSinkInterfaceWidgetThing that does what I want? Damian P.S. I hate the X naming conventions. Not that that matters.