Ticket #1809 (invalid length of nonprintable chars)
[kaloumi3.git] / src / help.h
blob638bc5d57f6515e1558420d958401aa403c2ee44
2 /** \file help.h
3 * \brief Header: hypertext file browser
5 * Implements the hypertext file viewer.
6 * The hypertext file is a file that may have one or more nodes. Each
7 * node ends with a ^D character and starts with a bracket, then the
8 * name of the node and then a closing bracket. Right after the closing
9 * bracket a newline is placed. This newline is not to be displayed by
10 * the help viewer and must be skipped - its sole purpose is to faciliate
11 * the work of the people managing the help file template (xnc.hlp) .
13 * Links in the hypertext file are specified like this: the text that
14 * will be highlighted should have a leading ^A, then it comes the
15 * text, then a ^B indicating that highlighting is done, then the name
16 * of the node you want to link to and then a ^C.
18 * The file must contain a ^D at the beginning and at the end of the
19 * file or the program will not be able to detect the end of file.
21 * Lazyness/widgeting attack: This file does use the dialog manager
22 * and uses mainly the dialog to achieve the help work. there is only
23 * one specialized widget and it's only used to forward the mouse messages
24 * to the appropiate routine.
26 * This file is included by help.c and man2hlp.c
29 #ifndef MC_HELP_H
30 #define MC_HELP_H
32 #define HELP_TEXT_WIDTH 58
34 /* Markers used in the help files */
35 #define CHAR_LINK_START '\01' /* Ctrl-A */
36 #define CHAR_LINK_POINTER '\02' /* Ctrl-B */
37 #define CHAR_LINK_END '\03' /* Ctrl-C */
38 #define CHAR_NODE_END '\04' /* Ctrl-D */
39 #define CHAR_ALTERNATE '\05' /* Ctrl-E */
40 #define CHAR_NORMAL '\06' /* Ctrl-F */
41 #define CHAR_VERSION '\07' /* Ctrl-G */
42 #define CHAR_FONT_BOLD '\010' /* Ctrl-H */
43 #define CHAR_FONT_NORMAL '\013' /* Ctrl-K */
44 #define CHAR_FONT_ITALIC '\024' /* Ctrl-T */
46 void interactive_display (const char *filename, const char *node);
48 #endif