QPrintPreviewWidget Class
The QPrintPreviewWidget class provides a widget for previewing page layouts for printer output. More...
#include <QPrintPreviewWidget>
Inherits: QWidget.
This class was introduced in QtPrintSupport 4.4.
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) |
- 215 public functions inherited from QWidget
- 12 public functions inherited from QPaintDevice
- 31 public functions inherited from QObject
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) |
Signals
void | paintRequested(QPrinter * printer) |
void | previewChanged() |
Additional Inherited Members
- 58 properties inherited from QWidget
- 1 property inherited from QObject
- 1 public variable inherited from QObject
- 4 static public members inherited from QWidget
- 9 static public members inherited from QObject
- 37 protected functions inherited from QWidget
- 1 protected function inherited from QPaintDevice
- 9 protected functions inherited from QObject
- 1 protected slot inherited from QWidget
- 1 protected type inherited from QPaintDevice
- 2 protected variables inherited from QObject
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:
- 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.
- 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 QtPrintSupport 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%.