eric6/Snapshot/SnapshotDefaultGrabber.py

changeset 8265
0090cfa83159
parent 8218
7c09585bd960
equal deleted inserted replaced
8264:f95dde35d0ab 8265:0090cfa83159
49 49
50 @return tuple of supported screenshot modes 50 @return tuple of supported screenshot modes
51 @rtype tuple of SnapshotModes 51 @rtype tuple of SnapshotModes
52 """ 52 """
53 return ( 53 return (
54 SnapshotModes.Fullscreen, 54 SnapshotModes.FULLSCREEN,
55 SnapshotModes.SelectedScreen, 55 SnapshotModes.SELECTEDSCREEN,
56 SnapshotModes.Rectangle, 56 SnapshotModes.RECTANGLE,
57 SnapshotModes.Freehand, 57 SnapshotModes.FREEHAND,
58 SnapshotModes.Ellipse, 58 SnapshotModes.ELLIPSE,
59 ) 59 )
60 60
61 def grab(self, mode, delay=0, captureCursor=False, 61 def grab(self, mode, delay=0, captureCursor=False,
62 captureDecorations=False): 62 captureDecorations=False):
63 """ 63 """
82 82
83 def __grabTimerTimeout(self): 83 def __grabTimerTimeout(self):
84 """ 84 """
85 Private slot to perform a delayed grab operation. 85 Private slot to perform a delayed grab operation.
86 """ 86 """
87 if self.__mode == SnapshotModes.Rectangle: 87 if self.__mode == SnapshotModes.RECTANGLE:
88 self.__grabRectangle() 88 self.__grabRectangle()
89 elif self.__mode == SnapshotModes.Ellipse: 89 elif self.__mode == SnapshotModes.ELLIPSE:
90 self.__grabEllipse() 90 self.__grabEllipse()
91 elif self.__mode == SnapshotModes.Freehand: 91 elif self.__mode == SnapshotModes.FREEHAND:
92 self.__grabFreehand() 92 self.__grabFreehand()
93 else: 93 else:
94 self.__performGrab(self.__mode) 94 self.__performGrab(self.__mode)
95 95
96 def __startUndelayedGrab(self): 96 def __startUndelayedGrab(self):
97 """ 97 """
98 Private slot to perform an undelayed grab operation. 98 Private slot to perform an undelayed grab operation.
99 """ 99 """
100 if self.__mode == SnapshotModes.Rectangle: 100 if self.__mode == SnapshotModes.RECTANGLE:
101 self.__grabRectangle() 101 self.__grabRectangle()
102 elif self.__mode == SnapshotModes.Ellipse: 102 elif self.__mode == SnapshotModes.ELLIPSE:
103 self.__grabEllipse() 103 self.__grabEllipse()
104 elif self.__mode == SnapshotModes.Freehand: 104 elif self.__mode == SnapshotModes.FREEHAND:
105 self.__grabFreehand() 105 self.__grabFreehand()
106 else: 106 else:
107 if Globals.isMacPlatform(): 107 if Globals.isMacPlatform():
108 self.__performGrab(self.__mode) 108 self.__performGrab(self.__mode)
109 else: 109 else:
145 """ 145 """
146 self.__grabberWidget.releaseMouse() 146 self.__grabberWidget.releaseMouse()
147 self.__grabberWidget.hide() 147 self.__grabberWidget.hide()
148 self.__grabTimer.stop() 148 self.__grabTimer.stop()
149 149
150 if mode == SnapshotModes.Fullscreen: 150 if mode == SnapshotModes.FULLSCREEN:
151 screen = QGuiApplication.screens()[0] 151 screen = QGuiApplication.screens()[0]
152 vgeom = screen.availableVirtualGeometry() 152 vgeom = screen.availableVirtualGeometry()
153 snapshot = screen.grabWindow( 153 snapshot = screen.grabWindow(
154 0, vgeom.x(), vgeom.y(), vgeom.width(), vgeom.height()) 154 0, vgeom.x(), vgeom.y(), vgeom.width(), vgeom.height())
155 elif mode == SnapshotModes.SelectedScreen: 155 elif mode == SnapshotModes.SELECTEDSCREEN:
156 screen = QGuiApplication.screenAt(QCursor.pos()) 156 screen = QGuiApplication.screenAt(QCursor.pos())
157 sgeom = screen.geometry() 157 sgeom = screen.geometry()
158 if Globals.isMacPlatform(): 158 if Globals.isMacPlatform():
159 # macOS variant 159 # macOS variant
160 snapshot = screen.grabWindow( 160 snapshot = screen.grabWindow(

eric ide

mercurial