def loadFile(self, fileName): file = QFile(fileName) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning( self, "Application", "Cannot read file %s:\n%s." % (fileName, file.errorString())) return inf = QTextStream(file) inf.setCodec('UTF-8') QApplication.setOverrideCursor(Qt.WaitCursor) self.textEdit.setPlainText(inf.readAll()) QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) self.statusBar().showMessage("File loaded", 2000)
def writeTextToFile(self, fileName=None): # Just writes the text to file, without any changes to tab object # Used directly for i.e. export extensions savefile = QFile(fileName or self._fileName) result = savefile.open(QFile.WriteOnly) if result: savestream = QTextStream(savefile) # Save the file with original encoding encoding = self.editBox.document().property("encoding") if encoding is not None: savestream.setCodec(encoding) savestream << self.editBox.toPlainText() savefile.close() return result
def run(self): # 2. Implement run() """Run the application Sets the stylesheet of the application. """ file = QFile(self.get_resource('darkStyle.qss')) file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) stylesheet = stream.readAll() # If the app is not running from an executable, change the path of image files to the working directory from where fbs is run. if not getattr(sys, 'frozen', False): stylesheet = stylesheet.replace('dark/', 'src/main/resources/base/dark/') self.app.setStyleSheet(stylesheet) window = PomodoroWindow(self.app) window.show() return self.app.exec_() # 3. End run() with this line
def save(self, data, path=None): if path: self.filename = path self.is_new = False _file = QFile(self.filename) if not _file.open(QIODevice.WriteOnly | QIODevice.Truncate): raise Exception(_file.errorString()) stream = QTextStream(_file) stream.setCodec(QTextCodec.codecForLocale()) stream << data stream.flush() _file.close() # Emit the signal self.fileSaved.emit(self.filename)
def load(self): fh = None try: fh = QFile(self.filename) if not fh.open(QIODevice.ReadOnly): raise IOError(str(fh.errorString())) stream = QTextStream(fh) # stream.setCodec("UTF-8") self.setPlainText(stream.readAll()) self.document().setModified(False) except EnvironmentError as e: QMessageBox.warning(self, "加载错误" "不能加载 {0}".format(self.filename)) finally: if fh is not None: fh.close() self.setWindowTitle(QFileInfo(self.filename).fileName())
def saveFile(self, fileName): file = QFile(fileName) if not file.open(QFile.WriteOnly | QFile.Text): QMessageBox.warning( self, "SDI", "Cannot write file %s:\n%s." % (fileName, file.errorString())) return False outstr = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) outstr << self.textEdit.toPlainText() QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) self.statusBar().showMessage("File saved", 2000) return True
def __init__(self): super().__init__() self.title = 'Rocket Watch' self.left = 150 self.top = 150 self.width = 1100 self.height = 700 self.setWindowTitle(self.title) self.setWindowIcon(QIcon('rocket.png')) self.setGeometry(self.left, self.top, self.width, self.height) self.myWidget = SpaceWidget(self) self.setCentralWidget(self.myWidget) self.show() stream = QFile('tab1StyleSheet.qss') stream.open(QIODevice.ReadOnly) self.setStyleSheet(QTextStream(stream).readAll())
def newConnection(self): """ Executed whenever a message is received. """ if self.inSocket: # Disconnect previously connected signal slot. disconnect(self.inSocket.readyRead, self.readyRead) # Create a new socket. self.inSocket = self.server.nextPendingConnection() if self.inSocket: self.inStream = QTextStream(self.inSocket) self.inStream.setCodec('UTF-8') connect(self.inSocket.readyRead, self.readyRead) self.activate()
def fromHtml(self): if not self.filename : return file = QFile(self.filename) if not file.open(QIODevice.ReadOnly | QIODevice.Text): return text = QTextStream(file) text.setCodec('utf8') #words = self.cleanHtml(text.readAll()) words = text.readAll() print('fromHtml --> ', words)
def __init__(self, subtitle, encoding="UTF-8"): super().__init__() subtitlefile = QFile(subtitle) if not subtitlefile.open(QIODevice.ReadOnly | QIODevice.Text): return text = QTextStream(subtitlefile) text.setCodec(encoding) subtitletext = text.readAll() # ('sıra', 'saat', 'dakika', 'saniye', 'milisaniye', 'saat', 'dakika', 'saniye', 'milisaniye', 'birincisatır', 'ikincisatır') compile = re.compile(r"(\d.*)\n(\d{2}):(\d{2}):(\d{2}),(\d{3}) --> (\d{2}):(\d{2}):(\d{2}),(\d{3})\n(\W.*|\w.*)\n(\w*|\W*|\w.*|\W.*)\n") self.sublist = compile.findall(subtitletext)
def save(self): fileName, _ = QFileDialog.getSaveFileName(self) if fileName: outFile = QFile(fileName) if not outFile.open(QFile.WriteOnly | QFile.Text): QMessageBox.warning( self, "Codecs", "Cannot write file %s:\n%s" % (fileName, outFile.errorString())) return action = self.sender() codecName = action.data() out = QTextStream(outFile) out.setCodec(codecName) out << self.textEdit.toPlainText()
def saveIt(self, ): file = QFile(self.fileName) if not file.open(QFile.WriteOnly | QFile.Text): QMessageBox.warning( self, "NodeEra", "Cannot write file %s:\n%s." % (self.fileName, file.errorString())) return outstr = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) outstr << self.editor.text() head, tail = ntpath.split(QFileInfo(self.fileName).fileName()) self.parent.tabCypher.setTabText(self.parent.tabCypher.currentIndex(), tail) self.mode = MODEEDIT QApplication.restoreOverrideCursor()
def saveFile(self, fileName): file = QFile(fileName) if not file.open(QFile.WriteOnly | QFile.Text): QMessageBox.warning( self, "PyOne", "Cannot write file %s:\n%s." % (fileName, file.errorString())) return False outstr = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) outstr << self.text() QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) return True
def createBrowserDialog(self, uiPath, filePath): # create and loadui for QDialog instance browserDialog = QDialog() browserDialog.ui = loadUi(uiPath, browserDialog) # if filePath is specified, create it, otherwise, return Rejected Enum if os.path.isfile(filePath): # open as a file stream file = QFile(filePath) file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) # direct stream as HTML, connect close button, execute and return value after close. browserDialog.ui.textBrowser.setHtml(stream.readAll()) browserDialog.ui.buttonBox.clicked.connect(browserDialog.close) return browserDialog.exec() else: return QDialog.Rejected
def configure(self): data = "database_name: " + self.dbName.text() data += "\ndatabase_username: "******"\ndatabase_password: "******"\ndatabase_hostname: " + self.hostname.text() data += "\ndatabase_port: " + self.port.text() f = QFile("config/database.config") f.remove("config/database.config") if f.open(QIODevice.ReadWrite | QIODevice.Text): stream = QTextStream(f) stream << data f.close() self.close()
def __init__(self, parent=None, in_designer=False, action=None): QWidget.__init__(self, parent=parent) self.in_designer = in_designer ui = os.path.join(QFileInfo.absolutePath(QFileInfo(__file__)), 'numberpad.ui') # TODO: CAMPid 9549757292917394095482739548437597676742 if not QFileInfo(ui).isAbsolute(): ui_file = os.path.join(QFileInfo.absolutePath(QFileInfo(__file__)), ui) else: ui_file = ui ui_file = QFile(ui_file) ui_file.open(QFile.ReadOnly | QFile.Text) ts = QTextStream(ui_file) sio = io.StringIO(ts.readAll()) self.ui = uic.loadUi(sio, self) self.action = action self.ui.accept_button.clicked.connect(self.accept) self.ui.cancel_button.clicked.connect( functools.partial(self.exit, value=None)) self.ui.up_button.clicked.connect(self.ui.cancel_button.clicked) numeric_buttons = [] for number in range(10): button = getattr(self.ui, 'button_{}'.format(number)) button.clicked.connect( functools.partial(self.ui.edit.insert, str(number))) numeric_buttons.append(button) self.ui.button_decimal.clicked.connect( functools.partial(self.ui.edit.insert, '.')) numeric_buttons.append(self.ui.button_decimal) self.ui.button_backspace.clicked.connect(self.ui.edit.backspace) for button in numeric_buttons: button.setStyleSheet(''' QPushButton { border: 0px; } ''')
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 main(): app = QApplication(sys.argv) cache_size_in_kb = 700 * 10**3 QPixmapCache.setCacheLimit(cache_size_in_kb) app.setWindowIcon(QIcon(":/icons/app.svg")) f = QFile(":/style.qss") f.open(QFile.ReadOnly | QFile.Text) app.setStyleSheet(QTextStream(f).readAll()) f.close() mw = MainWindow() mw.show() sys.exit(app.exec_())
def set_theme(self, theme, stylesheet=True): """ Applies a QStyle or QStyleSheet to the QApplication :param stylesheet: :param theme: :return: """ if stylesheet: theme_file = QFile(theme) theme_file.open(QFile.ReadOnly | QFile.Text) theme_stream = QTextStream(theme_file) self.app.setStyleSheet(theme_stream.readAll()) set_config('Theme', 'last_theme', theme) else: self.app.setStyle(QStyleFactory.create(theme)) set_config('Theme', 'last_style', theme) self.current_theme = theme
def loadXml(self, fileName): file = QFile(fileName) if not file.open(QFile.ReadOnly | QFile.Text): QMessageBox.warning( self, "RDFNavigator", "Cannot read file {0}:\n{1}.".format(fileName, file.errorString())) return False instr = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) self.setText(instr.readAll()) self.indicateUlrs() QApplication.restoreOverrideCursor() if self.isRdf: fileName = fileName.replace('.xml', '.rdf') self.setCurrentFile(fileName) self.textChanged.connect(self.documentWasModified)
def start_window(self): app = QtWidgets.QApplication(sys.argv) file = QFile("ui/style.qss") file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) app.setStyleSheet(stream.readAll()) self.main_window = QtWidgets.QMainWindow() self.ui = UIMainWindow() self.ui.setupUi(self.main_window) self.ui.actionOpen.triggered.connect(self.create_new_media_set_tab) self.main_window.show() self.thread_pool = QThreadPool() print("Multithreading with maximum %d threads" % self.thread_pool.maxThreadCount()) sys.exit(app.exec_())
def main(): app = QtWidgets.QApplication(sys.argv) app.setWindowIcon(QtGui.QIcon("../resources/stationarybicycle.ico")) # Changing the app id so our custom window icon is shown on the toolbar. QtWin.setCurrentProcessExplicitAppUserModelID('exercise_bike_logger.v1.0') main_window = MainWindow() # Set stylesheet. file = QFile(":/dark.qss") file.open(QFile.ReadOnly | QFile.Text) stream = QTextStream(file) app.setStyleSheet(stream.readAll()) main_window.show() sys.exit(app.exec_())
def _createDialogue(self): CONFIGPATH = os.path.join( sys.path[0], "plugins\\ResolutionExtension\\Resolution.txt") CODEC = "UTF-8" if QFile(CONFIGPATH).exists() == False: #Create Default Configuration fh = QFile(CONFIGPATH) fh.open(QIODevice.WriteOnly) stream = QTextStream(fh) stream.setCodec(CODEC) stream << "70,70\r\n" stream << "95,80\r\n" stream << "95,95\r\n" stream << "160,140\r\n" fh.close() os.startfile(CONFIGPATH) else: os.startfile(CONFIGPATH)
def saveFile(self, fileName): file = QFile(fileName) if not file.open(QFile.WriteOnly | QFile.Text): QMessageBox.warning( self, "Message", "Cannot write file %s:\n%s." % (fileName, file.errorString())) return False outfile = QTextStream(file) QApplication.setOverrideCursor(Qt.WaitCursor) outfile << self.myeditor.toPlainText() QApplication.restoreOverrideCursor() self.setCurrentFile(fileName) self.statusBar().showMessage("Datei '" + fileName + "' gespeichert", 3000) return True
def get_style(style_sheet): try: mod = importlib.import_module("." + style_sheet, __name__) hasattr(mod, "qt_resource_name") f = QFile(":/%s/style.qss" % style_sheet) f.open(QFile.ReadOnly | QFile.Text) ts = QTextStream(f) stylesheet = ts.readAll() except ImportError as e: print "Style sheet not available. Use available_styles() to check for valid styles" return u"" except Exception as e: print "Style sheet available, but an error occured..." traceback.print_exc() return u"" return stylesheet
def extruder_M2O(self): flag = False CONFIGPATH = os.path.join(sys.path[0],"plugins\\ResolutionExtension\\Resolution.txt") if QFile(CONFIGPATH).exists() == True: fh = QFile(CONFIGPATH) fh.open(QIODevice.ReadOnly) stream = QTextStream(fh) stream.setCodec(CODEC) while stream.atEnd() == False: tem = stream.readLine() if tem.startswith("# extruder_M2O"): if (tem.split("="))[1].strip().lower() == "yes": flag = True else: continue fh.close() return flag
def inject_js(filepath, ipoint=QWebEngineScript.DocumentCreation, iid=QWebEngineScript.ApplicationWorld, sub_frames=False, script_transform=None): f = QFile(filepath) assert f.open(QFile.ReadOnly | QFile.Text) src = QTextStream(f).readAll() if script_transform: src = script_transform(src) script = QWebEngineScript() script.setInjectionPoint(ipoint) script.setSourceCode(src) script.setWorldId(iid) script.setRunsOnSubFrames(sub_frames) self.q_profile.scripts().insert(script)
def getIcon(self, icon_name, base_color, hover_color): root = QFileInfo(__file__).absolutePath() svg_files = os.listdir(root + "/../../styles/assets/icons/svg/") filename = "appbar." + icon_name + ".svg" if filename in svg_files: f = QFile(root + '/../../styles/assets/icons/svg/' + filename) if f.open(QFile.ReadOnly | QFile.Text): textStream = QTextStream(f) svgData = textStream.readAll().replace( 'fill="#000000"', 'fill="{}"'.format(base_color)) svgData_hover = svgData.replace( 'fill="{}"'.format(base_color), 'fill="{}"'.format(hover_color)) f.close() svg = QSvgRenderer(QByteArray().append(svgData)) svg_hover = QSvgRenderer(QByteArray().append(svgData_hover)) qim = QImage(76, 76, QImage.Format_RGBA8888) qim.fill(0) painter = QPainter() painter.begin(qim) svg.render(painter) painter.end() qim_hover = QImage(76, 76, QImage.Format_ARGB32) qim_hover.fill(0) painter = QPainter() painter.begin(qim_hover) svg_hover.render(painter) painter.end() self.icon = QIcon(QPixmap.fromImage(qim)) self.hovericon = QIcon(QPixmap.fromImage(qim_hover)) self.setIcon(self.icon) else: qim = QImage(76, 76, QImage.Format_RGBA8888) qim.fill(0) self.icon = QPixmap.fromImage(qim) self.hovericon = QPixmap.fromImage(qim) self.setIcon(self.icon)
def __saveByStream(self, fileName): ##用 QTextStream 保存文件 fileDevice = QFile(fileName) if not fileDevice.open(QIODevice.WriteOnly | QIODevice.Text): return False try: fileStream = QTextStream(fileDevice) #用文本流读取文件 fileStream.setAutoDetectUnicode(True) #自动检测Unicode fileStream.setCodec("utf-8") #必须设置编码,否则不能正常显示汉字 text = self.ui.textEdit.toPlainText() #返回是str类型 fileStream << text #使用流操作符 ## fileStream<<"\n***************在尾部添加的第1行" finally: fileDevice.close() return True
def update_project(file_name="test.xml"): # 打开文件 file = QFile(file_name) # 相对路径、绝对路径、资源路径都可以 if not file.open(QFile.ReadOnly): return # 更新一个标签项, 如果知道xml的结构,直接定位到那个标签上定点更新 # 或者用遍历的方法去匹配tagname或者attribut,value来更新 doc = QDomDocument() if not doc.setContent(file): file.close() return file.close() root_item_list = project_item_dict.keys() for root_item in root_item_list: logging.debug(root_item) # general,generate_what root_element: QDomElement = doc.documentElement() dom_list: QDomNodeList = root_element.elementsByTagName(root_item) if dom_list.length() != 1: # 必然存在一个,且只有一个 logging.debug("解析出错") else: node: QDomNode = dom_list.item(0) root_e = node.toElement() # general level for cmd_key in project_item_dict[root_item].keys(): # dist_path_cmd , one_dir_cmd,level logging.debug("tag " + str(project_item_dict[root_item][cmd_key][2])) old_node: QDomElement = root_e.firstChildElement(project_item_dict[root_item][cmd_key][2]) if old_node.isNull(): logging.debug("parse error, no tag") new_node: QDomElement = root_e.firstChildElement(project_item_dict[root_item][cmd_key][2]) new_node.setAttribute("cmd", cmd_key) new_node.setAttribute("argv", project_item_dict[root_item][cmd_key][0]) new_node.setAttribute("state", project_item_dict[root_item][cmd_key][1]) if root_e.replaceChild(new_node, old_node) is None: logging.debug("replace failure") if not file.open(QFile.WriteOnly | QFile.Truncate): return # 输出到文件 out_stream = QTextStream(file) doc.save(out_stream, 4) # 缩进4格 file.close() logging.debug("configure is updated") return doc