From 2334fef6eaf763bc0b9132a86cc57c395c85c557 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 2 Jan 2005 22:46:52 +0000 Subject: [PATCH] pass correct tool id (and not always -1) to EVT_TOOL_RCLICKED() handler git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/changes.txt | 1 + src/msw/tbar95.cpp | 11 +++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/docs/changes.txt b/docs/changes.txt index 4b701423c5..46b34a48ad 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -80,6 +80,7 @@ wxMSW: - fixed enhanced metafiles loading from files (Andreas Goebel) - wxRadioButtons no longer have to be consecutive in a group - fixed spurious selection of combobox text during resize +- pass correct tool id (and not always -1) to EVT_TOOL_RCLICKED() handler wxWinCE: - Added support for MS Handheld PC 2000. This was done before 2.5.4, diff --git a/src/msw/tbar95.cpp b/src/msw/tbar95.cpp index d1079d550c..28f96b3f93 100644 --- a/src/msw/tbar95.cpp +++ b/src/msw/tbar95.cpp @@ -1211,11 +1211,14 @@ void wxToolBar::OnMouseEvent(wxMouseEvent& event) return; } - if (event.RightDown()) + if ( event.RightDown() ) { - // For now, we don't have an id. Later we could - // try finding the tool. - OnRightClick((int)-1, event.GetX(), event.GetY()); + // find the tool under the mouse + wxCoord x,y; + event.GetPosition(&x, &y); + + wxToolBarToolBase *tool = FindToolForPosition(x, y); + OnRightClick(tool ? tool->GetId() : -1, x, y); } else { -- 2.45.2