13
0

Merge branch 'ardour'

This commit is contained in:
Robin Gareus 2024-05-31 18:23:36 +02:00
commit 13f84040b7
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
5 changed files with 33 additions and 10 deletions

View File

@ -709,7 +709,7 @@ Editor::register_actions ()
session_range_action = Glib::RefPtr<RadioAction>::cast_static (ActionManager::register_radio_action (ruler_actions, range_choice_group, X_("show-session-range"), _("Only Session Range"), sigc::bind (sigc::mem_fun(*this, &Editor::show_range_type), SessionRange)));
punch_range_action = Glib::RefPtr<RadioAction>::cast_static (ActionManager::register_radio_action (ruler_actions, range_choice_group, X_("show-punch-range"), _("Only Punch Range"), sigc::bind (sigc::mem_fun(*this, &Editor::show_range_type), PunchRange)));
loop_range_action = Glib::RefPtr<RadioAction>::cast_static (ActionManager::register_radio_action (ruler_actions, range_choice_group, X_("show-loop-range"), _("Only Loop Range"), sigc::bind (sigc::mem_fun(*this, &Editor::show_range_type), LoopRange)));
other_range_action = Glib::RefPtr<RadioAction>::cast_static (ActionManager::register_radio_action (ruler_actions, range_choice_group, X_("show-other-ranges"), _("Only Other Ranges"), sigc::bind (sigc::mem_fun(*this, &Editor::show_range_type), OtherRange)));
other_range_action = Glib::RefPtr<RadioAction>::cast_static (ActionManager::register_radio_action (ruler_actions, range_choice_group, X_("show-other-ranges"), _("Only Named Ranges"), sigc::bind (sigc::mem_fun(*this, &Editor::show_range_type), OtherRange)));
ActionManager::register_action (editor_menu_actions, X_("VideoMonitorMenu"), _("Video Monitor"));

View File

@ -366,7 +366,7 @@ Editor::popup_ruler_menu (timepos_t const & where, ItemType t)
#endif
MAKE_ACTION_ITEM (rs_menu, rs_item, X_("Rulers"), X_("show-loop-range"));
MAKE_ACTION_ITEM (rs_menu, rs_item, X_("Rulers"), X_("show-session-range"));
MAKE_ACTION_ITEM (rs_menu, rs_item, X_("Rulers"), X_("show-location-markers"));
MAKE_ACTION_ITEM (rs_menu, rs_item, X_("Rulers"), X_("show-other-ranges"));
ruler_items.push_back (MenuElem (_("Show Ranges...")));
Gtk::MenuItem& range_show_menu = ruler_items.back();

View File

@ -1510,6 +1510,22 @@ These settings will only take effect after %1 is restarted.\n\
Gtkmm2ext::UI::instance()->set_tip (bo->tip_widget(), _("<b>When enabled</b> this will prevent you from accidentally stopping specific tracks recording during a take."));
add_option (_("Transport"), bo);
bo = new BoolOption (
"mark-at-pgm-change",
_("Create a marker when a MIDI program change is received (and RECORDING)"),
sigc::mem_fun (*_rc_config, &RCConfiguration::get_mark_at_pgm_change),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_mark_at_pgm_change)
);
add_option (_("Transport"), bo);
bo = new BoolOption (
"locate-to-pgm-change",
_("Locate to the next matching scene marker when a MIDI program change is received (and NOT recording)"),
sigc::mem_fun (*_rc_config, &RCConfiguration::get_locate_to_pgm_change),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_locate_to_pgm_change)
);
add_option (_("Transport"), bo);
add_option (_("Transport"), new OptionEditorHeading (_("Looping")));
bo = new BoolOption (
@ -1522,10 +1538,8 @@ These settings will only take effect after %1 is restarted.\n\
(_("<b>When enabled</b> the loop button does not start playback but forces playback to always play the loop\n\n"
"<b>When disabled</b> the loop button starts playing the loop, but stop then cancels loop playback")));
add_option (_("Transport"), bo);
ComboOption<LoopFadeChoice>* lca = new ComboOption<LoopFadeChoice> (
"loop-fade-choice",
_("Loop Fades"),

View File

@ -235,6 +235,9 @@ CONFIG_VARIABLE (EditMode, edit_mode, "edit-mode", Slide)
CONFIG_VARIABLE (RippleMode, ripple_mode, "ripple-mode", RippleSelected)
CONFIG_VARIABLE (Temporal::TimeDomain, default_automation_time_domain, "default-automation-time-domain", Temporal::BeatTime)
CONFIG_VARIABLE (bool, mark_at_pgm_change, "mark-at-pgm-change", true)
CONFIG_VARIABLE (bool, locate_to_pgm_change, "locate-to-pgm-change", true)
/* plugin related */
CONFIG_VARIABLE (bool, new_plugins_active, "new-plugins-active", true)

View File

@ -283,16 +283,22 @@ MIDISceneChanger::program_change_input (MIDI::Parser& parser, MIDI::byte program
last_program_message_time = time;
if (!recording()) {
if (!recording ()) {
if (Config->get_locate_to_pgm_change ()) {
MIDIInputActivity (); /* EMIT SIGNAL */
MIDIInputActivity (); /* EMIT SIGNAL */
int bank = -1;
if (have_seen_bank_changes) {
bank = std::dynamic_pointer_cast<AsyncMIDIPort>(input_port)->channel (channel)->bank();
}
int bank = -1;
if (have_seen_bank_changes) {
bank = std::dynamic_pointer_cast<AsyncMIDIPort>(input_port)->channel (channel)->bank();
jump_to (bank, program);
return;
}
}
jump_to (bank, program);
/* we are recording, do we need to create a marker */
if (!Config->get_mark_at_pgm_change ()) {
return;
}