Allow multiple PySide versions on Qt.py
This commit is contained in:
parent
bcc2983815
commit
466589ccc4
@ -37,7 +37,7 @@ before_deploy:
|
|||||||
- pip install dmgbuild
|
- pip install dmgbuild
|
||||||
- mkdir dist_dmg
|
- mkdir dist_dmg
|
||||||
- mv resources/macos_vlc_install.command resources/.macos_vlc_install.command
|
- mv resources/macos_vlc_install.command resources/.macos_vlc_install.command
|
||||||
- dmgbuild -s appdmg.py "Syncplay" dist_dmg/Syncplay-PySide2.dmg
|
- dmgbuild -s appdmg.py "Syncplay" dist_dmg/Syncplay-qtpy-pyside2.dmg
|
||||||
|
|
||||||
deploy:
|
deploy:
|
||||||
provider: s3
|
provider: s3
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__
|
from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2
|
||||||
from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine
|
from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine
|
||||||
from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
|
from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
|
||||||
from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage
|
from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage, QDesktopServices
|
||||||
from PySide2.QtCore import QStandardPaths
|
if IsPySide2:
|
||||||
|
from PySide2.QtCore import QStandardPaths
|
||||||
from syncplay.players.playerFactory import PlayerFactory
|
from syncplay.players.playerFactory import PlayerFactory
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from syncplay import utils
|
from syncplay import utils
|
||||||
@ -343,16 +344,28 @@ class ConfigDialog(QtWidgets.QDialog):
|
|||||||
def browseMediapath(self):
|
def browseMediapath(self):
|
||||||
self.loadMediaBrowseSettings()
|
self.loadMediaBrowseSettings()
|
||||||
options = QtWidgets.QFileDialog.Options()
|
options = QtWidgets.QFileDialog.Options()
|
||||||
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
|
if IsPySide:
|
||||||
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
|
||||||
elif os.path.isdir(self.mediadirectory):
|
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
||||||
defaultdirectory = self.mediadirectory
|
elif os.path.isdir(self.mediadirectory):
|
||||||
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]):
|
defaultdirectory = self.mediadirectory
|
||||||
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]
|
elif os.path.isdir(QDesktopServices.storageLocation(QDesktopServices.MoviesLocation)):
|
||||||
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]):
|
defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.MoviesLocation)
|
||||||
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]
|
elif os.path.isdir(QDesktopServices.storageLocation(QDesktopServices.HomeLocation)):
|
||||||
else:
|
defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.HomeLocation)
|
||||||
defaultdirectory = ""
|
else:
|
||||||
|
defaultdirectory = ""
|
||||||
|
elif IsPySide2:
|
||||||
|
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
|
||||||
|
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
||||||
|
elif os.path.isdir(self.mediadirectory):
|
||||||
|
defaultdirectory = self.mediadirectory
|
||||||
|
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]):
|
||||||
|
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]
|
||||||
|
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]):
|
||||||
|
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]
|
||||||
|
else:
|
||||||
|
defaultdirectory = ""
|
||||||
browserfilter = "All files (*)"
|
browserfilter = "All files (*)"
|
||||||
fileName, filtr = QtWidgets.QFileDialog.getOpenFileName(self, "Browse for media files", defaultdirectory,
|
fileName, filtr = QtWidgets.QFileDialog.getOpenFileName(self, "Browse for media files", defaultdirectory,
|
||||||
browserfilter, "", options)
|
browserfilter, "", options)
|
||||||
|
|||||||
@ -1,7 +1,8 @@
|
|||||||
from syncplay.vendor import Qt
|
from syncplay.vendor import Qt
|
||||||
from syncplay.vendor.Qt import QtWidgets, QtGui, __binding__
|
from syncplay.vendor.Qt import QtWidgets, QtGui, __binding__, IsPySide, IsPySide2
|
||||||
from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
|
from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
|
||||||
from PySide2.QtCore import QStandardPaths
|
if IsPySide2:
|
||||||
|
from PySide2.QtCore import QStandardPaths
|
||||||
from syncplay import utils, constants, version, release_number
|
from syncplay import utils, constants, version, release_number
|
||||||
from syncplay.messages import getMessage
|
from syncplay.messages import getMessage
|
||||||
import sys
|
import sys
|
||||||
@ -13,6 +14,8 @@ import os
|
|||||||
from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
|
from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
|
||||||
from functools import wraps
|
from functools import wraps
|
||||||
from twisted.internet import task
|
from twisted.internet import task
|
||||||
|
if sys.platform.startswith('darwin') and IsPySide:
|
||||||
|
from Foundation import NSURL
|
||||||
lastCheckedForUpdates = None
|
lastCheckedForUpdates = None
|
||||||
|
|
||||||
class UserlistItemDelegate(QtWidgets.QStyledItemDelegate):
|
class UserlistItemDelegate(QtWidgets.QStyledItemDelegate):
|
||||||
@ -214,7 +217,10 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||||||
indexRow = window.playlist.count() if window.clearedPlaylistNote else 0
|
indexRow = window.playlist.count() if window.clearedPlaylistNote else 0
|
||||||
|
|
||||||
for url in urls[::-1]:
|
for url in urls[::-1]:
|
||||||
dropfilepath = os.path.abspath(unicode(url.toLocalFile()))
|
if sys.platform.startswith('darwin') and IsPySide:
|
||||||
|
dropfilepath = os.path.abspath(NSURL.URLWithString_(str(url.toString())).filePathURL().path())
|
||||||
|
else:
|
||||||
|
dropfilepath = os.path.abspath(unicode(url.toLocalFile()))
|
||||||
if os.path.isfile(dropfilepath):
|
if os.path.isfile(dropfilepath):
|
||||||
window.addFileToPlaylist(dropfilepath, indexRow)
|
window.addFileToPlaylist(dropfilepath, indexRow)
|
||||||
elif os.path.isdir(dropfilepath):
|
elif os.path.isdir(dropfilepath):
|
||||||
@ -316,7 +322,10 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||||||
if indexRow == -1:
|
if indexRow == -1:
|
||||||
indexRow = window.playlist.count()
|
indexRow = window.playlist.count()
|
||||||
for url in urls[::-1]:
|
for url in urls[::-1]:
|
||||||
dropfilepath = os.path.abspath(unicode(url.toLocalFile()))
|
if sys.platform.startswith('darwin') and IsPySide:
|
||||||
|
dropfilepath = os.path.abspath(NSURL.URLWithString_(str(url.toString())).filePathURL().path())
|
||||||
|
else:
|
||||||
|
dropfilepath = os.path.abspath(unicode(url.toLocalFile()))
|
||||||
if os.path.isfile(dropfilepath):
|
if os.path.isfile(dropfilepath):
|
||||||
window.addFileToPlaylist(dropfilepath, indexRow)
|
window.addFileToPlaylist(dropfilepath, indexRow)
|
||||||
elif os.path.isdir(dropfilepath):
|
elif os.path.isdir(dropfilepath):
|
||||||
@ -815,16 +824,28 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||||||
settings.endGroup()
|
settings.endGroup()
|
||||||
|
|
||||||
def getInitialMediaDirectory(self, includeUserSpecifiedDirectories=True):
|
def getInitialMediaDirectory(self, includeUserSpecifiedDirectories=True):
|
||||||
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
|
if IsPySide:
|
||||||
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
|
||||||
elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
|
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
||||||
defaultdirectory = self.mediadirectory
|
elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
|
||||||
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]):
|
defaultdirectory = self.mediadirectory
|
||||||
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]
|
elif os.path.isdir(QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.MoviesLocation)):
|
||||||
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]):
|
defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.MoviesLocation)
|
||||||
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]
|
elif os.path.isdir(QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)):
|
||||||
else:
|
defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)
|
||||||
defaultdirectory = ""
|
else:
|
||||||
|
defaultdirectory = ""
|
||||||
|
elif IsPySide2:
|
||||||
|
if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
|
||||||
|
defaultdirectory = self.config["mediaSearchDirectories"][0]
|
||||||
|
elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
|
||||||
|
defaultdirectory = self.mediadirectory
|
||||||
|
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]):
|
||||||
|
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.MoviesLocation)[0]
|
||||||
|
elif os.path.isdir(QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]):
|
||||||
|
defaultdirectory = QStandardPaths.standardLocations(QStandardPaths.HomeLocation)[0]
|
||||||
|
else:
|
||||||
|
defaultdirectory = ""
|
||||||
return defaultdirectory
|
return defaultdirectory
|
||||||
|
|
||||||
@needsClient
|
@needsClient
|
||||||
@ -834,7 +855,10 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||||||
return
|
return
|
||||||
|
|
||||||
self.loadMediaBrowseSettings()
|
self.loadMediaBrowseSettings()
|
||||||
options = QtWidgets.QFileDialog.Options()
|
if sys.platform.startswith('darwin') and IsPySide:
|
||||||
|
options = QtWidgets.QFileDialog.Options(QtWidgets.QFileDialog.DontUseNativeDialog)
|
||||||
|
else:
|
||||||
|
options = QtWidgets.QFileDialog.Options()
|
||||||
self.mediadirectory = ""
|
self.mediadirectory = ""
|
||||||
currentdirectory = os.path.dirname(self._syncplayClient.userlist.currentUser.file["path"]) if self._syncplayClient.userlist.currentUser.file else None
|
currentdirectory = os.path.dirname(self._syncplayClient.userlist.currentUser.file["path"]) if self._syncplayClient.userlist.currentUser.file else None
|
||||||
if currentdirectory and os.path.isdir(currentdirectory):
|
if currentdirectory and os.path.isdir(currentdirectory):
|
||||||
@ -859,7 +883,10 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||||||
return
|
return
|
||||||
|
|
||||||
self.loadMediaBrowseSettings()
|
self.loadMediaBrowseSettings()
|
||||||
options = QtWidgets.QFileDialog.Options()
|
if sys.platform.startswith('darwin') and IsPySide:
|
||||||
|
options = QtWidgets.QFileDialog.Options(QtWidgets.QFileDialog.DontUseNativeDialog)
|
||||||
|
else:
|
||||||
|
options = QtWidgets.QFileDialog.Options()
|
||||||
self.mediadirectory = ""
|
self.mediadirectory = ""
|
||||||
currentdirectory = os.path.dirname(self._syncplayClient.userlist.currentUser.file["path"]) if self._syncplayClient.userlist.currentUser.file else None
|
currentdirectory = os.path.dirname(self._syncplayClient.userlist.currentUser.file["path"]) if self._syncplayClient.userlist.currentUser.file else None
|
||||||
if currentdirectory and os.path.isdir(currentdirectory):
|
if currentdirectory and os.path.isdir(currentdirectory):
|
||||||
@ -1007,7 +1034,12 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||||||
|
|
||||||
@needsClient
|
@needsClient
|
||||||
def openAddMediaDirectoryDialog(self, MediaDirectoriesTextbox, MediaDirectoriesDialog):
|
def openAddMediaDirectoryDialog(self, MediaDirectoriesTextbox, MediaDirectoriesDialog):
|
||||||
folderName = unicode(QtWidgets.QFileDialog.getExistingDirectory(self,None,self.getInitialMediaDirectory(includeUserSpecifiedDirectories=False),QtWidgets.QFileDialog.ShowDirsOnly))
|
if sys.platform.startswith('darwin'):
|
||||||
|
options = QtWidgets.QFileDialog.Options(QtWidgets.QFileDialog.ShowDirsOnly | QtWidgets.QFileDialog.DontUseNativeDialog)
|
||||||
|
else:
|
||||||
|
options = QtWidgets.QFileDialog.Options(QtWidgets.QFileDialog.ShowDirsOnly)
|
||||||
|
folderName = unicode(QtGui.QFileDialog.getExistingDirectory(self,None,self.getInitialMediaDirectory(includeUserSpecifiedDirectories=False),options))
|
||||||
|
|
||||||
if folderName:
|
if folderName:
|
||||||
existingMediaDirs = MediaDirectoriesTextbox.toPlainText()
|
existingMediaDirs = MediaDirectoriesTextbox.toPlainText()
|
||||||
if existingMediaDirs == "":
|
if existingMediaDirs == "":
|
||||||
@ -1543,7 +1575,10 @@ class MainWindow(QtWidgets.QMainWindow):
|
|||||||
data = event.mimeData()
|
data = event.mimeData()
|
||||||
urls = data.urls()
|
urls = data.urls()
|
||||||
if urls and urls[0].scheme() == 'file':
|
if urls and urls[0].scheme() == 'file':
|
||||||
dropfilepath = os.path.abspath(unicode(event.mimeData().urls()[0].toLocalFile()))
|
if sys.platform.startswith('darwin') and IsPySide:
|
||||||
|
dropfilepath = os.path.abspath(NSURL.URLWithString_(str(url.toString())).filePathURL().path())
|
||||||
|
else:
|
||||||
|
dropfilepath = os.path.abspath(unicode(url.toLocalFile()))
|
||||||
if rewindFile == False:
|
if rewindFile == False:
|
||||||
self._syncplayClient._player.openFile(dropfilepath)
|
self._syncplayClient._player.openFile(dropfilepath)
|
||||||
else:
|
else:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user