summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-05-29 18:38:54 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-05-29 18:38:54 +0000
commit9d40a072a42dc259a872db765e3829badab65e5e (patch)
treec4c075c10619799d80869727c1afe8b1e76beb0a
parentf1505b631dd6a2ef30eae01e00ca7162de0aba3f (diff)
arguably cleaner tweak to previous commit
git-svn-id: svn://localhost/ardour2/branches/3.0@12479 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--gtk2_ardour/audio_region_view.cc31
-rw-r--r--gtk2_ardour/audio_region_view.h2
-rw-r--r--gtk2_ardour/editor_mouse.cc1
-rw-r--r--gtk2_ardour/editor_ops.cc2
4 files changed, 15 insertions, 21 deletions
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc
index ec0a230f49..c053577165 100644
--- a/gtk2_ardour/audio_region_view.cc
+++ b/gtk2_ardour/audio_region_view.cc
@@ -200,7 +200,7 @@ AudioRegionView::init (Gdk::Color const & basic_color, bool wfd)
gain_line.reset (new AudioRegionGainLine (line_name, *this, *group, audio_region()->envelope()));
}
- gain_line->set_visibility (automation_line_visibility());
+ update_envelope_visibility ();
gain_line->reset ();
set_height (trackview.current_height());
@@ -494,7 +494,7 @@ AudioRegionView::set_height (gdouble height)
if ((height/wcnt) < NAME_HIGHLIGHT_THRESH) {
gain_line->hide ();
} else {
- gain_line->set_visibility (automation_line_visibility());
+ update_envelope_visibility ();
}
gain_line->set_height ((uint32_t) rint (height - NAME_HIGHLIGHT_SIZE) - 2);
@@ -850,16 +850,20 @@ AudioRegionView::temporarily_hide_envelope ()
void
AudioRegionView::unhide_envelope ()
{
- if (gain_line) {
- gain_line->set_visibility (automation_line_visibility());
- }
+ update_envelope_visibility ();
}
void
-AudioRegionView::update_envelope_visible ()
+AudioRegionView::update_envelope_visibility ()
{
- if (gain_line) {
- gain_line->set_visibility (automation_line_visibility());
+ if (!gain_line) {
+ return;
+ }
+
+ if (Config->get_show_region_gain() || trackview.editor().current_mouse_mode() == Editing::MouseGain) {
+ gain_line->add_visibility (AutomationLine::Line);
+ } else {
+ gain_line->hide ();
}
}
@@ -1024,7 +1028,7 @@ AudioRegionView::add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *ev)
/* don't create points that can't be seen */
- gain_line->set_visibility (automation_line_visibility());
+ update_envelope_visibility ();
x = ev->button.x;
y = ev->button.y;
@@ -1801,12 +1805,3 @@ AudioRegionView::drag_end ()
/* fades will be redrawn if they changed */
}
-AutomationLine::VisibleAspects
-AudioRegionView::automation_line_visibility () const
-{
- if (Config->get_show_region_gain() || trackview.editor().current_mouse_mode() == Editing::MouseGain) {
- return AutomationLine::Line;
- } else {
- return AutomationLine::VisibleAspects (0);
- }
-}
diff --git a/gtk2_ardour/audio_region_view.h b/gtk2_ardour/audio_region_view.h
index 8a3a8d2394..773e136952 100644
--- a/gtk2_ardour/audio_region_view.h
+++ b/gtk2_ardour/audio_region_view.h
@@ -79,7 +79,7 @@ class AudioRegionView : public RegionView
void temporarily_hide_envelope (); ///< Dangerous!
void unhide_envelope (); ///< Dangerous!
- void update_envelope_visible ();
+ void update_envelope_visibility ();
void set_waveform_visible (bool yn);
void set_waveform_shape (ARDOUR::WaveformShape);
void set_waveform_scale (ARDOUR::WaveformScale);
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc
index 5b718f49f0..106f6868c5 100644
--- a/gtk2_ardour/editor_mouse.cc
+++ b/gtk2_ardour/editor_mouse.cc
@@ -473,7 +473,6 @@ Editor::mouse_mode_toggled (MouseMode m)
}
set_canvas_cursor ();
- cerr << "mouse-driven sgev\n";
set_gain_envelope_visibility ();
MouseModeChanged (); /* EMIT SIGNAL */
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index bd1ee9d1c9..3da3042671 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -4855,7 +4855,7 @@ Editor::set_region_gain_visibility (RegionView* rv)
{
AudioRegionView* arv = dynamic_cast<AudioRegionView*> (rv);
if (arv) {
- arv->update_envelope_visible ();
+ arv->update_envelope_visibility();
}
}