use syntactic sugar
[ardour.git] / gtk2_ardour / actions.cc
index ea6cc4b8aa23cfef4c51e644fcb5fbacbbcc2c0c..ea39f4af8a1a5395b85dd276d32c2815b59b99e4 100644 (file)
@@ -37,7 +37,7 @@
 #include "gtkmm2ext/actions.h"
 
 #include "actions.h"
-#include "i18n.h"
+#include "pbd/i18n.h"
 
 using namespace std;
 using namespace Gtk;
@@ -45,29 +45,28 @@ using namespace Glib;
 using namespace PBD;
 using namespace ARDOUR;
 
-vector<RefPtr<Gtk::Action> > ActionManager::session_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::write_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::region_list_selection_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::track_selection_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::point_selection_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::time_selection_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::line_selection_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::playlist_selection_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::mouse_edit_point_requires_canvas_actions;
-
-vector<RefPtr<Gtk::Action> > ActionManager::range_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::engine_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::engine_opposite_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::transport_sensitive_actions;
-vector<RefPtr<Gtk::Action> > ActionManager::edit_point_in_region_sensitive_actions;
-
-static Glib::RefPtr<UIManager> ui_manager;
-
-void
-ActionManager::init ()
-{
-       ui_manager = UIManager::create ();
-}
+typedef std::vector<RefPtr<Gtk::Action> > RelatedActions;
+
+RelatedActions ActionManager::session_sensitive_actions;
+RelatedActions ActionManager::write_sensitive_actions;
+RelatedActions ActionManager::region_list_selection_sensitive_actions;
+RelatedActions ActionManager::plugin_selection_sensitive_actions;
+RelatedActions ActionManager::track_selection_sensitive_actions;
+RelatedActions ActionManager::stripable_selection_sensitive_actions;
+RelatedActions ActionManager::route_selection_sensitive_actions;
+RelatedActions ActionManager::bus_selection_sensitive_actions;
+RelatedActions ActionManager::vca_selection_sensitive_actions;
+RelatedActions ActionManager::point_selection_sensitive_actions;
+RelatedActions ActionManager::time_selection_sensitive_actions;
+RelatedActions ActionManager::line_selection_sensitive_actions;
+RelatedActions ActionManager::playlist_selection_sensitive_actions;
+RelatedActions ActionManager::mouse_edit_point_requires_canvas_actions;
+RelatedActions ActionManager::range_sensitive_actions;
+RelatedActions ActionManager::engine_sensitive_actions;
+RelatedActions ActionManager::engine_opposite_sensitive_actions;
+RelatedActions ActionManager::transport_sensitive_actions;
+RelatedActions ActionManager::edit_point_in_region_sensitive_actions;
+RelatedActions ActionManager::rec_sensitive_actions;
 
 void
 ActionManager::load_menus (const string& menus_file)
@@ -173,7 +172,7 @@ ActionManager::toggle_config_state_foo (const char* group, const char* action, s
 void
 ActionManager::map_some_state (const char* group, const char* action, bool (RCConfiguration::*get)() const)
 {
-       Glib::RefPtr<Action> act = ActionManager::get_action (group, action);
+       Glib::RefPtr<Action> act = ActionManager::get_action (group, action, false);
        if (act) {
                Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
 
@@ -196,7 +195,7 @@ ActionManager::map_some_state (const char* group, const char* action, bool (RCCo
 void
 ActionManager::map_some_state (const char* group, const char* action, bool (UIConfiguration::*get)() const)
 {
-       Glib::RefPtr<Action> act = ActionManager::get_action (group, action);
+       Glib::RefPtr<Action> act = ActionManager::get_action (group, action, false);
        if (act) {
                Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
 
@@ -214,7 +213,7 @@ ActionManager::map_some_state (const char* group, const char* action, bool (UICo
 void
 ActionManager::map_some_state (const char* group, const char* action, sigc::slot<bool> get)
 {
-       Glib::RefPtr<Action> act = ActionManager::get_action (group, action);
+       Glib::RefPtr<Action> act = ActionManager::get_action (group, action, false);
        if (act) {
                Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);