QCodeEdit  2.2
Introduction

QCodeEdit is a library offering an advanced text editing framework ready to use in other Qt apps.

The goals of QCodeEdit are :

  • Flexibility
  • Performance
  • Usability

Flexibility is achieved by splitting the library in logical components that can be used (almost) independently. The document-related classes for instances don't need an editor to be around (it is a bit similar to a model/view approach in that way). Two other important features of QCodeEdit have been designed to maximize flexibility : the syntax engine and the panel system.

  • the document contains the data to be edited. It is made of lines and can be manipulated using cursors.
  • the editor is a simple widget which allows edition of the document through mouse and keyboard interaction.
  • the syntax engine add new functionalities to both the document and editor, such as syntax highlighting, brace matching, code folding, auto indenting, (un)commenting... The builtin implementation generates language definitions on-the-fly from XML files specifying the structure of the language in a hierarchical and very intuitive way.
  • the panels are simple widgets which can be attached to the editor using a manager. Builtin panels include : line numbers, fold indicators, line marks, line changes, editor status and search/replace. It is of course possible to create new panels very easily.
[Next:License]