Make editor route list rec button respect group settings.
[ardour.git] / gtk2_ardour / actions.h
index 5816325265465c0c28c8c5ca99ccff7625acc793..3a20f4d5423d636c3617a4a1c76a7e942629fb33 100644 (file)
@@ -27,6 +27,8 @@
 #include <gtkmm/actiongroup.h>
 #include <gtkmm/accelkey.h>
 
+#include "ardour/rc_configuration.h"
+
 namespace Gtk {
        class UIManager;
 }
@@ -49,16 +51,18 @@ class ActionManager
        static std::vector<Glib::RefPtr<Gtk::Action> > time_selection_sensitive_actions;
        static std::vector<Glib::RefPtr<Gtk::Action> > line_selection_sensitive_actions;
        static std::vector<Glib::RefPtr<Gtk::Action> > playlist_selection_sensitive_actions;
+       static std::vector<Glib::RefPtr<Gtk::Action> > mouse_edit_point_requires_canvas_actions;
 
        static std::vector<Glib::RefPtr<Gtk::Action> > range_sensitive_actions;
        static std::vector<Glib::RefPtr<Gtk::Action> > transport_sensitive_actions;
        static std::vector<Glib::RefPtr<Gtk::Action> > jack_sensitive_actions;
        static std::vector<Glib::RefPtr<Gtk::Action> > jack_opposite_sensitive_actions;
-       static std::vector<Glib::RefPtr<Gtk::Action> > edit_cursor_in_region_sensitive_actions;
+       static std::vector<Glib::RefPtr<Gtk::Action> > edit_point_in_region_sensitive_actions;
 
-       static void map_some_state (const char* group, const char* action, bool (ARDOUR::Configuration::*get)() const);
-       static void toggle_config_state (const char* group, const char* action, bool (ARDOUR::Configuration::*set)(bool), bool (ARDOUR::Configuration::*get)(void) const);
-       static void toggle_config_state (const char* group, const char* action, sigc::slot<void> theSlot);
+       static void map_some_state (const char* group, const char* action, bool (ARDOUR::RCConfiguration::*get)() const);
+       static void map_some_state (const char* group, const char* action, sigc::slot<bool>);
+       static void toggle_config_state (const char* group, const char* action, bool (ARDOUR::RCConfiguration::*set)(bool), bool (ARDOUR::RCConfiguration::*get)(void) const);
+       static void toggle_config_state_foo (const char* group, const char* action, sigc::slot<bool, bool>, sigc::slot<bool>);
 
        static void set_sensitive (std::vector<Glib::RefPtr<Gtk::Action> >& actions, bool);
 
@@ -67,6 +71,7 @@ class ActionManager
 
        static Gtk::Widget* get_widget (const char * name);
        static Glib::RefPtr<Gtk::Action> get_action (const char* group, const char* name);
+       static Glib::RefPtr<Gtk::Action> get_action (const char* path);
 
        static void add_action_group (Glib::RefPtr<Gtk::ActionGroup>);
 
@@ -97,6 +102,10 @@ class ActionManager
                                     std::vector<std::string>& keys, 
                                     std::vector<Gtk::AccelKey>& bindings);
 
+       static void get_all_actions (std::vector<std::string>& groups, 
+                                    std::vector<std::string>& paths, 
+                                    std::vector<Gtk::AccelKey>& bindings);
+
        static void uncheck_toggleaction (const char * actionname);
 };