Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-21 09:23:15

0001 // Copyright (C) 2016 The Qt Company Ltd.
0002 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
0003 // Qt-Security score:significant reason:default
0004 
0005 #ifndef QABSTRACTPRINTDIALOG_H
0006 #define QABSTRACTPRINTDIALOG_H
0007 
0008 #include <QtPrintSupport/qtprintsupportglobal.h>
0009 
0010 #include <QtWidgets/qdialog.h>
0011 
0012 QT_REQUIRE_CONFIG(printdialog);
0013 
0014 QT_BEGIN_NAMESPACE
0015 
0016 class QAbstractPrintDialogPrivate;
0017 class QPrinter;
0018 
0019 class Q_PRINTSUPPORT_EXPORT QAbstractPrintDialog : public QDialog
0020 {
0021     Q_DECLARE_PRIVATE(QAbstractPrintDialog)
0022     Q_OBJECT
0023 
0024 public:
0025     // Keep in sync with QPrinter::PrintRange
0026     enum PrintRange {
0027         AllPages,
0028         Selection,
0029         PageRange,
0030         CurrentPage
0031     };
0032 
0033     enum PrintDialogOption {
0034         PrintToFile             = 0x0001,
0035         PrintSelection          = 0x0002,
0036         PrintPageRange          = 0x0004,
0037         PrintShowPageSize       = 0x0008,
0038         PrintCollateCopies      = 0x0010,
0039         PrintCurrentPage        = 0x0040
0040     };
0041     Q_ENUM(PrintDialogOption)
0042 
0043     Q_DECLARE_FLAGS(PrintDialogOptions, PrintDialogOption)
0044     Q_FLAG(PrintDialogOptions)
0045 
0046     explicit QAbstractPrintDialog(QPrinter *printer, QWidget *parent = nullptr);
0047     ~QAbstractPrintDialog();
0048 
0049     void setOptionTabs(const QList<QWidget*> &tabs);
0050 
0051     void setPrintRange(PrintRange range);
0052     PrintRange printRange() const;
0053 
0054     void setMinMax(int min, int max);
0055     int minPage() const;
0056     int maxPage() const;
0057 
0058     void setFromTo(int fromPage, int toPage);
0059     int fromPage() const;
0060     int toPage() const;
0061 
0062     QPrinter *printer() const;
0063 
0064 protected:
0065     QAbstractPrintDialog(QAbstractPrintDialogPrivate &ptr, QPrinter *printer, QWidget *parent = nullptr);
0066 
0067 private:
0068     Q_DISABLE_COPY(QAbstractPrintDialog)
0069 
0070 };
0071 
0072 Q_DECLARE_OPERATORS_FOR_FLAGS(QAbstractPrintDialog::PrintDialogOptions)
0073 
0074 QT_END_NAMESPACE
0075 
0076 #endif // QABSTRACTPRINTDIALOG_H