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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
use crate::{CellEditable, CellRenderer, CellRendererState, Widget};
use glib::translate::*;
use glib::IsA;
pub trait CellRendererExtManual {
#[doc(alias = "gtk_cell_renderer_activate")]
fn activate(
&self,
event: &impl AsRef<gdk::Event>,
widget: &impl IsA<Widget>,
path: &str,
background_area: &gdk::Rectangle,
cell_area: &gdk::Rectangle,
flags: CellRendererState,
) -> bool;
#[doc(alias = "gtk_cell_renderer_start_editing")]
fn start_editing(
&self,
event: Option<&impl AsRef<gdk::Event>>,
widget: &impl IsA<Widget>,
path: &str,
background_area: &gdk::Rectangle,
cell_area: &gdk::Rectangle,
flags: CellRendererState,
) -> Option<CellEditable>;
}
impl<O: IsA<CellRenderer>> CellRendererExtManual for O {
fn activate(
&self,
event: &impl AsRef<gdk::Event>,
widget: &impl IsA<Widget>,
path: &str,
background_area: &gdk::Rectangle,
cell_area: &gdk::Rectangle,
flags: CellRendererState,
) -> bool {
unsafe {
from_glib(ffi::gtk_cell_renderer_activate(
self.as_ref().to_glib_none().0,
event.as_ref().to_glib_none().0,
widget.as_ref().to_glib_none().0,
path.to_glib_none().0,
background_area.to_glib_none().0,
cell_area.to_glib_none().0,
flags.into_glib(),
))
}
}
fn start_editing(
&self,
event: Option<&impl AsRef<gdk::Event>>,
widget: &impl IsA<Widget>,
path: &str,
background_area: &gdk::Rectangle,
cell_area: &gdk::Rectangle,
flags: CellRendererState,
) -> Option<CellEditable> {
unsafe {
from_glib_none(ffi::gtk_cell_renderer_start_editing(
self.as_ref().to_glib_none().0,
event.map(|e| e.as_ref()).to_glib_none().0,
widget.as_ref().to_glib_none().0,
path.to_glib_none().0,
background_area.to_glib_none().0,
cell_area.to_glib_none().0,
flags.into_glib(),
))
}
}
}