def __init__(self, main): QListWidget.__init__(self) self.setStyleSheet(""" WebPluginList { color: black; background-color: white; selection-color: blue; border-radius: 10px; selection-background-color: #437DCD; } WebPluginList:Item { border-radius: 10px; border-style: solid; background-color: white; } WebPluginList:Item:hover { border-radius: 10px; border-style: solid; background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #FAFBFE, stop: 1 #6181E0); }""") self.connect(self, SIGNAL("itemSelectionChanged()"), self.openSelected) self._main = main settings = QSettings() i = 1 for recent_project in settings.value('recentProjects', []).toStringList(): if manage_files.folder_exists(str(recent_project)): item = QListWidgetItem(str(recent_project.split('/')[-1])) item.setToolTip(recent_project) item.setIcon(QIcon(resources.images['tree-app'])) self.addItem(item) i = i + 1 if i == 10: break
def __init__(self, workspace, documents): super(_UISaveFiles, self).__init__(workspace) self.cancelled = False from PyQt4 import uic # lazy import for better startup performance uic.loadUi(os.path.join(DATA_FILES_PATH, 'ui/SaveFiles.ui'), self) self.buttonBox.clicked.connect(self._onButtonClicked) self._itemToDocument = {} for document in documents: name = document.fileName() if name is None: name = 'untitled' item = QListWidgetItem(name, self.listWidget) if document.filePath() is not None: item.setToolTip(document.filePath()) item.setCheckState(Qt.Checked) self._itemToDocument[item] = document self.buttonBox.button(self.buttonBox.Discard).setText( self.tr('Close &without Saving')) self.buttonBox.button(self.buttonBox.Cancel).setText( self.tr('&Cancel Close')) self.buttonBox.button(self.buttonBox.Save).setText( self.tr('&Save checked')) self.buttonBox.button(QDialogButtonBox.Cancel).setFocus()
def CREATE_LISTS(self): # ------------------------------------------------------------------- try: self.ORDERS_LIST_SELL.clear() self.ORDERS_LIST_BUY.clear() for ID in self.ORDERS_FROM_DB: item = "" item += "#{:11} DEL".format(str(ID)) # order_id item += "{:7} DEL".format(self.ORDERS_FROM_DB[ID]["pair"]) # type item += "{:13} DEL".format( str("{:10,.6f}".format( self.ORDERS_FROM_DB[ID]["amount"])).strip()) # Amount item += "{:13} DEL".format( str("{:10,.6f}".format( self.ORDERS_FROM_DB[ID]["at_price"])).strip()) # at_price newItemToolTip = "Order ID: #" + str( ID) + " Created: " + time.ctime( self.ORDERS_FROM_DB[ID]["unix_time"]) if self.ORDERS_FROM_DB[ID]["type"] == "buy": ttl = self.ORDERS_FROM_DB[ID]["amount"] - ( self.ORDERS_FROM_DB[ID]["amount"] / 100 * self.PARENT.FEE) item += "{:13}".format( str("{:10,.6f}".format(ttl)).strip()) # ttl_usd newItem = QListWidgetItem( QIcon("./data/imgs/icon_filled_status_0.png"), item.replace("DEL", self._i_), self.ORDERS_LIST_BUY, 0) newItem.setToolTip(newItemToolTip) elif self.ORDERS_FROM_DB[ID]["type"] == "sell": ttl = self.ORDERS_FROM_DB[ID][ "at_price"] * self.ORDERS_FROM_DB[ID]["amount"] ttl -= (ttl / 100 * self.PARENT.FEE) item += "{:13}".format( str("{:10,.6f}".format(ttl)).strip()) # ttl_usd newItem = QListWidgetItem( QIcon("./data/imgs/icon_filled_status_0.png"), item.replace("DEL", self._i_), self.ORDERS_LIST_SELL, 0) newItem.setToolTip(newItemToolTip) except Exception as _exception: print("FRAME_ORDER.CREATE_LISTS: " + str(_exception))
def __init__(self, workspace, documents): super(_UISaveFiles, self).__init__(workspace) self.cancelled = False uic.loadUi(os.path.join(DATA_FILES_PATH, 'ui/SaveFiles.ui'), self) self.buttonBox.clicked.connect(self._onButtonClicked) self._itemToDocument = {} for document in documents: name = document.fileName() if name is None: name = 'untitled' item = QListWidgetItem( name, self.listWidget ) if document.filePath() is not None: item.setToolTip( document.filePath() ) item.setCheckState( Qt.Checked ) self._itemToDocument[item] = document # Retitle buttons, add first letter shortcuts for them. bb = self.buttonBox self._shortcut = ( self._firstLetterShortcut(bb.Discard, 'close &Without saving'), self._firstLetterShortcut(bb.Cancel, '&Cancel close'), self._firstLetterShortcut(bb.Save, '&Save checked') ) self.buttonBox.button(QDialogButtonBox.Cancel).setFocus()
def __init__(self, workspace, documents): super(_UISaveFiles, self).__init__(workspace) self.cancelled = False uic.loadUi(os.path.join(DATA_FILES_PATH, 'ui/SaveFiles.ui'), self) self.buttonBox.clicked.connect(self._onButtonClicked) self._itemToDocument = {} for document in documents: name = document.fileName() if name is None: name = 'untitled' item = QListWidgetItem( name, self.listWidget ) if document.filePath() is not None: item.setToolTip( document.filePath() ) item.setCheckState( Qt.Checked ) self._itemToDocument[item] = document self.buttonBox.button(self.buttonBox.Discard).setText(self.tr('close &Without saving')) self.buttonBox.button(self.buttonBox.Cancel).setText(self.tr('&Cancel close')) self.buttonBox.button(self.buttonBox.Save).setText(self.tr('&Save checked')) # Provide first-letter only shortcuts (not Alt+first letter which is # already present because of the & before letters) for each button. self.shortcut = [] for letter, button in (("W", self.buttonBox.Discard), ("C", self.buttonBox.Cancel), ("S", self.buttonBox.Save)): shortcut = QShortcut(QKeySequence(letter), self) shortcut.activated.connect(self.buttonBox.button(button).click) self.shortcut.append(shortcut) self.buttonBox.button(QDialogButtonBox.Cancel).setFocus()
def initializePage(self): super(InterfacePage, self).initializePage() exsits = [] for key in app.g_configurations.interfaces: if app.g_configurations.interfaces[key]: exsits.append(key) for interface in app.g_configurations.config['interfaces']: litem = QListWidgetItem(interface['name']) litem.setToolTip(interface['description']) litem.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled) if app.g_configurations.initialized: if interface['name'] in exsits: litem.setCheckState(Qt.Checked) else: litem.setCheckState(Qt.Unchecked) else: isdefault = False if app.g_configurations.component_type == "window": if interface['default'] & 2: isdefault = True else: if interface['default'] & 1: isdefault = True if isdefault: litem.setCheckState(Qt.Checked) else: litem.setCheckState(Qt.Unchecked) self.lw_interface.addItem(litem)
def initializePage(self): super(InterfacePage, self).initializePage() self.lw_interface.clear() exsits = [] for key in app.g_configurations.interfaces: if app.g_configurations.interfaces[key]: exsits.append(key) for interface in app.g_configurations.config['interfaces']: # name + description display = interface['name'] + ' (' + interface['description'] + ')' # print display # litem = QListWidgetItem(interface['name']) litem = QListWidgetItem(display) litem.setToolTip(interface['description']) litem.setFlags(Qt.ItemIsUserCheckable | Qt.ItemIsEnabled) isdefault = False isUseable = True if app.g_configurations.component_type == "window": if interface['flag_win'] == 3: #必须实现 isdefault = True litem.setFlags(Qt.ItemIsUserCheckable) elif interface['flag_win'] == 2: #可选并选中 isdefault = True elif interface['flag_win'] == 1: #可选并不选 isdefault = False else: #不需实现 isUseable = False else: if interface['flag_service'] == 3: isdefault = True litem.setFlags(Qt.ItemIsUserCheckable) elif interface['flag_service'] == 2: isdefault = True elif interface['flag_service'] == 1: isdefault = False else: isUseable = False if app.g_configurations.initialized: if interface['name'] in exsits: isdefault = True else: isdefault = False if isdefault: litem.setCheckState(Qt.Checked) else: litem.setCheckState(Qt.Unchecked) if isUseable: self.lw_interface.addItem(litem)
def __insertListViewItem(self, name, row = None): ob = self.store._tables[name].ob item = QListWidgetItem(QString(name)) doc = str(ob.__doc__) search = re.search(r'\n[ \t]*', doc) if search: doc = re.sub(search.group(), '\n', doc) item.setToolTip(QString(str(doc))) if row is None: self.listView.addItem(item) else: self.listView.insertItem(row, item)
def refresh_error_list(self, errors): self._outRefresh = False self.listErrors.clear() for lineno in errors: linenostr = "L%s\t" % str(lineno + 1) for data in errors[lineno]: item = QListWidgetItem(linenostr + data) item.setToolTip(linenostr + data) item.setData(Qt.UserRole, lineno) self.listErrors.addItem(item) self.errorsLabel.setText(self.tr("Static Errors: %s") % len(errors)) self._outRefresh = True
def refresh_pep8_list(self, pep8): self._outRefresh = False self.listPep8.clear() for lineno in pep8: linenostr = "L%s\t" % str(lineno + 1) for data in pep8[lineno]: item = QListWidgetItem(linenostr + data.split("\n")[0]) item.setToolTip(linenostr + data.split("\n")[0]) item.setData(Qt.UserRole, lineno) self.listPep8.addItem(item) self.pep8Label.setText(self.tr("PEP8 Errors: %s") % len(pep8)) self._outRefresh = True
def __insertListViewItem(self, name, row=None): ob = self.store._tables[name].ob item = QListWidgetItem(QString(name)) doc = str(ob.__doc__) search = re.search(r'\n[ \t]*', doc) if search: doc = re.sub(search.group(), '\n', doc) item.setToolTip(QString(str(doc))) if row is None: self.listView.addItem(item) else: self.listView.insertItem(row, item)
def refresh_pep8_list(self, pep8): self._outRefresh = False self.listPep8.clear() for lineno in pep8: linenostr = 'L%s\t' % str(lineno + 1) for data in pep8[lineno]: item = QListWidgetItem(linenostr + data.split('\n')[0]) item.setToolTip(linenostr + data.split('\n')[0]) item.setData(Qt.UserRole, lineno) self.listPep8.addItem(item) self.pep8Label.setText(self.tr("PEP8 Errors: %s") % len(pep8)) self._outRefresh = True
def refresh_error_list(self, errors): self._outRefresh = False self.listErrors.clear() for lineno in errors: linenostr = 'L%s\t' % str(lineno + 1) for data in errors[lineno]: item = QListWidgetItem(linenostr + data) item.setToolTip(linenostr + data) item.setData(Qt.UserRole, lineno) self.listErrors.addItem(item) self.errorsLabel.setText(self.tr("Static Errors: %s") % len(errors)) self._outRefresh = True
def create_plugin_view(self, showAll = True): for p_name, p_info in self.p_info.iteritems(): item = QListWidgetItem(p_info["name"], self.ui.pluginView) item.setToolTip(p_name) item.setCheckState(Qt.Checked if p_info["activated"] else Qt.Unchecked) if p_info["forced"]: item.setForeground(Qt.gray) flags = item.flags() flags &= ~Qt.ItemIsUserCheckable item.setFlags(flags) item.setHidden(not showAll and p_info["forced"]) self.ui.pluginView.addItem(item)
def refresh_lists(self, migration): """Refresh the list of code suggestions.""" self._migration, base_lineno = migration, -1 self.current_list.clear() for lineno in sorted(migration.keys()): linenostr = 'L{line_number}\n'.format(line_number=str(lineno + 1)) data = migration[lineno] lines = data[0].split('\n') if base_lineno == data[1]: continue base_lineno = data[1] message = '' for line in lines: if line.startswith('-'): message += '{line_to_load}\n'.format(line_to_load=line) item = QListWidgetItem(linenostr + message) item.setToolTip(linenostr + message) item.setData(Qt.UserRole, lineno) self.current_list.addItem(item)
def listPointFields(self): if self.inPoint.currentText() == "": pass inPnts = ftools_utils.getVectorLayerByName(self.inPoint.currentText()) if inPnts: pointFieldList = ftools_utils.getFieldList(inPnts) self.attributeList.clear() for field in pointFieldList: if field.type() in [QVariant.Int, QVariant.Double, QVariant.LongLong, QVariant.UInt, QVariant.ULongLong]: if field.type() == QVariant.Double: global typeDouble item = QListWidgetItem(unicode(field.name()), None, typeDouble) else: global typeInt item = QListWidgetItem(unicode(field.name()), None, typeInt) item.setToolTip("Attribute <%s> of type %s" % (field.name(), field.typeName())) self.attributeList.addItem(item)
def listPointFields(self): if self.inPoint.currentText() == "": pass inPnts = ftools_utils.getVectorLayerByName(self.inPoint.currentText()) if inPnts: pointFieldList = ftools_utils.getFieldList(inPnts) self.attributeList.clear() for field in pointFieldList: if field.type() == QVariant.Int or field.type() ==QVariant.Double: if field.type() == QVariant.Int: global typeInt item = QListWidgetItem(unicode(field.name()), None, typeInt) else: global typeDouble item = QListWidgetItem(unicode(field.name()), None, typeDouble) item.setToolTip("Attribute <%s> of type %s" % (field.name(), field.typeName())) self.attributeList.addItem(item)
def refresh_lists(self, migration): self._migration = migration self.current_list.clear() base_lineno = -1 for lineno in sorted(migration.migration_data.keys()): linenostr = 'L%s\n' % str(lineno + 1) data = migration.migration_data[lineno] lines = data[0].split('\n') if base_lineno == data[1]: continue base_lineno = data[1] message = '' for line in lines: if line.startswith('-'): message += '%s\n' % line item = QListWidgetItem(linenostr + message) item.setToolTip(linenostr + message) item.setData(Qt.UserRole, lineno) self.current_list.addItem(item)
def createGroupItem(self, name, content = None): if not content: group = self.iface.getGroup(name) localName, icon_path = unicode(group.localName), group.icon package_count = len(self.state.groupPackages(name)) if package_count <= 0: return else: localName, icon_path = content[0], content[1] package_count = content[2] icon = QIcon(KIconLoader().loadIcon(icon_path, KIconLoader.NoGroup, 22)) if icon.isNull(): icon = self.defaultIcon text = "%s (%d)" % (localName, package_count) item = QListWidgetItem(icon, text, self) item.setToolTip(localName) item.setData(Qt.UserRole, QVariant(unicode(name))) item.setSizeHint(QSize(0, KIconLoader.SizeMedium)) self._list[name] = item
def __init__(self, workspace, documents): super(_UISaveFiles, self).__init__(workspace) self.cancelled = False uic.loadUi(os.path.join(DATA_FILES_PATH, 'ui/SaveFiles.ui'), self) self.buttonBox.clicked.connect(self._onButtonClicked) self._itemToDocument = {} for document in documents: name = document.fileName() if name is None: name = 'untitled' item = QListWidgetItem( name, self.listWidget ) if document.filePath() is not None: item.setToolTip( document.filePath() ) item.setCheckState( Qt.Checked ) self._itemToDocument[item] = document self.buttonBox.button(self.buttonBox.Discard).setText(self.tr('Close &without Saving')) self.buttonBox.button(self.buttonBox.Cancel).setText(self.tr('&Cancel Close')) self.buttonBox.button(self.buttonBox.Save).setText(self.tr('&Save checked')) self.buttonBox.button(QDialogButtonBox.Cancel).setFocus()
def refresh_lists(self, errors, pep8): self._outRefresh = False self.listErrors.clear() self.listPep8.clear() for lineno in errors.errorsSummary: linenostr = "L%s\t" % str(lineno) for data in errors.errorsSummary[lineno]: item = QListWidgetItem(linenostr + data) item.setToolTip(linenostr + data) item.setData(Qt.UserRole, lineno) self.listErrors.addItem(item) self.errorsLabel.setText(self.tr(ERRORS_TEXT).arg(len(errors.errorsSummary))) for lineno in pep8.pep8checks: linenostr = "L%s\t" % str(lineno) for data in pep8.pep8checks[lineno]: item = QListWidgetItem(linenostr + data.split("\n")[0]) item.setToolTip(linenostr + data.split("\n")[0]) item.setData(Qt.UserRole, lineno) self.listPep8.addItem(item) self.pep8Label.setText(self.tr(PEP8_TEXT).arg(len(pep8.pep8checks))) self._outRefresh = True
def refresh_lists(self, errors, pep8): self._outRefresh = False self.listErrors.clear() self.listPep8.clear() for lineno in errors.errorsSummary: linenostr = 'L%s\t' % str(lineno + 1) for data in errors.errorsSummary[lineno]: item = QListWidgetItem(linenostr + data) item.setToolTip(linenostr + data) item.setData(Qt.UserRole, lineno) self.listErrors.addItem(item) self.errorsLabel.setText( self.tr(ERRORS_TEXT).arg(len(errors.errorsSummary))) for lineno in pep8.pep8checks: linenostr = 'L%s\t' % str(lineno + 1) for data in pep8.pep8checks[lineno]: item = QListWidgetItem(linenostr + data.split('\n')[0]) item.setToolTip(linenostr + data.split('\n')[0]) item.setData(Qt.UserRole, lineno) self.listPep8.addItem(item) self.pep8Label.setText(self.tr(PEP8_TEXT).arg(len(pep8.pep8checks))) self._outRefresh = True
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 CREATE_LISTS(self): # ------------------------------------------------------------------- try: self.ORDERS_LIST_SELL.clear(); self.ORDERS_LIST_BUY.clear(); for ID in self.ORDERS_FROM_DB: item = ""; item += "#{:11} DEL".format( str(ID) ); # order_id item += "{:7} DEL".format( self.ORDERS_FROM_DB[ID]["pair"] ); # type item += "{:13} DEL".format( str("{:10,.6f}".format( self.ORDERS_FROM_DB[ID]["amount"] )).strip() ); # Amount item += "{:13} DEL".format( str("{:10,.6f}".format( self.ORDERS_FROM_DB[ID]["at_price"] )).strip() ); # at_price newItemToolTip = "Order ID: #"+str(ID)+" Created: "+time.ctime( self.ORDERS_FROM_DB[ID]["unix_time"] ); if self.ORDERS_FROM_DB[ID]["type"] == "buy": ttl = self.ORDERS_FROM_DB[ID]["amount"] - (self.ORDERS_FROM_DB[ID]["amount"]/100*self.PARENT.FEE); item += "{:13}".format( str("{:10,.6f}".format( ttl )).strip() ); # ttl_usd newItem = QListWidgetItem( QIcon("./data/imgs/icon_filled_status_0.png"), item.replace("DEL", self._i_), self.ORDERS_LIST_BUY, 0); newItem.setToolTip(newItemToolTip); elif self.ORDERS_FROM_DB[ID]["type"] == "sell": ttl = self.ORDERS_FROM_DB[ID]["at_price"]*self.ORDERS_FROM_DB[ID]["amount"]; ttl -= (ttl/100*self.PARENT.FEE); item += "{:13}".format( str("{:10,.6f}".format( ttl )).strip() ); # ttl_usd newItem = QListWidgetItem( QIcon("./data/imgs/icon_filled_status_0.png"), item.replace("DEL", self._i_), self.ORDERS_LIST_SELL, 0); newItem.setToolTip(newItemToolTip); except Exception as _exception: print("FRAME_ORDER.CREATE_LISTS: "+str(_exception));
def refresh_lists(self, errors, pep8): self._outRefresh = False self.listErrors.clear() self.listPep8.clear() for lineno in errors.errorsSummary: linenostr = 'L%s\t' % str(lineno + 1) for data in errors.errorsSummary[lineno]: item = QListWidgetItem(linenostr + data) item.setToolTip(linenostr + data) item.setData(Qt.UserRole, lineno) self.listErrors.addItem(item) self.errorsLabel.setText(self.tr("Static Errors: %s") % len(errors.errorsSummary)) for lineno in pep8.pep8checks: linenostr = 'L%s\t' % str(lineno + 1) for data in pep8.pep8checks[lineno]: item = QListWidgetItem(linenostr + data.split('\n')[0]) item.setToolTip(linenostr + data.split('\n')[0]) item.setData(Qt.UserRole, lineno) self.listPep8.addItem(item) self.pep8Label.setText(self.tr("PEP8 Errors: %s") % len(pep8.pep8checks)) self._outRefresh = True
def addFileUrl(self, url, reason=None): if url not in self.urls: mime = KMimeType.findByUrl(url)[0] path = url.url() filename = url.fileName() item = QListWidgetItem() if self.project and path.startswith(self.project): path = path[len(self.project):] item.setWhatsThis(path) item.setText("<b>%s</b>: <i>%s</i>" % (filename, path)) else: item.setWhatsThis(filename) item.setText("<b>%s</b>" % filename) if reason: item.setToolTip(reason) item.setIcon(QIcon(self.iconLoader.loadMimeTypeIcon(mime.iconName(), KIconLoader.Small))) self.listUrl.addItem(item) if url.fileName().find(self.txtFilter.text()) < 0: self.listUrl.setItemHidden(item, True) self.urls.append(url) self.refreshFilter()
def CREATE_LISTS(self): # ------------------------------------------------------------------- CURR_PAIR = str(self.PAIR_COMBO.currentText()).lower() # ------------------------------------------------------------------- self.BOOK = { "bought": [], "sold": [] } self.BOUGHT_TTL = 0 self.BOUGHT_TTL_PLUS_FEE = 0 self.SOLD_TTL = 0 self.SOLD_TTL_PLUS_FEE = 0 # ------------------------------------------------------------------- # Bought List # id, order_id, unix_time, action, filled, amount, at_price, fee, ttl, grand_ttl #self.PARENT.DB.EXEC( "HISTORY_DB", "DELETE FROM "+CURR_PAIR+" WHERE id>7" ); DATA = self.PARENT.DB.FETCH("HISTORY_DB", "SELECT * FROM " + CURR_PAIR + " WHERE action='bought' ORDER BY id DESC", ALL=True) self.BOOKKEEPING_BOUGHT_WIDGET.clear() for data in DATA: # --------------------------------------------------------------- # In-Memory DATA self.BOOK[data[3]].append({ "id": data[0], "order_id": data[1], "unix_time": data[2], "action": data[3], "filled": data[4], "amount": data[5], "at_price": data[6], "fee": data[7], "ttl": data[8], "grand_ttl": data[9] }) if self.CALCULATE_ONLY_FILLED: if data[4] == 1: self.BOUGHT_TTL += data[8] self.BOUGHT_TTL_PLUS_FEE += data[9] else: self.BOUGHT_TTL += data[8] self.BOUGHT_TTL_PLUS_FEE += data[9] # --------------------------------------------------------------- # Formatinf data to Display in BookKeeping Wodget item = "" item += "DEL{:6} DEL".format(str(data[0])) # id #item += "{:11} DEL".format( data[1] ); # order_id #item += "{:11} DEL".format( data[2] ); # unix_time #item += "{:11} DEL".format( data[3] ); # action #item += "{:11} DEL".format( data[4] ); # filed item += "{:13} DEL".format( str("{:10,.6f}".format(data[5])).strip()) # Amount item += "{:13} DEL".format( str("{:10,.6f}".format(data[6])).strip()) # at_price #item += "{:13} DEL".format( str("{:10,.6f}".format( data[7] )).strip() ); # fee item += "{:13} DEL".format( str("{:10,.6f}".format(data[8])).strip()) # ttl item += "{:13}".format(str("{:10,.6f}".format(data[9])).strip()) # grand_ttl #self.BOOKKEEPING_BOUGHT_WIDGET.addItem( item.replace("DEL", self._i_) ); newItem = QListWidgetItem( QIcon("./data/imgs/icon_filled_status_" + str(data[4]) + ".png"), item.replace("DEL", self._i_), self.BOOKKEEPING_BOUGHT_WIDGET, 0) newItemToolTip = "Order ID: #" + str( data[1]) + " Created: " + time.ctime(int(data[2])) newItem.setToolTip(newItemToolTip) # --------------------------------------------------------------- # / for # ------------------------------------------------------------------- self.BOUGHT_TTL_LABLE.setText( str("{:10,.6f}".format(self.BOUGHT_TTL).strip())) self.BOUGHT_TTL_PLUS_FEE_LABLE.setText( str("{:10,.6f}".format(self.BOUGHT_TTL_PLUS_FEE).strip())) # ------------------------------------------------------------------- # Sold List # id, order_id, unix_time, action, filled, amount, at_price, fee, ttl, grand_ttl DATA = self.PARENT.DB.FETCH("HISTORY_DB", "SELECT * FROM " + CURR_PAIR + " WHERE action='sold' ORDER BY id DESC", ALL=True) self.BOOKKEEPING_SOLD_WIDGET.clear() for data in DATA: # --------------------------------------------------------------- # In-Memory DATA self.BOOK[data[3]].append({ "id": data[0], "order_id": data[1], "unix_time": data[2], "action": data[3], "filled": data[4], "amount": data[5], "at_price": data[6], "fee": data[7], "ttl": data[8], "grand_ttl": data[9] }) if self.CALCULATE_ONLY_FILLED: if data[4] == 1: self.SOLD_TTL += data[8] self.SOLD_TTL_PLUS_FEE += data[9] else: self.SOLD_TTL += data[8] self.SOLD_TTL_PLUS_FEE += data[9] # --------------------------------------------------------------- # Formatinf data to Display in BookKeeping Wodget item = "" item += "DEL{:6} DEL".format(str(data[0])) # id #item += "{:11} DEL".format( data[1] ); # order_id #item += "{:11} DEL".format( data[2] ); # unix_time #item += "{:11} DEL".format( data[3] ); # action #item += "{:11} DEL".format( data[4] ); # filed item += "{:13} DEL".format( str("{:10,.6f}".format(data[5])).strip()) # Amount item += "{:13} DEL".format( str("{:10,.6f}".format(data[6])).strip()) # at_price #item += "{:13} DEL".format( str("{:10,.6f}".format( data[7] )).strip() ); # fee item += "{:13} DEL".format( str("{:10,.6f}".format(data[8])).strip()) # ttl item += "{:13}".format(str("{:10,.6f}".format(data[9])).strip()) # grand_ttl #self.BOOKKEEPING_SOLD_WIDGET.addItem( item.replace("DEL", self._i_) ); newItem = QListWidgetItem( QIcon("./data/imgs/icon_filled_status_" + str(data[4]) + ".png"), item.replace("DEL", self._i_), self.BOOKKEEPING_SOLD_WIDGET, 0) newItemToolTip = "Order ID: #" + str( data[1]) + " Created: " + time.ctime(int(data[2])) newItem.setToolTip(newItemToolTip) # --------------------------------------------------------------- # / for # ------------------------------------------------------------------- self.SOLD_TTL_LABLE.setText( str("{:10,.6f}".format(self.SOLD_TTL).strip())) self.SOLD_TTL_PLUS_FEE_LABLE.setText( str("{:10,.6f}".format(self.SOLD_TTL_PLUS_FEE).strip()))
class main_window(QMainWindow): def __init__(self): super(main_window, self).__init__() self.setWindowTitle('Minecraft Backup Manager') self.setGeometry(0, 0, 700, 520) self.setMinimumSize(700, 520) self.setMaximumSize(700, 520) center_widget(self) #Header self.header_label = QLabel(self) self.header_label.resize(700, 170) self.header_label.setPixmap(QPixmap(IMAGES['header'])) #menu_about self.menu_about = QMenu(self) self.menu_about.addAction('About Minecraft Backup Manager', lambda: self.open_about_minebackup()) self.menu_about.addAction('About Qt', lambda: msg_about_qt(self)) #btn_config self.btn_config = QPushButton(QIcon(IMAGES['config_icon']), '', self) self.btn_config.setGeometry(QRect(7, 7, 32, 32)) self.btn_config.setToolTip('Configuration') #btn_about self.btn_about = QPushButton('About', self) self.btn_about.setGeometry(QRect(45, 7, 80, 32)) self.btn_about.setMenu(self.menu_about) # list_backup self.list_backup = QListWidget(self) self.list_backup.setGeometry(QRect(20, 190, 450, 310)) # btn_new_backup self.btn_new_backup = QPushButton('New backup', self) self.btn_new_backup.setGeometry(QRect(485, 190, 200, 30)) # btn_restore_backup self.btn_restore_backup = QPushButton('Restore backup', self) self.btn_restore_backup.setGeometry(QRect(485, 260, 200, 30)) self.btn_restore_backup.setEnabled(False) # btn_remove_backup self.btn_remove_backup = QPushButton('Remove Backup', self) self.btn_remove_backup.setGeometry(QRect(485, 300, 200, 30)) self.btn_remove_backup.setEnabled(False) # CONNECT SIGNALS self.connect(self.btn_config, SIGNAL('clicked()'), self.open_config) self.connect(self.btn_new_backup, SIGNAL('clicked()'), self.open_new_backup) self.connect(self.btn_remove_backup, SIGNAL('clicked()'), self.remove_backup) self.connect(self.btn_restore_backup, SIGNAL('clicked()'), self.restore_backup) self.connect(self.list_backup, SIGNAL('itemClicked(QListWidgetItem *)'), self.enabled_buttons) self.load_backup_list() def load_backup_list(self): self.list_backup.clear() self.backup_list = load_backup_list() if self.backup_list is not False: for backup in self.backup_list.values(): if path.exists(backup['path']): self.list_item = QListWidgetItem(backup['name']) self.list_item.setToolTip('<b>Directory:</b> %s' % backup['path']) self.list_backup.addItem(self.list_item) else: msg_backup_folder_not_exists(self, backup['name']) remove_backup_name(backup['name']) def remove_backup(self): self.remove_question = msg_remove_backup(self) if self.remove_question is not False: self.backup_name = self.list_backup.currentItem().text() remove_backup(unicode(self.backup_name)) self.load_backup_list() def restore_backup(self): self.restore_question = msg_restore_backup(self) if self.restore_question is not False: self.backup_name = self.list_backup.currentItem().text() restore_backup(unicode(self.backup_name)) msg_restore_finishied(self, self.backup_name) def enabled_buttons(self): self.btn_remove_backup.setEnabled(True) self.btn_restore_backup.setEnabled(True) def open_config(self): self.configuration_window = config_window.config_window(self) self.configuration_window.show() def open_about_minebackup(self): self.about_minebackup = about_minebackup.about_minebackup(self) self.about_minebackup.show() def open_new_backup(self): self.new_backup_window = new_backup_window.new_backup_window(self) self.new_backup_window.show() # CONNECT SIGNALS self.connect(self.new_backup_window, SIGNAL('close()'), self.load_backup_list)
def make_list_widget(self, item): n = item.name if item.exists else item.name + _(' (not on any book)') w = QListWidgetItem(item.icon, n) w.setData(Qt.UserRole, item.index) w.setToolTip(_('Category lookup name: ') + item.label) return w
def addItem(version, path, icon, title, tooltip): item = QListWidgetItem(self.lilypond) item.setIcon(KIcon(icon)) item.setText("{0}\n{1}: {2}".format(title, i18n("Command"), path)) item.setToolTip(tooltip) version or item.setFlags(Qt.NoItemFlags)
QPushButton.__init__("text") if __name__ == "__main__": app = QApplication(sys.argv) # #********************* 1. QListWidget ******************/ listWidget = QListWidget() # 一种添加项目的简便方法 QListWidgetItem("a", listWidget) # 添加项目的另一种方法,这样还可以进行各种设置 listWidgetItem = QListWidgetItem() listWidgetItem.setText("b") listWidgetItem.setIcon(QIcon("./yafeilinux.png")) listWidgetItem.setToolTip("this is b!") listWidget.insertItem(1, listWidgetItem) # 设置排序为倒序 listWidget.sortItems(Qt.DescendingOrder) # 显示列表部件 listWidget.show() #********************** 2. QTreeWidget *******************/ treeWidget = QTreeWidget() # 必须设置列数 treeWidget.setColumnCount(2) # 设置标头 headers = QStringList() headers.append("name")