summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2018-10-04 03:57:09 +0200
committerRobin Gareus <robin@gareus.org>2018-10-04 03:57:09 +0200
commit4d3cd732c93dd64b8768ec5f8398999f521ee6f0 (patch)
tree89fddbfd585ff1b95e6dd9b7e617c385b78532d5
parent39f65bbce209e1be1591dd0a32c34ad6a11bcf97 (diff)
Unhardcode and increase bindable Lua-script-action count
-rw-r--r--gtk2_ardour/ardour_ui.h4
-rw-r--r--gtk2_ardour/ardour_ui_dependents.cc2
-rw-r--r--gtk2_ardour/ardour_ui_options.cc2
-rw-r--r--gtk2_ardour/editor_actions.cc2
-rw-r--r--gtk2_ardour/lua_script_manager.cc3
-rw-r--r--gtk2_ardour/luainstance.cc6
6 files changed, 11 insertions, 8 deletions
diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h
index 4c55afaaef..6c5f09cc0f 100644
--- a/gtk2_ardour/ardour_ui.h
+++ b/gtk2_ardour/ardour_ui.h
@@ -165,6 +165,8 @@ namespace ArdourWidgets {
class Tabbable;
}
+#define MAX_LUA_ACTION_SCRIPTS 12
+
class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr, public TransportControlProvider
{
public:
@@ -511,7 +513,7 @@ private:
ArdourWidgets::ArdourButton feedback_alert_button;
ArdourWidgets::ArdourButton error_alert_button;
- ArdourWidgets::ArdourButton action_script_call_btn[10];
+ ArdourWidgets::ArdourButton action_script_call_btn[MAX_LUA_ACTION_SCRIPTS];
Gtk::Table action_script_table;
Gtk::VBox alert_box;
diff --git a/gtk2_ardour/ardour_ui_dependents.cc b/gtk2_ardour/ardour_ui_dependents.cc
index 9253fcad71..ab2c3a9ef8 100644
--- a/gtk2_ardour/ardour_ui_dependents.cc
+++ b/gtk2_ardour/ardour_ui_dependents.cc
@@ -292,7 +292,7 @@ ARDOUR_UI::setup_windows ()
LuaInstance::instance()->ActionChanged.connect (sigc::mem_fun (*this, &ARDOUR_UI::update_action_script_btn));
- for (int i = 0; i < 9; ++i) {
+ for (int i = 0; i < MAX_LUA_ACTION_SCRIPTS; ++i) {
std::string const a = string_compose (X_("script-action-%1"), i + 1);
Glib::RefPtr<Action> act = ActionManager::get_action(X_("Editor"), a.c_str());
assert (act);
diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc
index 3077910265..f1a5642c20 100644
--- a/gtk2_ardour/ardour_ui_options.cc
+++ b/gtk2_ardour/ardour_ui_options.cc
@@ -510,7 +510,7 @@ ARDOUR_UI::parameter_changed (std::string p)
VisibilityTracker::set_use_window_manager_visibility (UIConfiguration::instance().get_use_wm_visibility());
} else if (p == "action-table-columns") {
const uint32_t cols = UIConfiguration::instance().get_action_table_columns ();
- for (int i = 0; i < 9; ++i) {
+ for (int i = 0; i < MAX_LUA_ACTION_SCRIPTS; ++i) {
const int col = i / 2;
if (cols & (1<<col)) {
action_script_call_btn[i].show();
diff --git a/gtk2_ardour/editor_actions.cc b/gtk2_ardour/editor_actions.cc
index 334284a301..befe85934d 100644
--- a/gtk2_ardour/editor_actions.cc
+++ b/gtk2_ardour/editor_actions.cc
@@ -470,7 +470,7 @@ Editor::register_actions ()
myactions.register_action (editor_actions, X_("cycle-zoom-focus"), _("Next Zoom Focus"), sigc::mem_fun (*this, &Editor::cycle_zoom_focus));
- for (int i = 1; i <= 9; ++i) {
+ for (int i = 1; i <= MAX_LUA_ACTION_SCRIPTS; ++i) {
string const a = string_compose (X_("script-action-%1"), i);
string const n = string_compose (_("Unset #%1"), i);
act = myactions.register_action (editor_actions, a.c_str(), n.c_str(), sigc::bind (sigc::mem_fun (*this, &Editor::trigger_script), i - 1));
diff --git a/gtk2_ardour/lua_script_manager.cc b/gtk2_ardour/lua_script_manager.cc
index 8f3ec8ba17..caf2ad7065 100644
--- a/gtk2_ardour/lua_script_manager.cc
+++ b/gtk2_ardour/lua_script_manager.cc
@@ -27,6 +27,7 @@
#include "LuaBridge/LuaBridge.h"
+#include "ardour_ui.h"
#include "lua_script_manager.h"
#include "luawindow.h"
#include "script_selector.h"
@@ -203,7 +204,7 @@ void
LuaScriptManager::setup_actions ()
{
LuaInstance *li = LuaInstance::instance();
- for (int i = 0; i < 9; ++i) {
+ for (int i = 0; i < MAX_LUA_ACTION_SCRIPTS; ++i) {
std::string name;
TreeModel::Row r = *_a_store->append ();
r[_a_model.id] = i;
diff --git a/gtk2_ardour/luainstance.cc b/gtk2_ardour/luainstance.cc
index 236a5d88e2..f184368f1d 100644
--- a/gtk2_ardour/luainstance.cc
+++ b/gtk2_ardour/luainstance.cc
@@ -1290,7 +1290,7 @@ LuaInstance::session_going_away ()
point_one_second_connection.disconnect ();
(*_lua_clear)();
- for (int i = 0; i < 9; ++i) {
+ for (int i = 0; i < MAX_LUA_ACTION_SCRIPTS; ++i) {
ActionChanged (i, ""); /* EMIT SIGNAL */
}
SessionHandlePtr::session_going_away ();
@@ -1322,7 +1322,7 @@ LuaInstance::set_state (const XMLNode& node)
} catch (luabridge::LuaException const& e) {
cerr << "LuaException:" << e.what () << endl;
} catch (...) { }
- for (int i = 0; i < 9; ++i) {
+ for (int i = 0; i < MAX_LUA_ACTION_SCRIPTS; ++i) {
std::string name;
if (lua_action_name (i, name)) {
ActionChanged (i, name); /* EMIT SIGNAL */
@@ -1580,7 +1580,7 @@ std::vector<std::string>
LuaInstance::lua_action_names ()
{
std::vector<std::string> rv;
- for (int i = 0; i < 9; ++i) {
+ for (int i = 0; i < MAX_LUA_ACTION_SCRIPTS; ++i) {
std::string name;
if (lua_action_name (i, name)) {
rv.push_back (name);