# eric5.Snapshot.SnapWidget

Module implementing the snapshot widget.

### Global Attributes

None

### Classes

SnapWidget | Class implementing the snapshot widget.

### Functions

None

## SnapWidget

Class implementing the snapshot widget.

### Derived from

QWidget, Ui_SnapWidget

### Class Attributes

ModeEllipse
ModeFreehand
ModeFullscreen
ModeRectangle
ModeScreen

### Class Methods

None

### Methods

SnapWidget | Constructor
__autoIncFilename | Private method to auto-increment the file name.
__captured | Private slot to show a preview of the snapshot.
__dragSnapshot | Private slot handling the dragging of the preview picture.
__grabEllipse | Private method to grab an elliptical screen region.
__grabFreehand | Private method to grab a non-rectangular screen region.
__grabRectangle | Private method to grab a rectangular screen region.
__grabTimerTimeout | Private slot to perform a delayed grab operation.
__initFileFilters | Private method to define the supported image file filters.
__initShortcuts | Private method to initialize the keyboard shortcuts.
__performGrab | Private method to perform a screen grab other than a selected region.
__quickSave | Private slot to save the snapshot bypassing the file selection dialog.
__redisplay | Private method to redisplay the window.
__saveImage | Private method to save the snapshot.
__startUndelayedGrab | Private slot to perform an undelayed grab operation.
__updateCaption | Private method to update the window caption.
__updatePreview | Private slot to update the preview picture.
closeEvent | Protected method handling the close event.
eventFilter | Public method to handle event for other objects.
on_copyButton_clicked | Private slot to copy the snapshot to the clipboard.
on_copyPreviewButton_clicked | Private slot to copy the snapshot preview to the clipboard.
on_saveButton_clicked | Private slot to save the snapshot.
on_takeButton_clicked | Private slot to take a snapshot.
resizeEvent | Protected method handling a resizing of the window.

### Static Methods

None

#### SnapWidget (Constructor)

SnapWidget(parent=None)

Constructor

parent
  reference to the parent widget (QWidget)

#### SnapWidget.__autoIncFilename

__autoIncFilename()

Private method to auto-increment the file name.

#### SnapWidget.__captured

__captured(pixmap)

Private slot to show a preview of the snapshot.

pixmap
  pixmap of the snapshot (QPixmap)

#### SnapWidget.__dragSnapshot

__dragSnapshot()

Private slot handling the dragging of the preview picture.

#### SnapWidget.__grabEllipse

__grabEllipse()

Private method to grab an elliptical screen region.

#### SnapWidget.__grabFreehand

__grabFreehand()

Private method to grab a non-rectangular screen region.

#### SnapWidget.__grabRectangle

__grabRectangle()

Private method to grab a rectangular screen region.

#### SnapWidget.__grabTimerTimeout

__grabTimerTimeout()

Private slot to perform a delayed grab operation.

#### SnapWidget.__initFileFilters

__initFileFilters()

Private method to define the supported image file filters.

#### SnapWidget.__initShortcuts

__initShortcuts()

Private method to initialize the keyboard shortcuts.

#### SnapWidget.__performGrab

__performGrab()

Private method to perform a screen grab other than a selected region.

#### SnapWidget.__quickSave

__quickSave()

Private slot to save the snapshot bypassing the file selection dialog.

#### SnapWidget.__redisplay

__redisplay()

Private method to redisplay the window.

#### SnapWidget.__saveImage

__saveImage(fileName)

Private method to save the snapshot.

fileName
  name of the file to save to (string)

Returns:
  flag indicating success (boolean)

#### SnapWidget.__startUndelayedGrab

__startUndelayedGrab()

Private slot to perform an undelayed grab operation.

#### SnapWidget.__updateCaption

__updateCaption()

Private method to update the window caption.

#### SnapWidget.__updatePreview

__updatePreview()

Private slot to update the preview picture.

#### SnapWidget.closeEvent

closeEvent(evt)

Protected method handling the close event.

evt
  close event (QCloseEvent)

#### SnapWidget.eventFilter

eventFilter(obj, evt)

Public method to handle event for other objects.

obj
  reference to the object (QObject)
evt
  reference to the event (QEvent)

Returns:
  flag indicating that the event should be filtered out (boolean)

#### SnapWidget.on_copyButton_clicked

on_copyButton_clicked()

Private slot to copy the snapshot to the clipboard.

#### SnapWidget.on_copyPreviewButton_clicked

on_copyPreviewButton_clicked()

Private slot to copy the snapshot preview to the clipboard.

#### SnapWidget.on_saveButton_clicked

on_saveButton_clicked()

Private slot to save the snapshot.

#### SnapWidget.on_takeButton_clicked

on_takeButton_clicked()

Private slot to take a snapshot.

#### SnapWidget.resizeEvent

resizeEvent(evt)

Protected method handling a resizing of the window.

evt
  resize event (QResizeEvent)

Up