Qt Reference Documentation

# QPrintPreviewWidget Class Reference

The QPrintPreviewWidget class provides a widget for previewing page layouts for printer output. More...

     #include <QPrintPreviewWidget>

Inherits: QWidget.

This class was introduced in Qt 4.4.

- List of all members, including inherited members
- Qt 3 support members

## Public Types

enum | ViewMode { SinglePageView, FacingPagesView, AllPagesView }
enum | ZoomMode { CustomZoom, FitToWidth, FitInView }

## Public Functions

| QPrintPreviewWidget ( QPrinter * printer, QWidget * parent = 0, Qt::WindowFlags flags = 0 )
| QPrintPreviewWidget ( QWidget * parent = 0, Qt::WindowFlags flags = 0 )
| ~QPrintPreviewWidget ()
int | currentPage () const
QPrinter::Orientation | orientation () const
int | pageCount () const
ViewMode | viewMode () const
qreal | zoomFactor () const
ZoomMode | zoomMode () const

## Reimplemented Public Functions

virtual void | setVisible ( bool visible )

- 217 public functions inherited from QWidget
- 29 public functions inherited from QObject
- 13 public functions inherited from QPaintDevice

## Public Slots

void | fitInView ()
void | fitToWidth ()
void | print ()
void | setAllPagesViewMode ()
void | setCurrentPage ( int page )
void | setFacingPagesViewMode ()
void | setLandscapeOrientation ()
void | setOrientation ( QPrinter::Orientation orientation )
void | setPortraitOrientation ()
void | setSinglePageViewMode ()
void | setViewMode ( ViewMode mode )
void | setZoomFactor ( qreal factor )
void | setZoomMode ( ZoomMode zoomMode )
void | updatePreview ()
void | zoomIn ( qreal factor = 1.1 )
void | zoomOut ( qreal factor = 1.1 )

- 19 public slots inherited from QWidget
- 1 public slot inherited from QObject

## Signals

void | paintRequested ( QPrinter * printer )
void | previewChanged ()

- 1 signal inherited from QWidget
- 1 signal inherited from QObject

### Additional Inherited Members

- 58 properties inherited from QWidget
- 1 property inherited from QObject
- 4 static public members inherited from QWidget
- 5 static public members inherited from QObject
- 37 protected functions inherited from QWidget
- 7 protected functions inherited from QObject
- 1 protected function inherited from QPaintDevice
- 1 protected slot inherited from QWidget

## Detailed Description

The QPrintPreviewWidget class provides a widget for previewing page layouts for printer output.

QPrintPreviewDialog uses a QPrintPreviewWidget internally, and the purpose of QPrintPreviewWidget is to make it possible to embed the preview into other widgets. It also makes it possible to build a different user interface around it than the default one provided with QPrintPreviewDialog.

Using QPrintPreviewWidget is straightforward:

1. Create the QPrintPreviewWidget

   Construct the QPrintPreviewWidget either by passing in an existing QPrinter object, or have QPrintPreviewWidget create a default constructed QPrinter object for you.

2. Connect the paintRequested() signal to a slot.

   When the widget needs to generate a set of preview pages, a paintRequested() signal will be emitted from the widget. Connect a slot to this signal, and draw onto the QPrinter passed in as a signal parameter. Call QPrinter::newPage(), to start a new page in the preview.

See also QPrinter, QPrintDialog, QPageSetupDialog, and QPrintPreviewDialog.

## Member Type Documentation

### enum QPrintPreviewWidget::ViewMode

This enum is used to describe the view mode of the preview widget.

Constant | Value | Description
--- | --- | ---
`QPrintPreviewWidget::SinglePageView` | `0` | A mode where single pages in the preview is viewed.
`QPrintPreviewWidget::FacingPagesView` | `1` | A mode where the facing pages in the preview is viewed.
`QPrintPreviewWidget::AllPagesView` | `2` | A view mode where all the pages in the preview is viewed.

### enum QPrintPreviewWidget::ZoomMode

This enum is used to describe zoom mode of the preview widget.

Constant | Value | Description
--- | --- | ---
`QPrintPreviewWidget::CustomZoom` | `0` | The zoom is set to a custom zoom value.
`QPrintPreviewWidget::FitToWidth` | `1` | This mode fits the current page to the width of the view.
`QPrintPreviewWidget::FitInView` | `2` | This mode fits the current page inside the view.

## Member Function Documentation

### QPrintPreviewWidget::QPrintPreviewWidget ( QPrinter * printer, QWidget * parent = 0, Qt::WindowFlags flags = 0 )

Constructs a QPrintPreviewWidget based on printer and with parent as the parent widget. The widget flags flags are passed on to the QWidget constructor.

See also QWidget::setWindowFlags().

### QPrintPreviewWidget::QPrintPreviewWidget ( QWidget * parent = 0, Qt::WindowFlags flags = 0 )

This is an overloaded function.

This will cause QPrintPreviewWidget to create an internal, default constructed QPrinter object, which will be used to generate the preview.

### QPrintPreviewWidget::~QPrintPreviewWidget ()

Destroys the QPrintPreviewWidget.

### int QPrintPreviewWidget::currentPage () const

Returns the currently viewed page in the preview.

See also setCurrentPage().

### void QPrintPreviewWidget::fitInView ()`[slot]`

This is a convenience function and is the same as calling `setZoomMode(QPrintPreviewWidget::FitInView)`.

### void QPrintPreviewWidget::fitToWidth ()`[slot]`

This is a convenience function and is the same as calling `setZoomMode(QPrintPreviewWidget::FitToWidth)`.

### QPrinter::Orientation QPrintPreviewWidget::orientation () const

Returns the current orientation of the preview. This value is obtained from the QPrinter object associated with the preview.

See also setOrientation().

### int QPrintPreviewWidget::pageCount () const

Returns the number of pages in the preview.

This function was introduced in Qt 4.6.

### void QPrintPreviewWidget::paintRequested ( QPrinter * printer )`[signal]`

This signal is emitted when the preview widget needs to generate a set of preview pages. printer is the printer associated with this preview widget.

### void QPrintPreviewWidget::previewChanged ()`[signal]`

This signal is emitted whenever the preview widget has changed some internal state, such as the orientation.

### void QPrintPreviewWidget::print ()`[slot]`

Prints the preview to the printer associated with the preview.

### void QPrintPreviewWidget::setAllPagesViewMode ()`[slot]`

This is a convenience function and is the same as calling `setViewMode(QPrintPreviewWidget::AllPagesView)`.

### void QPrintPreviewWidget::setCurrentPage ( int page )`[slot]`

Sets the current page in the preview. This will cause the view to skip to the beginning of page.

See also currentPage().

### void QPrintPreviewWidget::setFacingPagesViewMode ()`[slot]`

This is a convenience function and is the same as calling `setViewMode(QPrintPreviewWidget::FacingPagesView)`.

### void QPrintPreviewWidget::setLandscapeOrientation ()`[slot]`

This is a convenience function and is the same as calling `setOrientation(QPrinter::Landscape)`.

### void QPrintPreviewWidget::setOrientation ( QPrinter::Orientation orientation )`[slot]`

Sets the current orientation to orientation. This value will be set on the QPrinter object associated with the preview.

See also orientation().

### void QPrintPreviewWidget::setPortraitOrientation ()`[slot]`

This is a convenience function and is the same as calling `setOrientation(QPrinter::Portrait)`.

### void QPrintPreviewWidget::setSinglePageViewMode ()`[slot]`

This is a convenience function and is the same as calling `setViewMode(QPrintPreviewWidget::SinglePageView)`.

### void QPrintPreviewWidget::setViewMode ( ViewMode mode )`[slot]`

Sets the view mode to mode. The default view mode is SinglePageView.

See also viewMode().

### void QPrintPreviewWidget::setVisible ( bool visible )`[virtual]`

Reimplemented from QWidget::setVisible().

### void QPrintPreviewWidget::setZoomFactor ( qreal factor )`[slot]`

Sets the zoom factor of the view to factor. For example, a value of 1.0 indicates an unscaled view, which is approximately the size the view will have on paper. A value of 0.5 will halve the size of the view, while a value of 2.0 will double the size of the view.

See also zoomFactor().

### void QPrintPreviewWidget::setZoomMode ( ZoomMode zoomMode )`[slot]`

Sets the zoom mode to zoomMode. The default zoom mode is FitInView.

See also zoomMode(), viewMode(), and setViewMode().

### void QPrintPreviewWidget::updatePreview ()`[slot]`

This function updates the preview, which causes the paintRequested() signal to be emitted.

### ViewMode QPrintPreviewWidget::viewMode () const

Returns the current view mode. The default view mode is SinglePageView.

See also setViewMode().

### qreal QPrintPreviewWidget::zoomFactor () const

Returns the zoom factor of the view.

See also setZoomFactor().

### void QPrintPreviewWidget::zoomIn ( qreal factor = 1.1 )`[slot]`

Zooms the current view in by factor. The default value for factor is 1.1, which means the view will be scaled up by 10%.

### ZoomMode QPrintPreviewWidget::zoomMode () const

Returns the current zoom mode.

See also setZoomMode(), viewMode(), and setViewMode().

### void QPrintPreviewWidget::zoomOut ( qreal factor = 1.1 )`[slot]`

Zooms the current view out by factor. The default value for factor is 1.1, which means the view will be scaled down by 10%.