Didn't need most of the cshelp fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15532
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
+// Not currently needed, but on some systems capture may not work as
+// expected so we'll leave it here for now.
+#if 0
static void wxPushOrPopEventHandlers(wxContextHelp* help, wxWindow* win, bool push)
{
if (push)
static void wxPushOrPopEventHandlers(wxContextHelp* help, wxWindow* win, bool push)
{
if (push)
// Begin 'context help mode'
bool wxContextHelp::BeginContextHelp(wxWindow* win)
// Begin 'context help mode'
bool wxContextHelp::BeginContextHelp(wxWindow* win)
-// win->PushEventHandler(new wxContextHelpEvtHandler(this));
- wxPushOrPopEventHandlers(this, win, TRUE);
+ win->PushEventHandler(new wxContextHelpEvtHandler(this));
+ //wxPushOrPopEventHandlers(this, win, TRUE);
-// win->PopEventHandler(TRUE);
- wxPushOrPopEventHandlers(this, win, FALSE);
+ win->PopEventHandler(TRUE);
+ //wxPushOrPopEventHandlers(this, win, FALSE);
win->SetCursor(oldCursor);
win->SetCursor(oldCursor);
y = GET_Y_LPARAM(lParam);
// redirect the event to a static control if necessary
y = GET_Y_LPARAM(lParam);
// redirect the event to a static control if necessary
- wxWindow *win = FindWindowForMouseEvent(this, &x, &y);
-
- processed = win->HandleMouseEvent(message, x, y, wParam);
+ if (this == GetCapture())
+ {
+ processed = HandleMouseEvent(message, x, y, wParam);
+ }
+ else
+ {
+ wxWindow *win = FindWindowForMouseEvent(this, &x, &y);
+ processed = win->HandleMouseEvent(message, x, y, wParam);
+ }