Fixed a bug, where the customviews were not so customizable on Linux.
authorMarcus Eggenberger <egs@quassel-irc.org>
Sun, 28 Oct 2007 13:00:42 +0000 (13:00 +0000)
committerMarcus Eggenberger <egs@quassel-irc.org>
Sun, 28 Oct 2007 13:00:42 +0000 (13:00 +0000)
src/client/buffertreemodel.cpp
src/client/treemodel.cpp
src/client/treemodel.h

index a881b5f..93c9063 100644 (file)
@@ -124,6 +124,7 @@ BufferTreeModel::BufferTreeModel(QObject *parent)
     _selectionModelSynchronizer(new SelectionModelSynchronizer(this)),
     _propertyMapper(new ModelPropertyMapper(this))
 {
     _selectionModelSynchronizer(new SelectionModelSynchronizer(this)),
     _propertyMapper(new ModelPropertyMapper(this))
 {
+  rootItem->setFlags(rootItem->flags() | Qt::ItemIsDropEnabled);
   _propertyMapper->setModel(this);
   delete _propertyMapper->selectionModel();
   MappedSelectionModel *mappedSelectionModel = new MappedSelectionModel(this);
   _propertyMapper->setModel(this);
   delete _propertyMapper->selectionModel();
   MappedSelectionModel *mappedSelectionModel = new MappedSelectionModel(this);
index 795eb1e..52439af 100644 (file)
 /*****************************************
  *  Buffer Items stored in the Tree Model
  *****************************************/
 /*****************************************
  *  Buffer Items stored in the Tree Model
  *****************************************/
-TreeItem::TreeItem(const QList<QVariant> &data, TreeItem *parent) : QObject(parent) {
-  itemData = data;
-  parentItem = parent;
+TreeItem::TreeItem(const QList<QVariant> &data, TreeItem *parent)
+  : QObject(parent),
+    parentItem(parent),
+    itemData(data),
+  _flags(Qt::ItemIsSelectable | Qt::ItemIsEnabled)
+{
 }
 
 TreeItem::TreeItem(TreeItem *parent) {
 }
 
 TreeItem::TreeItem(TreeItem *parent) {
@@ -97,9 +100,14 @@ QVariant TreeItem::data(int column, int role) const {
 
 Qt::ItemFlags TreeItem::flags() const {
   // some sane defaults
 
 Qt::ItemFlags TreeItem::flags() const {
   // some sane defaults
-  return Qt::ItemIsSelectable | Qt::ItemIsEnabled;
+  return _flags;
 }
 
 }
 
+void TreeItem::setFlags(Qt::ItemFlags flags) {
+  _flags = flags;
+}
+
+
 /*****************************************
  * TreeModel
  *****************************************/
 /*****************************************
  * TreeModel
  *****************************************/
index faad792..6346d4f 100644 (file)
@@ -48,6 +48,7 @@ public:
   int columnCount() const;
   virtual QVariant data(int column, int role) const;
   virtual Qt::ItemFlags flags() const;
   int columnCount() const;
   virtual QVariant data(int column, int role) const;
   virtual Qt::ItemFlags flags() const;
+  virtual void setFlags(Qt::ItemFlags);
   int row() const;
   TreeItem *parent();
     
   int row() const;
   TreeItem *parent();
     
@@ -56,6 +57,7 @@ protected:
   QHash<uint, TreeItem *> childHash; // uint to be compatible to qHash functions
   TreeItem *parentItem;
   QList<QVariant> itemData;
   QHash<uint, TreeItem *> childHash; // uint to be compatible to qHash functions
   TreeItem *parentItem;
   QList<QVariant> itemData;
+  Qt::ItemFlags _flags;
 };
 
 
 };