KateSuperRange Class Reference

`#include <katesupercursor.h>`

Inherits QObject, and KateRange.

Inherited by KateArbitraryHighlightRange.

## Public Types

enum | InsertBehaviour { DoNotExpand = 0, ExpandLeft = 0x1, ExpandRight = 0x2 }

## Public Slots

void | slotTagRange ()

## Signals

void | positionChanged ()
void | positionUnChanged ()
void | contentsChanged ()
void | boundaryDeleted ()
void | eliminated ()
void | tagRange (KateSuperRange *range)

## Public Member Functions

| KateSuperRange (KateSuperCursor *start, KateSuperCursor *end, QObject *parent=0L, const char *name=0L)
| KateSuperRange (KateDocument *doc, const KateRange &range, QObject *parent=0L, const char *name=0L)
| KateSuperRange (KateDocument *doc, const KateTextCursor &start, const KateTextCursor &end, QObject *parent=0L, const char *name=0L)
virtual KateTextCursor & | start ()
virtual KateTextCursor & | end ()
virtual const KateTextCursor & | start () const
virtual const KateTextCursor & | end () const
void | allowZeroLength (bool yes=true)
KateSuperCursor & | superStart ()
const KateSuperCursor & | superStart () const
KateSuperCursor & | superEnd ()
const KateSuperCursor & | superEnd () const
int | behaviour () const
void | setBehaviour (int behaviour)
virtual bool | isValid () const
bool | owns (const KateTextCursor &cursor) const
bool | includes (const KateTextCursor &cursor) const
bool | includes (uint lineNum) const
bool | includesWholeLine (uint lineNum) const
bool | boundaryAt (const KateTextCursor &cursor) const
bool | boundaryOn (uint lineNum) const

## Friends

class | KateSuperRangeList

## Detailed Description

Represents a range of text, from the start() to the end().

Also tracks its position and emits useful signals.

Definition at line 168 of file katesupercursor.h.

## Member Enumeration Documentation

enum KateSuperRange::InsertBehaviour

Determine how the range reacts to characters inserted immediately outside the range.

Enumerator
DoNotExpand | Don't expand to encapsulate new characters in either direction. This is the default.
ExpandLeft | Expand to encapsulate new characters to the left of the range.
ExpandRight | Expand to encapsulate new characters to the right of the range.

Definition at line 176 of file katesupercursor.h.

## Constructor & Destructor Documentation

KateSuperRange::KateSuperRange | ( | KateSuperCursor * | start,
|  | KateSuperCursor * | end,
|  | QObject * | parent = `0L`,
|  | const char * | name = `0L`
| ) |  |

Constructor.

Takes posession of `start` and `end`.

Definition at line 280 of file katesupercursor.cpp.

## Member Function Documentation

int KateSuperRange::behaviour | ( |  | ) | const

Returns how this range reacts to characters inserted immediately outside the range.

Definition at line 393 of file katesupercursor.cpp.

bool KateSuperRange::boundaryAt | ( | const KateTextCursor & | cursor | ) | const

Returns whether `cursor` is the site of a boundary of this range.

Definition at line 437 of file katesupercursor.cpp.

void KateSuperRange::boundaryDeleted | ( |  | ) |

signal

Either cursor's surrounding characters were both deleted.

bool KateSuperRange::boundaryOn | ( | uint | lineNum | ) | const

Returns whether there is a boundary of this range on `line`.

Definition at line 442 of file katesupercursor.cpp.

void KateSuperRange::contentsChanged | ( |  | ) |

signal

The contents of the range changed.

void KateSuperRange::eliminated | ( |  | ) |

signal

The range now contains no characters (ie.

the start and end cursors are the same).

To eliminate this range under different conditions, connect the other signal directly to this signal.

bool KateSuperRange::includes | ( | const KateTextCursor & | cursor | ) | const

Returns true if the range includes `cursor` 's character.

Returns false if `cursor` == end().

Definition at line 422 of file katesupercursor.cpp.

bool KateSuperRange::includes | ( | uint | lineNum | ) | const

Returns true if the range includes `line`.

Definition at line 427 of file katesupercursor.cpp.

bool KateSuperRange::includesWholeLine | ( | uint | lineNum | ) | const

Returns true if the range totally encompasses `line`.

Definition at line 432 of file katesupercursor.cpp.

bool KateSuperRange::isValid | ( |  | ) | const

virtual

Start and end must be valid and start <= end.

Definition at line 404 of file katesupercursor.cpp.

bool KateSuperRange::owns | ( | const KateTextCursor & | cursor | ) | const

This is for use where the ranges are used in a heirachy, ie.

their parents are KateSuperRanges which completely encapsulate them.

Todo:
  constrain children when their position changes deliberately; eliminate() children when they are equivalent to their parents

Returns
  true if the range contains the cursor and no children also contain it; false otherwise.

Definition at line 409 of file katesupercursor.cpp.

void KateSuperRange::positionChanged | ( |  | ) |

signal

More interesting signals that aren't worth implementing here: firstCharDeleted: start()::charDeleted() lastCharDeleted: end()::previousCharDeleted()

The range's position changed.

void KateSuperRange::positionUnChanged | ( |  | ) |

signal

The range's position was unchanged.

void KateSuperRange::setBehaviour | ( | int | behaviour | ) |

Determine how the range should react to characters inserted immediately outside the range.

TODO does this need a custom function to enable determining of the behavior based on the text that is inserted / deleted?

See also
  InsertBehaviour

Definition at line 398 of file katesupercursor.cpp.

KateSuperCursor & KateSuperRange::superEnd | ( |  | ) |

Returns the super end cursor.

Definition at line 383 of file katesupercursor.cpp.

KateSuperCursor & KateSuperRange::superStart | ( |  | ) |

Returns the super start cursor.

Definition at line 373 of file katesupercursor.cpp.

void KateSuperRange::tagRange | ( | KateSuperRange * | range | ) |

signal

Indicates the region needs re-drawing.

The documentation for this class was generated from the following files:

- katesupercursor.h
- katesupercursor.cpp

KDE Home | KDE Accessibility Home | Description of Access Keys