Example #1
0
    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)
Example #2
0
    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
Example #3
0
 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
Example #4
0
    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)
Example #5
0
 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())
Example #6
0
    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
Example #7
0
 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())
Example #8
0
    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()
Example #9
0
    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)
Example #10
0
    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)
Example #11
0
    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()
Example #12
0
    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
Example #14
0
 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
Example #15
0
    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()
Example #16
0
    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;
                }
            ''')
Example #17
0
    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
Example #18
0
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_())
Example #19
0
 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
Example #20
0
 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)
Example #21
0
    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_())
Example #22
0
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_())
Example #23
0
 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)
Example #24
0
    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
Example #25
0
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
Example #27
0
        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)
Example #28
0
    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)
Example #29
0
    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
Example #30
0
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