[gnote] Update statistics addin for new design
- From: Aurimas Černius <aurimasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnote] Update statistics addin for new design
- Date: Sun, 27 Dec 2015 13:04:07 +0000 (UTC)
commit c5a60343651d5c42ab1b7a1f73c0c3ffcb3b7dae
Author: Aurimas Černius <aurisc4 gmail com>
Date: Sun Dec 27 15:01:28 2015 +0200
Update statistics addin for new design
src/addins/statistics/statistics.desktop.in.in | 4 ++-
.../statistics/statisticsapplicationaddin.cpp | 28 +++++++++++--------
.../statistics/statisticsapplicationaddin.hpp | 7 +++--
3 files changed, 23 insertions(+), 16 deletions(-)
---
diff --git a/src/addins/statistics/statistics.desktop.in.in b/src/addins/statistics/statistics.desktop.in.in
index 915e68c..2bc98cf 100644
--- a/src/addins/statistics/statistics.desktop.in.in
+++ b/src/addins/statistics/statistics.desktop.in.in
@@ -4,8 +4,10 @@ _Name=Statistics
_Description=Show various statistics about notes.
_Authors=Aurimas Černius
Category=Tools
-Version=0.2
+Version=0.3
DefaultEnabled=false
Module=statistics
LibgnoteRelease= LIBGNOTE_RELEASE@
LibgnoteVersionInfo= LIBGNOTE_VERSION_INFO@
+[Actions]
+actions_void=statistics-show
diff --git a/src/addins/statistics/statisticsapplicationaddin.cpp
b/src/addins/statistics/statisticsapplicationaddin.cpp
index 8206930..1b087e5 100644
--- a/src/addins/statistics/statisticsapplicationaddin.cpp
+++ b/src/addins/statistics/statisticsapplicationaddin.cpp
@@ -1,7 +1,7 @@
/*
* gnote
*
- * Copyright (C) 2013 Aurimas Cernius
+ * Copyright (C) 2013,2015 Aurimas Cernius
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -23,6 +23,7 @@
#include "iactionmanager.hpp"
#include "ignote.hpp"
#include "statisticsapplicationaddin.hpp"
+#include "utils.hpp"
namespace statistics {
@@ -44,21 +45,18 @@ void StatisticsApplicationAddin::initialize()
{
if(!m_initialized) {
m_initialized = true;
- if(m_action == 0) {
- m_action = Gtk::Action::create();
- m_action->set_name("ShowStatistics");
- m_action->set_label(_("Show Statistics"));
- m_action->signal_activate()
- .connect(sigc::mem_fun(*this, &StatisticsApplicationAddin::on_show_statistics));
- gnote::IActionManager::obj().add_main_window_search_action(m_action, 100);
- }
+ auto & manager(gnote::IActionManager::obj());
+ manager.register_main_window_search_callback("statistics-show-cback",
+ "statistics-show", sigc::mem_fun(*this, &StatisticsApplicationAddin::on_show_statistics));
+ m_add_menu_item_cid = manager.signal_build_main_window_search_popover
+ .connect(sigc::mem_fun(*this, &StatisticsApplicationAddin::add_menu_item));
}
}
void StatisticsApplicationAddin::shutdown()
{
- gnote::IActionManager::obj().remove_main_window_search_action("ShowStatistics");
- m_action.reset();
+ gnote::IActionManager::obj().unregister_main_window_search_callback("statistics-show-cback");
+ m_add_menu_item_cid.disconnect();
m_initialized = false;
}
@@ -67,7 +65,13 @@ bool StatisticsApplicationAddin::initialized()
return m_initialized;
}
-void StatisticsApplicationAddin::on_show_statistics()
+void StatisticsApplicationAddin::add_menu_item(std::map<int, Gtk::Widget*> & widgets)
+{
+ auto item = gnote::utils::create_popover_button("win.statistics-show", _("Show Statistics"));
+ gnote::utils::add_item_to_ordered_map(widgets, 100, item);
+}
+
+void StatisticsApplicationAddin::on_show_statistics(const Glib::VariantBase&)
{
if(!m_widget) {
m_widget = new StatisticsWidget(note_manager());
diff --git a/src/addins/statistics/statisticsapplicationaddin.hpp
b/src/addins/statistics/statisticsapplicationaddin.hpp
index d1a55db..9ce0f46 100644
--- a/src/addins/statistics/statisticsapplicationaddin.hpp
+++ b/src/addins/statistics/statisticsapplicationaddin.hpp
@@ -1,7 +1,7 @@
/*
* gnote
*
- * Copyright (C) 2013 Aurimas Cernius
+ * Copyright (C) 2013,2015 Aurimas Cernius
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -51,10 +51,11 @@ public:
virtual bool initialized() override;
private:
StatisticsApplicationAddin();
- void on_show_statistics();
+ void on_show_statistics(const Glib::VariantBase&);
+ void add_menu_item(std::map<int, Gtk::Widget*> & widgets);
bool m_initialized;
- Glib::RefPtr<Gtk::Action> m_action;
+ sigc::connection m_add_menu_item_cid;
StatisticsWidget *m_widget;
};
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]