Applied [ 858342 ] Event-based processing of item tooltips in generic TreeCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -2857,6 +2857,23 @@ void wxGenericTreeCtrl::OnMouse( wxMouseEvent &event )
|
|||||||
{
|
{
|
||||||
if ( !m_anchor ) return;
|
if ( !m_anchor ) return;
|
||||||
|
|
||||||
|
// Determines what item we are hovering over and need a tooltip for
|
||||||
|
wxTreeItemId HoverItem = HitTest(ScreenToClient(wxGetMousePosition()));
|
||||||
|
|
||||||
|
// We do not want a tooltip if we are dragging, or if the rename timer is running
|
||||||
|
if (HoverItem.IsOk() && !m_isDragging && (!m_renameTimer || !m_renameTimer->IsRunning()))
|
||||||
|
{
|
||||||
|
// Ask the tree control what tooltip (if any) should be shown
|
||||||
|
wxTreeEvent hevent(wxEVT_COMMAND_TREE_ITEM_GETTOOLTIP, GetId());
|
||||||
|
hevent.m_item = (long) HoverItem;
|
||||||
|
hevent.SetEventObject(this);
|
||||||
|
|
||||||
|
if ( GetEventHandler()->ProcessEvent(hevent) && hevent.IsAllowed() )
|
||||||
|
{
|
||||||
|
SetToolTip(hevent.m_label);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// we process left mouse up event (enables in-place edit), right down
|
// we process left mouse up event (enables in-place edit), right down
|
||||||
// (pass to the user code), left dbl click (activate item) and
|
// (pass to the user code), left dbl click (activate item) and
|
||||||
// dragging/moving events for items drag-and-drop
|
// dragging/moving events for items drag-and-drop
|
||||||
|
Reference in New Issue
Block a user