def load_for(self, values): self.models.lock_signal = True for value in values: newmod = ModelRecord(self.resource, value['id'], parent=self.parent, group=self) newmod.set(value) self.models.append(newmod) newmod.signal_connect(self, 'record-changed', self._record_changed) self.models.lock_signal = False self.signal('record-cleared')
def model_new(self, default=True, domain=[], context={}): newmod = ModelRecord(self.resource, None, group=self, parent=self.parent, new=True) newmod.signal_connect(self, 'record-changed', self._record_changed) if default: ctx=context.copy() ctx.update(self.context) newmod.default_get(domain, ctx) self.signal('model-changed', newmod) return newmod
def writen(self, edited_id): if not self.on_write: return new_ids = getattr(self.rpc, self.on_write)(edited_id, self.context) model_idx = self.models.index(self[edited_id]) result = False for id in new_ids: cont = False for m in self.models: if m.id == id: cont = True m.reload() if cont: continue newmod = ModelRecord(self.resource, id, parent=self.parent, group=self) newmod.reload() if not result: result = newmod new_index = min(model_idx, len(self.models)-1) self.model_add(newmod, new_index) return result
def model_new(self, default=True, domain=[], context={}): newmod = ModelRecord(self.resource, None, group=self, parent=self.parent, new=True) newmod.signal_connect(self, 'record-changed', self._record_changed) if default: ctx = context.copy() ctx.update(self.context) newmod.default_get(domain, ctx) self.signal('model-changed', newmod) newmod.list_parent = self.list_parent newmod.list_group = self.list_group return newmod
def pre_load(self, ids, display=True): if not ids: return True if len(ids)>10: self.models.lock_signal = True for id in ids: newmod = ModelRecord(self.resource, id, parent=self.parent, group=self) self.model_add(newmod) if display: self.signal('model-changed', newmod) if len(ids)>10: self.models.lock_signal = False self.signal('record-cleared') return True
def load_for(self, values): if len(values)>10: self.models.lock_signal = True for value in values: newmod = ModelRecord(self.resource, value['id'], parent=self.parent, group=self) newmod.set(value) self.models.append(newmod) newmod.signal_connect(self, 'record-changed', self._record_changed) if len(values)>10: self.models.lock_signal = False self.signal('record-cleared')