summaryrefslogtreecommitdiff
path: root/libs/surfaces/push2
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-07-17 18:34:35 +0200
committerRobin Gareus <robin@gareus.org>2017-07-17 21:06:04 +0200
commit601c317d70a03190257577bd867cefc2c70d3275 (patch)
tree077071290f084431a912414c4e87b6127c586677 /libs/surfaces/push2
parent1f5ebc54853446a786925941bd014666e75221d2 (diff)
Clean up library inheritance (colors.h, utils.h)
make libwidget independent of libcanvas. Confine basics to pbd and gtkmm2ext.
Diffstat (limited to 'libs/surfaces/push2')
-rw-r--r--libs/surfaces/push2/knob.cc8
-rw-r--r--libs/surfaces/push2/knob.h12
-rw-r--r--libs/surfaces/push2/menu.cc8
-rw-r--r--libs/surfaces/push2/menu.h10
-rw-r--r--libs/surfaces/push2/mix.cc5
-rw-r--r--libs/surfaces/push2/push2.cc37
-rw-r--r--libs/surfaces/push2/push2.h10
-rw-r--r--libs/surfaces/push2/scale.cc3
-rw-r--r--libs/surfaces/push2/track_mix.cc2
9 files changed, 49 insertions, 46 deletions
diff --git a/libs/surfaces/push2/knob.cc b/libs/surfaces/push2/knob.cc
index fe745405b5..8bd5005c10 100644
--- a/libs/surfaces/push2/knob.cc
+++ b/libs/surfaces/push2/knob.cc
@@ -28,7 +28,7 @@
#include "gtkmm2ext/gui_thread.h"
#include "gtkmm2ext/rgb_macros.h"
-#include "canvas/colors.h"
+#include "gtkmm2ext/colors.h"
#include "canvas/text.h"
#include "knob.h"
@@ -75,7 +75,7 @@ Push2Knob::~Push2Knob ()
}
void
-Push2Knob::set_text_color (Color c)
+Push2Knob::set_text_color (Gtkmm2ext::Color c)
{
text->set_color (c);
}
@@ -145,8 +145,8 @@ Push2Knob::render (Rect const & area, Cairo::RefPtr<Cairo::Context> context) con
double red_start, green_start, blue_start, astart;
double red_end, green_end, blue_end, aend;
- ArdourCanvas::color_to_rgba (arc_start_color, red_start, green_start, blue_start, astart);
- ArdourCanvas::color_to_rgba (arc_end_color, red_end, green_end, blue_end, aend);
+ Gtkmm2ext::color_to_rgba (arc_start_color, red_start, green_start, blue_start, astart);
+ Gtkmm2ext::color_to_rgba (arc_end_color, red_end, green_end, blue_end, aend);
//vary the arc color over the travel of the knob
float intensity = fabsf (_val - zero) / std::max(zero, (1.f - zero));
diff --git a/libs/surfaces/push2/knob.h b/libs/surfaces/push2/knob.h
index 71cdf8db32..150d18f538 100644
--- a/libs/surfaces/push2/knob.h
+++ b/libs/surfaces/push2/knob.h
@@ -56,9 +56,9 @@ public:
void set_controllable (boost::shared_ptr<ARDOUR::AutomationControl> c);
boost::shared_ptr<ARDOUR::AutomationControl> controllable() const { return _controllable; }
- void set_text_color (ArdourCanvas::Color);
- void set_arc_start_color (ArdourCanvas::Color);
- void set_arc_end_color (ArdourCanvas::Color);
+ void set_text_color (Gtkmm2ext::Color);
+ void set_arc_start_color (Gtkmm2ext::Color);
+ void set_arc_end_color (Gtkmm2ext::Color);
void set_radius (double r);
void render (ArdourCanvas::Rect const &, Cairo::RefPtr<Cairo::Context>) const;
@@ -77,9 +77,9 @@ public:
float _val; // current value [0..1]
float _normal; // default value, arc
- ArdourCanvas::Color text_color;
- ArdourCanvas::Color arc_start_color;
- ArdourCanvas::Color arc_end_color;
+ Gtkmm2ext::Color text_color;
+ Gtkmm2ext::Color arc_start_color;
+ Gtkmm2ext::Color arc_end_color;
ArdourCanvas::Text* text;
void set_pan_azimuth_text (double);
diff --git a/libs/surfaces/push2/menu.cc b/libs/surfaces/push2/menu.cc
index b6558ac0ff..5a70a0ebd0 100644
--- a/libs/surfaces/push2/menu.cc
+++ b/libs/surfaces/push2/menu.cc
@@ -26,7 +26,7 @@
#include "canvas/text.h"
#include "canvas/types.h"
#include "canvas/rectangle.h"
-#include "canvas/colors.h"
+#include "gtkmm2ext/colors.h"
#include "canvas.h"
#include "gui.h"
@@ -262,7 +262,7 @@ Push2Menu::set_active (uint32_t index)
}
void
-Push2Menu::set_text_color (Color c)
+Push2Menu::set_text_color (Gtkmm2ext::Color c)
{
text_color = c;
@@ -273,10 +273,10 @@ Push2Menu::set_text_color (Color c)
}
void
-Push2Menu::set_active_color (Color c)
+Push2Menu::set_active_color (Gtkmm2ext::Color c)
{
active_color = c;
- contrast_color = contrasting_text_color (active_color);
+ contrast_color = Gtkmm2ext::contrasting_text_color (active_color);
if (active_bg) {
active_bg->set_fill_color (c);
}
diff --git a/libs/surfaces/push2/menu.h b/libs/surfaces/push2/menu.h
index ef4b9e2311..41f46c8fc4 100644
--- a/libs/surfaces/push2/menu.h
+++ b/libs/surfaces/push2/menu.h
@@ -58,8 +58,8 @@ class Push2Menu : public ArdourCanvas::Container
void set_layout (int cols, int rows);
void set_font_description (Pango::FontDescription);
- void set_text_color (ArdourCanvas::Color);
- void set_active_color (ArdourCanvas::Color);
+ void set_text_color (Gtkmm2ext::Color);
+ void set_active_color (Gtkmm2ext::Color);
bool can_scroll_left() const { return first >= nrows; }
bool can_scroll_right() const { return last < displays.size() - 1; }
@@ -86,9 +86,9 @@ class Push2Menu : public ArdourCanvas::Container
uint32_t last;
uint32_t _active;
- ArdourCanvas::Color text_color;
- ArdourCanvas::Color active_color;
- ArdourCanvas::Color contrast_color;
+ Gtkmm2ext::Color text_color;
+ Gtkmm2ext::Color active_color;
+ Gtkmm2ext::Color contrast_color;
Pango::FontDescription font_description;
inline int active_row () const { return _active % nrows; }
diff --git a/libs/surfaces/push2/mix.cc b/libs/surfaces/push2/mix.cc
index 4582cd0d30..fb2bfd222f 100644
--- a/libs/surfaces/push2/mix.cc
+++ b/libs/surfaces/push2/mix.cc
@@ -43,7 +43,7 @@
#include "ardour/utils.h"
#include "ardour/vca_manager.h"
-#include "canvas/colors.h"
+#include "gtkmm2ext/colors.h"
#include "canvas/line.h"
#include "canvas/rectangle.h"
#include "canvas/text.h"
@@ -68,6 +68,7 @@ using namespace std;
using namespace PBD;
using namespace Glib;
using namespace ArdourSurface;
+using namespace Gtkmm2ext;
using namespace ArdourCanvas;
MixLayout::MixLayout (Push2& p, Session & s, std::string const & name)
@@ -481,7 +482,7 @@ MixLayout::show_selection (uint32_t n)
{
lower_backgrounds[n]->show ();
lower_backgrounds[n]->set_fill_color (stripable[n]->presentation_info().color());
- lower_text[n]->set_color (ArdourCanvas::contrasting_text_color (lower_backgrounds[n]->fill_color()));
+ lower_text[n]->set_color (contrasting_text_color (lower_backgrounds[n]->fill_color()));
}
void
diff --git a/libs/surfaces/push2/push2.cc b/libs/surfaces/push2/push2.cc
index 00c7ef43d2..7b9a348841 100644
--- a/libs/surfaces/push2/push2.cc
+++ b/libs/surfaces/push2/push2.cc
@@ -45,7 +45,7 @@
#include "gtkmm2ext/gui_thread.h"
#include "gtkmm2ext/rgb_macros.h"
-#include "canvas/colors.h"
+#include "gtkmm2ext/colors.h"
#include "canvas.h"
#include "gui.h"
@@ -68,6 +68,7 @@ using namespace std;
using namespace PBD;
using namespace Glib;
using namespace ArdourSurface;
+using namespace Gtkmm2ext;
#include "pbd/abstract_ui.cc" // instantiate template
@@ -1296,7 +1297,7 @@ Push2::update_selection_color ()
}
selection_color = get_color_index (current_midi_track->presentation_info().color());
- contrast_color = get_color_index (ArdourCanvas::HSV (current_midi_track->presentation_info().color()).opposite().color());
+ contrast_color = get_color_index (Gtkmm2ext::HSV (current_midi_track->presentation_info().color()).opposite().color());
reset_pad_colors ();
}
@@ -1569,7 +1570,7 @@ Push2::stripable_selection_changed ()
new_pad_target->input()->connect (new_pad_target->input()->nth (0), pad_port->name(), this);
current_pad_target = new_pad_target;
selection_color = get_color_index (new_pad_target->presentation_info().color());
- contrast_color = get_color_index (ArdourCanvas::HSV (new_pad_target->presentation_info().color()).opposite().color());
+ contrast_color = get_color_index (Gtkmm2ext::HSV (new_pad_target->presentation_info().color()).opposite().color());
} else {
current_pad_target.reset ();
selection_color = LED::Green;
@@ -1590,7 +1591,7 @@ Push2::button_by_id (ButtonID bid)
}
uint8_t
-Push2::get_color_index (ArdourCanvas::Color rgba)
+Push2::get_color_index (Color rgba)
{
ColorMap::iterator i = color_map.find (rgba);
@@ -1600,7 +1601,7 @@ Push2::get_color_index (ArdourCanvas::Color rgba)
double dr, dg, db, da;
int r, g, b;
- ArdourCanvas::color_to_rgba (rgba, dr, dg, db, da);
+ color_to_rgba (rgba, dr, dg, db, da);
int w = 126; /* not sure where/when we should get this value */
@@ -1675,26 +1676,26 @@ Push2::build_color_map ()
void
Push2::fill_color_table ()
{
- colors.insert (make_pair (DarkBackground, ArdourCanvas::rgba_to_color (0, 0, 0, 1)));
- colors.insert (make_pair (LightBackground, ArdourCanvas::rgba_to_color (0.98, 0.98, 0.98, 1)));
+ colors.insert (make_pair (DarkBackground, Gtkmm2ext::rgba_to_color (0, 0, 0, 1)));
+ colors.insert (make_pair (LightBackground, Gtkmm2ext::rgba_to_color (0.98, 0.98, 0.98, 1)));
- colors.insert (make_pair (ParameterName, ArdourCanvas::rgba_to_color (0.98, 0.98, 0.98, 1)));
+ colors.insert (make_pair (ParameterName, Gtkmm2ext::rgba_to_color (0.98, 0.98, 0.98, 1)));
- colors.insert (make_pair (KnobArcBackground, ArdourCanvas::rgba_to_color (0.3, 0.3, 0.3, 1.0)));
- colors.insert (make_pair (KnobArcStart, ArdourCanvas::rgba_to_color (1.0, 0.0, 0.0, 1.0)));
- colors.insert (make_pair (KnobArcEnd, ArdourCanvas::rgba_to_color (0.0, 1.0, 0.0, 1.0)));
+ colors.insert (make_pair (KnobArcBackground, Gtkmm2ext::rgba_to_color (0.3, 0.3, 0.3, 1.0)));
+ colors.insert (make_pair (KnobArcStart, Gtkmm2ext::rgba_to_color (1.0, 0.0, 0.0, 1.0)));
+ colors.insert (make_pair (KnobArcEnd, Gtkmm2ext::rgba_to_color (0.0, 1.0, 0.0, 1.0)));
- colors.insert (make_pair (KnobLineShadow, ArdourCanvas::rgba_to_color (0, 0, 0, 0.3)));
- colors.insert (make_pair (KnobLine, ArdourCanvas::rgba_to_color (1, 1, 1, 1)));
+ colors.insert (make_pair (KnobLineShadow, Gtkmm2ext::rgba_to_color (0, 0, 0, 0.3)));
+ colors.insert (make_pair (KnobLine, Gtkmm2ext::rgba_to_color (1, 1, 1, 1)));
- colors.insert (make_pair (KnobForeground, ArdourCanvas::rgba_to_color (0.2, 0.2, 0.2, 1)));
- colors.insert (make_pair (KnobBackground, ArdourCanvas::rgba_to_color (0.2, 0.2, 0.2, 1)));
- colors.insert (make_pair (KnobShadow, ArdourCanvas::rgba_to_color (0, 0, 0, 0.1)));
- colors.insert (make_pair (KnobBorder, ArdourCanvas::rgba_to_color (0, 0, 0, 1)));
+ colors.insert (make_pair (KnobForeground, Gtkmm2ext::rgba_to_color (0.2, 0.2, 0.2, 1)));
+ colors.insert (make_pair (KnobBackground, Gtkmm2ext::rgba_to_color (0.2, 0.2, 0.2, 1)));
+ colors.insert (make_pair (KnobShadow, Gtkmm2ext::rgba_to_color (0, 0, 0, 0.1)));
+ colors.insert (make_pair (KnobBorder, Gtkmm2ext::rgba_to_color (0, 0, 0, 1)));
}
-ArdourCanvas::Color
+Gtkmm2ext::Color
Push2::get_color (ColorName name)
{
Colors::iterator c = colors.find (name);
diff --git a/libs/surfaces/push2/push2.h b/libs/surfaces/push2/push2.h
index 361801529a..7c9d147e7d 100644
--- a/libs/surfaces/push2/push2.h
+++ b/libs/surfaces/push2/push2.h
@@ -38,7 +38,7 @@
#include "control_protocol/control_protocol.h"
#include "control_protocol/types.h"
-#include "canvas/colors.h"
+#include "gtkmm2ext/colors.h"
#include "midi_byte_array.h"
@@ -359,8 +359,8 @@ class Push2 : public ARDOUR::ControlProtocol
void write (const MidiByteArray&);
- uint8_t get_color_index (ArdourCanvas::Color rgba);
- ArdourCanvas::Color get_color (ColorName);
+ uint8_t get_color_index (Gtkmm2ext::Color rgba);
+ Gtkmm2ext::Color get_color (ColorName);
PressureMode pressure_mode () const { return _pressure_mode; }
void set_pressure_mode (PressureMode);
@@ -583,7 +583,7 @@ class Push2 : public ARDOUR::ControlProtocol
/* color map (device side) */
- typedef std::map<ArdourCanvas::Color,uint8_t> ColorMap;
+ typedef std::map<Gtkmm2ext::Color,uint8_t> ColorMap;
typedef std::stack<uint8_t> ColorMapFreeList;
ColorMap color_map;
ColorMapFreeList color_map_free_list;
@@ -591,7 +591,7 @@ class Push2 : public ARDOUR::ControlProtocol
/* our own colors */
- typedef std::map<ColorName,ArdourCanvas::Color> Colors;
+ typedef std::map<ColorName,Gtkmm2ext::Color> Colors;
Colors colors;
void fill_color_table ();
void reset_pad_colors ();
diff --git a/libs/surfaces/push2/scale.cc b/libs/surfaces/push2/scale.cc
index ac77c4ca32..e5f04604d4 100644
--- a/libs/surfaces/push2/scale.cc
+++ b/libs/surfaces/push2/scale.cc
@@ -20,7 +20,7 @@
#include "gtkmm2ext/gui_thread.h"
-#include "canvas/colors.h"
+#include "gtkmm2ext/colors.h"
#include "canvas/rectangle.h"
#include "canvas/text.h"
@@ -38,6 +38,7 @@ using namespace std;
using namespace PBD;
using namespace Glib;
using namespace ArdourSurface;
+using namespace Gtkmm2ext;
using namespace ArdourCanvas;
static double unselected_root_alpha = 0.5;
diff --git a/libs/surfaces/push2/track_mix.cc b/libs/surfaces/push2/track_mix.cc
index a04ac0af24..ed4c9c3aa3 100644
--- a/libs/surfaces/push2/track_mix.cc
+++ b/libs/surfaces/push2/track_mix.cc
@@ -531,7 +531,7 @@ TrackMixLayout::color_changed ()
return;
}
- Color rgba = stripable->presentation_info().color();
+ Gtkmm2ext::Color rgba = stripable->presentation_info().color();
selection_color = p2.get_color_index (rgba);
name_text->set_color (rgba);