[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: =?utf-8?q?=5Bkde-runtime=5D_plasma/declarativeimports/core=3A_us?=
From: Diego Casella <polentino911 () gmail ! com>
Date: 2011-04-29 10:51:19
Message-ID: 20110429105119.D4E88A60A4 () git ! kde ! org
[Download RAW message or body]
Git commit d264de3b439a4ec0517b42a7667cdccb4e106cc8 by Diego Casella.
Committed on 29/04/2011 at 12:50.
Pushed by casella into branch 'master'.
use QWeakPointer for m_declarativeItemContainer
M +14 -16 plasma/declarativeimports/core/tooltip.cpp
M +1 -1 plasma/declarativeimports/core/tooltip.h
http://commits.kde.org/kde-runtime/d264de3b439a4ec0517b42a7667cdccb4e106cc8
diff --git a/plasma/declarativeimports/core/tooltip.cpp \
b/plasma/declarativeimports/core/tooltip.cpp index c09cfc3..966450c 100644
--- a/plasma/declarativeimports/core/tooltip.cpp
+++ b/plasma/declarativeimports/core/tooltip.cpp
@@ -35,8 +35,7 @@
ToolTipProxy::ToolTipProxy(QObject *parent)
- : QObject(parent), m_mainText(""), m_subText(""),
- m_declarativeItemContainer(0), m_widget(0)
+ : QObject(parent), m_mainText(""), m_subText(""), m_widget(0)
{
connect(this, SIGNAL(targetChanged()), this, SLOT(updateToolTip()));
connect(this, SIGNAL(mainTextChanged()), this, SLOT(updateToolTip()));
@@ -46,9 +45,6 @@ ToolTipProxy::ToolTipProxy(QObject *parent)
ToolTipProxy::~ToolTipProxy()
{
- if (!m_declarativeItemContainer) {
- delete m_declarativeItemContainer;
- }
}
QGraphicsObject *ToolTipProxy::target() const
@@ -94,17 +90,19 @@ void ToolTipProxy::syncTarget()
}
if (!m_declarativeItemContainer) {
- m_declarativeItemContainer = new DeclarativeItemContainer();
- m_declarativeItemContainer->setObjectName("DIContainer");
- scene->addItem(m_declarativeItemContainer);
- }
-
- m_target.data()->setObjectName("Original Item");
- m_declarativeItemContainer->setDeclarativeItem(item, false);
- m_declarativeItemContainer->setAcceptHoverEvents(true);
- m_declarativeItemContainer->setParentItem(m_target.data());
- m_widget = m_declarativeItemContainer;
- emit targetChanged();
+ m_declarativeItemContainer = QWeakPointer<DeclarativeItemContainer>(new \
DeclarativeItemContainer()); + \
m_declarativeItemContainer.data()->setObjectName("DIContainer"); + \
scene->addItem(m_declarativeItemContainer.data()); + }
+
+ if (m_declarativeItemContainer) {
+ m_target.data()->setObjectName("Original Item");
+ m_declarativeItemContainer.data()->setDeclarativeItem(item, false);
+ m_declarativeItemContainer.data()->setAcceptHoverEvents(true);
+ m_declarativeItemContainer.data()->setParentItem(m_target.data());
+ m_widget = m_declarativeItemContainer.data();
+ emit targetChanged();
+ }
}
QString ToolTipProxy::mainText() const
diff --git a/plasma/declarativeimports/core/tooltip.h \
b/plasma/declarativeimports/core/tooltip.h index fca2074..5965858 100644
--- a/plasma/declarativeimports/core/tooltip.h
+++ b/plasma/declarativeimports/core/tooltip.h
@@ -68,8 +68,8 @@ private:
QString m_mainText;
QString m_subText;
QString m_image;
- DeclarativeItemContainer *m_declarativeItemContainer;
QGraphicsWidget *m_widget;
+ QWeakPointer<DeclarativeItemContainer> m_declarativeItemContainer;
QWeakPointer<QGraphicsObject> m_target;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic