KTextEditor
KTextEditor::AnnotationModel Class Reference
#include <annotationinterface.h>
Inheritance diagram for KTextEditor::AnnotationModel:

Detailed Description
An model for providing line annotation information.
Introduction
AnnotationModel is a model-like interface that can be implemented to provide annotation information for each line in a document. It provides means to retrieve several kinds of data for a given line in the document.Implementing a AnnotationModel
The public interface of this class is loosely based on the QAbstractItemModel interfaces. It only has a single method to override which is the data() method to provide the actual data for a line and role combination.
- Since:
- 4.1
Definition at line 52 of file annotationinterface.h.
Signals | |
void | lineChanged (int line) |
void | reset () |
Public Member Functions | |
virtual QVariant | data (int line, Qt::ItemDataRole role) const =0 |
virtual | ~AnnotationModel () |
Constructor & Destructor Documentation
virtual KTextEditor::AnnotationModel::~AnnotationModel | ( | ) | [inline, virtual] |
Definition at line 57 of file annotationinterface.h.
Member Function Documentation
virtual QVariant KTextEditor::AnnotationModel::data | ( | int | line, | |
Qt::ItemDataRole | role | |||
) | const [pure virtual] |
data() is used to retrieve the information needed to present the annotation information from the annotation model.
The provider should return useful information for the line and the data role.
- Parameters:
-
line the line for which the data is to be retrieved role the role to identify which kind of annotation is to be retrieved
- Returns:
- a QVariant that contains the data for the given role. The following roles are supported:
void KTextEditor::AnnotationModel::lineChanged | ( | int | line | ) | [signal] |
The model should emit the signal lineChanged() when a line has to be updated.
- Note:
- Kate Part implementation details: lineChanged() repaints the whole annotation border automatically.
void KTextEditor::AnnotationModel::reset | ( | ) | [signal] |
The model should emit the signal reset() when the text of almost all lines changes.
In most cases it is enough to call lineChanged().
- Note:
- Kate Part implementation details: Whenever reset() is emitted Kate Part iterates over all lines of the document. Kate Part searches for the longest text to determine the annotation border's width.
- See also:
- lineChanged()
The documentation for this class was generated from the following file: