summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSune Vuorela <sune@vuorela.dk>2025-01-15 13:28:43 +0100
committerAlbert Astals Cid <aacid@kde.org>2025-01-15 23:03:25 +0000
commit69469de7ad8d72bf2b23d96a95394a45bc8ca2ea (patch)
tree3e385fd512f3008e70936f22aed55881e2658799
parentac53e421182487f1b016398556a1d7ddc9b0a77f (diff)
Fewer goostring pointers
Also more const functions and pointers
-rw-r--r--glib/poppler-document.cc14
-rw-r--r--poppler/Annot.cc2
-rw-r--r--poppler/Catalog.cc6
-rw-r--r--poppler/Catalog.h4
-rw-r--r--poppler/FileSpec.cc27
-rw-r--r--poppler/FileSpec.h18
-rw-r--r--poppler/Gfx.cc2
-rw-r--r--poppler/OptionalContent.cc36
-rw-r--r--poppler/OptionalContent.h24
-rw-r--r--poppler/PDFDoc.h2
-rw-r--r--qt5/src/poppler-optcontent-private.h6
-rw-r--r--qt5/src/poppler-optcontent.cc8
-rw-r--r--qt5/src/poppler-optcontent.h2
-rw-r--r--qt5/tests/check_optcontent.cpp4
-rw-r--r--qt6/src/poppler-optcontent-private.h6
-rw-r--r--qt6/src/poppler-optcontent.cc8
-rw-r--r--qt6/src/poppler-optcontent.h2
-rw-r--r--qt6/tests/check_optcontent.cpp4
18 files changed, 75 insertions, 100 deletions
diff --git a/glib/poppler-document.cc b/glib/poppler-document.cc
index 90777ff5..4d8ef632 100644
--- a/glib/poppler-document.cc
+++ b/glib/poppler-document.cc
@@ -3222,12 +3222,11 @@ static void layer_free(Layer *layer)
g_slice_free(Layer, layer);
}
-static GList *get_optional_content_rbgroups(OCGs *ocg)
+static GList *get_optional_content_rbgroups(const OCGs *ocg)
{
- Array *rb;
GList *groups = nullptr;
- rb = ocg->getRBGroupsArray();
+ const Array *rb = ocg->getRBGroupsArray();
if (rb) {
int i, j;
@@ -3276,7 +3275,7 @@ GList *_poppler_document_get_layer_rbgroup(PopplerDocument *document, Layer *lay
return nullptr;
}
-static GList *get_optional_content_items_sorted(OCGs *ocg, Layer *parent, Array *order)
+static GList *get_optional_content_items_sorted(const OCGs *ocg, Layer *parent, const Array *order)
{
GList *items = nullptr;
Layer *last_item = parent;
@@ -3309,12 +3308,11 @@ static GList *get_optional_content_items_sorted(OCGs *ocg, Layer *parent, Array
return g_list_reverse(items);
}
-static GList *get_optional_content_items(OCGs *ocg)
+static GList *get_optional_content_items(const OCGs *ocg)
{
- Array *order;
GList *items = nullptr;
- order = ocg->getOrderArray();
+ const Array *order = ocg->getOrderArray();
if (order) {
items = get_optional_content_items_sorted(ocg, nullptr, order);
@@ -3337,7 +3335,7 @@ GList *_poppler_document_get_layers(PopplerDocument *document)
{
if (!document->layers) {
Catalog *catalog = document->doc->getCatalog();
- OCGs *ocg = catalog->getOptContentConfig();
+ const OCGs *ocg = catalog->getOptContentConfig();
if (!ocg) {
return nullptr;
diff --git a/poppler/Annot.cc b/poppler/Annot.cc
index 4d5b851d..68451a08 100644
--- a/poppler/Annot.cc
+++ b/poppler/Annot.cc
@@ -2020,7 +2020,7 @@ bool Annot::isVisible(bool printing)
}
// check the OC
- OCGs *optContentConfig = doc->getCatalog()->getOptContentConfig();
+ const OCGs *optContentConfig = doc->getCatalog()->getOptContentConfig();
if (optContentConfig) {
if (!optContentConfig->optContentIsVisible(&oc)) {
return false;
diff --git a/poppler/Catalog.cc b/poppler/Catalog.cc
index a6b090c4..867a38a7 100644
--- a/poppler/Catalog.cc
+++ b/poppler/Catalog.cc
@@ -118,10 +118,9 @@ Catalog::Catalog(PDFDoc *docA)
// get the Optional Content dictionary
Object optContentProps = catDict.dictLookup("OCProperties");
if (optContentProps.isDict()) {
- optContent = new OCGs(&optContentProps, xref);
+ optContent = std::make_unique<OCGs>(optContentProps, xref);
if (!optContent->isOk()) {
- delete optContent;
- optContent = nullptr;
+ optContent.reset();
}
}
@@ -151,7 +150,6 @@ Catalog::~Catalog()
delete jsNameTree;
delete pageLabelInfo;
delete form;
- delete optContent;
delete viewerPrefs;
delete structTreeRoot;
}
diff --git a/poppler/Catalog.h b/poppler/Catalog.h
index f41fa8bb..0b5ebacc 100644
--- a/poppler/Catalog.h
+++ b/poppler/Catalog.h
@@ -211,7 +211,7 @@ public:
void removeFormFromAcroForm(const Ref formRef);
void setAcroFormModified();
- OCGs *getOptContentConfig() { return optContent; }
+ const OCGs *getOptContentConfig() { return optContent.get(); }
int getPDFMajorVersion() const { return catalogPdfMajorVersion; }
int getPDFMinorVersion() const { return catalogPdfMinorVersion; }
@@ -296,7 +296,7 @@ private:
Object outline; // outline dictionary
Object acroForm; // AcroForm dictionary
Object viewerPreferences; // ViewerPreference dictionary
- OCGs *optContent; // Optional Content groups
+ std::unique_ptr<OCGs> optContent; // Optional Content groups
bool ok; // true if catalog is valid
PageLabelInfo *pageLabelInfo; // info about page labels
PageMode pageMode; // page mode
diff --git a/poppler/FileSpec.cc b/poppler/FileSpec.cc
index 550c5fff..3bd809da 100644
--- a/poppler/FileSpec.cc
+++ b/poppler/FileSpec.cc
@@ -50,7 +50,7 @@ EmbFile::EmbFile(Object &&efStream)
// subtype is normally the mimetype
Object subtypeName = dataDict->lookup("Subtype");
if (subtypeName.isName()) {
- m_mimetype = new GooString(subtypeName.getName());
+ m_mimetype = std::make_unique<GooString>(subtypeName.getName());
}
// paramDict corresponds to Table 3.42 in the PDF1.6 spec
@@ -58,12 +58,12 @@ EmbFile::EmbFile(Object &&efStream)
if (paramDict.isDict()) {
Object paramObj = paramDict.dictLookup("ModDate");
if (paramObj.isString()) {
- m_modDate = new GooString(paramObj.getString());
+ m_modDate = paramObj.getString()->copy();
}
paramObj = paramDict.dictLookup("CreationDate");
if (paramObj.isString()) {
- m_createDate = new GooString(paramObj.getString());
+ m_createDate = paramObj.getString()->copy();
}
paramObj = paramDict.dictLookup("Size");
@@ -73,19 +73,13 @@ EmbFile::EmbFile(Object &&efStream)
paramObj = paramDict.dictLookup("CheckSum");
if (paramObj.isString()) {
- m_checksum = new GooString(paramObj.getString());
+ m_checksum = paramObj.getString()->copy();
}
}
}
}
-EmbFile::~EmbFile()
-{
- delete m_createDate;
- delete m_modDate;
- delete m_checksum;
- delete m_mimetype;
-}
+EmbFile::~EmbFile() = default;
bool EmbFile::save(const std::string &path)
{
@@ -149,10 +143,7 @@ FileSpec::FileSpec(const Object *fileSpecA)
}
}
-FileSpec::~FileSpec()
-{
- delete embFile;
-}
+FileSpec::~FileSpec() = default;
EmbFile *FileSpec::getEmbeddedFile()
{
@@ -161,13 +152,13 @@ EmbFile *FileSpec::getEmbeddedFile()
}
if (embFile) {
- return embFile;
+ return embFile.get();
}
XRef *xref = fileSpec.getDict()->getXRef();
- embFile = new EmbFile(fileStream.fetch(xref));
+ embFile = std::make_unique<EmbFile>(fileStream.fetch(xref));
- return embFile;
+ return embFile.get();
}
Object FileSpec::newFileSpecObject(XRef *xref, GooFile *file, const std::string &fileName)
diff --git a/poppler/FileSpec.h b/poppler/FileSpec.h
index 13b450d4..a5470091 100644
--- a/poppler/FileSpec.h
+++ b/poppler/FileSpec.h
@@ -30,10 +30,10 @@ public:
EmbFile &operator=(const EmbFile &) = delete;
int size() const { return m_size; }
- const GooString *modDate() const { return m_modDate; }
- const GooString *createDate() const { return m_createDate; }
- const GooString *checksum() const { return m_checksum; }
- const GooString *mimeType() const { return m_mimetype; }
+ const GooString *modDate() const { return m_modDate.get(); }
+ const GooString *createDate() const { return m_createDate.get(); }
+ const GooString *checksum() const { return m_checksum.get(); }
+ const GooString *mimeType() const { return m_mimetype.get(); }
Object *streamObject() { return &m_objStr; }
Stream *stream() { return isOk() ? m_objStr.getStream() : nullptr; }
bool isOk() const { return m_objStr.isStream(); }
@@ -43,10 +43,10 @@ private:
bool save2(FILE *f);
int m_size;
- GooString *m_createDate;
- GooString *m_modDate;
- GooString *m_checksum;
- GooString *m_mimetype;
+ std::unique_ptr<GooString> m_createDate;
+ std::unique_ptr<GooString> m_modDate;
+ std::unique_ptr<GooString> m_checksum;
+ std::unique_ptr<GooString> m_mimetype;
Object m_objStr;
};
@@ -76,7 +76,7 @@ private:
std::unique_ptr<GooString> fileName; // F, UF, DOS, Mac, Unix
std::unique_ptr<GooString> platformFileName;
Object fileStream; // Ref to F entry in UF
- EmbFile *embFile;
+ std::unique_ptr<EmbFile> embFile;
std::unique_ptr<GooString> desc; // Desc
};
diff --git a/poppler/Gfx.cc b/poppler/Gfx.cc
index 21000832..4e269100 100644
--- a/poppler/Gfx.cc
+++ b/poppler/Gfx.cc
@@ -5038,7 +5038,7 @@ void Gfx::opBeginMarkedContent(Object args[], int numArgs)
// push a new stack entry
pushMarkedContent();
- OCGs *contentConfig = catalog->getOptContentConfig();
+ const OCGs *contentConfig = catalog->getOptContentConfig();
const char *name0 = args[0].getName();
if (strncmp(name0, "OC", 2) == 0 && contentConfig) {
if (numArgs >= 2) {
diff --git a/poppler/OptionalContent.cc b/poppler/OptionalContent.cc
index 597833df..b337a5f3 100644
--- a/poppler/OptionalContent.cc
+++ b/poppler/OptionalContent.cc
@@ -16,7 +16,6 @@
#include <config.h>
-#include "goo/gmem.h"
#include "goo/GooString.h"
#include "Error.h"
#include "OptionalContent.h"
@@ -31,12 +30,12 @@
//------------------------------------------------------------------------
-OCGs::OCGs(Object *ocgObject, XRef *xref) : m_xref(xref)
+OCGs::OCGs(const Object &ocgObject, XRef *xref) : m_xref(xref)
{
// we need to parse the dictionary here, and build optionalContentGroups
ok = true;
- Object ocgList = ocgObject->dictLookup("OCGs");
+ Object ocgList = ocgObject.dictLookup("OCGs");
if (!ocgList.isArray()) {
error(errSyntaxError, -1, "Expected the optional content group list, but wasn't able to find it, or it isn't an Array");
ok = false;
@@ -60,7 +59,7 @@ OCGs::OCGs(Object *ocgObject, XRef *xref) : m_xref(xref)
optionalContentGroups.emplace(ocgRef.getRef(), std::move(thisOptionalContentGroup));
}
- Object defaultOcgConfig = ocgObject->dictLookup("D");
+ Object defaultOcgConfig = ocgObject.dictLookup("D");
if (!defaultOcgConfig.isDict()) {
error(errSyntaxError, -1, "Expected the default config, but wasn't able to find it, or it isn't a Dictionary");
ok = false;
@@ -119,13 +118,13 @@ bool OCGs::hasOCGs() const
return !(optionalContentGroups.empty());
}
-OptionalContentGroup *OCGs::findOcgByRef(const Ref ref)
+OptionalContentGroup *OCGs::findOcgByRef(const Ref ref) const
{
const auto ocg = optionalContentGroups.find(ref);
return ocg != optionalContentGroups.end() ? ocg->second.get() : nullptr;
}
-bool OCGs::optContentIsVisible(const Object *dictRef)
+bool OCGs::optContentIsVisible(const Object *dictRef) const
{
Dict *dict;
bool result = true;
@@ -184,7 +183,7 @@ bool OCGs::optContentIsVisible(const Object *dictRef)
return result;
}
-bool OCGs::evalOCVisibilityExpr(const Object *expr, int recursion)
+bool OCGs::evalOCVisibilityExpr(const Object *expr, int recursion) const
{
OptionalContentGroup *ocg;
bool ret;
@@ -231,7 +230,7 @@ bool OCGs::evalOCVisibilityExpr(const Object *expr, int recursion)
return ret;
}
-bool OCGs::allOn(Array *ocgArray)
+bool OCGs::allOn(Array *ocgArray) const
{
for (int i = 0; i < ocgArray->getLength(); ++i) {
const Object &ocgItem = ocgArray->getNF(i);
@@ -245,7 +244,7 @@ bool OCGs::allOn(Array *ocgArray)
return true;
}
-bool OCGs::allOff(Array *ocgArray)
+bool OCGs::allOff(Array *ocgArray) const
{
for (int i = 0; i < ocgArray->getLength(); ++i) {
const Object &ocgItem = ocgArray->getNF(i);
@@ -259,7 +258,7 @@ bool OCGs::allOff(Array *ocgArray)
return true;
}
-bool OCGs::anyOn(Array *ocgArray)
+bool OCGs::anyOn(Array *ocgArray) const
{
for (int i = 0; i < ocgArray->getLength(); ++i) {
const Object &ocgItem = ocgArray->getNF(i);
@@ -273,7 +272,7 @@ bool OCGs::anyOn(Array *ocgArray)
return false;
}
-bool OCGs::anyOff(Array *ocgArray)
+bool OCGs::anyOff(Array *ocgArray) const
{
for (int i = 0; i < ocgArray->getLength(); ++i) {
const Object &ocgItem = ocgArray->getNF(i);
@@ -295,7 +294,7 @@ OptionalContentGroup::OptionalContentGroup(Dict *ocgDict) : m_name(nullptr)
if (!ocgName.isString()) {
error(errSyntaxWarning, -1, "Expected the name of the OCG, but wasn't able to find it, or it isn't a String");
} else {
- m_name = new GooString(ocgName.getString());
+ m_name = ocgName.getString()->copy();
}
viewState = printState = ocUsageUnset;
@@ -326,15 +325,9 @@ OptionalContentGroup::OptionalContentGroup(Dict *ocgDict) : m_name(nullptr)
}
}
-OptionalContentGroup::OptionalContentGroup(GooString *label)
-{
- m_name = label;
- m_state = On;
-}
-
const GooString *OptionalContentGroup::getName() const
{
- return m_name;
+ return m_name.get();
}
void OptionalContentGroup::setRef(const Ref ref)
@@ -347,7 +340,4 @@ Ref OptionalContentGroup::getRef() const
return m_ref;
}
-OptionalContentGroup::~OptionalContentGroup()
-{
- delete m_name;
-}
+OptionalContentGroup::~OptionalContentGroup() = default;
diff --git a/poppler/OptionalContent.h b/poppler/OptionalContent.h
index 22b9409e..0e3ddc7f 100644
--- a/poppler/OptionalContent.h
+++ b/poppler/OptionalContent.h
@@ -31,7 +31,7 @@ class OptionalContentGroup;
class POPPLER_PRIVATE_EXPORT OCGs
{
public:
- OCGs(Object *ocgObject, XRef *xref);
+ OCGs(const Object &ocgObject, XRef *xref);
OCGs(const OCGs &) = delete;
OCGs &operator=(const OCGs &) = delete;
@@ -42,21 +42,21 @@ public:
bool hasOCGs() const;
const std::unordered_map<Ref, std::unique_ptr<OptionalContentGroup>> &getOCGs() const { return optionalContentGroups; }
- OptionalContentGroup *findOcgByRef(const Ref ref);
+ OptionalContentGroup *findOcgByRef(const Ref ref) const;
- Array *getOrderArray() { return (order.isArray() && order.arrayGetLength() > 0) ? order.getArray() : nullptr; }
- Array *getRBGroupsArray() { return (rbgroups.isArray() && rbgroups.arrayGetLength()) ? rbgroups.getArray() : nullptr; }
+ const Array *getOrderArray() const { return (order.isArray() && order.arrayGetLength() > 0) ? order.getArray() : nullptr; }
+ const Array *getRBGroupsArray() const { return (rbgroups.isArray() && rbgroups.arrayGetLength()) ? rbgroups.getArray() : nullptr; }
- bool optContentIsVisible(const Object *dictRef);
+ bool optContentIsVisible(const Object *dictRef) const;
private:
bool ok;
- bool evalOCVisibilityExpr(const Object *expr, int recursion);
- bool allOn(Array *ocgArray);
- bool allOff(Array *ocgArray);
- bool anyOn(Array *ocgArray);
- bool anyOff(Array *ocgArray);
+ bool evalOCVisibilityExpr(const Object *expr, int recursion) const;
+ bool allOn(Array *ocgArray) const;
+ bool allOff(Array *ocgArray) const;
+ bool anyOn(Array *ocgArray) const;
+ bool anyOff(Array *ocgArray) const;
std::unordered_map<Ref, std::unique_ptr<OptionalContentGroup>> optionalContentGroups;
@@ -86,8 +86,6 @@ public:
explicit OptionalContentGroup(Dict *dict);
- explicit OptionalContentGroup(GooString *label);
-
~OptionalContentGroup();
OptionalContentGroup(const OptionalContentGroup &) = delete;
@@ -105,7 +103,7 @@ public:
UsageState getPrintState() const { return printState; }
private:
- GooString *m_name;
+ std::unique_ptr<GooString> m_name;
Ref m_ref;
State m_state;
UsageState viewState; // suggested state when viewing
diff --git a/poppler/PDFDoc.h b/poppler/PDFDoc.h
index 420f89bd..cf044d6e 100644
--- a/poppler/PDFDoc.h
+++ b/poppler/PDFDoc.h
@@ -174,7 +174,7 @@ public:
Catalog *getCatalog() const { return catalog; }
// Get optional content configuration
- OCGs *getOptContentConfig() const { return catalog->getOptContentConfig(); }
+ const OCGs *getOptContentConfig() const { return catalog->getOptContentConfig(); }
// Get base stream.
BaseStream *getBaseStream() const { return str; }
diff --git a/qt5/src/poppler-optcontent-private.h b/qt5/src/poppler-optcontent-private.h
index 589fb0bc..de08f8f6 100644
--- a/qt5/src/poppler-optcontent-private.h
+++ b/qt5/src/poppler-optcontent-private.h
@@ -97,13 +97,13 @@ private:
class OptContentModelPrivate
{
public:
- OptContentModelPrivate(OptContentModel *qq, OCGs *optContent);
+ OptContentModelPrivate(OptContentModel *qq, const OCGs *optContent);
~OptContentModelPrivate();
OptContentModelPrivate(const OptContentModelPrivate &) = delete;
OptContentModelPrivate &operator=(const OptContentModelPrivate &) = delete;
- void parseRBGroupsArray(Array *rBGroupArray);
+ void parseRBGroupsArray(const Array *rBGroupArray);
OptContentItem *nodeFromIndex(const QModelIndex &index, bool canBeNull = false) const;
QModelIndex indexFromItem(OptContentItem *node, int column) const;
@@ -126,7 +126,7 @@ public:
private:
void addChild(OptContentItem *parent, OptContentItem *child);
- void parseOrderArray(OptContentItem *parentNode, Array *orderArray);
+ void parseOrderArray(OptContentItem *parentNode, const Array *orderArray);
};
}
diff --git a/qt5/src/poppler-optcontent.cc b/qt5/src/poppler-optcontent.cc
index 99b3f45e..82946669 100644
--- a/qt5/src/poppler-optcontent.cc
+++ b/qt5/src/poppler-optcontent.cc
@@ -152,7 +152,7 @@ QSet<OptContentItem *> OptContentItem::recurseListChildren(bool includeMe) const
return ret;
}
-OptContentModelPrivate::OptContentModelPrivate(OptContentModel *qq, OCGs *optContent) : q(qq)
+OptContentModelPrivate::OptContentModelPrivate(OptContentModel *qq, const OCGs *optContent) : q(qq)
{
m_rootNode = new OptContentItem();
const auto &ocgs = optContent->getOCGs();
@@ -184,7 +184,7 @@ OptContentModelPrivate::~OptContentModelPrivate()
delete m_rootNode;
}
-void OptContentModelPrivate::parseOrderArray(OptContentItem *parentNode, Array *orderArray)
+void OptContentModelPrivate::parseOrderArray(OptContentItem *parentNode, const Array *orderArray)
{
OptContentItem *lastItem = parentNode;
for (int i = 0; i < orderArray->getLength(); ++i) {
@@ -215,7 +215,7 @@ void OptContentModelPrivate::parseOrderArray(OptContentItem *parentNode, Array *
}
}
-void OptContentModelPrivate::parseRBGroupsArray(Array *rBGroupArray)
+void OptContentModelPrivate::parseRBGroupsArray(const Array *rBGroupArray)
{
if (!rBGroupArray) {
return;
@@ -233,7 +233,7 @@ void OptContentModelPrivate::parseRBGroupsArray(Array *rBGroupArray)
}
}
-OptContentModel::OptContentModel(OCGs *optContent, QObject *parent) : QAbstractItemModel(parent)
+OptContentModel::OptContentModel(const OCGs *optContent, QObject *parent) : QAbstractItemModel(parent)
{
d = new OptContentModelPrivate(this, optContent);
}
diff --git a/qt5/src/poppler-optcontent.h b/qt5/src/poppler-optcontent.h
index a126140e..a886a887 100644
--- a/qt5/src/poppler-optcontent.h
+++ b/qt5/src/poppler-optcontent.h
@@ -74,7 +74,7 @@ public:
void applyLink(LinkOCGState *link);
private:
- explicit OptContentModel(OCGs *optContent, QObject *parent = nullptr);
+ explicit OptContentModel(const OCGs *optContent, QObject *parent = nullptr);
friend class OptContentModelPrivate;
OptContentModelPrivate *d;
diff --git a/qt5/tests/check_optcontent.cpp b/qt5/tests/check_optcontent.cpp
index 9f3c6817..38d159dc 100644
--- a/qt5/tests/check_optcontent.cpp
+++ b/qt5/tests/check_optcontent.cpp
@@ -92,7 +92,7 @@ void TestOptionalContent::checkIsVisible()
PDFDoc *doc = new PDFDoc(std::make_unique<GooString>(TESTDATADIR "/unittestcases/vis_policy_test.pdf"));
QVERIFY(doc);
- OCGs *ocgs = doc->getOptContentConfig();
+ const OCGs *ocgs = doc->getOptContentConfig();
QVERIFY(ocgs);
XRef *xref = doc->getXRef();
@@ -164,7 +164,7 @@ void TestOptionalContent::checkVisibilitySetting()
PDFDoc *doc = new PDFDoc(std::make_unique<GooString>(TESTDATADIR "/unittestcases/vis_policy_test.pdf"));
QVERIFY(doc);
- OCGs *ocgs = doc->getOptContentConfig();
+ const OCGs *ocgs = doc->getOptContentConfig();
QVERIFY(ocgs);
XRef *xref = doc->getXRef();
diff --git a/qt6/src/poppler-optcontent-private.h b/qt6/src/poppler-optcontent-private.h
index 589fb0bc..de08f8f6 100644
--- a/qt6/src/poppler-optcontent-private.h
+++ b/qt6/src/poppler-optcontent-private.h
@@ -97,13 +97,13 @@ private:
class OptContentModelPrivate
{
public:
- OptContentModelPrivate(OptContentModel *qq, OCGs *optContent);
+ OptContentModelPrivate(OptContentModel *qq, const OCGs *optContent);
~OptContentModelPrivate();
OptContentModelPrivate(const OptContentModelPrivate &) = delete;
OptContentModelPrivate &operator=(const OptContentModelPrivate &) = delete;
- void parseRBGroupsArray(Array *rBGroupArray);
+ void parseRBGroupsArray(const Array *rBGroupArray);
OptContentItem *nodeFromIndex(const QModelIndex &index, bool canBeNull = false) const;
QModelIndex indexFromItem(OptContentItem *node, int column) const;
@@ -126,7 +126,7 @@ public:
private:
void addChild(OptContentItem *parent, OptContentItem *child);
- void parseOrderArray(OptContentItem *parentNode, Array *orderArray);
+ void parseOrderArray(OptContentItem *parentNode, const Array *orderArray);
};
}
diff --git a/qt6/src/poppler-optcontent.cc b/qt6/src/poppler-optcontent.cc
index 209a9927..16975606 100644
--- a/qt6/src/poppler-optcontent.cc
+++ b/qt6/src/poppler-optcontent.cc
@@ -151,7 +151,7 @@ QSet<OptContentItem *> OptContentItem::recurseListChildren(bool includeMe) const
return ret;
}
-OptContentModelPrivate::OptContentModelPrivate(OptContentModel *qq, OCGs *optContent) : q(qq)
+OptContentModelPrivate::OptContentModelPrivate(OptContentModel *qq, const OCGs *optContent) : q(qq)
{
m_rootNode = new OptContentItem();
const auto &ocgs = optContent->getOCGs();
@@ -183,7 +183,7 @@ OptContentModelPrivate::~OptContentModelPrivate()
delete m_rootNode;
}
-void OptContentModelPrivate::parseOrderArray(OptContentItem *parentNode, Array *orderArray)
+void OptContentModelPrivate::parseOrderArray(OptContentItem *parentNode, const Array *orderArray)
{
OptContentItem *lastItem = parentNode;
for (int i = 0; i < orderArray->getLength(); ++i) {
@@ -214,7 +214,7 @@ void OptContentModelPrivate::parseOrderArray(OptContentItem *parentNode, Array *
}
}
-void OptContentModelPrivate::parseRBGroupsArray(Array *rBGroupArray)
+void OptContentModelPrivate::parseRBGroupsArray(const Array *rBGroupArray)
{
if (!rBGroupArray) {
return;
@@ -232,7 +232,7 @@ void OptContentModelPrivate::parseRBGroupsArray(Array *rBGroupArray)
}
}
-OptContentModel::OptContentModel(OCGs *optContent, QObject *parent) : QAbstractItemModel(parent)
+OptContentModel::OptContentModel(const OCGs *optContent, QObject *parent) : QAbstractItemModel(parent)
{
d = new OptContentModelPrivate(this, optContent);
}
diff --git a/qt6/src/poppler-optcontent.h b/qt6/src/poppler-optcontent.h
index 6b9467a3..25336ca2 100644
--- a/qt6/src/poppler-optcontent.h
+++ b/qt6/src/poppler-optcontent.h
@@ -71,7 +71,7 @@ public:
void applyLink(LinkOCGState *link);
private:
- explicit OptContentModel(OCGs *optContent, QObject *parent = nullptr);
+ explicit OptContentModel(const OCGs *optContent, QObject *parent = nullptr);
friend class OptContentModelPrivate;
OptContentModelPrivate *d;
diff --git a/qt6/tests/check_optcontent.cpp b/qt6/tests/check_optcontent.cpp
index f36290af..918b3cb2 100644
--- a/qt6/tests/check_optcontent.cpp
+++ b/qt6/tests/check_optcontent.cpp
@@ -83,7 +83,7 @@ void TestOptionalContent::checkIsVisible()
PDFDoc *doc = new PDFDoc(std::make_unique<GooString>(TESTDATADIR "/unittestcases/vis_policy_test.pdf"));
QVERIFY(doc);
- OCGs *ocgs = doc->getOptContentConfig();
+ const OCGs *ocgs = doc->getOptContentConfig();
QVERIFY(ocgs);
XRef *xref = doc->getXRef();
@@ -155,7 +155,7 @@ void TestOptionalContent::checkVisibilitySetting()
PDFDoc *doc = new PDFDoc(std::make_unique<GooString>(TESTDATADIR "/unittestcases/vis_policy_test.pdf"));
QVERIFY(doc);
- OCGs *ocgs = doc->getOptContentConfig();
+ const OCGs *ocgs = doc->getOptContentConfig();
QVERIFY(ocgs);
XRef *xref = doc->getXRef();