DO NOT REPLY TO THIS MESSAGE.  INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.

[STR Pending]

Link: http://www.fltk.org/str.php?L1784
Version: 2.0-current
Fix Version: 2.0-current


Ben wrote:
> I've reopened the STR, because it's a poor bug that should
> be fixed; chances are someone forgot to call redraw_label().
> This shouldn't be too hard to pin down, ...

It's easy to pin down what is going wrong, but it's not easy to fix IMHO.
The labels are simply not considered when calculating the bounding box of
all widgets. If you wanted to fix this, it would probably have to go in
layout(), in the loop at line 216-224. You would have to measure the
labels with all consequences as setting fonts etc.. Aside from the fact
that I don't know if this would be acceptable in layout(), this could be
*very* expensive, especially since this is in another loop (line #198++)
that could be executed at most three times. Now consider that we have
users that reported to use more than 20,000 widgets (maybe 40,000) in an
[Fl_]Scroll[Group].

But there's an easy way out: Maybe it's not a bug, it's a feature?

ScrollGroup's docs say: "The bounding box of the widgets are the area it
can scroll, this will remove any borders, if you want the borders
preserved put some invisible widgets there as placeholders."

BTW, that's why I added the invisible box as a workaround in my demo
program.

Just classifying the (outside) labels as "the borders" that should be
"preserved" and documenting this would probably be enough and a clean
solution WRT performance as well.

P.S.: As for the XP theme, I'll reply directly in fltk.development.


Link: http://www.fltk.org/str.php?L1784
Version: 2.0-current
Fix Version: 2.0-current

_______________________________________________
fltk-bugs mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-bugs

Reply via email to