Snapshot/SnapWidget.py

changeset 2106
cca04724bff8
parent 1965
96f5a76e1845
child 2131
e79d0610347a
equal deleted inserted replaced
2104:671c38b34bef 2106:cca04724bff8
12 # 12 #
13 13
14 import os 14 import os
15 15
16 from PyQt4.QtCore import pyqtSlot, QFile, QFileInfo, QTimer, QPoint, QMimeData, Qt, \ 16 from PyQt4.QtCore import pyqtSlot, QFile, QFileInfo, QTimer, QPoint, QMimeData, Qt, \
17 QEvent, QRegExp 17 QEvent, QRegExp, qVersion
18 from PyQt4.QtGui import QWidget, QImageWriter, QApplication, QPixmap, QCursor, QDrag, \ 18 from PyQt4.QtGui import QWidget, QImageWriter, QApplication, QPixmap, QCursor, QDrag, \
19 QShortcut, QKeySequence, QDesktopServices 19 QShortcut, QKeySequence, QDesktopServices
20 if qVersion() >= "5.0.0":
21 from PyQt4.QtGui import QScreen
20 22
21 from E5Gui import E5FileDialog, E5MessageBox 23 from E5Gui import E5FileDialog, E5MessageBox
22 24
23 from .Ui_SnapWidget import Ui_SnapWidget 25 from .Ui_SnapWidget import Ui_SnapWidget
24 26
348 self.__grabberWidget.hide() 350 self.__grabberWidget.hide()
349 self.__grabTimer.stop() 351 self.__grabTimer.stop()
350 352
351 if self.__mode == SnapWidget.ModeFullscreen: 353 if self.__mode == SnapWidget.ModeFullscreen:
352 desktop = QApplication.desktop() 354 desktop = QApplication.desktop()
353 self.__snapshot = QPixmap.grabWindow(desktop.winId(), 355 if qVersion() >= "5.0.0":
354 desktop.x(), desktop.y(), desktop.width(), desktop.height()) 356 self.__snapshot = QScreen.grabWindow(desktop.winId(),
357 desktop.x(), desktop.y(), desktop.width(), desktop.height())
358 else:
359 self.__snapshot = QPixmap.grabWindow(desktop.winId(),
360 desktop.x(), desktop.y(), desktop.width(), desktop.height())
355 elif self.__mode == SnapWidget.ModeScreen: 361 elif self.__mode == SnapWidget.ModeScreen:
356 desktop = QApplication.desktop() 362 desktop = QApplication.desktop()
357 screenId = desktop.screenNumber(QCursor.pos()) 363 screenId = desktop.screenNumber(QCursor.pos())
358 geom = desktop.screenGeometry(screenId) 364 geom = desktop.screenGeometry(screenId)
359 x = geom.x() 365 x = geom.x()
360 y = geom.y() 366 y = geom.y()
361 self.__snapshot = QPixmap.grabWindow( 367 if qVersion() >= "5.0.0":
362 desktop.winId(), x, y, geom.width(), geom.height()) 368 self.__snapshot = QScreen.grabWindow(
369 desktop.winId(), x, y, geom.width(), geom.height())
370 else:
371 self.__snapshot = QPixmap.grabWindow(
372 desktop.winId(), x, y, geom.width(), geom.height())
363 else: 373 else:
364 self.__snapshot = QPixmap() 374 self.__snapshot = QPixmap()
365 375
366 self.__redisplay() 376 self.__redisplay()
367 self.__modified = True 377 self.__modified = True

eric ide

mercurial