forked from Arthur-Milchior/anki
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathqt.py
54 lines (40 loc) · 1.37 KB
/
qt.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Copyright: Ankitects Pty Ltd and contributors
# License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
# make sure not to optimize imports on this file
# pylint: disable=unused-import
import os
import sys
import traceback
from PyQt5.Qt import * # type: ignore
from PyQt5.QtCore import *
from PyQt5.QtCore import \
pyqtRemoveInputHook # pylint: disable=no-name-in-module
from PyQt5.QtWebEngineWidgets import * # type: ignore
from PyQt5.QtWidgets import *
from anki.utils import isMac, isWin
# fix buggy ubuntu12.04 display of language selector
os.environ["LIBOVERLAY_SCROLLBAR"] = "0"
try:
from PyQt5 import sip
except ImportError:
import sip # type: ignore
def debug():
from pdb import set_trace
pyqtRemoveInputHook()
set_trace()
if os.environ.get("DEBUG"):
def info(type, value, tb):
for line in traceback.format_exception(type, value, tb):
sys.stdout.write(line)
pyqtRemoveInputHook()
from pdb import pm
pm()
sys.excepthook = info
qtmajor = (QT_VERSION & 0xff0000) >> 16
qtminor = (QT_VERSION & 0x00ff00) >> 8
qtpoint = QT_VERSION & 0xff
if qtmajor != 5 or qtminor < 9 or qtminor == 10:
raise Exception("Anki does not support your Qt version.")
# GUI code assumes python 3.6+
if sys.version_info[0] < 3 or sys.version_info[1] < 6:
raise Exception("Anki requires Python 3.6+")