• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

KTextEditor

KTextEditor::AnnotationModel

KTextEditor::AnnotationModel Class Reference

An model for providing line annotation information. More...

#include <annotationinterface.h>

Inheritance diagram for KTextEditor::AnnotationModel:

Inheritance graph
[legend]

List of all members.


Signals

void lineChanged (int line)
void reset ()

Public Member Functions

virtual QVariant data (int line, Qt::ItemDataRole role) const =0
virtual ~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
See also:
KTextEditor::AnnotationInterface, KTextEditor::AnnotationViewInterface

Definition at line 52 of file annotationinterface.h.


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.

The following roles are supported:

  • Qt::DisplayRole - a short display text to be placed in the border
  • Qt::TooltipRole - a tooltip information, longer text possible
  • Qt::BackgroundRole - a brush to be used to paint the background on the border
  • Qt::ForegroundRole - a brush to be used to paint the text on the border

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.

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:
  • annotationinterface.h

KTextEditor

Skip menu "KTextEditor"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.7
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal