]> jfr.im git - irc/weechat/qweechat.git/blame - src/qweechat/qt_compat.py
Initial commit
[irc/weechat/qweechat.git] / src / qweechat / qt_compat.py
CommitLineData
7dcf23b1
SH
1#!/usr/bin/env python
2#
3# File downloaded from: https://github.com/epage/PythonUtils/blob/master/util/qt_compat.py
4# Author: epage
5# License: LGPL 2.1
6#
7
8from __future__ import with_statement
9from __future__ import division
10
11_TRY_PYSIDE = True
12
13try:
14 if not _TRY_PYSIDE:
15 raise ImportError()
16 import PySide.QtCore as _QtCore
17 QtCore = _QtCore
18 USES_PYSIDE = True
19except ImportError:
20 import sip
21 sip.setapi('QString', 2)
22 sip.setapi('QVariant', 2)
23 import PyQt4.QtCore as _QtCore
24 QtCore = _QtCore
25 USES_PYSIDE = False
26
27
28def _pyside_import_module(moduleName):
29 pyside = __import__('PySide', globals(), locals(), [moduleName], -1)
30 return getattr(pyside, moduleName)
31
32
33def _pyqt4_import_module(moduleName):
34 pyside = __import__('PyQt4', globals(), locals(), [moduleName], -1)
35 return getattr(pyside, moduleName)
36
37
38if USES_PYSIDE:
39 import_module = _pyside_import_module
40
41 Signal = QtCore.Signal
42 Slot = QtCore.Slot
43 Property = QtCore.Property
44else:
45 import_module = _pyqt4_import_module
46
47 Signal = QtCore.pyqtSignal
48 Slot = QtCore.pyqtSlot
49 Property = QtCore.pyqtProperty
50
51
52if __name__ == "__main__":
53 pass