replace ::cast_dynamic() with relevant ActionManager::get_*_action() calls
[ardour.git] / gtk2_ardour / note_base.h
index ebc00cbfa4e6177bdf134aeea8e2d39f7e58f512..574ca54e6d75e37436fab7fbff4e3f461496778b 100644 (file)
@@ -24,6 +24,7 @@
 
 #include "temporal/beats.h"
 #include "canvas/types.h"
+#include "gtkmm2ext/colors.h"
 
 #include "rgb_macros.h"
 #include "ui_config.h"
@@ -103,20 +104,12 @@ public:
 
        static void set_colors ();
 
-       inline static uint32_t meter_style_fill_color(uint8_t vel, bool selected) {
-               if (selected) {
-                       return _selected_mod_col;
-               } else if (vel < 64) {
-                       return UINT_INTERPOLATE(_min_col, _mid_col, (vel / (double)63.0));
-               } else {
-                       return UINT_INTERPOLATE(_mid_col, _max_col, ((vel - 64) / (double)63.0));
-               }
-       }
+       static Gtkmm2ext::Color meter_style_fill_color(uint8_t vel, bool selected);
 
        /// calculate outline colors from fill colors of notes
        inline static uint32_t calculate_outline(uint32_t color, bool selected=false) {
                if (selected) {
-                       return _selected_outline_col;
+                       return _selected_col;
                } else {
                        return UINT_INTERPOLATE(color, 0x000000ff, 0.5);
                }
@@ -148,12 +141,9 @@ protected:
 private:
        bool event_handler (GdkEvent *);
 
-       static uint32_t _selected_mod_col;
-       static uint32_t _selected_outline_col;
-       static uint32_t _selected_col;
-       static uint32_t _min_col;
-       static uint32_t _mid_col;
-       static uint32_t _max_col;
+       static Gtkmm2ext::Color _selected_col;
+       static Gtkmm2ext::SVAModifier color_modifier;
+       static Gtkmm2ext::Color velocity_color_table[128];
        static bool _color_init;
 };