changeset 9e300cc0b350 in tryton:default
details: https://hg.tryton.org/tryton?cmd=changeset;node=9e300cc0b350
description:
        Use empty text for empty Reference in editable tree

        issue9052
        review291491002
diffstat:

 tryton/gui/window/view_form/model/field.py                |  4 ++--
 tryton/gui/window/view_form/view/list_gtk/editabletree.py |  8 +++++---
 2 files changed, 7 insertions(+), 5 deletions(-)

diffs (39 lines):

diff -r 48c6ac548b4f -r 9e300cc0b350 tryton/gui/window/view_form/model/field.py
--- a/tryton/gui/window/view_form/model/field.py        Fri Apr 24 21:54:03 
2020 +0200
+++ b/tryton/gui/window/view_form/model/field.py        Fri Apr 24 21:55:30 
2020 +0200
@@ -872,7 +872,7 @@
                         pass
                 if '%s,%s' % (ref_model, ref_id) == self.get(record):
                     rec_name = record.value.get(
-                        self.name + '.', {}).get('rec_name', '')
+                        self.name + '.', {}).get('rec_name') or ''
                 else:
                     rec_name = ''
             record.value.setdefault(self.name + '.', {})['rec_name'] = rec_name
@@ -907,7 +907,7 @@
         elif ref_model:
             rec_name = ''
         else:
-            rec_name = str(ref_id)
+            rec_name = str(ref_id) if ref_id is not None else ''
         record.value[self.name] = ref_model, ref_id
         record.value.setdefault(self.name + '.', {})['rec_name'] = rec_name
 
diff -r 48c6ac548b4f -r 9e300cc0b350 
tryton/gui/window/view_form/view/list_gtk/editabletree.py
--- a/tryton/gui/window/view_form/view/list_gtk/editabletree.py Fri Apr 24 
21:54:03 2020 +0200
+++ b/tryton/gui/window/view_form/view/list_gtk/editabletree.py Fri Apr 24 
21:55:30 2020 +0200
@@ -307,9 +307,11 @@
             text = entry.props.value
         elif isinstance(entry, Gtk.ComboBox):
             model = entry.get_model()
-            text = model.get_value(
-                entry.get_active_iter(),
-                entry.props.entry_text_column)
+            iter_ = entry.get_active_iter()
+            if iter_:
+                text = model.get_value(iter_, entry.props.entry_text_column)
+            else:
+                text = ''
         else:
             text = entry.get_text()
         self.on_quit_cell(record, column, renderer, text)

Reply via email to