m_finished = true;
- m_owner->SetFocus(); // This doesn't work. TODO.
+ m_owner->SetFocusIgnoringChildren();
}
}
m_findTimer = NULL;
+ m_dropEffectAboveItem = false;
+
m_lastOnSame = false;
-#ifdef __WXMAC_CARBON__
+#ifdef __WXMAC_CARBON__
m_normalFont.MacCreateThemeFont( kThemeViewsFont ) ;
#else
m_normalFont = wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT );
m_select_me = item;
}
if (item != m_current && IsDescendantOf(item, m_current)) {
+ m_current->SetHilight( false );
m_current = NULL;
m_select_me = item;
}
if (item == m_select_me)
m_select_me = NULL;
-
+
delete item;
}
{
// draw a line under the drop target because the item will be
// dropped there
- DrawLine(item, true /* below */);
+ DrawLine(item, !m_dropEffectAboveItem );
}
SetCursor(wxCURSOR_BULLSEYE);
}
break;
+ case WXK_MENU:
+ {
+ wxTreeEvent event( wxEVT_COMMAND_TREE_ITEM_MENU, GetId() );
+ event.m_item = m_current;
+ event.SetEventObject( this );
+ GetEventHandler()->ProcessEvent( event );
+ break;
+ }
case ' ':
case WXK_RETURN:
if ( !event.HasModifiers() )
CaptureMouse();
}
}
- else if ( event.Moving() )
+ else if ( event.Dragging() )
{
if ( item != m_dropTarget )
{
// highlight the current drop target if any
DrawDropEffect(m_dropTarget);
-#if defined( __WXMSW__ ) || defined(__WXMAC__)
+#if defined(__WXMSW__) || defined(__WXMAC__) || defined(__WXGTK20__)
Update();
#else
wxYieldIfNeeded();
if ( event.RightDown() )
{
+ DoSelectItem(item, true, false);
wxTreeEvent nevent(wxEVT_COMMAND_TREE_ITEM_RIGHT_CLICK, GetId());
nevent.m_item = item;
nevent.m_pointDrag = CalcScrolledPosition(pt);
nevent.SetEventObject(this);
- GetEventHandler()->ProcessEvent(nevent);
+ event.Skip(!GetEventHandler()->ProcessEvent(nevent));
}
else if ( event.LeftUp() )
{
#endif
}
+#if WXWIN_COMPATIBILITY_2_4
+
+int wxGenericTreeCtrl::GetItemSelectedImage(const wxTreeItemId& item) const
+{
+ return GetItemImage(item, wxTreeItemIcon_Selected);
+}
+
+void wxGenericTreeCtrl::SetItemSelectedImage(const wxTreeItemId& item, int image)
+{
+ SetItemImage(item, image, wxTreeItemIcon_Selected);
+}
+
+#endif // WXWIN_COMPATIBILITY_2_4
+
+#if WXWIN_COMPATIBILITY_2_2
+
+wxTreeItemId wxGenericTreeCtrl::GetParent(const wxTreeItemId& item) const
+{
+ return GetItemParent( item );
+}
+
+#endif // WXWIN_COMPATIBILITY_2_2
+
#endif // wxUSE_TREECTRL