|
From: Joe E. <jen...@fl...> - 2005-08-20 21:38:46
|
The [ttk::scale] widget is currently missing a few features relative to the core [scale] widget. I use the core [scale] widget a lot, and am perpetually frustrated by various quirks and irregularities, so I'd like to propose that the [ttk::scale] widget *not* be completely compatible with it :-) First: I think it's safe to desupport '-showvalue true'. No other toolkit uses this visual idiom that I'm aware of, and there are more effective ways to achieve the same effect. The [scale] widget tends to invoke the -command at unusual times, and it's unpredictable when the linked -variable is adjusted to match -from, -to, and -resolution. This makes it difficult to use [scale]s as input/output widgets. (Even worse: the behavior has changed between Tk 8.4 and the current CVS HEAD, and I can't find any clue as to why.) Vertical [scale]s move the slider from the top of the widget to the bottom as the value changes between -from and -to. While this is consistent with Tk's coordinate system -- the Y axis points downwards -- it runs contrary to user expectations. IOW: horizontal scales should set -from=min and -to=max, while vertical scales should set -from=max and -to=min. The [ttk::scale] widget should rectify this. The scale has "-length" and "-width" options, where "-width" actually specifies the height of horizontal scales. This option should be renamed "-thickness" (or left out entirely and let the theme decide, like the [ttk:scrollbar] does). Finally: scale widgets and spinboxes have a similar function -- both are "valuator" widgets -- so it would be a good idea to make the widget API's as similar as possible. Any other thoughts? --Joe English jen...@fl... |