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)
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)
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
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()))
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)
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()))
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)
# -*- 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_())