From efc35078eae22f46578360b4235b443a13ec4a5d Mon Sep 17 00:00:00 2001 From: Eric Pouech Date: Fri, 10 Feb 2012 21:38:03 +0100 Subject: [PATCH] winhlp32: Added support for some keyword support in external DLL support (RegisterRoutine parameters). --- programs/winhlp32/macro.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/programs/winhlp32/macro.c b/programs/winhlp32/macro.c index ea6ecbdec50..615b687d5e2 100644 --- a/programs/winhlp32/macro.c +++ b/programs/winhlp32/macro.c @@ -1029,6 +1029,32 @@ int MACRO_Lookup(const char* name, struct lexret* lr) return ret; if (MACRO_Loaded && (ret = MACRO_DoLookUp(MACRO_Loaded, name, lr, MACRO_NumLoaded)) != EMPTY) return ret; + if (!strcmp(name, "hwndApp")) + { + WINHELP_WINDOW* win; + lr->integer = 0; + for (win = Globals.win_list; win; win = win->next) + { + if (!strcmp(win->info->name, "main")) + { + lr->integer = (LONG_PTR)win->hMainWnd; + break; + } + } + return INTEGER; + } + if (!strcmp(name, "hwndContext")) + { + lr->integer = Globals.active_win ? + (LONG_PTR)Globals.active_win->hMainWnd : 0; + return INTEGER; + } + if (!strcmp(name, "qchPath") || !strcmp(name, "qError") || !strcmp(name, "lTopicNo") || + !strcmp(name, "hfs") || !strcmp(name, "coForeground") || !strcmp(name, "coBackground")) + { + WINE_FIXME("keyword %s not substituted in macro parsing\n", name); + return EMPTY; + } lr->string = name; return IDENTIFIER;