summaryrefslogtreecommitdiff
path: root/gtk2_ardour/plugin_display.cc
diff options
context:
space:
mode:
authorJohannes Mueller <github@johannes-mueller.org>2017-07-21 00:37:07 +0200
committerRobin Gareus <robin@gareus.org>2017-07-31 21:31:22 +0200
commit4a60c277dbf28b5fd371a04e5d7ca3d7b8df669f (patch)
tree6cf6044b7f3af205c1d8ff889122b6ac31175337 /gtk2_ardour/plugin_display.cc
parenta61ae46c82616eff3ec1f8dd1e1385cad227d25e (diff)
Some abstractions to make the display look good in the plugin gui
Diffstat (limited to 'gtk2_ardour/plugin_display.cc')
-rw-r--r--gtk2_ardour/plugin_display.cc16
1 files changed, 13 insertions, 3 deletions
diff --git a/gtk2_ardour/plugin_display.cc b/gtk2_ardour/plugin_display.cc
index ed95e9aa5a..b04eb271b7 100644
--- a/gtk2_ardour/plugin_display.cc
+++ b/gtk2_ardour/plugin_display.cc
@@ -153,7 +153,7 @@ PluginDisplay::on_expose_event (GdkEventExpose* ev)
cairo_save (cr);
cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
- Gtkmm2ext::rounded_rectangle (cr, .5, -1.5, width - 1, height + 1, 7);
+ display_frame(cr, width, height);
cairo_clip (cr);
cairo_set_operator (cr, CAIRO_OPERATOR_OVER);
@@ -176,12 +176,22 @@ PluginDisplay::on_expose_event (GdkEventExpose* ev)
std::string name = get_name();
Gtkmm2ext::Color fill_color = UIConfiguration::instance().color (string_compose ("%1: fill active", name), &failed);
- Gtkmm2ext::rounded_rectangle (cr, .5, -1.5, width - 1, height + 1, 7);
+ display_frame(cr, width, height);
cairo_set_operator (cr, CAIRO_OPERATOR_OVER);
cairo_set_line_width(cr, 1.0);
- Gtkmm2ext::set_source_rgb_a (cr, fill_color, 1.0);
+ if (failed) {
+ cairo_set_source_rgba (cr, .75, .75, .75, 1.0);
+ } else {
+ Gtkmm2ext::set_source_rgb_a (cr, fill_color, 1.0);
+ }
cairo_stroke (cr);
cairo_destroy(cr);
return true;
}
+
+void
+PluginDisplay::display_frame (cairo_t* cr, double w, double h)
+{
+ cairo_rectangle (cr, 0.0, 0.0, w, h);
+}