summaryrefslogtreecommitdiff
path: root/gtk2_ardour/gain_meter.cc
diff options
context:
space:
mode:
authorDoug McLain <doug@nostar.net>2008-02-24 19:13:09 +0000
committerDoug McLain <doug@nostar.net>2008-02-24 19:13:09 +0000
commit2f18e339cdffadbc5a37db39207dc1f7be7cb8ac (patch)
tree6d60e33620b1d87198ac6919a8ca4d1262b9d2a4 /gtk2_ardour/gain_meter.cc
parent6299560116cb1e024f214f4928aa88605a5cddff (diff)
Fixes for canvas and gain meter text not being scaled on startup
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3119 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/gain_meter.cc')
-rw-r--r--gtk2_ardour/gain_meter.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc
index 2180cde3d5..ac4da8507b 100644
--- a/gtk2_ardour/gain_meter.cc
+++ b/gtk2_ardour/gain_meter.cc
@@ -206,7 +206,8 @@ GainMeter::GainMeter (boost::shared_ptr<IO> io, Session& s)
ResetGroupPeakDisplays.connect (mem_fun(*this, &GainMeter::reset_group_peak_display));
UI::instance()->theme_changed.connect (mem_fun(*this, &GainMeter::on_theme_changed));
- ColorsChanged.connect (mem_fun (*this, &GainMeter::color_handler));
+ ColorsChanged.connect (bind(mem_fun (*this, &GainMeter::color_handler), false));
+ DPIReset.connect (bind(mem_fun (*this, &GainMeter::color_handler), true));
//hide_all();
}
@@ -288,7 +289,7 @@ GainMeter::meter_metrics_expose (GdkEventExpose *ev)
Glib::RefPtr<Gdk::Pixmap> pixmap;
std::map<string,Glib::RefPtr<Gdk::Pixmap> >::iterator i = metric_pixmaps.find (meter_metric_area.get_name());
- if (i == metric_pixmaps.end() || style_changed) {
+ if (i == metric_pixmaps.end() || style_changed || dpi_changed) {
pixmap = render_metrics (meter_metric_area);
} else {
pixmap = i->second;
@@ -965,8 +966,9 @@ void GainMeter::clear_meters ()
}
}
-void GainMeter::color_handler()
+void GainMeter::color_handler(bool dpi)
{
color_changed = true;
+ dpi_changed = (dpi) ? true : false;
setup_meters();
}