13
0

LT: livetrax uses the Arrange (section) marker bar, and its own sidebar list

This commit is contained in:
Ben Loftis 2024-05-02 09:21:34 -05:00
parent 69b43031d6
commit d2bc83aa8b
5 changed files with 32 additions and 3 deletions

View File

@ -326,6 +326,7 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], const char* localedir)
, save_as_dialog (0)
, meterbridge (0)
, rc_option_editor (0)
, _livetrax_sections (0)
, speaker_config_window (X_("speaker-config"), _("Speaker Configuration"))
, add_route_dialog (X_("add-routes"), _("Add Tracks/Busses"))
, about (X_("about"), _("About"))
@ -890,6 +891,9 @@ ARDOUR_UI::~ARDOUR_UI ()
delete duplicate_routes_dialog; duplicate_routes_dialog = 0;
delete trigger_page; trigger_page = 0;
delete recorder; recorder = 0;
#ifdef LIVETRAX
delete _livetrax_sections; _livetrax_sections = 0;
#endif
delete editor; editor = 0;
delete mixer; mixer = 0;
delete rc_option_editor; rc_option_editor = 0; // failed to wrap object warning

View File

@ -85,11 +85,13 @@
#include "widgets/ardour_button.h"
#include "widgets/ardour_dropdown.h"
#include "widgets/ardour_spacer.h"
#include "widgets/pane.h"
#include "add_route_dialog.h"
#include "ardour_dialog.h"
#include "ardour_window.h"
#include "editing.h"
#include "editor_sections.h"
#include "enums.h"
#include "mini_timeline.h"
#include "shuttle_control.h"
@ -369,6 +371,8 @@ public:
void setup_profile ();
void setup_tooltips ();
void update_section_visibility (bool);
void set_shuttle_fract (double);
void get_process_buffers ();
@ -456,6 +460,9 @@ private:
bool _was_dirty;
bool _mixer_on_top;
EditorSections* _livetrax_sections;
ArdourWidgets::HPane livetrax_section_pane;
Gtk::Menu* _shared_popup_menu;
BasicUI* _basic_ui;

View File

@ -137,6 +137,7 @@ ARDOUR_UI::connect_dependents_to_session (ARDOUR::Session *s)
DisplaySuspender ds;
BootMessage (_("Setup Editor"));
editor->set_session (s);
_livetrax_sections->set_session (s);
BootMessage (_("Setup Mixer"));
mixer->set_session (s);
@ -693,6 +694,21 @@ ARDOUR_UI::action_script_changed (int i, const std::string& n)
KeyEditor::UpdateBindings ();
}
void
ARDOUR_UI:: update_section_visibility(bool show)
{
#ifdef LIVETRAX
if (!_livetrax_sections) {
return;
}
if (show) {
_livetrax_sections->widget().show();
} else {
_livetrax_sections->widget().hide();
}
#endif
}
void
ARDOUR_UI::livetrax_visibility_change ()
{

View File

@ -642,7 +642,7 @@ Editor::update_ruler_visibility ()
update_marker_display();
}
if (Profile->get_livetrax() || ruler_marker_action->get_active()) {
if (!Profile->get_livetrax() && ruler_marker_action->get_active()) {
old_unit_pos = marker_group->position().y;
if (tbpos != old_unit_pos) {
marker_group->move (ArdourCanvas::Duple (0.0, tbpos - old_unit_pos));
@ -697,7 +697,7 @@ Editor::update_ruler_visibility ()
scene_mark_label.hide ();
}
if (!Profile->get_livetrax() && ruler_section_action->get_active()) {
if (ruler_section_action->get_active()) {
old_unit_pos = section_marker_group->position().y;
if (tbpos != old_unit_pos) {
section_marker_group->move (ArdourCanvas::Duple (0.0, tbpos - old_unit_pos));
@ -756,6 +756,8 @@ Editor::update_ruler_visibility ()
for (LocationMarkerMap::iterator i = location_markers.begin(); i != location_markers.end(); ++i) {
i->second->setup_lines ();
}
ARDOUR_UI::instance()->update_section_visibility(ruler_section_action->get_active());
}
void

View File

@ -92,7 +92,7 @@
<menuitem action="primary-clock-minsec"/>
<menuitem action="primary-clock-samples"/>
</menu>
<menuitem action="toggle-marker-ruler"/>
<menuitem action="toggle-arrangement-ruler"/>
<menuitem action="toggle-scene-marker-ruler"/>
<menu action="ZoomMenu">
<menuitem action='temporal-zoom-in'/>