KateTextLine Class Reference

`#include <katetextline.h>`

Inheritance diagram for KateTextLine:

## Public Types

enum | Flags { flagNoOtherData = 1, flagHlContinue = 2, flagAutoWrapped = 4, flagFoldingColumnsOutdated = 8, flagNoIndentationBasedFolding = 16, flagNoIndentationBasedFoldingAtStart = 32 }
typedef KSharedPtr< KateTextLine > | Ptr

## Public Member Functions

| KateTextLine ()
| ~KateTextLine ()
void | setFoldingColumnsOutdated (bool set)
bool | foldingColumnsOutdated ()
uint | length () const
bool | hlLineContinue () const
bool | isAutoWrapped () const
int | firstChar () const
int | lastChar () const
int | nextNonSpaceChar (uint pos) const
int | previousNonSpaceChar (uint pos) const
QChar | getChar (uint pos) const
const QChar * | text () const
uchar * | attributes () const
const QString & | string () const
QString | string (uint startCol, uint length) const
const QChar * | firstNonSpace () const
uint | indentDepth (uint tabwidth) const
int | cursorX (uint pos, uint tabChars) const
uint | lengthWithTabs (uint tabChars) const
bool | stringAtPos (uint pos, const QString &match) const
bool | startingWith (const QString &match) const
bool | endingWith (const QString &match) const
bool | searchText (uint startCol, const QString &text, uint *foundAtCol, uint *matchLen, bool casesensitive=true, bool backwards=false)
bool | searchText (uint startCol, const QRegExp &regexp, uint *foundAtCol, uint *matchLen, bool backwards=false)
uchar | attribute (uint pos) const
const QMemArray< short > & | ctxArray () const
const bool | noIndentBasedFolding () const
const bool | noIndentBasedFoldingAtStart () const
const QMemArray< uint > & | foldingListArray () const
const QMemArray< unsigned short > & | indentationDepthArray () const
void | insertText (uint pos, uint insLen, const QChar *insText, uchar *insAttribs=0)
void | removeText (uint pos, uint delLen)
void | truncate (uint newLen)
void | setHlLineContinue (bool cont)
void | setAutoWrapped (bool wrapped)
void | setContext (QMemArray< short > &val)
void | setNoIndentBasedFolding (bool val)
void | setNoIndentBasedFoldingAtStart (bool val)
void | setFoldingList (QMemArray< uint > &val)
void | setIndentationDepth (QMemArray< unsigned short > &val)
uint | dumpSize (bool withHighlighting) const
char * | dump (char *buf, bool withHighlighting) const
char * | restore (char *buf)

## Detailed Description

The KateTextLine represents a line of text.

A text line that contains the text, an attribute for each character, an attribute for the free space behind the last character and a context number for the syntax highlight. The attribute stores the index to a table that contains fonts and colors and also if a character is selected.

Definition at line 41 of file katetextline.h.

## Member Typedef Documentation

typedef KSharedPtr<KateTextLine> KateTextLine::Ptr

Define a Shared-Pointer type.

Definition at line 47 of file katetextline.h.

## Member Enumeration Documentation

enum KateTextLine::Flags

Used Flags.

Definition at line 53 of file katetextline.h.

## Constructor & Destructor Documentation

KateTextLine::KateTextLine | ( |  | ) |

Constructor Creates an empty text line with given attribute and syntax highlight context.

Definition at line 30 of file katetextline.cpp.

KateTextLine::~KateTextLine | ( |  | ) |

Destructor.

Definition at line 35 of file katetextline.cpp.

## Member Function Documentation

uchar KateTextLine::attribute | ( | uint | pos | ) | const

inline

Gets the attribute at the given position use KRenderer::attributes to get the KTextAttribute for this.

Parameters

  pos | position of attribute requested

Returns
  value of attribute

See also
  attributes

Definition at line 271 of file katetextline.h.

uchar* KateTextLine::attributes | ( |  | ) | const

inline

Highlighting array The size of this is string().length()

This contains the index for the attributes (so you can only have a maximum of 2^8 different highlighting styles in a document)

To turn this into actual attributes (bold, green, etc), you need to feed these values into KRenderer::attributes

e.g: m_renderer->attributes(attributes[3]);

Returns
  hl-attributes array

Definition at line 167 of file katetextline.h.

const QMemArray<short>& KateTextLine::ctxArray | ( |  | ) | const

inline

context stack

Returns
  context stack

Definition at line 281 of file katetextline.h.

int KateTextLine::cursorX | ( | uint | pos,
|  | uint | tabChars
| ) |  | const

Returns the x position of the cursor at the given position, which depends on the number of tab characters.

Parameters

  pos | position in chars
  tabChars | tabulator width in chars

Returns
  position with tabulators calculated

Definition at line 237 of file katetextline.cpp.

char * KateTextLine::dump | ( | char * | buf,
|  | bool | withHighlighting
| ) |  | const

Dumps the line to *buf and counts buff dumpSize bytes up as return value.

Parameters

  buf | buffer to dump to
  withHighlighting | dump hl data, too?

Returns
  buffer index after dumping

Definition at line 335 of file katetextline.cpp.

uint KateTextLine::dumpSize | ( | bool | withHighlighting | ) | const

inline

Methodes for dump/restore of the line in the buffer.

Dumpsize in bytes

Parameters

  withHighlighting | should we dump the hl, too?

Returns
  size of line for dumping

Definition at line 384 of file katetextline.h.

bool KateTextLine::endingWith | ( | const QString & | match | ) | const

Is the line ending with the given string.

Parameters

  match | string to test

Returns
  does the line end with given string?

Definition at line 219 of file katetextline.cpp.

int KateTextLine::firstChar | ( |  | ) | const

Returns the position of the first non-whitespace character.

Returns
  position of first non-whitespace char or -1 if there is none

Definition at line 142 of file katetextline.cpp.

const QChar * KateTextLine::firstNonSpace | ( |  | ) | const

Gets a null terminated pointer to first non space char.

Returns
  array of QChars starting at first non-whitespace char

Definition at line 152 of file katetextline.cpp.

bool KateTextLine::foldingColumnsOutdated | ( |  | ) |

inline

folding columns outdated ?

Returns
  folding columns outdated?

Definition at line 90 of file katetextline.h.

const QMemArray<uint>& KateTextLine::foldingListArray | ( |  | ) | const

inline

folding list

Returns
  folding array

Definition at line 292 of file katetextline.h.

QChar KateTextLine::getChar | ( | uint | pos | ) | const

inline

Gets the char at the given position.

Parameters

  pos | position

Returns
  character at the given position or QChar::null if position is beyond the length of the string

Definition at line 145 of file katetextline.h.

bool KateTextLine::hlLineContinue | ( |  | ) | const

inline

has the line the hl continue flag set

Returns
  hl continue set?

Definition at line 103 of file katetextline.h.

const QMemArray<unsigned short>& KateTextLine::indentationDepthArray | ( |  | ) | const

inline

indentation stack

Returns
  indentation array

Definition at line 298 of file katetextline.h.

uint KateTextLine::indentDepth | ( | uint | tabwidth | ) | const

indentation depth of this line

Parameters

  tabwidth | width of the tabulators

Returns
  indentation width

Definition at line 158 of file katetextline.cpp.

void KateTextLine::insertText | ( | uint | pos,
|  | uint | insLen,
|  | const QChar * | insText,
|  | uchar * | insAttribs = `0`
| ) |  |

insert text into line

Parameters

  pos | insert position
  insLen | insert length
  insText | text to insert
  insAttribs | attributes for the insert text

Definition at line 39 of file katetextline.cpp.

bool KateTextLine::isAutoWrapped | ( |  | ) | const

inline

was this line automagically wrapped

Returns
  line auto-wrapped

Definition at line 109 of file katetextline.h.

int KateTextLine::lastChar | ( |  | ) | const

Returns the position of the last non-whitespace character.

Returns
  position of last non-whitespace char or -1 if there is none

Definition at line 147 of file katetextline.cpp.

uint KateTextLine::length | ( |  | ) | const

inline

Returns the length.

Returns
  length of text in line

Definition at line 97 of file katetextline.h.

uint KateTextLine::lengthWithTabs | ( | uint | tabChars | ) | const

Returns the text length with tabs calced in.

Parameters

  tabChars | tabulator width in chars

Returns
  text length

Definition at line 256 of file katetextline.cpp.

int KateTextLine::nextNonSpaceChar | ( | uint | pos | ) | const

Find the position of the next char that is not a space.

Parameters

  pos | Column of the character which is examined first.

Returns
  True if the specified or a following character is not a space Otherwise false.

Definition at line 110 of file katetextline.cpp.

const bool KateTextLine::noIndentBasedFolding | ( |  | ) | const

inline

Returns
  true if any context at the line end has the noIndentBasedFolding flag set

Definition at line 286 of file katetextline.h.

int KateTextLine::previousNonSpaceChar | ( | uint | pos | ) | const

Find the position of the previous char that is not a space.

Parameters

  pos | Column of the character which is examined first.

Returns
  The position of the first none-whitespace character preceeding pos, or -1 if none is found.

Definition at line 124 of file katetextline.cpp.

void KateTextLine::removeText | ( | uint | pos,
|  | uint | delLen
| ) |  |

remove text at given position

Parameters

  pos | start position of remove
  delLen | length to remove

Definition at line 76 of file katetextline.cpp.

char * KateTextLine::restore | ( | char * | buf | ) |

Restores the line from *buf and counts buff dumpSize bytes up as return value.

Parameters

  buf | buffer to restore from

Returns
  buffer index after restoring

Definition at line 383 of file katetextline.cpp.

bool KateTextLine::searchText | ( | uint | startCol,
|  | const QString & | text,
|  | uint * | foundAtCol,
|  | uint * | matchLen,
|  | bool | casesensitive = `true`,
|  | bool | backwards = `false`
| ) |  |

search given string

Parameters

  startCol | column to start search
  text | string to search for
  foundAtCol | column where text was found
  matchLen | length of matching
  casesensitive | should search be case-sensitive
  backwards | search backwards?

Returns
  string found?

Definition at line 273 of file katetextline.cpp.

bool KateTextLine::searchText | ( | uint | startCol,
|  | const QRegExp & | regexp,
|  | uint * | foundAtCol,
|  | uint * | matchLen,
|  | bool | backwards = `false`
| ) |  |

search given regexp

Parameters

  startCol | column to start search
  regexp | regex to search for
  foundAtCol | column where text was found
  matchLen | length of matching
  backwards | search backwards?

Returns
  regexp found?

Definition at line 304 of file katetextline.cpp.

void KateTextLine::setAutoWrapped | ( | bool | wrapped | ) |

inline

auto-wrapped

Parameters

  wrapped | line was wrapped?

Definition at line 336 of file katetextline.h.

void KateTextLine::setContext | ( | QMemArray< short > & | val | ) |

inline

Sets the syntax highlight context number.

Parameters

  val | new context array

Definition at line 346 of file katetextline.h.

void KateTextLine::setFoldingColumnsOutdated | ( | bool | set | ) |

inline

Methods to get data.

Set the flag that only positions have changed, not folding region begins/ends themselve

Definition at line 83 of file katetextline.h.

void KateTextLine::setFoldingList | ( | QMemArray< uint > & | val | ) |

inline

update folding list

Parameters

  val | new folding list

Definition at line 367 of file katetextline.h.

void KateTextLine::setHlLineContinue | ( | bool | cont | ) |

inline

set hl continue flag

Parameters

  cont | continue flag?

Definition at line 326 of file katetextline.h.

void KateTextLine::setIndentationDepth | ( | QMemArray< unsigned short > & | val | ) |

inline

update indentation stack

Parameters

  val | new indentation stack

Definition at line 373 of file katetextline.h.

void KateTextLine::setNoIndentBasedFolding | ( | bool | val | ) |

inline

sets if for the next line indent based folding should be disabled

Definition at line 351 of file katetextline.h.

bool KateTextLine::startingWith | ( | const QString & | match | ) | const

Is the line starting with the given string.

Parameters

  match | string to test

Returns
  does line start with given string?

Definition at line 202 of file katetextline.cpp.

const QString& KateTextLine::string | ( |  | ) | const

inline

Gets a QString.

Returns
  text of line as QString reference

Definition at line 173 of file katetextline.h.

QString KateTextLine::string | ( | uint | startCol,
|  | uint | length
| ) |  | const

inline

Gets a substring.

Parameters

  startCol | start column of substring
  length | length of substring

Returns
  wanted substring

Definition at line 181 of file katetextline.h.

bool KateTextLine::stringAtPos | ( | uint | pos,
|  | const QString & | match
| ) |  | const

Can we find the given string at the given position.

Parameters

  pos | startpostion of given string
  match | string to match at given pos

Returns
  did the string match?

Definition at line 180 of file katetextline.cpp.

const QChar* KateTextLine::text | ( |  | ) | const

inline

Gets the text as a unicode representation.

Returns
  text of this line as QChar array

Definition at line 151 of file katetextline.h.

void KateTextLine::truncate | ( | uint | newLen | ) |

Truncates the textline to the new length.

Parameters

  newLen | new length of line

Definition at line 101 of file katetextline.cpp.

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

- katetextline.h
- katetextline.cpp

KDE Home | KDE Accessibility Home | Description of Access Keys