class departments (FormWraper): def onInit(self, **kparams): self.setupForm(Ui_departments) self.mgt_interface = Client.get_interface('FABLIK_MGT') self.syncTree() self._widgets.departmentsTree.setColumnWidth(0, 250) self._widgets.departmentsTree.setColumnWidth(1, 150) self.disable_edits() self._widgets.allRolesList.clear() self.all_roles = Query.select('GET_ROLES') for role in self.all_roles: self._widgets.allRolesList.addItem(role['sid']) #connect signals self._widgets.newDepBtn.clicked.connect(self.onCreateNewDepartment) self._widgets.newSubDepBtn.clicked.connect(self.onCreateSubDepartment) self._widgets.remDepBtn.clicked.connect(self.onRemoveDepartment) self._widgets.applyBtn.clicked.connect(self.onApplyDepartment) self._widgets.departmentsTree.itemSelectionChanged.connect(self.fill_edits) def syncTree(self): self._widgets.departmentsTree.clear() self.treeWraper = TreeWraper('GET_DEPARTMENTS') self.treeWraper.wrap(self._widgets.departmentsTree, 'id', 'parent_id', ['name','sid','description'], ['id','parent_id']) self._widgets.departmentsTree.expandAll() def disable_edits(self): wl = self._widgets wl.depNameEdit.setDisabled(True) wl.depSIDEdit.setDisabled(True) wl.depDescriptionEdit.setDisabled(True) @rw_form_only def enable_edits(self): wl = self._widgets wl.depNameEdit.setDisabled(False) wl.depSIDEdit.setDisabled(False) wl.depDescriptionEdit.setDisabled(False) def fill_edits(self, dummy1='', dummy2=''): self.enable_edits() wl = self._widgets line = self.treeWraper.getCurrentItemLine() wl.depNameEdit.setText(line['name']) wl.depSIDEdit.setText(line['sid']) wl.depDescriptionEdit.setText(line['description']) wl.disabledRolesList.clear() if line['id'] == '': return try: dep_roles = Query.select('GET_DEP_DISABLED_ROLES', department_id=line['id']) except Exception, err: self.errorMessage(err) for role in dep_roles: wl.disabledRolesList.addItem(role['sid'])
def syncTree(self): self._widgets.departmentsTree.clear() self.treeWraper = TreeWraper('GET_DEPARTMENTS') self.treeWraper.wrap(self._widgets.departmentsTree, 'id', 'parent_id', ['name','sid','description'], ['id','parent_id']) self._widgets.departmentsTree.expandAll()