[pygobject] Override TreeModel.get() to return a tuple
- From: John Palmieri <johnp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pygobject] Override TreeModel.get() to return a tuple
- Date: Mon, 22 Nov 2010 22:29:24 +0000 (UTC)
commit e1db544e46aeed984133896af34b671a6a5547df
Author: Paolo Borelli <pborelli gnome org>
Date: Sun Nov 21 23:03:25 2010 +0100
Override TreeModel.get() to return a tuple
https://bugzilla.gnome.org/show_bug.cgi?id=635466
gi/overrides/Gtk.py | 15 +++++++++++++++
tests/test_overrides.py | 6 ++++++
2 files changed, 21 insertions(+), 0 deletions(-)
---
diff --git a/gi/overrides/Gtk.py b/gi/overrides/Gtk.py
index ce353b3..f09709c 100644
--- a/gi/overrides/Gtk.py
+++ b/gi/overrides/Gtk.py
@@ -654,6 +654,21 @@ class TreeModel(Gtk.TreeModel):
if row[i] is not None:
self.set_value(treeiter, i, row[i])
+ def get(self, treeiter, *columns):
+ n_columns = self.get_n_columns();
+
+ values = []
+ for col in columns:
+ if not isinstance(col, int):
+ raise TypeError("column numbers must be ints")
+
+ if col < 0 or col >= n_columns:
+ raise ValueError("column number is out of range")
+
+ values.append(self.get_value(treeiter, col))
+
+ return tuple(values)
+
TreeModel = override(TreeModel)
__all__.append('TreeModel')
diff --git a/tests/test_overrides.py b/tests/test_overrides.py
index 915155f..6daa24f 100644
--- a/tests/test_overrides.py
+++ b/tests/test_overrides.py
@@ -564,6 +564,12 @@ class TestGtk(unittest.TestCase):
for childrow in last_row.iterchildren():
self.fail("Should not be reached")
+ aiter = tree_store.get_iter(10)
+ self.assertRaises(TypeError, tree_store.get, aiter, 1, 'a')
+ self.assertRaises(ValueError, tree_store.get, aiter, 1, -1)
+ self.assertRaises(ValueError, tree_store.get, aiter, 1, 100)
+ self.assertEqual(tree_store.get(aiter, 0, 1), (10, 'this is row #10'))
+
def test_tree_view_column(self):
cell = Gtk.CellRendererText()
column = Gtk.TreeViewColumn(title='This is just a test',
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]