def initGui(self): QApplication.setOverrideCursor( Qt.WaitCursor ) # Pick up information of all available fields in all current views. try: self.fields = {} queue = ViewQueue() queue.setup( self.viewTypes, self.viewIds ) while not queue.isEmpty(): id, type = queue.next() view = Rpc.session.execute('/object', 'execute', self.model, 'fields_view_get', id, type, Rpc.session.context) self.fields.update( view['fields'] ) except Rpc.RpcException, e: QApplication.restoreOverrideCursor() return
def createScreen(self): self.group = RecordGroup(self.model, context=self.context) self.group.setDomainForEmptyGroup() screen = Screen() screen.setRecordGroup(self.group) screen.setEmbedded(True) if 'form' in self.viewTypes: queue = ViewQueue() queue.setup(self.viewTypes, self.viewIds) type = '' while type != 'form': id, type = queue.next() screen.setupViews(['form'], [id]) else: screen.setupViews(['form'], [False])
def setup(self, viewTypes, viewIds): if not self.group: self.group = RecordGroup(self.model, context=self.context) self.group.setDomainForEmptyGroup() self.isGroupNew = True self.screen.setRecordGroup(self.group) self.screen.setEmbedded(True) if 'form' in viewTypes: queue = ViewQueue() queue.setup(viewTypes, viewIds) type = '' while type != 'form': id, type = queue.next() self.screen.setupViews(['form'], [id]) else: self.screen.setupViews(['form'], [False]) self.screen.new()