anki/aqt/qt.py

44 lines
1.2 KiB
Python
Raw Normal View History

# Copyright: Damien Elmes <anki@ichi2.net>
# License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
# fixme: make sure not to optimize imports on this file
import sip
import os
# fix buggy ubuntu12.04 display of language selector
os.environ["LIBOVERLAY_SCROLLBAR"] = "0"
from anki.utils import isWin, isMac
from PyQt5.Qt import *
2016-07-08 04:34:30 +02:00
# trigger explicit message in case of missing libraries
# instead of silently failing to import
from PyQt5.QtWebEngineWidgets import QWebEnginePage
def debug():
from PyQt5.QtCore import pyqtRemoveInputHook
from pdb import set_trace
pyqtRemoveInputHook()
set_trace()
import sys, traceback
if os.environ.get("DEBUG"):
def info(type, value, tb):
from PyQt5.QtCore import pyqtRemoveInputHook
for line in traceback.format_exception(type, value, tb):
sys.stdout.write(line)
pyqtRemoveInputHook()
from pdb import pm
pm()
sys.excepthook = info
2013-05-17 08:17:04 +02:00
qtmajor = (QT_VERSION & 0xff0000) >> 16
qtminor = (QT_VERSION & 0x00ff00) >> 8
2016-07-18 05:59:45 +02:00
qtpoint = QT_VERSION & 0xff
2017-06-06 06:33:53 +02:00
if qtmajor < 5 or (qtmajor == 5 and qtminor < 9):
raise Exception("Anki requires Qt 5.9.0+")
if qtmajor == 5 and qtminor == 10:
raise Exception("Qt 5.10 is known to be buggy.")