Skip to content
Permalink
Browse files
Fix an Q_ASSERT failure in the Print Composer when "Adding new vect l…
…egend" and then clicking it into place on the composer canvas.

This appears to be because of the use of QWidget::removeChild in QgsComposer::removeWidgetChildren, which is a Qt3 idiom (it doesn't appear in the Qt4.1 API).  A QWidget::setParent(0) idiom is now used instead.



git-svn-id: http://svn.osgeo.org/qgis/trunk@5611 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
morb_au committed Jul 19, 2006
1 parent 269d4ef commit 264a408c91175d5e06eb0bdcc96214ee0801695a
Showing with 11 additions and 2 deletions.
  1. +11 −2 src/composer/qgscomposer.cpp
@@ -140,8 +140,17 @@ void QgsComposer::removeWidgetChildren ( QWidget *w )
if( ob->isWidgetType() )
{
QWidget *ow = (QWidget *) ob;
w->removeChild ( ob );
ow->hide ();

// The following line is legacy Qt3, is not supported in Qt4
// and can cause a SIGABRT
//w->removeChild ( ob );
// instead:
ow->setParent(0);
// TODO: Eventually mItemOptionsFrame should be made
// a Qt4 QStackedWidget and all this removeWidgetChildren
// shenanigans can alledgedly go away

ow->hide();
}
}
}

0 comments on commit 264a408

Please sign in to comment.