summaryrefslogtreecommitdiff
path: root/tikzit/src/gtk/NodeStylesModel.m
diff options
context:
space:
mode:
authorAlex Merry <alex.merry@cs.ox.ac.uk>2012-12-17 19:09:06 +0000
committerAlex Merry <alex.merry@cs.ox.ac.uk>2012-12-17 19:09:06 +0000
commit58ceedc38ed430535508360adde7b5b6d76b08e6 (patch)
treee43e8fc2e63f00ff7945bb1bd6d1c3e41b3f5e1d /tikzit/src/gtk/NodeStylesModel.m
parent5ac1d383d2a89d22fbf54d688d64bf6a1036df6b (diff)
Allow node and edge styles to be applied to selection
Brings back some old functionality, but in a more compact way.
Diffstat (limited to 'tikzit/src/gtk/NodeStylesModel.m')
-rw-r--r--tikzit/src/gtk/NodeStylesModel.m21
1 files changed, 21 insertions, 0 deletions
diff --git a/tikzit/src/gtk/NodeStylesModel.m b/tikzit/src/gtk/NodeStylesModel.m
index 68242e5..3cc5771 100644
--- a/tikzit/src/gtk/NodeStylesModel.m
+++ b/tikzit/src/gtk/NodeStylesModel.m
@@ -154,6 +154,27 @@
}
return NULL;
}
+
+- (NodeStyle*) styleFromIter:(GtkTreeIter*)iter {
+ NodeStyle *style = nil;
+ gtk_tree_model_get (GTK_TREE_MODEL (store), iter, NODE_STYLES_PTR_COL, &style, -1);
+ return style;
+}
+
+- (GtkTreeIter*) iterFromStyle:(NodeStyle*)style {
+ GtkTreeModel *m = GTK_TREE_MODEL (store);
+ GtkTreeIter row;
+ if (gtk_tree_model_get_iter_first (m, &row)) {
+ do {
+ NodeStyle *rowStyle;
+ gtk_tree_model_get (m, &row, NODE_STYLES_PTR_COL, &rowStyle, -1);
+ if (style == rowStyle) {
+ return gtk_tree_iter_copy (&row);
+ }
+ } while (gtk_tree_model_iter_next (m, &row));
+ }
+ return NULL;
+}
@end
// }}}