| 1 |
/**************************************************************************** |
| 2 |
* * |
| 3 |
* HtmlHelp.h * |
| 4 |
* * |
| 5 |
* Copyright (c) 1996-1997, Microsoft Corp. All rights reserved. * |
| 6 |
* * |
| 7 |
****************************************************************************/ |
| 8 |
|
| 9 |
#if _MSC_VER > 1000 |
| 10 |
#pragma once |
| 11 |
#endif |
| 12 |
|
| 13 |
#ifndef __HTMLHELP_H__ |
| 14 |
#define __HTMLHELP_H__ |
| 15 |
|
| 16 |
#ifdef __cplusplus |
| 17 |
extern "C" { |
| 18 |
#endif // __cplusplus |
| 19 |
|
| 20 |
// Defines for Win64 |
| 21 |
#ifndef _WIN64 |
| 22 |
#define DWORD_PTR DWORD |
| 23 |
#endif |
| 24 |
|
| 25 |
// Commands to pass to HtmlHelp() |
| 26 |
|
| 27 |
#define HH_DISPLAY_TOPIC 0x0000 |
| 28 |
#define HH_HELP_FINDER 0x0000 // WinHelp equivalent |
| 29 |
#define HH_DISPLAY_TOC 0x0001 |
| 30 |
#define HH_DISPLAY_INDEX 0x0002 |
| 31 |
#define HH_DISPLAY_SEARCH 0x0003 |
| 32 |
#define HH_SET_WIN_TYPE 0x0004 |
| 33 |
#define HH_GET_WIN_TYPE 0x0005 |
| 34 |
#define HH_GET_WIN_HANDLE 0x0006 |
| 35 |
#define HH_ENUM_INFO_TYPE 0x0007 // Get Info type name, call repeatedly to enumerate, -1 at end |
| 36 |
#define HH_SET_INFO_TYPE 0x0008 // Add Info type to filter. |
| 37 |
#define HH_SYNC 0x0009 |
| 38 |
#define HH_RESERVED1 0x000A |
| 39 |
#define HH_RESERVED2 0x000B |
| 40 |
#define HH_RESERVED3 0x000C |
| 41 |
#define HH_KEYWORD_LOOKUP 0x000D |
| 42 |
#define HH_DISPLAY_TEXT_POPUP 0x000E // display string resource id or text in a popup window |
| 43 |
#define HH_HELP_CONTEXT 0x000F // display mapped numeric value in dwData |
| 44 |
#define HH_TP_HELP_CONTEXTMENU 0x0010 // text popup help, same as WinHelp HELP_CONTEXTMENU |
| 45 |
#define HH_TP_HELP_WM_HELP 0x0011 // text popup help, same as WinHelp HELP_WM_HELP |
| 46 |
#define HH_CLOSE_ALL 0x0012 // close all windows opened directly or indirectly by the caller |
| 47 |
#define HH_ALINK_LOOKUP 0x0013 // ALink version of HH_KEYWORD_LOOKUP |
| 48 |
#define HH_GET_LAST_ERROR 0x0014 // not currently implemented // See HHERROR.h |
| 49 |
#define HH_ENUM_CATEGORY 0x0015 // Get category name, call repeatedly to enumerate, -1 at end |
| 50 |
#define HH_ENUM_CATEGORY_IT 0x0016 // Get category info type members, call repeatedly to enumerate, -1 at end |
| 51 |
#define HH_RESET_IT_FILTER 0x0017 // Clear the info type filter of all info types. |
| 52 |
#define HH_SET_INCLUSIVE_FILTER 0x0018 // set inclusive filtering method for untyped topics to be included in display |
| 53 |
#define HH_SET_EXCLUSIVE_FILTER 0x0019 // set exclusive filtering method for untyped topics to be excluded from display |
| 54 |
#define HH_INITIALIZE 0x001C // Initializes the help system. |
| 55 |
#define HH_UNINITIALIZE 0x001D // Uninitializes the help system. |
| 56 |
#define HH_PRETRANSLATEMESSAGE 0x00fd // Pumps messages. (NULL, NULL, MSG*). |
| 57 |
#define HH_SET_GLOBAL_PROPERTY 0x00fc // Set a global property. (NULL, NULL, HH_GPROP) |
| 58 |
|
| 59 |
#define HHWIN_PROP_TAB_AUTOHIDESHOW (1 << 0) // Automatically hide/show tri-pane window |
| 60 |
#define HHWIN_PROP_ONTOP (1 << 1) // Top-most window |
| 61 |
#define HHWIN_PROP_NOTITLEBAR (1 << 2) // no title bar |
| 62 |
#define HHWIN_PROP_NODEF_STYLES (1 << 3) // no default window styles (only HH_WINTYPE.dwStyles) |
| 63 |
#define HHWIN_PROP_NODEF_EXSTYLES (1 << 4) // no default extended window styles (only HH_WINTYPE.dwExStyles) |
| 64 |
#define HHWIN_PROP_TRI_PANE (1 << 5) // use a tri-pane window |
| 65 |
#define HHWIN_PROP_NOTB_TEXT (1 << 6) // no text on toolbar buttons |
| 66 |
#define HHWIN_PROP_POST_QUIT (1 << 7) // post WM_QUIT message when window closes |
| 67 |
#define HHWIN_PROP_AUTO_SYNC (1 << 8) // automatically ssync contents and index |
| 68 |
#define HHWIN_PROP_TRACKING (1 << 9) // send tracking notification messages |
| 69 |
#define HHWIN_PROP_TAB_SEARCH (1 << 10) // include search tab in navigation pane |
| 70 |
#define HHWIN_PROP_TAB_HISTORY (1 << 11) // include history tab in navigation pane |
| 71 |
#define HHWIN_PROP_TAB_FAVORITES (1 << 12) // include favorites tab in navigation pane |
| 72 |
#define HHWIN_PROP_CHANGE_TITLE (1 << 13) // Put current HTML title in title bar |
| 73 |
#define HHWIN_PROP_NAV_ONLY_WIN (1 << 14) // Only display the navigation window |
| 74 |
#define HHWIN_PROP_NO_TOOLBAR (1 << 15) // Don't display a toolbar |
| 75 |
#define HHWIN_PROP_MENU (1 << 16) // Menu |
| 76 |
#define HHWIN_PROP_TAB_ADVSEARCH (1 << 17) // Advanced FTS UI. |
| 77 |
#define HHWIN_PROP_USER_POS (1 << 18) // After initial creation, user controls window size/position |
| 78 |
#define HHWIN_PROP_TAB_CUSTOM1 (1 << 19) // Use custom tab #1 |
| 79 |
#define HHWIN_PROP_TAB_CUSTOM2 (1 << 20) // Use custom tab #2 |
| 80 |
#define HHWIN_PROP_TAB_CUSTOM3 (1 << 21) // Use custom tab #3 |
| 81 |
#define HHWIN_PROP_TAB_CUSTOM4 (1 << 22) // Use custom tab #4 |
| 82 |
#define HHWIN_PROP_TAB_CUSTOM5 (1 << 23) // Use custom tab #5 |
| 83 |
#define HHWIN_PROP_TAB_CUSTOM6 (1 << 24) // Use custom tab #6 |
| 84 |
#define HHWIN_PROP_TAB_CUSTOM7 (1 << 25) // Use custom tab #7 |
| 85 |
#define HHWIN_PROP_TAB_CUSTOM8 (1 << 26) // Use custom tab #8 |
| 86 |
#define HHWIN_PROP_TAB_CUSTOM9 (1 << 27) // Use custom tab #9 |
| 87 |
#define HHWIN_TB_MARGIN (1 << 28) // the window type has a margin |
| 88 |
|
| 89 |
#define HHWIN_PARAM_PROPERTIES (1 << 1) // valid fsWinProperties |
| 90 |
#define HHWIN_PARAM_STYLES (1 << 2) // valid dwStyles |
| 91 |
#define HHWIN_PARAM_EXSTYLES (1 << 3) // valid dwExStyles |
| 92 |
#define HHWIN_PARAM_RECT (1 << 4) // valid rcWindowPos |
| 93 |
#define HHWIN_PARAM_NAV_WIDTH (1 << 5) // valid iNavWidth |
| 94 |
#define HHWIN_PARAM_SHOWSTATE (1 << 6) // valid nShowState |
| 95 |
#define HHWIN_PARAM_INFOTYPES (1 << 7) // valid apInfoTypes |
| 96 |
#define HHWIN_PARAM_TB_FLAGS (1 << 8) // valid fsToolBarFlags |
| 97 |
#define HHWIN_PARAM_EXPANSION (1 << 9) // valid fNotExpanded |
| 98 |
#define HHWIN_PARAM_TABPOS (1 << 10) // valid tabpos |
| 99 |
#define HHWIN_PARAM_TABORDER (1 << 11) // valid taborder |
| 100 |
#define HHWIN_PARAM_HISTORY_COUNT (1 << 12) // valid cHistory |
| 101 |
#define HHWIN_PARAM_CUR_TAB (1 << 13) // valid curNavType |
| 102 |
|
| 103 |
#define HHWIN_BUTTON_EXPAND (1 << 1) // Expand/contract button |
| 104 |
#define HHWIN_BUTTON_BACK (1 << 2) // Back button |
| 105 |
#define HHWIN_BUTTON_FORWARD (1 << 3) // Forward button |
| 106 |
#define HHWIN_BUTTON_STOP (1 << 4) // Stop button |
| 107 |
#define HHWIN_BUTTON_REFRESH (1 << 5) // Refresh button |
| 108 |
#define HHWIN_BUTTON_HOME (1 << 6) // Home button |
| 109 |
#define HHWIN_BUTTON_BROWSE_FWD (1 << 7) // not implemented |
| 110 |
#define HHWIN_BUTTON_BROWSE_BCK (1 << 8) // not implemented |
| 111 |
#define HHWIN_BUTTON_NOTES (1 << 9) // not implemented |
| 112 |
#define HHWIN_BUTTON_CONTENTS (1 << 10) // not implemented |
| 113 |
#define HHWIN_BUTTON_SYNC (1 << 11) // Sync button |
| 114 |
#define HHWIN_BUTTON_OPTIONS (1 << 12) // Options button |
| 115 |
#define HHWIN_BUTTON_PRINT (1 << 13) // Print button |
| 116 |
#define HHWIN_BUTTON_INDEX (1 << 14) // not implemented |
| 117 |
#define HHWIN_BUTTON_SEARCH (1 << 15) // not implemented |
| 118 |
#define HHWIN_BUTTON_HISTORY (1 << 16) // not implemented |
| 119 |
#define HHWIN_BUTTON_FAVORITES (1 << 17) // not implemented |
| 120 |
#define HHWIN_BUTTON_JUMP1 (1 << 18) |
| 121 |
#define HHWIN_BUTTON_JUMP2 (1 << 19) |
| 122 |
#define HHWIN_BUTTON_ZOOM (1 << 20) |
| 123 |
#define HHWIN_BUTTON_TOC_NEXT (1 << 21) |
| 124 |
#define HHWIN_BUTTON_TOC_PREV (1 << 22) |
| 125 |
|
| 126 |
#define HHWIN_DEF_BUTTONS \ |
| 127 |
(HHWIN_BUTTON_EXPAND | \ |
| 128 |
HHWIN_BUTTON_BACK | \ |
| 129 |
HHWIN_BUTTON_OPTIONS | \ |
| 130 |
HHWIN_BUTTON_PRINT) |
| 131 |
|
| 132 |
// Button IDs |
| 133 |
|
| 134 |
#define IDTB_EXPAND 200 |
| 135 |
#define IDTB_CONTRACT 201 |
| 136 |
#define IDTB_STOP 202 |
| 137 |
#define IDTB_REFRESH 203 |
| 138 |
#define IDTB_BACK 204 |
| 139 |
#define IDTB_HOME 205 |
| 140 |
#define IDTB_SYNC 206 |
| 141 |
#define IDTB_PRINT 207 |
| 142 |
#define IDTB_OPTIONS 208 |
| 143 |
#define IDTB_FORWARD 209 |
| 144 |
#define IDTB_NOTES 210 // not implemented |
| 145 |
#define IDTB_BROWSE_FWD 211 |
| 146 |
#define IDTB_BROWSE_BACK 212 |
| 147 |
#define IDTB_CONTENTS 213 // not implemented |
| 148 |
#define IDTB_INDEX 214 // not implemented |
| 149 |
#define IDTB_SEARCH 215 // not implemented |
| 150 |
#define IDTB_HISTORY 216 // not implemented |
| 151 |
#define IDTB_FAVORITES 217 // not implemented |
| 152 |
#define IDTB_JUMP1 218 |
| 153 |
#define IDTB_JUMP2 219 |
| 154 |
#define IDTB_CUSTOMIZE 221 |
| 155 |
#define IDTB_ZOOM 222 |
| 156 |
#define IDTB_TOC_NEXT 223 |
| 157 |
#define IDTB_TOC_PREV 224 |
| 158 |
|
| 159 |
// Notification codes |
| 160 |
|
| 161 |
#define HHN_FIRST (0U-860U) |
| 162 |
#define HHN_LAST (0U-879U) |
| 163 |
|
| 164 |
#define HHN_NAVCOMPLETE (HHN_FIRST-0) |
| 165 |
#define HHN_TRACK (HHN_FIRST-1) |
| 166 |
#define HHN_WINDOW_CREATE (HHN_FIRST-2) |
| 167 |
|
| 168 |
typedef struct tagHHN_NOTIFY |
| 169 |
{ |
| 170 |
NMHDR hdr; |
| 171 |
PCSTR pszUrl; // Multi-byte, null-terminated string |
| 172 |
} HHN_NOTIFY; |
| 173 |
|
| 174 |
typedef struct tagHH_POPUP |
| 175 |
{ |
| 176 |
int cbStruct; // sizeof this structure |
| 177 |
HINSTANCE hinst; // instance handle for string resource |
| 178 |
UINT idString; // string resource id, or text id if pszFile is specified in HtmlHelp call |
| 179 |
LPCTSTR pszText; // used if idString is zero |
| 180 |
POINT pt; // top center of popup window |
| 181 |
COLORREF clrForeground; // use -1 for default |
| 182 |
COLORREF clrBackground; // use -1 for default |
| 183 |
RECT rcMargins; // amount of space between edges of window and text, -1 for each member to ignore |
| 184 |
LPCTSTR pszFont; // facename, point size, char set, BOLD ITALIC UNDERLINE |
| 185 |
} HH_POPUP; |
| 186 |
|
| 187 |
typedef struct tagHH_AKLINK |
| 188 |
{ |
| 189 |
int cbStruct; // sizeof this structure |
| 190 |
BOOL fReserved; // must be FALSE (really!) |
| 191 |
LPCTSTR pszKeywords; // semi-colon separated keywords |
| 192 |
LPCTSTR pszUrl; // URL to jump to if no keywords found (may be NULL) |
| 193 |
LPCTSTR pszMsgText; // Message text to display in MessageBox if pszUrl is NULL and no keyword match |
| 194 |
LPCTSTR pszMsgTitle; // Message text to display in MessageBox if pszUrl is NULL and no keyword match |
| 195 |
LPCTSTR pszWindow; // Window to display URL in |
| 196 |
BOOL fIndexOnFail; // Displays index if keyword lookup fails. |
| 197 |
} HH_AKLINK; |
| 198 |
|
| 199 |
enum { |
| 200 |
HHWIN_NAVTYPE_TOC, |
| 201 |
HHWIN_NAVTYPE_INDEX, |
| 202 |
HHWIN_NAVTYPE_SEARCH, |
| 203 |
HHWIN_NAVTYPE_FAVORITES, |
| 204 |
HHWIN_NAVTYPE_HISTORY, // not implemented |
| 205 |
HHWIN_NAVTYPE_AUTHOR, |
| 206 |
HHWIN_NAVTYPE_CUSTOM_FIRST = 11 |
| 207 |
}; |
| 208 |
|
| 209 |
enum { |
| 210 |
IT_INCLUSIVE, |
| 211 |
IT_EXCLUSIVE, |
| 212 |
IT_HIDDEN, |
| 213 |
}; |
| 214 |
|
| 215 |
typedef struct tagHH_ENUM_IT |
| 216 |
{ |
| 217 |
int cbStruct; // size of this structure |
| 218 |
int iType; // the type of the information type ie. Inclusive, Exclusive, or Hidden |
| 219 |
LPCSTR pszCatName; // Set to the name of the Category to enumerate the info types in a category; else NULL |
| 220 |
LPCSTR pszITName; // volitile pointer to the name of the infotype. Allocated by call. Caller responsible for freeing |
| 221 |
LPCSTR pszITDescription; // volitile pointer to the description of the infotype. |
| 222 |
} HH_ENUM_IT, *PHH_ENUM_IT; |
| 223 |
|
| 224 |
typedef struct tagHH_ENUM_CAT |
| 225 |
{ |
| 226 |
int cbStruct; // size of this structure |
| 227 |
LPCSTR pszCatName; // volitile pointer to the category name |
| 228 |
LPCSTR pszCatDescription; // volitile pointer to the category description |
| 229 |
} HH_ENUM_CAT, *PHH_ENUM_CAT; |
| 230 |
|
| 231 |
typedef struct tagHH_SET_INFOTYPE |
| 232 |
{ |
| 233 |
int cbStruct; // the size of this structure |
| 234 |
LPCSTR pszCatName; // the name of the category, if any, the InfoType is a member of. |
| 235 |
LPCSTR pszInfoTypeName; // the name of the info type to add to the filter |
| 236 |
} HH_SET_INFOTYPE, *PHH_SET_INFOTYPE; |
| 237 |
|
| 238 |
typedef DWORD HH_INFOTYPE; |
| 239 |
typedef HH_INFOTYPE* PHH_INFOTYPE; |
| 240 |
|
| 241 |
enum { |
| 242 |
HHWIN_NAVTAB_TOP, |
| 243 |
HHWIN_NAVTAB_LEFT, |
| 244 |
HHWIN_NAVTAB_BOTTOM, |
| 245 |
}; |
| 246 |
|
| 247 |
#define HH_MAX_TABS 19 // maximum number of tabs |
| 248 |
|
| 249 |
enum { |
| 250 |
HH_TAB_CONTENTS, |
| 251 |
HH_TAB_INDEX, |
| 252 |
HH_TAB_SEARCH, |
| 253 |
HH_TAB_FAVORITES, |
| 254 |
HH_TAB_HISTORY, |
| 255 |
HH_TAB_AUTHOR, |
| 256 |
|
| 257 |
HH_TAB_CUSTOM_FIRST = 11, |
| 258 |
HH_TAB_CUSTOM_LAST = HH_MAX_TABS |
| 259 |
}; |
| 260 |
|
| 261 |
#define HH_MAX_TABS_CUSTOM (HH_TAB_CUSTOM_LAST - HH_TAB_CUSTOM_FIRST + 1) |
| 262 |
|
| 263 |
// HH_DISPLAY_SEARCH Command Related Structures and Constants |
| 264 |
|
| 265 |
#define HH_FTS_DEFAULT_PROXIMITY (-1) |
| 266 |
|
| 267 |
typedef struct tagHH_FTS_QUERY |
| 268 |
{ |
| 269 |
int cbStruct; // Sizeof structure in bytes. |
| 270 |
BOOL fUniCodeStrings; // TRUE if all strings are unicode. |
| 271 |
LPCTSTR pszSearchQuery; // String containing the search query. |
| 272 |
LONG iProximity; // Word proximity. |
| 273 |
BOOL fStemmedSearch; // TRUE for StemmedSearch only. |
| 274 |
BOOL fTitleOnly; // TRUE for Title search only. |
| 275 |
BOOL fExecute; // TRUE to initiate the search. |
| 276 |
LPCTSTR pszWindow; // Window to display in |
| 277 |
} HH_FTS_QUERY; |
| 278 |
|
| 279 |
// HH_WINTYPE Structure |
| 280 |
|
| 281 |
typedef struct tagHH_WINTYPE { |
| 282 |
int cbStruct; // IN: size of this structure including all Information Types |
| 283 |
BOOL fUniCodeStrings; // IN/OUT: TRUE if all strings are in UNICODE |
| 284 |
LPCTSTR pszType; // IN/OUT: Name of a type of window |
| 285 |
DWORD fsValidMembers; // IN: Bit flag of valid members (HHWIN_PARAM_) |
| 286 |
DWORD fsWinProperties; // IN/OUT: Properties/attributes of the window (HHWIN_) |
| 287 |
|
| 288 |
LPCTSTR pszCaption; // IN/OUT: Window title |
| 289 |
DWORD dwStyles; // IN/OUT: Window styles |
| 290 |
DWORD dwExStyles; // IN/OUT: Extended Window styles |
| 291 |
RECT rcWindowPos; // IN: Starting position, OUT: current position |
| 292 |
int nShowState; // IN: show state (e.g., SW_SHOW) |
| 293 |
|
| 294 |
HWND hwndHelp; // OUT: window handle |
| 295 |
HWND hwndCaller; // OUT: who called this window |
| 296 |
|
| 297 |
HH_INFOTYPE* paInfoTypes; // IN: Pointer to an array of Information Types |
| 298 |
|
| 299 |
// The following members are only valid if HHWIN_PROP_TRI_PANE is set |
| 300 |
|
| 301 |
HWND hwndToolBar; // OUT: toolbar window in tri-pane window |
| 302 |
HWND hwndNavigation; // OUT: navigation window in tri-pane window |
| 303 |
HWND hwndHTML; // OUT: window displaying HTML in tri-pane window |
| 304 |
int iNavWidth; // IN/OUT: width of navigation window |
| 305 |
RECT rcHTML; // OUT: HTML window coordinates |
| 306 |
|
| 307 |
LPCTSTR pszToc; // IN: Location of the table of contents file |
| 308 |
LPCTSTR pszIndex; // IN: Location of the index file |
| 309 |
LPCTSTR pszFile; // IN: Default location of the html file |
| 310 |
LPCTSTR pszHome; // IN/OUT: html file to display when Home button is clicked |
| 311 |
DWORD fsToolBarFlags; // IN: flags controling the appearance of the toolbar |
| 312 |
BOOL fNotExpanded; // IN: TRUE/FALSE to contract or expand, OUT: current state |
| 313 |
int curNavType; // IN/OUT: UI to display in the navigational pane |
| 314 |
int tabpos; // IN/OUT: HHWIN_NAVTAB_TOP, HHWIN_NAVTAB_LEFT, or HHWIN_NAVTAB_BOTTOM |
| 315 |
int idNotify; // IN: ID to use for WM_NOTIFY messages |
| 316 |
BYTE tabOrder[HH_MAX_TABS + 1]; // IN/OUT: tab order: Contents, Index, Search, History, Favorites, Reserved 1-5, Custom tabs |
| 317 |
int cHistory; // IN/OUT: number of history items to keep (default is 30) |
| 318 |
LPCTSTR pszJump1; // Text for HHWIN_BUTTON_JUMP1 |
| 319 |
LPCTSTR pszJump2; // Text for HHWIN_BUTTON_JUMP2 |
| 320 |
LPCTSTR pszUrlJump1; // URL for HHWIN_BUTTON_JUMP1 |
| 321 |
LPCTSTR pszUrlJump2; // URL for HHWIN_BUTTON_JUMP2 |
| 322 |
RECT rcMinSize; // Minimum size for window (ignored in version 1) |
| 323 |
int cbInfoTypes; // size of paInfoTypes; |
| 324 |
LPCTSTR pszCustomTabs; // multiple zero-terminated strings |
| 325 |
} HH_WINTYPE, *PHH_WINTYPE; |
| 326 |
|
| 327 |
enum { |
| 328 |
HHACT_TAB_CONTENTS, |
| 329 |
HHACT_TAB_INDEX, |
| 330 |
HHACT_TAB_SEARCH, |
| 331 |
HHACT_TAB_HISTORY, |
| 332 |
HHACT_TAB_FAVORITES, |
| 333 |
|
| 334 |
HHACT_EXPAND, |
| 335 |
HHACT_CONTRACT, |
| 336 |
HHACT_BACK, |
| 337 |
HHACT_FORWARD, |
| 338 |
HHACT_STOP, |
| 339 |
HHACT_REFRESH, |
| 340 |
HHACT_HOME, |
| 341 |
HHACT_SYNC, |
| 342 |
HHACT_OPTIONS, |
| 343 |
HHACT_PRINT, |
| 344 |
HHACT_HIGHLIGHT, |
| 345 |
HHACT_CUSTOMIZE, |
| 346 |
HHACT_JUMP1, |
| 347 |
HHACT_JUMP2, |
| 348 |
HHACT_ZOOM, |
| 349 |
HHACT_TOC_NEXT, |
| 350 |
HHACT_TOC_PREV, |
| 351 |
HHACT_NOTES, |
| 352 |
|
| 353 |
HHACT_LAST_ENUM, |
| 354 |
}; |
| 355 |
|
| 356 |
typedef struct tagHHNTRACK |
| 357 |
{ |
| 358 |
NMHDR hdr; |
| 359 |
PCSTR pszCurUrl; // Multi-byte, null-terminated string |
| 360 |
int idAction; // HHACT_ value |
| 361 |
HH_WINTYPE* phhWinType; // Current window type structure |
| 362 |
} HHNTRACK; |
| 363 |
|
| 364 |
HWND |
| 365 |
WINAPI |
| 366 |
HtmlHelpA( |
| 367 |
HWND hwndCaller, |
| 368 |
LPCSTR pszFile, |
| 369 |
UINT uCommand, |
| 370 |
DWORD_PTR dwData |
| 371 |
); |
| 372 |
|
| 373 |
HWND |
| 374 |
WINAPI |
| 375 |
HtmlHelpW( |
| 376 |
HWND hwndCaller, |
| 377 |
LPCWSTR pszFile, |
| 378 |
UINT uCommand, |
| 379 |
DWORD_PTR dwData |
| 380 |
); |
| 381 |
#ifdef UNICODE |
| 382 |
#define HtmlHelp HtmlHelpW |
| 383 |
#else |
| 384 |
#define HtmlHelp HtmlHelpA |
| 385 |
#endif // !UNICODE |
| 386 |
|
| 387 |
// Use the following for GetProcAddress to load from hhctrl.ocx |
| 388 |
|
| 389 |
#define ATOM_HTMLHELP_API_ANSI (LPTSTR)((DWORD)((WORD)(14))) |
| 390 |
#define ATOM_HTMLHELP_API_UNICODE (LPTSTR)((DWORD)((WORD)(15))) |
| 391 |
|
| 392 |
/////////////////////////////////////////////////////////////////////////////// |
| 393 |
// |
| 394 |
// Global Control Properties. |
| 395 |
// |
| 396 |
typedef enum tagHH_GPROPID |
| 397 |
{ |
| 398 |
HH_GPROPID_SINGLETHREAD=1, // VARIANT_BOOL: True for single thread |
| 399 |
HH_GPROPID_TOOLBAR_MARGIN=2, // long: Provides a left/right margin around the toolbar. |
| 400 |
HH_GPROPID_UI_LANGUAGE=3, // long: LangId of the UI. |
| 401 |
HH_GPROPID_CURRENT_SUBSET=4, // BSTR: Current subset. |
| 402 |
HH_GPROPID_CONTENT_LANGUAGE=5 // long: LandId for desired content. |
| 403 |
} HH_GPROPID; |
| 404 |
|
| 405 |
/////////////////////////////////////////////////////////////////////////////// |
| 406 |
// |
| 407 |
// Global Property structure |
| 408 |
// |
| 409 |
#ifdef __oaidl_h__ |
| 410 |
|
| 411 |
#pragma pack(push, 8) |
| 412 |
|
| 413 |
typedef struct tagHH_GLOBAL_PROPERTY |
| 414 |
{ |
| 415 |
HH_GPROPID id; |
| 416 |
VARIANT var; |
| 417 |
} HH_GLOBAL_PROPERTY ; |
| 418 |
|
| 419 |
#pragma pack(pop) |
| 420 |
#endif |
| 421 |
|
| 422 |
#ifdef __cplusplus |
| 423 |
} |
| 424 |
#endif // __cplusplus |
| 425 |
|
| 426 |
#endif // __HTMLHELP_H__ |