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 gdk; 6 use glib::object::Cast; 7 use glib::object::IsA; 8 use glib::signal::connect_raw; 9 use glib::signal::SignalHandlerId; 10 use glib::translate::*; 11 use glib::StaticType; 12 use glib::ToValue; 13 use glib::Value; 14 use glib_sys; 15 use gobject_sys; 16 use gtk_sys; 17 use pango; 18 use std::boxed::Box as Box_; 19 use std::fmt; 20 use std::mem::transmute; 21 use Adjustment; 22 use CellRenderer; 23 use CellRendererMode; 24 use CellRendererText; 25 26 glib_wrapper! { 27 pub struct CellRendererSpin(Object<gtk_sys::GtkCellRendererSpin, gtk_sys::GtkCellRendererSpinClass, CellRendererSpinClass>) @extends CellRendererText, CellRenderer; 28 29 match fn { 30 get_type => || gtk_sys::gtk_cell_renderer_spin_get_type(), 31 } 32 } 33 34 impl CellRendererSpin { new() -> CellRendererSpin35 pub fn new() -> CellRendererSpin { 36 assert_initialized_main_thread!(); 37 unsafe { CellRenderer::from_glib_none(gtk_sys::gtk_cell_renderer_spin_new()).unsafe_cast() } 38 } 39 } 40 41 impl Default for CellRendererSpin { default() -> Self42 fn default() -> Self { 43 Self::new() 44 } 45 } 46 47 pub struct CellRendererSpinBuilder { 48 adjustment: Option<Adjustment>, 49 climb_rate: Option<f64>, 50 digits: Option<u32>, 51 align_set: Option<bool>, 52 alignment: Option<pango::Alignment>, 53 attributes: Option<pango::AttrList>, 54 background: Option<String>, 55 background_rgba: Option<gdk::RGBA>, 56 background_set: Option<bool>, 57 editable: Option<bool>, 58 editable_set: Option<bool>, 59 ellipsize: Option<pango::EllipsizeMode>, 60 ellipsize_set: Option<bool>, 61 family: Option<String>, 62 family_set: Option<bool>, 63 font: Option<String>, 64 font_desc: Option<pango::FontDescription>, 65 foreground: Option<String>, 66 foreground_rgba: Option<gdk::RGBA>, 67 foreground_set: Option<bool>, 68 language: Option<String>, 69 language_set: Option<bool>, 70 markup: Option<String>, 71 max_width_chars: Option<i32>, 72 placeholder_text: Option<String>, 73 rise: Option<i32>, 74 rise_set: Option<bool>, 75 scale: Option<f64>, 76 scale_set: Option<bool>, 77 single_paragraph_mode: Option<bool>, 78 size: Option<i32>, 79 size_points: Option<f64>, 80 size_set: Option<bool>, 81 stretch: Option<pango::Stretch>, 82 stretch_set: Option<bool>, 83 strikethrough: Option<bool>, 84 strikethrough_set: Option<bool>, 85 style: Option<pango::Style>, 86 style_set: Option<bool>, 87 text: Option<String>, 88 underline: Option<pango::Underline>, 89 underline_set: Option<bool>, 90 variant: Option<pango::Variant>, 91 variant_set: Option<bool>, 92 weight: Option<i32>, 93 weight_set: Option<bool>, 94 width_chars: Option<i32>, 95 wrap_mode: Option<pango::WrapMode>, 96 wrap_width: Option<i32>, 97 cell_background: Option<String>, 98 cell_background_rgba: Option<gdk::RGBA>, 99 cell_background_set: Option<bool>, 100 height: Option<i32>, 101 is_expanded: Option<bool>, 102 is_expander: Option<bool>, 103 mode: Option<CellRendererMode>, 104 sensitive: Option<bool>, 105 visible: Option<bool>, 106 width: Option<i32>, 107 xalign: Option<f32>, 108 xpad: Option<u32>, 109 yalign: Option<f32>, 110 ypad: Option<u32>, 111 } 112 113 impl CellRendererSpinBuilder { new() -> Self114 pub fn new() -> Self { 115 Self { 116 adjustment: None, 117 climb_rate: None, 118 digits: None, 119 align_set: None, 120 alignment: None, 121 attributes: None, 122 background: None, 123 background_rgba: None, 124 background_set: None, 125 editable: None, 126 editable_set: None, 127 ellipsize: None, 128 ellipsize_set: None, 129 family: None, 130 family_set: None, 131 font: None, 132 font_desc: None, 133 foreground: None, 134 foreground_rgba: None, 135 foreground_set: None, 136 language: None, 137 language_set: None, 138 markup: None, 139 max_width_chars: None, 140 placeholder_text: None, 141 rise: None, 142 rise_set: None, 143 scale: None, 144 scale_set: None, 145 single_paragraph_mode: None, 146 size: None, 147 size_points: None, 148 size_set: None, 149 stretch: None, 150 stretch_set: None, 151 strikethrough: None, 152 strikethrough_set: None, 153 style: None, 154 style_set: None, 155 text: None, 156 underline: None, 157 underline_set: None, 158 variant: None, 159 variant_set: None, 160 weight: None, 161 weight_set: None, 162 width_chars: None, 163 wrap_mode: None, 164 wrap_width: None, 165 cell_background: None, 166 cell_background_rgba: None, 167 cell_background_set: None, 168 height: None, 169 is_expanded: None, 170 is_expander: None, 171 mode: None, 172 sensitive: None, 173 visible: None, 174 width: None, 175 xalign: None, 176 xpad: None, 177 yalign: None, 178 ypad: None, 179 } 180 } 181 build(self) -> CellRendererSpin182 pub fn build(self) -> CellRendererSpin { 183 let mut properties: Vec<(&str, &dyn ToValue)> = vec![]; 184 if let Some(ref adjustment) = self.adjustment { 185 properties.push(("adjustment", adjustment)); 186 } 187 if let Some(ref climb_rate) = self.climb_rate { 188 properties.push(("climb-rate", climb_rate)); 189 } 190 if let Some(ref digits) = self.digits { 191 properties.push(("digits", digits)); 192 } 193 if let Some(ref align_set) = self.align_set { 194 properties.push(("align-set", align_set)); 195 } 196 if let Some(ref alignment) = self.alignment { 197 properties.push(("alignment", alignment)); 198 } 199 if let Some(ref attributes) = self.attributes { 200 properties.push(("attributes", attributes)); 201 } 202 if let Some(ref background) = self.background { 203 properties.push(("background", background)); 204 } 205 if let Some(ref background_rgba) = self.background_rgba { 206 properties.push(("background-rgba", background_rgba)); 207 } 208 if let Some(ref background_set) = self.background_set { 209 properties.push(("background-set", background_set)); 210 } 211 if let Some(ref editable) = self.editable { 212 properties.push(("editable", editable)); 213 } 214 if let Some(ref editable_set) = self.editable_set { 215 properties.push(("editable-set", editable_set)); 216 } 217 if let Some(ref ellipsize) = self.ellipsize { 218 properties.push(("ellipsize", ellipsize)); 219 } 220 if let Some(ref ellipsize_set) = self.ellipsize_set { 221 properties.push(("ellipsize-set", ellipsize_set)); 222 } 223 if let Some(ref family) = self.family { 224 properties.push(("family", family)); 225 } 226 if let Some(ref family_set) = self.family_set { 227 properties.push(("family-set", family_set)); 228 } 229 if let Some(ref font) = self.font { 230 properties.push(("font", font)); 231 } 232 if let Some(ref font_desc) = self.font_desc { 233 properties.push(("font-desc", font_desc)); 234 } 235 if let Some(ref foreground) = self.foreground { 236 properties.push(("foreground", foreground)); 237 } 238 if let Some(ref foreground_rgba) = self.foreground_rgba { 239 properties.push(("foreground-rgba", foreground_rgba)); 240 } 241 if let Some(ref foreground_set) = self.foreground_set { 242 properties.push(("foreground-set", foreground_set)); 243 } 244 if let Some(ref language) = self.language { 245 properties.push(("language", language)); 246 } 247 if let Some(ref language_set) = self.language_set { 248 properties.push(("language-set", language_set)); 249 } 250 if let Some(ref markup) = self.markup { 251 properties.push(("markup", markup)); 252 } 253 if let Some(ref max_width_chars) = self.max_width_chars { 254 properties.push(("max-width-chars", max_width_chars)); 255 } 256 if let Some(ref placeholder_text) = self.placeholder_text { 257 properties.push(("placeholder-text", placeholder_text)); 258 } 259 if let Some(ref rise) = self.rise { 260 properties.push(("rise", rise)); 261 } 262 if let Some(ref rise_set) = self.rise_set { 263 properties.push(("rise-set", rise_set)); 264 } 265 if let Some(ref scale) = self.scale { 266 properties.push(("scale", scale)); 267 } 268 if let Some(ref scale_set) = self.scale_set { 269 properties.push(("scale-set", scale_set)); 270 } 271 if let Some(ref single_paragraph_mode) = self.single_paragraph_mode { 272 properties.push(("single-paragraph-mode", single_paragraph_mode)); 273 } 274 if let Some(ref size) = self.size { 275 properties.push(("size", size)); 276 } 277 if let Some(ref size_points) = self.size_points { 278 properties.push(("size-points", size_points)); 279 } 280 if let Some(ref size_set) = self.size_set { 281 properties.push(("size-set", size_set)); 282 } 283 if let Some(ref stretch) = self.stretch { 284 properties.push(("stretch", stretch)); 285 } 286 if let Some(ref stretch_set) = self.stretch_set { 287 properties.push(("stretch-set", stretch_set)); 288 } 289 if let Some(ref strikethrough) = self.strikethrough { 290 properties.push(("strikethrough", strikethrough)); 291 } 292 if let Some(ref strikethrough_set) = self.strikethrough_set { 293 properties.push(("strikethrough-set", strikethrough_set)); 294 } 295 if let Some(ref style) = self.style { 296 properties.push(("style", style)); 297 } 298 if let Some(ref style_set) = self.style_set { 299 properties.push(("style-set", style_set)); 300 } 301 if let Some(ref text) = self.text { 302 properties.push(("text", text)); 303 } 304 if let Some(ref underline) = self.underline { 305 properties.push(("underline", underline)); 306 } 307 if let Some(ref underline_set) = self.underline_set { 308 properties.push(("underline-set", underline_set)); 309 } 310 if let Some(ref variant) = self.variant { 311 properties.push(("variant", variant)); 312 } 313 if let Some(ref variant_set) = self.variant_set { 314 properties.push(("variant-set", variant_set)); 315 } 316 if let Some(ref weight) = self.weight { 317 properties.push(("weight", weight)); 318 } 319 if let Some(ref weight_set) = self.weight_set { 320 properties.push(("weight-set", weight_set)); 321 } 322 if let Some(ref width_chars) = self.width_chars { 323 properties.push(("width-chars", width_chars)); 324 } 325 if let Some(ref wrap_mode) = self.wrap_mode { 326 properties.push(("wrap-mode", wrap_mode)); 327 } 328 if let Some(ref wrap_width) = self.wrap_width { 329 properties.push(("wrap-width", wrap_width)); 330 } 331 if let Some(ref cell_background) = self.cell_background { 332 properties.push(("cell-background", cell_background)); 333 } 334 if let Some(ref cell_background_rgba) = self.cell_background_rgba { 335 properties.push(("cell-background-rgba", cell_background_rgba)); 336 } 337 if let Some(ref cell_background_set) = self.cell_background_set { 338 properties.push(("cell-background-set", cell_background_set)); 339 } 340 if let Some(ref height) = self.height { 341 properties.push(("height", height)); 342 } 343 if let Some(ref is_expanded) = self.is_expanded { 344 properties.push(("is-expanded", is_expanded)); 345 } 346 if let Some(ref is_expander) = self.is_expander { 347 properties.push(("is-expander", is_expander)); 348 } 349 if let Some(ref mode) = self.mode { 350 properties.push(("mode", mode)); 351 } 352 if let Some(ref sensitive) = self.sensitive { 353 properties.push(("sensitive", sensitive)); 354 } 355 if let Some(ref visible) = self.visible { 356 properties.push(("visible", visible)); 357 } 358 if let Some(ref width) = self.width { 359 properties.push(("width", width)); 360 } 361 if let Some(ref xalign) = self.xalign { 362 properties.push(("xalign", xalign)); 363 } 364 if let Some(ref xpad) = self.xpad { 365 properties.push(("xpad", xpad)); 366 } 367 if let Some(ref yalign) = self.yalign { 368 properties.push(("yalign", yalign)); 369 } 370 if let Some(ref ypad) = self.ypad { 371 properties.push(("ypad", ypad)); 372 } 373 glib::Object::new(CellRendererSpin::static_type(), &properties) 374 .expect("object new") 375 .downcast() 376 .expect("downcast") 377 } 378 adjustment(mut self, adjustment: &Adjustment) -> Self379 pub fn adjustment(mut self, adjustment: &Adjustment) -> Self { 380 self.adjustment = Some(adjustment.clone()); 381 self 382 } 383 climb_rate(mut self, climb_rate: f64) -> Self384 pub fn climb_rate(mut self, climb_rate: f64) -> Self { 385 self.climb_rate = Some(climb_rate); 386 self 387 } 388 digits(mut self, digits: u32) -> Self389 pub fn digits(mut self, digits: u32) -> Self { 390 self.digits = Some(digits); 391 self 392 } 393 align_set(mut self, align_set: bool) -> Self394 pub fn align_set(mut self, align_set: bool) -> Self { 395 self.align_set = Some(align_set); 396 self 397 } 398 alignment(mut self, alignment: pango::Alignment) -> Self399 pub fn alignment(mut self, alignment: pango::Alignment) -> Self { 400 self.alignment = Some(alignment); 401 self 402 } 403 attributes(mut self, attributes: &pango::AttrList) -> Self404 pub fn attributes(mut self, attributes: &pango::AttrList) -> Self { 405 self.attributes = Some(attributes.clone()); 406 self 407 } 408 background(mut self, background: &str) -> Self409 pub fn background(mut self, background: &str) -> Self { 410 self.background = Some(background.to_string()); 411 self 412 } 413 background_rgba(mut self, background_rgba: &gdk::RGBA) -> Self414 pub fn background_rgba(mut self, background_rgba: &gdk::RGBA) -> Self { 415 self.background_rgba = Some(background_rgba.clone()); 416 self 417 } 418 background_set(mut self, background_set: bool) -> Self419 pub fn background_set(mut self, background_set: bool) -> Self { 420 self.background_set = Some(background_set); 421 self 422 } 423 editable(mut self, editable: bool) -> Self424 pub fn editable(mut self, editable: bool) -> Self { 425 self.editable = Some(editable); 426 self 427 } 428 editable_set(mut self, editable_set: bool) -> Self429 pub fn editable_set(mut self, editable_set: bool) -> Self { 430 self.editable_set = Some(editable_set); 431 self 432 } 433 ellipsize(mut self, ellipsize: pango::EllipsizeMode) -> Self434 pub fn ellipsize(mut self, ellipsize: pango::EllipsizeMode) -> Self { 435 self.ellipsize = Some(ellipsize); 436 self 437 } 438 ellipsize_set(mut self, ellipsize_set: bool) -> Self439 pub fn ellipsize_set(mut self, ellipsize_set: bool) -> Self { 440 self.ellipsize_set = Some(ellipsize_set); 441 self 442 } 443 family(mut self, family: &str) -> Self444 pub fn family(mut self, family: &str) -> Self { 445 self.family = Some(family.to_string()); 446 self 447 } 448 family_set(mut self, family_set: bool) -> Self449 pub fn family_set(mut self, family_set: bool) -> Self { 450 self.family_set = Some(family_set); 451 self 452 } 453 font(mut self, font: &str) -> Self454 pub fn font(mut self, font: &str) -> Self { 455 self.font = Some(font.to_string()); 456 self 457 } 458 font_desc(mut self, font_desc: &pango::FontDescription) -> Self459 pub fn font_desc(mut self, font_desc: &pango::FontDescription) -> Self { 460 self.font_desc = Some(font_desc.clone()); 461 self 462 } 463 foreground(mut self, foreground: &str) -> Self464 pub fn foreground(mut self, foreground: &str) -> Self { 465 self.foreground = Some(foreground.to_string()); 466 self 467 } 468 foreground_rgba(mut self, foreground_rgba: &gdk::RGBA) -> Self469 pub fn foreground_rgba(mut self, foreground_rgba: &gdk::RGBA) -> Self { 470 self.foreground_rgba = Some(foreground_rgba.clone()); 471 self 472 } 473 foreground_set(mut self, foreground_set: bool) -> Self474 pub fn foreground_set(mut self, foreground_set: bool) -> Self { 475 self.foreground_set = Some(foreground_set); 476 self 477 } 478 language(mut self, language: &str) -> Self479 pub fn language(mut self, language: &str) -> Self { 480 self.language = Some(language.to_string()); 481 self 482 } 483 language_set(mut self, language_set: bool) -> Self484 pub fn language_set(mut self, language_set: bool) -> Self { 485 self.language_set = Some(language_set); 486 self 487 } 488 markup(mut self, markup: &str) -> Self489 pub fn markup(mut self, markup: &str) -> Self { 490 self.markup = Some(markup.to_string()); 491 self 492 } 493 max_width_chars(mut self, max_width_chars: i32) -> Self494 pub fn max_width_chars(mut self, max_width_chars: i32) -> Self { 495 self.max_width_chars = Some(max_width_chars); 496 self 497 } 498 placeholder_text(mut self, placeholder_text: &str) -> Self499 pub fn placeholder_text(mut self, placeholder_text: &str) -> Self { 500 self.placeholder_text = Some(placeholder_text.to_string()); 501 self 502 } 503 rise(mut self, rise: i32) -> Self504 pub fn rise(mut self, rise: i32) -> Self { 505 self.rise = Some(rise); 506 self 507 } 508 rise_set(mut self, rise_set: bool) -> Self509 pub fn rise_set(mut self, rise_set: bool) -> Self { 510 self.rise_set = Some(rise_set); 511 self 512 } 513 scale(mut self, scale: f64) -> Self514 pub fn scale(mut self, scale: f64) -> Self { 515 self.scale = Some(scale); 516 self 517 } 518 scale_set(mut self, scale_set: bool) -> Self519 pub fn scale_set(mut self, scale_set: bool) -> Self { 520 self.scale_set = Some(scale_set); 521 self 522 } 523 single_paragraph_mode(mut self, single_paragraph_mode: bool) -> Self524 pub fn single_paragraph_mode(mut self, single_paragraph_mode: bool) -> Self { 525 self.single_paragraph_mode = Some(single_paragraph_mode); 526 self 527 } 528 size(mut self, size: i32) -> Self529 pub fn size(mut self, size: i32) -> Self { 530 self.size = Some(size); 531 self 532 } 533 size_points(mut self, size_points: f64) -> Self534 pub fn size_points(mut self, size_points: f64) -> Self { 535 self.size_points = Some(size_points); 536 self 537 } 538 size_set(mut self, size_set: bool) -> Self539 pub fn size_set(mut self, size_set: bool) -> Self { 540 self.size_set = Some(size_set); 541 self 542 } 543 stretch(mut self, stretch: pango::Stretch) -> Self544 pub fn stretch(mut self, stretch: pango::Stretch) -> Self { 545 self.stretch = Some(stretch); 546 self 547 } 548 stretch_set(mut self, stretch_set: bool) -> Self549 pub fn stretch_set(mut self, stretch_set: bool) -> Self { 550 self.stretch_set = Some(stretch_set); 551 self 552 } 553 strikethrough(mut self, strikethrough: bool) -> Self554 pub fn strikethrough(mut self, strikethrough: bool) -> Self { 555 self.strikethrough = Some(strikethrough); 556 self 557 } 558 strikethrough_set(mut self, strikethrough_set: bool) -> Self559 pub fn strikethrough_set(mut self, strikethrough_set: bool) -> Self { 560 self.strikethrough_set = Some(strikethrough_set); 561 self 562 } 563 style(mut self, style: pango::Style) -> Self564 pub fn style(mut self, style: pango::Style) -> Self { 565 self.style = Some(style); 566 self 567 } 568 style_set(mut self, style_set: bool) -> Self569 pub fn style_set(mut self, style_set: bool) -> Self { 570 self.style_set = Some(style_set); 571 self 572 } 573 text(mut self, text: &str) -> Self574 pub fn text(mut self, text: &str) -> Self { 575 self.text = Some(text.to_string()); 576 self 577 } 578 underline(mut self, underline: pango::Underline) -> Self579 pub fn underline(mut self, underline: pango::Underline) -> Self { 580 self.underline = Some(underline); 581 self 582 } 583 underline_set(mut self, underline_set: bool) -> Self584 pub fn underline_set(mut self, underline_set: bool) -> Self { 585 self.underline_set = Some(underline_set); 586 self 587 } 588 variant(mut self, variant: pango::Variant) -> Self589 pub fn variant(mut self, variant: pango::Variant) -> Self { 590 self.variant = Some(variant); 591 self 592 } 593 variant_set(mut self, variant_set: bool) -> Self594 pub fn variant_set(mut self, variant_set: bool) -> Self { 595 self.variant_set = Some(variant_set); 596 self 597 } 598 weight(mut self, weight: i32) -> Self599 pub fn weight(mut self, weight: i32) -> Self { 600 self.weight = Some(weight); 601 self 602 } 603 weight_set(mut self, weight_set: bool) -> Self604 pub fn weight_set(mut self, weight_set: bool) -> Self { 605 self.weight_set = Some(weight_set); 606 self 607 } 608 width_chars(mut self, width_chars: i32) -> Self609 pub fn width_chars(mut self, width_chars: i32) -> Self { 610 self.width_chars = Some(width_chars); 611 self 612 } 613 wrap_mode(mut self, wrap_mode: pango::WrapMode) -> Self614 pub fn wrap_mode(mut self, wrap_mode: pango::WrapMode) -> Self { 615 self.wrap_mode = Some(wrap_mode); 616 self 617 } 618 wrap_width(mut self, wrap_width: i32) -> Self619 pub fn wrap_width(mut self, wrap_width: i32) -> Self { 620 self.wrap_width = Some(wrap_width); 621 self 622 } 623 cell_background(mut self, cell_background: &str) -> Self624 pub fn cell_background(mut self, cell_background: &str) -> Self { 625 self.cell_background = Some(cell_background.to_string()); 626 self 627 } 628 cell_background_rgba(mut self, cell_background_rgba: &gdk::RGBA) -> Self629 pub fn cell_background_rgba(mut self, cell_background_rgba: &gdk::RGBA) -> Self { 630 self.cell_background_rgba = Some(cell_background_rgba.clone()); 631 self 632 } 633 cell_background_set(mut self, cell_background_set: bool) -> Self634 pub fn cell_background_set(mut self, cell_background_set: bool) -> Self { 635 self.cell_background_set = Some(cell_background_set); 636 self 637 } 638 height(mut self, height: i32) -> Self639 pub fn height(mut self, height: i32) -> Self { 640 self.height = Some(height); 641 self 642 } 643 is_expanded(mut self, is_expanded: bool) -> Self644 pub fn is_expanded(mut self, is_expanded: bool) -> Self { 645 self.is_expanded = Some(is_expanded); 646 self 647 } 648 is_expander(mut self, is_expander: bool) -> Self649 pub fn is_expander(mut self, is_expander: bool) -> Self { 650 self.is_expander = Some(is_expander); 651 self 652 } 653 mode(mut self, mode: CellRendererMode) -> Self654 pub fn mode(mut self, mode: CellRendererMode) -> Self { 655 self.mode = Some(mode); 656 self 657 } 658 sensitive(mut self, sensitive: bool) -> Self659 pub fn sensitive(mut self, sensitive: bool) -> Self { 660 self.sensitive = Some(sensitive); 661 self 662 } 663 visible(mut self, visible: bool) -> Self664 pub fn visible(mut self, visible: bool) -> Self { 665 self.visible = Some(visible); 666 self 667 } 668 width(mut self, width: i32) -> Self669 pub fn width(mut self, width: i32) -> Self { 670 self.width = Some(width); 671 self 672 } 673 xalign(mut self, xalign: f32) -> Self674 pub fn xalign(mut self, xalign: f32) -> Self { 675 self.xalign = Some(xalign); 676 self 677 } 678 xpad(mut self, xpad: u32) -> Self679 pub fn xpad(mut self, xpad: u32) -> Self { 680 self.xpad = Some(xpad); 681 self 682 } 683 yalign(mut self, yalign: f32) -> Self684 pub fn yalign(mut self, yalign: f32) -> Self { 685 self.yalign = Some(yalign); 686 self 687 } 688 ypad(mut self, ypad: u32) -> Self689 pub fn ypad(mut self, ypad: u32) -> Self { 690 self.ypad = Some(ypad); 691 self 692 } 693 } 694 695 pub const NONE_CELL_RENDERER_SPIN: Option<&CellRendererSpin> = None; 696 697 pub trait CellRendererSpinExt: 'static { get_property_adjustment(&self) -> Option<Adjustment>698 fn get_property_adjustment(&self) -> Option<Adjustment>; 699 set_property_adjustment(&self, adjustment: Option<&Adjustment>)700 fn set_property_adjustment(&self, adjustment: Option<&Adjustment>); 701 get_property_climb_rate(&self) -> f64702 fn get_property_climb_rate(&self) -> f64; 703 set_property_climb_rate(&self, climb_rate: f64)704 fn set_property_climb_rate(&self, climb_rate: f64); 705 get_property_digits(&self) -> u32706 fn get_property_digits(&self) -> u32; 707 set_property_digits(&self, digits: u32)708 fn set_property_digits(&self, digits: u32); 709 connect_property_adjustment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId710 fn connect_property_adjustment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 711 connect_property_climb_rate_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId712 fn connect_property_climb_rate_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 713 connect_property_digits_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId714 fn connect_property_digits_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId; 715 } 716 717 impl<O: IsA<CellRendererSpin>> CellRendererSpinExt for O { get_property_adjustment(&self) -> Option<Adjustment>718 fn get_property_adjustment(&self) -> Option<Adjustment> { 719 unsafe { 720 let mut value = Value::from_type(<Adjustment as StaticType>::static_type()); 721 gobject_sys::g_object_get_property( 722 self.to_glib_none().0 as *mut gobject_sys::GObject, 723 b"adjustment\0".as_ptr() as *const _, 724 value.to_glib_none_mut().0, 725 ); 726 value.get() 727 } 728 } 729 set_property_adjustment(&self, adjustment: Option<&Adjustment>)730 fn set_property_adjustment(&self, adjustment: Option<&Adjustment>) { 731 unsafe { 732 gobject_sys::g_object_set_property( 733 self.to_glib_none().0 as *mut gobject_sys::GObject, 734 b"adjustment\0".as_ptr() as *const _, 735 Value::from(adjustment).to_glib_none().0, 736 ); 737 } 738 } 739 get_property_climb_rate(&self) -> f64740 fn get_property_climb_rate(&self) -> f64 { 741 unsafe { 742 let mut value = Value::from_type(<f64 as StaticType>::static_type()); 743 gobject_sys::g_object_get_property( 744 self.to_glib_none().0 as *mut gobject_sys::GObject, 745 b"climb-rate\0".as_ptr() as *const _, 746 value.to_glib_none_mut().0, 747 ); 748 value.get().unwrap() 749 } 750 } 751 set_property_climb_rate(&self, climb_rate: f64)752 fn set_property_climb_rate(&self, climb_rate: f64) { 753 unsafe { 754 gobject_sys::g_object_set_property( 755 self.to_glib_none().0 as *mut gobject_sys::GObject, 756 b"climb-rate\0".as_ptr() as *const _, 757 Value::from(&climb_rate).to_glib_none().0, 758 ); 759 } 760 } 761 get_property_digits(&self) -> u32762 fn get_property_digits(&self) -> u32 { 763 unsafe { 764 let mut value = Value::from_type(<u32 as StaticType>::static_type()); 765 gobject_sys::g_object_get_property( 766 self.to_glib_none().0 as *mut gobject_sys::GObject, 767 b"digits\0".as_ptr() as *const _, 768 value.to_glib_none_mut().0, 769 ); 770 value.get().unwrap() 771 } 772 } 773 set_property_digits(&self, digits: u32)774 fn set_property_digits(&self, digits: u32) { 775 unsafe { 776 gobject_sys::g_object_set_property( 777 self.to_glib_none().0 as *mut gobject_sys::GObject, 778 b"digits\0".as_ptr() as *const _, 779 Value::from(&digits).to_glib_none().0, 780 ); 781 } 782 } 783 connect_property_adjustment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId784 fn connect_property_adjustment_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 785 unsafe extern "C" fn notify_adjustment_trampoline<P, F: Fn(&P) + 'static>( 786 this: *mut gtk_sys::GtkCellRendererSpin, 787 _param_spec: glib_sys::gpointer, 788 f: glib_sys::gpointer, 789 ) where 790 P: IsA<CellRendererSpin>, 791 { 792 let f: &F = &*(f as *const F); 793 f(&CellRendererSpin::from_glib_borrow(this).unsafe_cast()) 794 } 795 unsafe { 796 let f: Box_<F> = Box_::new(f); 797 connect_raw( 798 self.as_ptr() as *mut _, 799 b"notify::adjustment\0".as_ptr() as *const _, 800 Some(transmute(notify_adjustment_trampoline::<Self, F> as usize)), 801 Box_::into_raw(f), 802 ) 803 } 804 } 805 connect_property_climb_rate_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId806 fn connect_property_climb_rate_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 807 unsafe extern "C" fn notify_climb_rate_trampoline<P, F: Fn(&P) + 'static>( 808 this: *mut gtk_sys::GtkCellRendererSpin, 809 _param_spec: glib_sys::gpointer, 810 f: glib_sys::gpointer, 811 ) where 812 P: IsA<CellRendererSpin>, 813 { 814 let f: &F = &*(f as *const F); 815 f(&CellRendererSpin::from_glib_borrow(this).unsafe_cast()) 816 } 817 unsafe { 818 let f: Box_<F> = Box_::new(f); 819 connect_raw( 820 self.as_ptr() as *mut _, 821 b"notify::climb-rate\0".as_ptr() as *const _, 822 Some(transmute(notify_climb_rate_trampoline::<Self, F> as usize)), 823 Box_::into_raw(f), 824 ) 825 } 826 } 827 connect_property_digits_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId828 fn connect_property_digits_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId { 829 unsafe extern "C" fn notify_digits_trampoline<P, F: Fn(&P) + 'static>( 830 this: *mut gtk_sys::GtkCellRendererSpin, 831 _param_spec: glib_sys::gpointer, 832 f: glib_sys::gpointer, 833 ) where 834 P: IsA<CellRendererSpin>, 835 { 836 let f: &F = &*(f as *const F); 837 f(&CellRendererSpin::from_glib_borrow(this).unsafe_cast()) 838 } 839 unsafe { 840 let f: Box_<F> = Box_::new(f); 841 connect_raw( 842 self.as_ptr() as *mut _, 843 b"notify::digits\0".as_ptr() as *const _, 844 Some(transmute(notify_digits_trampoline::<Self, F> as usize)), 845 Box_::into_raw(f), 846 ) 847 } 848 } 849 } 850 851 impl fmt::Display for CellRendererSpin { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result852 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 853 write!(f, "CellRendererSpin") 854 } 855 } 856