summaryrefslogtreecommitdiff
path: root/gtk2_ardour/canvas-note-event.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2010-06-24 21:22:00 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2010-06-24 21:22:00 +0000
commitdb55b149eb6b65bc3efa723ebe266f1035bb702f (patch)
tree7335adba1e762a3ab80a732655e6d7b932c59b67 /gtk2_ardour/canvas-note-event.h
parent806a22fefe8bc79c0307a6c3f6bfbde1185e7574 (diff)
change the way MIDI note colors are defined (2 3-point color ranges, one for selected, one for unselected); change default scroll action on selected midi notes to "fine" adjustment rather than "coarse" (now alt-scroll)
git-svn-id: svn://localhost/ardour2/branches/3.0@7302 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/canvas-note-event.h')
-rw-r--r--gtk2_ardour/canvas-note-event.h34
1 files changed, 24 insertions, 10 deletions
diff --git a/gtk2_ardour/canvas-note-event.h b/gtk2_ardour/canvas-note-event.h
index 05046a388f..c1795c330e 100644
--- a/gtk2_ardour/canvas-note-event.h
+++ b/gtk2_ardour/canvas-note-event.h
@@ -103,18 +103,32 @@ class CanvasNoteEvent : virtual public sigc::trackable
const boost::shared_ptr<NoteType> note() const { return _note; }
MidiRegionView& region_view() const { return _region; }
- inline static uint32_t meter_style_fill_color(uint8_t vel) {
- if (vel < 64) {
- return UINT_INTERPOLATE(
- ARDOUR_UI::config()->canvasvar_MidiNoteMeterColorBase.get(),
- ARDOUR_UI::config()->canvasvar_MidiNoteMeterColorMid.get(),
+ inline static uint32_t meter_style_fill_color(uint8_t vel, bool selected) {
+ if (selected) {
+ if (vel < 64) {
+ return UINT_INTERPOLATE(
+ ARDOUR_UI::config()->canvasvar_SelectedMidiNoteColorBase.get(),
+ ARDOUR_UI::config()->canvasvar_SelectedMidiNoteColorMid.get(),
(vel / (double)63.0));
- } else {
- return UINT_INTERPOLATE(
- ARDOUR_UI::config()->canvasvar_MidiNoteMeterColorMid.get(),
- ARDOUR_UI::config()->canvasvar_MidiNoteMeterColorTop.get(),
+ } else {
+ return UINT_INTERPOLATE(
+ ARDOUR_UI::config()->canvasvar_SelectedMidiNoteColorMid.get(),
+ ARDOUR_UI::config()->canvasvar_SelectedMidiNoteColorTop.get(),
((vel-64) / (double)63.0));
- }
+ }
+ } else {
+ if (vel < 64) {
+ return UINT_INTERPOLATE(
+ ARDOUR_UI::config()->canvasvar_MidiNoteColorBase.get(),
+ ARDOUR_UI::config()->canvasvar_MidiNoteColorMid.get(),
+ (vel / (double)63.0));
+ } else {
+ return UINT_INTERPOLATE(
+ ARDOUR_UI::config()->canvasvar_MidiNoteColorMid.get(),
+ ARDOUR_UI::config()->canvasvar_MidiNoteColorTop.get(),
+ ((vel-64) / (double)63.0));
+ }
+ }
}
/// calculate outline colors from fill colors of notes