[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: koffice/kexi/widget
From: Adam Pigg <adam () piggz ! co ! uk>
Date: 2010-08-28 21:22:40
Message-ID: 20100828212240.49816AC857 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1169258 by piggz:
Implement updateItemName in the view and model, and implement dirtly state handling \
in the model items. CCMAIL:staniek@kde.org
M +12 -0 KexiProjectModel.cpp
M +2 -0 KexiProjectModel.h
M +10 -5 KexiProjectModelItem.cpp
M +2 -0 KexiProjectModelItem.h
M +1 -11 KexiProjectNavigator.cpp
--- trunk/koffice/kexi/widget/KexiProjectModel.cpp #1169257:1169258
@@ -323,4 +323,16 @@
return m_rootItem->modelItemFromName(name);
}
+void KexiProjectModel::updateItemName(KexiPart::Item& item, bool dirty)
+{
+ kDebug();
+ KexiProjectModelItem *bitem = modelItemFromItem(item);
+ if (!bitem)
+ return;
+ QModelIndex idx = indexFromItem(bitem);
+ bitem->setDirty(dirty);
+ emit dataChanged(idx, idx);
+}
+
+
--- trunk/koffice/kexi/widget/KexiProjectModel.h #1169257:1169258
@@ -44,6 +44,8 @@
virtual bool setData(const QModelIndex& index, const QVariant& value, int role = \
Qt::EditRole); virtual Qt::ItemFlags flags(const QModelIndex& index) const;
+ void updateItemName(KexiPart::Item& item, bool dirty);
+
public slots:
void slotAddItem(KexiPart::Item& item);
void slotRemoveItem(const KexiPart::Item &item);
--- trunk/koffice/kexi/widget/KexiProjectModelItem.cpp #1169257:1169258
@@ -28,20 +28,20 @@
#include <kiconloader.h>
KexiProjectModelItem::KexiProjectModelItem(const QString& n, KexiProjectModelItem \
*p)
- : m_parentItem(p), m_info(0), m_item(0)
+ : m_parentItem(p), m_info(0), m_item(0), m_dirty(false)
{
m_groupName = n;
}
KexiProjectModelItem::KexiProjectModelItem(KexiPart::Info &i, KexiProjectModelItem \
*p)
- : m_parentItem(p), m_info(&i), m_item(0)
+ : m_parentItem(p), m_info(&i), m_item(0), m_dirty(false)
{
m_icon = SmallIcon(i.itemIcon());
m_fifoSorting = 1; //because this is top level item
}
KexiProjectModelItem::KexiProjectModelItem(KexiPart::Info &i, KexiPart::Item &item, \
KexiProjectModelItem *p)
- : m_parentItem(p), m_info(&i), m_item(&item)
+ : m_parentItem(p), m_info(&i), m_item(&item), m_dirty(false)
{
m_icon = SmallIcon(i.itemIcon());
}
@@ -99,7 +99,7 @@
{
Q_UNUSED(column);
if (m_item) {
- return m_item->name();
+ return m_item->name() + (m_dirty ? "*" : "");
} else if (m_info) {
return m_info->groupName();
} else {
@@ -199,4 +199,9 @@
bool itemLessThan(const KexiProjectModelItem *a, const KexiProjectModelItem *b)
{
return a->data(0).toString() < b->data(0).toString();
-}
\ No newline at end of file
+}
+
+void KexiProjectModelItem::setDirty(bool d)
+{
+ m_dirty = d;
+}
--- trunk/koffice/kexi/widget/KexiProjectModelItem.h #1169257:1169258
@@ -85,11 +85,13 @@
KexiProjectModelItem* modelItemFromName(const QString& name) const;
void sortChildren();
+ void setDirty(bool);
private:
QList<KexiProjectModelItem*> m_childItems;
KexiProjectModelItem *m_parentItem;
QPixmap m_icon;
+ bool m_dirty;
protected:
KexiPart::Info *m_info;
--- trunk/koffice/kexi/widget/KexiProjectNavigator.cpp #1169257:1169258
@@ -452,20 +452,10 @@
void KexiProjectNavigator::updateItemName(KexiPart::Item& item, bool dirty)
{
-#ifdef __GNUC__
-#warning implement KexiProjectNavigator::updateItemName()
-#else
-#pragma WARNING( implement KexiProjectNavigator::updateItemName() )
-#endif
-#if 0
if (!(m_features & Writable))
return;
- KexiProjectModelItem *bitem = m_normalItems.value(item.identifier());
- if (!bitem)
- return;
- bitem->setText(0, item.name() + (dirty ? "*" : ""));
-#endif
+ m_model->updateItemName(item, dirty);
}
void KexiProjectNavigator::slotSettingsChanged(int)
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic