diff options
Diffstat (limited to 'src/pdfwidgets/qpdfpageselector_p.h')
-rw-r--r-- | src/pdfwidgets/qpdfpageselector_p.h | 34 |
1 files changed, 27 insertions, 7 deletions
diff --git a/src/pdfwidgets/qpdfpageselector_p.h b/src/pdfwidgets/qpdfpageselector_p.h index 6954f39cd..8e961f1d2 100644 --- a/src/pdfwidgets/qpdfpageselector_p.h +++ b/src/pdfwidgets/qpdfpageselector_p.h @@ -17,22 +17,42 @@ #include "qpdfpageselector.h" +#include <QtWidgets/qspinbox.h> + #include <QPointer> QT_BEGIN_NAMESPACE -class QPdfPageSelectorPrivate +class QPdfPageSelectorSpinBox : public QSpinBox { - Q_DECLARE_PUBLIC(QPdfPageSelector) - + Q_OBJECT public: - QPdfPageSelectorPrivate(QPdfPageSelector *q); + QPdfPageSelectorSpinBox() : QPdfPageSelectorSpinBox(nullptr) {} + explicit QPdfPageSelectorSpinBox(QWidget *parent); + ~QPdfPageSelectorSpinBox(); + + void setDocument(QPdfDocument *document); + QPdfDocument *document() const { return m_document.get(); } + +Q_SIGNALS: + void _q_documentChanged(QPdfDocument *document); +protected: + int valueFromText(const QString &text) const override; + QString textFromValue(int value) const override; + QValidator::State validate(QString &text, int &pos) const override; + +private: void documentStatusChanged(); +private: + QPointer<QPdfDocument> m_document; + QMetaObject::Connection m_documentStatusChangedConnection; +}; - QPdfPageSelector *q_ptr; - QPointer<QPdfDocument> document; - QMetaObject::Connection documentStatusChangedConnection; +class QPdfPageSelectorPrivate +{ +public: + QPdfPageSelectorSpinBox *spinBox; }; QT_END_NAMESPACE |