]>
Commit | Line | Data |
---|---|---|
1 | % | |
2 | % automatically generated by HelpGen from | |
3 | % htmlhelp.h at 02/May/99 19:58:53 | |
4 | % | |
5 | ||
6 | \section{\class{wxHtmlHelpController}}\label{wxhtmlhelpcontroller} | |
7 | ||
8 | {\bf WARNING!} Although this class has an API compatible with other wxWindows | |
9 | help controllers as documented by \helpref{wxHelpController}{wxhelpcontroller}, it | |
10 | is recommended that you use the enhanced capabilities of wxHtmlHelpController's API. | |
11 | ||
12 | This help controller provides an easy way of displaying HTML help in your | |
13 | application (see {\it test} sample). The help system is based on {\bf books} | |
14 | (see \helpref{AddBook}{wxhtmlhelpcontrolleraddbook}). A book is a logical | |
15 | section of documentation (for example "User's Guide" or "Programmer's Guide" or | |
16 | "C++ Reference" or "wxWindows Reference"). The help controller can handle as | |
17 | many books as you want. | |
18 | ||
19 | wxHTML uses Microsoft's HTML Help Workshop project files (.hhp, .hhk, .hhc) as its | |
20 | native format. The file format is described \helpref{here}{helpformat}. | |
21 | Have a look at docs/html/ directory where sample project files are stored. | |
22 | ||
23 | You can use Tex2RTF to produce these files when generating HTML, if you set {\bf htmlWorkshopFiles} to {\bf true} in | |
24 | your tex2rtf.ini file. | |
25 | ||
26 | In order to use the controller in your application under Windows you must | |
27 | have the following line in your .rc file: | |
28 | ||
29 | \begin{verbatim} | |
30 | #include "wx/html/msw/wxhtml.rc" | |
31 | \end{verbatim} | |
32 | ||
33 | \wxheading{Note} | |
34 | ||
35 | It is strongly recommended to use preprocessed {\bf .hhp.cached} version of | |
36 | projects. It can be either created on-the-fly (see | |
37 | \helpref{SetTempDir}{wxhtmlhelpcontrollersettempdir}) or you can use | |
38 | {\bf hhp2cached} utility from {\it utils/hhp2cached} to create it and | |
39 | distribute the cached version together with helpfiles. See {\it samples/html/help} | |
40 | sample for demonstration of its use. | |
41 | ||
42 | \wxheading{Derived from} | |
43 | ||
44 | wxHelpControllerBase | |
45 | ||
46 | \wxheading{Include files} | |
47 | ||
48 | <wx/html/helpctrl.h> | |
49 | ||
50 | \latexignore{\rtfignore{\wxheading{Members}}} | |
51 | ||
52 | \membersection{wxHtmlHelpController::wxHtmlHelpController}\label{wxhtmlhelpcontrollerwxhtmlhelpcontroller} | |
53 | ||
54 | \func{}{wxHtmlHelpController}{\param{int }{style = wxHF\_DEFAULTSTYLE}} | |
55 | ||
56 | Constructor. | |
57 | ||
58 | \wxheading{Parameters} | |
59 | ||
60 | {\it style} is combination of these flags: | |
61 | ||
62 | \begin{twocollist}\itemsep=0pt | |
63 | \twocolitem{\windowstyle{wxHF\_TOOLBAR}}{Help frame has toolbar.} | |
64 | \twocolitem{\windowstyle{wxHF\_CONTENTS}}{Help frame has contents panel.} | |
65 | \twocolitem{\windowstyle{wxHF\_INDEX}}{Help frame has index panel.} | |
66 | \twocolitem{\windowstyle{wxHF\_SEARCH}}{Help frame has search panel.} | |
67 | \twocolitem{\windowstyle{wxHF\_BOOKMARKS}}{Help frame has bookmarks controls.} | |
68 | \twocolitem{\windowstyle{wxHF\_OPENFILES}}{Allow user to open arbitrary HTML document.} | |
69 | \twocolitem{\windowstyle{wxHF\_PRINT}}{Toolbar contains "print" button.} | |
70 | \end{twocollist} | |
71 | ||
72 | Default value: everything but wxHF\_OPENFILES enabled. | |
73 | ||
74 | \membersection{wxHtmlHelpController::AddBook}\label{wxhtmlhelpcontrolleraddbook} | |
75 | ||
76 | \func{bool}{AddBook}{\param{const wxString\& }{book}, \param{bool }{show\_wait\_msg}} | |
77 | ||
78 | Adds book (\helpref{.hhp file}{helpformat} - HTML Help Workshop project file) into the list of loaded books. | |
79 | This must be called at least once before displaying any help. | |
80 | ||
81 | {\it book} may be either .hhp file or ZIP archive that contains arbitrary number of .hhp files in | |
82 | top-level directory. This ZIP archive must have .zip or .htb extension | |
83 | (the latter stands for "HTML book"). In other words, {\tt AddBook("help.zip")} is possible and, in fact, | |
84 | recommended way. | |
85 | ||
86 | If {\it show\_wait\_msg} is TRUE then a decorationless window with progress message is displayed. | |
87 | ||
88 | \membersection{wxHtmlHelpController::CreateHelpFrame}\label{wxhtmlhelpcontrollercreatehelpframe} | |
89 | ||
90 | \func{virtual wxHtmlHelpFrame*}{CreateHelpFrame}{\param{wxHtmlHelpData * }{data}} | |
91 | ||
92 | This protected virtual method may be overriden so that the controller | |
93 | uses slightly different frame. See {\it samples/html/helpview} sample for | |
94 | an example. | |
95 | \membersection{wxHtmlHelpController::Display}\label{wxhtmlhelpcontrollerdisplay} | |
96 | ||
97 | \func{void}{Display}{\param{const wxString\& }{x}} | |
98 | ||
99 | Displays page {\it x}. This is THE important function - it is used to display | |
100 | the help in application. | |
101 | ||
102 | You can specify the page in many ways: | |
103 | ||
104 | \begin{itemize}\itemsep=0pt | |
105 | \item as direct filename of HTML document | |
106 | \item as chapter name (from contents) or as a book name | |
107 | \item as some word from index | |
108 | \item even as any word (will be searched) | |
109 | \end{itemize} | |
110 | ||
111 | Looking for the page runs in these steps: | |
112 | ||
113 | \begin{enumerate}\itemsep=0pt | |
114 | \item try to locate file named x (if x is for example "doc/howto.htm") | |
115 | \item try to open starting page of book named x | |
116 | \item try to find x in contents (if x is for example "How To ...") | |
117 | \item try to find x in index (if x is for example "How To ...") | |
118 | \item switch to Search panel and start searching | |
119 | \end{enumerate} | |
120 | ||
121 | \func{void}{Display}{\param{const int }{id}} | |
122 | ||
123 | This alternative form is used to search help contents by numeric IDs. | |
124 | ||
125 | \pythonnote{The second form of this method is named DisplayId in | |
126 | wxPython.} | |
127 | ||
128 | \membersection{wxHtmlHelpController::DisplayContents}\label{wxhtmlhelpcontrollerdisplaycontents} | |
129 | ||
130 | \func{void}{DisplayContents}{\void} | |
131 | ||
132 | Displays help window and focuses contents panel. | |
133 | ||
134 | \membersection{wxHtmlHelpController::DisplayIndex}\label{wxhtmlhelpcontrollerdisplayindex} | |
135 | ||
136 | \func{void}{DisplayIndex}{\void} | |
137 | ||
138 | Displays help window and focuses index panel. | |
139 | ||
140 | \membersection{wxHtmlHelpController::KeywordSearch}\label{wxhtmlhelpcontrollerkeywordsearch} | |
141 | ||
142 | \func{bool}{KeywordSearch}{\param{const wxString\& }{keyword}} | |
143 | ||
144 | Displays help window, focuses search panel and starts searching. | |
145 | Returns TRUE if the keyword was found. | |
146 | ||
147 | {\bf Important:} KeywordSearch searches only pages listed in .htc file(s). | |
148 | You should list all pages in the contents file. | |
149 | ||
150 | \membersection{wxHtmlHelpController::ReadCustomization}\label{wxhtmlhelpcontrollerreadcustomization} | |
151 | ||
152 | \func{void}{ReadCustomization}{\param{wxConfigBase* }{cfg}, \param{wxString }{path = wxEmptyString}} | |
153 | ||
154 | Reads the controller's setting (position of window, etc.) | |
155 | ||
156 | \membersection{wxHtmlHelpController::SetTempDir}\label{wxhtmlhelpcontrollersettempdir} | |
157 | ||
158 | \func{void}{SetTempDir}{\param{const wxString\& }{path}} | |
159 | ||
160 | Sets the path for storing temporary files - cached binary versions of index and contents files. These binary | |
161 | forms are much faster to read. Default value is empty string (empty string means | |
162 | that no cached data are stored). Note that these files are {\it not} | |
163 | deleted when program exits. | |
164 | ||
165 | Once created these cached files will be used in all subsequent executions | |
166 | of your application. If cached files become older than corresponding .hhp | |
167 | file (e.g. if you regenerate documentation) it will be refreshed. | |
168 | ||
169 | \membersection{wxHtmlHelpController::SetTitleFormat}\label{wxhtmlhelpcontrollersettitleformat} | |
170 | ||
171 | \func{void}{SetTitleFormat}{\param{const wxString\& }{format}} | |
172 | ||
173 | Sets format of title of the frame. Must contain exactly one "\%s" | |
174 | (for title of displayed HTML page). | |
175 | ||
176 | \membersection{wxHtmlHelpController::UseConfig}\label{wxhtmlhelpcontrolleruseconfig} | |
177 | ||
178 | \func{void}{UseConfig}{\param{wxConfigBase* }{config}, \param{const wxString\& }{rootpath = wxEmptyString}} | |
179 | ||
180 | Associates {\it config} object with the controller. | |
181 | ||
182 | If there is associated config object, wxHtmlHelpController automatically | |
183 | reads and writes settings (including wxHtmlWindow's settings) when needed. | |
184 | ||
185 | The only thing you must do is create wxConfig object and call UseConfig. | |
186 | ||
187 | If you do not use {\it UseConfig}, wxHtmlHelpController will use | |
188 | default wxConfig object if available (for details see | |
189 | \helpref{wxConfigBase::Get}{wxconfigbaseget} and | |
190 | \helpref{wxConfigBase::Set}{wxconfigbaseset}). | |
191 | ||
192 | \membersection{wxHtmlHelpController::WriteCustomization}\label{wxhtmlhelpcontrollerwritecustomization} | |
193 | ||
194 | \func{void}{WriteCustomization}{\param{wxConfigBase* }{cfg}, \param{wxString }{path = wxEmptyString}} | |
195 | ||
196 | Stores controllers setting (position of window etc.) | |
197 |