def light_theme(self): file = QFile(":/stylesheet/light.txt") file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) self.setStyleSheet(stream.readAll()) self.setIcons("black") self.spinner.setColor(QtGui.QColor(26, 25, 28))
def loadFile(self, fileName): file = QFile(fileName) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning( self, "Pablo", "Cannot read file %s:\n%s." % (fileName, file.errorString())) return inFile = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) if (QFileInfo(fileName).suffix() in ("pbl")): self.paged_text_edit.setHtml(inFile.readAll()) elif (QFileInfo(fileName).suffix() in ("html")): # FIXME: Prevent double setting of the paged_text_edit where necessary # FIXME: Double setting may cause bad UX with large files self.paged_text_edit.setHtml(inFile.readAll()) cleanHtml = HTMLCleaner.clean( self.paged_text_edit.toHtml()).decode("utf-8") self.paged_text_edit.setHtml(cleanHtml) else: self.paged_text_edit.setPlainText(inFile.readAll()) QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) self.statusBar.writeMessageOnStatus("File loaded", 2000)
def __init__(self, id, *argv): super(SingleApplication, self).__init__(*argv) self._id = id self._activationWindow = None self._activateOnMessage = False # Is there another instance running? self._outSocket = QLocalSocket() self._outSocket.connectToServer(self._id) self._isRunning = self._outSocket.waitForConnected() if self._isRunning: # Yes, there is. self._outStream = QTextStream(self._outSocket) self._outStream.setCodec('UTF-8') else: # No, there isn't. self._outSocket = None self._outStream = None self._inSocket = None self._inStream = None self._server = QLocalServer() self._server.listen(self._id) self._server.newConnection.connect(self._onNewConnection)
def loadConfig(self): self.initRiseRun = None self.initSetRun = None cfgFile = QFile(self.fileName) if cfgFile is not None: if cfgFile.exists(): debugMessage("Config file found") if cfgFile.open(QIODevice.ReadOnly | QIODevice.Text): inStream = QTextStream(cfgFile) if inStream is not None: # Assume correct for system timezone is OFF self.setCorrectForSysTZ(False) while not inStream.atEnd(): inStream.skipWhiteSpace() line = inStream.readLine() self.processConfigLine(line) else: debugMessage("Config file NOT found") self.setCorrectForSysTZ(False) # We are only successful if we have a latitude, longitude and timezone result = (self.latitude is not None)\ and (self.longitude is not None)\ and (self.homeTZ is not None) return result
def dark_theme(self): file = QFile(":/stylesheet/dark.txt") file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) self.setStyleSheet(stream.readAll()) self.setIcons("white") self.spinner.setColor(QtGui.QColor(206, 206, 206))
def save_file(self, file_name): """ :param file_name: A canonical file path or whatever QFileDialog.getSaveFileName returns. :return: boolean for use in closeEvent method. """ error = None QApplication.setOverrideCursor(Qt.WaitCursor) file = QSaveFile(file_name) if file.open(QFile.WriteOnly | QFile.Text): outstr = QTextStream(file) outstr << self.text_edit.toPlainText() if not file.commit(): error = "Cannot write file {}:\n{}.".format( file_name, file.errorString()) else: error = "Cannot open file {}:\n{}.".format(file_name, file.errorString()) QApplication.restoreOverrideCursor() if error: QMessageBox.warning(self, "OneHandTextEdit", error) return False self.set_current_file(file_name) self.statusBar().showMessage("File saved", 2000) return True
def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.centralWidget = QWidget() self.mainLayout = QVBoxLayout() # Initialize board self.boardWidget = hichess.BoardWidget() # The user can interract with both colors of the board self.boardWidget.accessibleSides = hichess.BOTH_SIDES # Enable drag and drop self.boardWidget.dragAndDrop = True # background image self.boardWidget.setBoardPixmap( defaultPixmap=QPixmap(":/images/chessboard.png"), flippedPixmap=QPixmap(":/images/flipped_chessboard.png")) # qss qss = QFile(":/style/styles.css") if qss.open(QFile.ReadOnly): textStream = QTextStream(qss) self.boardWidget.setStyleSheet(textStream.readAll()) self.flipButton = QPushButton("Flip") # flip the board when the button is pressed self.flipButton.clicked.connect(self.boardWidget.flip) self.mainLayout.addWidget(self.boardWidget) self.mainLayout.addWidget(self.flipButton) self.centralWidget.setLayout(self.mainLayout) self.setCentralWidget(self.centralWidget)
def saveFileAs(self): dir = QDir() docsPath = '{}/Documents'.format(dir.homePath()) if not dir.exists(docsPath): docsPath = '{}/Documentos'.format(dir.homePath()) #Regresa una tupla (filename, filter) filename = QFileDialog.getSaveFileName(self, 'Guardar como', docsPath, self.fileFilter) if not filename: return if self.filename: windowTitle = self.windowTitle().split('-')[0] self.setWindowTitle('{} - {}'.format(windowTitle, filename[0])) else: self.setWindowTitle('{} - {}'.format(self.windowTitle(), filename[0])) self.filename = filename[0] file = QFile(self.filename) if not file.open(QIODevice.WriteOnly): return data = self.textContent.toPlainText() stream = QTextStream(file) stream.setCodec('UTF-8') stream << data file.flush() file.close() self.showMessage('Archivo guardado')
def __init__(self, parent=None): super(DragWidget, self).__init__(parent) dictionaryFile = QFile(':/dictionary/words.txt') dictionaryFile.open(QIODevice.ReadOnly) x = 5 y = 5 for word in QTextStream(dictionaryFile).readAll().split(): wordLabel = DragLabel(word, self) wordLabel.move(x, y) wordLabel.show() x += wordLabel.width() + 2 if x >= 195: x = 5 y += wordLabel.height() + 2 newPalette = self.palette() newPalette.setColor(QPalette.Window, Qt.white) self.setPalette(newPalette) self.setAcceptDrops(True) self.setMinimumSize(400, max(200, y)) self.setWindowTitle("Draggable Text")
def switch_theme(self): """ Toggle the stylesheet to use the desired path in the Qt resource system (prefixed by `:/`) or generically (a path to a file on system). This is quoted : https://stackoverflow.com/questions/48256772/dark-theme-for-qt-widgets """ # get the QApplication instance, or crash if not set app = QApplication.instance() if app is None: raise RuntimeError("No Qt Application found.") text = "" if self.parent.style_theme == "light": self.parent.style_theme = "dark" self.parent.style_theme_sheet = ":/dark.qss" self.update_statusbar() text = "Light" elif self.parent.style_theme == "dark": self.parent.style_theme = "light" self.parent.style_theme_sheet = ":/light.qss" self.update_statusbar() text = "Dark" file = QFile(self.parent.style_theme_sheet) self.parent.theme_button.setText(text) file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) app.setStyleSheet(stream.readAll())
def slotSourceDownloaded(self): reply = self.sender() self.textEdit = QTextEdit() self.textEdit.setAttribute(Qt.WA_DeleteOnClose) self.textEdit.show() self.textEdit.setPlainText(QTextStream(reply).readAll()) self.textEdit.resize(600, 400) reply.deleteLater()
def __init__(self): super(DocsWindow, self).__init__() docs_ui = docsform.Ui_Dialog() docs_ui.setupUi(self) file = QFile(":/text/docum.txt") file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) docs_ui.textEdit.setHtml(stream.readAll())
def __init__(self, url): super(MainWindow, self).__init__() self.progress = 0 fd = QFile(":/jquery.min.js") if fd.open(QIODevice.ReadOnly | QFile.Text): self.jQuery = QTextStream(fd).readAll() fd.close() else: self.jQuery = '' QNetworkProxyFactory.setUseSystemConfiguration(True) self.view = QWebView(self) self.view.load(url) self.view.loadFinished.connect(self.adjustLocation) self.view.titleChanged.connect(self.adjustTitle) self.view.loadProgress.connect(self.setProgress) self.view.loadFinished.connect(self.finishLoading) self.locationEdit = QLineEdit(self) self.locationEdit.setSizePolicy(QSizePolicy.Expanding, self.locationEdit.sizePolicy().verticalPolicy()) self.locationEdit.returnPressed.connect(self.changeLocation) toolBar = self.addToolBar("Navigation") toolBar.addAction(self.view.pageAction(QWebPage.Back)) toolBar.addAction(self.view.pageAction(QWebPage.Forward)) toolBar.addAction(self.view.pageAction(QWebPage.Reload)) toolBar.addAction(self.view.pageAction(QWebPage.Stop)) toolBar.addWidget(self.locationEdit) viewMenu = self.menuBar().addMenu("&View") viewSourceAction = QAction("Page Source", self) viewSourceAction.triggered.connect(self.viewSource) viewMenu.addAction(viewSourceAction) effectMenu = self.menuBar().addMenu("&Effect") effectMenu.addAction("Highlight all links", self.highlightAllLinks) self.rotateAction = QAction( self.style().standardIcon(QStyle.SP_FileDialogDetailedView), "Turn images upside down", self, checkable=True) self.rotateAction.toggled.connect(self.rotateImages) effectMenu.addAction(self.rotateAction) toolsMenu = self.menuBar().addMenu("&Tools") toolsMenu.addAction("Remove GIF images", self.removeGifImages) toolsMenu.addAction("Remove all inline frames", self.removeInlineFrames) toolsMenu.addAction("Remove all object elements", self.removeObjectElements) toolsMenu.addAction("Remove all embedded elements", self.removeEmbeddedElements) self.setCentralWidget(self.view)
def __ConfigureHistoryFile(self): self.__historyFile = QFile("history.txt") if self.__historyFile.open(QFile.ReadWrite or QFile.Append): self.__historyFileStream = QTextStream(self.__historyFile) else: self.__statusBar.showMessage( self.__GetCurrentTime() + " - History fie create failed!", 2000)
def __init__(self): super(AboutWindow, self).__init__() about_ui = abtform.Ui_Dialog() about_ui.setupUi(self) file = QFile(":/text/about.txt") file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) about_ui.text.setHtml(stream.readAll())
def _read_file(self, file_path: str) -> str: from PySide2.QtCore import QFile from PySide2.QtCore import QTextStream from PySide2.QtCore import QIODevice file = QFile(file_path) file.open(QIODevice.ReadOnly) ts = QTextStream(file) string = ts.readAll() return string
def _check_data(self, data_set): for data, lines in data_set: stream = QTextStream(data) res = [] while not stream.atEnd(): res.append(stream.readLine()) self.assertEqual(res, lines)
def testConstruction(self): '''QTextStream construction''' obj = QTextStream() self.assertEqual(obj.codec(), QTextCodec.codecForLocale()) self.assertEqual(obj.device(), None) self.assertEqual(obj.string(), None) self.assertTrue(obj.atEnd()) self.assertEqual(obj.readAll(), '')
def _onNewConnection(self): if self._inSocket: self._inSocket.readyRead.disconnect(self._onReadyRead) self._inSocket = self._server.nextPendingConnection() if not self._inSocket: return self._inStream = QTextStream(self._inSocket) self._inStream.setCodec('UTF-8') self._inSocket.readyRead.connect(self._onReadyRead) if self._activateOnMessage: self.activateWindow()
def load_file(self, fileName): file = QFile(fileName) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning(self, "Cryptix", f"Cannot read {fileName} :\n{file.errorString()}") return stream = QTextStream(file) self.encryptEdit.setPlainText(stream.readAll()) self.statusBar().showMessage("File loaded", 2000)
def openFile(self, path = ""): fileName = path if not fileName: fileName, _ = QFileDialog.getOpenFileName(self, self.tr("Open File"), "", "qmake Files (*.pro *.prf *.pri)") if fileName: inFile = QFile(fileName) if inFile.open(QFile.ReadOnly | QFile.Text): stream = QTextStream(inFile) self.editor.setPlainText(stream.readAll())
def save(self): outFile = QFile(self.backingStoragePath) if not outFile.open(QFile.WriteOnly | QFile.Text): outFile.close() return False stream = QTextStream(outFile) stream << self.contents outFile.close()
def __onNewConnection(self): """ On New Socket Connection From Clint """ if self._socket: self._socket.readyRead.disconnect(self.__onReadyRead) self._socket = self._server.nextPendingConnection() if not self._socket: return self._stream_str = QTextStream(self._socket) self._stream_str.setCodec('UTF-8') self._socket.readyRead.connect(self.__onReadyRead)
def convert_to_bytearray(urls: [QUrl], delimiter='\n') -> QByteArray: """modelの項目をbyte型に変換する。 :param urls: 要素を変換するindexのリスト :param delimiter: データの区切り文字 :return: byte型に変換した項目 元に戻すための区切り文字としてself.url_delimiterプロパティを使用 """ urls_byte = QByteArray() stream = QTextStream(urls_byte, QIODevice.WriteOnly) for url in urls: stream << url.toString() << delimiter return urls_byte
def load(self): filename, _ = QFileDialog.getOpenFileName(self) if not filename: return file = QFile(filename) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning( self, "Panel Słoneczny", "nie mógł wczytać pliku %s:\n%s." % (filename, file.errorString())) return inf = QTextStream(file) #QApplication.setOverrideCursor(QtCore.Qt.WaitCursor) self.textEdit.setPlainText(inf.readAll()) #with open(file, 'r') as input: with open('Breslau.txt', 'r') as f: # f = self.nameEdit.text() # f = self.latitudeEdit.text() # f = self.longitudeEdit.text() # f = self.dateandtimeEdit.text() # print(self.nameEdit.text()) # print(self.latitudeEdit.text()) # print(self.longitudeEdit.text()) # print(self.dateandtimeEdit.text()) # for line in f: # print (line, end='') f_name = f.readline() #f_name = self.nameEdit.text() self.text1.setText(f_name) f_lat = f.readline() f_lat = self.latitudeEdit.text() f_lon = f.readline() f_lon = self.longitudeEdit.text() f_dnt = f.readline() f_dnt = self.dateandtimeEdit.text() # for line in f: # if 'name' in line: # self.text1.setText(line) #if 'lat' in line: #self.text1.setText(self.textEdit.setPlainText(inf.readAll())) #self.text1.setText(self.nameEdit.text()) #QApplication.restoreOverrideCursor() #self.setCurrentFile(filename) self.statusBar().showMessage("Wczytano plik", 2000)
def saveToFile(self, fileName): dir_path = os.path.dirname(os.path.realpath(fileName)) dir = QDir('/') dir.mkpath(dir_path) file = QSaveFile(fileName) if file.open(QFile.WriteOnly): out = QTextStream(file) for sample in self.recordedSamples: out << sample.toCSV() << '\n' file.commit() self.recordedSamples = list() else: print('ERROR: failed to open file') print(file.error())
def loadFile(self, fileName): file = QFile(fileName) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning(self, "Application", "Cannot read file" "{}:\n{}".format(fileName, file.errorString())) return False in_ = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) self.textEdit.setPlainText(in_.readAll()) QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) self.statusBar().showMessage("File loaded", 2000)
def PreprocessedQSS() -> str: lines = [] qss_file = QFile(Loader.STYLE_FILE_PATH) if qss_file.open(QIODevice.ReadOnly | QFile.Text): stream = QTextStream(qss_file) stream.setCodec("UTF-8") while not stream.atEnd(): lines.append(stream.readLine().rstrip("\n")) qss_file.close() qss_vars = {} qss_body = "" for i, l in enumerate(lines): l = l.strip() if len(l) == 0: continue if l.startswith("//"): continue if l[0] == "@": if not l.endswith(";"): print( "[WARNING] QSSPreprocessor : Parsing error at line %d for '%s' (missing semicolon)" % (i, l)) l = l.rstrip(";") s = l.split(":") if len(s) < 2: print( "[WARNING] QSSPreprocessor : Parsing error at line %d for '%s' (missing colon)" % (i, l)) continue qss_vars[s[0].strip()] = s[1].strip() else: qss_body += l qss_vars_names = list(qss_vars.keys()) qss_vars_names.sort() qss_vars_names.reverse() for k in qss_vars_names: qss_body = qss_body.replace(k, qss_vars[k]) Loader._qss_variables[k] = qss_vars[k] return qss_body
def readMarkdownFile(fileName): inFile = QFile(fileName) if not inFile.open(QFile.ReadOnly | QFile.Text): inFile.close() print("Couldn't read {}".format(fileName)) return "" stream = QTextStream(inFile) contents = stream.readAll() inFile.close() return contents
def setupUi(self): self.ui.setupUi(self) self.setWindowTitle(Constants.PROGRAM_NAME + " - version " + Constants.CSV2JSON_VERSION) self.ui.cbLogger.setEnabled(False) self.ui.cbConverter.setEnabled(False) self.ui.leSourcePath.setText(Settings().getSpoolPath()) self.ui.pbStyle.setVisible(Settings().isStyleButtonVisible()) self.ui.pteEditor.setMaximumBlockCount(Settings().getMaxLogRowCount()) self.ui.pteEditor.setReadOnly(True) file = QFile(":/qss/style") file.open(QFile.ReadOnly | QFile.Text) ts = QTextStream(file) styleSheet = ts.readAll() self.setStyleSheet(styleSheet)