|
From: Joe E. <jen...@fl...> - 2005-08-12 18:15:38
|
Jeff Hobbs wrote:
> > At the
> > very least, they should be NULL by default so that custom styles
> > will work.
>
> I think some control of the border might be nice (like, if I
> have -bd 0, no border should really be drawn), but I'm torn
> on whether fiddling with relief and others is necessary.
That's the basic idea: if "-borderwidth" has a NULL default,
then the widget will use theme defaults unless the application
explicitly specifies a -borderwidth. The way it is now,
it's as if the application has always specified "-borderwidth 2"
since that's the hardcoded widget default.
I think I've convinced myself that [ttk::labelframe] ought
to drop the -relief option altogether. On CUA-descendant
platforms (Win2K/Motif/etc.), you almost always want
"-relief groove"; but "groove" is a totally inappropriate
description of how groupbox borders look on XP and OSX.
The theme engine could: (a) selectively ignore -relief values
that aren't appropriate for the platform; (b) DWIM ("you
asked for a grooved border, but that won't look right on
a Mac, so we'll just do a curvy shaded border instead");
or (c) take it literally ("OK, you asked for -relief groove,
I'll draw a Motif border, even though this really won't
look right..."). Tile currently does a combination of
these three in various places; but it would be more in
keeping with the general philosophy to do (d) remove
the "-relief" widget option completely.
> > Under OSX, the groupbox background gets
> > successively darker depending on the nesting level. Tile
> > can't handle this at all right now (this is The Background Problem.)
>
> Isn't this the use of DrawThemeSecondaryGroup instead of
> DrawThemePrimaryGroup, where we only use the latter?
That's part of it; the other part is that "semi-transparent"
widgets like checkbuttons and radiobuttons appearing inside
the groupbox also need to have a darker background.
--Joe English
jen...@fl...
|