4 * Copyright 1996 Ulrich Schmid
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 enum {hlp_link_none, hlp_link_link, hlp_link_popup, hlp_link_macro} cookie;
32 enum para_type {para_normal_text, para_debug_text, para_image};
34 typedef struct tagHlpFileParagraph
36 enum para_type cookie;
51 unsigned pos; /* 0: center, 1: left, 2: right */
57 struct tagHlpFileParagraph* next;
60 typedef struct tagHlpFilePage
63 HLPFILE_PARAGRAPH* first_paragraph;
67 struct tagHlpFilePage* next;
68 struct tagHlpFilePage* prev;
69 struct tagHlpFileFile* file;
78 typedef struct tagHlpFileMacro
81 struct tagHlpFileMacro* next;
91 typedef struct tagHlpFileFile
95 HLPFILE_PAGE* first_page;
96 HLPFILE_MACRO* first_macro;
98 HLPFILE_CONTEXT* Context;
99 struct tagHlpFileFile* prev;
100 struct tagHlpFileFile* next;
104 unsigned short version;
105 unsigned short flags;
106 unsigned hasPhrases; /* Phrases or PhrIndex/PhrImage */
112 HLPFILE *HLPFILE_ReadHlpFile(LPCSTR lpszPath);
113 HLPFILE_PAGE *HLPFILE_Contents(LPCSTR lpszPath);
114 HLPFILE_PAGE *HLPFILE_PageByHash(LPCSTR lpszPath, LONG wNum);
115 LONG HLPFILE_Hash(LPCSTR lpszContext);
116 VOID HLPFILE_FreeHlpFilePage(HLPFILE_PAGE*);
117 VOID HLPFILE_FreeHlpFile(HLPFILE*);