OpenMW/openmw — pull request #242 by MiroslavR (2014-09-02 21:55:56+00:00)
Title: Fix broken coin placement in levelup dialog + possible memleak

The placement of assigned coins is broken after 7dfba0ae30f16eadfece002472a18d4d104a64de, which alone, however, is not the direct cause. The real problem is that when coins are assigned, they are attached to the main widget of the dialog and moved to an absolute position. The main widget happens to be a vbox, which will reposition its childs after being realigned. So it was just a coincidence that it worked before that commit.

I've "fixed" it by only realigning necessary (immediate) boxes in AutoSizedWidget::notifySizeChange. The real solution would be to redesign the levelup dialog to fully make use of boxes, which will need to be done sooner or later, if we want the UI to adapt to different fonts/localizations. However, I see two problems with that:
* Boxes need to react to attachToWidget and detachFromWidget (not sure if this is doable).
* I think something like GridBox (akin to Qt's QGridLayout) would be necessary for the coin/multiplier/attribute/value part.

The other change fixes a possible memory leak with detached widgets.