diff options
Diffstat (limited to 'activity.py')
-rw-r--r-- | activity.py | 41 |
1 files changed, 30 insertions, 11 deletions
diff --git a/activity.py b/activity.py index fec5426..d5c6750 100644 --- a/activity.py +++ b/activity.py @@ -56,11 +56,11 @@ class RootsActivity(activity.Activity): tool.connect('clicked', self.emptytree) toolbarsample.insert(tool, -1) tool = ToolButton('sample1') - tool.set_tooltip(_('Sample 1')) + tool.set_tooltip(_('Test')) tool.connect('clicked', self.sample1) toolbarsample.insert(tool, -1) tool = ToolButton('sample2') - tool.set_tooltip(_('Sample 2')) + tool.set_tooltip(_('Napoleon')) tool.connect('clicked', self.sample2) toolbarsample.insert(tool, -1) toolbox.add_toolbar(_('Samples'), toolbarsample) @@ -111,19 +111,17 @@ class RootsActivity(activity.Activity): # Create empty tree self.tree = None - self.init_tree(empty_tree) + self.init_tree(empty_tree()) # Show all self.show_all() self.area.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.ARROW)) - def init_tree(self, treecallback): + def init_tree(self, tree): "Create and init a tree" - if self.tree is not None: - self.tree.persons = [] - self.tree.unions = [] - self.tree = treecallback() + self.zoomlevel = 0 + self.tree = tree (self.initx, self.inity) = (const.tree_initx, const.tree_inity) self.tree.set_position(self.initx, self.inity) self.show_detail(None) @@ -363,17 +361,38 @@ class RootsActivity(activity.Activity): def emptytree(self, event): "Init with an empty tree" - self.init_tree(empty_tree) + self.init_tree(empty_tree()) def sample1(self, event): "Init with a sample tree" - self.init_tree(sample_family1) + self.init_tree(sample_family1()) def sample2(self, event): "Init with a sample tree" - self.init_tree(sample_family2) + self.init_tree(sample_family2()) + + + def write_file(self, file_path): + "Called when activity is saved, save the tree in the file" + #self.metadata['current_page'] = '3' + file = open(file_path, 'wb') + try: + self.tree.write_to(file) + finally: + file.close() + + + def read_file(self, file_path): + "Called when activity is loaded, load the tree from the file" + file = open(file_path, 'rb') + try: + tree = Tree().read_from(file) + finally: + file.close() + self.init_tree(tree) + # Dummy call to allow running on Windows |