def _update_pyqt_object_from_config(self, obj, config_data, index=None): if index: obj = obj[index] if type(obj) == QPushButton: # QPushButton obj.setText(config_data[0]) obj.setStyleSheet(config_data[1]) # return obj elif hasattr(obj, 'isChecked'): # [QCheckBox,QRadioButton]: obj.setChecked(config_data[0]) elif hasattr(obj, 'text'): # QLabel, QLineEdit obj.setText(config_data[0]) # return obj elif hasattr(obj, 'count') and hasattr(obj, 'itemText') and hasattr(obj, 'currentIndex'): # QComboBox obj.clear() obj.addItems(config_data[0]) obj.setCurrentIndex(config_data[1]) # return obj elif hasattr(obj, 'count') and hasattr(obj, 'selectedIndexes'): # # QListWidget # removing old items obj.clear() for itemlabel in config_data[0]: item = QListWidgetItem() item.setText(itemlabel) obj.addItem(item) for itemid in range(obj.count()): if itemid in config_data[1]: obj.item(itemid).setSelected(True) else: obj.item(itemid).setSelected(False)
def populateListWithDatabasesFromServer(self): dbList = self.serverWidget.abstractDb.getEDGVDbsFromServer() dbList.sort() for (dbname, dbversion) in dbList: item = QListWidgetItem(self.dbListWidget) item.setText(dbname + ' (EDGV v. ' + dbversion + ')') item.setData(Qt.UserRole, dbname)
def populate_field_list(self, excluded_fields=None): """Helper to add field of the layer to the list. :param excluded_fields: List of field that want to be excluded. :type excluded_fields: list """ # Populate fields list if excluded_fields is None: excluded_fields = [] self.field_list.clear() for field in self.layer.dataProvider().fields(): # Skip if it's excluded if field.name() in excluded_fields: continue # Skip if it's not number (float, int, etc) if field.type() not in qvariant_numbers: continue field_item = QListWidgetItem(self.field_list) field_item.setFlags( Qt.ItemIsEnabled | Qt.ItemIsSelectable | Qt.ItemIsDragEnabled) field_item.setData(Qt.UserRole, field.name()) field_item.setText(field.name()) self.field_list.addItem(field_item)
def __init__(self, tableView, parent = None): """ Constructor """ QDialog.__init__(self, parent) self.setupUi(self) del TableSetting.ret TableSetting.ret = None self.setWindowTitle(u"自定义列表") self.tableView = tableView headers=self.tableView.model().headers for i in range(len(headers)): newItem = QListWidgetItem(); newItem.setText(headers[i]); if self.tableView.isColumnHidden(i): newItem.setCheckState(QtCore.Qt.Unchecked) else: newItem.setCheckState(QtCore.Qt.Checked) self.listWidget.insertItem(i, newItem) if i < 2: newItem.setHidden(True) items = [str(i) for i in range(self.listWidget.count())] for item in items: self.comboBox_3.addItem(item) self.comboBox_3.setCurrentIndex(self.tableView.freezeNum) self.groupBox.setVisible(False)
def popularListaAlimentos(self): self.alimentos = {} #busca todos os arquivos for root, dirs, files in os.walk(MY_DIR_ALIMENTO): #para cada arquivo for f in files: #pega o arquivo, carrega e fecha arq = file(MY_DIR_ALIMENTO + f) alim = pickle.load(arq) arq.close() #adiciona o item na lista de alimento self.alimentos[str(alim.nome)] = alim icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(alim.imagem), QtGui.QIcon.Normal, QtGui.QIcon.Off) item = QListWidgetItem() item.setIcon(icon) item.setText(alim.nome) self.listaAlimentos.addItem(item)
def search(self, text): db = self.db c = db.cursor() self.resultsView.clear() self.resultsView.setEnabled(False) if not text: return if self.fuzzyCheck.isChecked(): search = "* ".join(text.split()) + "*" else: search = text query = c.execute("""SELECT layer, featureid, snippet(search, '[',']') as snippet FROM search JOIN featureinfo on search.docid = featureinfo.id WHERE search match '{}' LIMIT 100""".format(search)).fetchall() for layer, featureid, snippet in query: item = QListWidgetItem() text = "{}\n {}".format(layer, snippet.replace('\n', ' ')) item.setText(text) item.setData(Qt.UserRole, (layer, featureid, snippet)) self.resultsView.addItem(item) self.resultsView.setEnabled(True) if self.resultsView.count() == 0: self.resultsView.addItem("No Results") self.resultsView.setEnabled(False) db.close()
def search(self, text): db = self.db c = db.cursor() self.resultsView.clear() self.resultsView.setEnabled(False) if not text: return if self.fuzzyCheck.isChecked(): search = "* ".join(text.split()) + "*" else: search = text query = c.execute( """SELECT layer, featureid, snippet(search, '[',']') as snippet FROM search JOIN featureinfo on search.docid = featureinfo.id WHERE search match '{}' LIMIT 100""".format( search)).fetchall() for layer, featureid, snippet in query: item = QListWidgetItem() text = "{}\n {}".format(layer, snippet.replace('\n', ' ')) item.setText(text) item.setData(Qt.UserRole, (layer, featureid, snippet)) self.resultsView.addItem(item) self.resultsView.setEnabled(True) if self.resultsView.count() == 0: self.resultsView.addItem("No Results") self.resultsView.setEnabled(False) db.close()
def update(self, subject): action, key = subject if action == "add": movie = self._moviemodel.data()[-1] item = QListWidgetItem(movie.to_string()) item.setFlags(item.flags() | QtCore.Qt.ItemIsEditable) self.addItem(item) self.item_to_movie[item] = movie self.movie_to_item[movie] = item if action == "remove": item = self.movie_to_item[key] self.takeItem(self.row(item)) self.item_to_movie.pop(item) self.movie_to_item.pop(key) if action == "update": item = self.movie_to_item[key] item.setText(key.to_string()) if key.has_been_saved(): if key.has_changed(): key.set_saved(False) self.apply_item_style(key, item) if item in self.selectedItems(): self.emit(QtCore.SIGNAL("currentItemChanged(QListWidgetItem *,QListWidgetItem *)"), item, item) if action == "clear": item = self.movie_to_item[key] item.setText(key.get_title()) key.set_modified(False) key.set_saved(False) self.apply_item_style(key, item)
def writeModeData(self,data): item = QListWidgetItem() item.setText(data) item.setSizeHint(QSize(27,27)) item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsEditable | Qt.ItemIsSelectable) self.insertItem(self.count()+1,item) self.scrollToBottom()
def refreshPeers(self): self.ui.peerList.clear() for peer in self.communicator.peers: peer = self.communicator.peers[peer] peerName = QListWidgetItem(self.ui.peerList) peerName.peer = peer nameFont = QtGui.QFont() nameFont.setPointSize(14) peerDetails = QListWidgetItem(self.ui.peerList) peerDetails.peer = peer detailsFont = QtGui.QFont() detailsFont.setPointSize(10) name = peer.name details = "" if peer.publicKey is None: details += "Unpaired, " else: details += "Paired, " if peer.lastKnownIP is None: details += "unavailable" else: details += "available: " + peer.lastKnownIP peerName.setFont(nameFont) peerName.setText(name) peerDetails.setFont(detailsFont) peerDetails.setText(details) self.ui.peerList.addItem(peerName) self.ui.peerList.addItem(peerDetails) separatorItem = QListWidgetItem(self.ui.peerList) separatorItem.guid = peer.guid separatorItem.peer = None separatorItem.setFlags(QtCore.Qt.NoItemFlags) self.ui.peerList.addItem(separatorItem)
def update(self, subject): action, key = subject if action == "add": movie = self._moviemodel.data()[-1] item = QListWidgetItem(movie.to_string()) item.setFlags(item.flags() | QtCore.Qt.ItemIsEditable) self.addItem(item) self.item_to_movie[item] = movie self.movie_to_item[movie] = item if action == "remove": item = self.movie_to_item[key] self.takeItem(self.row(item)) self.item_to_movie.pop(item) self.movie_to_item.pop(key) if action == "update": item = self.movie_to_item[key] item.setText(key.to_string()) if key.has_been_saved(): if key.has_changed(): key.set_saved(False) self.apply_item_style(key, item) if item in self.selectedItems(): self.emit(QtCore.SIGNAL(\ "currentItemChanged(QListWidgetItem *,QListWidgetItem *)"), item, item) if action == "clear": item = self.movie_to_item[key] item.setText(key.get_title()) key.set_modified(False) key.set_saved(False) self.apply_item_style(key, item)
def populateListWithDatabasesFromServer(self): self.serverListWidget.clear() dbList = self.serverWidget.abstractDb.getEDGVDbsFromServer() dbList.sort() for (dbname, dbversion) in dbList: item = QListWidgetItem(self.serverListWidget) item.setText(dbname+' (EDGV v. '+dbversion+')') item.setData(Qt.UserRole, dbname)
def fetchAnnotations_click(self): rows = self.fetchAnnotations() self.wlistAnnotations.clear() for row in rows: item = QListWidgetItem() item.setData(1, row) item.setText(str(row['label'])) self.wlistAnnotations.addItem(item)
def onUnSlctExt(self): item = self.list_search.currentItem() if item == None: return ext = str(item.text()) nit = QListWidgetItem(self.list_unsearch) nit.setText(ext) self.list_search.takeItem(self.list_search.row(item)) self.searchext[ext] = False
def onUnSlctExt(self): item=self.list_search.currentItem() if item==None: return ext=str(item.text()) nit=QListWidgetItem(self.list_unsearch) nit.setText(ext) self.list_search.takeItem(self.list_search.row(item)) self.searchext[ext]=False
def getNewCompo(self, w, cView): """Function that finds new composer to be added to the list.""" nameCompo = cView.composerWindow().windowTitle() if not w.findItems(nameCompo, Qt.MatchExactly): item = QListWidgetItem() item.setFlags(item.flags() | Qt.ItemIsUserCheckable) item.setCheckState(Qt.Unchecked) item.setText(nameCompo) w.addItem(item)
def load_sample(self, sample): self.list_attribute.clear() for element in sample: k, v = element.items()[0] item = QListWidgetItem() item.setText(unicode(v)) self.list_attribute.addItem(item)
def refresh_list(self): self._input.clear() if not self._parameter.ordering == InputListParameter.NotOrdered: self._value_cache.sort() if self._parameter.ordering == InputListParameter.DescendingOrder: self._value_cache.reverse() for opt in self._value_cache: item = QListWidgetItem() item.setText(str(opt)) item.setFlags(item.flags() | Qt.ItemIsEditable) self._input.addItem(item)
def update_list(self): self.listWidgetAlyObj.clear() #dirs = os.listdir(self.full_file_name) #dirs = [d for d in os.listdir(self.path) if os.path.isdir(os.path.join(self.path, d))] # path to the directory (relative or absolute) dirpath = self.path try: # get all entries in the directory w/ stats entries = (os.path.join(dirpath, fn) for fn in os.listdir(dirpath)) entries = ((os.stat(path), path) for path in entries) except: return # leave only regular files, insert creation date entries = ((stat[ST_CTIME], path) for stat, path in entries if S_ISREG(stat[ST_MODE])) #NOTE: on Windows `ST_CTIME` is a creation date # but on Unix it could be something else #NOTE: use `ST_MTIME` to sort by a modification date if os.path.exists(self.path + os.sep + "lock_list.xml"): f = open(self.path + os.sep + "lock_list.xml") string = f.read() for cdate, path in sorted(entries): filename = os.path.basename(path) if os.path.exists(self.path + os.sep + "lock_list.xml"): if "<name>" + filename + "</name>" in string: continue if filename.endswith('.xml') and not filename.endswith( 'list.xml') and not filename.endswith('data.xml'): item = QListWidgetItem() if filename.endswith('_RectFinder.xml'): item.setText(filename[:-15] + " [RF]") elif filename.endswith('_ImageFinder.xml'): item.setText(filename[:-16] + " [IF]") elif filename.endswith("_TextFinder.xml"): item.setText(filename[:-15] + " [TF]") elif filename.endswith('_ObjectFinder.xml'): item.setText(filename[:-17] + " [OF]") elif filename.endswith('_CustomCode.xml'): item.setText(filename[:-15] + " [CC]") item.setData(Qt.UserRole, filename) self.listWidgetAlyObj.addItem(item) #print time.ctime(cdate), os.path.basename(path) """
def update_list(self): self.listWidgetAlyObj.clear() #dirs = os.listdir(self.full_file_name) #dirs = [d for d in os.listdir(self.path) if os.path.isdir(os.path.join(self.path, d))] # path to the directory (relative or absolute) dirpath = self.path try: # get all entries in the directory w/ stats entries = (os.path.join(dirpath, fn) for fn in os.listdir(dirpath)) entries = ((os.stat(path), path) for path in entries) except: return # leave only regular files, insert creation date entries = ((stat[ST_CTIME], path) for stat, path in entries if S_ISREG(stat[ST_MODE])) #NOTE: on Windows `ST_CTIME` is a creation date # but on Unix it could be something else #NOTE: use `ST_MTIME` to sort by a modification date if os.path.exists(self.path + os.sep + "lock_list.xml"): f = open(self.path + os.sep + "lock_list.xml") string = f.read() for cdate, path in sorted(entries): filename = os.path.basename(path) if os.path.exists(self.path + os.sep + "lock_list.xml"): if "<name>" + filename + "</name>" in string: continue if filename.endswith('.xml') and not filename.endswith('list.xml') and not filename.endswith('data.xml'): item = QListWidgetItem() if filename.endswith('_RectFinder.xml'): item.setText(filename[:-15] + " [RF]") elif filename.endswith('_ImageFinder.xml'): item.setText(filename[:-16] + " [IF]") elif filename.endswith("_TextFinder.xml"): item.setText(filename[:-15] + " [TF]") elif filename.endswith('_ObjectFinder.xml'): item.setText(filename[:-17] + " [OF]") elif filename.endswith('_CustomCode.xml'): item.setText(filename[:-15] + " [CC]") item.setData(Qt.UserRole, filename) self.listWidgetAlyObj.addItem(item) #print time.ctime(cdate), os.path.basename(path) """
def handleStartButton(self): if self.iconList.count() < 2: rm = str(self.media.currentTime() / 100.00 / 10.00) item = QListWidgetItem() img = QImage(self.video.snapshot()) pix = QtGui.QPixmap.fromImage(img) item.setIcon(QIcon(pix)) item.setText("Start: " + rm) self.iconList.addItem(item) self.videoCuts.append(rm) else: return
def __init__(self, parameter, parent=None): """Constructor .. versionadded:: 2.2 :param parameter: A ListParameter object. :type parameter: ListParameter """ super(ListParameterWidget, self).__init__(parameter, parent) self._input = QListWidget() self._input.setSelectionMode(QAbstractItemView.MultiSelection) if self._parameter.maximum_item_count != \ self._parameter.minimum_item_count: tool_tip = 'Select between %d and %d items' % ( self._parameter.minimum_item_count, self._parameter.maximum_item_count) else: tool_tip = 'Select exactly %d items' % ( self._parameter.maximum_item_count) self._input.setToolTip(tool_tip) for opt in self._parameter.options_list: item = QListWidgetItem() item.setFlags(item.flags() | Qt.ItemIsEditable) item.setText(str(opt)) self._input.addItem(item) if opt in self._parameter.value: item.setSelected(True) self.inner_input_layout.addWidget(self._input) # override self._input_layout arrangement to make the label at the top # reset the layout self.input_layout.setParent(None) self.help_layout.setParent(None) self.label.setParent(None) self.inner_input_layout.setParent(None) self.input_layout = QVBoxLayout() self.input_layout.setSpacing(0) # put element into layout self.input_layout.addWidget(self.label) self.input_layout.addLayout(self.inner_input_layout) self.main_layout.addLayout(self.input_layout) self.main_layout.addLayout(self.help_layout)
def insertCheckableItem(self, index, label, state, isBonus=False): """ Fügt einen Eintrag an der angegebenen Indexposition ein. """ item = QListWidgetItem() item.setText(label) item.setCheckState(state) if isBonus: item.setData(Qt.ForegroundRole, QColor(Config.COLOR_BONUS)) item.setFlags(item.flags() & Qt.ItemIsUserCheckable) self.insertItem(index, item)
def __init__(self, parameter, parent=None): """Constructor .. versionadded:: 2.2 :param parameter: A ListParameter object. :type parameter: ListParameter """ super(ListParameterWidget, self).__init__(parameter, parent) self._input = QListWidget() self._input.setSelectionMode(QAbstractItemView.MultiSelection) if self._parameter.maximum_item_count != \ self._parameter.minimum_item_count: tool_tip = 'Select between %d and %d items' % ( self._parameter.minimum_item_count, self._parameter.maximum_item_count) else: tool_tip = 'Select exactly %d items' % ( self._parameter.maximum_item_count) self._input.setToolTip(tool_tip) for opt in self._parameter.options_list: item = QListWidgetItem() item.setFlags(item.flags() | Qt.ItemIsEditable) item.setText(str(opt)) self._input.addItem(item) if opt in self._parameter.value: item.setSelected(True) self._inner_input_layout.addWidget(self._input) # override self._input_layout arrangement to make the label at the top # reset the layout self._input_layout.setParent(None) self._help_layout.setParent(None) self._label.setParent(None) self._inner_input_layout.setParent(None) self._input_layout = QVBoxLayout() self._input_layout.setSpacing(0) # put element into layout self._input_layout.addWidget(self._label) self._input_layout.addLayout(self._inner_input_layout) self._main_layout.addLayout(self._input_layout) self._main_layout.addLayout(self._help_layout)
def qlw_additem(key, d, listwidget, text=None, icon=None): """Adds a QListWidgetItem to listwidget, storing the ListWidgetItem in d indexed by key. text defaults to str(key)""" if key in d: return if not text: text = str(key) item = QListWidgetItem() item.setText(text) if icon: item.setIcon(icon) listwidget.addItem(item) d[key] = item
def initListView(self, mlist): for iv in mlist: lisItm = QListWidgetItem(self.listWidget) lisItm.setTextColor(Qt.red) lisItm.setData(Qt.UserRole, iv) if isinstance(iv, basestring): # 如果错误信息是一行字符串 lisItm.setText(iv) else: lisItm.setText(u'第' + unicode(str(iv['row'] + 1)) + u'行,第' + unicode(str(iv['col'] + 1)) + u'列:' + iv['msg'])
def populate_classified_values(self, unassigned_values, assigned_values, default_classes): """Populate lstUniqueValues and treeClasses.from the parameters. :param unassigned_values: List of values that haven't been assigned to a class. It will be put in self.lstUniqueValues. :type unassigned_values: list :param assigned_values: Dictionary with class as the key and list of value as the value of the dictionary. It will be put in self.treeClasses. :type assigned_values: dict :param default_classes: Default classes from unit. :type default_classes: list """ # Populate the unique values list self.lstUniqueValues.clear() self.lstUniqueValues.setSelectionMode( QAbstractItemView.ExtendedSelection) for value in unassigned_values: value_as_string = value is not None and unicode(value) or 'NULL' list_item = QListWidgetItem(self.lstUniqueValues) list_item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsSelectable | Qt.ItemIsDragEnabled) list_item.setData(Qt.UserRole, value) list_item.setText(value_as_string) self.lstUniqueValues.addItem(list_item) # Populate assigned values tree self.treeClasses.clear() self.treeClasses.invisibleRootItem().setFlags(Qt.ItemIsEnabled) for default_class in default_classes: # Create branch for class tree_branch = QTreeWidgetItem(self.treeClasses) tree_branch.setFlags(Qt.ItemIsDropEnabled | Qt.ItemIsEnabled) tree_branch.setExpanded(True) tree_branch.setFont(0, bold_font) if 'name' in default_class: default_class_name = default_class['name'] else: default_class_name = default_class['key'] tree_branch.setText(0, default_class_name) tree_branch.setData(0, Qt.UserRole, default_class['key']) if 'description' in default_class: tree_branch.setToolTip(0, default_class['description']) # Assign known values for value in assigned_values[default_class['key']]: string_value = value is not None and unicode(value) or 'NULL' tree_leaf = QTreeWidgetItem(tree_branch) tree_leaf.setFlags(Qt.ItemIsEnabled | Qt.ItemIsSelectable | Qt.ItemIsDragEnabled) tree_leaf.setData(0, Qt.UserRole, value) tree_leaf.setText(0, string_value)
def __init__(self, parent = None): QListWidget.__init__(self, parent) self.setVerticalScrollMode(QAbstractItemView.ScrollPerPixel) self.setMouseTracking(True) self.setSelectionMode(QAbstractItemView.SingleSelection) self.viewport().installEventFilter(self) self.locked = False self.moved = False for i in range(100): newItem = QListWidgetItem(self) # create new ListWidgetItem (parent= ListWidget) newItem.setText("This is entry no {0}".format(i))
def add_page(self, widget): self.connect(self, SIGNAL('check_settings()'), widget.check_settings) self.connect(widget, SIGNAL('show_this_page()'), lambda row=self.contents_widget.count(): self.contents_widget.setCurrentRow(row)) self.connect(widget, SIGNAL("apply_button_enabled(bool)"), self.apply_btn.setEnabled) self.pages_widget.addWidget(widget) item = QListWidgetItem(self.contents_widget) item.setIcon(widget.get_icon()) item.setText(widget.get_name()) item.setFlags(Qt.ItemIsSelectable|Qt.ItemIsEnabled) item.setSizeHint(QSize(0, 25))
def __init__(self, parent=None): QtGui.QDialog.__init__(self, parent) self.setupUi(self) self.loadlastCheckbox.setChecked(globalvalue.globalcfg.loadlasttime) self.openRemoteCheckbox.setChecked(globalvalue.globalcfg.openremote) self.sengine_own = globalvalue.globalcfg.sengine_own self.searchext = globalvalue.globalcfg.searchext if self.sengine_own: self.check_searchengine.setChecked(False) self.pushButton_slct.setEnabled(True) self.pushButton_deslct.setEnabled(True) else: self.check_searchengine.setChecked(True) self.pushButton_slct.setEnabled(False) self.pushButton_deslct.setEnabled(False) self.loadlasttime = globalvalue.globalcfg.loadlasttime self.openremote = globalvalue.globalcfg.openremote s = u'font family: ' if globalvalue.globalcfg.fontfamily: s = s + globalvalue.globalcfg.fontfamily else: s = s + u'default' self.fontfamily = globalvalue.globalcfg.fontfamily s = s + u"\nfont size:" if globalvalue.globalcfg.fontsize: s = s + str(globalvalue.globalcfg.fontsize) else: s = s + u'default' self.fontsize = globalvalue.globalcfg.fontsize self.label.setText(s) self.connect(self.pushButton, QtCore.SIGNAL('clicked()'), self.fontSelect) self.connect(self.loadlastCheckbox, QtCore.SIGNAL('clicked()'), self.onLoadLast) self.connect(self.openRemoteCheckbox, QtCore.SIGNAL('clicked()'), self.onOpenRemote) self.connect(self.check_searchengine, QtCore.SIGNAL('clicked()'), self.onSlctEngine) self.connect(self.pushButton_slct, QtCore.SIGNAL('clicked()'), self.onSlctExt) self.connect(self.pushButton_deslct, QtCore.SIGNAL('clicked()'), self.onUnSlctExt) for a, b in self.searchext.iteritems(): if b: item = QListWidgetItem(self.list_search) item.setText(a) else: item = QListWidgetItem(self.list_unsearch) item.setText(a)
def addContact(self, contact): if not contact: self.ui.refreshButton.setEnabled(True) return status = '' if contact.status == Contact.STATUS_ONLINE: status = u'Online' status_color = 0x00aa00 elif contact.status == Contact.STATUS_OFFLINE: status = u'Offline' status_color = 0xff0000 elif contact.status == Contact.STATUS_AWAY: status = u'Away' status_color = 0xffad16 else: status = u'Unknown' status_color = 0xaaaaaa if contact.status_msg: status += u' — %s' % contact.status_msg item = QListWidgetItem() item.setText( '<h2>%s</h2><font color="#%06X">%s</font><br /><i>%s</i>' % (contact.name, status_color, status, contact.backend)) item.setData(Qt.UserRole, contact) if contact.photos is NotLoaded: process = QtDo(self.weboob, lambda b, c: self.setPhoto(c, item)) process.do('fillobj', contact, ['photos'], backends=contact.backend) self.photo_processes[contact.id] = process elif len(contact.photos) > 0: if not self.setPhoto(contact, item): photo = contact.photos.values()[0] process = QtDo(self.weboob, lambda b, p: self.setPhoto(contact, item)) process.do('fillobj', photo, ['thumbnail_data'], backends=contact.backend) self.photo_processes[contact.id] = process for i in xrange(self.ui.contactList.count()): if self.ui.contactList.item(i).data( Qt.UserRole).toPyObject().status > contact.status: self.ui.contactList.insertItem(i, item) return self.ui.contactList.addItem(item)
def add_layer_in_selection_list(self, layer): """Add a vectorial layer in the list used for selecting which layer to export. Keyword arguments: layer -- the layer to add """ layer_id = layer.id() layer_name = layer.name() item = QListWidgetItem() item.setText(layer_name) self.vLayersListWidget.addItem(item) self.layer_to_export_list_item[layer_id] = item
def add_page(self, widget): self.connect(self, SIGNAL('check_settings()'), widget.check_settings) self.connect(widget, SIGNAL('show_this_page()'), lambda row=self.contents_widget.count(): self. contents_widget.setCurrentRow(row)) self.connect(widget, SIGNAL("apply_button_enabled(bool)"), self.apply_btn.setEnabled) self.pages_widget.addWidget(widget) item = QListWidgetItem(self.contents_widget) item.setIcon(widget.get_icon()) item.setText(widget.get_name()) item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled) item.setSizeHint(QSize(0, 25))
def __init__(self, parent=None): QListWidget.__init__(self, parent) self.setVerticalScrollMode(QAbstractItemView.ScrollPerPixel) self.setMouseTracking(True) self.setSelectionMode(QAbstractItemView.SingleSelection) self.viewport().installEventFilter(self) self.locked = False self.moved = False for i in range(100): newItem = QListWidgetItem( self) # create new ListWidgetItem (parent= ListWidget) newItem.setText("This is entry no {0}".format(i))
def show_result(self, results): self.lstSearchResult.clear() if results: for (pt, desc) in results: new_item = QListWidgetItem() new_item.setText(unicode(desc)) new_item.setData(Qt.UserRole, pt) self.lstSearchResult.addItem(new_item) else: new_item = QListWidgetItem() new_item.setText(self.tr('No results!')) new_item.setData(Qt.UserRole, None) self.lstSearchResult.addItem(new_item) self.lstSearchResult.update()
def populateListWithDatabasesFromServer(self): ''' Populates databases list from server ''' dbList = [] try: dbList = self.serverWidget.abstractDb.getEDGVDbsFromServer() except Exception as e: QMessageBox.critical(self, self.tr('Critical!'), ':'.join(e.args)) dbList.sort() for (dbname, dbversion) in dbList: item = QListWidgetItem(self.dbListWidget) item.setText(dbname + ' (EDGV v. ' + dbversion + ')') item.setData(Qt.UserRole, dbname)
def createIcons(self): vectorButton = QListWidgetItem(self.contentsWidget) vectorButton.setIcon(QIcon(":custom-vector.svg")) vectorButton.setText("Vector Layer") vectorButton.setTextAlignment(Qt.AlignHCenter) vectorButton.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled) rasterButton = QListWidgetItem(self.contentsWidget) rasterButton.setIcon(QIcon(":custom-raster.svg")) rasterButton.setText("Raster Layer") rasterButton.setTextAlignment(Qt.AlignHCenter) rasterButton.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled) self.connect(self.contentsWidget, SIGNAL("currentItemChanged(QListWidgetItem*, QListWidgetItem*)"), self.changePage)
def _insertResult(self, result): for track, res in result: item = QListWidgetItem() item.setText('{0} - {1}'.format(track[0]['name'], res['msg'])) if res['status'] == 'OK': # item.setBackground(Qt.green) pass elif res['status'] == 'ERROR': item.setForeground(Qt.red) self.list.addItem(item)
def handleEndButton(self): if self.iconList.count() < 2: rm = str(self.media.currentTime() / 100.00 / 10.00) item = QListWidgetItem() #item.setSizeHint(QSize(150, 40)) img = QImage(self.video.snapshot()) pix = QtGui.QPixmap.fromImage(img) item.setIcon(QIcon(pix)) item.setText("End: " + rm) self.iconList.addItem(item) self.videoCuts.append(rm) self.t3 = float(str(self.media.remainingTime())) print(self.t3) self.media.stop() self.playbutton.setText('Play') else: return
def update_list_widget(self): """Update list widget when radio button is clicked.""" # Get selected radio button radio_button_checked_id = self.input_button_group.checkedId() # No radio button checked, then default value = None if radio_button_checked_id > -1: selected_dict = self._parameter.options.values( )[radio_button_checked_id] if selected_dict.get('type') == MULTIPLE_DYNAMIC: for field in selected_dict.get('value'): # Update list widget field_item = QListWidgetItem(self.list_widget) field_item.setFlags(Qt.ItemIsEnabled | Qt.ItemIsSelectable | Qt.ItemIsDragEnabled) field_item.setData(Qt.UserRole, field) field_item.setText(field) self.list_widget.addItem(field_item)
def __init__(self,parent=None): QtGui.QDialog.__init__(self,parent) self.setupUi(self) self.loadlastCheckbox.setChecked(globalvalue.globalcfg.loadlasttime) self.openRemoteCheckbox.setChecked(globalvalue.globalcfg.openremote) self.sengine_own=globalvalue.globalcfg.sengine_own self.searchext=globalvalue.globalcfg.searchext if self.sengine_own: self.check_searchengine.setChecked(False) self.pushButton_slct.setEnabled(True) self.pushButton_deslct.setEnabled(True) else: self.check_searchengine.setChecked(True) self.pushButton_slct.setEnabled(False) self.pushButton_deslct.setEnabled(False) self.loadlasttime=globalvalue.globalcfg.loadlasttime self.openremote=globalvalue.globalcfg.openremote s=u'font family: ' if globalvalue.globalcfg.fontfamily: s=s+globalvalue.globalcfg.fontfamily else: s=s+u'default' self.fontfamily=globalvalue.globalcfg.fontfamily s=s+u"\nfont size:" if globalvalue.globalcfg.fontsize: s=s+str(globalvalue.globalcfg.fontsize) else: s=s+u'default' self.fontsize=globalvalue.globalcfg.fontsize self.label.setText(s) self.connect(self.pushButton,QtCore.SIGNAL('clicked()'),self.fontSelect) self.connect(self.loadlastCheckbox,QtCore.SIGNAL('clicked()'),self.onLoadLast) self.connect(self.openRemoteCheckbox,QtCore.SIGNAL('clicked()'),self.onOpenRemote) self.connect(self.check_searchengine,QtCore.SIGNAL('clicked()'),self.onSlctEngine) self.connect(self.pushButton_slct,QtCore.SIGNAL('clicked()'),self.onSlctExt) self.connect(self.pushButton_deslct,QtCore.SIGNAL('clicked()'),self.onUnSlctExt) for a,b in self.searchext.iteritems(): if b: item=QListWidgetItem(self.list_search) item.setText(a) else: item=QListWidgetItem(self.list_unsearch) item.setText(a)
def __init__(self, parent, pedalboards): QDialog.__init__(self) self.ui = Ui_PedalboardOpen() self.ui.setupUi(self) self.fSelectedURI = "" for pedalboard in pedalboards: item = QListWidgetItem(self.ui.listWidget) item.setData(Qt.UserRole, pedalboard['uri']) item.setIcon(QIcon(os.path.join(pedalboard['bundle'], "thumbnail.png"))) item.setText(pedalboard['title']) self.ui.listWidget.addItem(item) self.ui.listWidget.setCurrentRow(0) self.accepted.connect(self.slot_setSelectedURI) self.ui.listWidget.doubleClicked.connect(self.accept)
def _tabListValue_setup(self): self.tabListValue_list_values.clear() self.tabListValue_tx_value.clear() prop = self.property_selected if prop == 'geom': return property_list = self._get_property(self.resource, prop) for elem in property_list: k, v = elem.items()[0] item = QListWidgetItem() item.setText(unicode(v)) self.tabListValue_list_values.addItem(item)
def show_result(self, results): self.lstSearchResult.clear() if results: for geoservice in results: new_item = QListWidgetItem() new_item.setText( unicode(geoservice['name']) + ' [%s]' % geoservice['type'].upper()) new_item.setData(Qt.UserRole, geoservice) # todo: remake with cache icons self.lstSearchResult.addItem(new_item) else: new_item = QListWidgetItem() new_item.setText(self.tr('No results!')) new_item.setData(Qt.UserRole, None) self.lstSearchResult.addItem(new_item) self.lstSearchResult.update()
def show_result(self, geoservice, image_ba): if geoservice: custom_widget = QmsSearchResultItemWidget(geoservice, image_ba) new_item = QListWidgetItem(self.lstSearchResult) new_item.setSizeHint(custom_widget.sizeHint()) self.lstSearchResult.addItem(new_item) self.lstSearchResult.setItemWidget(new_item, custom_widget) # self.lSearchResult.addWidget(custom_widget) else: new_item = QListWidgetItem() new_item.setText(self.tr('No results!')) new_item.setData(Qt.UserRole, None) self.lstSearchResult.addItem(new_item) # l = QLabel(self.tr("No results!")) # l.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Fixed) # self.lSearchResult.addWidget(l) self.lstSearchResult.update()
def update_list_widget(self): """Update list widget when radio button is clicked.""" # Get selected radio button radio_button_checked_id = self.input_button_group.checkedId() # No radio button checked, then default value = None if radio_button_checked_id > -1: selected_dict = self._parameter.options.values()[ radio_button_checked_id] if selected_dict.get('type') == MULTIPLE_DYNAMIC: for field in selected_dict.get('value'): # Update list widget field_item = QListWidgetItem(self.list_widget) field_item.setFlags( Qt.ItemIsEnabled | Qt.ItemIsSelectable | Qt.ItemIsDragEnabled) field_item.setData(Qt.UserRole, field) field_item.setText(field) self.list_widget.addItem(field_item)
def addContact(self, contact): if not contact: self.ui.refreshButton.setEnabled(True) return status = '' if contact.status == Contact.STATUS_ONLINE: status = u'Online' status_color = 0x00aa00 elif contact.status == Contact.STATUS_OFFLINE: status = u'Offline' status_color = 0xff0000 elif contact.status == Contact.STATUS_AWAY: status = u'Away' status_color = 0xffad16 else: status = u'Unknown' status_color = 0xaaaaaa if contact.status_msg: status += u' — %s' % contact.status_msg item = QListWidgetItem() item.setText('<h2>%s</h2><font color="#%06X">%s</font><br /><i>%s</i>' % (contact.name, status_color, status, contact.backend)) item.setData(Qt.UserRole, contact) if contact.photos is NotLoaded: process = QtDo(self.weboob, lambda b, c: self.setPhoto(c, item)) process.do('fillobj', contact, ['photos'], backends=contact.backend) self.photo_processes[contact.id] = process elif len(contact.photos) > 0: if not self.setPhoto(contact, item): photo = contact.photos.values()[0] process = QtDo(self.weboob, lambda b, p: self.setPhoto(contact, item)) process.do('fillobj', photo, ['thumbnail_data'], backends=contact.backend) self.photo_processes[contact.id] = process for i in xrange(self.ui.contactList.count()): if self.ui.contactList.item(i).data(Qt.UserRole).toPyObject().status > contact.status: self.ui.contactList.insertItem(i, item) return self.ui.contactList.addItem(item)
def __init__(self, fieldNames): QDialog.__init__(self) self.ui = Ui_FieldChooser() self.ui.setupUi(self) self.items = [] self.ui.fieldList.clear() for fieldName in fieldNames: item = QListWidgetItem() item.setText(fieldName) item.setFlags(item.flags() | Qt.ItemIsUserCheckable) item.setCheckState(Qt.Unchecked) self.ui.fieldList.addItem(item) self.items.append(item) QObject.connect(self.ui.unselectAll, SIGNAL("clicked()"), self.unselectAll) QObject.connect(self.ui.selectAll, SIGNAL("clicked()"), self.selectAll)
def populate(self): """populate connections list from settings""" if self.mode == 0: self.settings.beginGroup('/MetaSearch/') keys = self.settings.childGroups() for key in keys: item = QListWidgetItem(self.listConnections) item.setText(key) self.settings.endGroup() else: # populate connections list from file doc = get_connections_from_file(self, self.filename) if doc is None: self.filename = None self.leFileName.clear() self.listConnections.clear() return for csw in doc.findall('csw'): item = QListWidgetItem(self.listConnections) item.setText(csw.attrib.get('name'))
def refreshListSlot(self, refreshChildren=True): seenPeers = set() self.ui.conversationsList.clear() for message in reversed(sharedData.messages): if not message.messagePeer in seenPeers: seenPeers.add(message.messagePeer) peerName = QListWidgetItem(self.ui.conversationsList) nameFont = QtGui.QFont() contentsFont = QtGui.QFont() nameFont.setPointSize(14) if not message.read: nameFont.setBold(True) contentsFont.setBold(True) peerName.setFont(nameFont) peerName.setText(message.messagePeer) messageContents = QListWidgetItem(self.ui.conversationsList) if message.isFile: contentLines = [message.fileName] elif not message.contents: contentLines = [""] else: contentLines = message.contents.splitlines(keepends=False) contentsFont.setPointSize(10) contents = contentLines[0] if len(contentLines) > 1: contents += "\n" + contentLines[1] if len(contents) > 20: contents = contents[:20] messageContents.setFont(contentsFont) messageContents.setText(contents) self.ui.conversationsList.addItem(peerName) self.ui.conversationsList.addItem(messageContents) separatorItem = QListWidgetItem(self.ui.conversationsList) separatorItem.setFlags(QtCore.Qt.NoItemFlags) self.ui.conversationsList.addItem(separatorItem) if refreshChildren: for peerName in self.activeConversationWindows: self.activeConversationWindows[peerName].refreshDisplay.emit() self.progressStop()
def showAttributes(self): """ List unique values of the selected field from source layer and show them in widget""" if not self.checkExistingVector(): return listAttr = [] self.dlg.valuesList.clear() lyr = myLayers[self.dlg.srcLayer.currentIndex()] for feature in lyr.getFeatures(): # attrs = feature.attributes() attr = feature.attributes()[self.dlg.fltField.currentIndex()] if attr not in listAttr: listAttr.append(attr) listAttr.sort() for value in listAttr: value = str(value) item = QListWidgetItem() item.setFlags(item.flags() | Qt.ItemIsUserCheckable) item.setCheckState(Qt.Unchecked) item.setText(value) self.dlg.valuesList.addItem(item)
def __init__(self, datalist, comment="", parent=None): QWidget.__init__(self, parent) layout = QHBoxLayout() self.contentsWidget = QListWidget() self.contentsWidget.setViewMode(QListView.ListMode) self.contentsWidget.setMovement(QListView.Static) self.contentsWidget.setMaximumWidth(128) self.pagesWidget = QStackedWidget() layout.addWidget(self.contentsWidget) layout.addWidget(self.pagesWidget) self.setLayout(layout) self.widgetlist = [] for elem in datalist: if len(elem) == 4: data, title, comment, icon = elem else: data, title, comment = elem icon = None if len(data[0]) == 3: widget = FormComboWidget(data, comment=comment, parent=self) else: widget = FormWidget(data, comment=comment, parent=self) #index = self.tabwidget.addTab(widget, title) #self.tabwidget.setTabToolTip(index, comment) self.pagesWidget.addWidget(widget) contentItem = QListWidgetItem(self.contentsWidget) if icon: contentItem.setIcon(icon) contentItem.setText(title) contentItem.setToolTip(comment) contentItem.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled) self.contentsWidget.addItem(contentItem) self.widgetlist.append(widget) self.contentsWidget.currentRowChanged.connect(self.changePage)
def update_field_values(self, field_name, limit=-1): active_layer = self.get_active_layer() if not active_layer: return data_provider = active_layer.dataProvider() self.setCursor(Qt.WaitCursor) field_ind = data_provider.fieldNameIndex(field_name) field_type = data_provider.fields()[field_ind].typeName() self.ui.lstValues.clear() values = data_provider.uniqueValues(field_ind, limit) for val in values: new_item = QListWidgetItem() if field_type in ('String', 'Date'): new_item.setText("'" + unicode(val) + "'") new_item.setData(Qt.UserRole, "u'" + unicode(val) + "'") else: #TODO: is too long!!! new_item.setText(unicode(val)) new_item.setData(Qt.UserRole, unicode(val)) self.ui.lstValues.addItem(new_item) self.unsetCursor()