|
From: Jim I. <ji...@ap...> - 2005-03-12 00:43:13
|
This is probably another instance of: 940117. Basically, Tk doesn't =20 care about drawing widgets if their parents are not mapped, because =20 on X11 & windows the drawing isn't going to show up anyway. But =20 since subwindows are an entire fiction on Mac OS X, if you tell a =20 widget to draw it will show up regardless of whether it's parent is =20 mapped or not. One option is to go through all the Draw* routines and make sure that =20= they aren't drawn if their parents are not mapped. But I am worried =20 this will mess up pixmaps. And it seems kind of unclean, it would be =20= better to figure out a way to do this down in the Mac OS X layer. =20 That would be more symmetrical with what happens on the other =20 platforms... Jim On Mar 11, 2005, at 6:02 AM, Alastair Davies wrote: > The following script (and instructions) shows up a problem on MacOS =20= > X (only) > with using the panedwindow and Tile notebook widgets. Items drawn =20 > on a > canvas within a panedwindow on a notebook tab are often visible, =20 > even if the > tab is not selected. > > I _think_ the culprit here is the panedwindow widget on TkAqua, =20 > since we > have seen similar behaviour using the BWidget notebook, as well as =20 > the Tile > notebook, but I can't say for sure. (The Tile notebook is such a HUGE > improvement, we switched as soon as we could!) > > Source the following script from Wish Shell (either using the =20 > Terminal or > the Console, it doesn't matter): > > package require tile > ttk::notebook .n > pack .n > panedwindow .n.p1 > .n add .n.p1 -text "Here be p1" > frame .n.p1.f -width 300 -height 300 > .n.p1 add .n.p1.f -sticky nesw > pack [canvas .n.p1.f.c] -fill both -expand true > .n.p1.f.c create rect 40 50 80 90 > panedwindow .n.p2 > .n add .n.p2 -text "I am p2" > frame .n.p2.f -width 300 -height 300 > .n.p2 add .n.p2.f -sticky nesw > pack [canvas .n.p2.f.c] -fill both -expand true > .n.p2.f.c create rect 60 70 100 110 > > Now shuffle the notebook tabs up and down, leave p1 uppermost and =20 > enter the > command > > .n.p2.f.c create oval 120 120 140 150 > > The oval is visible, apparently on p1, despite being drawn on p2. =20 > Shuffling > the pages again will correct the situation. > > In our application, we plot results to several notebook pages > simultaneously, so we see this a lot. Any advice would be much =20 > appreciated. > I'll file a bug if confirmed. > > Kind regards, > Alastair > > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real =20 > users. > Discover which products truly live up to the hype. Start reading now. > http://ads.osdn.com/?ad_ide95&alloc_id=14396&op=3Dclick > _______________________________________________ > Tcl-mac mailing list > Tc...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-mac |