13
0

Improve toolbar layout consistency

Directly pack Lua Script buttons into top-level table,
use same size-constraints.

Use consistent Lua Action button width, in particular for buttons 10..12.
prefer "a" instead of "10" for default numeric label
This commit is contained in:
Robin Gareus 2019-11-19 02:47:11 +01:00
parent c07db6d655
commit 605a87f402
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
3 changed files with 12 additions and 8 deletions

View File

@ -548,7 +548,6 @@ private:
ArdourWidgets::ArdourButton error_alert_button; ArdourWidgets::ArdourButton error_alert_button;
ArdourWidgets::ArdourButton action_script_call_btn[MAX_LUA_ACTION_BUTTONS]; ArdourWidgets::ArdourButton action_script_call_btn[MAX_LUA_ACTION_BUTTONS];
Gtk::Table action_script_table;
Gtk::VBox alert_box; Gtk::VBox alert_box;
Gtk::Table editor_meter_table; Gtk::Table editor_meter_table;

View File

@ -480,6 +480,10 @@ ARDOUR_UI::setup_transport ()
button_height_size_group->add_widget (monitor_disk_button); button_height_size_group->add_widget (monitor_disk_button);
button_height_size_group->add_widget (auto_input_button); button_height_size_group->add_widget (auto_input_button);
for (int i = 0; i < MAX_LUA_ACTION_BUTTONS; ++i) {
button_height_size_group->add_widget (action_script_call_btn[i]);
}
Glib::RefPtr<SizeGroup> clock1_size_group = SizeGroup::create (SIZE_GROUP_HORIZONTAL); Glib::RefPtr<SizeGroup> clock1_size_group = SizeGroup::create (SIZE_GROUP_HORIZONTAL);
clock1_size_group->add_widget (*primary_clock->left_btn()); clock1_size_group->add_widget (*primary_clock->left_btn());
clock1_size_group->add_widget (*primary_clock->right_btn()); clock1_size_group->add_widget (*primary_clock->right_btn());
@ -583,8 +587,12 @@ ARDOUR_UI::setup_transport ()
++col; ++col;
/* lua script action buttons */ /* lua script action buttons */
transport_table.attach (action_script_table, TCOL, 0, 2, SHRINK, EXPAND|FILL, 1, 0); for (int i = 0; i < MAX_LUA_ACTION_BUTTONS; ++i) {
++col; const int r = i % 2;
const int c = col + i / 2;
transport_table.attach (action_script_call_btn[i], c, c + 1, r, r + 1, FILL, SHRINK, 1, vpadding);
}
col += MAX_LUA_ACTION_BUTTONS / 2;
transport_table.attach (editor_visibility_button, TCOL, 0, 1 , FILL, SHRINK, hpadding, vpadding); transport_table.attach (editor_visibility_button, TCOL, 0, 1 , FILL, SHRINK, hpadding, vpadding);
transport_table.attach (mixer_visibility_button, TCOL, 1, 2 , FILL, SHRINK, hpadding, vpadding); transport_table.attach (mixer_visibility_button, TCOL, 1, 2 , FILL, SHRINK, hpadding, vpadding);

View File

@ -303,7 +303,7 @@ ARDOUR_UI::setup_windows ()
std::string const a = string_compose (X_("script-action-%1"), i + 1); std::string const a = string_compose (X_("script-action-%1"), i + 1);
Glib::RefPtr<Action> act = ActionManager::get_action(X_("LuaAction"), a.c_str()); Glib::RefPtr<Action> act = ActionManager::get_action(X_("LuaAction"), a.c_str());
assert (act); assert (act);
action_script_call_btn[i].set_text (string_compose ("%1", i+1)); action_script_call_btn[i].set_text (string_compose ("%1%2", std::hex, i+1));
action_script_call_btn[i].set_related_action (act); action_script_call_btn[i].set_related_action (act);
action_script_call_btn[i].signal_button_press_event().connect (sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::bind_lua_action_script), i), false); action_script_call_btn[i].signal_button_press_event().connect (sigc::bind (sigc::mem_fun(*this, &ARDOUR_UI::bind_lua_action_script), i), false);
if (act->get_sensitive ()) { if (act->get_sensitive ()) {
@ -311,12 +311,9 @@ ARDOUR_UI::setup_windows ()
} else { } else {
action_script_call_btn[i].set_visual_state (Gtkmm2ext::VisualState (action_script_call_btn[i].visual_state() | Gtkmm2ext::Insensitive)); action_script_call_btn[i].set_visual_state (Gtkmm2ext::VisualState (action_script_call_btn[i].visual_state() | Gtkmm2ext::Insensitive));
} }
const int row = i % 2; action_script_call_btn[i].set_sizing_text ("|||");
const int col = i / 2;
action_script_table.attach (action_script_call_btn[i], col, col + 1, row, row + 1, EXPAND, EXPAND, 1, 0);
action_script_call_btn[i].set_no_show_all (); action_script_call_btn[i].set_no_show_all ();
} }
action_script_table.show ();
setup_transport(); setup_transport();
build_menu_bar (); build_menu_bar ();