Base interface for annotations.
virtual QDateTime GetDate() const =0
Returns the date the annotation was created.
virtual AnnotationType GetAnnotationType() const =0
Returns the type of the annotation.
virtual QString GetText() const =0
Returns the text contained in the annotation.
virtual PageRelativeRectBase GetBoundary() const =0
Returns the bounding rectangle of the annotation.
virtual QString GetAuthor() const =0
Returns the author of the annotation.
The interface for AnnotationType::Caret annotations.
virtual ~ICaretAnnotation()
The interface for AnnotationType::Highlight annotations.
virtual ~IHighlightAnnotation()
virtual QList< QPolygonF > GetPolygons() const =0
Returns the shape of the highlight.
The interface for AnnotationType::Link annotations.
virtual ~ILinkAnnotation()
virtual ILink_ptr GetLink() const =0
Returns the link corresponding to this annotation.
The interface for AnnotationType::Text annotations.
virtual ~ITextAnnotation()
virtual bool IsInline() const =0
Returns whether this is an inline annotation.
std::shared_ptr< ILinkAnnotation > ILinkAnnotation_ptr
std::shared_ptr< IAnnotation > IAnnotation_ptr
std::shared_ptr< IHighlightAnnotation > IHighlightAnnotation_ptr
std::shared_ptr< ILink > ILink_ptr
std::shared_ptr< ITextAnnotation > ITextAnnotation_ptr
std::shared_ptr< ICaretAnnotation > ICaretAnnotation_ptr
AnnotationType
Defines an annotation type.
@ Highlight
A highlighted block in the text.
@ Other
Another type of annotation.
@ Link
An annotation with a link.
@ Text
A simple text annotation.
@ Caret
A caret pointing to some text inserted.