1. '\n's in tooltip messages are handled (replaced by spaces anyhow, tooltip
made multiline if comctl32 supports it) 2. added wxTAB_TRAVERSAL to default wxScrolledWindow style 3. improved arrows handling in radiobox (still problems for multirow ones) 4. [Alt]-<mnemonic> works in nested panels as well now because we use WS_EX_CONTROLPARENT for all windows with wxTAB_TRAVERSAL style 5. tooltips for radioboxes work again, even if I'm not really satisfied with solution :-( but I spent 2 hours trying to make TTM_WINDOWFROMPOINT handler work and I don't have more time to waste on this. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@5620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -67,6 +67,10 @@
|
||||
#include "wx/resource.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_TOOLTIPS
|
||||
#include "wx/tooltip.h"
|
||||
#endif // wxUSE_TOOLTIPS
|
||||
|
||||
// OLE is used for drag-and-drop, clipboard, OLE Automation...
|
||||
#ifndef wxUSE_NORLANDER_HEADERS
|
||||
#if defined(__GNUWIN32__) || defined(__SC__) || defined(__SALFORDC__)
|
||||
@@ -959,19 +963,24 @@ bool wxApp::ProcessMessage(WXMSG *wxmsg)
|
||||
{
|
||||
MSG *msg = (MSG *)wxmsg;
|
||||
HWND hWnd = msg->hwnd;
|
||||
wxWindow *wndThis = wxFindWinFromHandle((WXHWND)hWnd), *wnd;
|
||||
wxWindow *wndThis = wxGetWindowFromHWND((WXHWND)hWnd);
|
||||
|
||||
// for some composite controls (like a combobox), wndThis might be NULL
|
||||
// because the subcontrol is not a wxWindow, but only the control itself
|
||||
// is - try to catch this case
|
||||
while ( hWnd && !wndThis )
|
||||
#if wxUSE_TOOLTIPS
|
||||
// we must relay WM_MOUSEMOVE events to the tooltip ctrl if we want it to
|
||||
// popup the tooltip bubbles
|
||||
if ( wndThis && (msg->message == WM_MOUSEMOVE) )
|
||||
{
|
||||
hWnd = ::GetParent(hWnd);
|
||||
wndThis = wxFindWinFromHandle((WXHWND)hWnd);
|
||||
wxToolTip *tt = wndThis->GetToolTip();
|
||||
if ( tt )
|
||||
{
|
||||
tt->RelayEvent(wxmsg);
|
||||
}
|
||||
}
|
||||
#endif // wxUSE_TOOLTIPS
|
||||
|
||||
// Try translations first; find the youngest window with
|
||||
// a translation table.
|
||||
wxWindow *wnd;
|
||||
for ( wnd = wndThis; wnd; wnd = wnd->GetParent() )
|
||||
{
|
||||
if ( wnd->MSWTranslateMessage(wxmsg) )
|
||||
|
||||
Reference in New Issue
Block a user