Beispiel #1
0
 def another_instance_wants_to_talk(self):
     s = self.local_server.nextPendingConnection()
     if s is None:
         return
     s.waitForReadyRead(1000)
     stream = QTextStream(s)
     stream.setCodec('UTF-8')
     raw = stream.readAll()
     try:
         command = json.loads(raw)
     except Exception as e:
         self.error('Invalid data from other instance: %s' % e)
         return
     finally:
         s.close()
         del s
     if not isinstance(command, dict):
         self.error('Invalid data from other instance: %r' % command)
         return
     ac = command.get('action')
     if ac == 'shutdown':
         return self.shutdown()
     urls = command.get('open', [])
     if not isinstance(urls, list):
         self.error('Invalid data from other instance: %r' % command)
         return
     urls = [x for x in urls if isinstance(x, str)]
     if urls:
         self.open_urls(urls, in_current_tab='dynamic', switch_to_tab=True)
Beispiel #2
0
 def another_instance_wants_to_talk(self):
     s = self.local_server.nextPendingConnection()
     if s is None:
         return
     s.waitForReadyRead(1000)
     stream = QTextStream(s)
     stream.setCodec('UTF-8')
     raw = stream.readAll()
     try:
         command = json.loads(raw)
     except Exception as e:
         self.error('Invalid data from other instance: %s' % e)
         return
     finally:
         s.close()
         del s
     if not isinstance(command, dict):
         self.error('Invalid data from other instance: %r' % command)
         return
     ac = command.get('action')
     if ac == 'shutdown':
         return self.shutdown()
     urls = command.get('open', [])
     if not isinstance(urls, list):
         self.error('Invalid data from other instance: %r' % command)
         return
     urls = [x for x in urls if isinstance(x, str)]
     if urls:
         self.open_urls(urls, in_current_tab='dynamic', switch_to_tab=True)
Beispiel #3
0
    def loadGeom (self):
        geometry = {'polygon':[]}
        filename = self.name+"_geometry.txt"
        filename = filename.lower()
        filename = os.path.join(Config().instance.path_to_icons(),"empire","32x32",filename)
        file = QFile(filename)
        if file.open(QIODevice.ReadOnly):

            stream = QTextStream(file)
            
            while (not stream.atEnd()):
                line = stream.readLine()
                if line[0]!= "#":
                    elts = line.split(' ')
                    l = []
                    print ('line',line)
                    for i in range (1,len(elts)):
                        try :
                            l.append(QPoint(int(elts[i].split(',')[0]),int(elts[i].split(',')[1])))
                        except IndexError :
                            qDebug("Warning : empire.loadgeom, probleme lecture paire de point")
                    if (elts[0] == "p"):
                        print ('add polygon')
                        geometry['polygon'].append( l )
                    else:
                        pass
        else : 
            print ('not able to load file',filename)
        return geometry
Beispiel #4
0
 def run_local_server(self, urls, new_instance, shutdown):
     if shutdown:
         new_instance = False
     server_name = local_socket_address()
     s = QLocalSocket()
     s.connectToServer(server_name)
     if s.waitForConnected(500):
         if new_instance:
             return
         stream = QTextStream(s)
         stream.setCodec('UTF-8')
         if shutdown:
             cargs = json.dumps({'action': 'shutdown'})
         else:
             cargs = json.dumps({'open': urls}, ensure_ascii=False)
         stream << cargs
         stream.flush()
         s.waitForBytesWritten()
         raise SystemExit(0)
     if shutdown:
         raise SystemExit('No running vise instance found')
     self.local_server = ls = QLocalServer(self)
     ls.newConnection.connect(self.another_instance_wants_to_talk)
     if not ls.listen(server_name):
         if ls.serverError() == QAbstractSocket.AddressInUseError:
             try:
                 os.remove(server_name)
             except FileNotFoundError:
                 pass
         if not ls.listen(server_name):
             raise SystemExit('Failed to establish local listening socket at: %s with error: %s' % (
                 server_name, ls.errorString()))
Beispiel #5
0
 def handlePreview(self):
     f = QFile("Qrcodes.html")
     f.open(QFile.ReadOnly | QFile.Text)
     istream = QTextStream(f)
     self.textfield.setHtml(istream.readAll())
     f.close()
     dialog = QtPrintSupport.QPrintPreviewDialog()
     dialog.paintRequested.connect(self.textfield.print)#self.textEdit1.print)#editor.print_)
     dialog.exec_()
 def __init__(self, parent=None):
     super().__init__(parent)
     self._key = ''
     self._value = ''
     self._path = ''
     self._file = QFile()
     self._stream = QTextStream()
     self._lines = []
    def lrelease(self, tsInputFile, qmOutputFile, stripped=True):
        verbose = False
        metTranslations = False
        tor = metaTranslator()

        f = QFile(tsInputFile)
        if not f.open(QtCore.QIODevice.ReadOnly):
            print("lrelease error: Cannot open file '%s'" % tsInputFile)
            return

        t = QTextStream(f)
        fullText = t.readAll()
        f.close()

        if fullText.find("<!DOCTYPE TS>") >= 0:
            if qmOutputFile is None:
                self.releaseTsFile(tsInputFile, verbose, stripped)
            else:
                self.loadTsFile(tor, tsInputFile, verbose)

        else:
            # modId = self.db_.managerModules().idModuleOfFile(tsInputFile)
            key = self.db_.managerModules().shaOfFile(tsInputFile)
            # dir = filedir("../tempdata/cache/%s/%s/file.ts/%s" %
            #               (self._prj.conn.db_name, modId, key))
            tagMap = fullText
            # TODO: hay que cargar todo el contenido del fichero en un diccionario
            for key, value in tagMap:
                toks = value.split(" ")

                for t in toks:
                    if key == "TRANSLATIONS":
                        metTranslations = True
                        self.releaseTsFile(t, verbose, stripped)

            if not metTranslations:
                print(
                    "lrelease warning: Met no 'TRANSLATIONS' entry in project file '%s'" % tsInputFile)

        if qmOutputFile:
            self.releaseMetaTranslator(tor, qmOutputFile, verbose, stripped)
Beispiel #8
0
 def run_local_server(self, urls, new_instance, shutdown):
     if shutdown:
         new_instance = False
     server_name = local_socket_address()
     s = QLocalSocket()
     s.connectToServer(server_name)
     if s.waitForConnected(500):
         if new_instance:
             return
         stream = QTextStream(s)
         stream.setCodec('UTF-8')
         if shutdown:
             cargs = json.dumps({'action': 'shutdown'})
         else:
             cargs = json.dumps({'open': urls}, ensure_ascii=False)
         stream << cargs
         stream.flush()
         s.waitForBytesWritten()
         raise SystemExit(0)
     if shutdown:
         raise SystemExit('No running vise instance found')
     self.local_server = ls = QLocalServer(self)
     ls.newConnection.connect(self.another_instance_wants_to_talk)
     if not ls.listen(server_name):
         if ls.serverError() == QAbstractSocket.AddressInUseError:
             try:
                 os.remove(server_name)
             except FileNotFoundError:
                 pass
         if not ls.listen(server_name):
             raise SystemExit(
                 'Failed to establish local listening socket at: %s with error: %s'
                 % (server_name, ls.errorString()))
Beispiel #9
0
    import sys
    app = QApplication(sys.argv)

    # [1]
    series = QLineSeries()
    # [1]

    # [2]
    # data from http://www.swpc.noaa.gov/ftpdir/weekly/RecentIndices.txt
    # http://www.swpc.noaa.gov/ftpdir/weekly/README
    # http://www.weather.gov/disclaimer
    sunSpots = QFile("sun_spots.txt")
    if not sunSpots.open(QIODevice.ReadOnly | QIODevice.Text):
        sys.exit(1)

    stream = QTextStream(sunSpots)

    while not stream.atEnd():
        line = stream.readLine()

        if line.startswith("#") or line.startswith(":") or line is None:
            continue

        values = line.split()

        day = QDate(int(values[0]), int(values[1]), 15)

        momentInTime = QDateTime(day)

        series.append(momentInTime.toMSecsSinceEpoch(), float(values[3]))
 def read_file(self, device):
     QTextStream.setDevice(device)
Beispiel #11
0
# -*- coding: utf-8 -*-
import sys, os
if hasattr(sys, 'frozen'):
    os.environ['PATH'] = sys._MEIPASS + ";" + os.environ['PATH']
from PyQt5.Qt import QApplication, QFile, QTextStream
from scripts.MainWindow import MainWindow
from scripts import Utils


if __name__ == '__main__':
    app = QApplication(sys.argv)
    mainWin = MainWindow()
    theme = Utils.get_local_config()['THEME']
    file = QFile(theme + '.qss')
    file.open(QFile.ReadOnly | QFile.Text)
    stream = QTextStream(file)
    mainWin.setStyleSheet(stream.readAll())
    mainWin.show()
    sys.exit(app.exec_())