| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- # -*- coding: utf-8 -*-
- #
- # Copyright © 2014-2015 Colin Duquesnoy
- # Copyright © 2009- The Spyder Development Team
- #
- # Licensed under the terms of the MIT License
- # (see LICENSE.txt for details)
- """
- Provides QtCore classes and functions.
- """
- from . import PYQT5, PYSIDE2, PYQT4, PYSIDE, PythonQtError
- if PYQT5:
- from PyQt5.QtCore import *
- from PyQt5.QtCore import pyqtSignal as Signal
- from PyQt5.QtCore import pyqtSlot as Slot
- from PyQt5.QtCore import pyqtProperty as Property
- from PyQt5.QtCore import QT_VERSION_STR as __version__
- # For issue #153
- from PyQt5.QtCore import QDateTime
- QDateTime.toPython = QDateTime.toPyDateTime
- # Those are imported from `import *`
- del pyqtSignal, pyqtSlot, pyqtProperty, QT_VERSION_STR
- elif PYSIDE2:
- from PySide2.QtCore import *
- try: # may be limited to PySide-5.11a1 only
- from PySide2.QtGui import QStringListModel
- except:
- pass
- import PySide2.QtCore
- __version__ = PySide2.QtCore.__version__
- elif PYQT4:
- from PyQt4.QtCore import *
- # Those are things we inherited from Spyder that fix crazy crashes under
- # some specific situations. (See #34)
- from PyQt4.QtCore import QCoreApplication
- from PyQt4.QtCore import Qt
- from PyQt4.QtCore import pyqtSignal as Signal
- from PyQt4.QtCore import pyqtSlot as Slot
- from PyQt4.QtCore import pyqtProperty as Property
- from PyQt4.QtGui import (QItemSelection, QItemSelectionModel,
- QItemSelectionRange, QSortFilterProxyModel,
- QStringListModel)
- from PyQt4.QtCore import QT_VERSION_STR as __version__
- from PyQt4.QtCore import qInstallMsgHandler as qInstallMessageHandler
- # QDesktopServices has has been split into (QDesktopServices and
- # QStandardPaths) in Qt5
- # This creates a dummy class that emulates QStandardPaths
- from PyQt4.QtGui import QDesktopServices as _QDesktopServices
- class QStandardPaths():
- StandardLocation = _QDesktopServices.StandardLocation
- displayName = _QDesktopServices.displayName
- DesktopLocation = _QDesktopServices.DesktopLocation
- DocumentsLocation = _QDesktopServices.DocumentsLocation
- FontsLocation = _QDesktopServices.FontsLocation
- ApplicationsLocation = _QDesktopServices.ApplicationsLocation
- MusicLocation = _QDesktopServices.MusicLocation
- MoviesLocation = _QDesktopServices.MoviesLocation
- PicturesLocation = _QDesktopServices.PicturesLocation
- TempLocation = _QDesktopServices.TempLocation
- HomeLocation = _QDesktopServices.HomeLocation
- DataLocation = _QDesktopServices.DataLocation
- CacheLocation = _QDesktopServices.CacheLocation
- writableLocation = _QDesktopServices.storageLocation
- # Those are imported from `import *`
- del pyqtSignal, pyqtSlot, pyqtProperty, QT_VERSION_STR, qInstallMsgHandler
- elif PYSIDE:
- from PySide.QtCore import *
- from PySide.QtGui import (QItemSelection, QItemSelectionModel,
- QItemSelectionRange, QSortFilterProxyModel,
- QStringListModel)
- from PySide.QtCore import qInstallMsgHandler as qInstallMessageHandler
- del qInstallMsgHandler
- # QDesktopServices has has been split into (QDesktopServices and
- # QStandardPaths) in Qt5
- # This creates a dummy class that emulates QStandardPaths
- from PySide.QtGui import QDesktopServices as _QDesktopServices
- class QStandardPaths():
- StandardLocation = _QDesktopServices.StandardLocation
- displayName = _QDesktopServices.displayName
- DesktopLocation = _QDesktopServices.DesktopLocation
- DocumentsLocation = _QDesktopServices.DocumentsLocation
- FontsLocation = _QDesktopServices.FontsLocation
- ApplicationsLocation = _QDesktopServices.ApplicationsLocation
- MusicLocation = _QDesktopServices.MusicLocation
- MoviesLocation = _QDesktopServices.MoviesLocation
- PicturesLocation = _QDesktopServices.PicturesLocation
- TempLocation = _QDesktopServices.TempLocation
- HomeLocation = _QDesktopServices.HomeLocation
- DataLocation = _QDesktopServices.DataLocation
- CacheLocation = _QDesktopServices.CacheLocation
- writableLocation = _QDesktopServices.storageLocation
- import PySide.QtCore
- __version__ = PySide.QtCore.__version__
- else:
- raise PythonQtError('No Qt bindings could be found')
|