From 6f1ef4cd514c27794758b4d3bc2526772f934125 Mon Sep 17 00:00:00 2001 From: Anna Udovichenko Date: Fri, 11 May 2012 14:11:46 +0300 Subject: [PATCH] Fixed some memory leaks --- src/gui/UBFeaturesWidget.cpp | 88 +++++++++++++++++++++++++++--------- src/gui/UBFeaturesWidget.h | 5 +- 2 files changed, 69 insertions(+), 24 deletions(-) diff --git a/src/gui/UBFeaturesWidget.cpp b/src/gui/UBFeaturesWidget.cpp index 526fc23d..889bc654 100644 --- a/src/gui/UBFeaturesWidget.cpp +++ b/src/gui/UBFeaturesWidget.cpp @@ -10,7 +10,7 @@ #include "globals/UBGlobals.h" #include "board/UBBoardController.h" -UBFeaturesWidget::UBFeaturesWidget(QWidget *parent, const char *name):UBDockPaletteWidget(parent) +UBFeaturesWidget::UBFeaturesWidget(QWidget *parent, const char *name):UBDockPaletteWidget(parent) { setObjectName(name); mName = "FeaturesWidget"; @@ -82,7 +82,6 @@ UBFeaturesWidget::UBFeaturesWidget(QWidget *parent, const char *name):UBDockPale //pathListView->setMovement( QListView::Static ); pathListView->setDragDropMode( QAbstractItemView::DropOnly ); - pathScene = new QGraphicsScene(this); //pathViewer = new UBFeaturesPathViewer( QPixmap(":images/libpalette/home.png"), controller->getRootPath(), pathScene, this ); featureProperties = new UBFeatureProperties(this); webView = new UBFeaturesWebView(this); @@ -133,6 +132,15 @@ UBFeaturesWidget::UBFeaturesWidget(QWidget *parent, const char *name):UBDockPale this, SLOT( onAddDownloadedFileToLibrary( bool, QUrl, QString,QByteArray ) ) ); } +UBFeaturesWidget::~UBFeaturesWidget() +{ + if ( thumbSlider != NULL ) + { + delete thumbSlider; + thumbSlider = NULL; + } +} + bool UBFeaturesWidget::eventFilter( QObject *target, QEvent *event ) { if ( target == featuresListView && event->type() == QEvent::Resize ) @@ -444,9 +452,7 @@ void UBFeaturesWidget::currentPathChanged(const QString &path) */ -UBFeaturesWidget::~UBFeaturesWidget() -{ -} + UBFeaturesListView::UBFeaturesListView( QWidget* parent, const char* name ) : QListView(parent) @@ -537,15 +543,18 @@ UBFeaturesWebView::UBFeaturesWebView(QWidget* parent, const char* name):QWidget( UBFeaturesWebView::~UBFeaturesWebView() { - if(NULL != mpSankoreAPI){ + if( NULL != mpSankoreAPI ) + { delete mpSankoreAPI; mpSankoreAPI = NULL; } - if(NULL != mpView){ + if( NULL != mpView ) + { delete mpView; mpView = NULL; } - if(NULL != mpLayout){ + if( NULL != mpLayout ) + { delete mpLayout; mpLayout = NULL; } @@ -661,6 +670,55 @@ UBFeatureProperties::UBFeatureProperties( QWidget *parent, const char *name ) : connect( mpAddToLibButton, SIGNAL( clicked() ), this, SLOT(onAddToLib() ) ); } +UBFeatureProperties::~UBFeatureProperties() +{ + if ( mpOrigPixmap ) + { + delete mpOrigPixmap; + mpOrigPixmap = NULL; + } + if ( mpElement ) + { + delete mpElement; + mpElement = NULL; + } + if ( mpThumbnail ) + { + delete mpThumbnail; + mpThumbnail = NULL; + } + if ( mpButtonLayout ) + { + delete mpButtonLayout; + mpButtonLayout = NULL; + } + if ( mpAddPageButton ) + { + delete mpAddPageButton; + mpAddPageButton = NULL; + } + if ( mpSetAsBackgroundButton ) + { + delete mpSetAsBackgroundButton; + mpSetAsBackgroundButton = NULL; + } + if ( mpAddToLibButton ) + { + delete mpAddToLibButton; + mpAddToLibButton = NULL; + } + if ( mpObjInfoLabel ) + { + delete mpObjInfoLabel; + mpObjInfoLabel = NULL; + } + if ( mpObjInfos ) + { + delete mpObjInfos; + mpObjInfos = NULL; + } +} + void UBFeatureProperties::resizeEvent( QResizeEvent *event ) { Q_UNUSED(event); @@ -787,19 +845,7 @@ void UBFeatureProperties::onSetAsBackground() featuresWidget->getFeaturesController()->addItemAsBackground( *mpElement ); } -UBFeatureProperties::~UBFeatureProperties() -{ - if ( mpOrigPixmap ) - { - delete mpOrigPixmap; - mpOrigPixmap = NULL; - } - if ( mpElement ) - { - delete mpElement; - mpElement = NULL; - } -} + UBFeatureItemButton::UBFeatureItemButton(QWidget *parent, const char *name):QPushButton(parent) { diff --git a/src/gui/UBFeaturesWidget.h b/src/gui/UBFeaturesWidget.h index 8ad8e8a3..afd29c97 100644 --- a/src/gui/UBFeaturesWidget.h +++ b/src/gui/UBFeaturesWidget.h @@ -80,7 +80,7 @@ private: QSlider *thumbSlider; QVBoxLayout *layout; //UBFeaturesPathViewer *pathViewer; - QGraphicsScene *pathScene; + //QGraphicsScene *pathScene; UBFeaturesActionBar *mActionBar; UBFeatureProperties *featureProperties; UBFeaturesWebView *webView; @@ -88,7 +88,6 @@ private: int currentStackedWidget; - QModelIndex trashIndex; private slots: void currentSelected( const QModelIndex & ); //void currentPathChanged(const QString &); @@ -131,7 +130,7 @@ class UBFeaturesWebView : public QWidget Q_OBJECT public: UBFeaturesWebView(QWidget* parent = 0, const char* name = "UBFeaturesWebView"); - ~UBFeaturesWebView(); + virtual ~UBFeaturesWebView(); void showElement(const UBFeature &elem);