KateNormalIndent Class Reference

`#include <kateautoindent.h>`

Inheritance diagram for KateNormalIndent:

## Public Slots

virtual void | updateConfig ()
Public Slots inherited from KateAutoIndent
virtual void | updateConfig ()

## Public Member Functions

| KateNormalIndent (KateDocument *doc)
virtual | ~KateNormalIndent ()
virtual bool | canProcessNewLine () const
virtual void | processNewline (KateDocCursor &cur, bool needContinue)
virtual void | processChar (QChar c)
virtual void | processLine (KateDocCursor &)
virtual void | processSection (const KateDocCursor &, const KateDocCursor &)
virtual bool | canProcessLine () const
virtual uint | modeNumber () const
Public Member Functions inherited from KateAutoIndent
| KateAutoIndent (KateDocument *doc)
virtual | ~KateAutoIndent ()

## Public Attributes

uchar | commentAttrib
uchar | doxyCommentAttrib
uchar | regionAttrib
uchar | symbolAttrib
uchar | alertAttrib
uchar | tagAttrib
uchar | wordAttrib
uchar | keywordAttrib
uchar | normalAttrib
uchar | extensionAttrib
uchar | preprocessorAttrib
uchar | stringAttrib
uchar | charAttrib

## Protected Member Functions

bool | isBalanced (KateDocCursor &begin, const KateDocCursor &end, QChar open, QChar close, uint &pos) const
bool | skipBlanks (KateDocCursor &cur, KateDocCursor &max, bool newline) const
uint | measureIndent (KateDocCursor &cur) const
QString | tabString (uint length) const

## Protected Attributes

uint | tabWidth
uint | indentWidth
bool | useSpaces
bool | mixedIndent
bool | keepProfile
Protected Attributes inherited from KateAutoIndent
KateDocument * | doc

## Additional Inherited Members

Static Public Member Functions inherited from KateAutoIndent
static KateAutoIndent * | createIndenter (KateDocument *doc, uint mode)
static QStringList | listModes ()
static QString | modeName (uint mode)
static QString | modeDescription (uint mode)
static uint | modeNumber (const QString &name)
static bool | hasConfigPage (uint mode)
static IndenterConfigPage * | configPage (QWidget *parent, uint mode)

## Detailed Description

Provides Auto-Indent functionality for katepart.

Definition at line 217 of file kateautoindent.h.

## Constructor & Destructor Documentation

KateNormalIndent::KateNormalIndent | ( | KateDocument * | doc | ) |

Constructor.

Parameters

  doc | parent document

Definition at line 186 of file kateautoindent.cpp.

KateNormalIndent::~KateNormalIndent | ( |  | ) |

virtual

Virtual Destructor for the baseclass.

Definition at line 193 of file kateautoindent.cpp.

## Member Function Documentation

virtual bool KateNormalIndent::canProcessLine | ( |  | ) | const

inline virtual

Set to true if an actual implementation of 'processLine' is present.

This is used to prevent a needless Undo action from being created.

Reimplemented from KateAutoIndent.

Reimplemented in KateVarIndent.

Definition at line 274 of file kateautoindent.h.

virtual bool KateNormalIndent::canProcessNewLine | ( |  | ) | const

inline virtual

does this indenter support processNewLine

Returns
  can you do it?

Reimplemented from KateAutoIndent.

Definition at line 244 of file kateautoindent.h.

bool KateNormalIndent::isBalanced | ( | KateDocCursor & | begin,
|  | const KateDocCursor & | end,
|  | QChar | open,
|  | QChar | close,
|  | uint & | pos
| ) |  | const

protected

Determines if the characters open and close are balanced between `begin` and `end` Fills in `pos` with the column position of first opened character if found.

Parameters

  begin | Beginning cursor position.
  end | Ending cursor position where the processing will stop.
  open | The open character.
  close | The closing character which should be matched against `open`.
  pos | Contains the position of the first `open` character in the line.

Returns
  True if `open` and `close` have an equal number of occurances between `begin` and `end`. False otherwise.

Definition at line 282 of file kateautoindent.cpp.

uint KateNormalIndent::measureIndent | ( | KateDocCursor & | cur | ) | const

protected

Measures the indention of the current textline marked by cur.

Parameters

  cur | The cursor position to measure the indent to.

Returns
  The length of the indention in characters.

Definition at line 370 of file kateautoindent.cpp.

virtual uint KateNormalIndent::modeNumber | ( |  | ) | const

inline virtual

Mode index of this mode.

Returns
  modeNumber

Reimplemented from KateAutoIndent.

Reimplemented in KateVarIndent.

Definition at line 280 of file kateautoindent.h.

virtual void KateNormalIndent::processChar | ( | QChar | c | ) |

inline virtual

Called every time a character is inserted into the document.

Parameters

  c | character inserted

Reimplemented from KateAutoIndent.

Reimplemented in KateVarIndent.

Definition at line 258 of file kateautoindent.h.

virtual void KateNormalIndent::processLine | ( | KateDocCursor & |  | ) |

inline virtual

Aligns/indents the given line to the proper indent position.

Reimplemented from KateAutoIndent.

Reimplemented in KateVarIndent.

Definition at line 263 of file kateautoindent.h.

void KateNormalIndent::processNewline | ( | KateDocCursor & | cur,
|  | bool | needContinue
| ) |  |

virtual

Called every time a newline character is inserted in the document.

Parameters

  cur | The position to start processing. Contains the new cursor position after the indention.
  needContinue | Used to determine whether to calculate a continue indent or not.

Reimplemented from KateAutoIndent.

Reimplemented in KateVarIndent.

Definition at line 399 of file kateautoindent.cpp.

virtual void KateNormalIndent::processSection | ( | const KateDocCursor & | ,
|  | const KateDocCursor & |
| ) |  |

inline virtual

Processes a section of text, indenting each line in between.

Reimplemented from KateAutoIndent.

Reimplemented in KateVarIndent.

Definition at line 268 of file kateautoindent.h.

bool KateNormalIndent::skipBlanks | ( | KateDocCursor & | cur,
|  | KateDocCursor & | max,
|  | bool | newline
| ) |  | const

protected

Skip all whitespace starting at `cur` and ending at `max`.

Spans lines if `newline` is set. `cur` is set to the current position afterwards.

Parameters

  cur | The current cursor position to start from.
  max | The furthest cursor position that will be used for processing
  newline | Whether we are allowed to span multiple lines when skipping blanks

Returns
  True if `cur` < `max` after processing. False otherwise.

Definition at line 328 of file kateautoindent.cpp.

QString KateNormalIndent::tabString | ( | uint | length | ) | const

protected

Produces a string with the proper indentation characters for its length.

Parameters

  length | The length of the indention in characters.

Returns
  A QString representing `length` characters (factoring in tabs and spaces)

Definition at line 378 of file kateautoindent.cpp.

void KateNormalIndent::updateConfig | ( |  | ) |

virtual slot

Update indenter's configuration (indention width, attributes etc.)

Definition at line 197 of file kateautoindent.cpp.

## Member Data Documentation

uint KateNormalIndent::indentWidth

protected

The number of characters used when tabs are replaced by spaces.

Definition at line 324 of file kateautoindent.h.

bool KateNormalIndent::keepProfile

protected

Always try to honor the leading whitespace of lines already in the file.

Definition at line 345 of file kateautoindent.h.

bool KateNormalIndent::mixedIndent

protected

Optimize indent by mixing spaces and tabs, ala emacs.

Definition at line 344 of file kateautoindent.h.

uint KateNormalIndent::tabWidth

protected

The number of characters simulated for a tab.

Definition at line 323 of file kateautoindent.h.

bool KateNormalIndent::useSpaces

protected

Should we use spaces or tabs to indent.

Definition at line 343 of file kateautoindent.h.

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

- kateautoindent.h
- kateautoindent.cpp

KDE Home | KDE Accessibility Home | Description of Access Keys