// a better solution should be found later...
#define wxUSE_MOUSEEVENT_HACK 0
-#include "wx/hash.h"
-
-// pseudo-template HWND <-> wxWindow hash table
-WX_DECLARE_HASH(wxWindow, wxWindowList, wxWinHashTable);
-
-extern wxWinHashTable *wxWinHandleHash;
-
// ---------------------------------------------------------------------------
// constants
// ---------------------------------------------------------------------------
bool HandleActivate(int flag, bool minimized, WXHWND activate);
bool HandleCommand(WXWORD id, WXWORD cmd, WXHWND control);
- bool HandleSysCommand(WXWPARAM wParam, WXLPARAM lParam);
bool HandleCtlColor(WXHBRUSH *hBrush,
WXHDC hdc,
// ---------------------------------------------------------------------------
// kbd code translation
-WXDLLEXPORT int wxCharCodeMSWToWX(int keySym);
+WXDLLEXPORT int wxCharCodeMSWToWX(int keySym, WXLPARAM lParam = 0);
WXDLLEXPORT int wxCharCodeWXToMSW(int id, bool *IsVirtual);
// window creation helper class: before creating a new HWND, instantiate an
~wxWindowCreationHook();
};
+// ----------------------------------------------------------------------------
+// global objects
+// ----------------------------------------------------------------------------
+
+// notice that this hash must be defined after wxWindow declaration as it
+// needs to "see" its dtor and not just forward declaration
+#include "wx/hash.h"
+
+// pseudo-template HWND <-> wxWindow hash table
+#if WXWIN_COMPATIBILITY_2_4
+WX_DECLARE_HASH(wxWindow, wxWindowList, wxWinHashTable);
+#else
+WX_DECLARE_HASH(wxWindowMSW, wxWindowList, wxWinHashTable);
+#endif
+
+extern wxWinHashTable *wxWinHandleHash;
+
#endif
// _WX_WINDOW_H_