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 email@example.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.
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.