atk/auto/range.rs
1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5use crate::ffi;
6use glib::translate::*;
7
8glib::wrapper! {
9 /// A given range or subrange, to be used with [`Value`][crate::Value]
10 ///
11 /// [`Range`][crate::Range] are used on [`Value`][crate::Value], in order to represent the full
12 /// range of a given component (for example an slider or a range
13 /// control), or to define each individual subrange this full range is
14 /// splitted if available. See [`Value`][crate::Value] documentation for further
15 /// details.
16 #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
17 pub struct Range(Boxed<ffi::AtkRange>);
18
19 match fn {
20 copy => |ptr| ffi::atk_range_copy(mut_override(ptr)),
21 free => |ptr| ffi::atk_range_free(ptr),
22 type_ => || ffi::atk_range_get_type(),
23 }
24}
25
26impl Range {
27 /// Creates a new [`Range`][crate::Range].
28 /// ## `lower_limit`
29 /// inferior limit for this range
30 /// ## `upper_limit`
31 /// superior limit for this range
32 /// ## `description`
33 /// human readable description of this range.
34 ///
35 /// # Returns
36 ///
37 /// a new [`Range`][crate::Range]
38 #[doc(alias = "atk_range_new")]
39 pub fn new(lower_limit: f64, upper_limit: f64, description: &str) -> Range {
40 assert_initialized_main_thread!();
41 unsafe {
42 from_glib_full(ffi::atk_range_new(
43 lower_limit,
44 upper_limit,
45 description.to_glib_none().0,
46 ))
47 }
48 }
49
50 /// Returns the human readable description of `self`
51 ///
52 /// # Returns
53 ///
54 /// the human-readable description of `self`
55 #[doc(alias = "atk_range_get_description")]
56 #[doc(alias = "get_description")]
57 pub fn description(&mut self) -> Option<glib::GString> {
58 unsafe { from_glib_none(ffi::atk_range_get_description(self.to_glib_none_mut().0)) }
59 }
60
61 /// Returns the lower limit of `self`
62 ///
63 /// # Returns
64 ///
65 /// the lower limit of `self`
66 #[doc(alias = "atk_range_get_lower_limit")]
67 #[doc(alias = "get_lower_limit")]
68 pub fn lower_limit(&mut self) -> f64 {
69 unsafe { ffi::atk_range_get_lower_limit(self.to_glib_none_mut().0) }
70 }
71
72 /// Returns the upper limit of `self`
73 ///
74 /// # Returns
75 ///
76 /// the upper limit of `self`
77 #[doc(alias = "atk_range_get_upper_limit")]
78 #[doc(alias = "get_upper_limit")]
79 pub fn upper_limit(&mut self) -> f64 {
80 unsafe { ffi::atk_range_get_upper_limit(self.to_glib_none_mut().0) }
81 }
82}