summaryrefslogtreecommitdiff
path: root/utils/themeeditor/models/parsetreemodel.cpp
diff options
context:
space:
mode:
authorRobert Bieber <robby@bieberphoto.com>2010-08-06 05:34:01 +0000
committerRobert Bieber <robby@bieberphoto.com>2010-08-06 05:34:01 +0000
commitd505bc01195ddc4ca6e57efe42b97f1ce49d6afd (patch)
tree28418562cbb74c1e0741676c1d6a3f3b3da5de87 /utils/themeeditor/models/parsetreemodel.cpp
parent6063e9138b2c5a1ca25b3cd1ece0f9ce248f56a1 (diff)
downloadrockbox-d505bc01195ddc4ca6e57efe42b97f1ce49d6afd.zip
rockbox-d505bc01195ddc4ca6e57efe42b97f1ce49d6afd.tar.gz
rockbox-d505bc01195ddc4ca6e57efe42b97f1ce49d6afd.tar.bz2
rockbox-d505bc01195ddc4ca6e57efe42b97f1ce49d6afd.tar.xz
Theme Editor: Made SBS elements in WPS documents non-interactive, which makes it a little more difficult to crash the editor
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27734 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'utils/themeeditor/models/parsetreemodel.cpp')
-rw-r--r--utils/themeeditor/models/parsetreemodel.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/utils/themeeditor/models/parsetreemodel.cpp b/utils/themeeditor/models/parsetreemodel.cpp
index e30d0be..ed5f574 100644
--- a/utils/themeeditor/models/parsetreemodel.cpp
+++ b/utils/themeeditor/models/parsetreemodel.cpp
@@ -342,8 +342,9 @@ QGraphicsScene* ParseTreeModel::render(ProjectModel* project,
sbsInfo = RBRenderInfo(sbsModel, project, doc, &settings,
device, sbsScreen);
sbsModel->root->render(sbsInfo);
- }
+ setChildrenUnselectable(sbsScreen);
+ }
}
}
@@ -384,3 +385,14 @@ QModelIndex ParseTreeModel::indexFromPointer(ParseTreeNode *p)
return QModelIndex();
return index(p->getRow(), 0, indexFromPointer(p->getParent()));
}
+
+void ParseTreeModel::setChildrenUnselectable(QGraphicsItem *root)
+{
+ root->setFlag(QGraphicsItem::ItemIsSelectable, false);
+ root->setFlag(QGraphicsItem::ItemIsMovable, false);
+
+ QList<QGraphicsItem*> children = root->children();
+ for(QList<QGraphicsItem*>::iterator i = children.begin()
+ ; i != children.end(); i++)
+ setChildrenUnselectable(*i);
+}