# QsciLexerPascal Class Reference

The QsciLexerPascal class encapsulates the Scintilla Pascal lexer. More...

`#include <qscilexerpascal.h>`

Inherits QsciLexer.

List of all members.

## Public Types

- enum {
  Default = 0, Identifier = 1, Comment = 2,
  CommentParenthesis = 3, CommentLine = 4, PreProcessor = 5,
  PreProcessorParenthesis = 6, Number = 7, HexNumber = 8,
  Keyword = 9, SingleQuotedString = 10, UnclosedString = 11,
  Character = 12, Operator = 13, Asm = 14
  }

## Public Slots

- virtual void setFoldComments (bool fold)
- virtual void setFoldCompact (bool fold)
- virtual void setFoldPreprocessor (bool fold)

## Public Member Functions

- QsciLexerPascal (QObject *parent=0)
- virtual ~QsciLexerPascal ()
- const char * language () const
- const char * lexer () const
- QStringList autoCompletionWordSeparators () const
- const char * blockEnd (int *style=0) const
- const char * blockStart (int *style=0) const
- const char * blockStartKeyword (int *style=0) const
- int braceStyle () const
- QColor defaultColor (int style) const
- bool defaultEolFill (int style) const
- QFont defaultFont (int style) const
- QColor defaultPaper (int style) const
- const char * keywords (int set) const
- QString description (int style) const
- void refreshProperties ()
- bool foldComments () const
- bool foldCompact () const
- bool foldPreprocessor () const
- void setSmartHighlighting (bool enabled)
- bool smartHighlighting () const

## Protected Member Functions

- bool readProperties (QSettings &qs, const QString &prefix)
- bool writeProperties (QSettings &qs, const QString &prefix) const

## Detailed Description

The QsciLexerPascal class encapsulates the Scintilla Pascal lexer.

## Member Enumeration Documentation

anonymous enum

This enum defines the meanings of the different styles used by the C++ lexer.

Enumerator:

  Default | The default.
  Identifier | An identifier.
  Comment | A '{ ... }' style comment.
  CommentParenthesis | A '(* ... *)' style comment.
  CommentLine | A comment line.
  PreProcessor | A '{$ ... }' style pre-processor block.
  PreProcessorParenthesis | A '(*$ ... *)' style pre-processor block.
  Number | A number.
  HexNumber | A hexadecimal number.
  Keyword | A keyword.
  SingleQuotedString | A single-quoted string.
  UnclosedString | The end of a line where a string is not closed.
  Character | A character.
  Operator | An operator.
  Asm | Inline Asm.

## Constructor & Destructor Documentation

QsciLexerPascal::QsciLexerPascal | ( | QObject * | parent = `0` | ) |

Construct a QsciLexerPascal with parent parent. parent is typically the QsciScintilla instance.

## Member Function Documentation

const char* QsciLexerPascal::lexer | ( |  | ) | const`[virtual]`

Returns the name of the lexer. Some lexers support a number of languages.

Reimplemented from QsciLexer.

QColor QsciLexerPascal::defaultColor | ( | int | style | ) | const`[virtual]`

Returns the foreground colour of the text for style number style.

See also:
  defaultPaper()

Reimplemented from QsciLexer.

QColor QsciLexerPascal::defaultPaper | ( | int | style | ) | const`[virtual]`

Returns the background colour of the text for style number style.

See also:
  defaultColor()

Reimplemented from QsciLexer.

const char* QsciLexerPascal::keywords | ( | int | set | ) | const`[virtual]`

Returns the set of keywords for the keyword set set recognised by the lexer as a space separated string.

Reimplemented from QsciLexer.

QString QsciLexerPascal::description | ( | int | style | ) | const`[virtual]`

Returns the descriptive name for style number style. If the style is invalid for this language then an empty QString is returned. This is intended to be used in user preference dialogs.

Implements QsciLexer.

void QsciLexerPascal::refreshProperties | ( |  | ) | `[virtual]`

Causes all properties to be refreshed by emitting the propertyChanged() signal as required.

Reimplemented from QsciLexer.

bool QsciLexerPascal::foldComments | ( |  | ) | const

Returns true if multi-line comment blocks can be folded.

See also:
  setFoldComments()

bool QsciLexerPascal::foldCompact | ( |  | ) | const

Returns true if trailing blank lines are included in a fold block.

See also:
  setFoldCompact()

bool QsciLexerPascal::foldPreprocessor | ( |  | ) | const

Returns true if preprocessor blocks can be folded.

See also:
  setFoldPreprocessor()

void QsciLexerPascal::setSmartHighlighting | ( | bool | enabled | ) |

If enabled is true then some keywords will only be highlighted in an appropriate context (similar to how the Delphi IDE works). The default is true.

See also:
  smartHighlighting()

bool QsciLexerPascal::smartHighlighting | ( |  | ) | const

Returns true if some keywords will only be highlighted in an appropriate context (similar to how the Delphi IDE works).

See also:
  setSmartHighlighting()

virtual void QsciLexerPascal::setFoldComments | ( | bool | fold | ) | `[virtual, slot]`

If fold is true then multi-line comment blocks can be folded. The default is false.

See also:
  foldComments()

virtual void QsciLexerPascal::setFoldCompact | ( | bool | fold | ) | `[virtual, slot]`

If fold is true then trailing blank lines are included in a fold block. The default is true.

See also:
  foldCompact()

virtual void QsciLexerPascal::setFoldPreprocessor | ( | bool | fold | ) | `[virtual, slot]`

If fold is true then preprocessor blocks can be folded. The default is true.

See also:
  foldPreprocessor()

bool QsciLexerPascal::readProperties | ( | QSettings & | qs,
|  | const QString & | prefix |
| ) |  |  | `[protected, virtual]`

The lexer's properties are read from the settings qs. prefix (which has a trailing '/') should be used as a prefix to the key of each setting. true is returned if there is no error.

See also:
  writeProperties()

Reimplemented from QsciLexer.

bool QsciLexerPascal::writeProperties | ( | QSettings & | qs,
|  | const QString & | prefix |
| ) |  |  | const`[protected, virtual]`

The lexer's properties are written to the settings qs. prefix (which has a trailing '/') should be used as a prefix to the key of each setting. true is returned if there is no error.

See also:
  readProperties()

Reimplemented from QsciLexer.