[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdebase/workspace/libs/plasmagenericshell/widgetsexplorer
From: Aaron J. Seigo <aseigo () kde ! org>
Date: 2011-01-02 23:25:02
Message-ID: 20110102232502.9C050AC8C4 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1211032 by aseigo:
respond to updates in the model
BUG:261905
M +24 -5 appleticon.cpp
M +3 -0 appleticon.h
--- trunk/KDE/kdebase/workspace/libs/plasmagenericshell/widgetsexplorer/appleticon.cpp \
#1211031:1211032 @@ -25,14 +25,10 @@
AppletIconWidget::AppletIconWidget(PlasmaAppletItem *appletItem)
: AbstractIcon(0),
- m_appletItem(appletItem),
m_runningIcon("dialog-ok")
{
- if (appletItem) {
- setName(appletItem->name());
- setDraggable(true);
+ setAppletItem(appletItem);
}
-}
AppletIconWidget::~AppletIconWidget()
{
@@ -45,13 +41,34 @@
void AppletIconWidget::setAppletItem(PlasmaAppletItem *appletItem)
{
+ if (m_appletItem) {
+ QStandardItemModel *model = m_appletItem.data()->model();
+ if (model) {
+ disconnect(model, 0, this, 0);
+ }
+ }
+
m_appletItem = appletItem;
if (appletItem) {
+ kDebug() << "Applet item!" << appletItem << appletItem->name() << \
appletItem->model(); setName(appletItem->name());
+ QStandardItemModel *model = appletItem->model();
+ if (model) {
+ connect(model, SIGNAL(itemChanged(QStandardItem*)), this, \
SLOT(itemChanged(QStandardItem*))); }
+ }
+
+ setDraggable(appletItem);
update();
}
+void AppletIconWidget::itemChanged(QStandardItem *item)
+{
+ if (item == m_appletItem.data()) {
+ update();
+ }
+}
+
QPixmap AppletIconWidget::pixmap(const QSize &size)
{
if (m_appletItem) {
@@ -91,3 +108,5 @@
}
+#include "appleticon.moc"
+
--- trunk/KDE/kdebase/workspace/libs/plasmagenericshell/widgetsexplorer/appleticon.h \
#1211031:1211032 @@ -40,6 +40,9 @@
QMimeData* mimeData();
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, \
QWidget *widget = 0);
+ protected Q_SLOTS:
+ void itemChanged(QStandardItem *item);
+
private:
QWeakPointer<PlasmaAppletItem> m_appletItem;
KIcon m_runningIcon;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic