class MainWindow(QtGui.QMainWindow): def __init__(self): super(MainWindow, self).__init__() self.setWindowTitle("supervisor Interface") self.__mutex__ = QtCore.QMutex() self.__log__() self.__setting__() self.createActions() self.createMenus() self.__rpc__ = None self.centralWidget = CentralWidget(None, (self.settings, self.__mutex__) ) self.statusBar().showMessage("Ready") def __setting__(self): print "get setting" #self.settings = QSettings(QSettings.IniFormat,QSettings.SystemScope, '__ILLUSTRABOT2OO', '__settings') self.settings = QSettings(QSettings.IniFormat,QSettings.UserScope, '__ILLUSTRABOT2OO', '__settings') self.settings.setFallbacksEnabled(False) # File only, not registry or or. self.__mutex__.lock() self.settings.beginGroup("Main") self.resize(self.settings.value("size", QtCore.QSize(1024, 850))) self.move(self.settings.value("pos", QtCore.QPoint(50, 50))) self.ip = self.settings.value("ip", r'172.25.195.58') print "previous IP=",self.ip self.settings.endGroup() self.__mutex__.unlock() def __log__(self): self.windowlog = {} def rpc(self): # Try to connect to a board print self.ip text, ok = QtGui.QInputDialog.getText(self, self.tr("Board IP"), self.tr("IP address:"), QtGui.QLineEdit.Normal, self.ip) if ok and not (len(text) ==0): try: self.__rpc__ = xmlrpclib.ServerProxy("http://%s:8000"%str(text)) self.statusBar().showMessage("Connected...") self.centralWidget.setrpc(self.__rpc__) self.__get_level__() self.setCentralWidget(self.centralWidget) self.ip= str(text) except Exception,e: self.statusBar().showMessage("Failed to connect to %s"%text) sys.stderr.write( str(e)) traceback.print_exc(file=sys.stderr) pass return
def save_ini(self): settings = QSettings('config.ini', QSettings.IniFormat) settings.beginGroup(self.__class__.__name__) settings.setValue('Geometry', self.saveGeometry()) settings.setValue('splitter', self.splitter.saveState()) settings.endGroup()
def _tryToFillPlayerPath(self, playerpath, playerpathlist): settings = QSettings("Syncplay", "PlayerList") settings.beginGroup("PlayerList") savedPlayers = settings.value("PlayerList", []) if(not isinstance(savedPlayers, list)): savedPlayers = [] playerpathlist = list(set(os.path.normcase(os.path.normpath(path)) for path in set(playerpathlist + savedPlayers))) settings.endGroup() foundpath = "" if playerpath != None and playerpath != "": if not os.path.isfile(playerpath): expandedpath = PlayerFactory().getExpandedPlayerPathByPath(playerpath) if expandedpath != None and os.path.isfile(expandedpath): playerpath = expandedpath if os.path.isfile(playerpath): foundpath = playerpath self.executablepathCombobox.addItem(foundpath) for path in playerpathlist: if(os.path.isfile(path) and os.path.normcase(os.path.normpath(path)) != os.path.normcase(os.path.normpath(foundpath))): self.executablepathCombobox.addItem(path) if foundpath == "": foundpath = path if foundpath != "": settings.beginGroup("PlayerList") playerpathlist.append(os.path.normcase(os.path.normpath(foundpath))) settings.setValue("PlayerList", list(set(os.path.normcase(os.path.normpath(path)) for path in set(playerpathlist)))) settings.endGroup() return(foundpath)
def load_ini(self): settings = QSettings('config.ini', QSettings.IniFormat) settings.beginGroup(self.__class__.__name__) self.restoreGeometry(settings.value('Geometry')) self.splitter.restoreState(settings.value('splitter')) settings.endGroup()
class MainWindow(QtGui.QMainWindow): def __init__(self): super(MainWindow, self).__init__() self.setWindowTitle("supervisor Interface") self.__mutex__ = QtCore.QMutex() self.__log__() self.__setting__() self.createActions() self.createMenus() self.__rpc__ = None self.centralWidget = CentralWidget(None, (self.settings, self.__mutex__)) self.statusBar().showMessage("Ready") def __setting__(self): print "get setting" self.settings = QSettings(QSettings.IniFormat, QSettings.SystemScope, '__SUPERVISOR', '__settings') self.settings.setFallbacksEnabled( False) # File only, not registry or or. self.__mutex__.lock() self.settings.beginGroup("Main") self.resize(self.settings.value("size", QtCore.QSize(1024, 850))) self.move(self.settings.value("pos", QtCore.QPoint(50, 50))) self.ip = self.settings.value("ip", r'172.25.195.58') print "previous IP=", self.ip self.settings.endGroup() self.__mutex__.unlock() def __log__(self): self.windowlog = {} def rpc(self): # Try to connect to a board print self.ip text, ok = QtGui.QInputDialog.getText(self, self.tr("Board IP"), self.tr("IP address:"), QtGui.QLineEdit.Normal, self.ip) if ok and not (len(text) == 0): try: self.__rpc__ = xmlrpclib.ServerProxy("http://%s:8000" % str(text)) self.statusBar().showMessage("Connected...") self.centralWidget.setrpc(self.__rpc__) self.__get_level__() self.setCentralWidget(self.centralWidget) self.ip = str(text) except Exception, e: self.statusBar().showMessage("Failed to connect to %s" % text) sys.stderr.write(str(e)) traceback.print_exc(file=sys.stderr) pass return
def _writeSettings(self): 'Write settings to the configuration' settings = QSettings() settings.beginGroup('MainWindow') settings.setValue('pos', self.pos()) settings.setValue('size', self.size()) settings.setValue('max', self.isMaximized()) settings.setValue('file', self._logbookPath) settings.endGroup()
def getMoreState(self): settings = QSettings("Syncplay", "MoreSettings") settings.beginGroup("MoreSettings") morestate = unicode.lower(unicode(settings.value("ShowMoreSettings", "false"))) settings.endGroup() if morestate == "true": return(True) else: return(False)
def getLastPrestratumImportDir(self): settings = QSettings() settings.beginGroup("DefaultDirs") dir = str(settings.value("PrestratumImportDir")) settings.endGroup() if dir: return dir else: return ""
def write_setting(name, value): ''' Write a Name/Value Setting Writes a name/value setting to the Qt settings store. Note that QSettings stores all settings as strings, so the passed value will be converted to a string using the python str() function prior to being stored. ''' s = QSettings() s.beginGroup('Settings') s.setValue(name, value) s.endGroup()
def saveSettings(self): settings = QSettings("Syncplay", "MainWindow") settings.beginGroup("MainWindow") settings.setValue("size", self.size()) settings.setValue("pos", self.pos()) settings.setValue("showPlaybackButtons", self.playbackAction.isChecked()) settings.setValue("showAutoPlayButton", self.autoplayAction.isChecked()) settings.setValue("autoplayChecked", self.autoplayPushButton.isChecked()) settings.setValue("autoplayMinUsers", self.autoplayThresholdSpinbox.value()) settings.endGroup() settings = QSettings("Syncplay", "Interface") settings.beginGroup("Update") settings.setValue("lastChecked", self.lastCheckedForUpdates) settings.endGroup()
def clearGUIData(self, leaveMore=False): settings = QSettings("Syncplay", "PlayerList") settings.clear() settings = QSettings("Syncplay", "MediaBrowseDialog") settings.clear() settings = QSettings("Syncplay", "MainWindow") settings.clear() settings = QSettings("Syncplay", "Interface") settings.beginGroup("Update") settings.setValue("lastChecked", None) settings.endGroup() if not leaveMore: settings = QSettings("Syncplay", "MoreSettings") settings.clear() self.datacleared = True
def _writeWindowAttributeSettings(self): ''' Save window attributes as settings. Called when window moved, resized, or closed. ''' qsettings = QSettings() qsettings.beginGroup( "mainWindow" ) qsettings.setValue( "geometry", self.saveGeometry() ) qsettings.setValue( "saveState", self.saveState() ) qsettings.setValue( "maximized", self.isMaximized() ) if not self.isMaximized() == True : qsettings.setValue( "pos", self.pos() ) qsettings.setValue( "size", self.size() ) qsettings.endGroup()
def _writeWindowAttributeSettings(mainWindow): ''' Save window attributes as settings. Called when window moved, resized, or closed. ''' qsettings = QSettings("settings.ini", QSettings.IniFormat) qsettings.beginGroup("mainWindow") qsettings.setValue("geometry", mainWindow.saveGeometry()) qsettings.setValue("saveState", mainWindow.saveState()) qsettings.setValue("pos", mainWindow.pos()) qsettings.setValue("size", mainWindow.size()) qsettings.endGroup()
def _writeWindowAttributeSettings(self): ''' Save window attributes as settings. Called when window moved, resized, or closed. ''' qsettings = QSettings() qsettings.beginGroup("mainWindow") qsettings.setValue("geometry", self.saveGeometry()) qsettings.setValue("saveState", self.saveState()) qsettings.setValue("maximized", self.isMaximized()) if not self.isMaximized() == True: qsettings.setValue("pos", self.pos()) qsettings.setValue("size", self.size()) qsettings.endGroup()
def read_setting(name, default=None): ''' Read a Name/Value Setting Reads a name/value setting from the Qt settings store. If the value does not exist, the default parameter is returned. Note that QSettings stores all settings as strings, so the caller is responsible for casting the returned value into the proper Python type. ''' s = QSettings() s.beginGroup('Settings') v = s.value(name) s.endGroup() if v is None: return default return v
def _readAndApplyWindowAttributeSettings(mainWindow): ''' Read window attributes from settings, using current attributes as defaults (if settings not exist.) Called at QMainWindow initialization, before show(). ''' qsettings = QSettings("settings.ini", QSettings.IniFormat) qsettings.beginGroup("mainWindow") # No need for toPoint, etc. : PySide converts types mainWindow.restoreGeometry(qsettings.value("geometry", mainWindow.saveGeometry())) mainWindow.restoreState(qsettings.value("saveState", mainWindow.saveState())) mainWindow.move(qsettings.value("pos", mainWindow.pos())) mainWindow.resize(qsettings.value("size", mainWindow.size())) qsettings.endGroup()
def _readAndApplyWindowAttributeSettings(self): ''' Read window attributes from settings, using current attributes as defaults (if settings not exist.) Called at QMainWindow initialization, before show(). ''' qsettings = QSettings() qsettings.beginGroup( "mainWindow" ) # No need for toPoint, etc. : PySide converts types self.restoreGeometry(qsettings.value( "geometry", self.saveGeometry())) self.restoreState(qsettings.value( "saveState", self.saveState())) self.move(qsettings.value( "pos", self.pos())) self.resize(qsettings.value( "size", self.size())) if qsettings.value( "maximized", self.isMaximized()) : self.showMaximized() qsettings.endGroup()
def _readAndApplyWindowAttributeSettings(self): ''' Read window attributes from settings, using current attributes as defaults (if settings not exist.) Called at QMainWindow initialization, before show(). ''' qsettings = QSettings() qsettings.beginGroup("mainWindow") # No need for toPoint, etc. : PySide converts types self.restoreGeometry(qsettings.value("geometry", self.saveGeometry())) self.restoreState(qsettings.value("saveState", self.saveState())) self.move(qsettings.value("pos", self.pos())) self.resize(qsettings.value("size", self.size())) if qsettings.value("maximized", self.isMaximized()): self.showMaximized() qsettings.endGroup()
def loadSettings(self): settings = QSettings("Syncplay", "MainWindow") settings.beginGroup("MainWindow") self.resize(settings.value("size", QSize(700, 500))) self.move(settings.value("pos", QPoint(200, 200))) if settings.value("showPlaybackButtons", "false") == "true": self.playbackAction.setChecked(True) self.updatePlaybackFrameVisibility() if settings.value("showAutoPlayButton", "false") == "true": self.autoplayAction.setChecked(True) self.updateAutoplayVisibility() if settings.value("autoplayChecked", "false") == "true": self.updateAutoPlayState(True) self.autoplayPushButton.setChecked(True) self.autoplayThresholdSpinbox.blockSignals(True) self.autoplayThresholdSpinbox.setValue(int(settings.value("autoplayMinUsers", 2))) self.autoplayThresholdSpinbox.blockSignals(False) settings.endGroup() settings = QSettings("Syncplay", "Interface") settings.beginGroup("Update") self.lastCheckedForUpdates = settings.value("lastChecked", None)
def _readSettings(self): 'Read main window settings from the configuration' settings = QSettings() settings.beginGroup('MainWindow') max = settings.value('max') size = settings.value('size') pos = settings.value('pos') file = settings.value('file') settings.endGroup() # Size and Position the Main Window if size is not None: self.resize(size) if pos is not None: self.move(pos) # HAX because QVariant is not exposed in PySide and the default # coercion to string is just stupid if max is not None and (max == 'true'): self.showMaximized() # Open the Logbook if file is not None: self._openLogbook(file)
def loadSettings(self): settings = QSettings("Syncplay", "MainWindow") settings.beginGroup("MainWindow") self.resize(settings.value("size", QSize(700, 500))) self.move(settings.value("pos", QPoint(200, 200))) settings.endGroup()
def saveSettings(self): settings = QSettings("Syncplay", "MainWindow") settings.beginGroup("MainWindow") settings.setValue("size", self.size()) settings.setValue("pos", self.pos()) settings.endGroup()
def saveMediaBrowseSettings(self): settings = QSettings("Syncplay", "MediaBrowseDialog") settings.beginGroup("MediaBrowseDialog") settings.setValue("mediadir", self.mediadirectory) settings.endGroup()
def loadMediaBrowseSettings(self): settings = QSettings("Syncplay", "MediaBrowseDialog") settings.beginGroup("MediaBrowseDialog") self.mediadirectory = settings.value("mediadir", "") settings.endGroup()
class AddPresetDialog(QDialog): def __init__(self, parent=None): super(AddPresetDialog, self).__init__(parent) self.setWindowTitle(self.tr("Add IMAP Server Preset")) self.resize(388, 125) self.buttonBox = QDialogButtonBox(self) self.buttonBox.setGeometry(QRect(184, 80, 181, 32)) self.buttonBox.setOrientation(Qt.Horizontal) self.buttonBox.setCenterButtons(False) self.save_btn = QPushButton("&Save") self.save_btn.setDefault(True) self.save_btn.setEnabled(False) self.cancel_btn = QPushButton(self.tr("&Cancel")) self.cancel_btn.setCheckable(True) self.cancel_btn.setAutoDefault(False) self.buttonBox.addButton(self.save_btn, QDialogButtonBox.AcceptRole) self.buttonBox.addButton(self.cancel_btn, QDialogButtonBox.RejectRole) self.preset_name_le = QLineEdit(self) self.preset_name_le.setGeometry(QRect(134, 12, 231, 20)) self.lb_name = QLabel(self) self.lb_name.setGeometry(QRect(14, 16, 58, 14)) self.lb_name.setText(self.tr("Name")) self.server_address_le = QLineEdit(self) self.server_address_le.setGeometry(QRect(134, 45, 231, 20)) self.lb_server = QLabel(self) self.lb_server.setGeometry(QRect(14, 48, 81, 16)) self.lb_server.setText(self.tr("IMAP Server")) self.lb_info = QLabel(self) self.lb_info.setGeometry(QRect(14, 90, 161, 16)) self.lb_info.setText(self.tr("(SSL is always on.)")) self.buttonBox.accepted.connect(self.act_save_preset) self.buttonBox.rejected.connect(self.reject) self.init_settings() self.settings.beginGroup("Server Presets") self.presetNameList = [] for preset in self.settings.allKeys(): self.presetNameList.append(preset) self.settings.endGroup() self.preset_name_le.textChanged.connect(self.check_preset_name_availability) self.server_address_le.textChanged.connect(self.check_server_address) # --------------------------------------------------------------------- def init_settings(self): QCoreApplication.setOrganizationName("erdinc.me") QCoreApplication.setOrganizationDomain("erdinc.me") QCoreApplication.setApplicationName("IMAPLinkParser") self.settings = QSettings() # self.settings.clear() # --------------------------------------------------------------------- @Slot() def act_save_preset(self): try: self.settings.beginGroup("Server Presets") self.settings.setValue(self.preset_name_le.text(), self.server_address_le.text()) self.settings.endGroup() except: self.reject() self.accept() # --------------------------------------------------------------------- @Slot(unicode) def check_preset_name_availability(self, text): if text in self.presetNameList: self.save_btn.setEnabled(False) self.lb_info.setText('<p style="color:red;">Preset name exists!') else: if self.server_address_le.text() and self.preset_name_le.text(): self.save_btn.setEnabled(True) self.lb_info.setText(self.tr("(SSL is always on.)")) else: self.save_btn.setEnabled(False) self.lb_info.setText(self.tr("(SSL is always on.)")) # --------------------------------------------------------------------- @Slot(unicode) def check_server_address(self): if self.server_address_le.text(): preset = self.preset_name_le.text() if preset and preset not in self.presetNameList: self.save_btn.setEnabled(True) else: self.save_btn.setEnabled(False)
def saveLastPrestratumImportDir(self, dir): settings = QSettings() settings.beginGroup("DefaultDirs") settings.setValue("PrestratumImportDir", dir) settings.endGroup()
def saveMoreState(self, morestate): settings = QSettings("Syncplay", "MoreSettings") settings.beginGroup("MoreSettings") settings.setValue("ShowMoreSettings", morestate) settings.endGroup()
def writeWindowSettings(self): settings = QSettings() settings.beginGroup("LayerEditor") settings.setValue("geometry", self.saveGeometry()) settings.endGroup()
class MainWindow(QMainWindow): def __init__(self, datta): QMainWindow.__init__(self) self.setWindowTitle('Project Parser') appIcon = QIcon('search.png') self.setWindowIcon(appIcon) self.viewPortBL = QDesktopWidget().availableGeometry().topLeft() self.viewPortTR = QDesktopWidget().availableGeometry().bottomRight() self.margin = int(QDesktopWidget().availableGeometry().width()*0.1/2) self.shirina = QDesktopWidget().availableGeometry().width() - self.margin*2 self.visota = QDesktopWidget().availableGeometry().height() - self.margin*2 self.setGeometry(self.viewPortBL.x() + self.margin, self.viewPortBL.y() + self.margin, self.shirina, self.visota) # statusbar self.myStatusBar = QStatusBar() self.setStatusBar(self.myStatusBar) #lower long layout self.lowerLong = QFrame() self.detailsLabel = QLabel() self.skillsLabel = QLabel() self.urlLabel = QLabel() self.locationLabel = QLabel() self.skillsLabel.setText('skills') self.detailsLabel.setWordWrap(True) self.la = QVBoxLayout() self.la.addWidget(self.detailsLabel) self.la.addWidget(self.skillsLabel) self.la.addWidget(self.urlLabel) self.la.addWidget(self.locationLabel) self.lowerLong.setLayout(self.la) # table self.source_model = MyTableModel(self, datta, ['Id', 'Date', 'Title']) self.proxy_model = myTableProxy(self) self.proxy_model.setSourceModel(self.source_model) self.proxy_model.setDynamicSortFilter(True) self.table_view = QTableView() self.table_view.setModel(self.proxy_model) self.table_view.setAlternatingRowColors(True) self.table_view.resizeColumnsToContents() self.table_view.resizeRowsToContents() self.table_view.horizontalHeader().setStretchLastSection(True) self.table_view.setSortingEnabled(True) self.table_view.sortByColumn(2, Qt.AscendingOrder) # events self.selection = self.table_view.selectionModel() self.selection.selectionChanged.connect(self.handleSelectionChanged) #DO NOT use CreateIndex() method, use index() index = self.proxy_model.index(0,0) self.selection.select(index, QItemSelectionModel.Select) self.upperLong = self.table_view # right side widgets self.right = QFrame() self.la1 = QVBoxLayout() self.btnDownload = QPushButton('Download data') self.btnDownload.clicked.connect(self.download) self.myButton = QPushButton('Show Skillls') self.myButton.clicked.connect(self.showAllSkills) self.btnSearchByWord = QPushButton('Search by word(s)') self.btnSearchByWord.clicked.connect(self.onSearchByWord) self.btnResetFilter= QPushButton('Discard Filter') self.btnResetFilter.clicked.connect(self.discardFilter) self.btnCopyURL = QPushButton('URL to Clipboard') self.btnCopyURL.clicked.connect(self.copyToClipboard) self.btnExit = QPushButton('Exit') self.btnExit.clicked.connect(lambda: sys.exit()) self.dateTimeStamp = QLabel() self.la1.addWidget(self.btnDownload) self.la1.addSpacing(10) self.la1.addWidget(self.myButton) self.la1.addSpacing(10) self.la1.addWidget(self.btnSearchByWord) self.la1.addSpacing(10) self.la1.addWidget(self.btnResetFilter) self.la1.addSpacing(10) self.la1.addWidget(self.btnCopyURL) self.la1.addSpacing(70) self.la1.addWidget(self.btnExit) self.la1.addStretch(stretch=0) self.la1.addWidget(self.dateTimeStamp) self.right.setLayout(self.la1) self.right.setFrameShape(QFrame.StyledPanel) # splitters self.horiSplit = QSplitter(Qt.Vertical) self.horiSplit.addWidget(self.upperLong) self.horiSplit.addWidget(self.lowerLong) self.horiSplit.setSizes([self.visota/2, self.visota/2]) self.vertiSplit = QSplitter(Qt.Horizontal) self.vertiSplit.addWidget(self.horiSplit) self.vertiSplit.addWidget(self.right) self.vertiSplit.setSizes([self.shirina*3/4, self.shirina*1/4]) self.setCentralWidget(self.vertiSplit) self.settings = QSettings('elance.ini', QSettings.IniFormat) self.settings.beginGroup('DATE_STAMP') self.dateTimeStamp.setText('Data actuality: %s' % self.settings.value('date/time')) self.settings.endGroup() self.statusText = '' def handleSelectionChanged(self, selected, deselected): for index in selected.first().indexes(): #print('Row %d is selected' % index.row()) ind = index.model().mapToSource(index) desc = ind.model().mylist[ind.row()]['Description'] self.detailsLabel.setText(desc) skills = ', '.join(ind.model().mylist[ind.row()]['Skills']).strip() self.skillsLabel.setText(skills) url = ind.model().mylist[ind.row()]['URL'] self.urlLabel.setText(url) location = ind.model().mylist[ind.row()]['Location'] self.locationLabel.setText(location) def showAllSkills(self): listSkills = [] for elem in self.source_model.mylist: listSkills += elem['Skills'] allSkills = Counter(listSkills) tbl = MyTableModel(self, allSkills.items(), ['Skill', 'Freq']) win = skillsWindow(tbl, self.table_view) win.exec_() def discardFilter(self): self.table_view.model().emit(SIGNAL("modelAboutToBeReset()")) self.table_view.model().criteria = {} self.table_view.model().emit(SIGNAL("modelReset()")) self.table_view.resizeRowsToContents() def download(self): self.btnDownload.setDisabled(True) self.statusLabel = QLabel('Connecting') self.progressBar = QProgressBar() self.progressBar.setMinimum(0) self.progressBar.setMaximum(100) self.myStatusBar.addWidget(self.statusLabel, 2) self.myStatusBar.addWidget(self.progressBar, 1) self.progressBar.setValue(1) self.settings.beginGroup('URLS') initialLink = self.settings.value('CategoriesDetailed/VahaSelected/InitialLink') pagingLink = self.settings.value('CategoriesDetailed/VahaSelected/PagingLink') self.settings.endGroup() downloader = Downloader(initialLink, pagingLink, 25, 5) downloader.messenger.downloadProgressChanged.connect(self.onDownloadProgressChanged) downloader.messenger.downloadComplete.connect(self.onDownloadComplete) downloader.download() def onDownloadComplete(self): #QMessageBox.information(self, 'Download complete', 'Download complete!', QMessageBox.Ok) self.table_view.model().emit(SIGNAL("modelAboutToBeReset()")) self.settings.beginGroup('DATE_STAMP') self.settings.setValue('date/time', time.strftime('%d-%b-%Y, %H:%M:%S')) self.dateTimeStamp.setText('Data actuality: %s' % self.settings.value('date/time')) self.settings.endGroup() with open("elance.json") as json_file: jobDB = json.load(json_file) for elem in jobDB: words = nltk.tokenize.regexp_tokenize(elem['Title'].lower(), r'\w+') elem['Tokens'] = words elem['Skills'] = [t.strip() for t in elem['Skills'].split(',')] self.source_model.mylist = jobDB self.table_view.model().emit(SIGNAL("modelReset()")) self.btnDownload.setEnabled(True) self.myStatusBar.removeWidget(self.statusLabel) self.myStatusBar.removeWidget(self.progressBar) self.myStatusBar.showMessage(self.statusText, timeout = 5000) def onDownloadProgressChanged(self, stata): self.progressBar.setValue(stata[2]) #text = 'Processed records{:5d} of{:5d}'.format(percentage[0], percentage[1]) bajtikov = '{:,}'.format(stata[5]) self.statusText = 'Processed page{:4d} of{:4d}. \ Job entries{:5d} of{:5d}. \ Downloaded{:>12s} Bytes'.format(stata[3], stata[4], stata[0], stata[1], bajtikov) self.statusLabel.setText(self.statusText) def copyToClipboard(self): clipboard = QApplication.clipboard() clipboard.setText(self.urlLabel.text()) self.myStatusBar.showMessage(self.urlLabel.text(), timeout = 3000) def onSearchByWord(self): text, ok = QInputDialog.getText(self, 'Search the base by word(s)', 'Enter your keyword/phrase to search for:') if ok: words = [t.strip() for t in nltk.tokenize.regexp_tokenize(text.lower(), r'\w+')] self.table_view.model().emit(SIGNAL("modelAboutToBeReset()")) self.table_view.model().criteria = {'Description' : words} self.table_view.model().emit(SIGNAL("modelReset()"))
def readWindowSettings(self): settings = QSettings() settings.beginGroup("LayerEditor") self.restoreGeometry(settings.value("geometry")) settings.endGroup()