📄 htmlhelp.h
字号:
LPCTSTR pszKeywords; // semi-colon separated keywords
LPCTSTR pszUrl; // URL to jump to if no keywords found (may be NULL)
LPCTSTR pszMsgText;
// Message text to display in MessageBox if pszUrl is NULL and no keyword match
LPCTSTR pszMsgTitle;
// Message text to display in MessageBox if pszUrl is NULL and no keyword match
LPCTSTR pszWindow; // Window to display URL in
BOOL fIndexOnFail; // Displays index if keyword lookup fails.
} HH_AKLINK;
enum
{
HHWIN_NAVTYPE_TOC, HHWIN_NAVTYPE_INDEX, HHWIN_NAVTYPE_SEARCH,
HHWIN_NAVTYPE_FAVORITES, HHWIN_NAVTYPE_HISTORY,
// not implemented
HHWIN_NAVTYPE_AUTHOR, HHWIN_NAVTYPE_CUSTOM_FIRST = 11
};
enum
{
IT_INCLUSIVE, IT_EXCLUSIVE, IT_HIDDEN,
};
typedef struct tagHH_ENUM_IT
{
int cbStruct; // size of this structure
int iType;
// the type of the information type ie. Inclusive, Exclusive, or Hidden
LPCSTR pszCatName;
// Set to the name of the Category to enumerate the info types in a category; else NULL
LPCSTR pszITName;
// volitile pointer to the name of the infotype. Allocated by call. Caller responsible for freeing
LPCSTR pszITDescription;
// volitile pointer to the description of the infotype.
} HH_ENUM_IT, *PHH_ENUM_IT;
typedef struct tagHH_ENUM_CAT
{
int cbStruct; // size of this structure
LPCSTR pszCatName; // volitile pointer to the category name
LPCSTR pszCatDescription;
// volitile pointer to the category description
} HH_ENUM_CAT, *PHH_ENUM_CAT;
typedef struct tagHH_SET_INFOTYPE
{
int cbStruct; // the size of this structure
LPCSTR pszCatName;
// the name of the category, if any, the InfoType is a member of.
LPCSTR pszInfoTypeName;
// the name of the info type to add to the filter
} HH_SET_INFOTYPE, *PHH_SET_INFOTYPE;
typedef DWORD HH_INFOTYPE;
typedef HH_INFOTYPE *PHH_INFOTYPE;
enum
{
HHWIN_NAVTAB_TOP, HHWIN_NAVTAB_LEFT, HHWIN_NAVTAB_BOTTOM,
};
#define HH_MAX_TABS 19 // maximum number of tabs
enum
{
HH_TAB_CONTENTS, HH_TAB_INDEX, HH_TAB_SEARCH, HH_TAB_FAVORITES,
HH_TAB_HISTORY, HH_TAB_AUTHOR,
HH_TAB_CUSTOM_FIRST = 11, HH_TAB_CUSTOM_LAST = HH_MAX_TABS
};
#define HH_MAX_TABS_CUSTOM (HH_TAB_CUSTOM_LAST - HH_TAB_CUSTOM_FIRST + 1)
// HH_DISPLAY_SEARCH Command Related Structures and Constants
#define HH_FTS_DEFAULT_PROXIMITY (-1)
typedef struct tagHH_FTS_QUERY
{
int cbStruct; // Sizeof structure in bytes.
BOOL fUniCodeStrings; // TRUE if all strings are unicode.
LPCTSTR pszSearchQuery; // String containing the search query.
LONG iProximity; // Word proximity.
BOOL fStemmedSearch; // TRUE for StemmedSearch only.
BOOL fTitleOnly; // TRUE for Title search only.
BOOL fExecute; // TRUE to initiate the search.
LPCTSTR pszWindow; // Window to display in
} HH_FTS_QUERY;
// HH_WINTYPE Structure
typedef struct tagHH_WINTYPE
{
int cbStruct;
// IN: size of this structure including all Information Types
BOOL fUniCodeStrings; // IN/OUT: TRUE if all strings are in UNICODE
LPCTSTR pszType; // IN/OUT: Name of a type of window
DWORD fsValidMembers;
// IN: Bit flag of valid members (HHWIN_PARAM_)
DWORD fsWinProperties;
// IN/OUT: Properties/attributes of the window (HHWIN_)
LPCTSTR pszCaption; // IN/OUT: Window title
DWORD dwStyles; // IN/OUT: Window styles
DWORD dwExStyles; // IN/OUT: Extended Window styles
RECT rcWindowPos; // IN: Starting position, OUT: current position
int nShowState; // IN: show state (e.g., SW_SHOW)
HWND hwndHelp; // OUT: window handle
HWND hwndCaller; // OUT: who called this window
HH_INFOTYPE *paInfoTypes;
// IN: Pointer to an array of Information Types
// The following members are only valid if HHWIN_PROP_TRI_PANE is set
HWND hwndToolBar; // OUT: toolbar window in tri-pane window
HWND hwndNavigation; // OUT: navigation window in tri-pane window
HWND hwndHTML; // OUT: window displaying HTML in tri-pane window
int iNavWidth; // IN/OUT: width of navigation window
RECT rcHTML; // OUT: HTML window coordinates
LPCTSTR pszToc; // IN: Location of the table of contents file
LPCTSTR pszIndex; // IN: Location of the index file
LPCTSTR pszFile; // IN: Default location of the html file
LPCTSTR pszHome;
// IN/OUT: html file to display when Home button is clicked
DWORD fsToolBarFlags;
// IN: flags controling the appearance of the toolbar
BOOL fNotExpanded;
// IN: TRUE/FALSE to contract or expand, OUT: current state
int curNavType; // IN/OUT: UI to display in the navigational pane
int tabpos;
// IN/OUT: HHWIN_NAVTAB_TOP, HHWIN_NAVTAB_LEFT, or HHWIN_NAVTAB_BOTTOM
int idNotify; // IN: ID to use for WM_NOTIFY messages
BYTE tabOrder[HH_MAX_TABS + 1];
// IN/OUT: tab order: Contents, Index, Search, History, Favorites, Reserved 1-5, Custom tabs
int cHistory;
// IN/OUT: number of history items to keep (default is 30)
LPCTSTR pszJump1; // Text for HHWIN_BUTTON_JUMP1
LPCTSTR pszJump2; // Text for HHWIN_BUTTON_JUMP2
LPCTSTR pszUrlJump1; // URL for HHWIN_BUTTON_JUMP1
LPCTSTR pszUrlJump2; // URL for HHWIN_BUTTON_JUMP2
RECT rcMinSize; // Minimum size for window (ignored in version 1)
int cbInfoTypes; // size of paInfoTypes;
LPCTSTR pszCustomTabs; // multiple zero-terminated strings
} HH_WINTYPE, *PHH_WINTYPE;
enum
{
HHACT_TAB_CONTENTS, HHACT_TAB_INDEX, HHACT_TAB_SEARCH,
HHACT_TAB_HISTORY, HHACT_TAB_FAVORITES,
HHACT_EXPAND, HHACT_CONTRACT, HHACT_BACK, HHACT_FORWARD, HHACT_STOP,
HHACT_REFRESH, HHACT_HOME, HHACT_SYNC, HHACT_OPTIONS,
HHACT_PRINT, HHACT_HIGHLIGHT, HHACT_CUSTOMIZE, HHACT_JUMP1,
HHACT_JUMP2, HHACT_ZOOM, HHACT_TOC_NEXT, HHACT_TOC_PREV,
HHACT_NOTES,
HHACT_LAST_ENUM,
};
typedef struct tagHHNTRACK
{
NMHDR hdr;
PCSTR pszCurUrl; // Multi-byte, null-terminated string
int idAction; // HHACT_ value
HH_WINTYPE *phhWinType; // Current window type structure
} HHNTRACK;
HWND WINAPI HtmlHelpA(HWND hwndCaller, LPCSTR pszFile, UINT uCommand,
DWORD_PTR dwData);
HWND WINAPI HtmlHelpW(HWND hwndCaller, LPCWSTR pszFile, UINT uCommand,
DWORD_PTR dwData);
#ifdef UNICODE
#define HtmlHelp HtmlHelpW
#else
#define HtmlHelp HtmlHelpA
#endif // !UNICODE
// Use the following for GetProcAddress to load from hhctrl.ocx
#define ATOM_HTMLHELP_API_ANSI (LPTSTR)((DWORD)((WORD)(14)))
#define ATOM_HTMLHELP_API_UNICODE (LPTSTR)((DWORD)((WORD)(15)))
///////////////////////////////////////////////////////////////////////////////
//
// Global Control Properties.
//
typedef enum tagHH_GPROPID
{
HH_GPROPID_SINGLETHREAD = 1,
// VARIANT_BOOL: True for single thread
HH_GPROPID_TOOLBAR_MARGIN = 2,
// long: Provides a left/right margin around the toolbar.
HH_GPROPID_UI_LANGUAGE = 3, // long: LangId of the UI.
HH_GPROPID_CURRENT_SUBSET = 4, // BSTR: Current subset.
HH_GPROPID_CONTENT_LANGUAGE = 5
// long: LandId for desired content.
} HH_GPROPID;
///////////////////////////////////////////////////////////////////////////////
//
// Global Property structure
//
#ifdef __oaidl_h__
#pragma pack(push, 8)
typedef struct tagHH_GLOBAL_PROPERTY
{
HH_GPROPID id;
VARIANT var;
} HH_GLOBAL_PROPERTY;
#pragma pack(pop)
#endif
#ifdef __cplusplus
}
#endif // __cplusplus
#endif // __HTMLHELP_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -