libhandy_sys/
lib.rs

1// Generated by gir (https://github.com/gtk-rs/gir @ 23d7c100187c)
2// from
3// from gir-files (https://github.com/gtk-rs/gir-files.git @ 6415239ef435)
4// DO NOT EDIT
5
6#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8    clippy::approx_constant,
9    clippy::type_complexity,
10    clippy::unreadable_literal,
11    clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15#[allow(unused_imports)]
16use libc::{
17    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
18    intptr_t, size_t, ssize_t, uintptr_t, FILE,
19};
20
21#[allow(unused_imports)]
22use glib::{gboolean, gconstpointer, gpointer, GType};
23
24// Enums
25pub type HdyCenteringPolicy = c_int;
26pub const HDY_CENTERING_POLICY_LOOSE: HdyCenteringPolicy = 0;
27pub const HDY_CENTERING_POLICY_STRICT: HdyCenteringPolicy = 1;
28
29pub type HdyColorScheme = c_int;
30pub const HDY_COLOR_SCHEME_DEFAULT: HdyColorScheme = 0;
31pub const HDY_COLOR_SCHEME_FORCE_LIGHT: HdyColorScheme = 1;
32pub const HDY_COLOR_SCHEME_PREFER_LIGHT: HdyColorScheme = 2;
33pub const HDY_COLOR_SCHEME_PREFER_DARK: HdyColorScheme = 3;
34pub const HDY_COLOR_SCHEME_FORCE_DARK: HdyColorScheme = 4;
35
36pub type HdyDeckTransitionType = c_int;
37pub const HDY_DECK_TRANSITION_TYPE_OVER: HdyDeckTransitionType = 0;
38pub const HDY_DECK_TRANSITION_TYPE_UNDER: HdyDeckTransitionType = 1;
39pub const HDY_DECK_TRANSITION_TYPE_SLIDE: HdyDeckTransitionType = 2;
40
41pub type HdyFlapFoldPolicy = c_int;
42pub const HDY_FLAP_FOLD_POLICY_NEVER: HdyFlapFoldPolicy = 0;
43pub const HDY_FLAP_FOLD_POLICY_ALWAYS: HdyFlapFoldPolicy = 1;
44pub const HDY_FLAP_FOLD_POLICY_AUTO: HdyFlapFoldPolicy = 2;
45
46pub type HdyFlapTransitionType = c_int;
47pub const HDY_FLAP_TRANSITION_TYPE_OVER: HdyFlapTransitionType = 0;
48pub const HDY_FLAP_TRANSITION_TYPE_UNDER: HdyFlapTransitionType = 1;
49pub const HDY_FLAP_TRANSITION_TYPE_SLIDE: HdyFlapTransitionType = 2;
50
51pub type HdyHeaderGroupChildType = c_int;
52pub const HDY_HEADER_GROUP_CHILD_TYPE_HEADER_BAR: HdyHeaderGroupChildType = 0;
53pub const HDY_HEADER_GROUP_CHILD_TYPE_GTK_HEADER_BAR: HdyHeaderGroupChildType = 1;
54pub const HDY_HEADER_GROUP_CHILD_TYPE_HEADER_GROUP: HdyHeaderGroupChildType = 2;
55
56pub type HdyLeafletTransitionType = c_int;
57pub const HDY_LEAFLET_TRANSITION_TYPE_OVER: HdyLeafletTransitionType = 0;
58pub const HDY_LEAFLET_TRANSITION_TYPE_UNDER: HdyLeafletTransitionType = 1;
59pub const HDY_LEAFLET_TRANSITION_TYPE_SLIDE: HdyLeafletTransitionType = 2;
60
61pub type HdyNavigationDirection = c_int;
62pub const HDY_NAVIGATION_DIRECTION_BACK: HdyNavigationDirection = 0;
63pub const HDY_NAVIGATION_DIRECTION_FORWARD: HdyNavigationDirection = 1;
64
65pub type HdySqueezerTransitionType = c_int;
66pub const HDY_SQUEEZER_TRANSITION_TYPE_NONE: HdySqueezerTransitionType = 0;
67pub const HDY_SQUEEZER_TRANSITION_TYPE_CROSSFADE: HdySqueezerTransitionType = 1;
68
69pub type HdyViewSwitcherPolicy = c_int;
70pub const HDY_VIEW_SWITCHER_POLICY_AUTO: HdyViewSwitcherPolicy = 0;
71pub const HDY_VIEW_SWITCHER_POLICY_NARROW: HdyViewSwitcherPolicy = 1;
72pub const HDY_VIEW_SWITCHER_POLICY_WIDE: HdyViewSwitcherPolicy = 2;
73
74// Callbacks
75pub type HdyAvatarImageLoadFunc =
76    Option<unsafe extern "C" fn(c_int, gpointer) -> *mut gdk_pixbuf::GdkPixbuf>;
77pub type HdyComboRowGetEnumValueNameFunc =
78    Option<unsafe extern "C" fn(*mut HdyEnumValueObject, gpointer) -> *mut c_char>;
79pub type HdyComboRowGetNameFunc =
80    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut c_char>;
81
82// Records
83#[derive(Copy, Clone)]
84#[repr(C)]
85pub struct HdyActionRowClass {
86    pub parent_class: gtk::GtkListBoxRowClass,
87    pub activate: Option<unsafe extern "C" fn(*mut HdyActionRow)>,
88    pub padding: [gpointer; 4],
89}
90
91impl ::std::fmt::Debug for HdyActionRowClass {
92    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
93        f.debug_struct(&format!("HdyActionRowClass @ {self:p}"))
94            .field("parent_class", &self.parent_class)
95            .field("activate", &self.activate)
96            .finish()
97    }
98}
99
100#[derive(Copy, Clone)]
101#[repr(C)]
102pub struct HdyApplicationWindowClass {
103    pub parent_class: gtk::GtkApplicationWindowClass,
104    pub padding: [gpointer; 4],
105}
106
107impl ::std::fmt::Debug for HdyApplicationWindowClass {
108    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
109        f.debug_struct(&format!("HdyApplicationWindowClass @ {self:p}"))
110            .field("parent_class", &self.parent_class)
111            .finish()
112    }
113}
114
115#[derive(Copy, Clone)]
116#[repr(C)]
117pub struct HdyAvatarClass {
118    pub parent_class: gtk::GtkDrawingAreaClass,
119}
120
121impl ::std::fmt::Debug for HdyAvatarClass {
122    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
123        f.debug_struct(&format!("HdyAvatarClass @ {self:p}"))
124            .field("parent_class", &self.parent_class)
125            .finish()
126    }
127}
128
129#[derive(Copy, Clone)]
130#[repr(C)]
131pub struct HdyCarouselClass {
132    pub parent_class: gtk::GtkEventBoxClass,
133}
134
135impl ::std::fmt::Debug for HdyCarouselClass {
136    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
137        f.debug_struct(&format!("HdyCarouselClass @ {self:p}"))
138            .field("parent_class", &self.parent_class)
139            .finish()
140    }
141}
142
143#[derive(Copy, Clone)]
144#[repr(C)]
145pub struct HdyCarouselIndicatorDotsClass {
146    pub parent_class: gtk::GtkDrawingAreaClass,
147}
148
149impl ::std::fmt::Debug for HdyCarouselIndicatorDotsClass {
150    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
151        f.debug_struct(&format!("HdyCarouselIndicatorDotsClass @ {self:p}"))
152            .field("parent_class", &self.parent_class)
153            .finish()
154    }
155}
156
157#[derive(Copy, Clone)]
158#[repr(C)]
159pub struct HdyCarouselIndicatorLinesClass {
160    pub parent_class: gtk::GtkDrawingAreaClass,
161}
162
163impl ::std::fmt::Debug for HdyCarouselIndicatorLinesClass {
164    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
165        f.debug_struct(&format!("HdyCarouselIndicatorLinesClass @ {self:p}"))
166            .field("parent_class", &self.parent_class)
167            .finish()
168    }
169}
170
171#[derive(Copy, Clone)]
172#[repr(C)]
173pub struct HdyClampClass {
174    pub parent_class: gtk::GtkBinClass,
175}
176
177impl ::std::fmt::Debug for HdyClampClass {
178    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
179        f.debug_struct(&format!("HdyClampClass @ {self:p}"))
180            .field("parent_class", &self.parent_class)
181            .finish()
182    }
183}
184
185#[derive(Copy, Clone)]
186#[repr(C)]
187pub struct HdyComboRowClass {
188    pub parent_class: HdyActionRowClass,
189    pub padding: [gpointer; 4],
190}
191
192impl ::std::fmt::Debug for HdyComboRowClass {
193    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
194        f.debug_struct(&format!("HdyComboRowClass @ {self:p}"))
195            .field("parent_class", &self.parent_class)
196            .finish()
197    }
198}
199
200#[derive(Copy, Clone)]
201#[repr(C)]
202pub struct HdyDeckClass {
203    pub parent_class: gtk::GtkContainerClass,
204    pub padding: [gpointer; 4],
205}
206
207impl ::std::fmt::Debug for HdyDeckClass {
208    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
209        f.debug_struct(&format!("HdyDeckClass @ {self:p}"))
210            .field("parent_class", &self.parent_class)
211            .finish()
212    }
213}
214
215#[derive(Copy, Clone)]
216#[repr(C)]
217pub struct HdyEnumValueObjectClass {
218    pub parent_class: gobject::GObjectClass,
219}
220
221impl ::std::fmt::Debug for HdyEnumValueObjectClass {
222    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
223        f.debug_struct(&format!("HdyEnumValueObjectClass @ {self:p}"))
224            .field("parent_class", &self.parent_class)
225            .finish()
226    }
227}
228
229#[derive(Copy, Clone)]
230#[repr(C)]
231pub struct HdyExpanderRowClass {
232    pub parent_class: HdyPreferencesRowClass,
233    pub padding: [gpointer; 4],
234}
235
236impl ::std::fmt::Debug for HdyExpanderRowClass {
237    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
238        f.debug_struct(&format!("HdyExpanderRowClass @ {self:p}"))
239            .field("parent_class", &self.parent_class)
240            .finish()
241    }
242}
243
244#[derive(Copy, Clone)]
245#[repr(C)]
246pub struct HdyFlapClass {
247    pub parent_class: gtk::GtkContainerClass,
248}
249
250impl ::std::fmt::Debug for HdyFlapClass {
251    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
252        f.debug_struct(&format!("HdyFlapClass @ {self:p}"))
253            .field("parent_class", &self.parent_class)
254            .finish()
255    }
256}
257
258#[derive(Copy, Clone)]
259#[repr(C)]
260pub struct HdyHeaderBarClass {
261    pub parent_class: gtk::GtkContainerClass,
262    pub padding: [gpointer; 4],
263}
264
265impl ::std::fmt::Debug for HdyHeaderBarClass {
266    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
267        f.debug_struct(&format!("HdyHeaderBarClass @ {self:p}"))
268            .field("parent_class", &self.parent_class)
269            .finish()
270    }
271}
272
273#[derive(Copy, Clone)]
274#[repr(C)]
275pub struct HdyHeaderGroupChildClass {
276    pub parent_class: gobject::GObjectClass,
277}
278
279impl ::std::fmt::Debug for HdyHeaderGroupChildClass {
280    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
281        f.debug_struct(&format!("HdyHeaderGroupChildClass @ {self:p}"))
282            .field("parent_class", &self.parent_class)
283            .finish()
284    }
285}
286
287#[derive(Copy, Clone)]
288#[repr(C)]
289pub struct HdyHeaderGroupClass {
290    pub parent_class: gobject::GObjectClass,
291}
292
293impl ::std::fmt::Debug for HdyHeaderGroupClass {
294    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
295        f.debug_struct(&format!("HdyHeaderGroupClass @ {self:p}"))
296            .field("parent_class", &self.parent_class)
297            .finish()
298    }
299}
300
301#[derive(Copy, Clone)]
302#[repr(C)]
303pub struct HdyKeypadClass {
304    pub parent_class: gtk::GtkBinClass,
305    pub padding: [gpointer; 4],
306}
307
308impl ::std::fmt::Debug for HdyKeypadClass {
309    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
310        f.debug_struct(&format!("HdyKeypadClass @ {self:p}"))
311            .field("parent_class", &self.parent_class)
312            .finish()
313    }
314}
315
316#[derive(Copy, Clone)]
317#[repr(C)]
318pub struct HdyLeafletClass {
319    pub parent_class: gtk::GtkContainerClass,
320    pub padding: [gpointer; 4],
321}
322
323impl ::std::fmt::Debug for HdyLeafletClass {
324    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
325        f.debug_struct(&format!("HdyLeafletClass @ {self:p}"))
326            .field("parent_class", &self.parent_class)
327            .finish()
328    }
329}
330
331#[derive(Copy, Clone)]
332#[repr(C)]
333pub struct HdyPreferencesGroupClass {
334    pub parent_class: gtk::GtkBinClass,
335    pub padding: [gpointer; 4],
336}
337
338impl ::std::fmt::Debug for HdyPreferencesGroupClass {
339    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
340        f.debug_struct(&format!("HdyPreferencesGroupClass @ {self:p}"))
341            .field("parent_class", &self.parent_class)
342            .finish()
343    }
344}
345
346#[derive(Copy, Clone)]
347#[repr(C)]
348pub struct HdyPreferencesPageClass {
349    pub parent_class: gtk::GtkBinClass,
350    pub padding: [gpointer; 4],
351}
352
353impl ::std::fmt::Debug for HdyPreferencesPageClass {
354    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
355        f.debug_struct(&format!("HdyPreferencesPageClass @ {self:p}"))
356            .field("parent_class", &self.parent_class)
357            .finish()
358    }
359}
360
361#[derive(Copy, Clone)]
362#[repr(C)]
363pub struct HdyPreferencesRowClass {
364    pub parent_class: gtk::GtkListBoxRowClass,
365    pub padding: [gpointer; 4],
366}
367
368impl ::std::fmt::Debug for HdyPreferencesRowClass {
369    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
370        f.debug_struct(&format!("HdyPreferencesRowClass @ {self:p}"))
371            .field("parent_class", &self.parent_class)
372            .finish()
373    }
374}
375
376#[derive(Copy, Clone)]
377#[repr(C)]
378pub struct HdyPreferencesWindowClass {
379    pub parent_class: HdyWindowClass,
380    pub padding: [gpointer; 4],
381}
382
383impl ::std::fmt::Debug for HdyPreferencesWindowClass {
384    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
385        f.debug_struct(&format!("HdyPreferencesWindowClass @ {self:p}"))
386            .field("parent_class", &self.parent_class)
387            .finish()
388    }
389}
390
391#[derive(Copy, Clone)]
392#[repr(C)]
393pub struct HdySearchBarClass {
394    pub parent_class: gtk::GtkBinClass,
395    pub padding: [gpointer; 4],
396}
397
398impl ::std::fmt::Debug for HdySearchBarClass {
399    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
400        f.debug_struct(&format!("HdySearchBarClass @ {self:p}"))
401            .field("parent_class", &self.parent_class)
402            .finish()
403    }
404}
405
406#[derive(Copy, Clone)]
407#[repr(C)]
408pub struct HdySqueezerClass {
409    pub parent_class: gtk::GtkContainerClass,
410}
411
412impl ::std::fmt::Debug for HdySqueezerClass {
413    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
414        f.debug_struct(&format!("HdySqueezerClass @ {self:p}"))
415            .field("parent_class", &self.parent_class)
416            .finish()
417    }
418}
419
420#[derive(Copy, Clone)]
421#[repr(C)]
422pub struct HdyStatusPageClass {
423    pub parent_class: gtk::GtkBinClass,
424}
425
426impl ::std::fmt::Debug for HdyStatusPageClass {
427    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
428        f.debug_struct(&format!("HdyStatusPageClass @ {self:p}"))
429            .field("parent_class", &self.parent_class)
430            .finish()
431    }
432}
433
434#[derive(Copy, Clone)]
435#[repr(C)]
436pub struct HdyStyleManagerClass {
437    pub parent_class: gobject::GObjectClass,
438}
439
440impl ::std::fmt::Debug for HdyStyleManagerClass {
441    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
442        f.debug_struct(&format!("HdyStyleManagerClass @ {self:p}"))
443            .field("parent_class", &self.parent_class)
444            .finish()
445    }
446}
447
448#[derive(Copy, Clone)]
449#[repr(C)]
450pub struct HdySwipeGroupClass {
451    pub parent_class: gobject::GObjectClass,
452}
453
454impl ::std::fmt::Debug for HdySwipeGroupClass {
455    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
456        f.debug_struct(&format!("HdySwipeGroupClass @ {self:p}"))
457            .field("parent_class", &self.parent_class)
458            .finish()
459    }
460}
461
462#[derive(Copy, Clone)]
463#[repr(C)]
464pub struct HdySwipeTrackerClass {
465    pub parent_class: gobject::GObjectClass,
466}
467
468impl ::std::fmt::Debug for HdySwipeTrackerClass {
469    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
470        f.debug_struct(&format!("HdySwipeTrackerClass @ {self:p}"))
471            .field("parent_class", &self.parent_class)
472            .finish()
473    }
474}
475
476#[derive(Copy, Clone)]
477#[repr(C)]
478pub struct HdySwipeableInterface {
479    pub parent: gobject::GTypeInterface,
480    pub switch_child: Option<unsafe extern "C" fn(*mut HdySwipeable, c_uint, i64)>,
481    pub get_swipe_tracker: Option<unsafe extern "C" fn(*mut HdySwipeable) -> *mut HdySwipeTracker>,
482    pub get_distance: Option<unsafe extern "C" fn(*mut HdySwipeable) -> c_double>,
483    pub get_snap_points:
484        Option<unsafe extern "C" fn(*mut HdySwipeable, *mut c_int) -> *mut c_double>,
485    pub get_progress: Option<unsafe extern "C" fn(*mut HdySwipeable) -> c_double>,
486    pub get_cancel_progress: Option<unsafe extern "C" fn(*mut HdySwipeable) -> c_double>,
487    pub get_swipe_area: Option<
488        unsafe extern "C" fn(
489            *mut HdySwipeable,
490            HdyNavigationDirection,
491            gboolean,
492            *mut gdk::GdkRectangle,
493        ),
494    >,
495    pub padding: [gpointer; 4],
496}
497
498impl ::std::fmt::Debug for HdySwipeableInterface {
499    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
500        f.debug_struct(&format!("HdySwipeableInterface @ {self:p}"))
501            .field("parent", &self.parent)
502            .field("switch_child", &self.switch_child)
503            .field("get_swipe_tracker", &self.get_swipe_tracker)
504            .field("get_distance", &self.get_distance)
505            .field("get_snap_points", &self.get_snap_points)
506            .field("get_progress", &self.get_progress)
507            .field("get_cancel_progress", &self.get_cancel_progress)
508            .field("get_swipe_area", &self.get_swipe_area)
509            .finish()
510    }
511}
512
513#[derive(Copy, Clone)]
514#[repr(C)]
515pub struct HdyTabBarClass {
516    pub parent_class: gtk::GtkBinClass,
517}
518
519impl ::std::fmt::Debug for HdyTabBarClass {
520    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
521        f.debug_struct(&format!("HdyTabBarClass @ {self:p}"))
522            .field("parent_class", &self.parent_class)
523            .finish()
524    }
525}
526
527#[derive(Copy, Clone)]
528#[repr(C)]
529pub struct HdyTabPageClass {
530    pub parent_class: gobject::GObjectClass,
531}
532
533impl ::std::fmt::Debug for HdyTabPageClass {
534    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
535        f.debug_struct(&format!("HdyTabPageClass @ {self:p}"))
536            .field("parent_class", &self.parent_class)
537            .finish()
538    }
539}
540
541#[derive(Copy, Clone)]
542#[repr(C)]
543pub struct HdyTabViewClass {
544    pub parent_class: gtk::GtkBinClass,
545}
546
547impl ::std::fmt::Debug for HdyTabViewClass {
548    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
549        f.debug_struct(&format!("HdyTabViewClass @ {self:p}"))
550            .field("parent_class", &self.parent_class)
551            .finish()
552    }
553}
554
555#[derive(Copy, Clone)]
556#[repr(C)]
557pub struct HdyTitleBarClass {
558    pub parent_class: gtk::GtkBinClass,
559}
560
561impl ::std::fmt::Debug for HdyTitleBarClass {
562    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
563        f.debug_struct(&format!("HdyTitleBarClass @ {self:p}"))
564            .field("parent_class", &self.parent_class)
565            .finish()
566    }
567}
568
569#[derive(Copy, Clone)]
570#[repr(C)]
571pub struct HdyValueObjectClass {
572    pub parent_class: gobject::GObjectClass,
573}
574
575impl ::std::fmt::Debug for HdyValueObjectClass {
576    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
577        f.debug_struct(&format!("HdyValueObjectClass @ {self:p}"))
578            .field("parent_class", &self.parent_class)
579            .finish()
580    }
581}
582
583#[derive(Copy, Clone)]
584#[repr(C)]
585pub struct HdyViewSwitcherBarClass {
586    pub parent_class: gtk::GtkBinClass,
587}
588
589impl ::std::fmt::Debug for HdyViewSwitcherBarClass {
590    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
591        f.debug_struct(&format!("HdyViewSwitcherBarClass @ {self:p}"))
592            .field("parent_class", &self.parent_class)
593            .finish()
594    }
595}
596
597#[derive(Copy, Clone)]
598#[repr(C)]
599pub struct HdyViewSwitcherClass {
600    pub parent_class: gtk::GtkBinClass,
601}
602
603impl ::std::fmt::Debug for HdyViewSwitcherClass {
604    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
605        f.debug_struct(&format!("HdyViewSwitcherClass @ {self:p}"))
606            .field("parent_class", &self.parent_class)
607            .finish()
608    }
609}
610
611#[derive(Copy, Clone)]
612#[repr(C)]
613pub struct HdyViewSwitcherTitleClass {
614    pub parent_class: gtk::GtkBinClass,
615}
616
617impl ::std::fmt::Debug for HdyViewSwitcherTitleClass {
618    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
619        f.debug_struct(&format!("HdyViewSwitcherTitleClass @ {self:p}"))
620            .field("parent_class", &self.parent_class)
621            .finish()
622    }
623}
624
625#[derive(Copy, Clone)]
626#[repr(C)]
627pub struct HdyWindowClass {
628    pub parent_class: gtk::GtkWindowClass,
629    pub padding: [gpointer; 4],
630}
631
632impl ::std::fmt::Debug for HdyWindowClass {
633    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
634        f.debug_struct(&format!("HdyWindowClass @ {self:p}"))
635            .field("parent_class", &self.parent_class)
636            .finish()
637    }
638}
639
640#[derive(Copy, Clone)]
641#[repr(C)]
642pub struct HdyWindowHandleClass {
643    pub parent_class: gtk::GtkEventBoxClass,
644}
645
646impl ::std::fmt::Debug for HdyWindowHandleClass {
647    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
648        f.debug_struct(&format!("HdyWindowHandleClass @ {self:p}"))
649            .field("parent_class", &self.parent_class)
650            .finish()
651    }
652}
653
654// Classes
655#[derive(Copy, Clone)]
656#[repr(C)]
657pub struct HdyActionRow {
658    pub parent_instance: HdyPreferencesRow,
659}
660
661impl ::std::fmt::Debug for HdyActionRow {
662    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
663        f.debug_struct(&format!("HdyActionRow @ {self:p}"))
664            .field("parent_instance", &self.parent_instance)
665            .finish()
666    }
667}
668
669#[derive(Copy, Clone)]
670#[repr(C)]
671pub struct HdyApplicationWindow {
672    pub parent_instance: gtk::GtkApplicationWindow,
673}
674
675impl ::std::fmt::Debug for HdyApplicationWindow {
676    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
677        f.debug_struct(&format!("HdyApplicationWindow @ {self:p}"))
678            .field("parent_instance", &self.parent_instance)
679            .finish()
680    }
681}
682
683#[repr(C)]
684pub struct HdyAvatar {
685    _data: [u8; 0],
686    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
687}
688
689impl ::std::fmt::Debug for HdyAvatar {
690    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
691        f.debug_struct(&format!("HdyAvatar @ {self:p}")).finish()
692    }
693}
694
695#[repr(C)]
696pub struct HdyCarousel {
697    _data: [u8; 0],
698    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
699}
700
701impl ::std::fmt::Debug for HdyCarousel {
702    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
703        f.debug_struct(&format!("HdyCarousel @ {self:p}")).finish()
704    }
705}
706
707#[repr(C)]
708pub struct HdyCarouselIndicatorDots {
709    _data: [u8; 0],
710    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
711}
712
713impl ::std::fmt::Debug for HdyCarouselIndicatorDots {
714    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
715        f.debug_struct(&format!("HdyCarouselIndicatorDots @ {self:p}"))
716            .finish()
717    }
718}
719
720#[repr(C)]
721pub struct HdyCarouselIndicatorLines {
722    _data: [u8; 0],
723    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
724}
725
726impl ::std::fmt::Debug for HdyCarouselIndicatorLines {
727    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
728        f.debug_struct(&format!("HdyCarouselIndicatorLines @ {self:p}"))
729            .finish()
730    }
731}
732
733#[repr(C)]
734pub struct HdyClamp {
735    _data: [u8; 0],
736    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
737}
738
739impl ::std::fmt::Debug for HdyClamp {
740    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
741        f.debug_struct(&format!("HdyClamp @ {self:p}")).finish()
742    }
743}
744
745#[derive(Copy, Clone)]
746#[repr(C)]
747pub struct HdyComboRow {
748    pub parent_instance: HdyActionRow,
749}
750
751impl ::std::fmt::Debug for HdyComboRow {
752    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
753        f.debug_struct(&format!("HdyComboRow @ {self:p}"))
754            .field("parent_instance", &self.parent_instance)
755            .finish()
756    }
757}
758
759#[derive(Copy, Clone)]
760#[repr(C)]
761pub struct HdyDeck {
762    pub parent_instance: gtk::GtkContainer,
763}
764
765impl ::std::fmt::Debug for HdyDeck {
766    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
767        f.debug_struct(&format!("HdyDeck @ {self:p}"))
768            .field("parent_instance", &self.parent_instance)
769            .finish()
770    }
771}
772
773#[repr(C)]
774pub struct HdyEnumValueObject {
775    _data: [u8; 0],
776    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
777}
778
779impl ::std::fmt::Debug for HdyEnumValueObject {
780    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
781        f.debug_struct(&format!("HdyEnumValueObject @ {self:p}"))
782            .finish()
783    }
784}
785
786#[derive(Copy, Clone)]
787#[repr(C)]
788pub struct HdyExpanderRow {
789    pub parent_instance: HdyPreferencesRow,
790}
791
792impl ::std::fmt::Debug for HdyExpanderRow {
793    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
794        f.debug_struct(&format!("HdyExpanderRow @ {self:p}"))
795            .field("parent_instance", &self.parent_instance)
796            .finish()
797    }
798}
799
800#[repr(C)]
801pub struct HdyFlap {
802    _data: [u8; 0],
803    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
804}
805
806impl ::std::fmt::Debug for HdyFlap {
807    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
808        f.debug_struct(&format!("HdyFlap @ {self:p}")).finish()
809    }
810}
811
812#[derive(Copy, Clone)]
813#[repr(C)]
814pub struct HdyHeaderBar {
815    pub parent_instance: gtk::GtkContainer,
816}
817
818impl ::std::fmt::Debug for HdyHeaderBar {
819    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
820        f.debug_struct(&format!("HdyHeaderBar @ {self:p}"))
821            .field("parent_instance", &self.parent_instance)
822            .finish()
823    }
824}
825
826#[repr(C)]
827pub struct HdyHeaderGroup {
828    _data: [u8; 0],
829    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
830}
831
832impl ::std::fmt::Debug for HdyHeaderGroup {
833    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
834        f.debug_struct(&format!("HdyHeaderGroup @ {self:p}"))
835            .finish()
836    }
837}
838
839#[repr(C)]
840pub struct HdyHeaderGroupChild {
841    _data: [u8; 0],
842    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
843}
844
845impl ::std::fmt::Debug for HdyHeaderGroupChild {
846    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
847        f.debug_struct(&format!("HdyHeaderGroupChild @ {self:p}"))
848            .finish()
849    }
850}
851
852#[derive(Copy, Clone)]
853#[repr(C)]
854pub struct HdyKeypad {
855    pub parent_instance: gtk::GtkBin,
856}
857
858impl ::std::fmt::Debug for HdyKeypad {
859    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
860        f.debug_struct(&format!("HdyKeypad @ {self:p}"))
861            .field("parent_instance", &self.parent_instance)
862            .finish()
863    }
864}
865
866#[derive(Copy, Clone)]
867#[repr(C)]
868pub struct HdyLeaflet {
869    pub parent_instance: gtk::GtkContainer,
870}
871
872impl ::std::fmt::Debug for HdyLeaflet {
873    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
874        f.debug_struct(&format!("HdyLeaflet @ {self:p}"))
875            .field("parent_instance", &self.parent_instance)
876            .finish()
877    }
878}
879
880#[derive(Copy, Clone)]
881#[repr(C)]
882pub struct HdyPreferencesGroup {
883    pub parent_instance: gtk::GtkBin,
884}
885
886impl ::std::fmt::Debug for HdyPreferencesGroup {
887    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
888        f.debug_struct(&format!("HdyPreferencesGroup @ {self:p}"))
889            .field("parent_instance", &self.parent_instance)
890            .finish()
891    }
892}
893
894#[derive(Copy, Clone)]
895#[repr(C)]
896pub struct HdyPreferencesPage {
897    pub parent_instance: gtk::GtkBin,
898}
899
900impl ::std::fmt::Debug for HdyPreferencesPage {
901    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
902        f.debug_struct(&format!("HdyPreferencesPage @ {self:p}"))
903            .field("parent_instance", &self.parent_instance)
904            .finish()
905    }
906}
907
908#[derive(Copy, Clone)]
909#[repr(C)]
910pub struct HdyPreferencesRow {
911    pub parent_instance: gtk::GtkListBoxRow,
912}
913
914impl ::std::fmt::Debug for HdyPreferencesRow {
915    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
916        f.debug_struct(&format!("HdyPreferencesRow @ {self:p}"))
917            .field("parent_instance", &self.parent_instance)
918            .finish()
919    }
920}
921
922#[derive(Copy, Clone)]
923#[repr(C)]
924pub struct HdyPreferencesWindow {
925    pub parent_instance: HdyWindow,
926}
927
928impl ::std::fmt::Debug for HdyPreferencesWindow {
929    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
930        f.debug_struct(&format!("HdyPreferencesWindow @ {self:p}"))
931            .field("parent_instance", &self.parent_instance)
932            .finish()
933    }
934}
935
936#[derive(Copy, Clone)]
937#[repr(C)]
938pub struct HdySearchBar {
939    pub parent_instance: gtk::GtkBin,
940}
941
942impl ::std::fmt::Debug for HdySearchBar {
943    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
944        f.debug_struct(&format!("HdySearchBar @ {self:p}"))
945            .field("parent_instance", &self.parent_instance)
946            .finish()
947    }
948}
949
950#[repr(C)]
951pub struct HdySqueezer {
952    _data: [u8; 0],
953    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
954}
955
956impl ::std::fmt::Debug for HdySqueezer {
957    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
958        f.debug_struct(&format!("HdySqueezer @ {self:p}")).finish()
959    }
960}
961
962#[repr(C)]
963pub struct HdyStatusPage {
964    _data: [u8; 0],
965    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
966}
967
968impl ::std::fmt::Debug for HdyStatusPage {
969    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
970        f.debug_struct(&format!("HdyStatusPage @ {self:p}"))
971            .finish()
972    }
973}
974
975#[repr(C)]
976pub struct HdyStyleManager {
977    _data: [u8; 0],
978    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
979}
980
981impl ::std::fmt::Debug for HdyStyleManager {
982    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
983        f.debug_struct(&format!("HdyStyleManager @ {self:p}"))
984            .finish()
985    }
986}
987
988#[repr(C)]
989pub struct HdySwipeGroup {
990    _data: [u8; 0],
991    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
992}
993
994impl ::std::fmt::Debug for HdySwipeGroup {
995    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
996        f.debug_struct(&format!("HdySwipeGroup @ {self:p}"))
997            .finish()
998    }
999}
1000
1001#[repr(C)]
1002pub struct HdySwipeTracker {
1003    _data: [u8; 0],
1004    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1005}
1006
1007impl ::std::fmt::Debug for HdySwipeTracker {
1008    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1009        f.debug_struct(&format!("HdySwipeTracker @ {self:p}"))
1010            .finish()
1011    }
1012}
1013
1014#[repr(C)]
1015pub struct HdyTabBar {
1016    _data: [u8; 0],
1017    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1018}
1019
1020impl ::std::fmt::Debug for HdyTabBar {
1021    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1022        f.debug_struct(&format!("HdyTabBar @ {self:p}")).finish()
1023    }
1024}
1025
1026#[repr(C)]
1027pub struct HdyTabPage {
1028    _data: [u8; 0],
1029    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1030}
1031
1032impl ::std::fmt::Debug for HdyTabPage {
1033    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1034        f.debug_struct(&format!("HdyTabPage @ {self:p}")).finish()
1035    }
1036}
1037
1038#[repr(C)]
1039pub struct HdyTabView {
1040    _data: [u8; 0],
1041    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1042}
1043
1044impl ::std::fmt::Debug for HdyTabView {
1045    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1046        f.debug_struct(&format!("HdyTabView @ {self:p}")).finish()
1047    }
1048}
1049
1050#[repr(C)]
1051pub struct HdyTitleBar {
1052    _data: [u8; 0],
1053    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1054}
1055
1056impl ::std::fmt::Debug for HdyTitleBar {
1057    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1058        f.debug_struct(&format!("HdyTitleBar @ {self:p}")).finish()
1059    }
1060}
1061
1062#[repr(C)]
1063pub struct HdyValueObject {
1064    _data: [u8; 0],
1065    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1066}
1067
1068impl ::std::fmt::Debug for HdyValueObject {
1069    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1070        f.debug_struct(&format!("HdyValueObject @ {self:p}"))
1071            .finish()
1072    }
1073}
1074
1075#[repr(C)]
1076pub struct HdyViewSwitcher {
1077    _data: [u8; 0],
1078    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1079}
1080
1081impl ::std::fmt::Debug for HdyViewSwitcher {
1082    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1083        f.debug_struct(&format!("HdyViewSwitcher @ {self:p}"))
1084            .finish()
1085    }
1086}
1087
1088#[repr(C)]
1089pub struct HdyViewSwitcherBar {
1090    _data: [u8; 0],
1091    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1092}
1093
1094impl ::std::fmt::Debug for HdyViewSwitcherBar {
1095    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1096        f.debug_struct(&format!("HdyViewSwitcherBar @ {self:p}"))
1097            .finish()
1098    }
1099}
1100
1101#[repr(C)]
1102pub struct HdyViewSwitcherTitle {
1103    _data: [u8; 0],
1104    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1105}
1106
1107impl ::std::fmt::Debug for HdyViewSwitcherTitle {
1108    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1109        f.debug_struct(&format!("HdyViewSwitcherTitle @ {self:p}"))
1110            .finish()
1111    }
1112}
1113
1114#[derive(Copy, Clone)]
1115#[repr(C)]
1116pub struct HdyWindow {
1117    pub parent_instance: gtk::GtkWindow,
1118}
1119
1120impl ::std::fmt::Debug for HdyWindow {
1121    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1122        f.debug_struct(&format!("HdyWindow @ {self:p}"))
1123            .field("parent_instance", &self.parent_instance)
1124            .finish()
1125    }
1126}
1127
1128#[repr(C)]
1129pub struct HdyWindowHandle {
1130    _data: [u8; 0],
1131    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1132}
1133
1134impl ::std::fmt::Debug for HdyWindowHandle {
1135    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1136        f.debug_struct(&format!("HdyWindowHandle @ {self:p}"))
1137            .finish()
1138    }
1139}
1140
1141// Interfaces
1142#[repr(C)]
1143pub struct HdySwipeable {
1144    _data: [u8; 0],
1145    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1146}
1147
1148impl ::std::fmt::Debug for HdySwipeable {
1149    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1150        write!(f, "HdySwipeable @ {self:p}")
1151    }
1152}
1153
1154#[link(name = "handy-1")]
1155extern "C" {
1156
1157    //=========================================================================
1158    // HdyCenteringPolicy
1159    //=========================================================================
1160    pub fn hdy_centering_policy_get_type() -> GType;
1161
1162    //=========================================================================
1163    // HdyColorScheme
1164    //=========================================================================
1165    #[cfg(feature = "v1_6")]
1166    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1167    pub fn hdy_color_scheme_get_type() -> GType;
1168
1169    //=========================================================================
1170    // HdyDeckTransitionType
1171    //=========================================================================
1172    pub fn hdy_deck_transition_type_get_type() -> GType;
1173
1174    //=========================================================================
1175    // HdyFlapFoldPolicy
1176    //=========================================================================
1177    #[cfg(feature = "v1_2")]
1178    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1179    pub fn hdy_flap_fold_policy_get_type() -> GType;
1180
1181    //=========================================================================
1182    // HdyFlapTransitionType
1183    //=========================================================================
1184    #[cfg(feature = "v1_2")]
1185    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1186    pub fn hdy_flap_transition_type_get_type() -> GType;
1187
1188    //=========================================================================
1189    // HdyHeaderGroupChildType
1190    //=========================================================================
1191    pub fn hdy_header_group_child_type_get_type() -> GType;
1192
1193    //=========================================================================
1194    // HdyLeafletTransitionType
1195    //=========================================================================
1196    pub fn hdy_leaflet_transition_type_get_type() -> GType;
1197
1198    //=========================================================================
1199    // HdyNavigationDirection
1200    //=========================================================================
1201    pub fn hdy_navigation_direction_get_type() -> GType;
1202
1203    //=========================================================================
1204    // HdySqueezerTransitionType
1205    //=========================================================================
1206    pub fn hdy_squeezer_transition_type_get_type() -> GType;
1207
1208    //=========================================================================
1209    // HdyViewSwitcherPolicy
1210    //=========================================================================
1211    pub fn hdy_view_switcher_policy_get_type() -> GType;
1212
1213    //=========================================================================
1214    // HdyActionRow
1215    //=========================================================================
1216    pub fn hdy_action_row_get_type() -> GType;
1217    pub fn hdy_action_row_new() -> *mut gtk::GtkWidget;
1218    pub fn hdy_action_row_activate(self_: *mut HdyActionRow);
1219    pub fn hdy_action_row_add_prefix(self_: *mut HdyActionRow, widget: *mut gtk::GtkWidget);
1220    pub fn hdy_action_row_get_activatable_widget(self_: *mut HdyActionRow) -> *mut gtk::GtkWidget;
1221    pub fn hdy_action_row_get_icon_name(self_: *mut HdyActionRow) -> *const c_char;
1222    pub fn hdy_action_row_get_subtitle(self_: *mut HdyActionRow) -> *const c_char;
1223    #[cfg(feature = "v1_2")]
1224    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1225    pub fn hdy_action_row_get_subtitle_lines(self_: *mut HdyActionRow) -> c_int;
1226    #[cfg(feature = "v1_2")]
1227    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1228    pub fn hdy_action_row_get_title_lines(self_: *mut HdyActionRow) -> c_int;
1229    pub fn hdy_action_row_get_use_underline(self_: *mut HdyActionRow) -> gboolean;
1230    pub fn hdy_action_row_set_activatable_widget(
1231        self_: *mut HdyActionRow,
1232        widget: *mut gtk::GtkWidget,
1233    );
1234    pub fn hdy_action_row_set_icon_name(self_: *mut HdyActionRow, icon_name: *const c_char);
1235    pub fn hdy_action_row_set_subtitle(self_: *mut HdyActionRow, subtitle: *const c_char);
1236    #[cfg(feature = "v1_2")]
1237    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1238    pub fn hdy_action_row_set_subtitle_lines(self_: *mut HdyActionRow, subtitle_lines: c_int);
1239    #[cfg(feature = "v1_2")]
1240    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1241    pub fn hdy_action_row_set_title_lines(self_: *mut HdyActionRow, title_lines: c_int);
1242    pub fn hdy_action_row_set_use_underline(self_: *mut HdyActionRow, use_underline: gboolean);
1243
1244    //=========================================================================
1245    // HdyApplicationWindow
1246    //=========================================================================
1247    pub fn hdy_application_window_get_type() -> GType;
1248    pub fn hdy_application_window_new() -> *mut gtk::GtkWidget;
1249
1250    //=========================================================================
1251    // HdyAvatar
1252    //=========================================================================
1253    pub fn hdy_avatar_get_type() -> GType;
1254    pub fn hdy_avatar_new(
1255        size: c_int,
1256        text: *const c_char,
1257        show_initials: gboolean,
1258    ) -> *mut gtk::GtkWidget;
1259    #[cfg(feature = "v1_2")]
1260    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1261    pub fn hdy_avatar_draw_to_pixbuf(
1262        self_: *mut HdyAvatar,
1263        size: c_int,
1264        scale_factor: c_int,
1265    ) -> *mut gdk_pixbuf::GdkPixbuf;
1266    #[cfg(feature = "v1_2")]
1267    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1268    pub fn hdy_avatar_draw_to_pixbuf_async(
1269        self_: *mut HdyAvatar,
1270        size: c_int,
1271        scale_factor: c_int,
1272        cancellable: *mut gio::GCancellable,
1273        callback: gio::GAsyncReadyCallback,
1274        user_data: gpointer,
1275    );
1276    #[cfg(feature = "v1_2")]
1277    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1278    pub fn hdy_avatar_draw_to_pixbuf_finish(
1279        self_: *mut HdyAvatar,
1280        async_result: *mut gio::GAsyncResult,
1281    ) -> *mut gdk_pixbuf::GdkPixbuf;
1282    pub fn hdy_avatar_get_icon_name(self_: *mut HdyAvatar) -> *const c_char;
1283    #[cfg(feature = "v1_2")]
1284    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1285    pub fn hdy_avatar_get_loadable_icon(self_: *mut HdyAvatar) -> *mut gio::GLoadableIcon;
1286    pub fn hdy_avatar_get_show_initials(self_: *mut HdyAvatar) -> gboolean;
1287    pub fn hdy_avatar_get_size(self_: *mut HdyAvatar) -> c_int;
1288    pub fn hdy_avatar_get_text(self_: *mut HdyAvatar) -> *const c_char;
1289    pub fn hdy_avatar_set_icon_name(self_: *mut HdyAvatar, icon_name: *const c_char);
1290    pub fn hdy_avatar_set_image_load_func(
1291        self_: *mut HdyAvatar,
1292        load_image: HdyAvatarImageLoadFunc,
1293        user_data: gpointer,
1294        destroy: glib::GDestroyNotify,
1295    );
1296    #[cfg(feature = "v1_2")]
1297    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1298    pub fn hdy_avatar_set_loadable_icon(self_: *mut HdyAvatar, icon: *mut gio::GLoadableIcon);
1299    pub fn hdy_avatar_set_show_initials(self_: *mut HdyAvatar, show_initials: gboolean);
1300    pub fn hdy_avatar_set_size(self_: *mut HdyAvatar, size: c_int);
1301    pub fn hdy_avatar_set_text(self_: *mut HdyAvatar, text: *const c_char);
1302
1303    //=========================================================================
1304    // HdyCarousel
1305    //=========================================================================
1306    pub fn hdy_carousel_get_type() -> GType;
1307    pub fn hdy_carousel_new() -> *mut gtk::GtkWidget;
1308    #[cfg(feature = "v1_2")]
1309    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1310    pub fn hdy_carousel_get_allow_long_swipes(self_: *mut HdyCarousel) -> gboolean;
1311    pub fn hdy_carousel_get_allow_mouse_drag(self_: *mut HdyCarousel) -> gboolean;
1312    #[cfg(feature = "v1_4")]
1313    #[cfg_attr(docsrs, doc(cfg(feature = "v1_4")))]
1314    pub fn hdy_carousel_get_allow_scroll_wheel(self_: *mut HdyCarousel) -> gboolean;
1315    pub fn hdy_carousel_get_animation_duration(self_: *mut HdyCarousel) -> c_uint;
1316    pub fn hdy_carousel_get_interactive(self_: *mut HdyCarousel) -> gboolean;
1317    pub fn hdy_carousel_get_n_pages(self_: *mut HdyCarousel) -> c_uint;
1318    pub fn hdy_carousel_get_position(self_: *mut HdyCarousel) -> c_double;
1319    pub fn hdy_carousel_get_reveal_duration(self_: *mut HdyCarousel) -> c_uint;
1320    pub fn hdy_carousel_get_spacing(self_: *mut HdyCarousel) -> c_uint;
1321    pub fn hdy_carousel_insert(
1322        self_: *mut HdyCarousel,
1323        child: *mut gtk::GtkWidget,
1324        position: c_int,
1325    );
1326    pub fn hdy_carousel_prepend(self_: *mut HdyCarousel, child: *mut gtk::GtkWidget);
1327    pub fn hdy_carousel_reorder(
1328        self_: *mut HdyCarousel,
1329        child: *mut gtk::GtkWidget,
1330        position: c_int,
1331    );
1332    pub fn hdy_carousel_scroll_to(self_: *mut HdyCarousel, widget: *mut gtk::GtkWidget);
1333    pub fn hdy_carousel_scroll_to_full(
1334        self_: *mut HdyCarousel,
1335        widget: *mut gtk::GtkWidget,
1336        duration: i64,
1337    );
1338    #[cfg(feature = "v1_2")]
1339    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1340    pub fn hdy_carousel_set_allow_long_swipes(self_: *mut HdyCarousel, allow_long_swipes: gboolean);
1341    pub fn hdy_carousel_set_allow_mouse_drag(self_: *mut HdyCarousel, allow_mouse_drag: gboolean);
1342    #[cfg(feature = "v1_4")]
1343    #[cfg_attr(docsrs, doc(cfg(feature = "v1_4")))]
1344    pub fn hdy_carousel_set_allow_scroll_wheel(
1345        self_: *mut HdyCarousel,
1346        allow_scroll_wheel: gboolean,
1347    );
1348    pub fn hdy_carousel_set_animation_duration(self_: *mut HdyCarousel, duration: c_uint);
1349    pub fn hdy_carousel_set_interactive(self_: *mut HdyCarousel, interactive: gboolean);
1350    pub fn hdy_carousel_set_reveal_duration(self_: *mut HdyCarousel, reveal_duration: c_uint);
1351    pub fn hdy_carousel_set_spacing(self_: *mut HdyCarousel, spacing: c_uint);
1352
1353    //=========================================================================
1354    // HdyCarouselIndicatorDots
1355    //=========================================================================
1356    pub fn hdy_carousel_indicator_dots_get_type() -> GType;
1357    pub fn hdy_carousel_indicator_dots_new() -> *mut gtk::GtkWidget;
1358    pub fn hdy_carousel_indicator_dots_get_carousel(
1359        self_: *mut HdyCarouselIndicatorDots,
1360    ) -> *mut HdyCarousel;
1361    pub fn hdy_carousel_indicator_dots_set_carousel(
1362        self_: *mut HdyCarouselIndicatorDots,
1363        carousel: *mut HdyCarousel,
1364    );
1365
1366    //=========================================================================
1367    // HdyCarouselIndicatorLines
1368    //=========================================================================
1369    pub fn hdy_carousel_indicator_lines_get_type() -> GType;
1370    pub fn hdy_carousel_indicator_lines_new() -> *mut gtk::GtkWidget;
1371    pub fn hdy_carousel_indicator_lines_get_carousel(
1372        self_: *mut HdyCarouselIndicatorLines,
1373    ) -> *mut HdyCarousel;
1374    pub fn hdy_carousel_indicator_lines_set_carousel(
1375        self_: *mut HdyCarouselIndicatorLines,
1376        carousel: *mut HdyCarousel,
1377    );
1378
1379    //=========================================================================
1380    // HdyClamp
1381    //=========================================================================
1382    pub fn hdy_clamp_get_type() -> GType;
1383    pub fn hdy_clamp_new() -> *mut gtk::GtkWidget;
1384    pub fn hdy_clamp_get_maximum_size(self_: *mut HdyClamp) -> c_int;
1385    pub fn hdy_clamp_get_tightening_threshold(self_: *mut HdyClamp) -> c_int;
1386    pub fn hdy_clamp_set_maximum_size(self_: *mut HdyClamp, maximum_size: c_int);
1387    pub fn hdy_clamp_set_tightening_threshold(self_: *mut HdyClamp, tightening_threshold: c_int);
1388
1389    //=========================================================================
1390    // HdyComboRow
1391    //=========================================================================
1392    pub fn hdy_combo_row_get_type() -> GType;
1393    pub fn hdy_combo_row_new() -> *mut gtk::GtkWidget;
1394    pub fn hdy_combo_row_bind_model(
1395        self_: *mut HdyComboRow,
1396        model: *mut gio::GListModel,
1397        create_list_widget_func: gtk::GtkListBoxCreateWidgetFunc,
1398        create_current_widget_func: gtk::GtkListBoxCreateWidgetFunc,
1399        user_data: gpointer,
1400        user_data_free_func: glib::GDestroyNotify,
1401    );
1402    pub fn hdy_combo_row_bind_name_model(
1403        self_: *mut HdyComboRow,
1404        model: *mut gio::GListModel,
1405        get_name_func: HdyComboRowGetNameFunc,
1406        user_data: gpointer,
1407        user_data_free_func: glib::GDestroyNotify,
1408    );
1409    pub fn hdy_combo_row_get_model(self_: *mut HdyComboRow) -> *mut gio::GListModel;
1410    pub fn hdy_combo_row_get_selected_index(self_: *mut HdyComboRow) -> c_int;
1411    pub fn hdy_combo_row_get_use_subtitle(self_: *mut HdyComboRow) -> gboolean;
1412    pub fn hdy_combo_row_set_for_enum(
1413        self_: *mut HdyComboRow,
1414        enum_type: GType,
1415        get_name_func: HdyComboRowGetEnumValueNameFunc,
1416        user_data: gpointer,
1417        user_data_free_func: glib::GDestroyNotify,
1418    );
1419    pub fn hdy_combo_row_set_get_name_func(
1420        self_: *mut HdyComboRow,
1421        get_name_func: HdyComboRowGetNameFunc,
1422        user_data: gpointer,
1423        user_data_free_func: glib::GDestroyNotify,
1424    );
1425    pub fn hdy_combo_row_set_selected_index(self_: *mut HdyComboRow, selected_index: c_int);
1426    pub fn hdy_combo_row_set_use_subtitle(self_: *mut HdyComboRow, use_subtitle: gboolean);
1427
1428    //=========================================================================
1429    // HdyDeck
1430    //=========================================================================
1431    pub fn hdy_deck_get_type() -> GType;
1432    pub fn hdy_deck_new() -> *mut gtk::GtkWidget;
1433    pub fn hdy_deck_get_adjacent_child(
1434        self_: *mut HdyDeck,
1435        direction: HdyNavigationDirection,
1436    ) -> *mut gtk::GtkWidget;
1437    pub fn hdy_deck_get_can_swipe_back(self_: *mut HdyDeck) -> gboolean;
1438    pub fn hdy_deck_get_can_swipe_forward(self_: *mut HdyDeck) -> gboolean;
1439    pub fn hdy_deck_get_child_by_name(
1440        self_: *mut HdyDeck,
1441        name: *const c_char,
1442    ) -> *mut gtk::GtkWidget;
1443    pub fn hdy_deck_get_homogeneous(
1444        self_: *mut HdyDeck,
1445        orientation: gtk::GtkOrientation,
1446    ) -> gboolean;
1447    pub fn hdy_deck_get_interpolate_size(self_: *mut HdyDeck) -> gboolean;
1448    pub fn hdy_deck_get_transition_duration(self_: *mut HdyDeck) -> c_uint;
1449    pub fn hdy_deck_get_transition_running(self_: *mut HdyDeck) -> gboolean;
1450    pub fn hdy_deck_get_transition_type(self_: *mut HdyDeck) -> HdyDeckTransitionType;
1451    pub fn hdy_deck_get_visible_child(self_: *mut HdyDeck) -> *mut gtk::GtkWidget;
1452    pub fn hdy_deck_get_visible_child_name(self_: *mut HdyDeck) -> *const c_char;
1453    #[cfg(feature = "v1_2")]
1454    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1455    pub fn hdy_deck_insert_child_after(
1456        self_: *mut HdyDeck,
1457        child: *mut gtk::GtkWidget,
1458        sibling: *mut gtk::GtkWidget,
1459    );
1460    pub fn hdy_deck_navigate(self_: *mut HdyDeck, direction: HdyNavigationDirection) -> gboolean;
1461    #[cfg(feature = "v1_2")]
1462    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1463    pub fn hdy_deck_prepend(self_: *mut HdyDeck, child: *mut gtk::GtkWidget);
1464    #[cfg(feature = "v1_2")]
1465    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1466    pub fn hdy_deck_reorder_child_after(
1467        self_: *mut HdyDeck,
1468        child: *mut gtk::GtkWidget,
1469        sibling: *mut gtk::GtkWidget,
1470    );
1471    pub fn hdy_deck_set_can_swipe_back(self_: *mut HdyDeck, can_swipe_back: gboolean);
1472    pub fn hdy_deck_set_can_swipe_forward(self_: *mut HdyDeck, can_swipe_forward: gboolean);
1473    pub fn hdy_deck_set_homogeneous(
1474        self_: *mut HdyDeck,
1475        orientation: gtk::GtkOrientation,
1476        homogeneous: gboolean,
1477    );
1478    pub fn hdy_deck_set_interpolate_size(self_: *mut HdyDeck, interpolate_size: gboolean);
1479    pub fn hdy_deck_set_transition_duration(self_: *mut HdyDeck, duration: c_uint);
1480    pub fn hdy_deck_set_transition_type(self_: *mut HdyDeck, transition: HdyDeckTransitionType);
1481    pub fn hdy_deck_set_visible_child(self_: *mut HdyDeck, visible_child: *mut gtk::GtkWidget);
1482    pub fn hdy_deck_set_visible_child_name(self_: *mut HdyDeck, name: *const c_char);
1483
1484    //=========================================================================
1485    // HdyEnumValueObject
1486    //=========================================================================
1487    pub fn hdy_enum_value_object_get_type() -> GType;
1488    pub fn hdy_enum_value_object_new(
1489        enum_value: *mut gobject::GEnumValue,
1490    ) -> *mut HdyEnumValueObject;
1491    pub fn hdy_enum_value_object_get_name(self_: *mut HdyEnumValueObject) -> *const c_char;
1492    pub fn hdy_enum_value_object_get_nick(self_: *mut HdyEnumValueObject) -> *const c_char;
1493    pub fn hdy_enum_value_object_get_value(self_: *mut HdyEnumValueObject) -> c_int;
1494
1495    //=========================================================================
1496    // HdyExpanderRow
1497    //=========================================================================
1498    pub fn hdy_expander_row_get_type() -> GType;
1499    pub fn hdy_expander_row_new() -> *mut gtk::GtkWidget;
1500    pub fn hdy_expander_row_add_action(self_: *mut HdyExpanderRow, widget: *mut gtk::GtkWidget);
1501    pub fn hdy_expander_row_add_prefix(self_: *mut HdyExpanderRow, widget: *mut gtk::GtkWidget);
1502    pub fn hdy_expander_row_get_enable_expansion(self_: *mut HdyExpanderRow) -> gboolean;
1503    pub fn hdy_expander_row_get_expanded(self_: *mut HdyExpanderRow) -> gboolean;
1504    pub fn hdy_expander_row_get_icon_name(self_: *mut HdyExpanderRow) -> *const c_char;
1505    pub fn hdy_expander_row_get_show_enable_switch(self_: *mut HdyExpanderRow) -> gboolean;
1506    pub fn hdy_expander_row_get_subtitle(self_: *mut HdyExpanderRow) -> *const c_char;
1507    pub fn hdy_expander_row_get_use_underline(self_: *mut HdyExpanderRow) -> gboolean;
1508    pub fn hdy_expander_row_set_enable_expansion(
1509        self_: *mut HdyExpanderRow,
1510        enable_expansion: gboolean,
1511    );
1512    pub fn hdy_expander_row_set_expanded(self_: *mut HdyExpanderRow, expanded: gboolean);
1513    pub fn hdy_expander_row_set_icon_name(self_: *mut HdyExpanderRow, icon_name: *const c_char);
1514    pub fn hdy_expander_row_set_show_enable_switch(
1515        self_: *mut HdyExpanderRow,
1516        show_enable_switch: gboolean,
1517    );
1518    pub fn hdy_expander_row_set_subtitle(self_: *mut HdyExpanderRow, subtitle: *const c_char);
1519    pub fn hdy_expander_row_set_use_underline(self_: *mut HdyExpanderRow, use_underline: gboolean);
1520
1521    //=========================================================================
1522    // HdyFlap
1523    //=========================================================================
1524    #[cfg(feature = "v1_2")]
1525    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1526    pub fn hdy_flap_get_type() -> GType;
1527    #[cfg(feature = "v1_2")]
1528    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1529    pub fn hdy_flap_new() -> *mut gtk::GtkWidget;
1530    #[cfg(feature = "v1_2")]
1531    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1532    pub fn hdy_flap_get_content(self_: *mut HdyFlap) -> *mut gtk::GtkWidget;
1533    #[cfg(feature = "v1_2")]
1534    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1535    pub fn hdy_flap_get_flap(self_: *mut HdyFlap) -> *mut gtk::GtkWidget;
1536    #[cfg(feature = "v1_2")]
1537    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1538    pub fn hdy_flap_get_flap_position(self_: *mut HdyFlap) -> gtk::GtkPackType;
1539    #[cfg(feature = "v1_2")]
1540    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1541    pub fn hdy_flap_get_fold_duration(self_: *mut HdyFlap) -> c_uint;
1542    #[cfg(feature = "v1_2")]
1543    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1544    pub fn hdy_flap_get_fold_policy(self_: *mut HdyFlap) -> HdyFlapFoldPolicy;
1545    #[cfg(feature = "v1_2")]
1546    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1547    pub fn hdy_flap_get_folded(self_: *mut HdyFlap) -> gboolean;
1548    #[cfg(feature = "v1_2")]
1549    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1550    pub fn hdy_flap_get_locked(self_: *mut HdyFlap) -> gboolean;
1551    #[cfg(feature = "v1_2")]
1552    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1553    pub fn hdy_flap_get_modal(self_: *mut HdyFlap) -> gboolean;
1554    #[cfg(feature = "v1_2")]
1555    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1556    pub fn hdy_flap_get_reveal_duration(self_: *mut HdyFlap) -> c_uint;
1557    #[cfg(feature = "v1_2")]
1558    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1559    pub fn hdy_flap_get_reveal_flap(self_: *mut HdyFlap) -> gboolean;
1560    #[cfg(feature = "v1_2")]
1561    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1562    pub fn hdy_flap_get_reveal_progress(self_: *mut HdyFlap) -> c_double;
1563    #[cfg(feature = "v1_2")]
1564    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1565    pub fn hdy_flap_get_separator(self_: *mut HdyFlap) -> *mut gtk::GtkWidget;
1566    #[cfg(feature = "v1_2")]
1567    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1568    pub fn hdy_flap_get_swipe_to_close(self_: *mut HdyFlap) -> gboolean;
1569    #[cfg(feature = "v1_2")]
1570    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1571    pub fn hdy_flap_get_swipe_to_open(self_: *mut HdyFlap) -> gboolean;
1572    #[cfg(feature = "v1_2")]
1573    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1574    pub fn hdy_flap_get_transition_type(self_: *mut HdyFlap) -> HdyFlapTransitionType;
1575    #[cfg(feature = "v1_2")]
1576    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1577    pub fn hdy_flap_set_content(self_: *mut HdyFlap, content: *mut gtk::GtkWidget);
1578    #[cfg(feature = "v1_2")]
1579    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1580    pub fn hdy_flap_set_flap(self_: *mut HdyFlap, flap: *mut gtk::GtkWidget);
1581    #[cfg(feature = "v1_2")]
1582    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1583    pub fn hdy_flap_set_flap_position(self_: *mut HdyFlap, position: gtk::GtkPackType);
1584    #[cfg(feature = "v1_2")]
1585    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1586    pub fn hdy_flap_set_fold_duration(self_: *mut HdyFlap, duration: c_uint);
1587    #[cfg(feature = "v1_2")]
1588    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1589    pub fn hdy_flap_set_fold_policy(self_: *mut HdyFlap, policy: HdyFlapFoldPolicy);
1590    #[cfg(feature = "v1_2")]
1591    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1592    pub fn hdy_flap_set_locked(self_: *mut HdyFlap, locked: gboolean);
1593    #[cfg(feature = "v1_2")]
1594    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1595    pub fn hdy_flap_set_modal(self_: *mut HdyFlap, modal: gboolean);
1596    #[cfg(feature = "v1_2")]
1597    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1598    pub fn hdy_flap_set_reveal_duration(self_: *mut HdyFlap, duration: c_uint);
1599    #[cfg(feature = "v1_2")]
1600    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1601    pub fn hdy_flap_set_reveal_flap(self_: *mut HdyFlap, reveal_flap: gboolean);
1602    #[cfg(feature = "v1_2")]
1603    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1604    pub fn hdy_flap_set_separator(self_: *mut HdyFlap, separator: *mut gtk::GtkWidget);
1605    #[cfg(feature = "v1_2")]
1606    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1607    pub fn hdy_flap_set_swipe_to_close(self_: *mut HdyFlap, swipe_to_close: gboolean);
1608    #[cfg(feature = "v1_2")]
1609    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1610    pub fn hdy_flap_set_swipe_to_open(self_: *mut HdyFlap, swipe_to_open: gboolean);
1611    #[cfg(feature = "v1_2")]
1612    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1613    pub fn hdy_flap_set_transition_type(
1614        self_: *mut HdyFlap,
1615        transition_type: HdyFlapTransitionType,
1616    );
1617
1618    //=========================================================================
1619    // HdyHeaderBar
1620    //=========================================================================
1621    pub fn hdy_header_bar_get_type() -> GType;
1622    pub fn hdy_header_bar_new() -> *mut gtk::GtkWidget;
1623    pub fn hdy_header_bar_get_centering_policy(self_: *mut HdyHeaderBar) -> HdyCenteringPolicy;
1624    pub fn hdy_header_bar_get_custom_title(self_: *mut HdyHeaderBar) -> *mut gtk::GtkWidget;
1625    pub fn hdy_header_bar_get_decoration_layout(self_: *mut HdyHeaderBar) -> *const c_char;
1626    pub fn hdy_header_bar_get_has_subtitle(self_: *mut HdyHeaderBar) -> gboolean;
1627    pub fn hdy_header_bar_get_interpolate_size(self_: *mut HdyHeaderBar) -> gboolean;
1628    pub fn hdy_header_bar_get_show_close_button(self_: *mut HdyHeaderBar) -> gboolean;
1629    pub fn hdy_header_bar_get_subtitle(self_: *mut HdyHeaderBar) -> *const c_char;
1630    pub fn hdy_header_bar_get_title(self_: *mut HdyHeaderBar) -> *const c_char;
1631    pub fn hdy_header_bar_get_transition_duration(self_: *mut HdyHeaderBar) -> c_uint;
1632    pub fn hdy_header_bar_get_transition_running(self_: *mut HdyHeaderBar) -> gboolean;
1633    pub fn hdy_header_bar_pack_end(self_: *mut HdyHeaderBar, child: *mut gtk::GtkWidget);
1634    pub fn hdy_header_bar_pack_start(self_: *mut HdyHeaderBar, child: *mut gtk::GtkWidget);
1635    pub fn hdy_header_bar_set_centering_policy(
1636        self_: *mut HdyHeaderBar,
1637        centering_policy: HdyCenteringPolicy,
1638    );
1639    pub fn hdy_header_bar_set_custom_title(
1640        self_: *mut HdyHeaderBar,
1641        title_widget: *mut gtk::GtkWidget,
1642    );
1643    pub fn hdy_header_bar_set_decoration_layout(self_: *mut HdyHeaderBar, layout: *const c_char);
1644    pub fn hdy_header_bar_set_has_subtitle(self_: *mut HdyHeaderBar, setting: gboolean);
1645    pub fn hdy_header_bar_set_interpolate_size(
1646        self_: *mut HdyHeaderBar,
1647        interpolate_size: gboolean,
1648    );
1649    pub fn hdy_header_bar_set_show_close_button(self_: *mut HdyHeaderBar, setting: gboolean);
1650    pub fn hdy_header_bar_set_subtitle(self_: *mut HdyHeaderBar, subtitle: *const c_char);
1651    pub fn hdy_header_bar_set_title(self_: *mut HdyHeaderBar, title: *const c_char);
1652    pub fn hdy_header_bar_set_transition_duration(self_: *mut HdyHeaderBar, duration: c_uint);
1653
1654    //=========================================================================
1655    // HdyHeaderGroup
1656    //=========================================================================
1657    pub fn hdy_header_group_get_type() -> GType;
1658    pub fn hdy_header_group_new() -> *mut HdyHeaderGroup;
1659    pub fn hdy_header_group_add_gtk_header_bar(
1660        self_: *mut HdyHeaderGroup,
1661        header_bar: *mut gtk::GtkHeaderBar,
1662    );
1663    pub fn hdy_header_group_add_header_bar(
1664        self_: *mut HdyHeaderGroup,
1665        header_bar: *mut HdyHeaderBar,
1666    );
1667    pub fn hdy_header_group_add_header_group(
1668        self_: *mut HdyHeaderGroup,
1669        header_group: *mut HdyHeaderGroup,
1670    );
1671    pub fn hdy_header_group_get_children(self_: *mut HdyHeaderGroup) -> *mut glib::GSList;
1672    pub fn hdy_header_group_get_decorate_all(self_: *mut HdyHeaderGroup) -> gboolean;
1673    pub fn hdy_header_group_remove_child(
1674        self_: *mut HdyHeaderGroup,
1675        child: *mut HdyHeaderGroupChild,
1676    );
1677    pub fn hdy_header_group_remove_gtk_header_bar(
1678        self_: *mut HdyHeaderGroup,
1679        header_bar: *mut gtk::GtkHeaderBar,
1680    );
1681    pub fn hdy_header_group_remove_header_bar(
1682        self_: *mut HdyHeaderGroup,
1683        header_bar: *mut HdyHeaderBar,
1684    );
1685    pub fn hdy_header_group_remove_header_group(
1686        self_: *mut HdyHeaderGroup,
1687        header_group: *mut HdyHeaderGroup,
1688    );
1689    pub fn hdy_header_group_set_decorate_all(self_: *mut HdyHeaderGroup, decorate_all: gboolean);
1690
1691    //=========================================================================
1692    // HdyHeaderGroupChild
1693    //=========================================================================
1694    pub fn hdy_header_group_child_get_type() -> GType;
1695    pub fn hdy_header_group_child_get_child_type(
1696        self_: *mut HdyHeaderGroupChild,
1697    ) -> HdyHeaderGroupChildType;
1698    pub fn hdy_header_group_child_get_gtk_header_bar(
1699        self_: *mut HdyHeaderGroupChild,
1700    ) -> *mut gtk::GtkHeaderBar;
1701    pub fn hdy_header_group_child_get_header_bar(
1702        self_: *mut HdyHeaderGroupChild,
1703    ) -> *mut HdyHeaderBar;
1704    pub fn hdy_header_group_child_get_header_group(
1705        self_: *mut HdyHeaderGroupChild,
1706    ) -> *mut HdyHeaderGroup;
1707
1708    //=========================================================================
1709    // HdyKeypad
1710    //=========================================================================
1711    pub fn hdy_keypad_get_type() -> GType;
1712    pub fn hdy_keypad_new(
1713        symbols_visible: gboolean,
1714        letters_visible: gboolean,
1715    ) -> *mut gtk::GtkWidget;
1716    pub fn hdy_keypad_get_column_spacing(self_: *mut HdyKeypad) -> c_uint;
1717    pub fn hdy_keypad_get_end_action(self_: *mut HdyKeypad) -> *mut gtk::GtkWidget;
1718    pub fn hdy_keypad_get_entry(self_: *mut HdyKeypad) -> *mut gtk::GtkEntry;
1719    pub fn hdy_keypad_get_letters_visible(self_: *mut HdyKeypad) -> gboolean;
1720    pub fn hdy_keypad_get_row_spacing(self_: *mut HdyKeypad) -> c_uint;
1721    pub fn hdy_keypad_get_start_action(self_: *mut HdyKeypad) -> *mut gtk::GtkWidget;
1722    pub fn hdy_keypad_get_symbols_visible(self_: *mut HdyKeypad) -> gboolean;
1723    pub fn hdy_keypad_set_column_spacing(self_: *mut HdyKeypad, spacing: c_uint);
1724    pub fn hdy_keypad_set_end_action(self_: *mut HdyKeypad, end_action: *mut gtk::GtkWidget);
1725    pub fn hdy_keypad_set_entry(self_: *mut HdyKeypad, entry: *mut gtk::GtkEntry);
1726    pub fn hdy_keypad_set_letters_visible(self_: *mut HdyKeypad, letters_visible: gboolean);
1727    pub fn hdy_keypad_set_row_spacing(self_: *mut HdyKeypad, spacing: c_uint);
1728    pub fn hdy_keypad_set_start_action(self_: *mut HdyKeypad, start_action: *mut gtk::GtkWidget);
1729    pub fn hdy_keypad_set_symbols_visible(self_: *mut HdyKeypad, symbols_visible: gboolean);
1730
1731    //=========================================================================
1732    // HdyLeaflet
1733    //=========================================================================
1734    pub fn hdy_leaflet_get_type() -> GType;
1735    pub fn hdy_leaflet_new() -> *mut gtk::GtkWidget;
1736    pub fn hdy_leaflet_get_adjacent_child(
1737        self_: *mut HdyLeaflet,
1738        direction: HdyNavigationDirection,
1739    ) -> *mut gtk::GtkWidget;
1740    pub fn hdy_leaflet_get_can_swipe_back(self_: *mut HdyLeaflet) -> gboolean;
1741    pub fn hdy_leaflet_get_can_swipe_forward(self_: *mut HdyLeaflet) -> gboolean;
1742    pub fn hdy_leaflet_get_child_by_name(
1743        self_: *mut HdyLeaflet,
1744        name: *const c_char,
1745    ) -> *mut gtk::GtkWidget;
1746    pub fn hdy_leaflet_get_child_transition_duration(self_: *mut HdyLeaflet) -> c_uint;
1747    pub fn hdy_leaflet_get_child_transition_running(self_: *mut HdyLeaflet) -> gboolean;
1748    pub fn hdy_leaflet_get_folded(self_: *mut HdyLeaflet) -> gboolean;
1749    pub fn hdy_leaflet_get_homogeneous(
1750        self_: *mut HdyLeaflet,
1751        folded: gboolean,
1752        orientation: gtk::GtkOrientation,
1753    ) -> gboolean;
1754    pub fn hdy_leaflet_get_interpolate_size(self_: *mut HdyLeaflet) -> gboolean;
1755    pub fn hdy_leaflet_get_mode_transition_duration(self_: *mut HdyLeaflet) -> c_uint;
1756    pub fn hdy_leaflet_get_transition_type(self_: *mut HdyLeaflet) -> HdyLeafletTransitionType;
1757    pub fn hdy_leaflet_get_visible_child(self_: *mut HdyLeaflet) -> *mut gtk::GtkWidget;
1758    pub fn hdy_leaflet_get_visible_child_name(self_: *mut HdyLeaflet) -> *const c_char;
1759    #[cfg(feature = "v1_2")]
1760    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1761    pub fn hdy_leaflet_insert_child_after(
1762        self_: *mut HdyLeaflet,
1763        child: *mut gtk::GtkWidget,
1764        sibling: *mut gtk::GtkWidget,
1765    );
1766    pub fn hdy_leaflet_navigate(
1767        self_: *mut HdyLeaflet,
1768        direction: HdyNavigationDirection,
1769    ) -> gboolean;
1770    #[cfg(feature = "v1_2")]
1771    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1772    pub fn hdy_leaflet_prepend(self_: *mut HdyLeaflet, child: *mut gtk::GtkWidget);
1773    #[cfg(feature = "v1_2")]
1774    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1775    pub fn hdy_leaflet_reorder_child_after(
1776        self_: *mut HdyLeaflet,
1777        child: *mut gtk::GtkWidget,
1778        sibling: *mut gtk::GtkWidget,
1779    );
1780    pub fn hdy_leaflet_set_can_swipe_back(self_: *mut HdyLeaflet, can_swipe_back: gboolean);
1781    pub fn hdy_leaflet_set_can_swipe_forward(self_: *mut HdyLeaflet, can_swipe_forward: gboolean);
1782    pub fn hdy_leaflet_set_child_transition_duration(self_: *mut HdyLeaflet, duration: c_uint);
1783    pub fn hdy_leaflet_set_homogeneous(
1784        self_: *mut HdyLeaflet,
1785        folded: gboolean,
1786        orientation: gtk::GtkOrientation,
1787        homogeneous: gboolean,
1788    );
1789    pub fn hdy_leaflet_set_interpolate_size(self_: *mut HdyLeaflet, interpolate_size: gboolean);
1790    pub fn hdy_leaflet_set_mode_transition_duration(self_: *mut HdyLeaflet, duration: c_uint);
1791    pub fn hdy_leaflet_set_transition_type(
1792        self_: *mut HdyLeaflet,
1793        transition: HdyLeafletTransitionType,
1794    );
1795    pub fn hdy_leaflet_set_visible_child(
1796        self_: *mut HdyLeaflet,
1797        visible_child: *mut gtk::GtkWidget,
1798    );
1799    pub fn hdy_leaflet_set_visible_child_name(self_: *mut HdyLeaflet, name: *const c_char);
1800
1801    //=========================================================================
1802    // HdyPreferencesGroup
1803    //=========================================================================
1804    pub fn hdy_preferences_group_get_type() -> GType;
1805    pub fn hdy_preferences_group_new() -> *mut gtk::GtkWidget;
1806    pub fn hdy_preferences_group_get_description(self_: *mut HdyPreferencesGroup) -> *const c_char;
1807    pub fn hdy_preferences_group_get_title(self_: *mut HdyPreferencesGroup) -> *const c_char;
1808    #[cfg(feature = "v1_4")]
1809    #[cfg_attr(docsrs, doc(cfg(feature = "v1_4")))]
1810    pub fn hdy_preferences_group_get_use_markup(self_: *mut HdyPreferencesGroup) -> gboolean;
1811    pub fn hdy_preferences_group_set_description(
1812        self_: *mut HdyPreferencesGroup,
1813        description: *const c_char,
1814    );
1815    pub fn hdy_preferences_group_set_title(self_: *mut HdyPreferencesGroup, title: *const c_char);
1816    #[cfg(feature = "v1_4")]
1817    #[cfg_attr(docsrs, doc(cfg(feature = "v1_4")))]
1818    pub fn hdy_preferences_group_set_use_markup(
1819        self_: *mut HdyPreferencesGroup,
1820        use_markup: gboolean,
1821    );
1822
1823    //=========================================================================
1824    // HdyPreferencesPage
1825    //=========================================================================
1826    pub fn hdy_preferences_page_get_type() -> GType;
1827    pub fn hdy_preferences_page_new() -> *mut gtk::GtkWidget;
1828    pub fn hdy_preferences_page_get_icon_name(self_: *mut HdyPreferencesPage) -> *const c_char;
1829    pub fn hdy_preferences_page_get_title(self_: *mut HdyPreferencesPage) -> *const c_char;
1830    pub fn hdy_preferences_page_set_icon_name(
1831        self_: *mut HdyPreferencesPage,
1832        icon_name: *const c_char,
1833    );
1834    pub fn hdy_preferences_page_set_title(self_: *mut HdyPreferencesPage, title: *const c_char);
1835
1836    //=========================================================================
1837    // HdyPreferencesRow
1838    //=========================================================================
1839    pub fn hdy_preferences_row_get_type() -> GType;
1840    pub fn hdy_preferences_row_new() -> *mut gtk::GtkWidget;
1841    pub fn hdy_preferences_row_get_title(self_: *mut HdyPreferencesRow) -> *const c_char;
1842    pub fn hdy_preferences_row_get_use_underline(self_: *mut HdyPreferencesRow) -> gboolean;
1843    pub fn hdy_preferences_row_set_title(self_: *mut HdyPreferencesRow, title: *const c_char);
1844    pub fn hdy_preferences_row_set_use_underline(
1845        self_: *mut HdyPreferencesRow,
1846        use_underline: gboolean,
1847    );
1848
1849    //=========================================================================
1850    // HdyPreferencesWindow
1851    //=========================================================================
1852    pub fn hdy_preferences_window_get_type() -> GType;
1853    pub fn hdy_preferences_window_new() -> *mut gtk::GtkWidget;
1854    pub fn hdy_preferences_window_close_subpage(self_: *mut HdyPreferencesWindow);
1855    pub fn hdy_preferences_window_get_can_swipe_back(self_: *mut HdyPreferencesWindow) -> gboolean;
1856    pub fn hdy_preferences_window_get_search_enabled(self_: *mut HdyPreferencesWindow) -> gboolean;
1857    pub fn hdy_preferences_window_present_subpage(
1858        self_: *mut HdyPreferencesWindow,
1859        subpage: *mut gtk::GtkWidget,
1860    );
1861    pub fn hdy_preferences_window_set_can_swipe_back(
1862        self_: *mut HdyPreferencesWindow,
1863        can_swipe_back: gboolean,
1864    );
1865    pub fn hdy_preferences_window_set_search_enabled(
1866        self_: *mut HdyPreferencesWindow,
1867        search_enabled: gboolean,
1868    );
1869
1870    //=========================================================================
1871    // HdySearchBar
1872    //=========================================================================
1873    pub fn hdy_search_bar_get_type() -> GType;
1874    pub fn hdy_search_bar_new() -> *mut gtk::GtkWidget;
1875    pub fn hdy_search_bar_connect_entry(self_: *mut HdySearchBar, entry: *mut gtk::GtkEntry);
1876    pub fn hdy_search_bar_get_search_mode(self_: *mut HdySearchBar) -> gboolean;
1877    pub fn hdy_search_bar_get_show_close_button(self_: *mut HdySearchBar) -> gboolean;
1878    pub fn hdy_search_bar_handle_event(
1879        self_: *mut HdySearchBar,
1880        event: *mut gdk::GdkEvent,
1881    ) -> gboolean;
1882    pub fn hdy_search_bar_set_search_mode(self_: *mut HdySearchBar, search_mode: gboolean);
1883    pub fn hdy_search_bar_set_show_close_button(self_: *mut HdySearchBar, visible: gboolean);
1884
1885    //=========================================================================
1886    // HdySqueezer
1887    //=========================================================================
1888    pub fn hdy_squeezer_get_type() -> GType;
1889    pub fn hdy_squeezer_new() -> *mut gtk::GtkWidget;
1890    pub fn hdy_squeezer_get_child_enabled(
1891        self_: *mut HdySqueezer,
1892        child: *mut gtk::GtkWidget,
1893    ) -> gboolean;
1894    pub fn hdy_squeezer_get_homogeneous(self_: *mut HdySqueezer) -> gboolean;
1895    pub fn hdy_squeezer_get_interpolate_size(self_: *mut HdySqueezer) -> gboolean;
1896    pub fn hdy_squeezer_get_transition_duration(self_: *mut HdySqueezer) -> c_uint;
1897    pub fn hdy_squeezer_get_transition_running(self_: *mut HdySqueezer) -> gboolean;
1898    pub fn hdy_squeezer_get_transition_type(self_: *mut HdySqueezer) -> HdySqueezerTransitionType;
1899    pub fn hdy_squeezer_get_visible_child(self_: *mut HdySqueezer) -> *mut gtk::GtkWidget;
1900    pub fn hdy_squeezer_get_xalign(self_: *mut HdySqueezer) -> c_float;
1901    pub fn hdy_squeezer_get_yalign(self_: *mut HdySqueezer) -> c_float;
1902    pub fn hdy_squeezer_set_child_enabled(
1903        self_: *mut HdySqueezer,
1904        child: *mut gtk::GtkWidget,
1905        enabled: gboolean,
1906    );
1907    pub fn hdy_squeezer_set_homogeneous(self_: *mut HdySqueezer, homogeneous: gboolean);
1908    pub fn hdy_squeezer_set_interpolate_size(self_: *mut HdySqueezer, interpolate_size: gboolean);
1909    pub fn hdy_squeezer_set_transition_duration(self_: *mut HdySqueezer, duration: c_uint);
1910    pub fn hdy_squeezer_set_transition_type(
1911        self_: *mut HdySqueezer,
1912        transition: HdySqueezerTransitionType,
1913    );
1914    pub fn hdy_squeezer_set_xalign(self_: *mut HdySqueezer, xalign: c_float);
1915    pub fn hdy_squeezer_set_yalign(self_: *mut HdySqueezer, yalign: c_float);
1916
1917    //=========================================================================
1918    // HdyStatusPage
1919    //=========================================================================
1920    #[cfg(feature = "v1_2")]
1921    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1922    pub fn hdy_status_page_get_type() -> GType;
1923    #[cfg(feature = "v1_2")]
1924    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1925    pub fn hdy_status_page_new() -> *mut gtk::GtkWidget;
1926    #[cfg(feature = "v1_2")]
1927    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1928    pub fn hdy_status_page_get_description(self_: *mut HdyStatusPage) -> *const c_char;
1929    #[cfg(feature = "v1_2")]
1930    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1931    pub fn hdy_status_page_get_icon_name(self_: *mut HdyStatusPage) -> *const c_char;
1932    #[cfg(feature = "v1_2")]
1933    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1934    pub fn hdy_status_page_get_title(self_: *mut HdyStatusPage) -> *const c_char;
1935    #[cfg(feature = "v1_2")]
1936    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1937    pub fn hdy_status_page_set_description(self_: *mut HdyStatusPage, description: *const c_char);
1938    #[cfg(feature = "v1_2")]
1939    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1940    pub fn hdy_status_page_set_icon_name(self_: *mut HdyStatusPage, icon_name: *const c_char);
1941    #[cfg(feature = "v1_2")]
1942    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1943    pub fn hdy_status_page_set_title(self_: *mut HdyStatusPage, title: *const c_char);
1944
1945    //=========================================================================
1946    // HdyStyleManager
1947    //=========================================================================
1948    #[cfg(feature = "v1_6")]
1949    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1950    pub fn hdy_style_manager_get_type() -> GType;
1951    #[cfg(feature = "v1_6")]
1952    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1953    pub fn hdy_style_manager_get_default() -> *mut HdyStyleManager;
1954    #[cfg(feature = "v1_6")]
1955    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1956    pub fn hdy_style_manager_get_for_display(display: *mut gdk::GdkDisplay)
1957        -> *mut HdyStyleManager;
1958    #[cfg(feature = "v1_6")]
1959    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1960    pub fn hdy_style_manager_get_color_scheme(self_: *mut HdyStyleManager) -> HdyColorScheme;
1961    #[cfg(feature = "v1_6")]
1962    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1963    pub fn hdy_style_manager_get_dark(self_: *mut HdyStyleManager) -> gboolean;
1964    #[cfg(feature = "v1_6")]
1965    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1966    pub fn hdy_style_manager_get_display(self_: *mut HdyStyleManager) -> *mut gdk::GdkDisplay;
1967    #[cfg(feature = "v1_6")]
1968    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1969    pub fn hdy_style_manager_get_high_contrast(self_: *mut HdyStyleManager) -> gboolean;
1970    #[cfg(feature = "v1_6")]
1971    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1972    pub fn hdy_style_manager_get_system_supports_color_schemes(
1973        self_: *mut HdyStyleManager,
1974    ) -> gboolean;
1975    #[cfg(feature = "v1_6")]
1976    #[cfg_attr(docsrs, doc(cfg(feature = "v1_6")))]
1977    pub fn hdy_style_manager_set_color_scheme(
1978        self_: *mut HdyStyleManager,
1979        color_scheme: HdyColorScheme,
1980    );
1981
1982    //=========================================================================
1983    // HdySwipeGroup
1984    //=========================================================================
1985    pub fn hdy_swipe_group_get_type() -> GType;
1986    pub fn hdy_swipe_group_new() -> *mut HdySwipeGroup;
1987    pub fn hdy_swipe_group_add_swipeable(self_: *mut HdySwipeGroup, swipeable: *mut HdySwipeable);
1988    pub fn hdy_swipe_group_get_swipeables(self_: *mut HdySwipeGroup) -> *mut glib::GSList;
1989    pub fn hdy_swipe_group_remove_swipeable(
1990        self_: *mut HdySwipeGroup,
1991        swipeable: *mut HdySwipeable,
1992    );
1993
1994    //=========================================================================
1995    // HdySwipeTracker
1996    //=========================================================================
1997    pub fn hdy_swipe_tracker_get_type() -> GType;
1998    pub fn hdy_swipe_tracker_new(swipeable: *mut HdySwipeable) -> *mut HdySwipeTracker;
1999    #[cfg(feature = "v1_2")]
2000    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2001    pub fn hdy_swipe_tracker_get_allow_long_swipes(self_: *mut HdySwipeTracker) -> gboolean;
2002    pub fn hdy_swipe_tracker_get_allow_mouse_drag(self_: *mut HdySwipeTracker) -> gboolean;
2003    pub fn hdy_swipe_tracker_get_enabled(self_: *mut HdySwipeTracker) -> gboolean;
2004    pub fn hdy_swipe_tracker_get_reversed(self_: *mut HdySwipeTracker) -> gboolean;
2005    pub fn hdy_swipe_tracker_get_swipeable(self_: *mut HdySwipeTracker) -> *mut HdySwipeable;
2006    #[cfg(feature = "v1_2")]
2007    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2008    pub fn hdy_swipe_tracker_set_allow_long_swipes(
2009        self_: *mut HdySwipeTracker,
2010        allow_long_swipes: gboolean,
2011    );
2012    pub fn hdy_swipe_tracker_set_allow_mouse_drag(
2013        self_: *mut HdySwipeTracker,
2014        allow_mouse_drag: gboolean,
2015    );
2016    pub fn hdy_swipe_tracker_set_enabled(self_: *mut HdySwipeTracker, enabled: gboolean);
2017    pub fn hdy_swipe_tracker_set_reversed(self_: *mut HdySwipeTracker, reversed: gboolean);
2018    pub fn hdy_swipe_tracker_shift_position(self_: *mut HdySwipeTracker, delta: c_double);
2019
2020    //=========================================================================
2021    // HdyTabBar
2022    //=========================================================================
2023    #[cfg(feature = "v1_2")]
2024    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2025    pub fn hdy_tab_bar_get_type() -> GType;
2026    #[cfg(feature = "v1_2")]
2027    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2028    pub fn hdy_tab_bar_new() -> *mut HdyTabBar;
2029    #[cfg(feature = "v1_2")]
2030    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2031    pub fn hdy_tab_bar_get_autohide(self_: *mut HdyTabBar) -> gboolean;
2032    #[cfg(feature = "v1_2")]
2033    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2034    pub fn hdy_tab_bar_get_end_action_widget(self_: *mut HdyTabBar) -> *mut gtk::GtkWidget;
2035    #[cfg(feature = "v1_2")]
2036    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2037    pub fn hdy_tab_bar_get_expand_tabs(self_: *mut HdyTabBar) -> gboolean;
2038    #[cfg(feature = "v1_2")]
2039    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2040    pub fn hdy_tab_bar_get_extra_drag_dest_targets(
2041        self_: *mut HdyTabBar,
2042    ) -> *mut gtk::GtkTargetList;
2043    #[cfg(feature = "v1_2")]
2044    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2045    pub fn hdy_tab_bar_get_inverted(self_: *mut HdyTabBar) -> gboolean;
2046    #[cfg(feature = "v1_2")]
2047    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2048    pub fn hdy_tab_bar_get_is_overflowing(self_: *mut HdyTabBar) -> gboolean;
2049    #[cfg(feature = "v1_2")]
2050    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2051    pub fn hdy_tab_bar_get_start_action_widget(self_: *mut HdyTabBar) -> *mut gtk::GtkWidget;
2052    #[cfg(feature = "v1_2")]
2053    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2054    pub fn hdy_tab_bar_get_tabs_revealed(self_: *mut HdyTabBar) -> gboolean;
2055    #[cfg(feature = "v1_2")]
2056    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2057    pub fn hdy_tab_bar_get_view(self_: *mut HdyTabBar) -> *mut HdyTabView;
2058    #[cfg(feature = "v1_2")]
2059    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2060    pub fn hdy_tab_bar_set_autohide(self_: *mut HdyTabBar, autohide: gboolean);
2061    #[cfg(feature = "v1_2")]
2062    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2063    pub fn hdy_tab_bar_set_end_action_widget(self_: *mut HdyTabBar, widget: *mut gtk::GtkWidget);
2064    #[cfg(feature = "v1_2")]
2065    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2066    pub fn hdy_tab_bar_set_expand_tabs(self_: *mut HdyTabBar, expand_tabs: gboolean);
2067    #[cfg(feature = "v1_2")]
2068    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2069    pub fn hdy_tab_bar_set_extra_drag_dest_targets(
2070        self_: *mut HdyTabBar,
2071        extra_drag_dest_targets: *mut gtk::GtkTargetList,
2072    );
2073    #[cfg(feature = "v1_2")]
2074    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2075    pub fn hdy_tab_bar_set_inverted(self_: *mut HdyTabBar, inverted: gboolean);
2076    #[cfg(feature = "v1_2")]
2077    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2078    pub fn hdy_tab_bar_set_start_action_widget(self_: *mut HdyTabBar, widget: *mut gtk::GtkWidget);
2079    #[cfg(feature = "v1_2")]
2080    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2081    pub fn hdy_tab_bar_set_view(self_: *mut HdyTabBar, view: *mut HdyTabView);
2082
2083    //=========================================================================
2084    // HdyTabPage
2085    //=========================================================================
2086    #[cfg(feature = "v1_2")]
2087    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2088    pub fn hdy_tab_page_get_type() -> GType;
2089    #[cfg(feature = "v1_2")]
2090    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2091    pub fn hdy_tab_page_get_child(self_: *mut HdyTabPage) -> *mut gtk::GtkWidget;
2092    #[cfg(feature = "v1_2")]
2093    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2094    pub fn hdy_tab_page_get_icon(self_: *mut HdyTabPage) -> *mut gio::GIcon;
2095    #[cfg(feature = "v1_2")]
2096    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2097    pub fn hdy_tab_page_get_indicator_activatable(self_: *mut HdyTabPage) -> gboolean;
2098    #[cfg(feature = "v1_2")]
2099    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2100    pub fn hdy_tab_page_get_indicator_icon(self_: *mut HdyTabPage) -> *mut gio::GIcon;
2101    #[cfg(feature = "v1_2")]
2102    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2103    pub fn hdy_tab_page_get_loading(self_: *mut HdyTabPage) -> gboolean;
2104    #[cfg(feature = "v1_2")]
2105    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2106    pub fn hdy_tab_page_get_needs_attention(self_: *mut HdyTabPage) -> gboolean;
2107    #[cfg(feature = "v1_2")]
2108    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2109    pub fn hdy_tab_page_get_parent(self_: *mut HdyTabPage) -> *mut HdyTabPage;
2110    #[cfg(feature = "v1_2")]
2111    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2112    pub fn hdy_tab_page_get_pinned(self_: *mut HdyTabPage) -> gboolean;
2113    #[cfg(feature = "v1_2")]
2114    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2115    pub fn hdy_tab_page_get_selected(self_: *mut HdyTabPage) -> gboolean;
2116    #[cfg(feature = "v1_2")]
2117    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2118    pub fn hdy_tab_page_get_title(self_: *mut HdyTabPage) -> *const c_char;
2119    #[cfg(feature = "v1_2")]
2120    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2121    pub fn hdy_tab_page_get_tooltip(self_: *mut HdyTabPage) -> *const c_char;
2122    #[cfg(feature = "v1_2")]
2123    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2124    pub fn hdy_tab_page_set_icon(self_: *mut HdyTabPage, icon: *mut gio::GIcon);
2125    #[cfg(feature = "v1_2")]
2126    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2127    pub fn hdy_tab_page_set_indicator_activatable(self_: *mut HdyTabPage, activatable: gboolean);
2128    #[cfg(feature = "v1_2")]
2129    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2130    pub fn hdy_tab_page_set_indicator_icon(self_: *mut HdyTabPage, indicator_icon: *mut gio::GIcon);
2131    #[cfg(feature = "v1_2")]
2132    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2133    pub fn hdy_tab_page_set_loading(self_: *mut HdyTabPage, loading: gboolean);
2134    #[cfg(feature = "v1_2")]
2135    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2136    pub fn hdy_tab_page_set_needs_attention(self_: *mut HdyTabPage, needs_attention: gboolean);
2137    #[cfg(feature = "v1_2")]
2138    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2139    pub fn hdy_tab_page_set_title(self_: *mut HdyTabPage, title: *const c_char);
2140    #[cfg(feature = "v1_2")]
2141    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2142    pub fn hdy_tab_page_set_tooltip(self_: *mut HdyTabPage, tooltip: *const c_char);
2143
2144    //=========================================================================
2145    // HdyTabView
2146    //=========================================================================
2147    #[cfg(feature = "v1_2")]
2148    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2149    pub fn hdy_tab_view_get_type() -> GType;
2150    #[cfg(feature = "v1_2")]
2151    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2152    pub fn hdy_tab_view_new() -> *mut HdyTabView;
2153    #[cfg(feature = "v1_2")]
2154    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2155    pub fn hdy_tab_view_add_page(
2156        self_: *mut HdyTabView,
2157        child: *mut gtk::GtkWidget,
2158        parent: *mut HdyTabPage,
2159    ) -> *mut HdyTabPage;
2160    #[cfg(feature = "v1_2")]
2161    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2162    pub fn hdy_tab_view_append(
2163        self_: *mut HdyTabView,
2164        child: *mut gtk::GtkWidget,
2165    ) -> *mut HdyTabPage;
2166    #[cfg(feature = "v1_2")]
2167    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2168    pub fn hdy_tab_view_append_pinned(
2169        self_: *mut HdyTabView,
2170        child: *mut gtk::GtkWidget,
2171    ) -> *mut HdyTabPage;
2172    #[cfg(feature = "v1_2")]
2173    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2174    pub fn hdy_tab_view_close_other_pages(self_: *mut HdyTabView, page: *mut HdyTabPage);
2175    #[cfg(feature = "v1_2")]
2176    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2177    pub fn hdy_tab_view_close_page(self_: *mut HdyTabView, page: *mut HdyTabPage);
2178    #[cfg(feature = "v1_2")]
2179    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2180    pub fn hdy_tab_view_close_page_finish(
2181        self_: *mut HdyTabView,
2182        page: *mut HdyTabPage,
2183        confirm: gboolean,
2184    );
2185    #[cfg(feature = "v1_2")]
2186    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2187    pub fn hdy_tab_view_close_pages_after(self_: *mut HdyTabView, page: *mut HdyTabPage);
2188    #[cfg(feature = "v1_2")]
2189    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2190    pub fn hdy_tab_view_close_pages_before(self_: *mut HdyTabView, page: *mut HdyTabPage);
2191    #[cfg(feature = "v1_2")]
2192    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2193    pub fn hdy_tab_view_get_default_icon(self_: *mut HdyTabView) -> *mut gio::GIcon;
2194    #[cfg(feature = "v1_2")]
2195    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2196    pub fn hdy_tab_view_get_is_transferring_page(self_: *mut HdyTabView) -> gboolean;
2197    #[cfg(feature = "v1_2")]
2198    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2199    pub fn hdy_tab_view_get_menu_model(self_: *mut HdyTabView) -> *mut gio::GMenuModel;
2200    #[cfg(feature = "v1_2")]
2201    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2202    pub fn hdy_tab_view_get_n_pages(self_: *mut HdyTabView) -> c_int;
2203    #[cfg(feature = "v1_2")]
2204    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2205    pub fn hdy_tab_view_get_n_pinned_pages(self_: *mut HdyTabView) -> c_int;
2206    #[cfg(feature = "v1_2")]
2207    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2208    pub fn hdy_tab_view_get_nth_page(self_: *mut HdyTabView, position: c_int) -> *mut HdyTabPage;
2209    #[cfg(feature = "v1_2")]
2210    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2211    pub fn hdy_tab_view_get_page(
2212        self_: *mut HdyTabView,
2213        child: *mut gtk::GtkWidget,
2214    ) -> *mut HdyTabPage;
2215    #[cfg(feature = "v1_2")]
2216    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2217    pub fn hdy_tab_view_get_page_position(self_: *mut HdyTabView, page: *mut HdyTabPage) -> c_int;
2218    #[cfg(feature = "v1_2")]
2219    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2220    pub fn hdy_tab_view_get_pages(self_: *mut HdyTabView) -> *mut gio::GListModel;
2221    #[cfg(feature = "v1_2")]
2222    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2223    pub fn hdy_tab_view_get_selected_page(self_: *mut HdyTabView) -> *mut HdyTabPage;
2224    #[cfg(feature = "v1_2")]
2225    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2226    pub fn hdy_tab_view_get_shortcut_widget(self_: *mut HdyTabView) -> *mut gtk::GtkWidget;
2227    #[cfg(feature = "v1_2")]
2228    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2229    pub fn hdy_tab_view_insert(
2230        self_: *mut HdyTabView,
2231        child: *mut gtk::GtkWidget,
2232        position: c_int,
2233    ) -> *mut HdyTabPage;
2234    #[cfg(feature = "v1_2")]
2235    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2236    pub fn hdy_tab_view_insert_pinned(
2237        self_: *mut HdyTabView,
2238        child: *mut gtk::GtkWidget,
2239        position: c_int,
2240    ) -> *mut HdyTabPage;
2241    #[cfg(feature = "v1_2")]
2242    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2243    pub fn hdy_tab_view_prepend(
2244        self_: *mut HdyTabView,
2245        child: *mut gtk::GtkWidget,
2246    ) -> *mut HdyTabPage;
2247    #[cfg(feature = "v1_2")]
2248    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2249    pub fn hdy_tab_view_prepend_pinned(
2250        self_: *mut HdyTabView,
2251        child: *mut gtk::GtkWidget,
2252    ) -> *mut HdyTabPage;
2253    #[cfg(feature = "v1_2")]
2254    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2255    pub fn hdy_tab_view_reorder_backward(self_: *mut HdyTabView, page: *mut HdyTabPage)
2256        -> gboolean;
2257    #[cfg(feature = "v1_2")]
2258    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2259    pub fn hdy_tab_view_reorder_first(self_: *mut HdyTabView, page: *mut HdyTabPage) -> gboolean;
2260    #[cfg(feature = "v1_2")]
2261    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2262    pub fn hdy_tab_view_reorder_forward(self_: *mut HdyTabView, page: *mut HdyTabPage) -> gboolean;
2263    #[cfg(feature = "v1_2")]
2264    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2265    pub fn hdy_tab_view_reorder_last(self_: *mut HdyTabView, page: *mut HdyTabPage) -> gboolean;
2266    #[cfg(feature = "v1_2")]
2267    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2268    pub fn hdy_tab_view_reorder_page(
2269        self_: *mut HdyTabView,
2270        page: *mut HdyTabPage,
2271        position: c_int,
2272    ) -> gboolean;
2273    #[cfg(feature = "v1_2")]
2274    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2275    pub fn hdy_tab_view_select_next_page(self_: *mut HdyTabView) -> gboolean;
2276    #[cfg(feature = "v1_2")]
2277    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2278    pub fn hdy_tab_view_select_previous_page(self_: *mut HdyTabView) -> gboolean;
2279    #[cfg(feature = "v1_2")]
2280    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2281    pub fn hdy_tab_view_set_default_icon(self_: *mut HdyTabView, default_icon: *mut gio::GIcon);
2282    #[cfg(feature = "v1_2")]
2283    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2284    pub fn hdy_tab_view_set_menu_model(self_: *mut HdyTabView, menu_model: *mut gio::GMenuModel);
2285    #[cfg(feature = "v1_2")]
2286    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2287    pub fn hdy_tab_view_set_page_pinned(
2288        self_: *mut HdyTabView,
2289        page: *mut HdyTabPage,
2290        pinned: gboolean,
2291    );
2292    #[cfg(feature = "v1_2")]
2293    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2294    pub fn hdy_tab_view_set_selected_page(self_: *mut HdyTabView, selected_page: *mut HdyTabPage);
2295    #[cfg(feature = "v1_2")]
2296    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2297    pub fn hdy_tab_view_set_shortcut_widget(self_: *mut HdyTabView, widget: *mut gtk::GtkWidget);
2298    #[cfg(feature = "v1_2")]
2299    #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
2300    pub fn hdy_tab_view_transfer_page(
2301        self_: *mut HdyTabView,
2302        page: *mut HdyTabPage,
2303        other_view: *mut HdyTabView,
2304        position: c_int,
2305    );
2306
2307    //=========================================================================
2308    // HdyTitleBar
2309    //=========================================================================
2310    pub fn hdy_title_bar_get_type() -> GType;
2311    pub fn hdy_title_bar_new() -> *mut gtk::GtkWidget;
2312    pub fn hdy_title_bar_get_selection_mode(self_: *mut HdyTitleBar) -> gboolean;
2313    pub fn hdy_title_bar_set_selection_mode(self_: *mut HdyTitleBar, selection_mode: gboolean);
2314
2315    //=========================================================================
2316    // HdyValueObject
2317    //=========================================================================
2318    pub fn hdy_value_object_get_type() -> GType;
2319    pub fn hdy_value_object_new(value: *const gobject::GValue) -> *mut HdyValueObject;
2320    pub fn hdy_value_object_new_collect(type_: GType, ...) -> *mut HdyValueObject;
2321    pub fn hdy_value_object_new_string(string: *const c_char) -> *mut HdyValueObject;
2322    pub fn hdy_value_object_new_take_string(string: *mut c_char) -> *mut HdyValueObject;
2323    pub fn hdy_value_object_copy_value(value: *mut HdyValueObject, dest: *mut gobject::GValue);
2324    pub fn hdy_value_object_dup_string(value: *mut HdyValueObject) -> *mut c_char;
2325    pub fn hdy_value_object_get_string(value: *mut HdyValueObject) -> *const c_char;
2326    pub fn hdy_value_object_get_value(value: *mut HdyValueObject) -> *const gobject::GValue;
2327
2328    //=========================================================================
2329    // HdyViewSwitcher
2330    //=========================================================================
2331    pub fn hdy_view_switcher_get_type() -> GType;
2332    pub fn hdy_view_switcher_new() -> *mut gtk::GtkWidget;
2333    pub fn hdy_view_switcher_get_narrow_ellipsize(
2334        self_: *mut HdyViewSwitcher,
2335    ) -> pango::PangoEllipsizeMode;
2336    pub fn hdy_view_switcher_get_policy(self_: *mut HdyViewSwitcher) -> HdyViewSwitcherPolicy;
2337    pub fn hdy_view_switcher_get_stack(self_: *mut HdyViewSwitcher) -> *mut gtk::GtkStack;
2338    pub fn hdy_view_switcher_set_narrow_ellipsize(
2339        self_: *mut HdyViewSwitcher,
2340        mode: pango::PangoEllipsizeMode,
2341    );
2342    pub fn hdy_view_switcher_set_policy(self_: *mut HdyViewSwitcher, policy: HdyViewSwitcherPolicy);
2343    pub fn hdy_view_switcher_set_stack(self_: *mut HdyViewSwitcher, stack: *mut gtk::GtkStack);
2344
2345    //=========================================================================
2346    // HdyViewSwitcherBar
2347    //=========================================================================
2348    pub fn hdy_view_switcher_bar_get_type() -> GType;
2349    pub fn hdy_view_switcher_bar_new() -> *mut gtk::GtkWidget;
2350    pub fn hdy_view_switcher_bar_get_policy(
2351        self_: *mut HdyViewSwitcherBar,
2352    ) -> HdyViewSwitcherPolicy;
2353    pub fn hdy_view_switcher_bar_get_reveal(self_: *mut HdyViewSwitcherBar) -> gboolean;
2354    pub fn hdy_view_switcher_bar_get_stack(self_: *mut HdyViewSwitcherBar) -> *mut gtk::GtkStack;
2355    pub fn hdy_view_switcher_bar_set_policy(
2356        self_: *mut HdyViewSwitcherBar,
2357        policy: HdyViewSwitcherPolicy,
2358    );
2359    pub fn hdy_view_switcher_bar_set_reveal(self_: *mut HdyViewSwitcherBar, reveal: gboolean);
2360    pub fn hdy_view_switcher_bar_set_stack(
2361        self_: *mut HdyViewSwitcherBar,
2362        stack: *mut gtk::GtkStack,
2363    );
2364
2365    //=========================================================================
2366    // HdyViewSwitcherTitle
2367    //=========================================================================
2368    pub fn hdy_view_switcher_title_get_type() -> GType;
2369    pub fn hdy_view_switcher_title_new() -> *mut HdyViewSwitcherTitle;
2370    pub fn hdy_view_switcher_title_get_policy(
2371        self_: *mut HdyViewSwitcherTitle,
2372    ) -> HdyViewSwitcherPolicy;
2373    pub fn hdy_view_switcher_title_get_stack(
2374        self_: *mut HdyViewSwitcherTitle,
2375    ) -> *mut gtk::GtkStack;
2376    pub fn hdy_view_switcher_title_get_subtitle(self_: *mut HdyViewSwitcherTitle) -> *const c_char;
2377    pub fn hdy_view_switcher_title_get_title(self_: *mut HdyViewSwitcherTitle) -> *const c_char;
2378    pub fn hdy_view_switcher_title_get_title_visible(self_: *mut HdyViewSwitcherTitle) -> gboolean;
2379    pub fn hdy_view_switcher_title_get_view_switcher_enabled(
2380        self_: *mut HdyViewSwitcherTitle,
2381    ) -> gboolean;
2382    pub fn hdy_view_switcher_title_set_policy(
2383        self_: *mut HdyViewSwitcherTitle,
2384        policy: HdyViewSwitcherPolicy,
2385    );
2386    pub fn hdy_view_switcher_title_set_stack(
2387        self_: *mut HdyViewSwitcherTitle,
2388        stack: *mut gtk::GtkStack,
2389    );
2390    pub fn hdy_view_switcher_title_set_subtitle(
2391        self_: *mut HdyViewSwitcherTitle,
2392        subtitle: *const c_char,
2393    );
2394    pub fn hdy_view_switcher_title_set_title(
2395        self_: *mut HdyViewSwitcherTitle,
2396        title: *const c_char,
2397    );
2398    pub fn hdy_view_switcher_title_set_view_switcher_enabled(
2399        self_: *mut HdyViewSwitcherTitle,
2400        enabled: gboolean,
2401    );
2402
2403    //=========================================================================
2404    // HdyWindow
2405    //=========================================================================
2406    pub fn hdy_window_get_type() -> GType;
2407    pub fn hdy_window_new() -> *mut gtk::GtkWidget;
2408
2409    //=========================================================================
2410    // HdyWindowHandle
2411    //=========================================================================
2412    pub fn hdy_window_handle_get_type() -> GType;
2413    pub fn hdy_window_handle_new() -> *mut gtk::GtkWidget;
2414
2415    //=========================================================================
2416    // HdySwipeable
2417    //=========================================================================
2418    pub fn hdy_swipeable_get_type() -> GType;
2419    pub fn hdy_swipeable_emit_child_switched(
2420        self_: *mut HdySwipeable,
2421        index: c_uint,
2422        duration: i64,
2423    );
2424    pub fn hdy_swipeable_get_cancel_progress(self_: *mut HdySwipeable) -> c_double;
2425    pub fn hdy_swipeable_get_distance(self_: *mut HdySwipeable) -> c_double;
2426    pub fn hdy_swipeable_get_progress(self_: *mut HdySwipeable) -> c_double;
2427    pub fn hdy_swipeable_get_snap_points(
2428        self_: *mut HdySwipeable,
2429        n_snap_points: *mut c_int,
2430    ) -> *mut c_double;
2431    pub fn hdy_swipeable_get_swipe_area(
2432        self_: *mut HdySwipeable,
2433        navigation_direction: HdyNavigationDirection,
2434        is_drag: gboolean,
2435        rect: *mut gdk::GdkRectangle,
2436    );
2437    pub fn hdy_swipeable_get_swipe_tracker(self_: *mut HdySwipeable) -> *mut HdySwipeTracker;
2438    pub fn hdy_swipeable_switch_child(self_: *mut HdySwipeable, index: c_uint, duration: i64);
2439
2440    //=========================================================================
2441    // Other functions
2442    //=========================================================================
2443    pub fn hdy_ease_out_cubic(t: c_double) -> c_double;
2444    pub fn hdy_enum_value_row_name(
2445        value: *mut HdyEnumValueObject,
2446        user_data: gpointer,
2447    ) -> *mut c_char;
2448    pub fn hdy_get_enable_animations(widget: *mut gtk::GtkWidget) -> gboolean;
2449    pub fn hdy_init();
2450
2451}