fixing a typo (radiOs) in many places,
authorLincoln de Sousa <lincoln@minaslivre.org>
Sat, 9 Aug 2008 21:57:29 +0000 (18:57 -0300)
committerLincoln de Sousa <lincoln@minaslivre.org>
Sat, 9 Aug 2008 21:57:29 +0000 (18:57 -0300)
changing Gzv.finish_drawing, Gzv.setup_treeview,
Gzv.on_cell_edited and Gzv.remove_fp

gzv.py

diff --git a/gzv.py b/gzv.py
index 2d5c926..2149bd0 100644 (file)
--- a/gzv.py
+++ b/gzv.py
@@ -28,7 +28,7 @@ class Ball(object):
         self.position = position
         self.x = x
         self.y = y
-        self.radios = r
+        self.radius = r
         self.name = name
 
 class BallManager(list):
@@ -38,7 +38,7 @@ class BallManager(list):
     def save_to_file(self, path):
         target = open(path, 'w')
         for i in self:
-            target.write('%d,%d %d %s\n' % (i.x, i.y, i.radios, i.name))
+            target.write('%d,%d %d %s\n' % (i.x, i.y, i.radius, i.name))
         target.close()
 
 class GladeLoader(object):
@@ -147,10 +147,10 @@ class Gzv(GladeLoader):
         self.setup_treeview()
 
         # drawing stuff
-        self.ball_width = Ball.DEFAULT_WIDTH
         self.selecting = False
         self.start_x = -1
         self.start_y = -1
+        self.radius = Ball.DEFAULT_WIDTH
 
     def setup_treeview(self):
         self.model.connect('rows-reordered', self.on_rows_reordered)
@@ -163,14 +163,17 @@ class Gzv(GladeLoader):
         renderer = gtk.CellRendererText()
         renderer.connect('edited', self.on_cell_edited)
         renderer.set_property('editable', True)
-        column = gtk.TreeViewColumn(_('Name'), renderer, text=1)
-        self.treeview.append_column(column)
+        self.fpcolumn = gtk.TreeViewColumn(_('Name'), renderer, text=1)
+        self.treeview.append_column(self.fpcolumn)
 
     def on_rows_reordered(self, *args):
         print 
 
-    def on_cell_edited(self, *args):
-        print args
+    def on_cell_edited(self, renderer, path, value):
+        ball = Ball(self.start_x, self.start_y, self.radius, value, int(path))
+        self.balls.append(ball)
+        self.load_balls_to_treeview()
+        self.draw.queue_draw()
 
     def new_project(self, button):
         proj = NewProject(self.window)
@@ -209,9 +212,9 @@ class Gzv(GladeLoader):
         for index, line in enumerate(file(fname)):
             if not line:
                 continue
-            pos, radios, name = line.split()
+            pos, radius, name = line.split()
             x, y = pos.split(',')
-            balls.append(Ball(int(x), int(y), int(radios), name, index))
+            balls.append(Ball(int(x), int(y), int(radius), name, index))
         return balls
 
     def remove_fp(self, *args):
@@ -223,6 +226,7 @@ class Gzv(GladeLoader):
                 if i.position == int(position):
                     self.balls.remove(i)
             del model[path]
+            self.draw.queue_draw()
 
     def save_fp_list(self, *args):
         assert self.project is not None
@@ -279,7 +283,7 @@ class Gzv(GladeLoader):
         ctx.set_source_rgba (0.5, 0.0, 0.0, 0.4)
 
         for i in self.balls:
-            ctx.arc(i.x, i.y, i.radios, 0, 64*math.pi)
+            ctx.arc(i.x, i.y, i.radius, 0, 64*math.pi)
 
         ctx.fill()
         ctx.stroke()
@@ -288,7 +292,7 @@ class Gzv(GladeLoader):
         if self.start_x < 0:
             return
         ctx = self.draw.window.cairo_create()
-        ctx.arc(self.start_x, self.start_y, self.ball_width, 0, 64*math.pi)
+        ctx.arc(self.start_x, self.start_y, self.radius, 0, 64*math.pi)
         ctx.set_source_rgba (0.5, 0.0, 0.0, 0.4)
         ctx.fill()
 
@@ -308,9 +312,9 @@ class Gzv(GladeLoader):
         self.draw.queue_draw()
 
         if event.x > self.last_x:
-            self.ball_width += 3
+            self.radius += 3
         else:
-            self.ball_width -= 3
+            self.radius -= 3
 
         self.last_x = event.x
 
@@ -318,6 +322,10 @@ class Gzv(GladeLoader):
         self.draw_current_ball()
         self.ball_width = Ball.DEFAULT_WIDTH
 
+        position = len(self.balls)
+        self.model.append([position, ''])
+        self.treeview.set_cursor(str(position), self.fpcolumn, True)
+
 if __name__ == '__main__':
     Gzv().window.show_all()
     gtk.main()