1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
// Copyright 2013-2017, The Gtk-rs Project Developers. // See the COPYRIGHT file at the top-level directory of this distribution. // Licensed under the MIT license, see the LICENSE file or <http://opensource.org/licenses/MIT> use cairo; use gdk_sys; use glib; use glib::translate::*; use Screen; impl Screen { /// Gets any options previously set with `Screen::set_font_options`. /// /// # Returns /// /// the current font options, or `None` if no /// default font options have been set. pub fn get_font_options(&self) -> Option<cairo::FontOptions> { unsafe { from_glib_none(mut_override(gdk_sys::gdk_screen_get_font_options( self.to_glib_none().0, ))) } } /// Retrieves a desktop-wide setting such as double-click time /// for the `Screen` `self`. /// /// FIXME needs a list of valid settings here, or a link to /// more information. /// ## `name` /// the name of the setting /// ## `value` /// location to store the value of the setting /// /// # Returns /// /// `true` if the setting existed and a value was stored /// in `value`, `false` otherwise. pub fn get_setting(&self, name: &str) -> Option<glib::Value> { unsafe { let mut value = glib::Value::uninitialized(); let done: bool = from_glib(gdk_sys::gdk_screen_get_setting( self.to_glib_none().0, name.to_glib_none().0, value.to_glib_none_mut().0, )); if done == true { Some(value) } else { None } } } }