gtk4/auto/
tree_row_reference.rs1use crate::{ffi, TreeModel, TreePath};
6use glib::{prelude::*, translate::*};
7
8glib::wrapper! {
9 #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
10 pub struct TreeRowReference(Boxed<ffi::GtkTreeRowReference>);
11
12 match fn {
13 copy => |ptr| ffi::gtk_tree_row_reference_copy(mut_override(ptr)),
14 free => |ptr| ffi::gtk_tree_row_reference_free(ptr),
15 type_ => || ffi::gtk_tree_row_reference_get_type(),
16 }
17}
18
19impl TreeRowReference {
20 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
21 #[allow(deprecated)]
22 #[doc(alias = "gtk_tree_row_reference_new")]
23 pub fn new(model: &impl IsA<TreeModel>, path: &TreePath) -> Option<TreeRowReference> {
24 skip_assert_initialized!();
25 unsafe {
26 from_glib_full(ffi::gtk_tree_row_reference_new(
27 model.as_ref().to_glib_none().0,
28 mut_override(path.to_glib_none().0),
29 ))
30 }
31 }
32
33 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
34 #[allow(deprecated)]
35 #[doc(alias = "gtk_tree_row_reference_new_proxy")]
36 pub fn new_proxy(
37 proxy: &impl IsA<glib::Object>,
38 model: &impl IsA<TreeModel>,
39 path: &TreePath,
40 ) -> Option<TreeRowReference> {
41 skip_assert_initialized!();
42 unsafe {
43 from_glib_full(ffi::gtk_tree_row_reference_new_proxy(
44 proxy.as_ref().to_glib_none().0,
45 model.as_ref().to_glib_none().0,
46 mut_override(path.to_glib_none().0),
47 ))
48 }
49 }
50
51 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
52 #[allow(deprecated)]
53 #[doc(alias = "gtk_tree_row_reference_get_model")]
54 #[doc(alias = "get_model")]
55 pub fn model(&self) -> TreeModel {
56 unsafe {
57 from_glib_none(ffi::gtk_tree_row_reference_get_model(mut_override(
58 self.to_glib_none().0,
59 )))
60 }
61 }
62
63 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
64 #[allow(deprecated)]
65 #[doc(alias = "gtk_tree_row_reference_get_path")]
66 #[doc(alias = "get_path")]
67 pub fn path(&self) -> Option<TreePath> {
68 unsafe {
69 from_glib_full(ffi::gtk_tree_row_reference_get_path(mut_override(
70 self.to_glib_none().0,
71 )))
72 }
73 }
74
75 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
76 #[allow(deprecated)]
77 #[doc(alias = "gtk_tree_row_reference_valid")]
78 pub fn valid(&self) -> bool {
79 unsafe {
80 from_glib(ffi::gtk_tree_row_reference_valid(mut_override(
81 self.to_glib_none().0,
82 )))
83 }
84 }
85
86 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
87 #[allow(deprecated)]
88 #[doc(alias = "gtk_tree_row_reference_deleted")]
89 pub fn deleted(proxy: &impl IsA<glib::Object>, path: &TreePath) {
90 assert_initialized_main_thread!();
91 unsafe {
92 ffi::gtk_tree_row_reference_deleted(
93 proxy.as_ref().to_glib_none().0,
94 mut_override(path.to_glib_none().0),
95 );
96 }
97 }
98
99 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
100 #[allow(deprecated)]
101 #[doc(alias = "gtk_tree_row_reference_inserted")]
102 pub fn inserted(proxy: &impl IsA<glib::Object>, path: &TreePath) {
103 assert_initialized_main_thread!();
104 unsafe {
105 ffi::gtk_tree_row_reference_inserted(
106 proxy.as_ref().to_glib_none().0,
107 mut_override(path.to_glib_none().0),
108 );
109 }
110 }
111}