template <typename T> void favorite_manager::add_impl(T &&key) { auto const ins(m_favorites.emplace(std::forward<T>(key))); if (ins.second) { if (!m_sorted.empty()) m_sorted.emplace_back(std::ref(*ins.first)); m_need_sort = true; save_favorites(); } }
template <typename T> bool favorite_manager::remove_impl(T const &key) { auto const found(m_favorites.find(key)); if (m_favorites.end() != found) { m_favorites.erase(found); m_sorted.clear(); m_need_sort = true; save_favorites(); return true; } else { return false; } }
Plugin_Chooser::~Plugin_Chooser( ) { save_favorites(); }