Remove code maintaining last item from the treectrl sample.

The code was buggy (e.g. it didn't update the last item correctly after
executing "Append many items" menu command) and seems to be unnecessary.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2014-02-22 22:39:53 +00:00
parent b905bae91c
commit 90860e9444
2 changed files with 7 additions and 13 deletions

View File

@@ -758,7 +758,12 @@ void MyFrame::OnCollapseAndReset(wxCommandEvent& WXUNUSED(event))
void MyFrame::OnEnsureVisible(wxCommandEvent& WXUNUSED(event)) void MyFrame::OnEnsureVisible(wxCommandEvent& WXUNUSED(event))
{ {
m_treeCtrl->DoEnsureVisible(); const wxTreeItemId
idLast = m_treeCtrl->GetLastChild(m_treeCtrl->GetRootItem());
if ( idLast.IsOk() )
m_treeCtrl->EnsureVisible(idLast);
else
wxLogMessage("No last item");
} }
void MyFrame::OnSetFocus(wxCommandEvent& WXUNUSED(event)) void MyFrame::OnSetFocus(wxCommandEvent& WXUNUSED(event))
@@ -1167,12 +1172,6 @@ void MyTreeCtrl::AddItemsRecursively(const wxTreeItemId& idParent,
wxTreeItemIcon_Expanded); wxTreeItemIcon_Expanded);
} }
// remember the last child for OnEnsureVisible()
if ( !hasChildren && n == numChildren - 1 )
{
m_lastItem = id;
}
AddItemsRecursively(id, numChildren, depth - 1, n + 1); AddItemsRecursively(id, numChildren, depth - 1, n + 1);
} }
} }
@@ -1307,7 +1306,6 @@ void MyTreeCtrl::LogEvent(const wxChar *name, const wxTreeEvent& event)
void MyTreeCtrl::name(wxTreeEvent& event) \ void MyTreeCtrl::name(wxTreeEvent& event) \
{ \ { \
LogEvent(wxT(#name), event); \ LogEvent(wxT(#name), event); \
SetLastItem(wxTreeItemId()); \
event.Skip(); \ event.Skip(); \
} }

View File

@@ -105,7 +105,6 @@ public:
void DoSortChildren(const wxTreeItemId& item, bool reverse = false) void DoSortChildren(const wxTreeItemId& item, bool reverse = false)
{ m_reverseSort = reverse; wxTreeCtrl::SortChildren(item); } { m_reverseSort = reverse; wxTreeCtrl::SortChildren(item); }
void DoEnsureVisible() { if (m_lastItem.IsOk()) EnsureVisible(m_lastItem); }
void DoToggleIcon(const wxTreeItemId& item); void DoToggleIcon(const wxTreeItemId& item);
void DoToggleState(const wxTreeItemId& item); void DoToggleState(const wxTreeItemId& item);
@@ -114,8 +113,6 @@ public:
int ImageSize(void) const { return m_imageSize; } int ImageSize(void) const { return m_imageSize; }
void SetLastItem(wxTreeItemId id) { m_lastItem = id; }
void SetAlternateImages(bool show) { m_alternateImages = show; } void SetAlternateImages(bool show) { m_alternateImages = show; }
bool AlternateImages() const { return m_alternateImages; } bool AlternateImages() const { return m_alternateImages; }
@@ -152,8 +149,7 @@ private:
int m_imageSize; // current size of images int m_imageSize; // current size of images
bool m_reverseSort; // flag for OnCompareItems bool m_reverseSort; // flag for OnCompareItems
wxTreeItemId m_lastItem, // for OnEnsureVisible() wxTreeItemId m_draggedItem; // item being dragged right now
m_draggedItem; // item being dragged right now
bool m_alternateImages; bool m_alternateImages;
bool m_alternateStates; bool m_alternateStates;