def main(): qt_set_sequence_auto_mnemonic(False) if hasattr(Qt, 'AA_EnableHighDpiScaling'): QGuiApplication.setAttribute(Qt.AA_EnableHighDpiScaling, True) if hasattr(Qt, 'AA_Use96Dpi'): QGuiApplication.setAttribute(Qt.AA_Use96Dpi, True) if hasattr(Qt, 'AA_ShareOpenGLContexts'): fmt = QSurfaceFormat() fmt.setDepthBufferSize(24) QSurfaceFormat.setDefaultFormat(fmt) QGuiApplication.setAttribute(Qt.AA_ShareOpenGLContexts, True) # if sys.platform == 'darwin': # qApp.setStyle('Fusion') app = SingleApplication(vidcutter.__appid__, sys.argv) app.setApplicationName(vidcutter.__appname__) app.setApplicationVersion(vidcutter.__version__) app.setDesktopFileName(vidcutter.__desktopid__) app.setOrganizationDomain(vidcutter.__domain__) app.setQuitOnLastWindowClosed(True) win = MainWindow() win.stylename = app.style().objectName().lower() app.setActivationWindow(win) app.messageReceived.connect(win.file_opener) app.aboutToQuit.connect(MainWindow.cleanup) exit_code = app.exec_() if exit_code == MainWindow.EXIT_CODE_REBOOT: if sys.platform == 'win32': if hasattr(win.cutter, 'mpvWidget'): win.close() QProcess.startDetached('"{}"'.format(qApp.applicationFilePath())) else: QProcess.startDetached(' '.join(sys.argv)) sys.exit(exit_code)
} ''') CjActorRef = jf_jcls('akka.actor.ActorRef') CjAwait = jf_jcls('scala.concurrent.Await') CjByteArrayInputStream = jf_jcls('java.io.ByteArrayInputStream') CjByteArrayOutputStream = jf_jcls('java.io.ByteArrayOutputStream') CjDuration = jf_jcls('scala.concurrent.duration.Duration') CjPlatform = jf_jcls('com.sun.jna.Platform') CjSymbol = jf_jcls('scala.Symbol') CjSystem = jf_jcls('java.lang.System') CjTimeUnit = jf_jcls('java.util.concurrent.TimeUnit') if CjPlatform.isMac(): from PyQt5.QtGui import qt_set_sequence_auto_mnemonic qt_set_sequence_auto_mnemonic(True) JC_JAVA_VR = CjSystem.getProperty('java.version') JC_GROOVY_VR = jf_jcls('groovy.lang.GroovySystem').getVersion() def jf_pixmap( x_fn, x_format='PNG'): # Load image from file for using QPixmap in java fu_qba = QByteArray() fu_qbf = QBuffer(fu_qba) fu_qbf.open(QIODevice.WriteOnly) QPixmap(x_fn).save(fu_qbf, x_format) fu_qbf.close() fu_jbaos = CjByteArrayOutputStream() for bx2_it in fu_qba.data():