diff options
| author | Matthias Melcher <github@matthiasm.com> | 2021-12-17 20:28:47 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-12-17 20:28:47 +0100 |
| commit | d13f9e736c70225a1103e2b59adc975c9bdad73e (patch) | |
| tree | 6e516e8b643f1cd8a897bfc20e9fdd3686b3042b | |
| parent | bd7011a1d37d48ff9d371c76bcc1eddc0f3b946c (diff) | |
GitHub #233, documenting style buffers and utf8.
| -rw-r--r-- | src/Fl_Text_Display.cxx | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/Fl_Text_Display.cxx b/src/Fl_Text_Display.cxx index ac8a291fe..7cf1e6eec 100644 --- a/src/Fl_Text_Display.cxx +++ b/src/Fl_Text_Display.cxx @@ -1,5 +1,5 @@ // -// Copyright 2001-2020 by Bill Spitzak and others. +// Copyright 2001-2021 by Bill Spitzak and others. // Original code Copyright Mark Edel. Permission to distribute under // the LGPL for the FLTK library granted by Mark Edel. // @@ -393,7 +393,18 @@ void Fl_Text_Display::buffer( Fl_Text_Buffer *buf ) { Style buffers, tables and their associated memory are managed by the caller. Styles are ranged from 65 ('A') to 126. - + + \note Style information in the style buffer must have the same byte offset as + the corresponding character in the text buffer. UTF-8 characters can have a + length of four, in some cases even six bytes. Style information must take + this into account and fill the unused bytes with 0. See `fl_utf8len()`. + + Text: "*g* r ü *n*" , where normal style is 'A', and bold is 'B' + \code + Text Buffer(hex): 67 72 c3 bc 6e : gr..n + Style Buffer(hex): 42 41 41 00 42 : BAA.B + \endcode + \param styleBuffer this buffer works in parallel to the text buffer. For every character in the text buffer, the style buffer has a byte at the same offset that contains an index into an array of possible styles. |
