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
use Adjustment;
use Orientable;
use Orientation;
use Range;
use Widget;
use ffi;
use glib::object::Downcast;
use glib::translate::*;
glib_wrapper! {
pub struct Scrollbar(Object<ffi::GtkScrollbar>): Range, Widget, Orientable;
match fn {
get_type => || ffi::gtk_scrollbar_get_type(),
}
}
impl Scrollbar {
pub fn new<'a, P: Into<Option<&'a Adjustment>>>(orientation: Orientation, adjustment: P) -> Scrollbar {
assert_initialized_main_thread!();
let adjustment = adjustment.into();
let adjustment = adjustment.to_glib_none();
unsafe {
Widget::from_glib_none(ffi::gtk_scrollbar_new(orientation.to_glib(), adjustment.0)).downcast_unchecked()
}
}
}