Reviewers: ,


Please review this at http://codereview.tryton.org/162013/

Affected files:
  M tryton/gui/window/view_form/view/list_gtk/editabletree.py


Index: tryton/gui/window/view_form/view/list_gtk/editabletree.py
===================================================================
--- a/tryton/gui/window/view_form/view/list_gtk/editabletree.py
+++ b/tryton/gui/window/view_form/view/list_gtk/editabletree.py
@@ -150,10 +150,9 @@
                 txt = entry.get_text()
             else:
                 txt = entry.get_active_text()
-            entry.disconnect(entry.editing_done_id)
+            entry.handler_block(entry.editing_done_id)
             def callback():
-                entry.editing_done_id = entry.connect('editing_done',
-                        self.on_editing_done)
+                entry.handler_unblock(entry.editing_done_id)
                 self.set_cursor(path, column, True)
             self.on_quit_cell(record, column.name, txt, callback=callback)
         if event.keyval in self.leaving_record_events:
@@ -179,15 +178,13 @@
             new_col = self.__prev_column(column)
             self.set_cursor(path, new_col, True)
         elif event.keyval == gtk.keysyms.Up:
-            entry.disconnect(entry.editing_done_id)
+            entry.handler_block(entry.editing_done_id)
             self._key_up(path, model, column)
-            entry.editing_done_id = entry.connect('editing_done',
-                    self.on_editing_done)
+            entry.handler_unblock(entry.editing_done_id)
         elif event.keyval == gtk.keysyms.Down:
-            entry.disconnect(entry.editing_done_id)
+            entry.handler_block(entry.editing_done_id)
             self._key_down(path, model, column)
-            entry.editing_done_id = entry.connect('editing_done',
-                    self.on_editing_done)
+            entry.handler_unblock(entry.editing_done_id)
         elif event.keyval in (gtk.keysyms.Return,):
             col = None
             for column in self.get_columns():
@@ -202,19 +199,18 @@
                 if column.get_visible() and editable:
                     col = column
                     break
-            entry.disconnect(entry.editing_done_id)
+            entry.handler_block(entry.editing_done_id)
             if self.editable == 'top':
                 new_path = self._key_up(path, model, col)
             else:
                 new_path = self._key_down(path, model, column)
-            entry.editing_done_id = entry.connect('editing_done',
-                    self.on_editing_done)
+            entry.handler_unblock(entry.editing_done_id)
         elif event.keyval in (gtk.keysyms.F3, gtk.keysyms.F2):
             if isinstance(entry, gtk.Entry):
                 value = entry.get_text()
             else:
                 value = entry.get_active_text()
-            entry.disconnect(entry.editing_done_id)
+            entry.handler_block(entry.editing_done_id)
             def callback():
                 cell = self.cells[column.name]
                 value = cell.get_textual_value(record)
@@ -222,8 +218,7 @@
                     entry.set_text(value)
                 else:
                     entry.set_active_text(value)
-                entry.editing_done_id = entry.connect('editing_done',
-                        self.on_editing_done)
+                entry.handler_unblock(entry.editing_done_id)
                 self.set_cursor(path, column, True)
             self.on_open_remote(record, column.name,
                 create=(event.keyval==gtk.keysyms.F3), value=value,


--
[email protected] mailing list

Reply via email to