Don't make MIDI regions in note mode completely invisible.
authorDavid Robillard <d@drobilla.net>
Fri, 14 Nov 2014 04:33:11 +0000 (23:33 -0500)
committerDavid Robillard <d@drobilla.net>
Fri, 14 Nov 2014 04:33:11 +0000 (23:33 -0500)
This makes for extremely confusing behaviour, particularly when creating new
regions.  This is still probably too transparent, IMO, but at least isn't
totally mysterious.  "visible" is a bit of a misnomer in the code, now.

gtk2_ardour/midi_region_view.cc
gtk2_ardour/time_axis_view_item.cc

index 08fab6ff86df705b7652d7be17a5f5b22bbb8ecd..d44b54bd8da46ece0cedaa98c4e1aa82796f8321 100644 (file)
@@ -3221,7 +3221,7 @@ MidiRegionView::set_frame_color()
        }
 
        if (!rect_visible) {
-               f = UINT_RGBA_CHANGE_A (f, 0);
+               f = UINT_RGBA_CHANGE_A (f, 80);
        }
 
        frame->set_fill_color (f);
index c698263d57c247fb238bbcbe5d5e2f5258e5a02b..5948cebddd89d9c4696a5e5ef71b6ed83c554183 100644 (file)
@@ -719,12 +719,10 @@ uint32_t
 TimeAxisViewItem::fill_opacity () const
 {
        if (!rect_visible) {
-               /* if the frame/rect is marked as invisible, then the
-                * fill should be transparent. simplest: set
-                
-                * alpha/opacity to zero.
-                */
-               return 0;
+               /* if the frame/rect is marked as "invisible", then the
+                  fill should be translucent.parent.
+               */
+               return 64;
        }
 
        if (_dragging) {
@@ -781,19 +779,19 @@ TimeAxisViewItem::set_frame_color()
                return;
        }
 
-        frame->set_fill_color (get_fill_color());
+       frame->set_fill_color (get_fill_color());
        set_frame_gradient ();
 
-        if (!_recregion) {
+       if (!_recregion) {
                uint32_t f = ARDOUR_UI::config()->get_TimeAxisFrame();
 
-                if (!rect_visible) {
+               if (!rect_visible) {
                        /* make the frame outline be visible but rather transparent */
-                        f = UINT_RGBA_CHANGE_A (f, 64);
-                }
+                       f = UINT_RGBA_CHANGE_A (f, 64);
+               }
 
-                frame->set_outline_color (f);
-        }
+               frame->set_outline_color (f);
+       }
 }
 
 void