Making widgets unsensitive/sensitive before
[cascardo/movie.git] / gzv.py
diff --git a/gzv.py b/gzv.py
index dd25983..8eb7fdb 100644 (file)
--- a/gzv.py
+++ b/gzv.py
@@ -234,7 +234,6 @@ class Gzv(GladeLoader):
             self.balls.save_to_file(self.project.focus_points_file)
         fc.destroy()
 
-
     def load_project(self, project):
         self.project = project
         self.balls = self.load_balls_from_file(project.focus_points_file)
@@ -257,12 +256,18 @@ class Gzv(GladeLoader):
 
         self.draw.set_from_pixbuf(pixbuf)
         self.load_balls_to_treeview()
+        self.set_widgets_sensitivity(True)
 
     def unload_project(self):
         self.project = None
         self.image = None
         self.balls = BallManager()
         self.draw.queue_draw()
+        self.set_widgets_sensitivity(False)
+
+    def set_widgets_sensitivity(self, sensitive):
+        for i in 'toolbutton1', 'toolbutton5', 'scrolledwindow1', 'hbox2':
+            self.wid(i).set_sensitive(sensitive)
 
     def load_balls_to_treeview(self):
         self.model.clear()
@@ -305,6 +310,18 @@ class Gzv(GladeLoader):
                 i.selected = False
             ball.selected = True
 
+            # available space to the image
+            w = self.evtbox.get_allocation().width
+            h = self.evtbox.get_allocation().height
+
+            # point begining from the left image border
+            wib = self.point_with_border(ball)
+
+            print wib.x, w
+
+            self.wid('viewport').get_vadjustment().value = wib.x # + (w / 2)
+            self.wid('viewport').get_hadjustment().value = wib.y # + (h / 2)
+
             self.draw.queue_draw()
 
     def select_fp_from_image(self, ball):