From c615a3f57b83fa29957c6b7568535201ee43da25 Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Wed, 5 Dec 2007 08:45:07 +0000 Subject: [PATCH] Clarified context menu event behaviour. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/cntxtevt.tex | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/latex/wx/cntxtevt.tex b/docs/latex/wx/cntxtevt.tex index 5a4182fb96..3b0ef5b107 100644 --- a/docs/latex/wx/cntxtevt.tex +++ b/docs/latex/wx/cntxtevt.tex @@ -3,6 +3,14 @@ This class is used for context menu events, sent to give the application a chance to show a context (popup) menu. +Note that if \helpref{GetPosition}{wxcontextmenueventgetposition} returns wxDefaultPosition, this means that the event originated +from a keyboard context button event, and you should compute a suitable position yourself, +for example by calling \helpref{wxGetMousePosition}{wxgetmouseposition}. + +When a keyboard context menu button is pressed on Windows, a right-click event with default position is sent first, +and if this event is not processed, the context menu event is sent. So if you process mouse events and you find your context menu event handler +is not being called, you could call wxEvent::Skip for mouse right-down events. + \wxheading{Derived from} \helpref{wxCommandEvent}{wxcommandevent}\\ @@ -44,7 +52,11 @@ Constructor. \constfunc{wxPoint}{GetPosition}{\void} -Returns the position at which the menu should be shown. +Returns the position in screen coordinates at which the menu should be shown. Use \helpref{wxWindow::ScreenToClient}{wxwindowscreentoclient} to +convert to client coordinates. You can also omit a position from \helpref{wxWindow::PopupMenu}{wxwindowpopupmenu} in order to use +the current mouse pointer position. + +If the event originated from a keyboard event, the value returned from this function will be wxDefaultPosition. \membersection{wxContextMenuEvent::SetPosition}\label{wxcontextmenueventsetposition} -- 2.45.2