Reviewers: ,


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

Affected files:
  M tryton/gui/window/view_form/model/field.py
  M tryton/gui/window/view_form/model/group.py
  M tryton/gui/window/view_form/model/record.py
  M tryton/gui/window/wizard.py


Index: tryton/gui/window/view_form/model/field.py
===================================================================

--- a/tryton/gui/window/view_form/model/field.py
+++ b/tryton/gui/window/view_form/model/field.py
@@ -122,13 +122,8 @@
         self.get_state_attrs(record)['valid'] = res
         return res

-    def set(self, record, value, modified=False):
+    def set(self, record, value):
         record.value[self.name] = value
-        if modified:
-            record.modified_fields.setdefault(self.name)
-            record.signal('record-modified')
-            record.signal('record-changed')
-        return True

     def get(self, record):
         return record.value.get(self.name) or self._default
@@ -156,13 +151,13 @@
     def get_client(self, record):
         return record.value.get(self.name) or self._default

-    def set_default(self, record, value, modified=False):
-        res = self.set(record, value, modified=modified)
-        return res
+    def set_default(self, record, value):
+        self.set(record, value)
+        record.modified_fields.setdefault(self.name)

     def set_on_change(self, record, value):
         record.modified_fields.setdefault(self.name)
-        return self.set(record, value, modified=False)
+        return self.set(record, value)

def state_set(self, record, states=('readonly', 'required', 'invisible')):
         state_changes = record.expr_eval(self.attrs.get('states', {}))
@@ -398,7 +393,7 @@
         super(M2OField, self).set_client(record, value,
             force_change=force_change)

-    def set(self, record, value, modified=False):
+    def set(self, record, value):
         rec_name = record.value.get(self.name + '.rec_name') or ''
         if value is False:
             value = None
@@ -424,10 +419,6 @@
             if record.parent:
                 if 'rec_name' not in record.parent.value:
                     record.parent.value['rec_name'] = rec_name
-        if modified:
-            record.modified_fields.setdefault(self.name)
-            record.signal('record-modified')
-            record.signal('record-changed')

     def context_get(self, record):
         context = super(M2OField, self).context_get(record)
@@ -578,7 +569,7 @@
                     record2.get_on_change_value())
         return result

-    def set(self, record, value, modified=False):
+    def set(self, record, value):
         from group import Group
         group = record.value.get(self.name)
         fields = {}
@@ -603,20 +594,18 @@
             self._group_list_changed)
         group.signal_connect(group, 'group-cleared', self._group_cleared)
group.signal_connect(group, 'record-modified', self._record_modified)
-        if modified:
-            record.modified_fields.setdefault(self.name)
-            record.signal('record-modified')
-            record.signal('record-changed')

     def set_client(self, record, value, force_change=False):
         pass

-    def set_default(self, record, value, modified=False):
+    def set_default(self, record, value):
         from group import Group

         # value is a list of id
         if value and len(value) and isinstance(value[0], (int, long)):
-            return self.set(record, value, modified=modified)
+            self.set(record, value)
+            record.modified_fields.setdefault(self.name)
+            return

         group = record.value.get(self.name)
         fields = {}
@@ -654,7 +643,7 @@
         record.value[self.name] = group
         for vals in (value or []):
             new_record = record.value[self.name].new(default=False)
-            new_record.set_default(vals, modified=modified)
+            new_record.set_default(vals)
             group.add(new_record)
         group.signal_connect(group, 'group-changed', self._group_changed)
         group.signal_connect(group, 'group-list-changed',
@@ -666,7 +655,7 @@
     def set_on_change(self, record, value):
         self._set_default_value(record)
         if isinstance(value, (list, tuple)):
-            self.set(record, value, modified=False)
+            self.set(record, value)
             record.modified_fields.setdefault(self.name)
             record.signal('record-modified')
             return True
@@ -752,7 +741,7 @@

 class M2MField(O2MField):

-    def set(self, record, value, modified=False):
+    def set(self, record, value):
         from group import Group
         group = record.value.get(self.name)
         fields = {}
@@ -781,10 +770,6 @@
             self._group_list_changed)
         group.signal_connect(group, 'group-cleared', self._group_cleared)
group.signal_connect(group, 'record-modified', self._record_modified)
-        if modified:
-            record.modified_fields.setdefault(self.name)
-            record.signal('record-modified')
-            record.signal('record-changed')

     def get_on_change_value(self, record):
         return self.get_eval(record)
@@ -826,7 +811,7 @@
         super(ReferenceField, self).set_client(record, value,
             force_change=force_change)

-    def set(self, record, value, modified=False):
+    def set(self, record, value):
         if not value:
             record.value[self.name] = self._default
             return
@@ -856,9 +841,6 @@
             rec_name = ref_id
         record.value[self.name] = ref_model, ref_id
         record.value[self.name + '.rec_name'] = rec_name
-        if modified:
-            record.modified_fields.setdefault(self.name)
-            record.signal('record-modified')


 class BinaryField(CharField):

Index: tryton/gui/window/view_form/model/group.py
===================================================================

--- a/tryton/gui/window/view_form/model/group.py
+++ b/tryton/gui/window/view_form/model/group.py
@@ -204,7 +204,7 @@
                 return []
         return list({}.fromkeys(res))

-    def load(self, ids, display=True, modified=False, id2record=None):
+    def load(self, ids, display=True, modified=False):
         if not ids:
             return True

@@ -260,7 +260,7 @@

     context = property(_get_context)

-    def add(self, record, position=-1, modified=True):
+    def add(self, record, position=-1):
         if record.group is not self:
             record.signal_unconnect(record.group)
             record.group = self
@@ -278,9 +278,8 @@
             if record_del.id == record.id:
                 self.record_deleted.remove(record)
         self.current_idx = position
-        if modified:
-            record.modified_fields.setdefault('id')
-            record.signal('record-modified')
+        record.modified_fields.setdefault('id')
+        record.signal('record-modified')
         self.signal('group-changed', record)
         return record


Index: tryton/gui/window/view_form/model/record.py
===================================================================

--- a/tryton/gui/window/view_form/model/record.py
+++ b/tryton/gui/window/view_form/model/record.py
@@ -381,7 +381,7 @@
     def context_get(self):
         return self.group.context

-    def set_default(self, val, signal=True, modified=False):
+    def set_default(self, val, signal=True):
         for fieldname, value in val.items():
             if fieldname not in self.group.fields:
                 continue
@@ -392,14 +392,13 @@
                     self.value[field_rec_name] = val[field_rec_name]
                 elif field_rec_name in self.value:
                     del self.value[field_rec_name]
-            self.group.fields[fieldname].set_default(self, value,
-                modified=modified)
+            self.group.fields[fieldname].set_default(self, value)
             self._loaded.add(fieldname)
         self.validate(softvalidation=True)
         if signal:
             self.signal('record-changed')

-    def set(self, val, modified=False, signal=True):
+    def set(self, val, signal=True):
         later = {}
         for fieldname, value in val.iteritems():
             if fieldname == '_timestamp':
@@ -419,14 +418,11 @@
                     self.value[field_rec_name] = val[field_rec_name]
                 elif field_rec_name in self.value:
                     del self.value[field_rec_name]
-            self.group.fields[fieldname].set(self, value, modified=False)
+            self.group.fields[fieldname].set(self, value)
             self._loaded.add(fieldname)
         for fieldname, value in later.iteritems():
-            self.group.fields[fieldname].set(self, value, modified=False)
+            self.group.fields[fieldname].set(self, value)
             self._loaded.add(fieldname)
-        if modified:
-            self.modified_fields.update(dict((x, None) for x in val))
-            self.signal('record-modified')
         if signal:
             self.signal('record-changed')


Index: tryton/gui/window/wizard.py
===================================================================

--- a/tryton/gui/window/wizard.py
+++ b/tryton/gui/window/wizard.py
@@ -226,7 +226,7 @@
         self.widget.pack_start(self.scrolledwindow)

         self.screen.new(default=False)
-        self.screen.current_record.set_default(defaults, modified=True)
+        self.screen.current_record.set_default(defaults)
         self.screen.set_cursor()





--
--
[email protected] mailing list

--- You received this message because you are subscribed to the Google Groups "tryton-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to