def add_items_to_stypes_tree(self): exclude_list = self.get_ignore_stypes_list() self.sTypesTreeWidget.clear() all_stypes = [] for stype in env_inst.projects[self.current_project].stypes.itervalues(): all_stypes.append(stype.info) grouped = gf.group_dict_by(all_stypes, 'type') for name, value in grouped.iteritems(): self.top_item = QtGui.QTreeWidgetItem() self.top_item.setCheckState(0, QtCore.Qt.Checked) if not name: name = 'Untyped' self.top_item.setText(0, name.capitalize()) self.sTypesTreeWidget.addTopLevelItem(self.top_item) for item in value: self.child_item = QtGui.QTreeWidgetItem() if item.get('title'): item_title = item['title'].capitalize() else: item_title = 'Unnamed' item_code = item['code'] self.child_item.setText(0, item_title) self.child_item.setText(1, item_code) self.child_item.setData(0, QtCore.Qt.UserRole, item) self.child_item.setCheckState(0, QtCore.Qt.Checked) if exclude_list: if item_code in exclude_list: self.child_item.setCheckState(0, QtCore.Qt.Unchecked) self.top_item.addChild(self.child_item) self.top_item.setExpanded(True)
def add_items_to_stypes_tree(self): exclude_list = self.get_ignore_stypes_list() self.sTypesTreeWidget.clear() all_stypes = [] for stype in env_inst.projects[ self.current_project].stypes.itervalues(): all_stypes.append(stype.info) grouped = gf.group_dict_by(all_stypes, 'type') for name, value in grouped.iteritems(): top_item = QtGui.QTreeWidgetItem() # self.top_item.setCheckState(0, QtCore.Qt.Checked) if not name: name = 'Untyped' top_item.setText(0, name.capitalize()) top_item.setCheckState(0, QtCore.Qt.Checked) self.sTypesTreeWidget.addTopLevelItem(top_item) for item in value: child_item = QtGui.QTreeWidgetItem() if item.get('title'): item_title = item['title'].capitalize() else: item_title = 'Unnamed' item_code = item['code'] child_item.setText(0, item_title) child_item.setText(1, item_code) child_item.setData(0, QtCore.Qt.UserRole, item) child_item.setCheckState(0, QtCore.Qt.Checked) if exclude_list: if item_code in exclude_list: child_item.setCheckState(0, QtCore.Qt.Unchecked) top_item.addChild(child_item) top_item.setExpanded(True)
def fill_projects_to_menu(self): all_projects = self.projects_items.result all_projects_dicts = [] for project_name, project in all_projects.iteritems(): all_projects_dicts.append(project.info) projects_by_categories = gf.group_dict_by(all_projects_dicts, 'category') for cat_name, projects in projects_by_categories.iteritems(): if cat_name: cat_name = cat_name.replace('_', ' ').capitalize() else: cat_name = 'No Category' if cat_name != 'Template': category = self.menuProject.addMenu(cat_name) for e, project in enumerate(projects): # TEMPORARY # project['is_template'] = False # TEMPORARY if not project.get('is_template'): project_code = project.get('code') menu_action = QtGui.QAction(self) menu_action.setCheckable(True) if self.opened_projects: if project_code in self.opened_projects: menu_action.setChecked(True) menu_action.setText(project.get('title')) # Don't know why lambda did not work here menu_action.triggered.connect(partial(self.create_project_dock, project_code)) category.addAction(menu_action)
def fill_projects_to_menu(self): all_projects = self.projects_items.result all_projects_dicts = [] for project_name, project in all_projects.iteritems(): all_projects_dicts.append(project.info) projects_by_categories = gf.group_dict_by(all_projects_dicts, 'category') for cat_name, projects in projects_by_categories.iteritems(): if cat_name: cat_name = cat_name.replace('_', ' ').capitalize() else: cat_name = 'No Category' category = self.menuProject.addMenu(cat_name) for e, project in enumerate(projects): # TEMPORARY project['is_template'] = False # TEMPORARY if not project.get('is_template'): project_code = project.get('code') menu_action = QtGui.QAction(self) menu_action.setCheckable(True) if self.opened_projects: if project_code in self.opened_projects: menu_action.setChecked(True) menu_action.setText(project.get('title')) # Don't know why lambda did not work here menu_action.toggled.connect(partial(self.create_project_dock, project_code)) category.addAction(menu_action)