diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2011-11-20 15:10:53 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2011-11-20 15:10:53 +0000 |
commit | 0eb3cbdfa1fc5360b39039065001d654c11ff7bb (patch) | |
tree | bffca90c832870cbbc18a0f80b096f4a837fe87a /gtk2_ardour/ardour_ui_ed.cc | |
parent | d8425b4a0fc1a875a3f1fdff62e222386ce3f1b4 (diff) |
audio clocks: big clock window now sizes itself to its current mode, all clocks pay attention to font scaling changes
git-svn-id: svn://localhost/ardour2/branches/3.0@10706 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui_ed.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui_ed.cc | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc index c47f2023ae..f7005e99d9 100644 --- a/gtk2_ardour/ardour_ui_ed.cc +++ b/gtk2_ardour/ardour_ui_ed.cc @@ -642,6 +642,8 @@ ARDOUR_UI::setup_clock () ARDOUR_UI::Clock.connect (sigc::mem_fun (big_clock, &AudioClock::set)); big_clock->set_corner_radius (0.0); + big_clock->set_fixed_width (false); + big_clock->mode_changed.connect (sigc::mem_fun (*this, &ARDOUR_UI::big_clock_reset_aspect_ratio)); big_clock_window->set (new Window (WINDOW_TOPLEVEL), false); @@ -661,13 +663,8 @@ ARDOUR_UI::setup_clock () } void -ARDOUR_UI::big_clock_realized () +ARDOUR_UI::big_clock_reset_aspect_ratio () { - int x, y, w, d; - - set_decoration (big_clock_window->get(), (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)); - big_clock_window->get()->get_window()->get_geometry (x, y, w, big_clock_height, d); - Gtk::Requisition req; big_clock->size_request (req); float aspect = req.width/(float)req.height; @@ -677,6 +674,17 @@ ARDOUR_UI::big_clock_realized () geom.max_aspect = aspect; big_clock_window->get()->set_geometry_hints (*big_clock, geom, Gdk::HINT_ASPECT); +} + +void +ARDOUR_UI::big_clock_realized () +{ + int x, y, w, d; + + set_decoration (big_clock_window->get(), (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)); + big_clock_window->get()->get_window()->get_geometry (x, y, w, big_clock_height, d); + + big_clock_reset_aspect_ratio (); original_big_clock_height = big_clock_height; original_big_clock_width = w; |