5 |
5 |
6 """ |
6 """ |
7 Module implementing a TabWidget class substituting QTabWidget. |
7 Module implementing a TabWidget class substituting QTabWidget. |
8 """ |
8 """ |
9 |
9 |
|
10 import contextlib |
|
11 |
10 from PyQt5.QtCore import pyqtSignal, Qt, QPoint, QMimeData |
12 from PyQt5.QtCore import pyqtSignal, Qt, QPoint, QMimeData |
11 from PyQt5.QtGui import QDrag |
13 from PyQt5.QtGui import QDrag |
12 from PyQt5.QtWidgets import QTabWidget, QTabBar, QApplication, QStyle |
14 from PyQt5.QtWidgets import QTabWidget, QTabBar, QApplication, QStyle |
13 |
15 |
14 from E5Gui.E5AnimatedLabel import E5AnimatedLabel |
16 from E5Gui.E5AnimatedLabel import E5AnimatedLabel |
32 """ |
34 """ |
33 Protected slot to support wheel events. |
35 Protected slot to support wheel events. |
34 |
36 |
35 @param event reference to the wheel event (QWheelEvent) |
37 @param event reference to the wheel event (QWheelEvent) |
36 """ |
38 """ |
37 try: |
39 with contextlib.suppress(AttributeError): |
38 delta = event.angleDelta().y() |
40 delta = event.angleDelta().y() |
39 if delta > 0: |
41 if delta > 0: |
40 self._tabWidget.prevTab() |
42 self._tabWidget.prevTab() |
41 elif delta < 0: |
43 elif delta < 0: |
42 self._tabWidget.nextTab() |
44 self._tabWidget.nextTab() |
43 |
45 |
44 event.accept() |
46 event.accept() |
45 except AttributeError: |
|
46 pass |
|
47 |
47 |
48 |
48 |
49 class E5DnDTabBar(E5WheelTabBar): |
49 class E5DnDTabBar(E5WheelTabBar): |
50 """ |
50 """ |
51 Class implementing a tab bar class substituting QTabBar. |
51 Class implementing a tab bar class substituting QTabBar. |