From: Larry W. Virden on
A developer contacted me this week with this peculiar siutation. The
environment is software running on sparc solaris 10 systems and the
gnome environment, displaying back to windows xp (running hummingbird
x server) and the VirtuaWin desktop.

About 3 weeks ago, he began seeing this:

---
All of a sudden, widgets began to not build correctly in multi-widget
GUIs. Certain pop-up toplevels with megawidgets – particularly
entryfields and scrolledlistboxes - would have to be dismissed and re-
created several times to appear correctly. The most common error was
failure to widen entry components fully, and failure to show label
components at all.

I have ALMOST beaten this by putting TWO “catch {update}” lines
after every Iwidget is packed. This has eliminated MOST of the
problem, although it can still happen.

----

So, I took a look and see no changes from the code, the os, or tcl
environment recently.
I asked some more questions and got:
----
We had no instances of this, and then it started happening.

This may be an inherent weakness of the automated packing of multiple
widgets, subject to vagaries in the X environment, that has been
addressed before. The iwidgets::Labeledwidget::alignlabels procedure
seems almost made as a fix to resolve these things. And, when used
instead of my solution (peppering the code with update commands), it
does work, EXCEPT when the first widget of the labeled widget group
which is fed to the command does not display its label, in which case
none of them do after alignment.

----


After various exchanges, I did flush out
----
Here’s a thought. Would turning off the “render” option in Exceed do
this? We all turned it off for the Solaris testing. Doesn’t seem
likely. The SYNC extension would be more likely as a culprit, IMO,
but that one has been on, and is staying on.

----

We have found that with Solaris 10, the environment works better wtih
that render option turned off, but it would be a change that occurred
in their environment relatively recently.

Finally, I just got this message:
----
I got medieval on this problem, and created a “superupdate” proc that
runs 50 updates in a row. Dropping a pair of those in every place I
was updating has nearly eliminated the problem.
----


Is anyone familar enough with the Iwidgets 4.0.2/Itk 3.4/Itcl 3.4 to
know if there is some reason that he would have to do all these
updates to get things to appear correctly?