make use-note-color-for-velocity much much more efficient
authorPaul Davis <paul@linuxaudiosystems.com>
Tue, 3 Jul 2018 22:33:11 +0000 (18:33 -0400)
committerPaul Davis <paul@linuxaudiosystems.com>
Tue, 3 Jul 2018 22:33:11 +0000 (18:33 -0400)
(by not invoking the global color change signal)

gtk2_ardour/editor.cc
gtk2_ardour/midi_region_view.cc

index ef5068a5ed2864e1a69e5bb51c956039e0605047..fe904dcb4df17952d7cd7ff6ab6e0c03579d5817 100644 (file)
@@ -6170,7 +6170,7 @@ Editor::ui_parameter_changed (string parameter)
                ArdourCanvas::Note::set_show_velocity_bars (UIConfiguration::instance().get_use_note_bars_for_velocity());
                _track_canvas->request_redraw (_track_canvas->visible_area());
        } else if (parameter == "use-note-color-for-velocity") {
-               UIConfiguration::instance().ColorsChanged(); /* EMIT SIGNAL */
+               /* handled individually by each MidiRegionView */
        }
 }
 
index a544e96de57960fc4ad7f9f2a94cdf6cfdb1f833..5fc87cf8dd487a37087bac76e7404b747528158d 100644 (file)
@@ -133,6 +133,8 @@ MidiRegionView::MidiRegionView (ArdourCanvas::Container*      parent,
        PublicEditor::DropDownKeys.connect (sigc::mem_fun (*this, &MidiRegionView::drop_down_keys));
 
        Config->ParameterChanged.connect (*this, invalidator (*this), boost::bind (&MidiRegionView::parameter_changed, this, _1), gui_context());
+       UIConfiguration::instance().ParameterChanged.connect (sigc::mem_fun (*this, &MidiRegionView::parameter_changed));
+
        connect_to_diskstream ();
 }
 
@@ -191,6 +193,8 @@ MidiRegionView::parameter_changed (std::string const & p)
                }
        } else if (p == "color-regions-using-track-color") {
                set_colors ();
+       } else if (p == "use-note-color-for-velocity") {
+               color_handler ();
        }
 }