/** \file help.h * \brief Header: hypertext file browser * * Implements the hypertext file viewer. * The hypertext file is a file that may have one or more nodes. Each * node ends with a ^D character and starts with a bracket, then the * name of the node and then a closing bracket. Right after the closing * bracket a newline is placed. This newline is not to be displayed by * the help viewer and must be skipped - its sole purpose is to facilitate * the work of the people managing the help file template (xnc.hlp) . * * Links in the hypertext file are specified like this: the text that * will be highlighted should have a leading ^A, then it comes the * text, then a ^B indicating that highlighting is done, then the name * of the node you want to link to and then a ^C. * * The file must contain a ^D at the beginning and at the end of the * file or the program will not be able to detect the end of file. * * Laziness/widgeting attack: This file does use the dialog manager * and uses mainly the dialog to achieve the help work. there is only * one specialized widget and it's only used to forward the mouse messages * to the appropriate routine. * * This file is included by help.c and man2hlp.c */ #ifndef MC__HELP_H #define MC__HELP_H /*** typedefs(not structures) and defined constants **********************************************/ /* Markers used in the help files */ #define CHAR_LINK_START '\01' // Ctrl-A #define CHAR_LINK_POINTER '\02' // Ctrl-B #define CHAR_LINK_END '\03' // Ctrl-C #define CHAR_NODE_END '\04' // Ctrl-D #define CHAR_ALTERNATE '\05' // Ctrl-E #define CHAR_NORMAL '\06' // Ctrl-F #define CHAR_VERSION '\07' // Ctrl-G #define CHAR_FONT_BOLD '\010' // Ctrl-H #define CHAR_FONT_NORMAL '\013' // Ctrl-K #define CHAR_FONT_ITALIC '\024' // Ctrl-T /*** enums ***************************************************************************************/ /*** structures declarations (and typedefs of structures)*****************************************/ /*** global variables defined in .c file *********************************************************/ /*** declarations of public functions ************************************************************/ gboolean help_interactive_display (const gchar *event_group_name, const gchar *event_name, gpointer init_data, gpointer data); /*** inline functions ****************************************************************************/ #endif