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

Kate

KateSuperRange Class Reference

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

#include <katesupercursor.h>

Inheritance diagram for KateSuperRange:

Inheritance graph
[legend]

List of all members.


Public Types

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

Public Slots

void slotTagRange ()

Signals

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

Public Member Functions

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

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.

KateSuperRange::KateSuperRange ( KateDocument *  doc,
const KateRange &  range,
QObject *  parent = 0L,
const char *  name = 0L 
)

Definition at line 293 of file katesupercursor.cpp.

KateSuperRange::KateSuperRange ( KateDocument *  doc,
const KateTextCursor &  start,
const KateTextCursor &  end,
QObject *  parent = 0L,
const char *  name = 0L 
)

Definition at line 306 of file katesupercursor.cpp.

KateSuperRange::~KateSuperRange (  )  [virtual]

Definition at line 342 of file katesupercursor.cpp.


Member Function Documentation

void KateSuperRange::allowZeroLength ( bool  yes = true  )  [inline]

Definition at line 200 of file katesupercursor.h.

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.

const KateTextCursor & KateSuperRange::end (  )  const [virtual]

Implements KateRange.

Definition at line 368 of file katesupercursor.cpp.

KateTextCursor & KateSuperRange::end (  )  [virtual]

Implements KateRange.

Definition at line 363 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::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::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.

Implements KateRange.

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.

void KateSuperRange::slotTagRange (  )  [slot]

Definition at line 517 of file katesupercursor.cpp.

const KateTextCursor & KateSuperRange::start (  )  const [virtual]

Implements KateRange.

Definition at line 358 of file katesupercursor.cpp.

KateTextCursor & KateSuperRange::start (  )  [virtual]

Implements KateRange.

Definition at line 353 of file katesupercursor.cpp.

const KateSuperCursor & KateSuperRange::superEnd (  )  const

Definition at line 388 of file katesupercursor.cpp.

KateSuperCursor & KateSuperRange::superEnd (  ) 

Returns the super end cursor.

Definition at line 383 of file katesupercursor.cpp.

const KateSuperCursor & KateSuperRange::superStart (  )  const

Definition at line 378 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

Kate

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

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
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