14 # |
14 # |
15 |
15 |
16 import os |
16 import os |
17 |
17 |
18 from PyQt5.QtCore import pyqtSlot, QFile, QFileInfo, QTimer, QPoint, \ |
18 from PyQt5.QtCore import pyqtSlot, QFile, QFileInfo, QTimer, QPoint, \ |
19 QMimeData, Qt, QEvent, QRegExp, QLocale, qVersion, PYQT_VERSION_STR |
19 QMimeData, Qt, QEvent, QRegExp, QLocale, PYQT_VERSION_STR |
20 from PyQt5.QtGui import QImageWriter, QPixmap, QCursor, QDrag, QKeySequence |
20 from PyQt5.QtGui import QImageWriter, QPixmap, QCursor, QDrag, QKeySequence |
21 from PyQt5.QtWidgets import QWidget, QApplication, QShortcut |
21 from PyQt5.QtWidgets import QWidget, QApplication, QShortcut |
22 |
22 |
23 from E5Gui import E5FileDialog, E5MessageBox |
23 from E5Gui import E5FileDialog, E5MessageBox |
24 |
24 |
25 from .Ui_SnapWidget import Ui_SnapWidget |
25 from .Ui_SnapWidget import Ui_SnapWidget |
26 |
26 |
27 import UI.PixmapCache |
27 import UI.PixmapCache |
28 import Preferences |
28 import Preferences |
29 import Globals |
29 import Globals |
|
30 from Globals import qVersionTuple |
30 |
31 |
31 |
32 |
32 class SnapWidget(QWidget, Ui_SnapWidget): |
33 class SnapWidget(QWidget, Ui_SnapWidget): |
33 """ |
34 """ |
34 Class implementing the snapshot widget. |
35 Class implementing the snapshot widget. |
370 self.__grabberWidget.hide() |
371 self.__grabberWidget.hide() |
371 self.__grabTimer.stop() |
372 self.__grabTimer.stop() |
372 |
373 |
373 if self.__mode == SnapWidget.ModeFullscreen: |
374 if self.__mode == SnapWidget.ModeFullscreen: |
374 desktop = QApplication.desktop() |
375 desktop = QApplication.desktop() |
375 if qVersion() >= "5.0.0": |
376 if qVersionTuple() >= (5, 0, 0): |
376 self.__snapshot = QApplication.screens()[0].grabWindow( |
377 self.__snapshot = QApplication.screens()[0].grabWindow( |
377 desktop.winId(), desktop.x(), desktop.y(), |
378 desktop.winId(), desktop.x(), desktop.y(), |
378 desktop.width(), desktop.height()) |
379 desktop.width(), desktop.height()) |
379 else: |
380 else: |
380 self.__snapshot = QPixmap.grabWindow( |
381 self.__snapshot = QPixmap.grabWindow( |
384 desktop = QApplication.desktop() |
385 desktop = QApplication.desktop() |
385 screenId = desktop.screenNumber(QCursor.pos()) |
386 screenId = desktop.screenNumber(QCursor.pos()) |
386 geom = desktop.screenGeometry(screenId) |
387 geom = desktop.screenGeometry(screenId) |
387 x = geom.x() |
388 x = geom.x() |
388 y = geom.y() |
389 y = geom.y() |
389 if qVersion() >= "5.0.0": |
390 if qVersionTuple() >= (5, 0, 0): |
390 self.__snapshot = QApplication.screens()[0].grabWindow( |
391 self.__snapshot = QApplication.screens()[0].grabWindow( |
391 desktop.winId(), x, y, geom.width(), geom.height()) |
392 desktop.winId(), x, y, geom.width(), geom.height()) |
392 else: |
393 else: |
393 self.__snapshot = QPixmap.grabWindow( |
394 self.__snapshot = QPixmap.grabWindow( |
394 desktop.winId(), x, y, geom.width(), geom.height()) |
395 desktop.winId(), x, y, geom.width(), geom.height()) |