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 5 use crate::CellEditable; 6 use crate::CellRendererMode; 7 use crate::CellRendererState; 8 use crate::Requisition; 9 use crate::SizeRequestMode; 10 use crate::StateFlags; 11 use crate::TreePath; 12 use crate::Widget; 13 use glib::object::Cast; 14 use glib::object::IsA; 15 use glib::signal::connect_raw; 16 use glib::signal::SignalHandlerId; 17 use glib::translate::*; 18 use glib::StaticType; 19 use glib::ToValue; 20 use std::boxed::Box as Box_; 21 use std::fmt; 22 use std::mem; 23 use std::mem::transmute; 24 25 glib::wrapper! { 26 #[doc(alias = "GtkCellRenderer")] 27 pub struct CellRenderer(Object<ffi::GtkCellRenderer, ffi::GtkCellRendererClass>); 28 29 match fn { 30 type_ => || ffi::gtk_cell_renderer_get_type(), 31 } 32 } 33 34 pub const NONE_CELL_RENDERER: Option<&CellRenderer> = None; 35 36 pub trait CellRendererExt: 'static { 37 #[doc(alias = "gtk_cell_renderer_activate")] activate<P: IsA<Widget>>( &self, event: &gdk::Event, widget: &P, path: &str, background_area: &gdk::Rectangle, cell_area: &gdk::Rectangle, flags: CellRendererState, ) -> bool38 fn activate<P: IsA<Widget>>( 39 &self, 40 event: &gdk::Event, 41 widget: &P, 42 path: &str, 43 background_area: &gdk::Rectangle, 44 cell_area: &gdk::Rectangle, 45 flags: CellRendererState, 46 ) -> bool; 47 48 #[doc(alias = "gtk_cell_renderer_get_aligned_area")] 49 #[doc(alias = "get_aligned_area")] aligned_area<P: IsA<Widget>>( &self, widget: &P, flags: CellRendererState, cell_area: &gdk::Rectangle, ) -> gdk::Rectangle50 fn aligned_area<P: IsA<Widget>>( 51 &self, 52 widget: &P, 53 flags: CellRendererState, 54 cell_area: &gdk::Rectangle, 55 ) -> gdk::Rectangle; 56 57 #[doc(alias = "gtk_cell_renderer_get_alignment")] 58 #[doc(alias = "get_alignment")] alignment(&self) -> (f32, f32)59 fn alignment(&self) -> (f32, f32); 60 61 #[doc(alias = "gtk_cell_renderer_get_fixed_size")] 62 #[doc(alias = "get_fixed_size")] fixed_size(&self) -> (i32, i32)63 fn fixed_size(&self) -> (i32, i32); 64 65 #[doc(alias = "gtk_cell_renderer_get_padding")] 66 #[doc(alias = "get_padding")] padding(&self) -> (i32, i32)67 fn padding(&self) -> (i32, i32); 68 69 #[doc(alias = "gtk_cell_renderer_get_preferred_height")] 70 #[doc(alias = "get_preferred_height")] preferred_height<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32)71 fn preferred_height<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32); 72 73 #[doc(alias = "gtk_cell_renderer_get_preferred_height_for_width")] 74 #[doc(alias = "get_preferred_height_for_width")] preferred_height_for_width<P: IsA<Widget>>(&self, widget: &P, width: i32) -> (i32, i32)75 fn preferred_height_for_width<P: IsA<Widget>>(&self, widget: &P, width: i32) -> (i32, i32); 76 77 #[doc(alias = "gtk_cell_renderer_get_preferred_size")] 78 #[doc(alias = "get_preferred_size")] preferred_size<P: IsA<Widget>>(&self, widget: &P) -> (Requisition, Requisition)79 fn preferred_size<P: IsA<Widget>>(&self, widget: &P) -> (Requisition, Requisition); 80 81 #[doc(alias = "gtk_cell_renderer_get_preferred_width")] 82 #[doc(alias = "get_preferred_width")] preferred_width<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32)83 fn preferred_width<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32); 84 85 #[doc(alias = "gtk_cell_renderer_get_preferred_width_for_height")] 86 #[doc(alias = "get_preferred_width_for_height")] preferred_width_for_height<P: IsA<Widget>>(&self, widget: &P, height: i32) -> (i32, i32)87 fn preferred_width_for_height<P: IsA<Widget>>(&self, widget: &P, height: i32) -> (i32, i32); 88 89 #[doc(alias = "gtk_cell_renderer_get_request_mode")] 90 #[doc(alias = "get_request_mode")] request_mode(&self) -> SizeRequestMode91 fn request_mode(&self) -> SizeRequestMode; 92 93 #[doc(alias = "gtk_cell_renderer_get_sensitive")] 94 #[doc(alias = "get_sensitive")] is_sensitive(&self) -> bool95 fn is_sensitive(&self) -> bool; 96 97 #[doc(alias = "gtk_cell_renderer_get_state")] 98 #[doc(alias = "get_state")] state<P: IsA<Widget>>( &self, widget: Option<&P>, cell_state: CellRendererState, ) -> StateFlags99 fn state<P: IsA<Widget>>( 100 &self, 101 widget: Option<&P>, 102 cell_state: CellRendererState, 103 ) -> StateFlags; 104 105 #[doc(alias = "gtk_cell_renderer_get_visible")] 106 #[doc(alias = "get_visible")] is_visible(&self) -> bool107 fn is_visible(&self) -> bool; 108 109 #[doc(alias = "gtk_cell_renderer_is_activatable")] is_activatable(&self) -> bool110 fn is_activatable(&self) -> bool; 111 112 #[doc(alias = "gtk_cell_renderer_render")] render<P: IsA<Widget>>( &self, cr: &cairo::Context, widget: &P, background_area: &gdk::Rectangle, cell_area: &gdk::Rectangle, flags: CellRendererState, )113 fn render<P: IsA<Widget>>( 114 &self, 115 cr: &cairo::Context, 116 widget: &P, 117 background_area: &gdk::Rectangle, 118 cell_area: &gdk::Rectangle, 119 flags: CellRendererState, 120 ); 121 122 #[doc(alias = "gtk_cell_renderer_set_alignment")] set_alignment(&self, xalign: f32, yalign: f32)123 fn set_alignment(&self, xalign: f32, yalign: f32); 124 125 #[doc(alias = "gtk_cell_renderer_set_fixed_size")] set_fixed_size(&self, width: i32, height: i32)126 fn set_fixed_size(&self, width: i32, height: i32); 127 128 #[doc(alias = "gtk_cell_renderer_set_padding")] set_padding(&self, xpad: i32, ypad: i32)129 fn set_padding(&self, xpad: i32, ypad: i32); 130 131 #[doc(alias = "gtk_cell_renderer_set_sensitive")] set_sensitive(&self, sensitive: bool)132 fn set_sensitive(&self, sensitive: bool); 133 134 #[doc(alias = "gtk_cell_renderer_set_visible")] set_visible(&self, visible: bool)135 fn set_visible(&self, visible: bool); 136 137 #[doc(alias = "gtk_cell_renderer_start_editing")] start_editing<P: IsA<Widget>>( &self, event: Option<&gdk::Event>, widget: &P, path: &str, background_area: &gdk::Rectangle, cell_area: &gdk::Rectangle, flags: CellRendererState, ) -> Option<CellEditable>138 fn start_editing<P: IsA<Widget>>( 139 &self, 140 event: Option<&gdk::Event>, 141 widget: &P, 142 path: &str, 143 background_area: &gdk::Rectangle, 144 cell_area: &gdk::Rectangle, 145 flags: CellRendererState, 146 ) -> Option<CellEditable>; 147 148 #[doc(alias = "gtk_cell_renderer_stop_editing")] stop_editing(&self, canceled: bool)149 fn stop_editing(&self, canceled: bool); 150 151 #[doc(alias = "cell-background")] set_cell_background(&self, cell_background: Option<&str>)152 fn set_cell_background(&self, cell_background: Option<&str>); 153 154 #[doc(alias = "cell-background-rgba")] cell_background_rgba(&self) -> Option<gdk::RGBA>155 fn cell_background_rgba(&self) -> Option<gdk::RGBA>; 156 157 #[doc(alias = "cell-background-rgba")] set_cell_background_rgba(&self, cell_background_rgba: Option<&gdk::RGBA>)158 fn set_cell_background_rgba(&self, cell_background_rgba: Option<&gdk::RGBA>); 159 160 #[doc(alias = "cell-background-set")] is_cell_background_set(&self) -> bool161 fn is_cell_background_set(&self) -> bool; 162 163 #[doc(alias = "cell-background-set")] set_cell_background_set(&self, cell_background_set: bool)164 fn set_cell_background_set(&self, cell_background_set: bool); 165 is_editing(&self) -> bool166 fn is_editing(&self) -> bool; 167 height(&self) -> i32168 fn height(&self) -> i32; 169 set_height(&self, height: i32)170 fn set_height(&self, height: i32); 171 172 #[doc(alias = "is-expanded")] is_expanded(&self) -> bool173 fn is_expanded(&self) -> bool; 174 175 #[doc(alias = "is-expanded")] set_is_expanded(&self, is_expanded: bool)176 fn set_is_expanded(&self, is_expanded: bool); 177 178 #[doc(alias = "is-expander")] is_expander(&self) -> bool179 fn is_expander(&self) -> bool; 180 181 #[doc(alias = "is-expander")] set_is_expander(&self, is_expander: bool)182 fn set_is_expander(&self, is_expander: bool); 183 mode(&self) -> CellRendererMode184 fn mode(&self) -> CellRendererMode; 185 set_mode(&self, mode: CellRendererMode)186 fn set_mode(&self, mode: CellRendererMode); 187 width(&self) -> i32188 fn width(&self) -> i32; 189 set_width(&self, width: i32)190 fn set_width(&self, width: i32); 191 xalign(&self) -> f32192 fn xalign(&self) -> f32; 193 set_xalign(&self, xalign: f32)194 fn set_xalign(&self, xalign: f32); 195 xpad(&self) -> u32196 fn xpad(&self) -> u32; 197 set_xpad(&self, xpad: u32)198 fn set_xpad(&self, xpad: u32); 199 yalign(&self) -> f32200 fn yalign(&self) -> f32; 201 set_yalign(&self, yalign: f32)202 fn set_yalign(&self, yalign: f32); 203 ypad(&self) -> u32204 fn ypad(&self) -> u32; 205 set_ypad(&self, ypad: u32)206 fn set_ypad(&self, ypad: u32); 207 208 #[doc(alias = "editing-canceled")] connect_editing_canceled<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId209 fn connect_editing_canceled<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 210 211 #[doc(alias = "editing-started")] connect_editing_started<F: Fn(&Self, &CellEditable, TreePath) + 'static>( &self, f: F, ) -> SignalHandlerId212 fn connect_editing_started<F: Fn(&Self, &CellEditable, TreePath) + 'static>( 213 &self, 214 f: F, 215 ) -> SignalHandlerId; 216 217 #[doc(alias = "cell-background")] connect_cell_background_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId218 fn connect_cell_background_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 219 220 #[doc(alias = "cell-background-rgba")] connect_cell_background_rgba_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId221 fn connect_cell_background_rgba_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 222 223 #[doc(alias = "cell-background-set")] connect_cell_background_set_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId224 fn connect_cell_background_set_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 225 226 #[doc(alias = "editing")] connect_editing_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId227 fn connect_editing_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 228 229 #[doc(alias = "height")] connect_height_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId230 fn connect_height_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 231 232 #[doc(alias = "is-expanded")] connect_is_expanded_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId233 fn connect_is_expanded_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 234 235 #[doc(alias = "is-expander")] connect_is_expander_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId236 fn connect_is_expander_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 237 238 #[doc(alias = "mode")] connect_mode_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId239 fn connect_mode_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 240 241 #[doc(alias = "sensitive")] connect_sensitive_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId242 fn connect_sensitive_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 243 244 #[doc(alias = "visible")] connect_visible_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId245 fn connect_visible_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 246 247 #[doc(alias = "width")] connect_width_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId248 fn connect_width_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 249 250 #[doc(alias = "xalign")] connect_xalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId251 fn connect_xalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 252 253 #[doc(alias = "xpad")] connect_xpad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId254 fn connect_xpad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 255 256 #[doc(alias = "yalign")] connect_yalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId257 fn connect_yalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 258 259 #[doc(alias = "ypad")] connect_ypad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId260 fn connect_ypad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 261 } 262 263 impl<O: IsA<CellRenderer>> CellRendererExt for O { activate<P: IsA<Widget>>( &self, event: &gdk::Event, widget: &P, path: &str, background_area: &gdk::Rectangle, cell_area: &gdk::Rectangle, flags: CellRendererState, ) -> bool264 fn activate<P: IsA<Widget>>( 265 &self, 266 event: &gdk::Event, 267 widget: &P, 268 path: &str, 269 background_area: &gdk::Rectangle, 270 cell_area: &gdk::Rectangle, 271 flags: CellRendererState, 272 ) -> bool { 273 unsafe { 274 from_glib(ffi::gtk_cell_renderer_activate( 275 self.as_ref().to_glib_none().0, 276 mut_override(event.to_glib_none().0), 277 widget.as_ref().to_glib_none().0, 278 path.to_glib_none().0, 279 background_area.to_glib_none().0, 280 cell_area.to_glib_none().0, 281 flags.into_glib(), 282 )) 283 } 284 } 285 aligned_area<P: IsA<Widget>>( &self, widget: &P, flags: CellRendererState, cell_area: &gdk::Rectangle, ) -> gdk::Rectangle286 fn aligned_area<P: IsA<Widget>>( 287 &self, 288 widget: &P, 289 flags: CellRendererState, 290 cell_area: &gdk::Rectangle, 291 ) -> gdk::Rectangle { 292 unsafe { 293 let mut aligned_area = gdk::Rectangle::uninitialized(); 294 ffi::gtk_cell_renderer_get_aligned_area( 295 self.as_ref().to_glib_none().0, 296 widget.as_ref().to_glib_none().0, 297 flags.into_glib(), 298 cell_area.to_glib_none().0, 299 aligned_area.to_glib_none_mut().0, 300 ); 301 aligned_area 302 } 303 } 304 alignment(&self) -> (f32, f32)305 fn alignment(&self) -> (f32, f32) { 306 unsafe { 307 let mut xalign = mem::MaybeUninit::uninit(); 308 let mut yalign = mem::MaybeUninit::uninit(); 309 ffi::gtk_cell_renderer_get_alignment( 310 self.as_ref().to_glib_none().0, 311 xalign.as_mut_ptr(), 312 yalign.as_mut_ptr(), 313 ); 314 let xalign = xalign.assume_init(); 315 let yalign = yalign.assume_init(); 316 (xalign, yalign) 317 } 318 } 319 fixed_size(&self) -> (i32, i32)320 fn fixed_size(&self) -> (i32, i32) { 321 unsafe { 322 let mut width = mem::MaybeUninit::uninit(); 323 let mut height = mem::MaybeUninit::uninit(); 324 ffi::gtk_cell_renderer_get_fixed_size( 325 self.as_ref().to_glib_none().0, 326 width.as_mut_ptr(), 327 height.as_mut_ptr(), 328 ); 329 let width = width.assume_init(); 330 let height = height.assume_init(); 331 (width, height) 332 } 333 } 334 padding(&self) -> (i32, i32)335 fn padding(&self) -> (i32, i32) { 336 unsafe { 337 let mut xpad = mem::MaybeUninit::uninit(); 338 let mut ypad = mem::MaybeUninit::uninit(); 339 ffi::gtk_cell_renderer_get_padding( 340 self.as_ref().to_glib_none().0, 341 xpad.as_mut_ptr(), 342 ypad.as_mut_ptr(), 343 ); 344 let xpad = xpad.assume_init(); 345 let ypad = ypad.assume_init(); 346 (xpad, ypad) 347 } 348 } 349 preferred_height<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32)350 fn preferred_height<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32) { 351 unsafe { 352 let mut minimum_size = mem::MaybeUninit::uninit(); 353 let mut natural_size = mem::MaybeUninit::uninit(); 354 ffi::gtk_cell_renderer_get_preferred_height( 355 self.as_ref().to_glib_none().0, 356 widget.as_ref().to_glib_none().0, 357 minimum_size.as_mut_ptr(), 358 natural_size.as_mut_ptr(), 359 ); 360 let minimum_size = minimum_size.assume_init(); 361 let natural_size = natural_size.assume_init(); 362 (minimum_size, natural_size) 363 } 364 } 365 preferred_height_for_width<P: IsA<Widget>>(&self, widget: &P, width: i32) -> (i32, i32)366 fn preferred_height_for_width<P: IsA<Widget>>(&self, widget: &P, width: i32) -> (i32, i32) { 367 unsafe { 368 let mut minimum_height = mem::MaybeUninit::uninit(); 369 let mut natural_height = mem::MaybeUninit::uninit(); 370 ffi::gtk_cell_renderer_get_preferred_height_for_width( 371 self.as_ref().to_glib_none().0, 372 widget.as_ref().to_glib_none().0, 373 width, 374 minimum_height.as_mut_ptr(), 375 natural_height.as_mut_ptr(), 376 ); 377 let minimum_height = minimum_height.assume_init(); 378 let natural_height = natural_height.assume_init(); 379 (minimum_height, natural_height) 380 } 381 } 382 preferred_size<P: IsA<Widget>>(&self, widget: &P) -> (Requisition, Requisition)383 fn preferred_size<P: IsA<Widget>>(&self, widget: &P) -> (Requisition, Requisition) { 384 unsafe { 385 let mut minimum_size = Requisition::uninitialized(); 386 let mut natural_size = Requisition::uninitialized(); 387 ffi::gtk_cell_renderer_get_preferred_size( 388 self.as_ref().to_glib_none().0, 389 widget.as_ref().to_glib_none().0, 390 minimum_size.to_glib_none_mut().0, 391 natural_size.to_glib_none_mut().0, 392 ); 393 (minimum_size, natural_size) 394 } 395 } 396 preferred_width<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32)397 fn preferred_width<P: IsA<Widget>>(&self, widget: &P) -> (i32, i32) { 398 unsafe { 399 let mut minimum_size = mem::MaybeUninit::uninit(); 400 let mut natural_size = mem::MaybeUninit::uninit(); 401 ffi::gtk_cell_renderer_get_preferred_width( 402 self.as_ref().to_glib_none().0, 403 widget.as_ref().to_glib_none().0, 404 minimum_size.as_mut_ptr(), 405 natural_size.as_mut_ptr(), 406 ); 407 let minimum_size = minimum_size.assume_init(); 408 let natural_size = natural_size.assume_init(); 409 (minimum_size, natural_size) 410 } 411 } 412 preferred_width_for_height<P: IsA<Widget>>(&self, widget: &P, height: i32) -> (i32, i32)413 fn preferred_width_for_height<P: IsA<Widget>>(&self, widget: &P, height: i32) -> (i32, i32) { 414 unsafe { 415 let mut minimum_width = mem::MaybeUninit::uninit(); 416 let mut natural_width = mem::MaybeUninit::uninit(); 417 ffi::gtk_cell_renderer_get_preferred_width_for_height( 418 self.as_ref().to_glib_none().0, 419 widget.as_ref().to_glib_none().0, 420 height, 421 minimum_width.as_mut_ptr(), 422 natural_width.as_mut_ptr(), 423 ); 424 let minimum_width = minimum_width.assume_init(); 425 let natural_width = natural_width.assume_init(); 426 (minimum_width, natural_width) 427 } 428 } 429 request_mode(&self) -> SizeRequestMode430 fn request_mode(&self) -> SizeRequestMode { 431 unsafe { 432 from_glib(ffi::gtk_cell_renderer_get_request_mode( 433 self.as_ref().to_glib_none().0, 434 )) 435 } 436 } 437 is_sensitive(&self) -> bool438 fn is_sensitive(&self) -> bool { 439 unsafe { 440 from_glib(ffi::gtk_cell_renderer_get_sensitive( 441 self.as_ref().to_glib_none().0, 442 )) 443 } 444 } 445 state<P: IsA<Widget>>( &self, widget: Option<&P>, cell_state: CellRendererState, ) -> StateFlags446 fn state<P: IsA<Widget>>( 447 &self, 448 widget: Option<&P>, 449 cell_state: CellRendererState, 450 ) -> StateFlags { 451 unsafe { 452 from_glib(ffi::gtk_cell_renderer_get_state( 453 self.as_ref().to_glib_none().0, 454 widget.map(|p| p.as_ref()).to_glib_none().0, 455 cell_state.into_glib(), 456 )) 457 } 458 } 459 is_visible(&self) -> bool460 fn is_visible(&self) -> bool { 461 unsafe { 462 from_glib(ffi::gtk_cell_renderer_get_visible( 463 self.as_ref().to_glib_none().0, 464 )) 465 } 466 } 467 is_activatable(&self) -> bool468 fn is_activatable(&self) -> bool { 469 unsafe { 470 from_glib(ffi::gtk_cell_renderer_is_activatable( 471 self.as_ref().to_glib_none().0, 472 )) 473 } 474 } 475 render<P: IsA<Widget>>( &self, cr: &cairo::Context, widget: &P, background_area: &gdk::Rectangle, cell_area: &gdk::Rectangle, flags: CellRendererState, )476 fn render<P: IsA<Widget>>( 477 &self, 478 cr: &cairo::Context, 479 widget: &P, 480 background_area: &gdk::Rectangle, 481 cell_area: &gdk::Rectangle, 482 flags: CellRendererState, 483 ) { 484 unsafe { 485 ffi::gtk_cell_renderer_render( 486 self.as_ref().to_glib_none().0, 487 mut_override(cr.to_glib_none().0), 488 widget.as_ref().to_glib_none().0, 489 background_area.to_glib_none().0, 490 cell_area.to_glib_none().0, 491 flags.into_glib(), 492 ); 493 } 494 } 495 set_alignment(&self, xalign: f32, yalign: f32)496 fn set_alignment(&self, xalign: f32, yalign: f32) { 497 unsafe { 498 ffi::gtk_cell_renderer_set_alignment(self.as_ref().to_glib_none().0, xalign, yalign); 499 } 500 } 501 set_fixed_size(&self, width: i32, height: i32)502 fn set_fixed_size(&self, width: i32, height: i32) { 503 unsafe { 504 ffi::gtk_cell_renderer_set_fixed_size(self.as_ref().to_glib_none().0, width, height); 505 } 506 } 507 set_padding(&self, xpad: i32, ypad: i32)508 fn set_padding(&self, xpad: i32, ypad: i32) { 509 unsafe { 510 ffi::gtk_cell_renderer_set_padding(self.as_ref().to_glib_none().0, xpad, ypad); 511 } 512 } 513 set_sensitive(&self, sensitive: bool)514 fn set_sensitive(&self, sensitive: bool) { 515 unsafe { 516 ffi::gtk_cell_renderer_set_sensitive( 517 self.as_ref().to_glib_none().0, 518 sensitive.into_glib(), 519 ); 520 } 521 } 522 set_visible(&self, visible: bool)523 fn set_visible(&self, visible: bool) { 524 unsafe { 525 ffi::gtk_cell_renderer_set_visible(self.as_ref().to_glib_none().0, visible.into_glib()); 526 } 527 } 528 start_editing<P: IsA<Widget>>( &self, event: Option<&gdk::Event>, widget: &P, path: &str, background_area: &gdk::Rectangle, cell_area: &gdk::Rectangle, flags: CellRendererState, ) -> Option<CellEditable>529 fn start_editing<P: IsA<Widget>>( 530 &self, 531 event: Option<&gdk::Event>, 532 widget: &P, 533 path: &str, 534 background_area: &gdk::Rectangle, 535 cell_area: &gdk::Rectangle, 536 flags: CellRendererState, 537 ) -> Option<CellEditable> { 538 unsafe { 539 from_glib_none(ffi::gtk_cell_renderer_start_editing( 540 self.as_ref().to_glib_none().0, 541 mut_override(event.to_glib_none().0), 542 widget.as_ref().to_glib_none().0, 543 path.to_glib_none().0, 544 background_area.to_glib_none().0, 545 cell_area.to_glib_none().0, 546 flags.into_glib(), 547 )) 548 } 549 } 550 stop_editing(&self, canceled: bool)551 fn stop_editing(&self, canceled: bool) { 552 unsafe { 553 ffi::gtk_cell_renderer_stop_editing( 554 self.as_ref().to_glib_none().0, 555 canceled.into_glib(), 556 ); 557 } 558 } 559 set_cell_background(&self, cell_background: Option<&str>)560 fn set_cell_background(&self, cell_background: Option<&str>) { 561 unsafe { 562 glib::gobject_ffi::g_object_set_property( 563 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 564 b"cell-background\0".as_ptr() as *const _, 565 cell_background.to_value().to_glib_none().0, 566 ); 567 } 568 } 569 cell_background_rgba(&self) -> Option<gdk::RGBA>570 fn cell_background_rgba(&self) -> Option<gdk::RGBA> { 571 unsafe { 572 let mut value = glib::Value::from_type(<gdk::RGBA as StaticType>::static_type()); 573 glib::gobject_ffi::g_object_get_property( 574 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 575 b"cell-background-rgba\0".as_ptr() as *const _, 576 value.to_glib_none_mut().0, 577 ); 578 value 579 .get() 580 .expect("Return Value for property `cell-background-rgba` getter") 581 } 582 } 583 set_cell_background_rgba(&self, cell_background_rgba: Option<&gdk::RGBA>)584 fn set_cell_background_rgba(&self, cell_background_rgba: Option<&gdk::RGBA>) { 585 unsafe { 586 glib::gobject_ffi::g_object_set_property( 587 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 588 b"cell-background-rgba\0".as_ptr() as *const _, 589 cell_background_rgba.to_value().to_glib_none().0, 590 ); 591 } 592 } 593 is_cell_background_set(&self) -> bool594 fn is_cell_background_set(&self) -> bool { 595 unsafe { 596 let mut value = glib::Value::from_type(<bool as StaticType>::static_type()); 597 glib::gobject_ffi::g_object_get_property( 598 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 599 b"cell-background-set\0".as_ptr() as *const _, 600 value.to_glib_none_mut().0, 601 ); 602 value 603 .get() 604 .expect("Return Value for property `cell-background-set` getter") 605 } 606 } 607 set_cell_background_set(&self, cell_background_set: bool)608 fn set_cell_background_set(&self, cell_background_set: bool) { 609 unsafe { 610 glib::gobject_ffi::g_object_set_property( 611 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 612 b"cell-background-set\0".as_ptr() as *const _, 613 cell_background_set.to_value().to_glib_none().0, 614 ); 615 } 616 } 617 is_editing(&self) -> bool618 fn is_editing(&self) -> bool { 619 unsafe { 620 let mut value = glib::Value::from_type(<bool as StaticType>::static_type()); 621 glib::gobject_ffi::g_object_get_property( 622 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 623 b"editing\0".as_ptr() as *const _, 624 value.to_glib_none_mut().0, 625 ); 626 value 627 .get() 628 .expect("Return Value for property `editing` getter") 629 } 630 } 631 height(&self) -> i32632 fn height(&self) -> i32 { 633 unsafe { 634 let mut value = glib::Value::from_type(<i32 as StaticType>::static_type()); 635 glib::gobject_ffi::g_object_get_property( 636 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 637 b"height\0".as_ptr() as *const _, 638 value.to_glib_none_mut().0, 639 ); 640 value 641 .get() 642 .expect("Return Value for property `height` getter") 643 } 644 } 645 set_height(&self, height: i32)646 fn set_height(&self, height: i32) { 647 unsafe { 648 glib::gobject_ffi::g_object_set_property( 649 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 650 b"height\0".as_ptr() as *const _, 651 height.to_value().to_glib_none().0, 652 ); 653 } 654 } 655 is_expanded(&self) -> bool656 fn is_expanded(&self) -> bool { 657 unsafe { 658 let mut value = glib::Value::from_type(<bool as StaticType>::static_type()); 659 glib::gobject_ffi::g_object_get_property( 660 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 661 b"is-expanded\0".as_ptr() as *const _, 662 value.to_glib_none_mut().0, 663 ); 664 value 665 .get() 666 .expect("Return Value for property `is-expanded` getter") 667 } 668 } 669 set_is_expanded(&self, is_expanded: bool)670 fn set_is_expanded(&self, is_expanded: bool) { 671 unsafe { 672 glib::gobject_ffi::g_object_set_property( 673 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 674 b"is-expanded\0".as_ptr() as *const _, 675 is_expanded.to_value().to_glib_none().0, 676 ); 677 } 678 } 679 is_expander(&self) -> bool680 fn is_expander(&self) -> bool { 681 unsafe { 682 let mut value = glib::Value::from_type(<bool as StaticType>::static_type()); 683 glib::gobject_ffi::g_object_get_property( 684 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 685 b"is-expander\0".as_ptr() as *const _, 686 value.to_glib_none_mut().0, 687 ); 688 value 689 .get() 690 .expect("Return Value for property `is-expander` getter") 691 } 692 } 693 set_is_expander(&self, is_expander: bool)694 fn set_is_expander(&self, is_expander: bool) { 695 unsafe { 696 glib::gobject_ffi::g_object_set_property( 697 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 698 b"is-expander\0".as_ptr() as *const _, 699 is_expander.to_value().to_glib_none().0, 700 ); 701 } 702 } 703 mode(&self) -> CellRendererMode704 fn mode(&self) -> CellRendererMode { 705 unsafe { 706 let mut value = glib::Value::from_type(<CellRendererMode as StaticType>::static_type()); 707 glib::gobject_ffi::g_object_get_property( 708 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 709 b"mode\0".as_ptr() as *const _, 710 value.to_glib_none_mut().0, 711 ); 712 value 713 .get() 714 .expect("Return Value for property `mode` getter") 715 } 716 } 717 set_mode(&self, mode: CellRendererMode)718 fn set_mode(&self, mode: CellRendererMode) { 719 unsafe { 720 glib::gobject_ffi::g_object_set_property( 721 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 722 b"mode\0".as_ptr() as *const _, 723 mode.to_value().to_glib_none().0, 724 ); 725 } 726 } 727 width(&self) -> i32728 fn width(&self) -> i32 { 729 unsafe { 730 let mut value = glib::Value::from_type(<i32 as StaticType>::static_type()); 731 glib::gobject_ffi::g_object_get_property( 732 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 733 b"width\0".as_ptr() as *const _, 734 value.to_glib_none_mut().0, 735 ); 736 value 737 .get() 738 .expect("Return Value for property `width` getter") 739 } 740 } 741 set_width(&self, width: i32)742 fn set_width(&self, width: i32) { 743 unsafe { 744 glib::gobject_ffi::g_object_set_property( 745 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 746 b"width\0".as_ptr() as *const _, 747 width.to_value().to_glib_none().0, 748 ); 749 } 750 } 751 xalign(&self) -> f32752 fn xalign(&self) -> f32 { 753 unsafe { 754 let mut value = glib::Value::from_type(<f32 as StaticType>::static_type()); 755 glib::gobject_ffi::g_object_get_property( 756 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 757 b"xalign\0".as_ptr() as *const _, 758 value.to_glib_none_mut().0, 759 ); 760 value 761 .get() 762 .expect("Return Value for property `xalign` getter") 763 } 764 } 765 set_xalign(&self, xalign: f32)766 fn set_xalign(&self, xalign: f32) { 767 unsafe { 768 glib::gobject_ffi::g_object_set_property( 769 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 770 b"xalign\0".as_ptr() as *const _, 771 xalign.to_value().to_glib_none().0, 772 ); 773 } 774 } 775 xpad(&self) -> u32776 fn xpad(&self) -> u32 { 777 unsafe { 778 let mut value = glib::Value::from_type(<u32 as StaticType>::static_type()); 779 glib::gobject_ffi::g_object_get_property( 780 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 781 b"xpad\0".as_ptr() as *const _, 782 value.to_glib_none_mut().0, 783 ); 784 value 785 .get() 786 .expect("Return Value for property `xpad` getter") 787 } 788 } 789 set_xpad(&self, xpad: u32)790 fn set_xpad(&self, xpad: u32) { 791 unsafe { 792 glib::gobject_ffi::g_object_set_property( 793 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 794 b"xpad\0".as_ptr() as *const _, 795 xpad.to_value().to_glib_none().0, 796 ); 797 } 798 } 799 yalign(&self) -> f32800 fn yalign(&self) -> f32 { 801 unsafe { 802 let mut value = glib::Value::from_type(<f32 as StaticType>::static_type()); 803 glib::gobject_ffi::g_object_get_property( 804 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 805 b"yalign\0".as_ptr() as *const _, 806 value.to_glib_none_mut().0, 807 ); 808 value 809 .get() 810 .expect("Return Value for property `yalign` getter") 811 } 812 } 813 set_yalign(&self, yalign: f32)814 fn set_yalign(&self, yalign: f32) { 815 unsafe { 816 glib::gobject_ffi::g_object_set_property( 817 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 818 b"yalign\0".as_ptr() as *const _, 819 yalign.to_value().to_glib_none().0, 820 ); 821 } 822 } 823 ypad(&self) -> u32824 fn ypad(&self) -> u32 { 825 unsafe { 826 let mut value = glib::Value::from_type(<u32 as StaticType>::static_type()); 827 glib::gobject_ffi::g_object_get_property( 828 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 829 b"ypad\0".as_ptr() as *const _, 830 value.to_glib_none_mut().0, 831 ); 832 value 833 .get() 834 .expect("Return Value for property `ypad` getter") 835 } 836 } 837 set_ypad(&self, ypad: u32)838 fn set_ypad(&self, ypad: u32) { 839 unsafe { 840 glib::gobject_ffi::g_object_set_property( 841 self.to_glib_none().0 as *mut glib::gobject_ffi::GObject, 842 b"ypad\0".as_ptr() as *const _, 843 ypad.to_value().to_glib_none().0, 844 ); 845 } 846 } 847 connect_editing_canceled<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId848 fn connect_editing_canceled<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 849 unsafe extern "C" fn editing_canceled_trampoline< 850 P: IsA<CellRenderer>, 851 F: Fn(&P) + 'static, 852 >( 853 this: *mut ffi::GtkCellRenderer, 854 f: glib::ffi::gpointer, 855 ) { 856 let f: &F = &*(f as *const F); 857 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 858 } 859 unsafe { 860 let f: Box_<F> = Box_::new(f); 861 connect_raw( 862 self.as_ptr() as *mut _, 863 b"editing-canceled\0".as_ptr() as *const _, 864 Some(transmute::<_, unsafe extern "C" fn()>( 865 editing_canceled_trampoline::<Self, F> as *const (), 866 )), 867 Box_::into_raw(f), 868 ) 869 } 870 } 871 connect_editing_started<F: Fn(&Self, &CellEditable, TreePath) + 'static>( &self, f: F, ) -> SignalHandlerId872 fn connect_editing_started<F: Fn(&Self, &CellEditable, TreePath) + 'static>( 873 &self, 874 f: F, 875 ) -> SignalHandlerId { 876 unsafe extern "C" fn editing_started_trampoline< 877 P: IsA<CellRenderer>, 878 F: Fn(&P, &CellEditable, TreePath) + 'static, 879 >( 880 this: *mut ffi::GtkCellRenderer, 881 editable: *mut ffi::GtkCellEditable, 882 path: *mut libc::c_char, 883 f: glib::ffi::gpointer, 884 ) { 885 let f: &F = &*(f as *const F); 886 let path = from_glib_full(crate::ffi::gtk_tree_path_new_from_string(path)); 887 f( 888 CellRenderer::from_glib_borrow(this).unsafe_cast_ref(), 889 &from_glib_borrow(editable), 890 path, 891 ) 892 } 893 unsafe { 894 let f: Box_<F> = Box_::new(f); 895 connect_raw( 896 self.as_ptr() as *mut _, 897 b"editing-started\0".as_ptr() as *const _, 898 Some(transmute::<_, unsafe extern "C" fn()>( 899 editing_started_trampoline::<Self, F> as *const (), 900 )), 901 Box_::into_raw(f), 902 ) 903 } 904 } 905 connect_cell_background_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId906 fn connect_cell_background_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 907 unsafe extern "C" fn notify_cell_background_trampoline< 908 P: IsA<CellRenderer>, 909 F: Fn(&P) + 'static, 910 >( 911 this: *mut ffi::GtkCellRenderer, 912 _param_spec: glib::ffi::gpointer, 913 f: glib::ffi::gpointer, 914 ) { 915 let f: &F = &*(f as *const F); 916 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 917 } 918 unsafe { 919 let f: Box_<F> = Box_::new(f); 920 connect_raw( 921 self.as_ptr() as *mut _, 922 b"notify::cell-background\0".as_ptr() as *const _, 923 Some(transmute::<_, unsafe extern "C" fn()>( 924 notify_cell_background_trampoline::<Self, F> as *const (), 925 )), 926 Box_::into_raw(f), 927 ) 928 } 929 } 930 connect_cell_background_rgba_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId931 fn connect_cell_background_rgba_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 932 unsafe extern "C" fn notify_cell_background_rgba_trampoline< 933 P: IsA<CellRenderer>, 934 F: Fn(&P) + 'static, 935 >( 936 this: *mut ffi::GtkCellRenderer, 937 _param_spec: glib::ffi::gpointer, 938 f: glib::ffi::gpointer, 939 ) { 940 let f: &F = &*(f as *const F); 941 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 942 } 943 unsafe { 944 let f: Box_<F> = Box_::new(f); 945 connect_raw( 946 self.as_ptr() as *mut _, 947 b"notify::cell-background-rgba\0".as_ptr() as *const _, 948 Some(transmute::<_, unsafe extern "C" fn()>( 949 notify_cell_background_rgba_trampoline::<Self, F> as *const (), 950 )), 951 Box_::into_raw(f), 952 ) 953 } 954 } 955 connect_cell_background_set_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId956 fn connect_cell_background_set_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 957 unsafe extern "C" fn notify_cell_background_set_trampoline< 958 P: IsA<CellRenderer>, 959 F: Fn(&P) + 'static, 960 >( 961 this: *mut ffi::GtkCellRenderer, 962 _param_spec: glib::ffi::gpointer, 963 f: glib::ffi::gpointer, 964 ) { 965 let f: &F = &*(f as *const F); 966 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 967 } 968 unsafe { 969 let f: Box_<F> = Box_::new(f); 970 connect_raw( 971 self.as_ptr() as *mut _, 972 b"notify::cell-background-set\0".as_ptr() as *const _, 973 Some(transmute::<_, unsafe extern "C" fn()>( 974 notify_cell_background_set_trampoline::<Self, F> as *const (), 975 )), 976 Box_::into_raw(f), 977 ) 978 } 979 } 980 connect_editing_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId981 fn connect_editing_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 982 unsafe extern "C" fn notify_editing_trampoline< 983 P: IsA<CellRenderer>, 984 F: Fn(&P) + 'static, 985 >( 986 this: *mut ffi::GtkCellRenderer, 987 _param_spec: glib::ffi::gpointer, 988 f: glib::ffi::gpointer, 989 ) { 990 let f: &F = &*(f as *const F); 991 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 992 } 993 unsafe { 994 let f: Box_<F> = Box_::new(f); 995 connect_raw( 996 self.as_ptr() as *mut _, 997 b"notify::editing\0".as_ptr() as *const _, 998 Some(transmute::<_, unsafe extern "C" fn()>( 999 notify_editing_trampoline::<Self, F> as *const (), 1000 )), 1001 Box_::into_raw(f), 1002 ) 1003 } 1004 } 1005 connect_height_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1006 fn connect_height_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1007 unsafe extern "C" fn notify_height_trampoline<P: IsA<CellRenderer>, F: Fn(&P) + 'static>( 1008 this: *mut ffi::GtkCellRenderer, 1009 _param_spec: glib::ffi::gpointer, 1010 f: glib::ffi::gpointer, 1011 ) { 1012 let f: &F = &*(f as *const F); 1013 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1014 } 1015 unsafe { 1016 let f: Box_<F> = Box_::new(f); 1017 connect_raw( 1018 self.as_ptr() as *mut _, 1019 b"notify::height\0".as_ptr() as *const _, 1020 Some(transmute::<_, unsafe extern "C" fn()>( 1021 notify_height_trampoline::<Self, F> as *const (), 1022 )), 1023 Box_::into_raw(f), 1024 ) 1025 } 1026 } 1027 connect_is_expanded_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1028 fn connect_is_expanded_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1029 unsafe extern "C" fn notify_is_expanded_trampoline< 1030 P: IsA<CellRenderer>, 1031 F: Fn(&P) + 'static, 1032 >( 1033 this: *mut ffi::GtkCellRenderer, 1034 _param_spec: glib::ffi::gpointer, 1035 f: glib::ffi::gpointer, 1036 ) { 1037 let f: &F = &*(f as *const F); 1038 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1039 } 1040 unsafe { 1041 let f: Box_<F> = Box_::new(f); 1042 connect_raw( 1043 self.as_ptr() as *mut _, 1044 b"notify::is-expanded\0".as_ptr() as *const _, 1045 Some(transmute::<_, unsafe extern "C" fn()>( 1046 notify_is_expanded_trampoline::<Self, F> as *const (), 1047 )), 1048 Box_::into_raw(f), 1049 ) 1050 } 1051 } 1052 connect_is_expander_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1053 fn connect_is_expander_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1054 unsafe extern "C" fn notify_is_expander_trampoline< 1055 P: IsA<CellRenderer>, 1056 F: Fn(&P) + 'static, 1057 >( 1058 this: *mut ffi::GtkCellRenderer, 1059 _param_spec: glib::ffi::gpointer, 1060 f: glib::ffi::gpointer, 1061 ) { 1062 let f: &F = &*(f as *const F); 1063 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1064 } 1065 unsafe { 1066 let f: Box_<F> = Box_::new(f); 1067 connect_raw( 1068 self.as_ptr() as *mut _, 1069 b"notify::is-expander\0".as_ptr() as *const _, 1070 Some(transmute::<_, unsafe extern "C" fn()>( 1071 notify_is_expander_trampoline::<Self, F> as *const (), 1072 )), 1073 Box_::into_raw(f), 1074 ) 1075 } 1076 } 1077 connect_mode_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1078 fn connect_mode_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1079 unsafe extern "C" fn notify_mode_trampoline<P: IsA<CellRenderer>, F: Fn(&P) + 'static>( 1080 this: *mut ffi::GtkCellRenderer, 1081 _param_spec: glib::ffi::gpointer, 1082 f: glib::ffi::gpointer, 1083 ) { 1084 let f: &F = &*(f as *const F); 1085 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1086 } 1087 unsafe { 1088 let f: Box_<F> = Box_::new(f); 1089 connect_raw( 1090 self.as_ptr() as *mut _, 1091 b"notify::mode\0".as_ptr() as *const _, 1092 Some(transmute::<_, unsafe extern "C" fn()>( 1093 notify_mode_trampoline::<Self, F> as *const (), 1094 )), 1095 Box_::into_raw(f), 1096 ) 1097 } 1098 } 1099 connect_sensitive_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1100 fn connect_sensitive_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1101 unsafe extern "C" fn notify_sensitive_trampoline< 1102 P: IsA<CellRenderer>, 1103 F: Fn(&P) + 'static, 1104 >( 1105 this: *mut ffi::GtkCellRenderer, 1106 _param_spec: glib::ffi::gpointer, 1107 f: glib::ffi::gpointer, 1108 ) { 1109 let f: &F = &*(f as *const F); 1110 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1111 } 1112 unsafe { 1113 let f: Box_<F> = Box_::new(f); 1114 connect_raw( 1115 self.as_ptr() as *mut _, 1116 b"notify::sensitive\0".as_ptr() as *const _, 1117 Some(transmute::<_, unsafe extern "C" fn()>( 1118 notify_sensitive_trampoline::<Self, F> as *const (), 1119 )), 1120 Box_::into_raw(f), 1121 ) 1122 } 1123 } 1124 connect_visible_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1125 fn connect_visible_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1126 unsafe extern "C" fn notify_visible_trampoline< 1127 P: IsA<CellRenderer>, 1128 F: Fn(&P) + 'static, 1129 >( 1130 this: *mut ffi::GtkCellRenderer, 1131 _param_spec: glib::ffi::gpointer, 1132 f: glib::ffi::gpointer, 1133 ) { 1134 let f: &F = &*(f as *const F); 1135 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1136 } 1137 unsafe { 1138 let f: Box_<F> = Box_::new(f); 1139 connect_raw( 1140 self.as_ptr() as *mut _, 1141 b"notify::visible\0".as_ptr() as *const _, 1142 Some(transmute::<_, unsafe extern "C" fn()>( 1143 notify_visible_trampoline::<Self, F> as *const (), 1144 )), 1145 Box_::into_raw(f), 1146 ) 1147 } 1148 } 1149 connect_width_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1150 fn connect_width_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1151 unsafe extern "C" fn notify_width_trampoline<P: IsA<CellRenderer>, F: Fn(&P) + 'static>( 1152 this: *mut ffi::GtkCellRenderer, 1153 _param_spec: glib::ffi::gpointer, 1154 f: glib::ffi::gpointer, 1155 ) { 1156 let f: &F = &*(f as *const F); 1157 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1158 } 1159 unsafe { 1160 let f: Box_<F> = Box_::new(f); 1161 connect_raw( 1162 self.as_ptr() as *mut _, 1163 b"notify::width\0".as_ptr() as *const _, 1164 Some(transmute::<_, unsafe extern "C" fn()>( 1165 notify_width_trampoline::<Self, F> as *const (), 1166 )), 1167 Box_::into_raw(f), 1168 ) 1169 } 1170 } 1171 connect_xalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1172 fn connect_xalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1173 unsafe extern "C" fn notify_xalign_trampoline<P: IsA<CellRenderer>, F: Fn(&P) + 'static>( 1174 this: *mut ffi::GtkCellRenderer, 1175 _param_spec: glib::ffi::gpointer, 1176 f: glib::ffi::gpointer, 1177 ) { 1178 let f: &F = &*(f as *const F); 1179 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1180 } 1181 unsafe { 1182 let f: Box_<F> = Box_::new(f); 1183 connect_raw( 1184 self.as_ptr() as *mut _, 1185 b"notify::xalign\0".as_ptr() as *const _, 1186 Some(transmute::<_, unsafe extern "C" fn()>( 1187 notify_xalign_trampoline::<Self, F> as *const (), 1188 )), 1189 Box_::into_raw(f), 1190 ) 1191 } 1192 } 1193 connect_xpad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1194 fn connect_xpad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1195 unsafe extern "C" fn notify_xpad_trampoline<P: IsA<CellRenderer>, F: Fn(&P) + 'static>( 1196 this: *mut ffi::GtkCellRenderer, 1197 _param_spec: glib::ffi::gpointer, 1198 f: glib::ffi::gpointer, 1199 ) { 1200 let f: &F = &*(f as *const F); 1201 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1202 } 1203 unsafe { 1204 let f: Box_<F> = Box_::new(f); 1205 connect_raw( 1206 self.as_ptr() as *mut _, 1207 b"notify::xpad\0".as_ptr() as *const _, 1208 Some(transmute::<_, unsafe extern "C" fn()>( 1209 notify_xpad_trampoline::<Self, F> as *const (), 1210 )), 1211 Box_::into_raw(f), 1212 ) 1213 } 1214 } 1215 connect_yalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1216 fn connect_yalign_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1217 unsafe extern "C" fn notify_yalign_trampoline<P: IsA<CellRenderer>, F: Fn(&P) + 'static>( 1218 this: *mut ffi::GtkCellRenderer, 1219 _param_spec: glib::ffi::gpointer, 1220 f: glib::ffi::gpointer, 1221 ) { 1222 let f: &F = &*(f as *const F); 1223 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1224 } 1225 unsafe { 1226 let f: Box_<F> = Box_::new(f); 1227 connect_raw( 1228 self.as_ptr() as *mut _, 1229 b"notify::yalign\0".as_ptr() as *const _, 1230 Some(transmute::<_, unsafe extern "C" fn()>( 1231 notify_yalign_trampoline::<Self, F> as *const (), 1232 )), 1233 Box_::into_raw(f), 1234 ) 1235 } 1236 } 1237 connect_ypad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId1238 fn connect_ypad_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 1239 unsafe extern "C" fn notify_ypad_trampoline<P: IsA<CellRenderer>, F: Fn(&P) + 'static>( 1240 this: *mut ffi::GtkCellRenderer, 1241 _param_spec: glib::ffi::gpointer, 1242 f: glib::ffi::gpointer, 1243 ) { 1244 let f: &F = &*(f as *const F); 1245 f(CellRenderer::from_glib_borrow(this).unsafe_cast_ref()) 1246 } 1247 unsafe { 1248 let f: Box_<F> = Box_::new(f); 1249 connect_raw( 1250 self.as_ptr() as *mut _, 1251 b"notify::ypad\0".as_ptr() as *const _, 1252 Some(transmute::<_, unsafe extern "C" fn()>( 1253 notify_ypad_trampoline::<Self, F> as *const (), 1254 )), 1255 Box_::into_raw(f), 1256 ) 1257 } 1258 } 1259 } 1260 1261 impl fmt::Display for CellRenderer { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result1262 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 1263 f.write_str("CellRenderer") 1264 } 1265 } 1266