ardour/gtk2_ardour/actions.h
Carl Hetherington b5ab2e030b Tidy up the region menu a bit, and hopefully clarify what regions will be
operated on in different circumstances.  Make the main menubar Region menu
the same as the context one, and use the same logic to sensitize/desensitize
actions for them.


git-svn-id: svn://localhost/ardour2/branches/3.0@7954 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-03 22:19:29 +00:00

60 lines
2.7 KiB
C++

/*
Copyright (C) 2000-2007 Paul Davis
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
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef __ardour_gtk_actions_h__
#define __ardour_gtk_actions_h__
#include <vector>
#include "gtkmm2ext/actions.h"
#include "ardour/rc_configuration.h"
namespace ActionManager {
/* Ardour specific */
extern void init ();
extern std::vector<Glib::RefPtr<Gtk::Action> > session_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > write_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > region_list_selection_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > plugin_selection_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > track_selection_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > point_selection_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > time_selection_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > line_selection_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > playlist_selection_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > mouse_edit_point_requires_canvas_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > range_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > transport_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > jack_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > jack_opposite_sensitive_actions;
extern std::vector<Glib::RefPtr<Gtk::Action> > edit_point_in_region_sensitive_actions;
extern void map_some_state (const char* group, const char* action, bool (ARDOUR::RCConfiguration::*get)() const);
extern void map_some_state (const char* group, const char* action, sigc::slot<bool>);
extern void toggle_config_state (const char* group, const char* action, bool (ARDOUR::RCConfiguration::*set)(bool), bool (ARDOUR::RCConfiguration::*get)(void) const);
extern void toggle_config_state_foo (const char* group, const char* action, sigc::slot<bool, bool>, sigc::slot<bool>);
}
#endif /* __ardour_gtk_actions_h__ */