summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/painting/qprinter.cpp17
-rw-r--r--src/gui/painting/qprinter.h2
-rw-r--r--tests/auto/qprinter/tst_qprinter.cpp9
3 files changed, 28 insertions, 0 deletions
diff --git a/src/gui/painting/qprinter.cpp b/src/gui/painting/qprinter.cpp
index 882e6bc..882f994 100644
--- a/src/gui/painting/qprinter.cpp
+++ b/src/gui/painting/qprinter.cpp
@@ -1286,6 +1286,23 @@ int QPrinter::numCopies() const
/*!
+ Returns the number of copies that will be printed. The default
+ value is 1.
+
+ This function always returns the actual value specified in the print
+ dialog or using setNumCopies().
+
+ \sa setNumCopies(), numCopies();
+*/
+int QPrinter::actualNumCopies() const
+{
+ Q_D(const QPrinter);
+ return qt_printerRealNumCopies(d->paintEngine);
+}
+
+
+
+/*!
Sets the number of copies to be printed to \a numCopies.
The printer driver reads this setting and prints the specified
diff --git a/src/gui/painting/qprinter.h b/src/gui/painting/qprinter.h
index 46419f4..16f2182 100644
--- a/src/gui/painting/qprinter.h
+++ b/src/gui/painting/qprinter.h
@@ -197,6 +197,8 @@ public:
void setNumCopies(int);
int numCopies() const;
+ int actualNumCopies() const;
+
void setPaperSource(PaperSource);
PaperSource paperSource() const;
diff --git a/tests/auto/qprinter/tst_qprinter.cpp b/tests/auto/qprinter/tst_qprinter.cpp
index 89be43f..aa64f13 100644
--- a/tests/auto/qprinter/tst_qprinter.cpp
+++ b/tests/auto/qprinter/tst_qprinter.cpp
@@ -105,6 +105,8 @@ private slots:
void testCustomPageSizes();
void printDialogCompleter();
+ void testActualNumCopies();
+
private:
};
@@ -959,5 +961,12 @@ void tst_QPrinter::printDialogCompleter()
#endif
}
+void tst_QPrinter::testActualNumCopies()
+{
+ QPrinter p;
+ p.setNumCopies(15);
+ QCOMPARE(p.actualNumCopies(), 15);
+}
+
QTEST_MAIN(tst_QPrinter)
#include "tst_qprinter.moc"