From ce016589422986aa1350f097d001a7206e8ae4f9 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 5 Jul 2013 14:55:07 +0200 Subject: add meter ticks to mixer.. --- gtk2_ardour/meter_patterns.cc | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'gtk2_ardour/meter_patterns.cc') diff --git a/gtk2_ardour/meter_patterns.cc b/gtk2_ardour/meter_patterns.cc index f7e1226b13..6069bcb343 100644 --- a/gtk2_ardour/meter_patterns.cc +++ b/gtk2_ardour/meter_patterns.cc @@ -43,8 +43,12 @@ meter_render_ticks (Gtk::Widget& w, vector types) { Glib::RefPtr win (w.get_window()); + bool background; gint width, height; win->get_size (width, height); + background = + w.get_name().substr(w.get_name().length() - 4) == "Left" + || w.get_name().substr(w.get_name().length() - 5) == "Right"; cairo_surface_t* surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, width, height); cairo_t* cr = cairo_create (surface); @@ -52,7 +56,7 @@ meter_render_ticks (Gtk::Widget& w, vector types) cairo_move_to (cr, 0, 0); cairo_rectangle (cr, 0, 0, width, height); { - Gdk::Color c = w.get_style()->get_bg (Gtk::STATE_ACTIVE); + Gdk::Color c = w.get_style()->get_bg (background ? Gtk::STATE_ACTIVE : Gtk::STATE_NORMAL); cairo_set_source_rgb (cr, c.get_red_p(), c.get_green_p(), c.get_blue_p()); } cairo_fill (cr); @@ -184,11 +188,13 @@ meter_render_metrics (Gtk::Widget& w, vector types) { Glib::RefPtr win (w.get_window()); - bool tickleft = true; + bool tickleft; + bool background; gint width, height; win->get_size (width, height); tickleft = w.get_name().substr(w.get_name().length() - 4) == "Left"; + background = tickleft || w.get_name().substr(w.get_name().length() - 5) == "Right"; cairo_surface_t* surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, width, height); cairo_t* cr = cairo_create (surface); @@ -226,7 +232,7 @@ meter_render_metrics (Gtk::Widget& w, vector types) cairo_move_to (cr, 0, 0); cairo_rectangle (cr, 0, 0, width, height); { - Gdk::Color c = w.get_style()->get_bg (Gtk::STATE_ACTIVE); + Gdk::Color c = w.get_style()->get_bg (background ? Gtk::STATE_ACTIVE : Gtk::STATE_NORMAL); cairo_set_source_rgb (cr, c.get_red_p(), c.get_green_p(), c.get_blue_p()); } cairo_fill (cr); -- cgit v1.2.3