コード例 #1
0
ファイル: FormWidget.py プロジェクト: fabregas/old_projects
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'])
コード例 #2
0
ファイル: FormWidget.py プロジェクト: fabregas/old_projects
    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()