Issue #128: Create list of markup annotations

This commit is contained in:
Jakub Melka
2023-12-24 19:03:28 +01:00
parent 53849f51e1
commit 89ea815696
10 changed files with 685 additions and 52 deletions

View File

@ -509,6 +509,7 @@ public:
virtual PDFMarkupAnnotation* asMarkupAnnotation() { return nullptr; }
virtual const PDFMarkupAnnotation* asMarkupAnnotation() const { return nullptr; }
virtual bool isReplyTo() const { return false; }
virtual QString getGUICaption() const;
/// Draws the annotation using parameters. Annotation is drawn onto painter,
/// but actual graphics can be drawn outside of annotation's rectangle.
@ -1524,10 +1525,10 @@ public:
/// \param page Page
/// \param[in,out] annotationRectangle Input/output annotation rectangle
QTransform prepareTransformations(const QTransform& pagePointToDevicePointMatrix,
QPaintDevice* device,
const PDFAnnotation::Flags annotationFlags,
const PDFPage* page,
QRectF& annotationRectangle) const;
QPaintDevice* device,
const PDFAnnotation::Flags annotationFlags,
const PDFPage* page,
QRectF& annotationRectangle) const;
/// Returns current appearance stream for given page annotation
/// \param pageAnnotation Page annotation
@ -1549,6 +1550,9 @@ public:
/// Returns true, if any page in the given indices has annotation
bool hasAnyPageAnnotation(const std::vector<PDFInteger>& pageIndices) const;
/// Returns true, if any page in the document has annotation
bool hasAnyPageAnnotation() const;
protected:
void drawWidgetAnnotationHighlight(QRectF annotationRectangle,
const PDFAnnotation* annotation,