From 8064736580ef91a11380528d4824373d015baa25 Mon Sep 17 00:00:00 2001 From: Teo Mrnjavac Date: Fri, 11 Sep 2015 18:45:56 +0200 Subject: [PATCH] Add clearLayout to CalamaresUtilsGui. --- src/libcalamaresui/utils/CalamaresUtilsGui.cpp | 17 +++++++++++++++++ src/libcalamaresui/utils/CalamaresUtilsGui.h | 1 + 2 files changed, 18 insertions(+) diff --git a/src/libcalamaresui/utils/CalamaresUtilsGui.cpp b/src/libcalamaresui/utils/CalamaresUtilsGui.cpp index cc7681c89..3db09a99d 100644 --- a/src/libcalamaresui/utils/CalamaresUtilsGui.cpp +++ b/src/libcalamaresui/utils/CalamaresUtilsGui.cpp @@ -26,6 +26,7 @@ #include #include #include +#include namespace CalamaresUtils { @@ -212,4 +213,20 @@ defaultIconSize() } +void +clearLayout( QLayout* layout ) +{ + while ( QLayoutItem* item = layout->takeAt( 0 ) ) + { + if ( QWidget* widget = item->widget() ) + widget->deleteLater(); + + if ( QLayout* childLayout = item->layout() ) + clearLayout( childLayout ); + + delete item; + } +} + + } diff --git a/src/libcalamaresui/utils/CalamaresUtilsGui.h b/src/libcalamaresui/utils/CalamaresUtilsGui.h index 2626fee64..28fe70d70 100644 --- a/src/libcalamaresui/utils/CalamaresUtilsGui.h +++ b/src/libcalamaresui/utils/CalamaresUtilsGui.h @@ -60,6 +60,7 @@ UIDLLEXPORT QPixmap defaultPixmap( ImageType type, ImageMode mode = CalamaresUti UIDLLEXPORT QPixmap createRoundedImage( const QPixmap& avatar, const QSize& size, float frameWidthPct = 0.20 ); UIDLLEXPORT void unmarginLayout( QLayout* layout ); +UIDLLEXPORT void clearLayout( QLayout* layout ); UIDLLEXPORT void setDefaultFontSize( int points ); UIDLLEXPORT int defaultFontSize();