Coverage for C:\leo.repo\leo-editor\leo\core\leoQt6.py: 76%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

93 statements  

1#@+leo-ver=5-thin 

2#@+node:ekr.20210407011013.1: * @file leoQt6.py 

3""" 

4Import wrapper for pyQt6. 

5 

6For Qt6, plugins are responsible for loading all optional modules. 

7 

8""" 

9# pylint: disable=unused-import,no-name-in-module,c-extension-no-member,import-error 

10# 

11# Required imports 

12from PyQt6 import QtCore, QtGui, QtWidgets 

13from PyQt6.QtCore import Qt, QUrl 

14from PyQt6.QtGui import QAction, QActionGroup, QCloseEvent 

15from PyQt6.QtCore import pyqtSignal as Signal 

16# 

17# For pyflakes. 

18assert QtCore and QtGui and QtWidgets 

19assert QAction and QActionGroup 

20assert QCloseEvent 

21assert Qt and QUrl and Signal 

22# 

23# Standard abbreviations. 

24QtConst = Qt 

25qt_version = QtCore.QT_VERSION_STR 

26# 

27# Optional imports: #2005 

28# Must import this before creating the GUI 

29has_WebEngineWidgets = False 

30try: 

31 from PyQt6 import QtWebEngineWidgets 

32 assert QtWebEngineWidgets 

33 has_WebEngineWidgets = True 

34except ImportError: 

35 print('No Qt6 QtWebEngineWidgets') 

36 

37try: 

38 from PyQt6 import QtPrintSupport as printsupport 

39except Exception: 

40 printsupport = None 

41 

42try: 

43 from PyQt6 import Qsci 

44except ImportError: 

45 Qsci = None 

46try: 

47 import PyQt6.QtSvg as QtSvg 

48except ImportError: 

49 QtSvg = None 

50try: 

51 from PyQt6 import uic 

52except ImportError: 

53 uic = None 

54# 

55# #2005: Do not import these by default. All of these *do* work. 

56if 0: 

57 try: 

58 from PyQt6 import QtDesigner 

59 except Exception: 

60 QtDesigner = None 

61 try: 

62 from PyQt6 import QtOpenGL 

63 except Exception: 

64 QtOpenGL = None 

65 try: 

66 from PyQt6 import QtMultimedia 

67 except ImportError: 

68 QtMultimedia = None 

69 try: 

70 from PyQt6 import QtNetwork 

71 except Exception: 

72 QtNetwork = None 

73# 

74# Enumerations, with (sheesh) variable spellings. 

75try: 

76 # New spellings (6.1+): mostly singular. 

77 Alignment = QtCore.Qt.AlignmentFlag 

78 ControlType = QtWidgets.QSizePolicy.ControlType 

79 DropAction = QtCore.Qt.DropAction 

80 ItemFlag = QtCore.Qt.ItemFlag 

81 KeyboardModifier = QtCore.Qt.KeyboardModifier 

82 Modifier = QtCore.Qt.Modifier 

83 MouseButton = QtCore.Qt.MouseButton 

84 Orientation = QtCore.Qt.Orientation 

85 StandardButton = QtWidgets.QDialogButtonBox.StandardButton 

86 TextInteractionFlag = QtCore.Qt.TextInteractionFlag 

87 ToolBarArea = QtCore.Qt.ToolBarArea 

88 WidgetAttribute = QtCore.Qt.WidgetAttribute # #2347 

89 WindowType = QtCore.Qt.WindowType 

90 WindowState = QtCore.Qt.WindowState 

91except AttributeError: 

92 # Old spellings (6.0): mostly plural. 

93 Alignment = QtCore.Qt.Alignment # type:ignore 

94 ControlType = QtWidgets.QSizePolicy.ControlTypes # type:ignore 

95 DropAction = QtCore.Qt.DropActions # type:ignore 

96 ItemFlag = QtCore.Qt.ItemFlags # type:ignore 

97 KeyboardModifier = QtCore.Qt.KeyboardModifiers # type:ignore 

98 Modifier = QtCore.Qt.Modifiers # type:ignore 

99 MouseButton = QtCore.Qt.MouseButtons # type:ignore 

100 Orientation = QtCore.Qt.Orientations # type:ignore 

101 StandardButton = QtWidgets.QDialog.StandardButtons # type:ignore 

102 TextInteractionFlag = QtCore.Qt.TextInteractionFlags # type:ignore 

103 ToolBarArea = QtCore.Qt.ToolBarAreas # type:ignore 

104 WindowType = QtCore.Qt.WindowFlags # type:ignore 

105 WindowState = QtCore.Qt.WindowStates # type:ignore 

106# 

107# Other enums. 

108ButtonRole = QtWidgets.QMessageBox.ButtonRole 

109ContextMenuPolicy = QtCore.Qt.ContextMenuPolicy 

110DialogCode = QtWidgets.QDialog.DialogCode 

111EndEditHint = QtWidgets.QAbstractItemDelegate.EndEditHint 

112FocusPolicy = QtCore.Qt.FocusPolicy 

113FocusReason = QtCore.Qt.FocusReason 

114Format = QtGui.QImage.Format 

115GlobalColor = QtCore.Qt.GlobalColor 

116Icon = QtWidgets.QMessageBox.Icon 

117Information = QtWidgets.QMessageBox.Icon.Information 

118ItemDataRole = QtCore.Qt.ItemDataRole # 2347 

119Key = QtCore.Qt.Key 

120MoveMode = QtGui.QTextCursor.MoveMode 

121MoveOperation = QtGui.QTextCursor.MoveOperation 

122Policy = QtWidgets.QSizePolicy.Policy 

123ScrollBarPolicy = QtCore.Qt.ScrollBarPolicy 

124SelectionBehavior = QtWidgets.QAbstractItemView.SelectionBehavior 

125SelectionMode = QtWidgets.QAbstractItemView.SelectionMode 

126Shadow = QtWidgets.QFrame.Shadow 

127Shape = QtWidgets.QFrame.Shape 

128SizeAdjustPolicy = QtWidgets.QComboBox.SizeAdjustPolicy 

129SliderAction = QtWidgets.QAbstractSlider.SliderAction 

130StandardPixmap = QtWidgets.QStyle.StandardPixmap 

131Style = QtGui.QFont.Style 

132TextOption = QtGui.QTextOption 

133Type = QtCore.QEvent.Type 

134UnderlineStyle = QtGui.QTextCharFormat.UnderlineStyle 

135Weight = QtGui.QFont.Weight 

136WrapMode = QtGui.QTextOption.WrapMode 

137#@-leo