From aab899d63cb40bcb180ed717961424c00e21b932 Mon Sep 17 00:00:00 2001 From: vsonnier Date: Fri, 3 Mar 2017 20:33:14 +0100 Subject: [PATCH] Bookmarks fixes: try to cleanup Recent entries in order --- src/forms/Bookmark/BookmarkView.cpp | 13 ++++++++----- src/forms/Bookmark/BookmarkView.h | 4 +--- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/forms/Bookmark/BookmarkView.cpp b/src/forms/Bookmark/BookmarkView.cpp index f4c61a0..f5d400c 100644 --- a/src/forms/Bookmark/BookmarkView.cpp +++ b/src/forms/Bookmark/BookmarkView.cpp @@ -561,9 +561,10 @@ void BookmarkView::onTreeActivate( wxTreeEvent& event ) { nextDemod = tvi->demod; } } else if (tvi->type == TreeViewItem::TREEVIEW_ITEM_TYPE_RECENT) { - wxGetApp().getBookmarkMgr().removeRecent(tvi->bookmarkEnt); + activateBookmark(tvi->bookmarkEnt); nextEnt = tvi->bookmarkEnt; + wxGetApp().getBookmarkMgr().removeRecent(tvi->bookmarkEnt); wxGetApp().getBookmarkMgr().updateActiveList(); } else if (tvi->type == TreeViewItem::TREEVIEW_ITEM_TYPE_BOOKMARK) { activateBookmark(tvi->bookmarkEnt); @@ -742,9 +743,10 @@ void BookmarkView::doBookmarkActive(std::string group, DemodulatorInstance *demo void BookmarkView::doBookmarkRecent(std::string group, BookmarkEntryPtr be) { - wxGetApp().getBookmarkMgr().removeRecent(be); + wxGetApp().getBookmarkMgr().addBookmark(group, be); nextEnt = be; + wxGetApp().getBookmarkMgr().removeRecent(be); wxGetApp().getBookmarkMgr().updateBookmarks(); bookmarkSelection(be); } @@ -1203,10 +1205,10 @@ void BookmarkView::onActivateRecent( wxCommandEvent& /* event */ ) { TreeViewItem *curSel = itemToTVI(m_treeView->GetSelection()); if (curSel && curSel->type == TreeViewItem::TREEVIEW_ITEM_TYPE_RECENT) { - - wxGetApp().getBookmarkMgr().removeRecent(curSel->bookmarkEnt); + activateBookmark(curSel->bookmarkEnt); DeleteSingleItem(m_treeView->GetSelection()); + wxGetApp().getBookmarkMgr().removeRecent(curSel->bookmarkEnt); wxGetApp().getBookmarkMgr().updateActiveList(); } } @@ -1220,8 +1222,9 @@ void BookmarkView::onRemoveRecent ( wxCommandEvent& /* event */ ) { TreeViewItem *curSel = itemToTVI(m_treeView->GetSelection()); if (curSel && curSel->type == TreeViewItem::TREEVIEW_ITEM_TYPE_RECENT) { - wxGetApp().getBookmarkMgr().removeRecent(curSel->bookmarkEnt); + DeleteSingleItem(m_treeView->GetSelection()); + wxGetApp().getBookmarkMgr().removeRecent(curSel->bookmarkEnt); wxGetApp().getBookmarkMgr().updateActiveList(); } } diff --git a/src/forms/Bookmark/BookmarkView.h b/src/forms/Bookmark/BookmarkView.h index 3daee57..899e6cd 100644 --- a/src/forms/Bookmark/BookmarkView.h +++ b/src/forms/Bookmark/BookmarkView.h @@ -27,9 +27,7 @@ public: }; virtual ~TreeViewItem() { - //dec ref count manually ??? - bookmarkEnt = nullptr; - rangeEnt = nullptr; + // }; TreeViewItemType type;