|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r76334 - sandbox/icl/libs/xplore/br1/editabletreemodel
From: afojgo_at_[hidden]
Date: 2012-01-06 11:10:53
Author: jofaber
Date: 2012-01-06 11:10:51 EST (Fri, 06 Jan 2012)
New Revision: 76334
URL: http://svn.boost.org/trac/boost/changeset/76334
Log:
Explorations on tree models and modelindices.
Added:
sandbox/icl/libs/xplore/br1/editabletreemodel/editabletreemodel.qrc (contents, props changed)
Text files modified:
sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.cpp | 28 ++++++++++++++++------------
sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.h | 3 +++
2 files changed, 19 insertions(+), 12 deletions(-)
Added: sandbox/icl/libs/xplore/br1/editabletreemodel/editabletreemodel.qrc
==============================================================================
--- (empty file)
+++ sandbox/icl/libs/xplore/br1/editabletreemodel/editabletreemodel.qrc 2012-01-06 11:10:51 EST (Fri, 06 Jan 2012)
@@ -0,0 +1,5 @@
+<RCC>
+ <qresource prefix="/" >
+ <file>default.txt</file>
+ </qresource>
+</RCC>
Modified: sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.cpp
==============================================================================
--- sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.cpp (original)
+++ sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.cpp 2012-01-06 11:10:51 EST (Fri, 06 Jan 2012)
@@ -291,19 +291,23 @@
//JOFA Iteration example: The container as String
QString TreeModel::toString()const
{
- QString repr;
- QModelIndex curIndex = QModelIndex();
- for(int row = 0; row < rowCount(); row++)
- {
- repr += tr("(%1").arg(row);
- //QModelIndex curIndex = QModelIndex(row, curIndex);
- int colEnd = columnCount();
+ return nodeToString(rootItem, 0);
+}
- if(hasChildren(curIndex))
- repr += tr(" %1").arg(1);
+QString TreeModel::nodeToString(TreeItem* node, int depth)const
+{
+ if(node->childCount()==0)
+ return tr("(%1)").arg(depth); //Print only structure and depth.
+ //return tr("(%1)").arg(node->data(0));
+ else
+ {
+ QString nodeRepr(tr("["));
+ for(int idx=0; idx<node->childCount(); idx++)
+ nodeRepr += nodeToString(node->child(idx), depth+1);
- repr += ")";
+ nodeRepr += tr("]");
+ return nodeRepr;
}
-
- return repr;
}
+
+
Modified: sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.h
==============================================================================
--- sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.h (original)
+++ sandbox/icl/libs/xplore/br1/editabletreemodel/treemodel.h 2012-01-06 11:10:51 EST (Fri, 06 Jan 2012)
@@ -90,6 +90,9 @@
//JOFA Iteration example: The container as String
QString toString()const;
+ QString nodeToString(TreeItem* node, int depth)const;
+
+
private:
void setupModelData(const QStringList &lines, TreeItem *parent);
TreeItem *getItem(const QModelIndex &index) const;
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk