On 5/2/05, Paul Davis <paul@xxxxxxxxxxxxxxxxxxxxx> wrote: > IMHO, the designers of GTK made a serious error with the "prelight" > state. Consider a widget whose appearance is different in two > different states, "normal" and "active", perhaps based on color, but > possibly in other ways as well. When the mouse pointer moves over it, > it enters the "prelight" state. The "prelight" state is a single > state, and therefore it cannot distinguish between > "prelight-of-an-active-widget" and "prelight-of-a-normal-widget". As a > result, moving the mouse into a widget like this causes loss of > information - you visually indicate mouse "focus", but you lose any > indication of the widget state. > > there are ways to work around this, such as disabling enter/leave > events for a widget, but they all have nasty side effects. it would be > much nicer to tell GTK globally that "this application cannot use > prelighting because it causes loss of information" and be done with > it. > > the only alternative is a widget-by-widget hand-construction of how to > draw the prelight state, which is so tedious and stupid as to be > absurd. As the author of Clearlooks, I got complaints about exactly this issue from people using normal mouse input devices. The way I fixed it in the engine, is by simply ignoring the prelight color for toggled togglebuttons on mouse-over and using a lighter version of the active color. This way one can always see if the toggle button is toggled after a click event, as the cost of having semi-hardcoded prelight values. At least it improves usability, so I can live with it (and it looks neat, too!). Kind regards, Richard Stellingwerff. _______________________________________________ gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list