61 #define X(x) case x: return #x 95 default:
return "???";
102 static const WCHAR helpW[] = {
'\\',
'h',
'e',
'l',
'p',
'\\',0};
103 static const WCHAR delimW[] = {
':',
':',0};
104 static const WCHAR delim2W[] = {
'>',0};
161 TRACE(
"(%p, %s, command=%s, data=%lx)\n",
187 index = default_index;
202 if(!
info->WinType.pszType)
214 static const WCHAR delimW[] = {
':',
':',0};
221 FIXME(
"Opening a CHM file in the context of another is not supported.\n");
253 FIXME(
"Should display search specified by HH_FTS_QUERY structure.\n");
257 memset(&nmhdr, 0,
sizeof(nmhdr));
262 return info->WinType.hwndHelp;
288 if(!
info->WinType.pszType)
297 return info->WinType.hwndHelp;
304 return info->WinType.hwndHelp;
311 FIXME(
"HH_PRETRANSLATEMESSAGE unimplemented\n");
373 *wintype =
info->WinType;
436 FIXME(
"structures not handled yet\n");
455 if (!wdata.pszType)
break;
503 int len, buflen, mapid = -1;
515 while(*szCmdLine ==
'-')
537 FIXME(
"Unhandled HTML Help command line parameter! (%.*s)\n", (
int)(
space-szCmdLine), szCmdLine);
543 if (*szCmdLine ==
'\"')
544 endq =
strchr(++szCmdLine,
'\"');
547 len = endq - szCmdLine;
570 ERR(
"Failed to open HTML Help file '%s'.\n", szCmdLine);
void wintype_stringsW_free(struct wintype_stringsW *stringsW)
BOOL WINAPI TranslateMessage(_In_ const MSG *)
#define HH_TP_HELP_CONTEXTMENU
#define HH_GET_WIN_HANDLE
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
#define HH_SAFE_DISPLAY_TOPIC
HRESULT __wine_register_resources(HMODULE module) DECLSPEC_HIDDEN
#define HH_PRETRANSLATEMESSAGE
ACPI_SIZE strlen(const char *String)
#define HH_KEYWORD_LOOKUP
static WCHAR * strdupW(const WCHAR *src)
_CONST_RETURN wchar_t *__cdecl wcsstr(_In_z_ const wchar_t *_Str, _In_z_ const wchar_t *_SubStr)
LPWSTR FindContextAlias(CHMInfo *chm, DWORD index)
TW_UINT32 TW_UINT16 TW_UINT16 MSG
static LPSTR strdupWtoA(LPCWSTR str)
HHInfo * CreateHelpViewer(HHInfo *info, LPCWSTR filename, HWND caller)
BOOL WINAPI DisableThreadLibraryCalls(IN HMODULE hLibModule)
DWORD WINAPI GetFullPathNameW(IN LPCWSTR lpFileName, IN DWORD nBufferLength, OUT LPWSTR lpBuffer, OUT LPWSTR *lpFilePart)
#define DLL_PROCESS_ATTACH
BOOL NavigateToChm(HHInfo *info, LPCWSTR file, LPCWSTR index)
#define HH_GET_LAST_ERROR
#define CLASS_E_CLASSNOTAVAILABLE
static IN DWORD IN LPVOID lpvReserved
static void * heap_alloc(size_t len)
UINT WINAPI GetWindowsDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
#define HH_DISPLAY_SEARCH
int WINAPI doWinMain(HINSTANCE hInstance, LPSTR szCmdLine)
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
void UpdateHelpWindow(HHInfo *info)
LRESULT WINAPI DispatchMessageW(_In_ const MSG *)
DWORD WINAPI GetFileAttributesW(LPCWSTR lpFileName)
static struct _test_info info[]
HWND WINAPI HtmlHelpW(HWND caller, LPCWSTR filename, UINT command, DWORD_PTR data)
HRESULT WINAPI DllRegisterServer(void)
HWND WINAPI GetDesktopWindow(void)
#define HH_TP_HELP_WM_HELP
void MergeChmProperties(HH_WINTYPEW *src, HHInfo *info, BOOL override)
static const char * command_to_string(UINT command)
BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD fdwReason, LPVOID lpvReserved)
int strncmp(const char *String1, const char *String2, ACPI_SIZE Count)
#define INVALID_FILE_ATTRIBUTES
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static void wintypeAtoW(const HH_WINTYPEA *data, HH_WINTYPEW *wdata, struct wintype_stringsW *stringsW)
static void wintypeWtoA(const HH_WINTYPEW *wdata, HH_WINTYPEA *data, struct wintype_stringsA *stringsA)
void ReleaseHelpViewer(HHInfo *info)
HRESULT __wine_unregister_resources(HMODULE module) DECLSPEC_HIDDEN
static const WCHAR space[]
HWND WINAPI HtmlHelpA(HWND caller, LPCSTR filename, UINT command, DWORD_PTR data)
#define memcpy(s1, s2, n)
static IHTMLWindow2 * window
static const WCHAR helpW[]
#define HH_SET_INCLUSIVE_FILTER
HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
#define HH_ENUM_CATEGORY_IT
static unsigned __int64 next
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
void wintype_stringsA_free(struct wintype_stringsA *stringsA)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
DWORD WINAPI ExpandEnvironmentStringsW(IN LPCWSTR lpSrc, IN LPWSTR lpDst, IN DWORD nSize)
BOOL WINAPI GetMessageW(_Out_ LPMSG, _In_opt_ HWND, _In_ UINT, _In_ UINT)
#define HH_RESET_IT_FILTER
#define MultiByteToWideChar
char * strchr(const char *String, int ch)
WINE_DEFAULT_DEBUG_CHANNEL(htmlhelp)
BOOL NavigateToUrl(HHInfo *info, LPCWSTR surl)
_Check_return_ int __cdecl atoi(_In_z_ const char *_Str)
static BOOL resolve_filename(const WCHAR *env_filename, WCHAR *fullname, DWORD buflen, WCHAR **index, WCHAR **window)
HINSTANCE hhctrl_hinstance
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
#define HH_DISPLAY_TEXT_POPUP
#define HH_ENUM_INFO_TYPE
HHInfo * find_window(const WCHAR *window)
static WCHAR * strdupAtoW(const char *str)
HRESULT WINAPI DllUnregisterServer(void)
#define HH_SET_GLOBAL_PROPERTY
LPCWSTR skip_schema(LPCWSTR url)
#define HH_SET_EXCLUSIVE_FILTER
static BOOL heap_free(void *mem)