Reviewers: ,
Please review this at http://codereview.tryton.org/165002/
Affected files:
M tryton/gui/window/view_form/view/form_gtk/reference.py
Index: tryton/gui/window/view_form/view/form_gtk/reference.py
===================================================================
--- a/tryton/gui/window/view_form/view/form_gtk/reference.py
+++ b/tryton/gui/window/view_form/view/form_gtk/reference.py
@@ -162,7 +162,7 @@
except ValueError:
self.focus_out = True
return
- if model and obj_id:
+ if model and obj_id >= 0:
if not leave:
screen = Screen(model, mode=['form'])
screen.load([obj_id])
@@ -222,13 +222,12 @@
if not model:
return
screen = Screen(model, mode=['form'])
- win = WinForm(screen, self.widget.get_toplevel(), new=True)
- if win.run():
- if screen.save_current():
+ def callback(result):
+ if result and screen.save_current():
value = (screen.current_record.id,
screen.current_record.rec_name())
self.field.set_client(self.record, (model, value))
- win.destroy()
+ WinForm(screen, callback, new=True)
def sig_key_press(self, widget, event):
editable = self.wid_text.get_editable()
@@ -261,7 +260,7 @@
model, (obj_id, name) = '', (-1, '')
else:
model, (obj_id, name) = val
- if self.get_model() and obj_id:
+ if self.get_model() and obj_id >= 0:
self.field.set_client(self.record, (self.get_model(),
(-1, '')))
self.display(self.record, self.field)
return False
@@ -286,7 +285,7 @@
child.set_position(len(self._selection2[model]))
self.wid_text.set_text(name)
self.wid_text.set_position(len(name))
- if obj_id:
+ if obj_id >= 0:
img.set_from_stock('tryton-open',
gtk.ICON_SIZE_SMALL_TOOLBAR)
self.but_open.set_image(img)
else:
--
[email protected] mailing list