Add option to leave vertical gap below audio regions
This is a backport from Mixbus, to leave are 4 "open" pixels at the bottom of the track so one can see the grid-lines between tracks. This is useful with low region-transparency. grid-lines behind opaque regions are not visible.
This commit is contained in:
parent
d465a2b012
commit
f5bc64d00e
@ -538,6 +538,14 @@ AudioRegionView::setup_fade_handle_positions()
|
|||||||
void
|
void
|
||||||
AudioRegionView::set_height (gdouble height)
|
AudioRegionView::set_height (gdouble height)
|
||||||
{
|
{
|
||||||
|
uint32_t gap = UIConfiguration::instance().get_vertical_region_gap ();
|
||||||
|
float ui_scale = UIConfiguration::instance().get_ui_scale ();
|
||||||
|
if (gap > 0 && ui_scale > 0) {
|
||||||
|
gap = ceil (gap * ui_scale);
|
||||||
|
}
|
||||||
|
|
||||||
|
height = std::max (3.0, height - gap);
|
||||||
|
|
||||||
if (height == _height) {
|
if (height == _height) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,7 @@
|
|||||||
#include "public_editor.h"
|
#include "public_editor.h"
|
||||||
#include "audio_region_view.h"
|
#include "audio_region_view.h"
|
||||||
#include "audio_streamview.h"
|
#include "audio_streamview.h"
|
||||||
|
#include "ui_config.h"
|
||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
|
|
||||||
#include "pbd/i18n.h"
|
#include "pbd/i18n.h"
|
||||||
@ -67,6 +68,7 @@ AudioTimeAxisView::AudioTimeAxisView (PublicEditor& ed, Session* sess, ArdourCan
|
|||||||
: SessionHandlePtr (sess)
|
: SessionHandlePtr (sess)
|
||||||
, RouteTimeAxisView(ed, sess, canvas)
|
, RouteTimeAxisView(ed, sess, canvas)
|
||||||
{
|
{
|
||||||
|
UIConfiguration::instance().ParameterChanged.connect (sigc::mem_fun (*this, &AudioTimeAxisView::parameter_changed));
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -278,6 +280,14 @@ AudioTimeAxisView::route_active_changed ()
|
|||||||
update_control_names ();
|
update_control_names ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
AudioTimeAxisView::parameter_changed (string const & p)
|
||||||
|
{
|
||||||
|
if (p == "vertical-region-gap") {
|
||||||
|
_view->update_contents_height ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set up the names of the controls so that they are coloured
|
* Set up the names of the controls so that they are coloured
|
||||||
|
@ -84,6 +84,7 @@ private:
|
|||||||
friend class AudioRegionView;
|
friend class AudioRegionView;
|
||||||
|
|
||||||
void route_active_changed ();
|
void route_active_changed ();
|
||||||
|
void parameter_changed (std::string const &);
|
||||||
|
|
||||||
Gtk::Menu* build_mode_menu();
|
Gtk::Menu* build_mode_menu();
|
||||||
void build_automation_action_menu (bool);
|
void build_automation_action_menu (bool);
|
||||||
|
@ -3666,6 +3666,19 @@ RCOptionEditor::RCOptionEditor ()
|
|||||||
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_color_regions_using_track_color)
|
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_color_regions_using_track_color)
|
||||||
));
|
));
|
||||||
|
|
||||||
|
#ifndef MIXBUS // hide this setting in Mixbus. Always on, 4px
|
||||||
|
ComboOption<uint32_t>* gap = new ComboOption<uint32_t> (
|
||||||
|
"vertical-region-gap",
|
||||||
|
_("Add a visual gap below Audio Regions"),
|
||||||
|
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::get_vertical_region_gap),
|
||||||
|
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_vertical_region_gap)
|
||||||
|
);
|
||||||
|
gap->add (0, _("None"));
|
||||||
|
gap->add (2, _("Small"));
|
||||||
|
gap->add (4, _("Large"));
|
||||||
|
add_option (_("Appearance/Editor"), gap);
|
||||||
|
#endif
|
||||||
|
|
||||||
add_option (_("Appearance/Editor"), new OptionEditorHeading (_("Waveforms")));
|
add_option (_("Appearance/Editor"), new OptionEditorHeading (_("Waveforms")));
|
||||||
|
|
||||||
if (!Profile->get_mixbus()) {
|
if (!Profile->get_mixbus()) {
|
||||||
|
@ -30,6 +30,11 @@ UI_CONFIG_VARIABLE (bool, all_floating_windows_are_dialogs, "all-floating-window
|
|||||||
UI_CONFIG_VARIABLE (bool, floating_monitor_section, "floating-monitor-section", false)
|
UI_CONFIG_VARIABLE (bool, floating_monitor_section, "floating-monitor-section", false)
|
||||||
UI_CONFIG_VARIABLE (bool, transients_follow_front, "transients-follow-front", false)
|
UI_CONFIG_VARIABLE (bool, transients_follow_front, "transients-follow-front", false)
|
||||||
UI_CONFIG_VARIABLE (bool, color_regions_using_track_color, "color-regions-using-track-color", false)
|
UI_CONFIG_VARIABLE (bool, color_regions_using_track_color, "color-regions-using-track-color", false)
|
||||||
|
#ifdef MIXBUS
|
||||||
|
UI_CONFIG_VARIABLE (uint32_t, vertical_region_gap, "vertical-region-gap", 4)
|
||||||
|
#else
|
||||||
|
UI_CONFIG_VARIABLE (uint32_t, vertical_region_gap, "vertical-region-gap", 0)
|
||||||
|
#endif
|
||||||
UI_CONFIG_VARIABLE (bool, show_waveform_clipping, "show-waveform-clipping", true)
|
UI_CONFIG_VARIABLE (bool, show_waveform_clipping, "show-waveform-clipping", true)
|
||||||
UI_CONFIG_VARIABLE (uint32_t, lock_gui_after_seconds, "lock-gui-after-seconds", 0)
|
UI_CONFIG_VARIABLE (uint32_t, lock_gui_after_seconds, "lock-gui-after-seconds", 0)
|
||||||
UI_CONFIG_VARIABLE (bool, draggable_playhead, "draggable-playhead", true)
|
UI_CONFIG_VARIABLE (bool, draggable_playhead, "draggable-playhead", true)
|
||||||
|
Loading…
Reference in New Issue
Block a user