From 8d85afd29420a98148ac994f8dcb4e5412b7c2e2 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Wed, 22 Apr 2015 21:31:19 +0200 Subject: [PATCH] add central API to calculate UI scaling --- gtk2_ardour/ardour_ui.cc | 1 + gtk2_ardour/ardour_ui.h | 1 + gtk2_ardour/ardour_ui_options.cc | 2 ++ 3 files changed, 4 insertions(+) diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index 184c3a06c7..a1bd464631 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -160,6 +160,7 @@ ARDOUR_UI *ARDOUR_UI::theArdourUI = 0; sigc::signal ARDOUR_UI::Clock; sigc::signal ARDOUR_UI::CloseAllDialogs; +float ARDOUR_UI::ui_scale = 1.0; static bool ask_about_configuration_copy (string const & old_dir, string const & new_dir, int version) diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h index c078422ef3..2bbd0f6b79 100644 --- a/gtk2_ardour/ardour_ui.h +++ b/gtk2_ardour/ardour_ui.h @@ -185,6 +185,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI, public ARDOUR::SessionHandlePtr static ARDOUR_UI *instance () { return theArdourUI; } static UIConfiguration *config () { return theArdourUI->ui_config; } + static float ui_scale; PublicEditor& the_editor() { return *editor;} Mixer_UI* the_mixer() { return mixer; } diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc index a354d47dfc..f63dd46401 100644 --- a/gtk2_ardour/ardour_ui_options.cc +++ b/gtk2_ardour/ardour_ui_options.cc @@ -423,6 +423,8 @@ ARDOUR_UI::parameter_changed (std::string p) ? ArdourCanvas::WaveView::Rectified : ArdourCanvas::WaveView::Normal); } else if (p == "show-waveform-clipping") { ArdourCanvas::WaveView::set_global_show_waveform_clipping (ARDOUR_UI::config()->get_show_waveform_clipping()); + } else if (p == "font-scale") { + ui_scale = config()->get_font_scale () / 102400.; } } -- 2.30.2