diff options
author | Jay Berkenbilt <ejb@ql.org> | 2024-01-05 18:16:13 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2024-01-05 23:10:32 +0100 |
commit | a0e70b370afcb628caabb3e8610d600fea6966f3 (patch) | |
tree | 1a86fd7d0a654a5db10ba351a824640dbe4d0ad0 /libqpdf/QPDFJob_json.cc | |
parent | 1921e44ca7ba50b48b1baa78d147b52fe1aae19a (diff) | |
download | qpdf-a0e70b370afcb628caabb3e8610d600fea6966f3.tar.zst |
Wiring for --set-page-labels: manual (non-bisectable commit)
This commit contains only the manual changes. It is separated for
clarity. This commit would not pass CI because it lacks the automated
changes, which appear in the next commit.
Diffstat (limited to 'libqpdf/QPDFJob_json.cc')
-rw-r--r-- | libqpdf/QPDFJob_json.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/libqpdf/QPDFJob_json.cc b/libqpdf/QPDFJob_json.cc index d44652f4..754cb81b 100644 --- a/libqpdf/QPDFJob_json.cc +++ b/libqpdf/QPDFJob_json.cc @@ -66,6 +66,7 @@ namespace std::shared_ptr<QPDFJob::PagesConfig> c_pages; std::shared_ptr<QPDFJob::UOConfig> c_uo; std::shared_ptr<QPDFJob::EncConfig> c_enc; + std::vector<std::string> accumulated_args; }; } // namespace @@ -565,6 +566,26 @@ Handlers::setupUnderlayPassword() } void +Handlers::setupSetPageLabels() +{ + accumulated_args.clear(); + addParameter([this](char const* p) { accumulated_args.push_back(p); }); +} + +void +Handlers::endSetPageLabelsArray() +{ + c_main->setPageLabels(accumulated_args); + accumulated_args.clear(); +} + +void +Handlers::beginSetPageLabelsArray(JSON) +{ + // nothing needed +} + +void QPDFJob::initializeFromJson(std::string const& json, bool partial) { std::list<std::string> errors; |