Full Unicode support

Ferry provides full support for Unicode text, i.e. font substitution, bidirectional text reordering, non trivial codepoint-to-glyph mapping and other features for proper handling of complex text data are all implemented.

Pluggable syntax highlighting engines

Syntax highlighting is implemented as editor extensions. There are two such extensions so far:

Render arbitrary graphics instead of glyphs

See fe::ISubstringDecorator.

Malformed input text tolerant

Normally Ferry operates on well formed UTF8-encoded text. But it is safe to feed editing component with any input: mallformed UTF8-encoded text or even binary data - Ferry safely handles it.

Text scale

See fe::ITextScalerFactory.

Variable text line height

Height of every text line is calculated individually based on fonts applied to different fragments of text line. Though it is possible to force editor make all text lines have the same height. See fe::IDecorator::isFixedLineHeight().

Word wrap

Editor can be configured to enable automatic word wrap at arbitrary boundary. See fe::EditorFacadePolicy::textLineMaxWidth.

Set text read only

Editor can be configured to disable interactive text editing with mouse and keyboard. See fe::EditorFacadePolicy::textReadonly.

Unlimited Undo/Redo

Edit actions grouping

Sequential text editing acions can be grouped together so that to record them with a single entry in Undo/Redo stack. See fe::IEditorFacade::openActionGroup() and fe::IEditorFacade::closeActionGroup().

Generated on Tue Nov 18 21:08:22 2008 for Ferry by doxygen