1#![allow(deprecated)]
5
6use crate::{
7 ffi, Accessible, AccessibleRole, Align, Buildable, CellEditable, ConstraintTarget, Editable,
8 EntryBuffer, EntryCompletion, EntryIconPosition, ImageType, InputHints, InputPurpose,
9 LayoutManager, Overflow, Widget,
10};
11use glib::{
12 object::ObjectType as _,
13 prelude::*,
14 signal::{connect_raw, SignalHandlerId},
15 translate::*,
16};
17use std::boxed::Box as Box_;
18
19glib::wrapper! {
20 #[doc(alias = "GtkEntry")]
21 pub struct Entry(Object<ffi::GtkEntry, ffi::GtkEntryClass>) @extends Widget, @implements Accessible, Buildable, ConstraintTarget, CellEditable, Editable;
22
23 match fn {
24 type_ => || ffi::gtk_entry_get_type(),
25 }
26}
27
28impl Entry {
29 pub const NONE: Option<&'static Entry> = None;
30
31 #[doc(alias = "gtk_entry_new")]
32 pub fn new() -> Entry {
33 assert_initialized_main_thread!();
34 unsafe { Widget::from_glib_none(ffi::gtk_entry_new()).unsafe_cast() }
35 }
36
37 #[doc(alias = "gtk_entry_new_with_buffer")]
38 #[doc(alias = "new_with_buffer")]
39 pub fn with_buffer(buffer: &impl IsA<EntryBuffer>) -> Entry {
40 skip_assert_initialized!();
41 unsafe {
42 Widget::from_glib_none(ffi::gtk_entry_new_with_buffer(
43 buffer.as_ref().to_glib_none().0,
44 ))
45 .unsafe_cast()
46 }
47 }
48
49 pub fn builder() -> EntryBuilder {
54 EntryBuilder::new()
55 }
56}
57
58impl Default for Entry {
59 fn default() -> Self {
60 Self::new()
61 }
62}
63
64#[must_use = "The builder must be built to be used"]
69pub struct EntryBuilder {
70 builder: glib::object::ObjectBuilder<'static, Entry>,
71}
72
73impl EntryBuilder {
74 fn new() -> Self {
75 Self {
76 builder: glib::object::Object::builder(),
77 }
78 }
79
80 pub fn activates_default(self, activates_default: bool) -> Self {
81 Self {
82 builder: self
83 .builder
84 .property("activates-default", activates_default),
85 }
86 }
87
88 pub fn attributes(self, attributes: &pango::AttrList) -> Self {
89 Self {
90 builder: self.builder.property("attributes", attributes.clone()),
91 }
92 }
93
94 pub fn buffer(self, buffer: &impl IsA<EntryBuffer>) -> Self {
95 Self {
96 builder: self.builder.property("buffer", buffer.clone().upcast()),
97 }
98 }
99
100 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
101 pub fn completion(self, completion: &EntryCompletion) -> Self {
102 Self {
103 builder: self.builder.property("completion", completion.clone()),
104 }
105 }
106
107 pub fn enable_emoji_completion(self, enable_emoji_completion: bool) -> Self {
108 Self {
109 builder: self
110 .builder
111 .property("enable-emoji-completion", enable_emoji_completion),
112 }
113 }
114
115 pub fn extra_menu(self, extra_menu: &impl IsA<gio::MenuModel>) -> Self {
116 Self {
117 builder: self
118 .builder
119 .property("extra-menu", extra_menu.clone().upcast()),
120 }
121 }
122
123 pub fn has_frame(self, has_frame: bool) -> Self {
124 Self {
125 builder: self.builder.property("has-frame", has_frame),
126 }
127 }
128
129 pub fn im_module(self, im_module: impl Into<glib::GString>) -> Self {
130 Self {
131 builder: self.builder.property("im-module", im_module.into()),
132 }
133 }
134
135 pub fn input_hints(self, input_hints: InputHints) -> Self {
136 Self {
137 builder: self.builder.property("input-hints", input_hints),
138 }
139 }
140
141 pub fn input_purpose(self, input_purpose: InputPurpose) -> Self {
142 Self {
143 builder: self.builder.property("input-purpose", input_purpose),
144 }
145 }
146
147 pub fn invisible_char(self, invisible_char: u32) -> Self {
148 Self {
149 builder: self.builder.property("invisible-char", invisible_char),
150 }
151 }
152
153 pub fn invisible_char_set(self, invisible_char_set: bool) -> Self {
154 Self {
155 builder: self
156 .builder
157 .property("invisible-char-set", invisible_char_set),
158 }
159 }
160
161 pub fn max_length(self, max_length: i32) -> Self {
162 Self {
163 builder: self.builder.property("max-length", max_length),
164 }
165 }
166
167 #[cfg(feature = "v4_20")]
168 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
169 pub fn menu_entry_icon_primary_text(
170 self,
171 menu_entry_icon_primary_text: impl Into<glib::GString>,
172 ) -> Self {
173 Self {
174 builder: self.builder.property(
175 "menu-entry-icon-primary-text",
176 menu_entry_icon_primary_text.into(),
177 ),
178 }
179 }
180
181 #[cfg(feature = "v4_20")]
182 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
183 pub fn menu_entry_icon_secondary_text(
184 self,
185 menu_entry_icon_secondary_text: impl Into<glib::GString>,
186 ) -> Self {
187 Self {
188 builder: self.builder.property(
189 "menu-entry-icon-secondary-text",
190 menu_entry_icon_secondary_text.into(),
191 ),
192 }
193 }
194
195 pub fn overwrite_mode(self, overwrite_mode: bool) -> Self {
196 Self {
197 builder: self.builder.property("overwrite-mode", overwrite_mode),
198 }
199 }
200
201 pub fn placeholder_text(self, placeholder_text: impl Into<glib::GString>) -> Self {
202 Self {
203 builder: self
204 .builder
205 .property("placeholder-text", placeholder_text.into()),
206 }
207 }
208
209 pub fn primary_icon_activatable(self, primary_icon_activatable: bool) -> Self {
210 Self {
211 builder: self
212 .builder
213 .property("primary-icon-activatable", primary_icon_activatable),
214 }
215 }
216
217 pub fn primary_icon_gicon(self, primary_icon_gicon: &impl IsA<gio::Icon>) -> Self {
218 Self {
219 builder: self
220 .builder
221 .property("primary-icon-gicon", primary_icon_gicon.clone().upcast()),
222 }
223 }
224
225 pub fn primary_icon_name(self, primary_icon_name: impl Into<glib::GString>) -> Self {
226 Self {
227 builder: self
228 .builder
229 .property("primary-icon-name", primary_icon_name.into()),
230 }
231 }
232
233 pub fn primary_icon_paintable(self, primary_icon_paintable: &impl IsA<gdk::Paintable>) -> Self {
234 Self {
235 builder: self.builder.property(
236 "primary-icon-paintable",
237 primary_icon_paintable.clone().upcast(),
238 ),
239 }
240 }
241
242 pub fn primary_icon_sensitive(self, primary_icon_sensitive: bool) -> Self {
243 Self {
244 builder: self
245 .builder
246 .property("primary-icon-sensitive", primary_icon_sensitive),
247 }
248 }
249
250 pub fn primary_icon_tooltip_markup(
251 self,
252 primary_icon_tooltip_markup: impl Into<glib::GString>,
253 ) -> Self {
254 Self {
255 builder: self.builder.property(
256 "primary-icon-tooltip-markup",
257 primary_icon_tooltip_markup.into(),
258 ),
259 }
260 }
261
262 pub fn primary_icon_tooltip_text(
263 self,
264 primary_icon_tooltip_text: impl Into<glib::GString>,
265 ) -> Self {
266 Self {
267 builder: self.builder.property(
268 "primary-icon-tooltip-text",
269 primary_icon_tooltip_text.into(),
270 ),
271 }
272 }
273
274 pub fn progress_fraction(self, progress_fraction: f64) -> Self {
275 Self {
276 builder: self
277 .builder
278 .property("progress-fraction", progress_fraction),
279 }
280 }
281
282 pub fn progress_pulse_step(self, progress_pulse_step: f64) -> Self {
283 Self {
284 builder: self
285 .builder
286 .property("progress-pulse-step", progress_pulse_step),
287 }
288 }
289
290 pub fn secondary_icon_activatable(self, secondary_icon_activatable: bool) -> Self {
291 Self {
292 builder: self
293 .builder
294 .property("secondary-icon-activatable", secondary_icon_activatable),
295 }
296 }
297
298 pub fn secondary_icon_gicon(self, secondary_icon_gicon: &impl IsA<gio::Icon>) -> Self {
299 Self {
300 builder: self.builder.property(
301 "secondary-icon-gicon",
302 secondary_icon_gicon.clone().upcast(),
303 ),
304 }
305 }
306
307 pub fn secondary_icon_name(self, secondary_icon_name: impl Into<glib::GString>) -> Self {
308 Self {
309 builder: self
310 .builder
311 .property("secondary-icon-name", secondary_icon_name.into()),
312 }
313 }
314
315 pub fn secondary_icon_paintable(
316 self,
317 secondary_icon_paintable: &impl IsA<gdk::Paintable>,
318 ) -> Self {
319 Self {
320 builder: self.builder.property(
321 "secondary-icon-paintable",
322 secondary_icon_paintable.clone().upcast(),
323 ),
324 }
325 }
326
327 pub fn secondary_icon_sensitive(self, secondary_icon_sensitive: bool) -> Self {
328 Self {
329 builder: self
330 .builder
331 .property("secondary-icon-sensitive", secondary_icon_sensitive),
332 }
333 }
334
335 pub fn secondary_icon_tooltip_markup(
336 self,
337 secondary_icon_tooltip_markup: impl Into<glib::GString>,
338 ) -> Self {
339 Self {
340 builder: self.builder.property(
341 "secondary-icon-tooltip-markup",
342 secondary_icon_tooltip_markup.into(),
343 ),
344 }
345 }
346
347 pub fn secondary_icon_tooltip_text(
348 self,
349 secondary_icon_tooltip_text: impl Into<glib::GString>,
350 ) -> Self {
351 Self {
352 builder: self.builder.property(
353 "secondary-icon-tooltip-text",
354 secondary_icon_tooltip_text.into(),
355 ),
356 }
357 }
358
359 pub fn show_emoji_icon(self, show_emoji_icon: bool) -> Self {
360 Self {
361 builder: self.builder.property("show-emoji-icon", show_emoji_icon),
362 }
363 }
364
365 pub fn tabs(self, tabs: &pango::TabArray) -> Self {
366 Self {
367 builder: self.builder.property("tabs", tabs),
368 }
369 }
370
371 pub fn truncate_multiline(self, truncate_multiline: bool) -> Self {
372 Self {
373 builder: self
374 .builder
375 .property("truncate-multiline", truncate_multiline),
376 }
377 }
378
379 pub fn visibility(self, visibility: bool) -> Self {
380 Self {
381 builder: self.builder.property("visibility", visibility),
382 }
383 }
384
385 pub fn can_focus(self, can_focus: bool) -> Self {
386 Self {
387 builder: self.builder.property("can-focus", can_focus),
388 }
389 }
390
391 pub fn can_target(self, can_target: bool) -> Self {
392 Self {
393 builder: self.builder.property("can-target", can_target),
394 }
395 }
396
397 pub fn css_classes(self, css_classes: impl Into<glib::StrV>) -> Self {
398 Self {
399 builder: self.builder.property("css-classes", css_classes.into()),
400 }
401 }
402
403 pub fn css_name(self, css_name: impl Into<glib::GString>) -> Self {
404 Self {
405 builder: self.builder.property("css-name", css_name.into()),
406 }
407 }
408
409 pub fn cursor(self, cursor: &gdk::Cursor) -> Self {
410 Self {
411 builder: self.builder.property("cursor", cursor.clone()),
412 }
413 }
414
415 pub fn focus_on_click(self, focus_on_click: bool) -> Self {
416 Self {
417 builder: self.builder.property("focus-on-click", focus_on_click),
418 }
419 }
420
421 pub fn focusable(self, focusable: bool) -> Self {
422 Self {
423 builder: self.builder.property("focusable", focusable),
424 }
425 }
426
427 pub fn halign(self, halign: Align) -> Self {
428 Self {
429 builder: self.builder.property("halign", halign),
430 }
431 }
432
433 pub fn has_tooltip(self, has_tooltip: bool) -> Self {
434 Self {
435 builder: self.builder.property("has-tooltip", has_tooltip),
436 }
437 }
438
439 pub fn height_request(self, height_request: i32) -> Self {
440 Self {
441 builder: self.builder.property("height-request", height_request),
442 }
443 }
444
445 pub fn hexpand(self, hexpand: bool) -> Self {
446 Self {
447 builder: self.builder.property("hexpand", hexpand),
448 }
449 }
450
451 pub fn hexpand_set(self, hexpand_set: bool) -> Self {
452 Self {
453 builder: self.builder.property("hexpand-set", hexpand_set),
454 }
455 }
456
457 pub fn layout_manager(self, layout_manager: &impl IsA<LayoutManager>) -> Self {
458 Self {
459 builder: self
460 .builder
461 .property("layout-manager", layout_manager.clone().upcast()),
462 }
463 }
464
465 #[cfg(feature = "v4_18")]
466 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
467 pub fn limit_events(self, limit_events: bool) -> Self {
468 Self {
469 builder: self.builder.property("limit-events", limit_events),
470 }
471 }
472
473 pub fn margin_bottom(self, margin_bottom: i32) -> Self {
474 Self {
475 builder: self.builder.property("margin-bottom", margin_bottom),
476 }
477 }
478
479 pub fn margin_end(self, margin_end: i32) -> Self {
480 Self {
481 builder: self.builder.property("margin-end", margin_end),
482 }
483 }
484
485 pub fn margin_start(self, margin_start: i32) -> Self {
486 Self {
487 builder: self.builder.property("margin-start", margin_start),
488 }
489 }
490
491 pub fn margin_top(self, margin_top: i32) -> Self {
492 Self {
493 builder: self.builder.property("margin-top", margin_top),
494 }
495 }
496
497 pub fn name(self, name: impl Into<glib::GString>) -> Self {
498 Self {
499 builder: self.builder.property("name", name.into()),
500 }
501 }
502
503 pub fn opacity(self, opacity: f64) -> Self {
504 Self {
505 builder: self.builder.property("opacity", opacity),
506 }
507 }
508
509 pub fn overflow(self, overflow: Overflow) -> Self {
510 Self {
511 builder: self.builder.property("overflow", overflow),
512 }
513 }
514
515 pub fn receives_default(self, receives_default: bool) -> Self {
516 Self {
517 builder: self.builder.property("receives-default", receives_default),
518 }
519 }
520
521 pub fn sensitive(self, sensitive: bool) -> Self {
522 Self {
523 builder: self.builder.property("sensitive", sensitive),
524 }
525 }
526
527 pub fn tooltip_markup(self, tooltip_markup: impl Into<glib::GString>) -> Self {
528 Self {
529 builder: self
530 .builder
531 .property("tooltip-markup", tooltip_markup.into()),
532 }
533 }
534
535 pub fn tooltip_text(self, tooltip_text: impl Into<glib::GString>) -> Self {
536 Self {
537 builder: self.builder.property("tooltip-text", tooltip_text.into()),
538 }
539 }
540
541 pub fn valign(self, valign: Align) -> Self {
542 Self {
543 builder: self.builder.property("valign", valign),
544 }
545 }
546
547 pub fn vexpand(self, vexpand: bool) -> Self {
548 Self {
549 builder: self.builder.property("vexpand", vexpand),
550 }
551 }
552
553 pub fn vexpand_set(self, vexpand_set: bool) -> Self {
554 Self {
555 builder: self.builder.property("vexpand-set", vexpand_set),
556 }
557 }
558
559 pub fn visible(self, visible: bool) -> Self {
560 Self {
561 builder: self.builder.property("visible", visible),
562 }
563 }
564
565 pub fn width_request(self, width_request: i32) -> Self {
566 Self {
567 builder: self.builder.property("width-request", width_request),
568 }
569 }
570
571 pub fn accessible_role(self, accessible_role: AccessibleRole) -> Self {
572 Self {
573 builder: self.builder.property("accessible-role", accessible_role),
574 }
575 }
576
577 pub fn editing_canceled(self, editing_canceled: bool) -> Self {
578 Self {
579 builder: self.builder.property("editing-canceled", editing_canceled),
580 }
581 }
582
583 pub fn editable(self, editable: bool) -> Self {
584 Self {
585 builder: self.builder.property("editable", editable),
586 }
587 }
588
589 pub fn enable_undo(self, enable_undo: bool) -> Self {
590 Self {
591 builder: self.builder.property("enable-undo", enable_undo),
592 }
593 }
594
595 pub fn max_width_chars(self, max_width_chars: i32) -> Self {
596 Self {
597 builder: self.builder.property("max-width-chars", max_width_chars),
598 }
599 }
600
601 pub fn text(self, text: impl Into<glib::GString>) -> Self {
602 Self {
603 builder: self.builder.property("text", text.into()),
604 }
605 }
606
607 pub fn width_chars(self, width_chars: i32) -> Self {
608 Self {
609 builder: self.builder.property("width-chars", width_chars),
610 }
611 }
612
613 pub fn xalign(self, xalign: f32) -> Self {
614 Self {
615 builder: self.builder.property("xalign", xalign),
616 }
617 }
618
619 #[must_use = "Building the object from the builder is usually expensive and is not expected to have side effects"]
622 pub fn build(self) -> Entry {
623 assert_initialized_main_thread!();
624 self.builder.build()
625 }
626}
627
628pub trait EntryExt: IsA<Entry> + 'static {
629 #[doc(alias = "gtk_entry_get_activates_default")]
630 #[doc(alias = "get_activates_default")]
631 #[doc(alias = "activates-default")]
632 fn activates_default(&self) -> bool {
633 unsafe {
634 from_glib(ffi::gtk_entry_get_activates_default(
635 self.as_ref().to_glib_none().0,
636 ))
637 }
638 }
639
640 #[doc(alias = "gtk_entry_get_alignment")]
641 #[doc(alias = "get_alignment")]
642 fn alignment(&self) -> f32 {
643 unsafe { ffi::gtk_entry_get_alignment(self.as_ref().to_glib_none().0) }
644 }
645
646 #[doc(alias = "gtk_entry_get_attributes")]
647 #[doc(alias = "get_attributes")]
648 fn attributes(&self) -> Option<pango::AttrList> {
649 unsafe {
650 from_glib_none(ffi::gtk_entry_get_attributes(
651 self.as_ref().to_glib_none().0,
652 ))
653 }
654 }
655
656 #[doc(alias = "gtk_entry_get_buffer")]
657 #[doc(alias = "get_buffer")]
658 fn buffer(&self) -> EntryBuffer {
659 unsafe { from_glib_none(ffi::gtk_entry_get_buffer(self.as_ref().to_glib_none().0)) }
660 }
661
662 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
663 #[allow(deprecated)]
664 #[doc(alias = "gtk_entry_get_completion")]
665 #[doc(alias = "get_completion")]
666 fn completion(&self) -> Option<EntryCompletion> {
667 unsafe {
668 from_glib_none(ffi::gtk_entry_get_completion(
669 self.as_ref().to_glib_none().0,
670 ))
671 }
672 }
673
674 #[doc(alias = "gtk_entry_get_current_icon_drag_source")]
675 #[doc(alias = "get_current_icon_drag_source")]
676 fn current_icon_drag_source(&self) -> i32 {
677 unsafe { ffi::gtk_entry_get_current_icon_drag_source(self.as_ref().to_glib_none().0) }
678 }
679
680 #[doc(alias = "gtk_entry_get_extra_menu")]
681 #[doc(alias = "get_extra_menu")]
682 #[doc(alias = "extra-menu")]
683 fn extra_menu(&self) -> Option<gio::MenuModel> {
684 unsafe {
685 from_glib_none(ffi::gtk_entry_get_extra_menu(
686 self.as_ref().to_glib_none().0,
687 ))
688 }
689 }
690
691 #[doc(alias = "gtk_entry_get_has_frame")]
692 #[doc(alias = "get_has_frame")]
693 #[doc(alias = "has-frame")]
694 fn has_frame(&self) -> bool {
695 unsafe { from_glib(ffi::gtk_entry_get_has_frame(self.as_ref().to_glib_none().0)) }
696 }
697
698 #[doc(alias = "gtk_entry_get_icon_activatable")]
699 #[doc(alias = "get_icon_activatable")]
700 fn icon_is_activatable(&self, icon_pos: EntryIconPosition) -> bool {
701 unsafe {
702 from_glib(ffi::gtk_entry_get_icon_activatable(
703 self.as_ref().to_glib_none().0,
704 icon_pos.into_glib(),
705 ))
706 }
707 }
708
709 #[doc(alias = "gtk_entry_get_icon_area")]
710 #[doc(alias = "get_icon_area")]
711 fn icon_area(&self, icon_pos: EntryIconPosition) -> gdk::Rectangle {
712 unsafe {
713 let mut icon_area = gdk::Rectangle::uninitialized();
714 ffi::gtk_entry_get_icon_area(
715 self.as_ref().to_glib_none().0,
716 icon_pos.into_glib(),
717 icon_area.to_glib_none_mut().0,
718 );
719 icon_area
720 }
721 }
722
723 #[doc(alias = "gtk_entry_get_icon_at_pos")]
724 #[doc(alias = "get_icon_at_pos")]
725 fn icon_at_pos(&self, x: i32, y: i32) -> i32 {
726 unsafe { ffi::gtk_entry_get_icon_at_pos(self.as_ref().to_glib_none().0, x, y) }
727 }
728
729 #[doc(alias = "gtk_entry_get_icon_gicon")]
730 #[doc(alias = "get_icon_gicon")]
731 fn icon_gicon(&self, icon_pos: EntryIconPosition) -> Option<gio::Icon> {
732 unsafe {
733 from_glib_none(ffi::gtk_entry_get_icon_gicon(
734 self.as_ref().to_glib_none().0,
735 icon_pos.into_glib(),
736 ))
737 }
738 }
739
740 #[doc(alias = "gtk_entry_get_icon_name")]
741 #[doc(alias = "get_icon_name")]
742 fn icon_name(&self, icon_pos: EntryIconPosition) -> Option<glib::GString> {
743 unsafe {
744 from_glib_none(ffi::gtk_entry_get_icon_name(
745 self.as_ref().to_glib_none().0,
746 icon_pos.into_glib(),
747 ))
748 }
749 }
750
751 #[doc(alias = "gtk_entry_get_icon_paintable")]
752 #[doc(alias = "get_icon_paintable")]
753 fn icon_paintable(&self, icon_pos: EntryIconPosition) -> Option<gdk::Paintable> {
754 unsafe {
755 from_glib_none(ffi::gtk_entry_get_icon_paintable(
756 self.as_ref().to_glib_none().0,
757 icon_pos.into_glib(),
758 ))
759 }
760 }
761
762 #[doc(alias = "gtk_entry_get_icon_sensitive")]
763 #[doc(alias = "get_icon_sensitive")]
764 fn icon_is_sensitive(&self, icon_pos: EntryIconPosition) -> bool {
765 unsafe {
766 from_glib(ffi::gtk_entry_get_icon_sensitive(
767 self.as_ref().to_glib_none().0,
768 icon_pos.into_glib(),
769 ))
770 }
771 }
772
773 #[doc(alias = "gtk_entry_get_icon_storage_type")]
774 #[doc(alias = "get_icon_storage_type")]
775 fn icon_storage_type(&self, icon_pos: EntryIconPosition) -> ImageType {
776 unsafe {
777 from_glib(ffi::gtk_entry_get_icon_storage_type(
778 self.as_ref().to_glib_none().0,
779 icon_pos.into_glib(),
780 ))
781 }
782 }
783
784 #[doc(alias = "gtk_entry_get_icon_tooltip_markup")]
785 #[doc(alias = "get_icon_tooltip_markup")]
786 fn icon_tooltip_markup(&self, icon_pos: EntryIconPosition) -> Option<glib::GString> {
787 unsafe {
788 from_glib_full(ffi::gtk_entry_get_icon_tooltip_markup(
789 self.as_ref().to_glib_none().0,
790 icon_pos.into_glib(),
791 ))
792 }
793 }
794
795 #[doc(alias = "gtk_entry_get_icon_tooltip_text")]
796 #[doc(alias = "get_icon_tooltip_text")]
797 fn icon_tooltip_text(&self, icon_pos: EntryIconPosition) -> Option<glib::GString> {
798 unsafe {
799 from_glib_full(ffi::gtk_entry_get_icon_tooltip_text(
800 self.as_ref().to_glib_none().0,
801 icon_pos.into_glib(),
802 ))
803 }
804 }
805
806 #[doc(alias = "gtk_entry_get_input_hints")]
807 #[doc(alias = "get_input_hints")]
808 #[doc(alias = "input-hints")]
809 fn input_hints(&self) -> InputHints {
810 unsafe {
811 from_glib(ffi::gtk_entry_get_input_hints(
812 self.as_ref().to_glib_none().0,
813 ))
814 }
815 }
816
817 #[doc(alias = "gtk_entry_get_input_purpose")]
818 #[doc(alias = "get_input_purpose")]
819 #[doc(alias = "input-purpose")]
820 fn input_purpose(&self) -> InputPurpose {
821 unsafe {
822 from_glib(ffi::gtk_entry_get_input_purpose(
823 self.as_ref().to_glib_none().0,
824 ))
825 }
826 }
827
828 #[doc(alias = "gtk_entry_get_max_length")]
829 #[doc(alias = "get_max_length")]
830 #[doc(alias = "max-length")]
831 fn max_length(&self) -> i32 {
832 unsafe { ffi::gtk_entry_get_max_length(self.as_ref().to_glib_none().0) }
833 }
834
835 #[cfg(feature = "v4_20")]
836 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
837 #[doc(alias = "gtk_entry_get_menu_entry_icon_text")]
838 #[doc(alias = "get_menu_entry_icon_text")]
839 fn menu_entry_icon_text(&self, icon_pos: EntryIconPosition) -> Option<glib::GString> {
840 unsafe {
841 from_glib_none(ffi::gtk_entry_get_menu_entry_icon_text(
842 self.as_ref().to_glib_none().0,
843 icon_pos.into_glib(),
844 ))
845 }
846 }
847
848 #[doc(alias = "gtk_entry_get_overwrite_mode")]
849 #[doc(alias = "get_overwrite_mode")]
850 #[doc(alias = "overwrite-mode")]
851 fn is_overwrite_mode(&self) -> bool {
852 unsafe {
853 from_glib(ffi::gtk_entry_get_overwrite_mode(
854 self.as_ref().to_glib_none().0,
855 ))
856 }
857 }
858
859 #[doc(alias = "gtk_entry_get_placeholder_text")]
860 #[doc(alias = "get_placeholder_text")]
861 #[doc(alias = "placeholder-text")]
862 fn placeholder_text(&self) -> Option<glib::GString> {
863 unsafe {
864 from_glib_none(ffi::gtk_entry_get_placeholder_text(
865 self.as_ref().to_glib_none().0,
866 ))
867 }
868 }
869
870 #[doc(alias = "gtk_entry_get_progress_fraction")]
871 #[doc(alias = "get_progress_fraction")]
872 #[doc(alias = "progress-fraction")]
873 fn progress_fraction(&self) -> f64 {
874 unsafe { ffi::gtk_entry_get_progress_fraction(self.as_ref().to_glib_none().0) }
875 }
876
877 #[doc(alias = "gtk_entry_get_progress_pulse_step")]
878 #[doc(alias = "get_progress_pulse_step")]
879 #[doc(alias = "progress-pulse-step")]
880 fn progress_pulse_step(&self) -> f64 {
881 unsafe { ffi::gtk_entry_get_progress_pulse_step(self.as_ref().to_glib_none().0) }
882 }
883
884 #[doc(alias = "gtk_entry_get_tabs")]
885 #[doc(alias = "get_tabs")]
886 fn tabs(&self) -> Option<pango::TabArray> {
887 unsafe { from_glib_none(ffi::gtk_entry_get_tabs(self.as_ref().to_glib_none().0)) }
888 }
889
890 #[doc(alias = "gtk_entry_get_text_length")]
891 #[doc(alias = "get_text_length")]
892 #[doc(alias = "text-length")]
893 fn text_length(&self) -> u16 {
894 unsafe { ffi::gtk_entry_get_text_length(self.as_ref().to_glib_none().0) }
895 }
896
897 #[doc(alias = "gtk_entry_get_visibility")]
898 #[doc(alias = "get_visibility")]
899 #[doc(alias = "visibility")]
900 fn is_visible(&self) -> bool {
901 unsafe {
902 from_glib(ffi::gtk_entry_get_visibility(
903 self.as_ref().to_glib_none().0,
904 ))
905 }
906 }
907
908 #[doc(alias = "gtk_entry_grab_focus_without_selecting")]
909 fn grab_focus_without_selecting(&self) -> bool {
910 unsafe {
911 from_glib(ffi::gtk_entry_grab_focus_without_selecting(
912 self.as_ref().to_glib_none().0,
913 ))
914 }
915 }
916
917 #[doc(alias = "gtk_entry_progress_pulse")]
918 fn progress_pulse(&self) {
919 unsafe {
920 ffi::gtk_entry_progress_pulse(self.as_ref().to_glib_none().0);
921 }
922 }
923
924 #[doc(alias = "gtk_entry_reset_im_context")]
925 fn reset_im_context(&self) {
926 unsafe {
927 ffi::gtk_entry_reset_im_context(self.as_ref().to_glib_none().0);
928 }
929 }
930
931 #[doc(alias = "gtk_entry_set_activates_default")]
932 #[doc(alias = "activates-default")]
933 fn set_activates_default(&self, setting: bool) {
934 unsafe {
935 ffi::gtk_entry_set_activates_default(
936 self.as_ref().to_glib_none().0,
937 setting.into_glib(),
938 );
939 }
940 }
941
942 #[doc(alias = "gtk_entry_set_alignment")]
943 fn set_alignment(&self, xalign: f32) {
944 unsafe {
945 ffi::gtk_entry_set_alignment(self.as_ref().to_glib_none().0, xalign);
946 }
947 }
948
949 #[doc(alias = "gtk_entry_set_attributes")]
950 #[doc(alias = "attributes")]
951 fn set_attributes(&self, attrs: &pango::AttrList) {
952 unsafe {
953 ffi::gtk_entry_set_attributes(self.as_ref().to_glib_none().0, attrs.to_glib_none().0);
954 }
955 }
956
957 #[doc(alias = "gtk_entry_set_buffer")]
958 #[doc(alias = "buffer")]
959 fn set_buffer(&self, buffer: &impl IsA<EntryBuffer>) {
960 unsafe {
961 ffi::gtk_entry_set_buffer(
962 self.as_ref().to_glib_none().0,
963 buffer.as_ref().to_glib_none().0,
964 );
965 }
966 }
967
968 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
969 #[allow(deprecated)]
970 #[doc(alias = "gtk_entry_set_completion")]
971 #[doc(alias = "completion")]
972 fn set_completion(&self, completion: Option<&EntryCompletion>) {
973 unsafe {
974 ffi::gtk_entry_set_completion(
975 self.as_ref().to_glib_none().0,
976 completion.to_glib_none().0,
977 );
978 }
979 }
980
981 #[doc(alias = "gtk_entry_set_extra_menu")]
982 #[doc(alias = "extra-menu")]
983 fn set_extra_menu(&self, model: Option<&impl IsA<gio::MenuModel>>) {
984 unsafe {
985 ffi::gtk_entry_set_extra_menu(
986 self.as_ref().to_glib_none().0,
987 model.map(|p| p.as_ref()).to_glib_none().0,
988 );
989 }
990 }
991
992 #[doc(alias = "gtk_entry_set_has_frame")]
993 #[doc(alias = "has-frame")]
994 fn set_has_frame(&self, setting: bool) {
995 unsafe {
996 ffi::gtk_entry_set_has_frame(self.as_ref().to_glib_none().0, setting.into_glib());
997 }
998 }
999
1000 #[doc(alias = "gtk_entry_set_icon_activatable")]
1001 fn set_icon_activatable(&self, icon_pos: EntryIconPosition, activatable: bool) {
1002 unsafe {
1003 ffi::gtk_entry_set_icon_activatable(
1004 self.as_ref().to_glib_none().0,
1005 icon_pos.into_glib(),
1006 activatable.into_glib(),
1007 );
1008 }
1009 }
1010
1011 #[doc(alias = "gtk_entry_set_icon_drag_source")]
1012 fn set_icon_drag_source(
1013 &self,
1014 icon_pos: EntryIconPosition,
1015 provider: &impl IsA<gdk::ContentProvider>,
1016 actions: gdk::DragAction,
1017 ) {
1018 unsafe {
1019 ffi::gtk_entry_set_icon_drag_source(
1020 self.as_ref().to_glib_none().0,
1021 icon_pos.into_glib(),
1022 provider.as_ref().to_glib_none().0,
1023 actions.into_glib(),
1024 );
1025 }
1026 }
1027
1028 #[doc(alias = "gtk_entry_set_icon_from_gicon")]
1029 fn set_icon_from_gicon(&self, icon_pos: EntryIconPosition, icon: Option<&impl IsA<gio::Icon>>) {
1030 unsafe {
1031 ffi::gtk_entry_set_icon_from_gicon(
1032 self.as_ref().to_glib_none().0,
1033 icon_pos.into_glib(),
1034 icon.map(|p| p.as_ref()).to_glib_none().0,
1035 );
1036 }
1037 }
1038
1039 #[doc(alias = "gtk_entry_set_icon_from_icon_name")]
1040 fn set_icon_from_icon_name(&self, icon_pos: EntryIconPosition, icon_name: Option<&str>) {
1041 unsafe {
1042 ffi::gtk_entry_set_icon_from_icon_name(
1043 self.as_ref().to_glib_none().0,
1044 icon_pos.into_glib(),
1045 icon_name.to_glib_none().0,
1046 );
1047 }
1048 }
1049
1050 #[doc(alias = "gtk_entry_set_icon_from_paintable")]
1051 fn set_icon_from_paintable(
1052 &self,
1053 icon_pos: EntryIconPosition,
1054 paintable: Option<&impl IsA<gdk::Paintable>>,
1055 ) {
1056 unsafe {
1057 ffi::gtk_entry_set_icon_from_paintable(
1058 self.as_ref().to_glib_none().0,
1059 icon_pos.into_glib(),
1060 paintable.map(|p| p.as_ref()).to_glib_none().0,
1061 );
1062 }
1063 }
1064
1065 #[doc(alias = "gtk_entry_set_icon_sensitive")]
1066 fn set_icon_sensitive(&self, icon_pos: EntryIconPosition, sensitive: bool) {
1067 unsafe {
1068 ffi::gtk_entry_set_icon_sensitive(
1069 self.as_ref().to_glib_none().0,
1070 icon_pos.into_glib(),
1071 sensitive.into_glib(),
1072 );
1073 }
1074 }
1075
1076 #[doc(alias = "gtk_entry_set_icon_tooltip_markup")]
1077 fn set_icon_tooltip_markup(&self, icon_pos: EntryIconPosition, tooltip: Option<&str>) {
1078 unsafe {
1079 ffi::gtk_entry_set_icon_tooltip_markup(
1080 self.as_ref().to_glib_none().0,
1081 icon_pos.into_glib(),
1082 tooltip.to_glib_none().0,
1083 );
1084 }
1085 }
1086
1087 #[doc(alias = "gtk_entry_set_icon_tooltip_text")]
1088 fn set_icon_tooltip_text(&self, icon_pos: EntryIconPosition, tooltip: Option<&str>) {
1089 unsafe {
1090 ffi::gtk_entry_set_icon_tooltip_text(
1091 self.as_ref().to_glib_none().0,
1092 icon_pos.into_glib(),
1093 tooltip.to_glib_none().0,
1094 );
1095 }
1096 }
1097
1098 #[doc(alias = "gtk_entry_set_input_hints")]
1099 #[doc(alias = "input-hints")]
1100 fn set_input_hints(&self, hints: InputHints) {
1101 unsafe {
1102 ffi::gtk_entry_set_input_hints(self.as_ref().to_glib_none().0, hints.into_glib());
1103 }
1104 }
1105
1106 #[doc(alias = "gtk_entry_set_input_purpose")]
1107 #[doc(alias = "input-purpose")]
1108 fn set_input_purpose(&self, purpose: InputPurpose) {
1109 unsafe {
1110 ffi::gtk_entry_set_input_purpose(self.as_ref().to_glib_none().0, purpose.into_glib());
1111 }
1112 }
1113
1114 #[doc(alias = "gtk_entry_set_invisible_char")]
1115 #[doc(alias = "invisible-char")]
1116 fn set_invisible_char(&self, ch: Option<char>) {
1117 unsafe {
1118 ffi::gtk_entry_set_invisible_char(self.as_ref().to_glib_none().0, ch.into_glib());
1119 }
1120 }
1121
1122 #[doc(alias = "gtk_entry_set_max_length")]
1123 #[doc(alias = "max-length")]
1124 fn set_max_length(&self, max: i32) {
1125 unsafe {
1126 ffi::gtk_entry_set_max_length(self.as_ref().to_glib_none().0, max);
1127 }
1128 }
1129
1130 #[cfg(feature = "v4_20")]
1131 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1132 #[doc(alias = "gtk_entry_set_menu_entry_icon_text")]
1133 fn set_menu_entry_icon_text(&self, icon_pos: EntryIconPosition, text: &str) {
1134 unsafe {
1135 ffi::gtk_entry_set_menu_entry_icon_text(
1136 self.as_ref().to_glib_none().0,
1137 icon_pos.into_glib(),
1138 text.to_glib_none().0,
1139 );
1140 }
1141 }
1142
1143 #[doc(alias = "gtk_entry_set_overwrite_mode")]
1144 #[doc(alias = "overwrite-mode")]
1145 fn set_overwrite_mode(&self, overwrite: bool) {
1146 unsafe {
1147 ffi::gtk_entry_set_overwrite_mode(
1148 self.as_ref().to_glib_none().0,
1149 overwrite.into_glib(),
1150 );
1151 }
1152 }
1153
1154 #[doc(alias = "gtk_entry_set_placeholder_text")]
1155 #[doc(alias = "placeholder-text")]
1156 fn set_placeholder_text(&self, text: Option<&str>) {
1157 unsafe {
1158 ffi::gtk_entry_set_placeholder_text(
1159 self.as_ref().to_glib_none().0,
1160 text.to_glib_none().0,
1161 );
1162 }
1163 }
1164
1165 #[doc(alias = "gtk_entry_set_progress_fraction")]
1166 #[doc(alias = "progress-fraction")]
1167 fn set_progress_fraction(&self, fraction: f64) {
1168 unsafe {
1169 ffi::gtk_entry_set_progress_fraction(self.as_ref().to_glib_none().0, fraction);
1170 }
1171 }
1172
1173 #[doc(alias = "gtk_entry_set_progress_pulse_step")]
1174 #[doc(alias = "progress-pulse-step")]
1175 fn set_progress_pulse_step(&self, fraction: f64) {
1176 unsafe {
1177 ffi::gtk_entry_set_progress_pulse_step(self.as_ref().to_glib_none().0, fraction);
1178 }
1179 }
1180
1181 #[doc(alias = "gtk_entry_set_tabs")]
1182 #[doc(alias = "tabs")]
1183 fn set_tabs(&self, tabs: Option<&pango::TabArray>) {
1184 unsafe {
1185 ffi::gtk_entry_set_tabs(
1186 self.as_ref().to_glib_none().0,
1187 mut_override(tabs.to_glib_none().0),
1188 );
1189 }
1190 }
1191
1192 #[doc(alias = "gtk_entry_set_visibility")]
1193 #[doc(alias = "visibility")]
1194 fn set_visibility(&self, visible: bool) {
1195 unsafe {
1196 ffi::gtk_entry_set_visibility(self.as_ref().to_glib_none().0, visible.into_glib());
1197 }
1198 }
1199
1200 #[doc(alias = "gtk_entry_unset_invisible_char")]
1201 fn unset_invisible_char(&self) {
1202 unsafe {
1203 ffi::gtk_entry_unset_invisible_char(self.as_ref().to_glib_none().0);
1204 }
1205 }
1206
1207 #[doc(alias = "enable-emoji-completion")]
1208 fn enables_emoji_completion(&self) -> bool {
1209 ObjectExt::property(self.as_ref(), "enable-emoji-completion")
1210 }
1211
1212 #[doc(alias = "enable-emoji-completion")]
1213 fn set_enable_emoji_completion(&self, enable_emoji_completion: bool) {
1214 ObjectExt::set_property(
1215 self.as_ref(),
1216 "enable-emoji-completion",
1217 enable_emoji_completion,
1218 )
1219 }
1220
1221 #[doc(alias = "im-module")]
1222 fn im_module(&self) -> Option<glib::GString> {
1223 ObjectExt::property(self.as_ref(), "im-module")
1224 }
1225
1226 #[doc(alias = "im-module")]
1227 fn set_im_module(&self, im_module: Option<&str>) {
1228 ObjectExt::set_property(self.as_ref(), "im-module", im_module)
1229 }
1230
1231 #[doc(alias = "invisible-char-set")]
1232 fn is_invisible_char_set(&self) -> bool {
1233 ObjectExt::property(self.as_ref(), "invisible-char-set")
1234 }
1235
1236 #[cfg(feature = "v4_20")]
1237 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1238 #[doc(alias = "menu-entry-icon-primary-text")]
1239 fn menu_entry_icon_primary_text(&self) -> Option<glib::GString> {
1240 ObjectExt::property(self.as_ref(), "menu-entry-icon-primary-text")
1241 }
1242
1243 #[cfg(feature = "v4_20")]
1244 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1245 #[doc(alias = "menu-entry-icon-primary-text")]
1246 fn set_menu_entry_icon_primary_text(&self, menu_entry_icon_primary_text: Option<&str>) {
1247 ObjectExt::set_property(
1248 self.as_ref(),
1249 "menu-entry-icon-primary-text",
1250 menu_entry_icon_primary_text,
1251 )
1252 }
1253
1254 #[cfg(feature = "v4_20")]
1255 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1256 #[doc(alias = "menu-entry-icon-secondary-text")]
1257 fn menu_entry_icon_secondary_text(&self) -> Option<glib::GString> {
1258 ObjectExt::property(self.as_ref(), "menu-entry-icon-secondary-text")
1259 }
1260
1261 #[cfg(feature = "v4_20")]
1262 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1263 #[doc(alias = "menu-entry-icon-secondary-text")]
1264 fn set_menu_entry_icon_secondary_text(&self, menu_entry_icon_secondary_text: Option<&str>) {
1265 ObjectExt::set_property(
1266 self.as_ref(),
1267 "menu-entry-icon-secondary-text",
1268 menu_entry_icon_secondary_text,
1269 )
1270 }
1271
1272 #[doc(alias = "primary-icon-activatable")]
1273 fn is_primary_icon_activatable(&self) -> bool {
1274 ObjectExt::property(self.as_ref(), "primary-icon-activatable")
1275 }
1276
1277 #[doc(alias = "primary-icon-activatable")]
1278 fn set_primary_icon_activatable(&self, primary_icon_activatable: bool) {
1279 ObjectExt::set_property(
1280 self.as_ref(),
1281 "primary-icon-activatable",
1282 primary_icon_activatable,
1283 )
1284 }
1285
1286 #[doc(alias = "primary-icon-gicon")]
1287 fn primary_icon_gicon(&self) -> Option<gio::Icon> {
1288 ObjectExt::property(self.as_ref(), "primary-icon-gicon")
1289 }
1290
1291 #[doc(alias = "primary-icon-gicon")]
1292 fn set_primary_icon_gicon<P: IsA<gio::Icon>>(&self, primary_icon_gicon: Option<&P>) {
1293 ObjectExt::set_property(self.as_ref(), "primary-icon-gicon", primary_icon_gicon)
1294 }
1295
1296 #[doc(alias = "primary-icon-name")]
1297 fn primary_icon_name(&self) -> Option<glib::GString> {
1298 ObjectExt::property(self.as_ref(), "primary-icon-name")
1299 }
1300
1301 #[doc(alias = "primary-icon-name")]
1302 fn set_primary_icon_name(&self, primary_icon_name: Option<&str>) {
1303 ObjectExt::set_property(self.as_ref(), "primary-icon-name", primary_icon_name)
1304 }
1305
1306 #[doc(alias = "primary-icon-paintable")]
1307 fn primary_icon_paintable(&self) -> Option<gdk::Paintable> {
1308 ObjectExt::property(self.as_ref(), "primary-icon-paintable")
1309 }
1310
1311 #[doc(alias = "primary-icon-paintable")]
1312 fn set_primary_icon_paintable<P: IsA<gdk::Paintable>>(
1313 &self,
1314 primary_icon_paintable: Option<&P>,
1315 ) {
1316 ObjectExt::set_property(
1317 self.as_ref(),
1318 "primary-icon-paintable",
1319 primary_icon_paintable,
1320 )
1321 }
1322
1323 #[doc(alias = "primary-icon-sensitive")]
1324 fn is_primary_icon_sensitive(&self) -> bool {
1325 ObjectExt::property(self.as_ref(), "primary-icon-sensitive")
1326 }
1327
1328 #[doc(alias = "primary-icon-sensitive")]
1329 fn set_primary_icon_sensitive(&self, primary_icon_sensitive: bool) {
1330 ObjectExt::set_property(
1331 self.as_ref(),
1332 "primary-icon-sensitive",
1333 primary_icon_sensitive,
1334 )
1335 }
1336
1337 #[doc(alias = "primary-icon-storage-type")]
1338 fn primary_icon_storage_type(&self) -> ImageType {
1339 ObjectExt::property(self.as_ref(), "primary-icon-storage-type")
1340 }
1341
1342 #[doc(alias = "primary-icon-tooltip-markup")]
1343 fn primary_icon_tooltip_markup(&self) -> Option<glib::GString> {
1344 ObjectExt::property(self.as_ref(), "primary-icon-tooltip-markup")
1345 }
1346
1347 #[doc(alias = "primary-icon-tooltip-markup")]
1348 fn set_primary_icon_tooltip_markup(&self, primary_icon_tooltip_markup: Option<&str>) {
1349 ObjectExt::set_property(
1350 self.as_ref(),
1351 "primary-icon-tooltip-markup",
1352 primary_icon_tooltip_markup,
1353 )
1354 }
1355
1356 #[doc(alias = "primary-icon-tooltip-text")]
1357 fn primary_icon_tooltip_text(&self) -> Option<glib::GString> {
1358 ObjectExt::property(self.as_ref(), "primary-icon-tooltip-text")
1359 }
1360
1361 #[doc(alias = "primary-icon-tooltip-text")]
1362 fn set_primary_icon_tooltip_text(&self, primary_icon_tooltip_text: Option<&str>) {
1363 ObjectExt::set_property(
1364 self.as_ref(),
1365 "primary-icon-tooltip-text",
1366 primary_icon_tooltip_text,
1367 )
1368 }
1369
1370 #[doc(alias = "scroll-offset")]
1371 fn scroll_offset(&self) -> i32 {
1372 ObjectExt::property(self.as_ref(), "scroll-offset")
1373 }
1374
1375 #[doc(alias = "secondary-icon-activatable")]
1376 fn is_secondary_icon_activatable(&self) -> bool {
1377 ObjectExt::property(self.as_ref(), "secondary-icon-activatable")
1378 }
1379
1380 #[doc(alias = "secondary-icon-activatable")]
1381 fn set_secondary_icon_activatable(&self, secondary_icon_activatable: bool) {
1382 ObjectExt::set_property(
1383 self.as_ref(),
1384 "secondary-icon-activatable",
1385 secondary_icon_activatable,
1386 )
1387 }
1388
1389 #[doc(alias = "secondary-icon-gicon")]
1390 fn secondary_icon_gicon(&self) -> Option<gio::Icon> {
1391 ObjectExt::property(self.as_ref(), "secondary-icon-gicon")
1392 }
1393
1394 #[doc(alias = "secondary-icon-gicon")]
1395 fn set_secondary_icon_gicon<P: IsA<gio::Icon>>(&self, secondary_icon_gicon: Option<&P>) {
1396 ObjectExt::set_property(self.as_ref(), "secondary-icon-gicon", secondary_icon_gicon)
1397 }
1398
1399 #[doc(alias = "secondary-icon-name")]
1400 fn secondary_icon_name(&self) -> Option<glib::GString> {
1401 ObjectExt::property(self.as_ref(), "secondary-icon-name")
1402 }
1403
1404 #[doc(alias = "secondary-icon-name")]
1405 fn set_secondary_icon_name(&self, secondary_icon_name: Option<&str>) {
1406 ObjectExt::set_property(self.as_ref(), "secondary-icon-name", secondary_icon_name)
1407 }
1408
1409 #[doc(alias = "secondary-icon-paintable")]
1410 fn secondary_icon_paintable(&self) -> Option<gdk::Paintable> {
1411 ObjectExt::property(self.as_ref(), "secondary-icon-paintable")
1412 }
1413
1414 #[doc(alias = "secondary-icon-paintable")]
1415 fn set_secondary_icon_paintable<P: IsA<gdk::Paintable>>(
1416 &self,
1417 secondary_icon_paintable: Option<&P>,
1418 ) {
1419 ObjectExt::set_property(
1420 self.as_ref(),
1421 "secondary-icon-paintable",
1422 secondary_icon_paintable,
1423 )
1424 }
1425
1426 #[doc(alias = "secondary-icon-sensitive")]
1427 fn is_secondary_icon_sensitive(&self) -> bool {
1428 ObjectExt::property(self.as_ref(), "secondary-icon-sensitive")
1429 }
1430
1431 #[doc(alias = "secondary-icon-sensitive")]
1432 fn set_secondary_icon_sensitive(&self, secondary_icon_sensitive: bool) {
1433 ObjectExt::set_property(
1434 self.as_ref(),
1435 "secondary-icon-sensitive",
1436 secondary_icon_sensitive,
1437 )
1438 }
1439
1440 #[doc(alias = "secondary-icon-storage-type")]
1441 fn secondary_icon_storage_type(&self) -> ImageType {
1442 ObjectExt::property(self.as_ref(), "secondary-icon-storage-type")
1443 }
1444
1445 #[doc(alias = "secondary-icon-tooltip-markup")]
1446 fn secondary_icon_tooltip_markup(&self) -> Option<glib::GString> {
1447 ObjectExt::property(self.as_ref(), "secondary-icon-tooltip-markup")
1448 }
1449
1450 #[doc(alias = "secondary-icon-tooltip-markup")]
1451 fn set_secondary_icon_tooltip_markup(&self, secondary_icon_tooltip_markup: Option<&str>) {
1452 ObjectExt::set_property(
1453 self.as_ref(),
1454 "secondary-icon-tooltip-markup",
1455 secondary_icon_tooltip_markup,
1456 )
1457 }
1458
1459 #[doc(alias = "secondary-icon-tooltip-text")]
1460 fn secondary_icon_tooltip_text(&self) -> Option<glib::GString> {
1461 ObjectExt::property(self.as_ref(), "secondary-icon-tooltip-text")
1462 }
1463
1464 #[doc(alias = "secondary-icon-tooltip-text")]
1465 fn set_secondary_icon_tooltip_text(&self, secondary_icon_tooltip_text: Option<&str>) {
1466 ObjectExt::set_property(
1467 self.as_ref(),
1468 "secondary-icon-tooltip-text",
1469 secondary_icon_tooltip_text,
1470 )
1471 }
1472
1473 #[doc(alias = "show-emoji-icon")]
1474 fn shows_emoji_icon(&self) -> bool {
1475 ObjectExt::property(self.as_ref(), "show-emoji-icon")
1476 }
1477
1478 #[doc(alias = "show-emoji-icon")]
1479 fn set_show_emoji_icon(&self, show_emoji_icon: bool) {
1480 ObjectExt::set_property(self.as_ref(), "show-emoji-icon", show_emoji_icon)
1481 }
1482
1483 #[doc(alias = "truncate-multiline")]
1484 fn must_truncate_multiline(&self) -> bool {
1485 ObjectExt::property(self.as_ref(), "truncate-multiline")
1486 }
1487
1488 #[doc(alias = "truncate-multiline")]
1489 fn set_truncate_multiline(&self, truncate_multiline: bool) {
1490 ObjectExt::set_property(self.as_ref(), "truncate-multiline", truncate_multiline)
1491 }
1492
1493 #[doc(alias = "activate")]
1494 fn connect_activate<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1495 unsafe extern "C" fn activate_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1496 this: *mut ffi::GtkEntry,
1497 f: glib::ffi::gpointer,
1498 ) {
1499 let f: &F = &*(f as *const F);
1500 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1501 }
1502 unsafe {
1503 let f: Box_<F> = Box_::new(f);
1504 connect_raw(
1505 self.as_ptr() as *mut _,
1506 c"activate".as_ptr() as *const _,
1507 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1508 activate_trampoline::<Self, F> as *const (),
1509 )),
1510 Box_::into_raw(f),
1511 )
1512 }
1513 }
1514
1515 fn emit_activate(&self) {
1516 self.emit_by_name::<()>("activate", &[]);
1517 }
1518
1519 #[doc(alias = "icon-press")]
1520 fn connect_icon_press<F: Fn(&Self, EntryIconPosition) + 'static>(
1521 &self,
1522 f: F,
1523 ) -> SignalHandlerId {
1524 unsafe extern "C" fn icon_press_trampoline<
1525 P: IsA<Entry>,
1526 F: Fn(&P, EntryIconPosition) + 'static,
1527 >(
1528 this: *mut ffi::GtkEntry,
1529 icon_pos: ffi::GtkEntryIconPosition,
1530 f: glib::ffi::gpointer,
1531 ) {
1532 let f: &F = &*(f as *const F);
1533 f(
1534 Entry::from_glib_borrow(this).unsafe_cast_ref(),
1535 from_glib(icon_pos),
1536 )
1537 }
1538 unsafe {
1539 let f: Box_<F> = Box_::new(f);
1540 connect_raw(
1541 self.as_ptr() as *mut _,
1542 c"icon-press".as_ptr() as *const _,
1543 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1544 icon_press_trampoline::<Self, F> as *const (),
1545 )),
1546 Box_::into_raw(f),
1547 )
1548 }
1549 }
1550
1551 #[doc(alias = "icon-release")]
1552 fn connect_icon_release<F: Fn(&Self, EntryIconPosition) + 'static>(
1553 &self,
1554 f: F,
1555 ) -> SignalHandlerId {
1556 unsafe extern "C" fn icon_release_trampoline<
1557 P: IsA<Entry>,
1558 F: Fn(&P, EntryIconPosition) + 'static,
1559 >(
1560 this: *mut ffi::GtkEntry,
1561 icon_pos: ffi::GtkEntryIconPosition,
1562 f: glib::ffi::gpointer,
1563 ) {
1564 let f: &F = &*(f as *const F);
1565 f(
1566 Entry::from_glib_borrow(this).unsafe_cast_ref(),
1567 from_glib(icon_pos),
1568 )
1569 }
1570 unsafe {
1571 let f: Box_<F> = Box_::new(f);
1572 connect_raw(
1573 self.as_ptr() as *mut _,
1574 c"icon-release".as_ptr() as *const _,
1575 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1576 icon_release_trampoline::<Self, F> as *const (),
1577 )),
1578 Box_::into_raw(f),
1579 )
1580 }
1581 }
1582
1583 #[doc(alias = "activates-default")]
1584 fn connect_activates_default_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1585 unsafe extern "C" fn notify_activates_default_trampoline<
1586 P: IsA<Entry>,
1587 F: Fn(&P) + 'static,
1588 >(
1589 this: *mut ffi::GtkEntry,
1590 _param_spec: glib::ffi::gpointer,
1591 f: glib::ffi::gpointer,
1592 ) {
1593 let f: &F = &*(f as *const F);
1594 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1595 }
1596 unsafe {
1597 let f: Box_<F> = Box_::new(f);
1598 connect_raw(
1599 self.as_ptr() as *mut _,
1600 c"notify::activates-default".as_ptr() as *const _,
1601 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1602 notify_activates_default_trampoline::<Self, F> as *const (),
1603 )),
1604 Box_::into_raw(f),
1605 )
1606 }
1607 }
1608
1609 #[doc(alias = "attributes")]
1610 fn connect_attributes_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1611 unsafe extern "C" fn notify_attributes_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1612 this: *mut ffi::GtkEntry,
1613 _param_spec: glib::ffi::gpointer,
1614 f: glib::ffi::gpointer,
1615 ) {
1616 let f: &F = &*(f as *const F);
1617 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1618 }
1619 unsafe {
1620 let f: Box_<F> = Box_::new(f);
1621 connect_raw(
1622 self.as_ptr() as *mut _,
1623 c"notify::attributes".as_ptr() as *const _,
1624 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1625 notify_attributes_trampoline::<Self, F> as *const (),
1626 )),
1627 Box_::into_raw(f),
1628 )
1629 }
1630 }
1631
1632 #[doc(alias = "buffer")]
1633 fn connect_buffer_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1634 unsafe extern "C" fn notify_buffer_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1635 this: *mut ffi::GtkEntry,
1636 _param_spec: glib::ffi::gpointer,
1637 f: glib::ffi::gpointer,
1638 ) {
1639 let f: &F = &*(f as *const F);
1640 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1641 }
1642 unsafe {
1643 let f: Box_<F> = Box_::new(f);
1644 connect_raw(
1645 self.as_ptr() as *mut _,
1646 c"notify::buffer".as_ptr() as *const _,
1647 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1648 notify_buffer_trampoline::<Self, F> as *const (),
1649 )),
1650 Box_::into_raw(f),
1651 )
1652 }
1653 }
1654
1655 #[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
1656 #[doc(alias = "completion")]
1657 fn connect_completion_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1658 unsafe extern "C" fn notify_completion_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1659 this: *mut ffi::GtkEntry,
1660 _param_spec: glib::ffi::gpointer,
1661 f: glib::ffi::gpointer,
1662 ) {
1663 let f: &F = &*(f as *const F);
1664 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1665 }
1666 unsafe {
1667 let f: Box_<F> = Box_::new(f);
1668 connect_raw(
1669 self.as_ptr() as *mut _,
1670 c"notify::completion".as_ptr() as *const _,
1671 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1672 notify_completion_trampoline::<Self, F> as *const (),
1673 )),
1674 Box_::into_raw(f),
1675 )
1676 }
1677 }
1678
1679 #[doc(alias = "enable-emoji-completion")]
1680 fn connect_enable_emoji_completion_notify<F: Fn(&Self) + 'static>(
1681 &self,
1682 f: F,
1683 ) -> SignalHandlerId {
1684 unsafe extern "C" fn notify_enable_emoji_completion_trampoline<
1685 P: IsA<Entry>,
1686 F: Fn(&P) + 'static,
1687 >(
1688 this: *mut ffi::GtkEntry,
1689 _param_spec: glib::ffi::gpointer,
1690 f: glib::ffi::gpointer,
1691 ) {
1692 let f: &F = &*(f as *const F);
1693 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1694 }
1695 unsafe {
1696 let f: Box_<F> = Box_::new(f);
1697 connect_raw(
1698 self.as_ptr() as *mut _,
1699 c"notify::enable-emoji-completion".as_ptr() as *const _,
1700 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1701 notify_enable_emoji_completion_trampoline::<Self, F> as *const (),
1702 )),
1703 Box_::into_raw(f),
1704 )
1705 }
1706 }
1707
1708 #[doc(alias = "extra-menu")]
1709 fn connect_extra_menu_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1710 unsafe extern "C" fn notify_extra_menu_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1711 this: *mut ffi::GtkEntry,
1712 _param_spec: glib::ffi::gpointer,
1713 f: glib::ffi::gpointer,
1714 ) {
1715 let f: &F = &*(f as *const F);
1716 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1717 }
1718 unsafe {
1719 let f: Box_<F> = Box_::new(f);
1720 connect_raw(
1721 self.as_ptr() as *mut _,
1722 c"notify::extra-menu".as_ptr() as *const _,
1723 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1724 notify_extra_menu_trampoline::<Self, F> as *const (),
1725 )),
1726 Box_::into_raw(f),
1727 )
1728 }
1729 }
1730
1731 #[doc(alias = "has-frame")]
1732 fn connect_has_frame_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1733 unsafe extern "C" fn notify_has_frame_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1734 this: *mut ffi::GtkEntry,
1735 _param_spec: glib::ffi::gpointer,
1736 f: glib::ffi::gpointer,
1737 ) {
1738 let f: &F = &*(f as *const F);
1739 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1740 }
1741 unsafe {
1742 let f: Box_<F> = Box_::new(f);
1743 connect_raw(
1744 self.as_ptr() as *mut _,
1745 c"notify::has-frame".as_ptr() as *const _,
1746 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1747 notify_has_frame_trampoline::<Self, F> as *const (),
1748 )),
1749 Box_::into_raw(f),
1750 )
1751 }
1752 }
1753
1754 #[doc(alias = "im-module")]
1755 fn connect_im_module_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1756 unsafe extern "C" fn notify_im_module_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1757 this: *mut ffi::GtkEntry,
1758 _param_spec: glib::ffi::gpointer,
1759 f: glib::ffi::gpointer,
1760 ) {
1761 let f: &F = &*(f as *const F);
1762 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1763 }
1764 unsafe {
1765 let f: Box_<F> = Box_::new(f);
1766 connect_raw(
1767 self.as_ptr() as *mut _,
1768 c"notify::im-module".as_ptr() as *const _,
1769 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1770 notify_im_module_trampoline::<Self, F> as *const (),
1771 )),
1772 Box_::into_raw(f),
1773 )
1774 }
1775 }
1776
1777 #[doc(alias = "input-hints")]
1778 fn connect_input_hints_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1779 unsafe extern "C" fn notify_input_hints_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1780 this: *mut ffi::GtkEntry,
1781 _param_spec: glib::ffi::gpointer,
1782 f: glib::ffi::gpointer,
1783 ) {
1784 let f: &F = &*(f as *const F);
1785 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1786 }
1787 unsafe {
1788 let f: Box_<F> = Box_::new(f);
1789 connect_raw(
1790 self.as_ptr() as *mut _,
1791 c"notify::input-hints".as_ptr() as *const _,
1792 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1793 notify_input_hints_trampoline::<Self, F> as *const (),
1794 )),
1795 Box_::into_raw(f),
1796 )
1797 }
1798 }
1799
1800 #[doc(alias = "input-purpose")]
1801 fn connect_input_purpose_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1802 unsafe extern "C" fn notify_input_purpose_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1803 this: *mut ffi::GtkEntry,
1804 _param_spec: glib::ffi::gpointer,
1805 f: glib::ffi::gpointer,
1806 ) {
1807 let f: &F = &*(f as *const F);
1808 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1809 }
1810 unsafe {
1811 let f: Box_<F> = Box_::new(f);
1812 connect_raw(
1813 self.as_ptr() as *mut _,
1814 c"notify::input-purpose".as_ptr() as *const _,
1815 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1816 notify_input_purpose_trampoline::<Self, F> as *const (),
1817 )),
1818 Box_::into_raw(f),
1819 )
1820 }
1821 }
1822
1823 #[doc(alias = "invisible-char")]
1824 fn connect_invisible_char_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1825 unsafe extern "C" fn notify_invisible_char_trampoline<
1826 P: IsA<Entry>,
1827 F: Fn(&P) + 'static,
1828 >(
1829 this: *mut ffi::GtkEntry,
1830 _param_spec: glib::ffi::gpointer,
1831 f: glib::ffi::gpointer,
1832 ) {
1833 let f: &F = &*(f as *const F);
1834 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1835 }
1836 unsafe {
1837 let f: Box_<F> = Box_::new(f);
1838 connect_raw(
1839 self.as_ptr() as *mut _,
1840 c"notify::invisible-char".as_ptr() as *const _,
1841 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1842 notify_invisible_char_trampoline::<Self, F> as *const (),
1843 )),
1844 Box_::into_raw(f),
1845 )
1846 }
1847 }
1848
1849 #[doc(alias = "invisible-char-set")]
1850 fn connect_invisible_char_set_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1851 unsafe extern "C" fn notify_invisible_char_set_trampoline<
1852 P: IsA<Entry>,
1853 F: Fn(&P) + 'static,
1854 >(
1855 this: *mut ffi::GtkEntry,
1856 _param_spec: glib::ffi::gpointer,
1857 f: glib::ffi::gpointer,
1858 ) {
1859 let f: &F = &*(f as *const F);
1860 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1861 }
1862 unsafe {
1863 let f: Box_<F> = Box_::new(f);
1864 connect_raw(
1865 self.as_ptr() as *mut _,
1866 c"notify::invisible-char-set".as_ptr() as *const _,
1867 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1868 notify_invisible_char_set_trampoline::<Self, F> as *const (),
1869 )),
1870 Box_::into_raw(f),
1871 )
1872 }
1873 }
1874
1875 #[doc(alias = "max-length")]
1876 fn connect_max_length_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1877 unsafe extern "C" fn notify_max_length_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
1878 this: *mut ffi::GtkEntry,
1879 _param_spec: glib::ffi::gpointer,
1880 f: glib::ffi::gpointer,
1881 ) {
1882 let f: &F = &*(f as *const F);
1883 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1884 }
1885 unsafe {
1886 let f: Box_<F> = Box_::new(f);
1887 connect_raw(
1888 self.as_ptr() as *mut _,
1889 c"notify::max-length".as_ptr() as *const _,
1890 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1891 notify_max_length_trampoline::<Self, F> as *const (),
1892 )),
1893 Box_::into_raw(f),
1894 )
1895 }
1896 }
1897
1898 #[cfg(feature = "v4_20")]
1899 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1900 #[doc(alias = "menu-entry-icon-primary-text")]
1901 fn connect_menu_entry_icon_primary_text_notify<F: Fn(&Self) + 'static>(
1902 &self,
1903 f: F,
1904 ) -> SignalHandlerId {
1905 unsafe extern "C" fn notify_menu_entry_icon_primary_text_trampoline<
1906 P: IsA<Entry>,
1907 F: Fn(&P) + 'static,
1908 >(
1909 this: *mut ffi::GtkEntry,
1910 _param_spec: glib::ffi::gpointer,
1911 f: glib::ffi::gpointer,
1912 ) {
1913 let f: &F = &*(f as *const F);
1914 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1915 }
1916 unsafe {
1917 let f: Box_<F> = Box_::new(f);
1918 connect_raw(
1919 self.as_ptr() as *mut _,
1920 c"notify::menu-entry-icon-primary-text".as_ptr() as *const _,
1921 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1922 notify_menu_entry_icon_primary_text_trampoline::<Self, F> as *const (),
1923 )),
1924 Box_::into_raw(f),
1925 )
1926 }
1927 }
1928
1929 #[cfg(feature = "v4_20")]
1930 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1931 #[doc(alias = "menu-entry-icon-secondary-text")]
1932 fn connect_menu_entry_icon_secondary_text_notify<F: Fn(&Self) + 'static>(
1933 &self,
1934 f: F,
1935 ) -> SignalHandlerId {
1936 unsafe extern "C" fn notify_menu_entry_icon_secondary_text_trampoline<
1937 P: IsA<Entry>,
1938 F: Fn(&P) + 'static,
1939 >(
1940 this: *mut ffi::GtkEntry,
1941 _param_spec: glib::ffi::gpointer,
1942 f: glib::ffi::gpointer,
1943 ) {
1944 let f: &F = &*(f as *const F);
1945 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1946 }
1947 unsafe {
1948 let f: Box_<F> = Box_::new(f);
1949 connect_raw(
1950 self.as_ptr() as *mut _,
1951 c"notify::menu-entry-icon-secondary-text".as_ptr() as *const _,
1952 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1953 notify_menu_entry_icon_secondary_text_trampoline::<Self, F> as *const (),
1954 )),
1955 Box_::into_raw(f),
1956 )
1957 }
1958 }
1959
1960 #[doc(alias = "overwrite-mode")]
1961 fn connect_overwrite_mode_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1962 unsafe extern "C" fn notify_overwrite_mode_trampoline<
1963 P: IsA<Entry>,
1964 F: Fn(&P) + 'static,
1965 >(
1966 this: *mut ffi::GtkEntry,
1967 _param_spec: glib::ffi::gpointer,
1968 f: glib::ffi::gpointer,
1969 ) {
1970 let f: &F = &*(f as *const F);
1971 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1972 }
1973 unsafe {
1974 let f: Box_<F> = Box_::new(f);
1975 connect_raw(
1976 self.as_ptr() as *mut _,
1977 c"notify::overwrite-mode".as_ptr() as *const _,
1978 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
1979 notify_overwrite_mode_trampoline::<Self, F> as *const (),
1980 )),
1981 Box_::into_raw(f),
1982 )
1983 }
1984 }
1985
1986 #[doc(alias = "placeholder-text")]
1987 fn connect_placeholder_text_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1988 unsafe extern "C" fn notify_placeholder_text_trampoline<
1989 P: IsA<Entry>,
1990 F: Fn(&P) + 'static,
1991 >(
1992 this: *mut ffi::GtkEntry,
1993 _param_spec: glib::ffi::gpointer,
1994 f: glib::ffi::gpointer,
1995 ) {
1996 let f: &F = &*(f as *const F);
1997 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
1998 }
1999 unsafe {
2000 let f: Box_<F> = Box_::new(f);
2001 connect_raw(
2002 self.as_ptr() as *mut _,
2003 c"notify::placeholder-text".as_ptr() as *const _,
2004 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2005 notify_placeholder_text_trampoline::<Self, F> as *const (),
2006 )),
2007 Box_::into_raw(f),
2008 )
2009 }
2010 }
2011
2012 #[doc(alias = "primary-icon-activatable")]
2013 fn connect_primary_icon_activatable_notify<F: Fn(&Self) + 'static>(
2014 &self,
2015 f: F,
2016 ) -> SignalHandlerId {
2017 unsafe extern "C" fn notify_primary_icon_activatable_trampoline<
2018 P: IsA<Entry>,
2019 F: Fn(&P) + 'static,
2020 >(
2021 this: *mut ffi::GtkEntry,
2022 _param_spec: glib::ffi::gpointer,
2023 f: glib::ffi::gpointer,
2024 ) {
2025 let f: &F = &*(f as *const F);
2026 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2027 }
2028 unsafe {
2029 let f: Box_<F> = Box_::new(f);
2030 connect_raw(
2031 self.as_ptr() as *mut _,
2032 c"notify::primary-icon-activatable".as_ptr() as *const _,
2033 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2034 notify_primary_icon_activatable_trampoline::<Self, F> as *const (),
2035 )),
2036 Box_::into_raw(f),
2037 )
2038 }
2039 }
2040
2041 #[doc(alias = "primary-icon-gicon")]
2042 fn connect_primary_icon_gicon_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2043 unsafe extern "C" fn notify_primary_icon_gicon_trampoline<
2044 P: IsA<Entry>,
2045 F: Fn(&P) + 'static,
2046 >(
2047 this: *mut ffi::GtkEntry,
2048 _param_spec: glib::ffi::gpointer,
2049 f: glib::ffi::gpointer,
2050 ) {
2051 let f: &F = &*(f as *const F);
2052 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2053 }
2054 unsafe {
2055 let f: Box_<F> = Box_::new(f);
2056 connect_raw(
2057 self.as_ptr() as *mut _,
2058 c"notify::primary-icon-gicon".as_ptr() as *const _,
2059 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2060 notify_primary_icon_gicon_trampoline::<Self, F> as *const (),
2061 )),
2062 Box_::into_raw(f),
2063 )
2064 }
2065 }
2066
2067 #[doc(alias = "primary-icon-name")]
2068 fn connect_primary_icon_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2069 unsafe extern "C" fn notify_primary_icon_name_trampoline<
2070 P: IsA<Entry>,
2071 F: Fn(&P) + 'static,
2072 >(
2073 this: *mut ffi::GtkEntry,
2074 _param_spec: glib::ffi::gpointer,
2075 f: glib::ffi::gpointer,
2076 ) {
2077 let f: &F = &*(f as *const F);
2078 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2079 }
2080 unsafe {
2081 let f: Box_<F> = Box_::new(f);
2082 connect_raw(
2083 self.as_ptr() as *mut _,
2084 c"notify::primary-icon-name".as_ptr() as *const _,
2085 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2086 notify_primary_icon_name_trampoline::<Self, F> as *const (),
2087 )),
2088 Box_::into_raw(f),
2089 )
2090 }
2091 }
2092
2093 #[doc(alias = "primary-icon-paintable")]
2094 fn connect_primary_icon_paintable_notify<F: Fn(&Self) + 'static>(
2095 &self,
2096 f: F,
2097 ) -> SignalHandlerId {
2098 unsafe extern "C" fn notify_primary_icon_paintable_trampoline<
2099 P: IsA<Entry>,
2100 F: Fn(&P) + 'static,
2101 >(
2102 this: *mut ffi::GtkEntry,
2103 _param_spec: glib::ffi::gpointer,
2104 f: glib::ffi::gpointer,
2105 ) {
2106 let f: &F = &*(f as *const F);
2107 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2108 }
2109 unsafe {
2110 let f: Box_<F> = Box_::new(f);
2111 connect_raw(
2112 self.as_ptr() as *mut _,
2113 c"notify::primary-icon-paintable".as_ptr() as *const _,
2114 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2115 notify_primary_icon_paintable_trampoline::<Self, F> as *const (),
2116 )),
2117 Box_::into_raw(f),
2118 )
2119 }
2120 }
2121
2122 #[doc(alias = "primary-icon-sensitive")]
2123 fn connect_primary_icon_sensitive_notify<F: Fn(&Self) + 'static>(
2124 &self,
2125 f: F,
2126 ) -> SignalHandlerId {
2127 unsafe extern "C" fn notify_primary_icon_sensitive_trampoline<
2128 P: IsA<Entry>,
2129 F: Fn(&P) + 'static,
2130 >(
2131 this: *mut ffi::GtkEntry,
2132 _param_spec: glib::ffi::gpointer,
2133 f: glib::ffi::gpointer,
2134 ) {
2135 let f: &F = &*(f as *const F);
2136 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2137 }
2138 unsafe {
2139 let f: Box_<F> = Box_::new(f);
2140 connect_raw(
2141 self.as_ptr() as *mut _,
2142 c"notify::primary-icon-sensitive".as_ptr() as *const _,
2143 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2144 notify_primary_icon_sensitive_trampoline::<Self, F> as *const (),
2145 )),
2146 Box_::into_raw(f),
2147 )
2148 }
2149 }
2150
2151 #[doc(alias = "primary-icon-storage-type")]
2152 fn connect_primary_icon_storage_type_notify<F: Fn(&Self) + 'static>(
2153 &self,
2154 f: F,
2155 ) -> SignalHandlerId {
2156 unsafe extern "C" fn notify_primary_icon_storage_type_trampoline<
2157 P: IsA<Entry>,
2158 F: Fn(&P) + 'static,
2159 >(
2160 this: *mut ffi::GtkEntry,
2161 _param_spec: glib::ffi::gpointer,
2162 f: glib::ffi::gpointer,
2163 ) {
2164 let f: &F = &*(f as *const F);
2165 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2166 }
2167 unsafe {
2168 let f: Box_<F> = Box_::new(f);
2169 connect_raw(
2170 self.as_ptr() as *mut _,
2171 c"notify::primary-icon-storage-type".as_ptr() as *const _,
2172 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2173 notify_primary_icon_storage_type_trampoline::<Self, F> as *const (),
2174 )),
2175 Box_::into_raw(f),
2176 )
2177 }
2178 }
2179
2180 #[doc(alias = "primary-icon-tooltip-markup")]
2181 fn connect_primary_icon_tooltip_markup_notify<F: Fn(&Self) + 'static>(
2182 &self,
2183 f: F,
2184 ) -> SignalHandlerId {
2185 unsafe extern "C" fn notify_primary_icon_tooltip_markup_trampoline<
2186 P: IsA<Entry>,
2187 F: Fn(&P) + 'static,
2188 >(
2189 this: *mut ffi::GtkEntry,
2190 _param_spec: glib::ffi::gpointer,
2191 f: glib::ffi::gpointer,
2192 ) {
2193 let f: &F = &*(f as *const F);
2194 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2195 }
2196 unsafe {
2197 let f: Box_<F> = Box_::new(f);
2198 connect_raw(
2199 self.as_ptr() as *mut _,
2200 c"notify::primary-icon-tooltip-markup".as_ptr() as *const _,
2201 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2202 notify_primary_icon_tooltip_markup_trampoline::<Self, F> as *const (),
2203 )),
2204 Box_::into_raw(f),
2205 )
2206 }
2207 }
2208
2209 #[doc(alias = "primary-icon-tooltip-text")]
2210 fn connect_primary_icon_tooltip_text_notify<F: Fn(&Self) + 'static>(
2211 &self,
2212 f: F,
2213 ) -> SignalHandlerId {
2214 unsafe extern "C" fn notify_primary_icon_tooltip_text_trampoline<
2215 P: IsA<Entry>,
2216 F: Fn(&P) + 'static,
2217 >(
2218 this: *mut ffi::GtkEntry,
2219 _param_spec: glib::ffi::gpointer,
2220 f: glib::ffi::gpointer,
2221 ) {
2222 let f: &F = &*(f as *const F);
2223 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2224 }
2225 unsafe {
2226 let f: Box_<F> = Box_::new(f);
2227 connect_raw(
2228 self.as_ptr() as *mut _,
2229 c"notify::primary-icon-tooltip-text".as_ptr() as *const _,
2230 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2231 notify_primary_icon_tooltip_text_trampoline::<Self, F> as *const (),
2232 )),
2233 Box_::into_raw(f),
2234 )
2235 }
2236 }
2237
2238 #[doc(alias = "progress-fraction")]
2239 fn connect_progress_fraction_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2240 unsafe extern "C" fn notify_progress_fraction_trampoline<
2241 P: IsA<Entry>,
2242 F: Fn(&P) + 'static,
2243 >(
2244 this: *mut ffi::GtkEntry,
2245 _param_spec: glib::ffi::gpointer,
2246 f: glib::ffi::gpointer,
2247 ) {
2248 let f: &F = &*(f as *const F);
2249 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2250 }
2251 unsafe {
2252 let f: Box_<F> = Box_::new(f);
2253 connect_raw(
2254 self.as_ptr() as *mut _,
2255 c"notify::progress-fraction".as_ptr() as *const _,
2256 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2257 notify_progress_fraction_trampoline::<Self, F> as *const (),
2258 )),
2259 Box_::into_raw(f),
2260 )
2261 }
2262 }
2263
2264 #[doc(alias = "progress-pulse-step")]
2265 fn connect_progress_pulse_step_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2266 unsafe extern "C" fn notify_progress_pulse_step_trampoline<
2267 P: IsA<Entry>,
2268 F: Fn(&P) + 'static,
2269 >(
2270 this: *mut ffi::GtkEntry,
2271 _param_spec: glib::ffi::gpointer,
2272 f: glib::ffi::gpointer,
2273 ) {
2274 let f: &F = &*(f as *const F);
2275 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2276 }
2277 unsafe {
2278 let f: Box_<F> = Box_::new(f);
2279 connect_raw(
2280 self.as_ptr() as *mut _,
2281 c"notify::progress-pulse-step".as_ptr() as *const _,
2282 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2283 notify_progress_pulse_step_trampoline::<Self, F> as *const (),
2284 )),
2285 Box_::into_raw(f),
2286 )
2287 }
2288 }
2289
2290 #[doc(alias = "scroll-offset")]
2291 fn connect_scroll_offset_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2292 unsafe extern "C" fn notify_scroll_offset_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
2293 this: *mut ffi::GtkEntry,
2294 _param_spec: glib::ffi::gpointer,
2295 f: glib::ffi::gpointer,
2296 ) {
2297 let f: &F = &*(f as *const F);
2298 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2299 }
2300 unsafe {
2301 let f: Box_<F> = Box_::new(f);
2302 connect_raw(
2303 self.as_ptr() as *mut _,
2304 c"notify::scroll-offset".as_ptr() as *const _,
2305 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2306 notify_scroll_offset_trampoline::<Self, F> as *const (),
2307 )),
2308 Box_::into_raw(f),
2309 )
2310 }
2311 }
2312
2313 #[doc(alias = "secondary-icon-activatable")]
2314 fn connect_secondary_icon_activatable_notify<F: Fn(&Self) + 'static>(
2315 &self,
2316 f: F,
2317 ) -> SignalHandlerId {
2318 unsafe extern "C" fn notify_secondary_icon_activatable_trampoline<
2319 P: IsA<Entry>,
2320 F: Fn(&P) + 'static,
2321 >(
2322 this: *mut ffi::GtkEntry,
2323 _param_spec: glib::ffi::gpointer,
2324 f: glib::ffi::gpointer,
2325 ) {
2326 let f: &F = &*(f as *const F);
2327 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2328 }
2329 unsafe {
2330 let f: Box_<F> = Box_::new(f);
2331 connect_raw(
2332 self.as_ptr() as *mut _,
2333 c"notify::secondary-icon-activatable".as_ptr() as *const _,
2334 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2335 notify_secondary_icon_activatable_trampoline::<Self, F> as *const (),
2336 )),
2337 Box_::into_raw(f),
2338 )
2339 }
2340 }
2341
2342 #[doc(alias = "secondary-icon-gicon")]
2343 fn connect_secondary_icon_gicon_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2344 unsafe extern "C" fn notify_secondary_icon_gicon_trampoline<
2345 P: IsA<Entry>,
2346 F: Fn(&P) + 'static,
2347 >(
2348 this: *mut ffi::GtkEntry,
2349 _param_spec: glib::ffi::gpointer,
2350 f: glib::ffi::gpointer,
2351 ) {
2352 let f: &F = &*(f as *const F);
2353 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2354 }
2355 unsafe {
2356 let f: Box_<F> = Box_::new(f);
2357 connect_raw(
2358 self.as_ptr() as *mut _,
2359 c"notify::secondary-icon-gicon".as_ptr() as *const _,
2360 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2361 notify_secondary_icon_gicon_trampoline::<Self, F> as *const (),
2362 )),
2363 Box_::into_raw(f),
2364 )
2365 }
2366 }
2367
2368 #[doc(alias = "secondary-icon-name")]
2369 fn connect_secondary_icon_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2370 unsafe extern "C" fn notify_secondary_icon_name_trampoline<
2371 P: IsA<Entry>,
2372 F: Fn(&P) + 'static,
2373 >(
2374 this: *mut ffi::GtkEntry,
2375 _param_spec: glib::ffi::gpointer,
2376 f: glib::ffi::gpointer,
2377 ) {
2378 let f: &F = &*(f as *const F);
2379 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2380 }
2381 unsafe {
2382 let f: Box_<F> = Box_::new(f);
2383 connect_raw(
2384 self.as_ptr() as *mut _,
2385 c"notify::secondary-icon-name".as_ptr() as *const _,
2386 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2387 notify_secondary_icon_name_trampoline::<Self, F> as *const (),
2388 )),
2389 Box_::into_raw(f),
2390 )
2391 }
2392 }
2393
2394 #[doc(alias = "secondary-icon-paintable")]
2395 fn connect_secondary_icon_paintable_notify<F: Fn(&Self) + 'static>(
2396 &self,
2397 f: F,
2398 ) -> SignalHandlerId {
2399 unsafe extern "C" fn notify_secondary_icon_paintable_trampoline<
2400 P: IsA<Entry>,
2401 F: Fn(&P) + 'static,
2402 >(
2403 this: *mut ffi::GtkEntry,
2404 _param_spec: glib::ffi::gpointer,
2405 f: glib::ffi::gpointer,
2406 ) {
2407 let f: &F = &*(f as *const F);
2408 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2409 }
2410 unsafe {
2411 let f: Box_<F> = Box_::new(f);
2412 connect_raw(
2413 self.as_ptr() as *mut _,
2414 c"notify::secondary-icon-paintable".as_ptr() as *const _,
2415 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2416 notify_secondary_icon_paintable_trampoline::<Self, F> as *const (),
2417 )),
2418 Box_::into_raw(f),
2419 )
2420 }
2421 }
2422
2423 #[doc(alias = "secondary-icon-sensitive")]
2424 fn connect_secondary_icon_sensitive_notify<F: Fn(&Self) + 'static>(
2425 &self,
2426 f: F,
2427 ) -> SignalHandlerId {
2428 unsafe extern "C" fn notify_secondary_icon_sensitive_trampoline<
2429 P: IsA<Entry>,
2430 F: Fn(&P) + 'static,
2431 >(
2432 this: *mut ffi::GtkEntry,
2433 _param_spec: glib::ffi::gpointer,
2434 f: glib::ffi::gpointer,
2435 ) {
2436 let f: &F = &*(f as *const F);
2437 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2438 }
2439 unsafe {
2440 let f: Box_<F> = Box_::new(f);
2441 connect_raw(
2442 self.as_ptr() as *mut _,
2443 c"notify::secondary-icon-sensitive".as_ptr() as *const _,
2444 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2445 notify_secondary_icon_sensitive_trampoline::<Self, F> as *const (),
2446 )),
2447 Box_::into_raw(f),
2448 )
2449 }
2450 }
2451
2452 #[doc(alias = "secondary-icon-storage-type")]
2453 fn connect_secondary_icon_storage_type_notify<F: Fn(&Self) + 'static>(
2454 &self,
2455 f: F,
2456 ) -> SignalHandlerId {
2457 unsafe extern "C" fn notify_secondary_icon_storage_type_trampoline<
2458 P: IsA<Entry>,
2459 F: Fn(&P) + 'static,
2460 >(
2461 this: *mut ffi::GtkEntry,
2462 _param_spec: glib::ffi::gpointer,
2463 f: glib::ffi::gpointer,
2464 ) {
2465 let f: &F = &*(f as *const F);
2466 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2467 }
2468 unsafe {
2469 let f: Box_<F> = Box_::new(f);
2470 connect_raw(
2471 self.as_ptr() as *mut _,
2472 c"notify::secondary-icon-storage-type".as_ptr() as *const _,
2473 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2474 notify_secondary_icon_storage_type_trampoline::<Self, F> as *const (),
2475 )),
2476 Box_::into_raw(f),
2477 )
2478 }
2479 }
2480
2481 #[doc(alias = "secondary-icon-tooltip-markup")]
2482 fn connect_secondary_icon_tooltip_markup_notify<F: Fn(&Self) + 'static>(
2483 &self,
2484 f: F,
2485 ) -> SignalHandlerId {
2486 unsafe extern "C" fn notify_secondary_icon_tooltip_markup_trampoline<
2487 P: IsA<Entry>,
2488 F: Fn(&P) + 'static,
2489 >(
2490 this: *mut ffi::GtkEntry,
2491 _param_spec: glib::ffi::gpointer,
2492 f: glib::ffi::gpointer,
2493 ) {
2494 let f: &F = &*(f as *const F);
2495 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2496 }
2497 unsafe {
2498 let f: Box_<F> = Box_::new(f);
2499 connect_raw(
2500 self.as_ptr() as *mut _,
2501 c"notify::secondary-icon-tooltip-markup".as_ptr() as *const _,
2502 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2503 notify_secondary_icon_tooltip_markup_trampoline::<Self, F> as *const (),
2504 )),
2505 Box_::into_raw(f),
2506 )
2507 }
2508 }
2509
2510 #[doc(alias = "secondary-icon-tooltip-text")]
2511 fn connect_secondary_icon_tooltip_text_notify<F: Fn(&Self) + 'static>(
2512 &self,
2513 f: F,
2514 ) -> SignalHandlerId {
2515 unsafe extern "C" fn notify_secondary_icon_tooltip_text_trampoline<
2516 P: IsA<Entry>,
2517 F: Fn(&P) + 'static,
2518 >(
2519 this: *mut ffi::GtkEntry,
2520 _param_spec: glib::ffi::gpointer,
2521 f: glib::ffi::gpointer,
2522 ) {
2523 let f: &F = &*(f as *const F);
2524 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2525 }
2526 unsafe {
2527 let f: Box_<F> = Box_::new(f);
2528 connect_raw(
2529 self.as_ptr() as *mut _,
2530 c"notify::secondary-icon-tooltip-text".as_ptr() as *const _,
2531 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2532 notify_secondary_icon_tooltip_text_trampoline::<Self, F> as *const (),
2533 )),
2534 Box_::into_raw(f),
2535 )
2536 }
2537 }
2538
2539 #[doc(alias = "show-emoji-icon")]
2540 fn connect_show_emoji_icon_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2541 unsafe extern "C" fn notify_show_emoji_icon_trampoline<
2542 P: IsA<Entry>,
2543 F: Fn(&P) + 'static,
2544 >(
2545 this: *mut ffi::GtkEntry,
2546 _param_spec: glib::ffi::gpointer,
2547 f: glib::ffi::gpointer,
2548 ) {
2549 let f: &F = &*(f as *const F);
2550 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2551 }
2552 unsafe {
2553 let f: Box_<F> = Box_::new(f);
2554 connect_raw(
2555 self.as_ptr() as *mut _,
2556 c"notify::show-emoji-icon".as_ptr() as *const _,
2557 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2558 notify_show_emoji_icon_trampoline::<Self, F> as *const (),
2559 )),
2560 Box_::into_raw(f),
2561 )
2562 }
2563 }
2564
2565 #[doc(alias = "tabs")]
2566 fn connect_tabs_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2567 unsafe extern "C" fn notify_tabs_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
2568 this: *mut ffi::GtkEntry,
2569 _param_spec: glib::ffi::gpointer,
2570 f: glib::ffi::gpointer,
2571 ) {
2572 let f: &F = &*(f as *const F);
2573 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2574 }
2575 unsafe {
2576 let f: Box_<F> = Box_::new(f);
2577 connect_raw(
2578 self.as_ptr() as *mut _,
2579 c"notify::tabs".as_ptr() as *const _,
2580 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2581 notify_tabs_trampoline::<Self, F> as *const (),
2582 )),
2583 Box_::into_raw(f),
2584 )
2585 }
2586 }
2587
2588 #[doc(alias = "text-length")]
2589 fn connect_text_length_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2590 unsafe extern "C" fn notify_text_length_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
2591 this: *mut ffi::GtkEntry,
2592 _param_spec: glib::ffi::gpointer,
2593 f: glib::ffi::gpointer,
2594 ) {
2595 let f: &F = &*(f as *const F);
2596 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2597 }
2598 unsafe {
2599 let f: Box_<F> = Box_::new(f);
2600 connect_raw(
2601 self.as_ptr() as *mut _,
2602 c"notify::text-length".as_ptr() as *const _,
2603 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2604 notify_text_length_trampoline::<Self, F> as *const (),
2605 )),
2606 Box_::into_raw(f),
2607 )
2608 }
2609 }
2610
2611 #[doc(alias = "truncate-multiline")]
2612 fn connect_truncate_multiline_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2613 unsafe extern "C" fn notify_truncate_multiline_trampoline<
2614 P: IsA<Entry>,
2615 F: Fn(&P) + 'static,
2616 >(
2617 this: *mut ffi::GtkEntry,
2618 _param_spec: glib::ffi::gpointer,
2619 f: glib::ffi::gpointer,
2620 ) {
2621 let f: &F = &*(f as *const F);
2622 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2623 }
2624 unsafe {
2625 let f: Box_<F> = Box_::new(f);
2626 connect_raw(
2627 self.as_ptr() as *mut _,
2628 c"notify::truncate-multiline".as_ptr() as *const _,
2629 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2630 notify_truncate_multiline_trampoline::<Self, F> as *const (),
2631 )),
2632 Box_::into_raw(f),
2633 )
2634 }
2635 }
2636
2637 #[doc(alias = "visibility")]
2638 fn connect_visibility_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2639 unsafe extern "C" fn notify_visibility_trampoline<P: IsA<Entry>, F: Fn(&P) + 'static>(
2640 this: *mut ffi::GtkEntry,
2641 _param_spec: glib::ffi::gpointer,
2642 f: glib::ffi::gpointer,
2643 ) {
2644 let f: &F = &*(f as *const F);
2645 f(Entry::from_glib_borrow(this).unsafe_cast_ref())
2646 }
2647 unsafe {
2648 let f: Box_<F> = Box_::new(f);
2649 connect_raw(
2650 self.as_ptr() as *mut _,
2651 c"notify::visibility".as_ptr() as *const _,
2652 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
2653 notify_visibility_trampoline::<Self, F> as *const (),
2654 )),
2655 Box_::into_raw(f),
2656 )
2657 }
2658 }
2659}
2660
2661impl<O: IsA<Entry>> EntryExt for O {}