From f974ff594a132fe651a6e620bab3e6f913d697a3 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Sun, 13 Jan 2019 11:59:18 -0600 Subject: additional API to make it nicer to get an existing action group --- libs/gtkmm2ext/actions.cc | 12 ++++++++++++ libs/gtkmm2ext/gtkmm2ext/actions.h | 1 + 2 files changed, 13 insertions(+) (limited to 'libs') diff --git a/libs/gtkmm2ext/actions.cc b/libs/gtkmm2ext/actions.cc index 25d2ca148c..1b772757bc 100644 --- a/libs/gtkmm2ext/actions.cc +++ b/libs/gtkmm2ext/actions.cc @@ -360,6 +360,18 @@ ActionManager::create_action_group (void * owner, string const & name) return g; } +RefPtr +ActionManager::get_action_group (string const & name) +{ + for (ActionGroups::iterator g = groups.begin(); g != groups.end(); ++g) { + if ((*g)->get_name () == name) { + return *g; + } + } + + return RefPtr (); +} + RefPtr ActionManager::register_action (RefPtr group, const char* name, const char* label) { diff --git a/libs/gtkmm2ext/gtkmm2ext/actions.h b/libs/gtkmm2ext/gtkmm2ext/actions.h index 6bb56adaee..780c846d58 100644 --- a/libs/gtkmm2ext/gtkmm2ext/actions.h +++ b/libs/gtkmm2ext/gtkmm2ext/actions.h @@ -71,6 +71,7 @@ namespace ActionManager { LIBGTKMM2EXT_API extern void disable_active_actions (); LIBGTKMM2EXT_API extern Glib::RefPtr create_action_group (void * owner, std::string const & group_name); + LIBGTKMM2EXT_API extern Glib::RefPtr get_action_group (std::string const & group_name); LIBGTKMM2EXT_API extern Glib::RefPtr register_action (Glib::RefPtr group, const char* name, const char* label); LIBGTKMM2EXT_API extern Glib::RefPtr register_action (Glib::RefPtr group, -- cgit v1.2.3