Fl_RichTextDisplay and Fl_RichTextEditor

Fl_RichTextDisplay and Fl_RichTextEditor are text display and editor widgets for use with the Fast Light Toolkit (FLTK), a cross-platform C++ GUI toolkit.

FLTK already includes text display and editor widgets (Fl_Text_Display and Fl_Text_Editor). These widgets provide excellent functionality that will meet most text display and editing needs. But for some applications, they may have a few shortcomings:

I developed Fl_RichTextDisplay and Fl_RichTextEditor to address these shortcomings.


Fl_RichTextDisplay and Fl_RichTextEditor provide the following improvements over the existing FLTK text widgets:

But Fl_RichTextDisplay and Fl_RichTextEditor do not do a couple of things as well as the FLTK-provided Fl_Text_Display and Fl_Text_Editor widgets:


(Click to view larger)

Note that the toolbar on the Fl_RichTextEditor widget in the above screenshot is not part of the editor; it is part of the demo application, and uses methods in Fl_RichTextEditor to apply styling, fonts, etc. to selected text.


Fl_RichTextDisplay and Fl_RichTextEditor are currently available as a beta release. I could use some help from my fellow FLTK developers in shaking the bugs out.

Please email all bug reports and feedback to jeffellis1@gmail.com.

4/11/14: Beta version 1.2b is now available for download. Includes numerous bug fixes and behavior improvements to text cursor placement and movement.

10/1/12: Beta version 1.1b is now available for download. Includes numerous bug fixes and a new EditorContent class, analogous to the FLTK Fl_Text_Buffer, that can be used to switch contents (i.e., "documents") within the same editor widget.

9/18/12: Fl_RichTextDisplay and Fl_RichTextEditor v1.0b (beta) are available for download.

System Requirements

Fl_RichTextDisplay and Fl_RichTextEditor were developed specifically for FLTK 1.3.x and may not work with older versions of FLTK.

I also developed them under Windows 7 and have not yet compiled and tested them under Linux.


Click here to download a zip file containing the source code for v1.2b of Fl_RichTextDisplay, Fl_RichTextEditor, and related classes, and code for the demo application.