1
0
Fork 0

Bug 821: Document the charsets of buffers for BFU and form input fields.

This commit is contained in:
Kalle Olavi Niemitalo 2006-10-25 19:39:24 +03:00 committed by Kalle Olavi Niemitalo
parent f4e66f1fc6
commit 1c5db85b1a
4 changed files with 23 additions and 2 deletions

View File

@ -51,6 +51,11 @@ struct widget {
struct widget_data {
struct widget *widget;
/* For WIDGET_FIELD: If CONFIG_UTF8 is defined and UTF-8 I/O
* is enabled for the terminal, then @cdata is in UTF-8;
* otherwise, @cdata is in the charset of the terminal, and
* the charset is assumed to be unibyte. (Thus, if you choose
* UTF-8 as the charset but disable UTF-8 I/O, you lose.) */
unsigned char *cdata;
struct box box;

View File

@ -94,6 +94,12 @@ struct form_control {
int maxlength;
int nvalues;
unsigned char **values;
/* For FC_SELECT: If CONFIG_UTF8 is defined and UTF-8 I/O is
* enabled for the terminal, then @labels is in UTF-8;
* otherwise, @labels is in the charset of the terminal, and
* the charset is assumed to be unibyte. (Thus, if you choose
* UTF-8 as the charset but disable UTF-8 I/O, you lose.) The
* charset of the document has no effect here. */
unsigned char **labels;
struct menu_item *menu;
};

View File

@ -30,7 +30,12 @@ enum screen_char_attr {
/* One position in the terminal screen's image. */
struct screen_char {
/* Contains either character value or frame data. */
/* Contains either character value or frame data.
* If CONFIG_UTF8 is defined, and UTF-8 I/O is enabled for the
* terminal, then the character value is in UCS-4; otherwise,
* it is in the charset of the terminal, and the charset is
* assumed to be unibyte. (Thus, if you choose UTF-8 as the
* charset but disable UTF-8 I/O, you lose.) */
#ifdef CONFIG_UTF8
unicode_val_T data;
#else

View File

@ -43,7 +43,12 @@ struct form_state {
* is not stored anywhere; extending the string always requires
* calling realloc(). The string is not normally allowed to grow
* past @form_control.maxlength bytes (not counting the null),
* but there may be ways to get longer strings. */
* but there may be ways to get longer strings. If CONFIG_UTF8
* is defined and UTF-8 I/O is enabled for the terminal, then
* @value is in UTF-8; otherwise, @value is in the charset of the
* terminal, and the charset is assumed to be unibyte. (Thus, if
* you choose UTF-8 as the charset but disable UTF-8 I/O, you
* lose.) The charset of the document has no effect here. */
unsigned char *value;
/* For FC_TEXT, FC_PASSWORD, and FC_FILE, @state is the byte
* position of the insertion point in @value.