From a15397f746a61b959015eb47e880f1ab9741ca75 Mon Sep 17 00:00:00 2001 From: Ben Loftis Date: Wed, 15 Dec 2021 18:08:15 -0600 Subject: [PATCH] triggerbox: new trigger_property widgets, because trigger data != a region --- gtk2_ardour/audio_region_properties_box.cc | 12 +----------- gtk2_ardour/midi_region_properties_box.cc | 10 ---------- gtk2_ardour/midi_region_properties_box.h | 3 --- gtk2_ardour/trigger_page.cc | 20 ++++++++++---------- gtk2_ardour/trigger_page.h | 6 ++++-- gtk2_ardour/trigger_ui.cc | 17 ++++++++++++----- gtk2_ardour/trigger_ui.h | 3 ++- gtk2_ardour/wscript | 2 ++ 8 files changed, 31 insertions(+), 42 deletions(-) diff --git a/gtk2_ardour/audio_region_properties_box.cc b/gtk2_ardour/audio_region_properties_box.cc index ae4da85f13..15ecb18b87 100644 --- a/gtk2_ardour/audio_region_properties_box.cc +++ b/gtk2_ardour/audio_region_properties_box.cc @@ -81,7 +81,7 @@ RegionPropertiesBox::RegionPropertiesBox () row = 0; - bbt_toggle.set_text (_("BBT Sync")); + bbt_toggle.set_text (_("Stretch")); table.attach (bbt_toggle, 0, 1, row, row + 1, Gtk::SHRINK, Gtk::SHRINK); row++; @@ -161,16 +161,6 @@ AudioRegionPropertiesBox::AudioRegionPropertiesBox () int row = 0; - label = manage (new Gtk::Label (_("Stretch Mode:"))); - label->set_alignment (1.0, 0.5); - audio_t->attach (*label, 0, 1, row, row + 1, Gtk::FILL, Gtk::SHRINK); - - stretch_selector.set_text ("Mixed"); - stretch_selector.set_name ("generic button"); - audio_t->attach (stretch_selector, 1, 3, row, row + 1, Gtk::FILL, Gtk::SHRINK); - - row++; - label = manage (new Gtk::Label (_("Fades:"))); label->set_alignment (1.0, 0.5); fade_in_enable_button.set_text (_("In")); diff --git a/gtk2_ardour/midi_region_properties_box.cc b/gtk2_ardour/midi_region_properties_box.cc index fbf7f0712d..28675b2652 100644 --- a/gtk2_ardour/midi_region_properties_box.cc +++ b/gtk2_ardour/midi_region_properties_box.cc @@ -47,8 +47,6 @@ using std::max; using std::min; MidiRegionPropertiesBox::MidiRegionPropertiesBox () - : patch_enable_button (ArdourButton::led_default_elements) - , cc_enable_button (ArdourButton::led_default_elements) { _header_label.set_text (_("MIDI Region Properties:")); @@ -58,23 +56,15 @@ MidiRegionPropertiesBox::MidiRegionPropertiesBox () int row = 0; - patch_enable_button.set_text (_("Send Patches")); - patch_enable_button.set_name ("generic button"); - patch_selector_button.set_text (_("Patches...")); patch_selector_button.set_name ("generic button"); - midi_t->attach (patch_enable_button, 0, 1, row, row + 1, Gtk::SHRINK, Gtk::SHRINK); midi_t->attach (patch_selector_button, 1, 2, row, row + 1, Gtk::SHRINK, Gtk::SHRINK); row++; - cc_enable_button.set_text (_("Send CCs")); - cc_enable_button.set_name ("generic button"); - cc_selector_button.set_text (_("CCs...")); cc_selector_button.set_name ("generic button"); - midi_t->attach (cc_enable_button, 0, 1, row, row + 1, Gtk::SHRINK, Gtk::SHRINK); midi_t->attach (cc_selector_button, 1, 2, row, row + 1, Gtk::SHRINK, Gtk::SHRINK); row++; diff --git a/gtk2_ardour/midi_region_properties_box.h b/gtk2_ardour/midi_region_properties_box.h index 52c9e5d879..ba0fcb1c84 100644 --- a/gtk2_ardour/midi_region_properties_box.h +++ b/gtk2_ardour/midi_region_properties_box.h @@ -52,10 +52,7 @@ private: PBD::ScopedConnection midi_state_connection; - ArdourWidgets::ArdourButton patch_enable_button; ArdourWidgets::ArdourButton patch_selector_button; - - ArdourWidgets::ArdourButton cc_enable_button; ArdourWidgets::ArdourButton cc_selector_button; }; diff --git a/gtk2_ardour/trigger_page.cc b/gtk2_ardour/trigger_page.cc index 7ffa44e27f..b11f60fda3 100644 --- a/gtk2_ardour/trigger_page.cc +++ b/gtk2_ardour/trigger_page.cc @@ -79,7 +79,7 @@ TriggerPage::TriggerPage () table->attach (_slot_prop_box, col, col + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL | Gtk::EXPAND); col = 1; - table->attach (_audio_prop_box, col, col + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL | Gtk::EXPAND); + table->attach (_audio_trig_box, col, col + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL | Gtk::EXPAND); col++; table->attach (_audio_trim_box, col, col + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL | Gtk::EXPAND); col++; @@ -87,7 +87,7 @@ TriggerPage::TriggerPage () col++; col = 1; /* audio and midi boxen share the same table locations; shown and hidden depending on region type */ - table->attach (_midi_prop_box, col, col + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL | Gtk::EXPAND); + table->attach (_midi_trig_box, col, col + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL | Gtk::EXPAND); col++; table->attach (_midi_trim_box, col, col + 1, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL | Gtk::EXPAND); col++; @@ -242,11 +242,11 @@ TriggerPage::set_session (Session* s) _slot_prop_box.set_session (s); - _audio_prop_box.set_session (s); + _audio_trig_box.set_session (s); _audio_ops_box.set_session (s); _audio_trim_box.set_session (s); - _midi_prop_box.set_session (s); + _midi_trig_box.set_session (s); _midi_ops_box.set_session (s); _midi_trim_box.set_session (s); @@ -322,12 +322,12 @@ TriggerPage::selection_changed () _slot_prop_box.hide (); + _audio_trig_box.hide (); _audio_ops_box.hide (); - _audio_prop_box.hide (); _audio_trim_box.hide (); + _midi_trig_box.hide (); _midi_ops_box.hide (); - _midi_prop_box.hide (); _midi_trim_box.hide (); _parameter_box.hide (); @@ -341,17 +341,17 @@ TriggerPage::selection_changed () _slot_prop_box.show (); if (slot->region ()) { if (slot->region ()->data_type () == DataType::AUDIO) { - _audio_prop_box.set_region (slot->region ()); + _audio_trig_box.set_trigger (slot); _audio_trim_box.set_region (slot->region (), slot); - _audio_prop_box.show (); + _audio_trig_box.show (); _audio_trim_box.show (); _audio_ops_box.show (); } else { - _midi_prop_box.set_region (slot->region ()); + _midi_trig_box.set_trigger (slot); _midi_trim_box.set_region (slot->region (), slot); - _midi_prop_box.show (); + _midi_trig_box.show (); _midi_trim_box.show (); _midi_ops_box.show (); } diff --git a/gtk2_ardour/trigger_page.h b/gtk2_ardour/trigger_page.h index 113124cc9d..16aa9ca23b 100644 --- a/gtk2_ardour/trigger_page.h +++ b/gtk2_ardour/trigger_page.h @@ -31,10 +31,12 @@ #include "audio_region_operations_box.h" #include "audio_region_properties_box.h" +#include "audio_trigger_properties_box.h" #include "fitted_canvas_widget.h" #include "midi_clip_editor.h" #include "midi_region_operations_box.h" #include "midi_region_properties_box.h" +#include "midi_trigger_properties_box.h" #include "slot_properties_box.h" #include "trigger_clip_picker.h" #include "trigger_master.h" @@ -97,11 +99,11 @@ private: SlotPropertiesBox _slot_prop_box; - AudioRegionPropertiesBox _audio_prop_box; + AudioTriggerPropertiesBox _audio_trig_box; AudioRegionOperationsBox _audio_ops_box; AudioClipEditorBox _audio_trim_box; - MidiRegionPropertiesBox _midi_prop_box; + MidiTriggerPropertiesBox _midi_trig_box; MidiRegionOperationsBox _midi_ops_box; MidiClipEditorBox _midi_trim_box; diff --git a/gtk2_ardour/trigger_ui.cc b/gtk2_ardour/trigger_ui.cc index de0fdd80e5..9d78664f87 100644 --- a/gtk2_ardour/trigger_ui.cc +++ b/gtk2_ardour/trigger_ui.cc @@ -31,9 +31,13 @@ #include "gtkmm2ext/utils.h" #include "audio_region_properties_box.h" -#include "midi_region_properties_box.h" +#include "audio_trigger_properties_box.h" #include "audio_region_operations_box.h" + +#include "midi_trigger_properties_box.h" +#include "midi_region_properties_box.h" #include "midi_region_operations_box.h" + #include "slot_properties_box.h" #include "midi_clip_editor.h" @@ -461,20 +465,23 @@ TriggerWindow::TriggerWindow (Trigger* slot) if (slot->region()) { if (slot->region()->data_type() == DataType::AUDIO) { - _prop_box = manage(new AudioRegionPropertiesBox ()); + _trig_box = manage(new AudioTriggerPropertiesBox ()); _ops_box = manage(new AudioRegionOperationsBox ()); _trim_box = manage(new AudioClipEditorBox ()); + + _trig_box->set_trigger(slot); } else { - _prop_box = manage(new MidiRegionPropertiesBox ()); + _trig_box = manage(new MidiTriggerPropertiesBox ()); _ops_box = manage(new MidiRegionOperationsBox ()); _trim_box = manage(new MidiClipEditorBox ()); + + _trig_box->set_trigger(slot); } - _prop_box->set_region(slot->region()); _trim_box->set_region(slot->region(), slot); _ops_box->set_session(&slot->region()->session()); - table->attach(*_prop_box, col, col+1, 0, 1, Gtk::FILL|Gtk::EXPAND, Gtk::FILL|Gtk::EXPAND ); col++; + table->attach(*_trig_box, col, col+1, 0, 1, Gtk::FILL|Gtk::EXPAND, Gtk::FILL|Gtk::EXPAND ); col++; table->attach(*_trim_box, col, col+1, 0, 1, Gtk::FILL|Gtk::EXPAND, Gtk::FILL|Gtk::EXPAND ); col++; table->attach(*_ops_box, col, col+1, 0, 1, Gtk::FILL|Gtk::EXPAND, Gtk::FILL|Gtk::EXPAND ); col++; } diff --git a/gtk2_ardour/trigger_ui.h b/gtk2_ardour/trigger_ui.h index 95ac154a12..5c59b5f9c6 100644 --- a/gtk2_ardour/trigger_ui.h +++ b/gtk2_ardour/trigger_ui.h @@ -28,6 +28,7 @@ namespace ArdourWidgets { class HSliderController; } +class TriggerPropertiesBox; class RegionPropertiesBox; class RegionOperationsBox; class ClipEditorBox; @@ -105,7 +106,7 @@ class TriggerWindow : public Gtk::Window bool on_key_press_event (GdkEventKey*); bool on_key_release_event (GdkEventKey*); - RegionPropertiesBox *_prop_box; + TriggerPropertiesBox *_trig_box; RegionOperationsBox *_ops_box; ClipEditorBox *_trim_box; }; diff --git a/gtk2_ardour/wscript b/gtk2_ardour/wscript index f848ad7db8..e90aa77e13 100644 --- a/gtk2_ardour/wscript +++ b/gtk2_ardour/wscript @@ -55,6 +55,7 @@ gtk2_ardour_sources = [ 'audio_region_view.cc', 'audio_region_operations_box.cc', 'audio_region_properties_box.cc', + 'audio_trigger_properties_box.cc', 'audio_streamview.cc', 'audio_time_axis.cc', 'automation_controller.cc', @@ -169,6 +170,7 @@ gtk2_ardour_sources = [ 'midi_region_view.cc', 'midi_region_operations_box.cc', 'midi_region_properties_box.cc', + 'midi_trigger_properties_box.cc', 'midi_scroomer.cc', 'midi_selection.cc', 'midi_streamview.cc',