KTextEditor::AnnotationInterface Class Referenceabstract

#include <KTextEditor/AnnotationInterface>

Inheritance diagram for KTextEditor::AnnotationInterface:

Public Member Functions

virtual AnnotationModelannotationModel () const =0
virtual void setAnnotationModel (AnnotationModel *model)=0

Detailed Description

A Document extension interface for handling Annotations.


The AnnotationInterface is designed to provide line annotation information for a document. This interface provides means to associate a document with a annotation model, which provides some annotation information for each line in the document.

Setting a model for a Document makes the model data available for all views. If you only want to provide annotations in exactly one view, you can use the AnnotationViewInterface directly. See the AnnotationViewInterface for further details. To summarize, the two use cases are

  • (1) show annotations in all views. This means you set an AnnotationModel with this interface, and then call setAnnotationBorderVisible() for each view.
  • (2) show annotations only in one view. This means to not use this interface. Instead, use the AnnotationViewInterface, which inherits this interface. This means you set a model for the specific View.

If you set a model to the Document and the View, the View's model has higher priority.

Accessing the AnnotationInterface

The AnnotationInterface is an extension interface for a Document, i.e. the Document inherits the interface provided that the used KTextEditor library implements the interface. Use qobject_cast to access the interface:

// document is of type KTextEditor::Document*
auto iface = qobject_cast<KTextEditor::AnnotationInterface*>(document);
if (iface) {
// the implementation supports the interface
// do stuff
} else {
// the implementation does not support the interface

Using the AnnotationInterface

See also
KTextEditor::AnnotationModel, KTextEditor::AnnotationViewInterface

Definition at line 162 of file annotationinterface.h.

Member Function Documentation

virtual AnnotationModel* KTextEditor::AnnotationInterface::annotationModel ( ) const
pure virtual

returns the currently set AnnotationModel or 0 if there's none set

the current AnnotationModel

Implemented in KTextEditor.

virtual void KTextEditor::AnnotationInterface::setAnnotationModel ( AnnotationModel model)
pure virtual

Sets a new AnnotationModel for this document to provide annotation information for each line.

modelthe new AnnotationModel

Implemented in KTextEditor.

The documentation for this class was generated from the following file:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jul 13 2020 22:57:40 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.