1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197
|
/////////////////////////////////////////////////////////////////////////////
// Name: html/helpwnd.h
// Purpose: interface of wxHtmlHelpWindow
// Author: wxWidgets team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/*!
* Command IDs
*/
enum
{
//wxID_HTML_HELPFRAME = wxID_HIGHEST + 1,
wxID_HTML_PANEL = wxID_HIGHEST + 10,
wxID_HTML_BACK,
wxID_HTML_FORWARD,
wxID_HTML_UPNODE,
wxID_HTML_UP,
wxID_HTML_DOWN,
wxID_HTML_PRINT,
wxID_HTML_OPENFILE,
wxID_HTML_OPTIONS,
wxID_HTML_BOOKMARKSLIST,
wxID_HTML_BOOKMARKSADD,
wxID_HTML_BOOKMARKSREMOVE,
wxID_HTML_TREECTRL,
wxID_HTML_INDEXPAGE,
wxID_HTML_INDEXLIST,
wxID_HTML_INDEXTEXT,
wxID_HTML_INDEXBUTTON,
wxID_HTML_INDEXBUTTONALL,
wxID_HTML_NOTEBOOK,
wxID_HTML_SEARCHPAGE,
wxID_HTML_SEARCHTEXT,
wxID_HTML_SEARCHLIST,
wxID_HTML_SEARCHBUTTON,
wxID_HTML_SEARCHCHOICE,
wxID_HTML_COUNTINFO
};
/**
@class wxHtmlHelpWindow
This class is used by wxHtmlHelpController to display help within a frame or
dialog, but you can use it yourself to create an embedded HTML help window.
For example:
@code
// m_embeddedHelpWindow is a wxHtmlHelpWindow
// m_embeddedHtmlHelp is a wxHtmlHelpController
// Create embedded HTML Help window
m_embeddedHelpWindow = new wxHtmlHelpWindow;
m_embeddedHtmlHelp.UseConfig(config, rootPath); // Set your own config object here
m_embeddedHtmlHelp.SetHelpWindow(m_embeddedHelpWindow);
m_embeddedHelpWindow->Create(this, wxID_ANY, wxDefaultPosition, GetClientSize(),
wxTAB_TRAVERSAL|wxBORDER_NONE, wxHF_DEFAULT_STYLE);
m_embeddedHtmlHelp.AddBook(wxFileName(wxT("doc.zip")));
@endcode
You should pass the style wxHF_EMBEDDED to the style parameter of
wxHtmlHelpController to allow the embedded window to be destroyed
independently of the help controller.
@library{wxhtml}
@category{help,html}
*/
class wxHtmlHelpWindow : public wxWindow
{
public:
wxHtmlHelpWindow(wxHtmlHelpData* data = NULL);
/**
Constructor.
For the values of @a helpStyle, please see the documentation for
wxHtmlHelpController.
*/
wxHtmlHelpWindow(wxWindow* parent, int wxWindowID,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
int style = wxTAB_TRAVERSAL|wxBORDER_NONE,
int helpStyle = wxHF_DEFAULT_STYLE,
wxHtmlHelpData* data = NULL);
/**
Creates the help window. See @ref wxHtmlHelpWindow() "the constructor"
for a description of the parameters.
*/
bool Create(wxWindow* parent, wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, int style = wxTAB_TRAVERSAL|wxBORDER_NONE,
int helpStyle = wxHF_DEFAULT_STYLE);
/**
Displays page x.
If not found it will give the user the choice of searching books.
Looking for the page runs in these steps:
-# try to locate file named x (if x is for example "doc/howto.htm")
-# try to open starting page of book x
-# try to find x in contents (if x is for example "How To ...")
-# try to find x in index (if x is for example "How To ...")
*/
bool Display(const wxString& x);
/**
@overload
This form takes numeric ID as the parameter (uses an extension to MS format,
param name="ID" value=id).
*/
bool Display(const int id);
/**
Displays contents panel.
*/
bool DisplayContents();
/**
Displays index panel.
*/
bool DisplayIndex();
/**
Returns the wxHtmlHelpData object, which is usually a pointer to the
controller's data.
*/
wxHtmlHelpData* GetData();
/**
Search for given keyword. Optionally it searches through the index
(mode = @c wxHELP_SEARCH_INDEX), default the content (mode = @c wxHELP_SEARCH_ALL).
*/
bool KeywordSearch(const wxString& keyword,
wxHelpSearchMode mode = wxHELP_SEARCH_ALL);
/**
Reads the user's settings for this window.
@see wxHtmlHelpController::ReadCustomization
*/
void ReadCustomization(wxConfigBase* cfg,
const wxString& path = wxEmptyString);
/**
Associates a wxConfig object with the help window. It is recommended that you
use wxHtmlHelpController::UseConfig instead.
*/
void UseConfig(wxConfigBase* config,
const wxString& rootpath = wxEmptyString);
/**
Saves the user's settings for this window.
@see wxHtmlHelpController::WriteCustomization
*/
void WriteCustomization(wxConfigBase* cfg,
const wxString& path = wxEmptyString);
/**
Refresh all panels. This is necessary if a new book was added.
*/
void RefreshLists();
wxHtmlHelpController* GetController() const;
void SetController(wxHtmlHelpController* controller);
protected:
/**
Creates search panel.
*/
void CreateSearch();
/**
You may override this virtual method to add more buttons to the help window's
toolbar. @a toolBar is a pointer to the toolbar and @a style is the style
flag as passed to the Create() method.
wxToolBar::Realize is called immediately after returning from this function.
See @c samples/html/helpview for an example.
*/
virtual void AddToolbarButtons(wxToolBar* toolBar, int style);
/**
Creates contents panel. (May take some time.)
*/
void CreateContents();
/**
Creates index panel. (May take some time.)
*/
void CreateIndex();
};
|