diff options
author | Tim Mayberry <mojofunk@gmail.com> | 2015-01-04 20:30:59 +0700 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-09-16 16:55:17 -0400 |
commit | 2d47183dc962bddd2084676b59e9f2c4a0abe33b (patch) | |
tree | d4609aa55ef119d7b1b532618ff796ccdca1cdbf /gtk2_ardour/ui_config.cc | |
parent | 2e8af0c91725787bd1ab3c2bc2653e34abc36f9a (diff) |
Move util functions into UIConfiguration as they depend on it anyway
Diffstat (limited to 'gtk2_ardour/ui_config.cc')
-rw-r--r-- | gtk2_ardour/ui_config.cc | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/gtk2_ardour/ui_config.cc b/gtk2_ardour/ui_config.cc index cc5e9900ac..5783e91bbe 100644 --- a/gtk2_ardour/ui_config.cc +++ b/gtk2_ardour/ui_config.cc @@ -29,6 +29,9 @@ #include <cairo/cairo.h> +#include <pango/pangoft2.h> // for fontmap resolution control for GnomeCanvas +#include <pango/pangocairo.h> // for fontmap resolution control for GnomeCanvas + #include <glibmm/miscutils.h> #include <glib/gstdio.h> @@ -142,7 +145,35 @@ UIConfiguration::reset_gtk_theme () Gtk::Settings::get_default()->property_gtk_color_scheme() = ss.str(); } - + +void +UIConfiguration::reset_dpi () +{ + long val = get_font_scale(); + set_pango_fontsize (); + /* Xft rendering */ + + gtk_settings_set_long_property (gtk_settings_get_default(), + "gtk-xft-dpi", val, "ardour"); + ARDOUR_UI_UTILS::DPIReset(); //Emit Signal +} + +void +UIConfiguration::set_pango_fontsize () +{ + long val = get_font_scale(); + + /* FT2 rendering - used by GnomeCanvas, sigh */ + +#ifndef PLATFORM_WINDOWS + pango_ft2_font_map_set_resolution ((PangoFT2FontMap*) pango_ft2_font_map_new(), val/1024, val/1024); +#endif + + /* Cairo rendering, in case there is any */ + + pango_cairo_font_map_set_resolution ((PangoCairoFontMap*) pango_cairo_font_map_get_default(), val/1024); +} + void UIConfiguration::map_parameters (boost::function<void (std::string)>& functor) { |