diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-04-22 22:53:39 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-05-31 15:30:41 -0400 |
commit | a48fada3c7743824783c44e5ee04e910e80e6c4b (patch) | |
tree | a3a2c295614362bcac1f48679b626eaf3549b037 /libs/gtkmm2ext/utils.cc | |
parent | 02f2b90e969daa81a96b07c73ba5e7e57a75f7d8 (diff) |
move new fractional pane utility functions into libs/gtkmm2ext
Diffstat (limited to 'libs/gtkmm2ext/utils.cc')
-rw-r--r-- | libs/gtkmm2ext/utils.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/libs/gtkmm2ext/utils.cc b/libs/gtkmm2ext/utils.cc index 7590ed2d78..3210e0e63d 100644 --- a/libs/gtkmm2ext/utils.cc +++ b/libs/gtkmm2ext/utils.cc @@ -992,3 +992,23 @@ Gtkmm2ext::add_volume_shortcuts (Gtk::FileChooser& c) } #endif } + +float +Gtkmm2ext::paned_position_as_fraction (Gtk::Paned& paned, bool h) +{ + const guint pos = gtk_paned_get_position (const_cast<GtkPaned*>(static_cast<const Gtk::Paned*>(&paned)->gobj())); + return (double) pos / (h ? paned.get_allocation().get_height() : paned.get_allocation().get_width()); +} + +void +Gtkmm2ext::paned_set_position_as_fraction (Gtk::Paned& paned, float fraction, bool h) +{ + gint v = (h ? paned.get_allocation().get_height() : paned.get_allocation().get_width()); + + if (v < 1) { + return; + } + + paned.set_position ((guint) floor (fraction * v)); +} + |