aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/qpdf-c.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libqpdf/qpdf-c.cc')
-rw-r--r--libqpdf/qpdf-c.cc30
1 files changed, 2 insertions, 28 deletions
diff --git a/libqpdf/qpdf-c.cc b/libqpdf/qpdf-c.cc
index 468811b3..bde0ac72 100644
--- a/libqpdf/qpdf-c.cc
+++ b/libqpdf/qpdf-c.cc
@@ -61,33 +61,6 @@ _qpdf_data::_qpdf_data() :
{
}
-namespace
-{
- class ProgressReporter: public QPDFWriter::ProgressReporter
- {
- public:
- ProgressReporter(void (*handler)(int, void*), void* data);
- virtual ~ProgressReporter() = default;
- virtual void reportProgress(int);
-
- private:
- void (*handler)(int, void*);
- void* data;
- };
-} // namespace
-
-ProgressReporter::ProgressReporter(void (*handler)(int, void*), void* data) :
- handler(handler),
- data(data)
-{
-}
-
-void
-ProgressReporter::reportProgress(int progress)
-{
- this->handler(progress, this->data);
-}
-
// must set qpdf->filename and qpdf->password
static void
call_read(qpdf_data qpdf)
@@ -851,7 +824,8 @@ qpdf_register_progress_reporter(
QTC::TC("qpdf", "qpdf-c registered progress reporter");
qpdf->qpdf_writer->registerProgressReporter(
std::shared_ptr<QPDFWriter::ProgressReporter>(
- new ProgressReporter(report_progress, data)));
+ new QPDFWriter::FunctionProgressReporter(
+ std::bind(report_progress, std::placeholders::_1, data))));
}
QPDF_ERROR_CODE