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 loadFile(self, fileName): file = QFile(fileName) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning(self, self.tr("Application"), self.tr("Cannot read file " "{}:\n{}.".format(fileName, file.errorString()))) return inStream = QTextStream(file) QApplication.setOverrideCursor(QtGui.Qt.WaitCursor) self.textEdit.setPlainText(inStream.readAll()) print(inStream.readAll()) QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) self.statusBar().showMessage(self.tr("File loaded"), 2000)
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 __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 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 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 __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): 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 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 _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 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 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 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)
def loadFile(self, fileName): file = QFile(fileName) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning(self, "MDI", "Cannot read file %s:\n%s." % (fileName, file.errorString())) return False instr = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) self.setPlainText(instr.readAll()) QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) self.document().contentsChanged.connect(self.documentWasModified) return True
def SpongesMorphotypes() -> dict: if len(Loader._sponges_morphotypes) == 0: content = "" file = QFile(Loader.MORPHOTYPES_FILE_PATH) if file.open(QIODevice.ReadOnly | QFile.Text): stream = QTextStream(file) stream.setCodec("UTF-8") content = stream.readAll() file.close() obj = json.loads(content) for i, m in enumerate(obj): Loader._sponges_morphotypes[i] = Morphotype( m["name"], QColor(m["color"])) return Loader._sponges_morphotypes
def set_dark_style(self): f = QFile(Resource.darkstyle) if not f.exists(): LOGGER.error( "Unable to load dark stylesheet, file not found in resources") return else: f.open(QFile.ReadOnly | QFile.Text) ts = QTextStream(f) stylesheet = ts.readAll() self.setStyleSheet(stylesheet) KnechtSettings.app['app_style'] = 'fusion-dark' IconRsc.update_icons(self.ui) self.setStyle('Fusion')
def _dependenciesComboBoxChanged(self, idx: int): data = self._dependencies_list.currentData() self._version.setText(data["version"]) self._license.setText(data["license"]) self._author.setText(data["author"]) self._link.setText("<a href='%s'>%s</a>" % (data["link"], data["link"])) license_file = QFile(":/documents/licenses/%s" % data["license-file"]) text = "" if license_file.open(QIODevice.ReadOnly | QFile.Text): stream = QTextStream(license_file) stream.setCodec("UTF-8") text = stream.readAll() license_file.close() self._license_area.setText(text)
def toggle_stylesheet(self, path): ''' Toggle the stylesheet to use the desired path in the Qt resource system (prefixed by `:/`) or generically (a path to a file on system). :path: A full path to a resource or file on system ''' # get the QApplication instance, or crash if not set app = QApplication.instance() if app is None: raise RuntimeError("No Qt Application found.") file = QFile(path) file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) app.setStyleSheet(stream.readAll())
def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.previous_move = chess.Move( chess.A1, chess.A2) # //HACK get previous move from board? self.centralWidget = QWidget() self.mainLayout = QVBoxLayout() # Initialize board self.boardWidget = QBoardWidget() #quant stuff here plis self.Qpieces = [] self.quantum_mode = False self.split_turn = False # for second move when split self.boardWidget.foreachCells(self.setQboard) # 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) self.boardWidget.moveMade.connect(self.checkQmove) self.boardWidget.illegalClassicalMove.connect(self.entangleMove)
def load_file(self, file_name): """ Load file into current instance. :param file_name: whatever QFileDialog.getOpenFileName returns (abs or canonical path?), or canonical :return: """ file = QFile(file_name) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning( self, "OneHandTextEdit", "Cannot read file {}:\n{}.".format(file_name, file.errorString())) return instr = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) self.text_edit.setPlainText(instr.readAll()) QApplication.restoreOverrideCursor() self.set_current_file(file_name) self.statusBar().showMessage("File loaded", 2000)
app.setWindowIcon(QIcon(":/images/chessboard.png")) app.setApplicationDisplayName("HiChess") app.setOrganizationName("Zneigras") app.setOrganizationDomain("https://github.com/H-a-y-k/Hichess") breeze = QFile(":qbreeze/dark.qss") main = QFile(":/style/styles.css") # stylesheet as string breezeQss = "" mainQss = "" if breeze.open(QFile.ReadOnly): textstream = QTextStream(breeze) breezeQss = textstream.readAll() if main.open(QFile.ReadOnly): textstream = QTextStream(main) mainQss = textstream.readAll() app.setStyleSheet(f"{breezeQss}{mainQss}") settingsDialog = SettingsDialog() status = settingsDialog.exec_() if status == SettingsDialog.Accepted: window = HichessGui(username=settingsDialog.newUsername, enginePath=settingsDialog.newEnginePath) window.setMinimumSize(800, 800) window.showMaximized()
def text(self) -> str: content = "" file = QFile(":/documents/report_template.html") if file.open(QIODevice.ReadOnly | QFile.Text): stream = QTextStream(file) stream.setCodec("UTF-8") content = stream.readAll() file.close() # Summary content = content.replace("{{TITLE}}", self._analysis._parameters.name()) content = content.replace("{{ANALYSED_IMAGES}}", str(self._analysis.imagesCount())) content = content.replace("{{START_DATE}}", self._analysis.startDateTime().toString("dd/MM/yyyy 'à' hh:mm")) content = content.replace("{{END_DATE}}", self._analysis.endDateTime().toString("dd/MM/yyyy 'à' hh:mm")) # Parameters selected_morphotypes_names = [m.name() for m in self._analysis.parameters().selectedMorphotypes().values()] content = content.replace("{{ANALYSED_FOLDER}}", self._analysis.parameters().srcFolder()) content = content.replace("{{CONFIDENCE_THRESHOLD}}", "%.1f%%" % (self._analysis.parameters().threshold()*100)) content = content.replace("{{SELECTED_MORPHOTYPES}}", ", ".join(selected_morphotypes_names)) content = content.replace("{{OPT_SAVE_PROCESSED_IMAGES}}", str(self._analysis.parameters().saveProcessedImages())) if self._analysis.parameters().saveProcessedImages(): content = content.replace("{{PROCESSED_IMAGES_FOLDER}}", self._analysis.parameters().destFolder()) # Detections morphotypes_stats = "" total_progress = "" total = self._analysis.totalDetections() div_by = total if div_by == 0: div_by = 1 for morphotype_id, morphotype in self._analysis.parameters().selectedMorphotypes().items(): detections = self._analysis.cumulativeDetectionsFor(morphotype_id) morphotypes_stats += """ <div class="stat-item"> <div class="stat-item-header"> <span class="name">%s</span> <span class="count">%s (%.1f%%)</span> </div> <div class="progress-container"> <div class="progress" style="width: %.1f%%; background-color: %s"></div> </div> </div> """ % (morphotype.name(), detections, detections*100/div_by, detections*100/div_by, morphotype.color().name()) total_progress += """ <div class="progress" style="width: %.1f%%; background-color: %s"></div> """ % (detections*100/div_by, morphotype.color().name()) content = content.replace("{{MORPHOTYPES_STATS}}", morphotypes_stats) content = content.replace("{{TOTAL_PROGRESS}}", total_progress) content = content.replace("{{TOTAL_DETECTIONS}}", str(total)) # Chart content = content.replace("{{CHART_IMAGE}}", self._analysis.base64ChartImage()) legend_items = "" for morphotype_id, morphotype in self._analysis.parameters().selectedMorphotypes().items(): legend_items += """ <div class="legend-item"> <div class="legend-item-color-container"> <div class="legend-item-color" style="background-color: %s"></div> </div> <div class="legend-item-name">%s</div> </div> """ % (morphotype.color().name(), morphotype.name()) content = content.replace("{{LEGEND_ITEMS}}", legend_items) # Interest image_items = "" for processed_image_filename, base64_img in self._analysis.mostInterestingBase64Images().items(): image_items += """ <div class="images-item"> <div class="images-item-container"> <img src="%s"> <span>%s</span> </div> </div> """ % (base64_img, processed_image_filename) content = content.replace("{{IMAGE_ITEMS}}", image_items) return content