def insertItems(self, row, items, setAsDefault = True): """ Insert the <items> specified items in this list widget. The list widget shows item name string , as a QListwidgetItem. This QListWidgetItem object defines a 'key' of a dictionary (self._itemDictionary) and the 'value' of this key is the object specified by the 'item' itself. Example: self._itemDictionary['C6'] = instance of class Atom. @param row: The row number for the item. @type row: int @param items: A list of objects. These objects are treated as values in the self._itemDictionary @type items: list @param setAsDefault: Not used here. See PM_ListWidget.insertItems where it is used. @see: self.renameItemValue() for a comment about self._suppress_itemChanged_signal """ #delete unused argument. Should this be provided as an argument in this #class method ? del setAsDefault #self.__init__ for a comment about this flag self._suppress_itemChanged_signal = True #Clear the previous contents of the self._itemDictionary self._itemDictionary.clear() #Clear the contents of this list widget, using QListWidget.clear() #See U{<http://doc.trolltech.com/4.2/qlistwidget.html>} for details self.clear() for item in items: if hasattr(item.__class__, 'name'): itemName = item.name else: itemName = str(item) listWidgetItem = QListWidgetItem(itemName, self) #When we support editing list widget items , uncomment out the #following line . See also self.editItems -- Ninad 2008-01-16 listWidgetItem.setFlags( listWidgetItem.flags()| Qt.ItemIsEditable) if hasattr(item.__class__, 'iconPath'): try: listWidgetItem.setIcon(geticon(item.iconPath)) except: print_compact_traceback() self._itemDictionary[listWidgetItem] = item #Reset the flag that temporarily suppresses itemChange signal. self._suppress_itemChanged_signal = False
def add_account_to_list(self, account): at = self.app.preferences.ui.accountList n = at.count() icon = self.app.icons.get_service_icon(account.service, account.url) li = QListWidgetItem( u"{0} ({1})".format( account.name, account.service)) if icon is not None: li.setIcon(icon) at.insertItem(n, li) at.setCurrentRow(n)
def run_checks(self, container): with BusyCursor(): self.show_busy() QApplication.processEvents() errors = run_checks(container) self.hide_busy() for err in sorted(errors, key=lambda e:(100 - e.level, e.name)): i = QListWidgetItem('%s\xa0\xa0\xa0\xa0[%s]' % (err.msg, err.name), self.items) i.setData(Qt.UserRole, err) i.setIcon(icon_for_level(err.level)) if errors: self.items.setCurrentRow(0) self.current_item_changed() self.items.setFocus(Qt.OtherFocusReason) else: self.clear_help(_('No problems found'))
def run_checks(self, container): with BusyCursor(): self.show_busy() QApplication.processEvents() errors = run_checks(container) self.hide_busy() for err in sorted(errors, key=lambda e: (100 - e.level, e.name)): i = QListWidgetItem('%s\xa0\xa0\xa0\xa0[%s]' % (err.msg, err.name), self.items) i.setData(Qt.UserRole, err) i.setIcon(icon_for_level(err.level)) if errors: self.items.setCurrentRow(0) self.current_item_changed() self.items.setFocus(Qt.OtherFocusReason) else: self.clear_help(_('No problems found'))
def initialize(self): self.devices.blockSignals(True) self.devices.clear() for dev in self.gui.device_manager.devices: for d, name in dev.get_user_blacklisted_devices().iteritems(): item = QListWidgetItem('%s [%s]'%(name, d), self.devices) item.setData(Qt.UserRole, (dev, d)) item.setFlags(Qt.ItemIsEnabled|Qt.ItemIsUserCheckable|Qt.ItemIsSelectable) item.setCheckState(Qt.Checked) self.devices.blockSignals(False) self.device_plugins.blockSignals(True) for dev in self.gui.device_manager.disabled_device_plugins: n = dev.get_gui_name() item = QListWidgetItem(n, self.device_plugins) item.setData(Qt.UserRole, dev) item.setFlags(Qt.ItemIsEnabled|Qt.ItemIsUserCheckable|Qt.ItemIsSelectable) item.setCheckState(Qt.Checked) item.setIcon(QIcon(I('plugins.png'))) self.device_plugins.sortItems() self.device_plugins.blockSignals(False)
def initialize(self): self.devices.blockSignals(True) self.devices.clear() for dev in self.gui.device_manager.devices: for d, name in dev.get_user_blacklisted_devices().iteritems(): item = QListWidgetItem('%s [%s]' % (name, d), self.devices) item.setData(Qt.UserRole, (dev, d)) item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsUserCheckable | Qt.ItemIsSelectable) item.setCheckState(Qt.Checked) self.devices.blockSignals(False) self.device_plugins.blockSignals(True) for dev in self.gui.device_manager.disabled_device_plugins: n = dev.get_gui_name() item = QListWidgetItem(n, self.device_plugins) item.setData(Qt.UserRole, dev) item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsUserCheckable | Qt.ItemIsSelectable) item.setCheckState(Qt.Checked) item.setIcon(QIcon(I('plugins.png'))) self.device_plugins.sortItems() self.device_plugins.blockSignals(False)