1use crate::ffi;
6use glib::{prelude::*, translate::*};
7
8#[cfg(feature = "v4_14")]
10#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12#[non_exhaustive]
13#[doc(alias = "GtkAccessibleAnnouncementPriority")]
14pub enum AccessibleAnnouncementPriority {
15 #[doc(alias = "GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW")]
18 Low,
19 #[doc(alias = "GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM")]
23 Medium,
24 #[doc(alias = "GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH")]
31 High,
32 #[doc(hidden)]
33 __Unknown(i32),
34}
35
36#[cfg(feature = "v4_14")]
37#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
38#[doc(hidden)]
39impl IntoGlib for AccessibleAnnouncementPriority {
40 type GlibType = ffi::GtkAccessibleAnnouncementPriority;
41
42 #[inline]
43 fn into_glib(self) -> ffi::GtkAccessibleAnnouncementPriority {
44 match self {
45 Self::Low => ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW,
46 Self::Medium => ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM,
47 Self::High => ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH,
48 Self::__Unknown(value) => value,
49 }
50 }
51}
52
53#[cfg(feature = "v4_14")]
54#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
55#[doc(hidden)]
56impl FromGlib<ffi::GtkAccessibleAnnouncementPriority> for AccessibleAnnouncementPriority {
57 #[inline]
58 unsafe fn from_glib(value: ffi::GtkAccessibleAnnouncementPriority) -> Self {
59 skip_assert_initialized!();
60
61 match value {
62 ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW => Self::Low,
63 ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM => Self::Medium,
64 ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH => Self::High,
65 value => Self::__Unknown(value),
66 }
67 }
68}
69
70#[cfg(feature = "v4_14")]
71#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
72impl StaticType for AccessibleAnnouncementPriority {
73 #[inline]
74 #[doc(alias = "gtk_accessible_announcement_priority_get_type")]
75 fn static_type() -> glib::Type {
76 unsafe { from_glib(ffi::gtk_accessible_announcement_priority_get_type()) }
77 }
78}
79
80#[cfg(feature = "v4_14")]
81#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
82impl glib::HasParamSpec for AccessibleAnnouncementPriority {
83 type ParamSpec = glib::ParamSpecEnum;
84 type SetValue = Self;
85 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
86
87 fn param_spec_builder() -> Self::BuilderFn {
88 Self::ParamSpec::builder_with_default
89 }
90}
91
92#[cfg(feature = "v4_14")]
93#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
94impl glib::value::ValueType for AccessibleAnnouncementPriority {
95 type Type = Self;
96}
97
98#[cfg(feature = "v4_14")]
99#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
100unsafe impl<'a> glib::value::FromValue<'a> for AccessibleAnnouncementPriority {
101 type Checker = glib::value::GenericValueTypeChecker<Self>;
102
103 #[inline]
104 unsafe fn from_value(value: &'a glib::Value) -> Self {
105 skip_assert_initialized!();
106 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
107 }
108}
109
110#[cfg(feature = "v4_14")]
111#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
112impl ToValue for AccessibleAnnouncementPriority {
113 #[inline]
114 fn to_value(&self) -> glib::Value {
115 let mut value = glib::Value::for_value_type::<Self>();
116 unsafe {
117 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
118 }
119 value
120 }
121
122 #[inline]
123 fn value_type(&self) -> glib::Type {
124 Self::static_type()
125 }
126}
127
128#[cfg(feature = "v4_14")]
129#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
130impl From<AccessibleAnnouncementPriority> for glib::Value {
131 #[inline]
132 fn from(v: AccessibleAnnouncementPriority) -> Self {
133 skip_assert_initialized!();
134 ToValue::to_value(&v)
135 }
136}
137
138#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
141#[non_exhaustive]
142#[doc(alias = "GtkAccessibleAutocomplete")]
143pub enum AccessibleAutocomplete {
144 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_NONE")]
146 None,
147 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE")]
151 Inline,
152 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_LIST")]
156 List,
157 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH")]
163 Both,
164 #[doc(hidden)]
165 __Unknown(i32),
166}
167
168#[doc(hidden)]
169impl IntoGlib for AccessibleAutocomplete {
170 type GlibType = ffi::GtkAccessibleAutocomplete;
171
172 #[inline]
173 fn into_glib(self) -> ffi::GtkAccessibleAutocomplete {
174 match self {
175 Self::None => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_NONE,
176 Self::Inline => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE,
177 Self::List => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_LIST,
178 Self::Both => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH,
179 Self::__Unknown(value) => value,
180 }
181 }
182}
183
184#[doc(hidden)]
185impl FromGlib<ffi::GtkAccessibleAutocomplete> for AccessibleAutocomplete {
186 #[inline]
187 unsafe fn from_glib(value: ffi::GtkAccessibleAutocomplete) -> Self {
188 skip_assert_initialized!();
189
190 match value {
191 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_NONE => Self::None,
192 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE => Self::Inline,
193 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_LIST => Self::List,
194 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH => Self::Both,
195 value => Self::__Unknown(value),
196 }
197 }
198}
199
200impl StaticType for AccessibleAutocomplete {
201 #[inline]
202 #[doc(alias = "gtk_accessible_autocomplete_get_type")]
203 fn static_type() -> glib::Type {
204 unsafe { from_glib(ffi::gtk_accessible_autocomplete_get_type()) }
205 }
206}
207
208impl glib::HasParamSpec for AccessibleAutocomplete {
209 type ParamSpec = glib::ParamSpecEnum;
210 type SetValue = Self;
211 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
212
213 fn param_spec_builder() -> Self::BuilderFn {
214 Self::ParamSpec::builder_with_default
215 }
216}
217
218impl glib::value::ValueType for AccessibleAutocomplete {
219 type Type = Self;
220}
221
222unsafe impl<'a> glib::value::FromValue<'a> for AccessibleAutocomplete {
223 type Checker = glib::value::GenericValueTypeChecker<Self>;
224
225 #[inline]
226 unsafe fn from_value(value: &'a glib::Value) -> Self {
227 skip_assert_initialized!();
228 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
229 }
230}
231
232impl ToValue for AccessibleAutocomplete {
233 #[inline]
234 fn to_value(&self) -> glib::Value {
235 let mut value = glib::Value::for_value_type::<Self>();
236 unsafe {
237 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
238 }
239 value
240 }
241
242 #[inline]
243 fn value_type(&self) -> glib::Type {
244 Self::static_type()
245 }
246}
247
248impl From<AccessibleAutocomplete> for glib::Value {
249 #[inline]
250 fn from(v: AccessibleAutocomplete) -> Self {
251 skip_assert_initialized!();
252 ToValue::to_value(&v)
253 }
254}
255
256#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
263#[non_exhaustive]
264#[doc(alias = "GtkAccessibleInvalidState")]
265pub enum AccessibleInvalidState {
266 #[doc(alias = "GTK_ACCESSIBLE_INVALID_FALSE")]
268 False,
269 #[doc(alias = "GTK_ACCESSIBLE_INVALID_TRUE")]
271 True,
272 #[doc(alias = "GTK_ACCESSIBLE_INVALID_GRAMMAR")]
274 Grammar,
275 #[doc(alias = "GTK_ACCESSIBLE_INVALID_SPELLING")]
277 Spelling,
278 #[doc(hidden)]
279 __Unknown(i32),
280}
281
282#[doc(hidden)]
283impl IntoGlib for AccessibleInvalidState {
284 type GlibType = ffi::GtkAccessibleInvalidState;
285
286 #[inline]
287 fn into_glib(self) -> ffi::GtkAccessibleInvalidState {
288 match self {
289 Self::False => ffi::GTK_ACCESSIBLE_INVALID_FALSE,
290 Self::True => ffi::GTK_ACCESSIBLE_INVALID_TRUE,
291 Self::Grammar => ffi::GTK_ACCESSIBLE_INVALID_GRAMMAR,
292 Self::Spelling => ffi::GTK_ACCESSIBLE_INVALID_SPELLING,
293 Self::__Unknown(value) => value,
294 }
295 }
296}
297
298#[doc(hidden)]
299impl FromGlib<ffi::GtkAccessibleInvalidState> for AccessibleInvalidState {
300 #[inline]
301 unsafe fn from_glib(value: ffi::GtkAccessibleInvalidState) -> Self {
302 skip_assert_initialized!();
303
304 match value {
305 ffi::GTK_ACCESSIBLE_INVALID_FALSE => Self::False,
306 ffi::GTK_ACCESSIBLE_INVALID_TRUE => Self::True,
307 ffi::GTK_ACCESSIBLE_INVALID_GRAMMAR => Self::Grammar,
308 ffi::GTK_ACCESSIBLE_INVALID_SPELLING => Self::Spelling,
309 value => Self::__Unknown(value),
310 }
311 }
312}
313
314impl StaticType for AccessibleInvalidState {
315 #[inline]
316 #[doc(alias = "gtk_accessible_invalid_state_get_type")]
317 fn static_type() -> glib::Type {
318 unsafe { from_glib(ffi::gtk_accessible_invalid_state_get_type()) }
319 }
320}
321
322impl glib::HasParamSpec for AccessibleInvalidState {
323 type ParamSpec = glib::ParamSpecEnum;
324 type SetValue = Self;
325 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
326
327 fn param_spec_builder() -> Self::BuilderFn {
328 Self::ParamSpec::builder_with_default
329 }
330}
331
332impl glib::value::ValueType for AccessibleInvalidState {
333 type Type = Self;
334}
335
336unsafe impl<'a> glib::value::FromValue<'a> for AccessibleInvalidState {
337 type Checker = glib::value::GenericValueTypeChecker<Self>;
338
339 #[inline]
340 unsafe fn from_value(value: &'a glib::Value) -> Self {
341 skip_assert_initialized!();
342 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
343 }
344}
345
346impl ToValue for AccessibleInvalidState {
347 #[inline]
348 fn to_value(&self) -> glib::Value {
349 let mut value = glib::Value::for_value_type::<Self>();
350 unsafe {
351 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
352 }
353 value
354 }
355
356 #[inline]
357 fn value_type(&self) -> glib::Type {
358 Self::static_type()
359 }
360}
361
362impl From<AccessibleInvalidState> for glib::Value {
363 #[inline]
364 fn from(v: AccessibleInvalidState) -> Self {
365 skip_assert_initialized!();
366 ToValue::to_value(&v)
367 }
368}
369
370#[cfg(feature = "v4_10")]
373#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
374#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
375#[non_exhaustive]
376#[doc(alias = "GtkAccessiblePlatformState")]
377pub enum AccessiblePlatformState {
378 #[doc(alias = "GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE")]
380 Focusable,
381 #[doc(alias = "GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED")]
383 Focused,
384 #[doc(alias = "GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE")]
386 Active,
387 #[doc(hidden)]
388 __Unknown(i32),
389}
390
391#[cfg(feature = "v4_10")]
392#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
393#[doc(hidden)]
394impl IntoGlib for AccessiblePlatformState {
395 type GlibType = ffi::GtkAccessiblePlatformState;
396
397 #[inline]
398 fn into_glib(self) -> ffi::GtkAccessiblePlatformState {
399 match self {
400 Self::Focusable => ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE,
401 Self::Focused => ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED,
402 Self::Active => ffi::GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE,
403 Self::__Unknown(value) => value,
404 }
405 }
406}
407
408#[cfg(feature = "v4_10")]
409#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
410#[doc(hidden)]
411impl FromGlib<ffi::GtkAccessiblePlatformState> for AccessiblePlatformState {
412 #[inline]
413 unsafe fn from_glib(value: ffi::GtkAccessiblePlatformState) -> Self {
414 skip_assert_initialized!();
415
416 match value {
417 ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE => Self::Focusable,
418 ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED => Self::Focused,
419 ffi::GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE => Self::Active,
420 value => Self::__Unknown(value),
421 }
422 }
423}
424
425#[cfg(feature = "v4_10")]
426#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
427impl StaticType for AccessiblePlatformState {
428 #[inline]
429 #[doc(alias = "gtk_accessible_platform_state_get_type")]
430 fn static_type() -> glib::Type {
431 unsafe { from_glib(ffi::gtk_accessible_platform_state_get_type()) }
432 }
433}
434
435#[cfg(feature = "v4_10")]
436#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
437impl glib::HasParamSpec for AccessiblePlatformState {
438 type ParamSpec = glib::ParamSpecEnum;
439 type SetValue = Self;
440 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
441
442 fn param_spec_builder() -> Self::BuilderFn {
443 Self::ParamSpec::builder_with_default
444 }
445}
446
447#[cfg(feature = "v4_10")]
448#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
449impl glib::value::ValueType for AccessiblePlatformState {
450 type Type = Self;
451}
452
453#[cfg(feature = "v4_10")]
454#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
455unsafe impl<'a> glib::value::FromValue<'a> for AccessiblePlatformState {
456 type Checker = glib::value::GenericValueTypeChecker<Self>;
457
458 #[inline]
459 unsafe fn from_value(value: &'a glib::Value) -> Self {
460 skip_assert_initialized!();
461 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
462 }
463}
464
465#[cfg(feature = "v4_10")]
466#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
467impl ToValue for AccessiblePlatformState {
468 #[inline]
469 fn to_value(&self) -> glib::Value {
470 let mut value = glib::Value::for_value_type::<Self>();
471 unsafe {
472 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
473 }
474 value
475 }
476
477 #[inline]
478 fn value_type(&self) -> glib::Type {
479 Self::static_type()
480 }
481}
482
483#[cfg(feature = "v4_10")]
484#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
485impl From<AccessiblePlatformState> for glib::Value {
486 #[inline]
487 fn from(v: AccessiblePlatformState) -> Self {
488 skip_assert_initialized!();
489 ToValue::to_value(&v)
490 }
491}
492
493#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
495#[non_exhaustive]
496#[doc(alias = "GtkAccessibleProperty")]
497pub enum AccessibleProperty {
498 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE")]
503 Autocomplete,
504 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_DESCRIPTION")]
507 Description,
508 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_HAS_POPUP")]
514 HasPopup,
515 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS")]
528 KeyShortcuts,
529 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_LABEL")]
532 Label,
533 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_LEVEL")]
536 Level,
537 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_MODAL")]
540 Modal,
541 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_MULTI_LINE")]
544 MultiLine,
545 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE")]
549 MultiSelectable,
550 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_ORIENTATION")]
554 Orientation,
555 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER")]
560 Placeholder,
561 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_READ_ONLY")]
564 ReadOnly,
565 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_REQUIRED")]
568 Required,
569 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION")]
572 RoleDescription,
573 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_SORT")]
576 Sort,
577 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_MAX")]
580 ValueMax,
581 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_MIN")]
584 ValueMin,
585 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_NOW")]
588 ValueNow,
589 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT")]
592 ValueText,
593 #[cfg(feature = "v4_16")]
596 #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
597 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_HELP_TEXT")]
598 HelpText,
599 #[doc(hidden)]
600 __Unknown(i32),
601}
602
603impl AccessibleProperty {
604 #[doc(alias = "gtk_accessible_property_init_value")]
605 pub fn init_value(self, value: &mut glib::Value) {
606 assert_initialized_main_thread!();
607 unsafe {
608 ffi::gtk_accessible_property_init_value(self.into_glib(), value.to_glib_none_mut().0);
609 }
610 }
611}
612
613#[doc(hidden)]
614impl IntoGlib for AccessibleProperty {
615 type GlibType = ffi::GtkAccessibleProperty;
616
617 fn into_glib(self) -> ffi::GtkAccessibleProperty {
618 match self {
619 Self::Autocomplete => ffi::GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE,
620 Self::Description => ffi::GTK_ACCESSIBLE_PROPERTY_DESCRIPTION,
621 Self::HasPopup => ffi::GTK_ACCESSIBLE_PROPERTY_HAS_POPUP,
622 Self::KeyShortcuts => ffi::GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS,
623 Self::Label => ffi::GTK_ACCESSIBLE_PROPERTY_LABEL,
624 Self::Level => ffi::GTK_ACCESSIBLE_PROPERTY_LEVEL,
625 Self::Modal => ffi::GTK_ACCESSIBLE_PROPERTY_MODAL,
626 Self::MultiLine => ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_LINE,
627 Self::MultiSelectable => ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE,
628 Self::Orientation => ffi::GTK_ACCESSIBLE_PROPERTY_ORIENTATION,
629 Self::Placeholder => ffi::GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER,
630 Self::ReadOnly => ffi::GTK_ACCESSIBLE_PROPERTY_READ_ONLY,
631 Self::Required => ffi::GTK_ACCESSIBLE_PROPERTY_REQUIRED,
632 Self::RoleDescription => ffi::GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION,
633 Self::Sort => ffi::GTK_ACCESSIBLE_PROPERTY_SORT,
634 Self::ValueMax => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MAX,
635 Self::ValueMin => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MIN,
636 Self::ValueNow => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_NOW,
637 Self::ValueText => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT,
638 #[cfg(feature = "v4_16")]
639 Self::HelpText => ffi::GTK_ACCESSIBLE_PROPERTY_HELP_TEXT,
640 Self::__Unknown(value) => value,
641 }
642 }
643}
644
645#[doc(hidden)]
646impl FromGlib<ffi::GtkAccessibleProperty> for AccessibleProperty {
647 unsafe fn from_glib(value: ffi::GtkAccessibleProperty) -> Self {
648 skip_assert_initialized!();
649
650 match value {
651 ffi::GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE => Self::Autocomplete,
652 ffi::GTK_ACCESSIBLE_PROPERTY_DESCRIPTION => Self::Description,
653 ffi::GTK_ACCESSIBLE_PROPERTY_HAS_POPUP => Self::HasPopup,
654 ffi::GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS => Self::KeyShortcuts,
655 ffi::GTK_ACCESSIBLE_PROPERTY_LABEL => Self::Label,
656 ffi::GTK_ACCESSIBLE_PROPERTY_LEVEL => Self::Level,
657 ffi::GTK_ACCESSIBLE_PROPERTY_MODAL => Self::Modal,
658 ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_LINE => Self::MultiLine,
659 ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE => Self::MultiSelectable,
660 ffi::GTK_ACCESSIBLE_PROPERTY_ORIENTATION => Self::Orientation,
661 ffi::GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER => Self::Placeholder,
662 ffi::GTK_ACCESSIBLE_PROPERTY_READ_ONLY => Self::ReadOnly,
663 ffi::GTK_ACCESSIBLE_PROPERTY_REQUIRED => Self::Required,
664 ffi::GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION => Self::RoleDescription,
665 ffi::GTK_ACCESSIBLE_PROPERTY_SORT => Self::Sort,
666 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MAX => Self::ValueMax,
667 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MIN => Self::ValueMin,
668 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_NOW => Self::ValueNow,
669 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT => Self::ValueText,
670 #[cfg(feature = "v4_16")]
671 ffi::GTK_ACCESSIBLE_PROPERTY_HELP_TEXT => Self::HelpText,
672 value => Self::__Unknown(value),
673 }
674 }
675}
676
677impl StaticType for AccessibleProperty {
678 #[inline]
679 #[doc(alias = "gtk_accessible_property_get_type")]
680 fn static_type() -> glib::Type {
681 unsafe { from_glib(ffi::gtk_accessible_property_get_type()) }
682 }
683}
684
685impl glib::HasParamSpec for AccessibleProperty {
686 type ParamSpec = glib::ParamSpecEnum;
687 type SetValue = Self;
688 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
689
690 fn param_spec_builder() -> Self::BuilderFn {
691 Self::ParamSpec::builder_with_default
692 }
693}
694
695impl glib::value::ValueType for AccessibleProperty {
696 type Type = Self;
697}
698
699unsafe impl<'a> glib::value::FromValue<'a> for AccessibleProperty {
700 type Checker = glib::value::GenericValueTypeChecker<Self>;
701
702 #[inline]
703 unsafe fn from_value(value: &'a glib::Value) -> Self {
704 skip_assert_initialized!();
705 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
706 }
707}
708
709impl ToValue for AccessibleProperty {
710 #[inline]
711 fn to_value(&self) -> glib::Value {
712 let mut value = glib::Value::for_value_type::<Self>();
713 unsafe {
714 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
715 }
716 value
717 }
718
719 #[inline]
720 fn value_type(&self) -> glib::Type {
721 Self::static_type()
722 }
723}
724
725impl From<AccessibleProperty> for glib::Value {
726 #[inline]
727 fn from(v: AccessibleProperty) -> Self {
728 skip_assert_initialized!();
729 ToValue::to_value(&v)
730 }
731}
732
733#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
738#[non_exhaustive]
739#[doc(alias = "GtkAccessibleRelation")]
740pub enum AccessibleRelation {
741 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT")]
745 ActiveDescendant,
746 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_COUNT")]
749 ColCount,
750 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_INDEX")]
754 ColIndex,
755 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT")]
758 ColIndexText,
759 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_SPAN")]
762 ColSpan,
763 #[doc(alias = "GTK_ACCESSIBLE_RELATION_CONTROLS")]
766 Controls,
767 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DESCRIBED_BY")]
770 DescribedBy,
771 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DETAILS")]
774 Details,
775 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE")]
778 ErrorMessage,
779 #[doc(alias = "GTK_ACCESSIBLE_RELATION_FLOW_TO")]
784 FlowTo,
785 #[doc(alias = "GTK_ACCESSIBLE_RELATION_LABELLED_BY")]
788 LabelledBy,
789 #[doc(alias = "GTK_ACCESSIBLE_RELATION_OWNS")]
794 Owns,
795 #[doc(alias = "GTK_ACCESSIBLE_RELATION_POS_IN_SET")]
798 PosInSet,
799 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_COUNT")]
802 RowCount,
803 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_INDEX")]
807 RowIndex,
808 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT")]
811 RowIndexText,
812 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_SPAN")]
815 RowSpan,
816 #[doc(alias = "GTK_ACCESSIBLE_RELATION_SET_SIZE")]
819 SetSize,
820 #[cfg(feature = "v4_18")]
825 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
826 #[doc(alias = "GTK_ACCESSIBLE_RELATION_LABEL_FOR")]
827 LabelFor,
828 #[cfg(feature = "v4_18")]
833 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
834 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR")]
835 DescriptionFor,
836 #[cfg(feature = "v4_18")]
841 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
842 #[doc(alias = "GTK_ACCESSIBLE_RELATION_CONTROLLED_BY")]
843 ControlledBy,
844 #[cfg(feature = "v4_18")]
849 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
850 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DETAILS_FOR")]
851 DetailsFor,
852 #[cfg(feature = "v4_18")]
857 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
858 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR")]
859 ErrorMessageFor,
860 #[cfg(feature = "v4_18")]
867 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
868 #[doc(alias = "GTK_ACCESSIBLE_RELATION_FLOW_FROM")]
869 FlowFrom,
870 #[doc(hidden)]
871 __Unknown(i32),
872}
873
874impl AccessibleRelation {
875 #[doc(alias = "gtk_accessible_relation_init_value")]
876 pub fn init_value(self, value: &mut glib::Value) {
877 assert_initialized_main_thread!();
878 unsafe {
879 ffi::gtk_accessible_relation_init_value(self.into_glib(), value.to_glib_none_mut().0);
880 }
881 }
882}
883
884#[doc(hidden)]
885impl IntoGlib for AccessibleRelation {
886 type GlibType = ffi::GtkAccessibleRelation;
887
888 fn into_glib(self) -> ffi::GtkAccessibleRelation {
889 match self {
890 Self::ActiveDescendant => ffi::GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT,
891 Self::ColCount => ffi::GTK_ACCESSIBLE_RELATION_COL_COUNT,
892 Self::ColIndex => ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX,
893 Self::ColIndexText => ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT,
894 Self::ColSpan => ffi::GTK_ACCESSIBLE_RELATION_COL_SPAN,
895 Self::Controls => ffi::GTK_ACCESSIBLE_RELATION_CONTROLS,
896 Self::DescribedBy => ffi::GTK_ACCESSIBLE_RELATION_DESCRIBED_BY,
897 Self::Details => ffi::GTK_ACCESSIBLE_RELATION_DETAILS,
898 Self::ErrorMessage => ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE,
899 Self::FlowTo => ffi::GTK_ACCESSIBLE_RELATION_FLOW_TO,
900 Self::LabelledBy => ffi::GTK_ACCESSIBLE_RELATION_LABELLED_BY,
901 Self::Owns => ffi::GTK_ACCESSIBLE_RELATION_OWNS,
902 Self::PosInSet => ffi::GTK_ACCESSIBLE_RELATION_POS_IN_SET,
903 Self::RowCount => ffi::GTK_ACCESSIBLE_RELATION_ROW_COUNT,
904 Self::RowIndex => ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX,
905 Self::RowIndexText => ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT,
906 Self::RowSpan => ffi::GTK_ACCESSIBLE_RELATION_ROW_SPAN,
907 Self::SetSize => ffi::GTK_ACCESSIBLE_RELATION_SET_SIZE,
908 #[cfg(feature = "v4_18")]
909 Self::LabelFor => ffi::GTK_ACCESSIBLE_RELATION_LABEL_FOR,
910 #[cfg(feature = "v4_18")]
911 Self::DescriptionFor => ffi::GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR,
912 #[cfg(feature = "v4_18")]
913 Self::ControlledBy => ffi::GTK_ACCESSIBLE_RELATION_CONTROLLED_BY,
914 #[cfg(feature = "v4_18")]
915 Self::DetailsFor => ffi::GTK_ACCESSIBLE_RELATION_DETAILS_FOR,
916 #[cfg(feature = "v4_18")]
917 Self::ErrorMessageFor => ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR,
918 #[cfg(feature = "v4_18")]
919 Self::FlowFrom => ffi::GTK_ACCESSIBLE_RELATION_FLOW_FROM,
920 Self::__Unknown(value) => value,
921 }
922 }
923}
924
925#[doc(hidden)]
926impl FromGlib<ffi::GtkAccessibleRelation> for AccessibleRelation {
927 unsafe fn from_glib(value: ffi::GtkAccessibleRelation) -> Self {
928 skip_assert_initialized!();
929
930 match value {
931 ffi::GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT => Self::ActiveDescendant,
932 ffi::GTK_ACCESSIBLE_RELATION_COL_COUNT => Self::ColCount,
933 ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX => Self::ColIndex,
934 ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT => Self::ColIndexText,
935 ffi::GTK_ACCESSIBLE_RELATION_COL_SPAN => Self::ColSpan,
936 ffi::GTK_ACCESSIBLE_RELATION_CONTROLS => Self::Controls,
937 ffi::GTK_ACCESSIBLE_RELATION_DESCRIBED_BY => Self::DescribedBy,
938 ffi::GTK_ACCESSIBLE_RELATION_DETAILS => Self::Details,
939 ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE => Self::ErrorMessage,
940 ffi::GTK_ACCESSIBLE_RELATION_FLOW_TO => Self::FlowTo,
941 ffi::GTK_ACCESSIBLE_RELATION_LABELLED_BY => Self::LabelledBy,
942 ffi::GTK_ACCESSIBLE_RELATION_OWNS => Self::Owns,
943 ffi::GTK_ACCESSIBLE_RELATION_POS_IN_SET => Self::PosInSet,
944 ffi::GTK_ACCESSIBLE_RELATION_ROW_COUNT => Self::RowCount,
945 ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX => Self::RowIndex,
946 ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT => Self::RowIndexText,
947 ffi::GTK_ACCESSIBLE_RELATION_ROW_SPAN => Self::RowSpan,
948 ffi::GTK_ACCESSIBLE_RELATION_SET_SIZE => Self::SetSize,
949 #[cfg(feature = "v4_18")]
950 ffi::GTK_ACCESSIBLE_RELATION_LABEL_FOR => Self::LabelFor,
951 #[cfg(feature = "v4_18")]
952 ffi::GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR => Self::DescriptionFor,
953 #[cfg(feature = "v4_18")]
954 ffi::GTK_ACCESSIBLE_RELATION_CONTROLLED_BY => Self::ControlledBy,
955 #[cfg(feature = "v4_18")]
956 ffi::GTK_ACCESSIBLE_RELATION_DETAILS_FOR => Self::DetailsFor,
957 #[cfg(feature = "v4_18")]
958 ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR => Self::ErrorMessageFor,
959 #[cfg(feature = "v4_18")]
960 ffi::GTK_ACCESSIBLE_RELATION_FLOW_FROM => Self::FlowFrom,
961 value => Self::__Unknown(value),
962 }
963 }
964}
965
966impl StaticType for AccessibleRelation {
967 #[inline]
968 #[doc(alias = "gtk_accessible_relation_get_type")]
969 fn static_type() -> glib::Type {
970 unsafe { from_glib(ffi::gtk_accessible_relation_get_type()) }
971 }
972}
973
974impl glib::HasParamSpec for AccessibleRelation {
975 type ParamSpec = glib::ParamSpecEnum;
976 type SetValue = Self;
977 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
978
979 fn param_spec_builder() -> Self::BuilderFn {
980 Self::ParamSpec::builder_with_default
981 }
982}
983
984impl glib::value::ValueType for AccessibleRelation {
985 type Type = Self;
986}
987
988unsafe impl<'a> glib::value::FromValue<'a> for AccessibleRelation {
989 type Checker = glib::value::GenericValueTypeChecker<Self>;
990
991 #[inline]
992 unsafe fn from_value(value: &'a glib::Value) -> Self {
993 skip_assert_initialized!();
994 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
995 }
996}
997
998impl ToValue for AccessibleRelation {
999 #[inline]
1000 fn to_value(&self) -> glib::Value {
1001 let mut value = glib::Value::for_value_type::<Self>();
1002 unsafe {
1003 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1004 }
1005 value
1006 }
1007
1008 #[inline]
1009 fn value_type(&self) -> glib::Type {
1010 Self::static_type()
1011 }
1012}
1013
1014impl From<AccessibleRelation> for glib::Value {
1015 #[inline]
1016 fn from(v: AccessibleRelation) -> Self {
1017 skip_assert_initialized!();
1018 ToValue::to_value(&v)
1019 }
1020}
1021
1022#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1027#[non_exhaustive]
1028#[doc(alias = "GtkAccessibleRole")]
1029pub enum AccessibleRole {
1030 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ALERT")]
1033 Alert,
1034 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ALERT_DIALOG")]
1037 AlertDialog,
1038 #[doc(alias = "GTK_ACCESSIBLE_ROLE_BANNER")]
1040 Banner,
1041 #[doc(alias = "GTK_ACCESSIBLE_ROLE_BUTTON")]
1044 Button,
1045 #[doc(alias = "GTK_ACCESSIBLE_ROLE_CAPTION")]
1047 Caption,
1048 #[doc(alias = "GTK_ACCESSIBLE_ROLE_CELL")]
1050 Cell,
1051 #[doc(alias = "GTK_ACCESSIBLE_ROLE_CHECKBOX")]
1054 Checkbox,
1055 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COLUMN_HEADER")]
1057 ColumnHeader,
1058 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMBO_BOX")]
1062 ComboBox,
1063 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMMAND")]
1065 Command,
1066 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMPOSITE")]
1068 Composite,
1069 #[doc(alias = "GTK_ACCESSIBLE_ROLE_DIALOG")]
1073 Dialog,
1074 #[doc(alias = "GTK_ACCESSIBLE_ROLE_DOCUMENT")]
1077 Document,
1078 #[doc(alias = "GTK_ACCESSIBLE_ROLE_FEED")]
1080 Feed,
1081 #[doc(alias = "GTK_ACCESSIBLE_ROLE_FORM")]
1083 Form,
1084 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GENERIC")]
1087 Generic,
1088 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GRID")]
1090 Grid,
1091 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GRID_CELL")]
1093 GridCell,
1094 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GROUP")]
1097 Group,
1098 #[doc(alias = "GTK_ACCESSIBLE_ROLE_HEADING")]
1100 Heading,
1101 #[doc(alias = "GTK_ACCESSIBLE_ROLE_IMG")]
1103 Img,
1104 #[doc(alias = "GTK_ACCESSIBLE_ROLE_INPUT")]
1106 Input,
1107 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LABEL")]
1109 Label,
1110 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LANDMARK")]
1112 Landmark,
1113 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LEGEND")]
1115 Legend,
1116 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LINK")]
1118 Link,
1119 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LIST")]
1121 List,
1122 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LIST_BOX")]
1124 ListBox,
1125 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LIST_ITEM")]
1127 ListItem,
1128 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LOG")]
1130 Log,
1131 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MAIN")]
1133 Main,
1134 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MARQUEE")]
1136 Marquee,
1137 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MATH")]
1139 Math,
1140 #[doc(alias = "GTK_ACCESSIBLE_ROLE_METER")]
1142 Meter,
1143 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU")]
1145 Menu,
1146 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_BAR")]
1148 MenuBar,
1149 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_ITEM")]
1151 MenuItem,
1152 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX")]
1154 MenuItemCheckbox,
1155 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO")]
1157 MenuItemRadio,
1158 #[doc(alias = "GTK_ACCESSIBLE_ROLE_NAVIGATION")]
1160 Navigation,
1161 #[doc(alias = "GTK_ACCESSIBLE_ROLE_NONE")]
1164 None,
1165 #[doc(alias = "GTK_ACCESSIBLE_ROLE_NOTE")]
1167 Note,
1168 #[doc(alias = "GTK_ACCESSIBLE_ROLE_OPTION")]
1170 Option,
1171 #[doc(alias = "GTK_ACCESSIBLE_ROLE_PRESENTATION")]
1174 Presentation,
1175 #[doc(alias = "GTK_ACCESSIBLE_ROLE_PROGRESS_BAR")]
1178 ProgressBar,
1179 #[doc(alias = "GTK_ACCESSIBLE_ROLE_RADIO")]
1182 Radio,
1183 #[doc(alias = "GTK_ACCESSIBLE_ROLE_RADIO_GROUP")]
1185 RadioGroup,
1186 #[doc(alias = "GTK_ACCESSIBLE_ROLE_RANGE")]
1188 Range,
1189 #[doc(alias = "GTK_ACCESSIBLE_ROLE_REGION")]
1191 Region,
1192 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ROW")]
1194 Row,
1195 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ROW_GROUP")]
1197 RowGroup,
1198 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ROW_HEADER")]
1200 RowHeader,
1201 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SCROLLBAR")]
1205 Scrollbar,
1206 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SEARCH")]
1208 Search,
1209 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SEARCH_BOX")]
1212 SearchBox,
1213 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SECTION")]
1215 Section,
1216 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SECTION_HEAD")]
1218 SectionHead,
1219 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SELECT")]
1221 Select,
1222 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SEPARATOR")]
1225 Separator,
1226 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SLIDER")]
1229 Slider,
1230 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SPIN_BUTTON")]
1233 SpinButton,
1234 #[doc(alias = "GTK_ACCESSIBLE_ROLE_STATUS")]
1236 Status,
1237 #[doc(alias = "GTK_ACCESSIBLE_ROLE_STRUCTURE")]
1239 Structure,
1240 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SWITCH")]
1243 Switch,
1244 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TAB")]
1246 Tab,
1247 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TABLE")]
1249 Table,
1250 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TAB_LIST")]
1252 TabList,
1253 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TAB_PANEL")]
1255 TabPanel,
1256 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TEXT_BOX")]
1259 TextBox,
1260 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TIME")]
1262 Time,
1263 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TIMER")]
1265 Timer,
1266 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TOOLBAR")]
1268 Toolbar,
1269 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TOOLTIP")]
1271 Tooltip,
1272 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TREE")]
1274 Tree,
1275 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TREE_GRID")]
1277 TreeGrid,
1278 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TREE_ITEM")]
1280 TreeItem,
1281 #[doc(alias = "GTK_ACCESSIBLE_ROLE_WIDGET")]
1284 Widget,
1285 #[doc(alias = "GTK_ACCESSIBLE_ROLE_WINDOW")]
1287 Window,
1288 #[cfg(feature = "v4_10")]
1291 #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
1292 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON")]
1293 ToggleButton,
1294 #[cfg(feature = "v4_12")]
1298 #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
1299 #[doc(alias = "GTK_ACCESSIBLE_ROLE_APPLICATION")]
1300 Application,
1301 #[cfg(feature = "v4_14")]
1303 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1304 #[doc(alias = "GTK_ACCESSIBLE_ROLE_PARAGRAPH")]
1305 Paragraph,
1306 #[cfg(feature = "v4_14")]
1308 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1309 #[doc(alias = "GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE")]
1310 BlockQuote,
1311 #[cfg(feature = "v4_14")]
1314 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1315 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ARTICLE")]
1316 Article,
1317 #[cfg(feature = "v4_14")]
1319 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1320 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMMENT")]
1321 Comment,
1322 #[cfg(feature = "v4_14")]
1324 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1325 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TERMINAL")]
1326 Terminal,
1327 #[doc(hidden)]
1328 __Unknown(i32),
1329}
1330
1331#[doc(hidden)]
1332impl IntoGlib for AccessibleRole {
1333 type GlibType = ffi::GtkAccessibleRole;
1334
1335 fn into_glib(self) -> ffi::GtkAccessibleRole {
1336 match self {
1337 Self::Alert => ffi::GTK_ACCESSIBLE_ROLE_ALERT,
1338 Self::AlertDialog => ffi::GTK_ACCESSIBLE_ROLE_ALERT_DIALOG,
1339 Self::Banner => ffi::GTK_ACCESSIBLE_ROLE_BANNER,
1340 Self::Button => ffi::GTK_ACCESSIBLE_ROLE_BUTTON,
1341 Self::Caption => ffi::GTK_ACCESSIBLE_ROLE_CAPTION,
1342 Self::Cell => ffi::GTK_ACCESSIBLE_ROLE_CELL,
1343 Self::Checkbox => ffi::GTK_ACCESSIBLE_ROLE_CHECKBOX,
1344 Self::ColumnHeader => ffi::GTK_ACCESSIBLE_ROLE_COLUMN_HEADER,
1345 Self::ComboBox => ffi::GTK_ACCESSIBLE_ROLE_COMBO_BOX,
1346 Self::Command => ffi::GTK_ACCESSIBLE_ROLE_COMMAND,
1347 Self::Composite => ffi::GTK_ACCESSIBLE_ROLE_COMPOSITE,
1348 Self::Dialog => ffi::GTK_ACCESSIBLE_ROLE_DIALOG,
1349 Self::Document => ffi::GTK_ACCESSIBLE_ROLE_DOCUMENT,
1350 Self::Feed => ffi::GTK_ACCESSIBLE_ROLE_FEED,
1351 Self::Form => ffi::GTK_ACCESSIBLE_ROLE_FORM,
1352 Self::Generic => ffi::GTK_ACCESSIBLE_ROLE_GENERIC,
1353 Self::Grid => ffi::GTK_ACCESSIBLE_ROLE_GRID,
1354 Self::GridCell => ffi::GTK_ACCESSIBLE_ROLE_GRID_CELL,
1355 Self::Group => ffi::GTK_ACCESSIBLE_ROLE_GROUP,
1356 Self::Heading => ffi::GTK_ACCESSIBLE_ROLE_HEADING,
1357 Self::Img => ffi::GTK_ACCESSIBLE_ROLE_IMG,
1358 Self::Input => ffi::GTK_ACCESSIBLE_ROLE_INPUT,
1359 Self::Label => ffi::GTK_ACCESSIBLE_ROLE_LABEL,
1360 Self::Landmark => ffi::GTK_ACCESSIBLE_ROLE_LANDMARK,
1361 Self::Legend => ffi::GTK_ACCESSIBLE_ROLE_LEGEND,
1362 Self::Link => ffi::GTK_ACCESSIBLE_ROLE_LINK,
1363 Self::List => ffi::GTK_ACCESSIBLE_ROLE_LIST,
1364 Self::ListBox => ffi::GTK_ACCESSIBLE_ROLE_LIST_BOX,
1365 Self::ListItem => ffi::GTK_ACCESSIBLE_ROLE_LIST_ITEM,
1366 Self::Log => ffi::GTK_ACCESSIBLE_ROLE_LOG,
1367 Self::Main => ffi::GTK_ACCESSIBLE_ROLE_MAIN,
1368 Self::Marquee => ffi::GTK_ACCESSIBLE_ROLE_MARQUEE,
1369 Self::Math => ffi::GTK_ACCESSIBLE_ROLE_MATH,
1370 Self::Meter => ffi::GTK_ACCESSIBLE_ROLE_METER,
1371 Self::Menu => ffi::GTK_ACCESSIBLE_ROLE_MENU,
1372 Self::MenuBar => ffi::GTK_ACCESSIBLE_ROLE_MENU_BAR,
1373 Self::MenuItem => ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM,
1374 Self::MenuItemCheckbox => ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX,
1375 Self::MenuItemRadio => ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO,
1376 Self::Navigation => ffi::GTK_ACCESSIBLE_ROLE_NAVIGATION,
1377 Self::None => ffi::GTK_ACCESSIBLE_ROLE_NONE,
1378 Self::Note => ffi::GTK_ACCESSIBLE_ROLE_NOTE,
1379 Self::Option => ffi::GTK_ACCESSIBLE_ROLE_OPTION,
1380 Self::Presentation => ffi::GTK_ACCESSIBLE_ROLE_PRESENTATION,
1381 Self::ProgressBar => ffi::GTK_ACCESSIBLE_ROLE_PROGRESS_BAR,
1382 Self::Radio => ffi::GTK_ACCESSIBLE_ROLE_RADIO,
1383 Self::RadioGroup => ffi::GTK_ACCESSIBLE_ROLE_RADIO_GROUP,
1384 Self::Range => ffi::GTK_ACCESSIBLE_ROLE_RANGE,
1385 Self::Region => ffi::GTK_ACCESSIBLE_ROLE_REGION,
1386 Self::Row => ffi::GTK_ACCESSIBLE_ROLE_ROW,
1387 Self::RowGroup => ffi::GTK_ACCESSIBLE_ROLE_ROW_GROUP,
1388 Self::RowHeader => ffi::GTK_ACCESSIBLE_ROLE_ROW_HEADER,
1389 Self::Scrollbar => ffi::GTK_ACCESSIBLE_ROLE_SCROLLBAR,
1390 Self::Search => ffi::GTK_ACCESSIBLE_ROLE_SEARCH,
1391 Self::SearchBox => ffi::GTK_ACCESSIBLE_ROLE_SEARCH_BOX,
1392 Self::Section => ffi::GTK_ACCESSIBLE_ROLE_SECTION,
1393 Self::SectionHead => ffi::GTK_ACCESSIBLE_ROLE_SECTION_HEAD,
1394 Self::Select => ffi::GTK_ACCESSIBLE_ROLE_SELECT,
1395 Self::Separator => ffi::GTK_ACCESSIBLE_ROLE_SEPARATOR,
1396 Self::Slider => ffi::GTK_ACCESSIBLE_ROLE_SLIDER,
1397 Self::SpinButton => ffi::GTK_ACCESSIBLE_ROLE_SPIN_BUTTON,
1398 Self::Status => ffi::GTK_ACCESSIBLE_ROLE_STATUS,
1399 Self::Structure => ffi::GTK_ACCESSIBLE_ROLE_STRUCTURE,
1400 Self::Switch => ffi::GTK_ACCESSIBLE_ROLE_SWITCH,
1401 Self::Tab => ffi::GTK_ACCESSIBLE_ROLE_TAB,
1402 Self::Table => ffi::GTK_ACCESSIBLE_ROLE_TABLE,
1403 Self::TabList => ffi::GTK_ACCESSIBLE_ROLE_TAB_LIST,
1404 Self::TabPanel => ffi::GTK_ACCESSIBLE_ROLE_TAB_PANEL,
1405 Self::TextBox => ffi::GTK_ACCESSIBLE_ROLE_TEXT_BOX,
1406 Self::Time => ffi::GTK_ACCESSIBLE_ROLE_TIME,
1407 Self::Timer => ffi::GTK_ACCESSIBLE_ROLE_TIMER,
1408 Self::Toolbar => ffi::GTK_ACCESSIBLE_ROLE_TOOLBAR,
1409 Self::Tooltip => ffi::GTK_ACCESSIBLE_ROLE_TOOLTIP,
1410 Self::Tree => ffi::GTK_ACCESSIBLE_ROLE_TREE,
1411 Self::TreeGrid => ffi::GTK_ACCESSIBLE_ROLE_TREE_GRID,
1412 Self::TreeItem => ffi::GTK_ACCESSIBLE_ROLE_TREE_ITEM,
1413 Self::Widget => ffi::GTK_ACCESSIBLE_ROLE_WIDGET,
1414 Self::Window => ffi::GTK_ACCESSIBLE_ROLE_WINDOW,
1415 #[cfg(feature = "v4_10")]
1416 Self::ToggleButton => ffi::GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON,
1417 #[cfg(feature = "v4_12")]
1418 Self::Application => ffi::GTK_ACCESSIBLE_ROLE_APPLICATION,
1419 #[cfg(feature = "v4_14")]
1420 Self::Paragraph => ffi::GTK_ACCESSIBLE_ROLE_PARAGRAPH,
1421 #[cfg(feature = "v4_14")]
1422 Self::BlockQuote => ffi::GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE,
1423 #[cfg(feature = "v4_14")]
1424 Self::Article => ffi::GTK_ACCESSIBLE_ROLE_ARTICLE,
1425 #[cfg(feature = "v4_14")]
1426 Self::Comment => ffi::GTK_ACCESSIBLE_ROLE_COMMENT,
1427 #[cfg(feature = "v4_14")]
1428 Self::Terminal => ffi::GTK_ACCESSIBLE_ROLE_TERMINAL,
1429 Self::__Unknown(value) => value,
1430 }
1431 }
1432}
1433
1434#[doc(hidden)]
1435impl FromGlib<ffi::GtkAccessibleRole> for AccessibleRole {
1436 unsafe fn from_glib(value: ffi::GtkAccessibleRole) -> Self {
1437 skip_assert_initialized!();
1438
1439 match value {
1440 ffi::GTK_ACCESSIBLE_ROLE_ALERT => Self::Alert,
1441 ffi::GTK_ACCESSIBLE_ROLE_ALERT_DIALOG => Self::AlertDialog,
1442 ffi::GTK_ACCESSIBLE_ROLE_BANNER => Self::Banner,
1443 ffi::GTK_ACCESSIBLE_ROLE_BUTTON => Self::Button,
1444 ffi::GTK_ACCESSIBLE_ROLE_CAPTION => Self::Caption,
1445 ffi::GTK_ACCESSIBLE_ROLE_CELL => Self::Cell,
1446 ffi::GTK_ACCESSIBLE_ROLE_CHECKBOX => Self::Checkbox,
1447 ffi::GTK_ACCESSIBLE_ROLE_COLUMN_HEADER => Self::ColumnHeader,
1448 ffi::GTK_ACCESSIBLE_ROLE_COMBO_BOX => Self::ComboBox,
1449 ffi::GTK_ACCESSIBLE_ROLE_COMMAND => Self::Command,
1450 ffi::GTK_ACCESSIBLE_ROLE_COMPOSITE => Self::Composite,
1451 ffi::GTK_ACCESSIBLE_ROLE_DIALOG => Self::Dialog,
1452 ffi::GTK_ACCESSIBLE_ROLE_DOCUMENT => Self::Document,
1453 ffi::GTK_ACCESSIBLE_ROLE_FEED => Self::Feed,
1454 ffi::GTK_ACCESSIBLE_ROLE_FORM => Self::Form,
1455 ffi::GTK_ACCESSIBLE_ROLE_GENERIC => Self::Generic,
1456 ffi::GTK_ACCESSIBLE_ROLE_GRID => Self::Grid,
1457 ffi::GTK_ACCESSIBLE_ROLE_GRID_CELL => Self::GridCell,
1458 ffi::GTK_ACCESSIBLE_ROLE_GROUP => Self::Group,
1459 ffi::GTK_ACCESSIBLE_ROLE_HEADING => Self::Heading,
1460 ffi::GTK_ACCESSIBLE_ROLE_IMG => Self::Img,
1461 ffi::GTK_ACCESSIBLE_ROLE_INPUT => Self::Input,
1462 ffi::GTK_ACCESSIBLE_ROLE_LABEL => Self::Label,
1463 ffi::GTK_ACCESSIBLE_ROLE_LANDMARK => Self::Landmark,
1464 ffi::GTK_ACCESSIBLE_ROLE_LEGEND => Self::Legend,
1465 ffi::GTK_ACCESSIBLE_ROLE_LINK => Self::Link,
1466 ffi::GTK_ACCESSIBLE_ROLE_LIST => Self::List,
1467 ffi::GTK_ACCESSIBLE_ROLE_LIST_BOX => Self::ListBox,
1468 ffi::GTK_ACCESSIBLE_ROLE_LIST_ITEM => Self::ListItem,
1469 ffi::GTK_ACCESSIBLE_ROLE_LOG => Self::Log,
1470 ffi::GTK_ACCESSIBLE_ROLE_MAIN => Self::Main,
1471 ffi::GTK_ACCESSIBLE_ROLE_MARQUEE => Self::Marquee,
1472 ffi::GTK_ACCESSIBLE_ROLE_MATH => Self::Math,
1473 ffi::GTK_ACCESSIBLE_ROLE_METER => Self::Meter,
1474 ffi::GTK_ACCESSIBLE_ROLE_MENU => Self::Menu,
1475 ffi::GTK_ACCESSIBLE_ROLE_MENU_BAR => Self::MenuBar,
1476 ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM => Self::MenuItem,
1477 ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX => Self::MenuItemCheckbox,
1478 ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO => Self::MenuItemRadio,
1479 ffi::GTK_ACCESSIBLE_ROLE_NAVIGATION => Self::Navigation,
1480 ffi::GTK_ACCESSIBLE_ROLE_NONE => Self::None,
1481 ffi::GTK_ACCESSIBLE_ROLE_NOTE => Self::Note,
1482 ffi::GTK_ACCESSIBLE_ROLE_OPTION => Self::Option,
1483 ffi::GTK_ACCESSIBLE_ROLE_PRESENTATION => Self::Presentation,
1484 ffi::GTK_ACCESSIBLE_ROLE_PROGRESS_BAR => Self::ProgressBar,
1485 ffi::GTK_ACCESSIBLE_ROLE_RADIO => Self::Radio,
1486 ffi::GTK_ACCESSIBLE_ROLE_RADIO_GROUP => Self::RadioGroup,
1487 ffi::GTK_ACCESSIBLE_ROLE_RANGE => Self::Range,
1488 ffi::GTK_ACCESSIBLE_ROLE_REGION => Self::Region,
1489 ffi::GTK_ACCESSIBLE_ROLE_ROW => Self::Row,
1490 ffi::GTK_ACCESSIBLE_ROLE_ROW_GROUP => Self::RowGroup,
1491 ffi::GTK_ACCESSIBLE_ROLE_ROW_HEADER => Self::RowHeader,
1492 ffi::GTK_ACCESSIBLE_ROLE_SCROLLBAR => Self::Scrollbar,
1493 ffi::GTK_ACCESSIBLE_ROLE_SEARCH => Self::Search,
1494 ffi::GTK_ACCESSIBLE_ROLE_SEARCH_BOX => Self::SearchBox,
1495 ffi::GTK_ACCESSIBLE_ROLE_SECTION => Self::Section,
1496 ffi::GTK_ACCESSIBLE_ROLE_SECTION_HEAD => Self::SectionHead,
1497 ffi::GTK_ACCESSIBLE_ROLE_SELECT => Self::Select,
1498 ffi::GTK_ACCESSIBLE_ROLE_SEPARATOR => Self::Separator,
1499 ffi::GTK_ACCESSIBLE_ROLE_SLIDER => Self::Slider,
1500 ffi::GTK_ACCESSIBLE_ROLE_SPIN_BUTTON => Self::SpinButton,
1501 ffi::GTK_ACCESSIBLE_ROLE_STATUS => Self::Status,
1502 ffi::GTK_ACCESSIBLE_ROLE_STRUCTURE => Self::Structure,
1503 ffi::GTK_ACCESSIBLE_ROLE_SWITCH => Self::Switch,
1504 ffi::GTK_ACCESSIBLE_ROLE_TAB => Self::Tab,
1505 ffi::GTK_ACCESSIBLE_ROLE_TABLE => Self::Table,
1506 ffi::GTK_ACCESSIBLE_ROLE_TAB_LIST => Self::TabList,
1507 ffi::GTK_ACCESSIBLE_ROLE_TAB_PANEL => Self::TabPanel,
1508 ffi::GTK_ACCESSIBLE_ROLE_TEXT_BOX => Self::TextBox,
1509 ffi::GTK_ACCESSIBLE_ROLE_TIME => Self::Time,
1510 ffi::GTK_ACCESSIBLE_ROLE_TIMER => Self::Timer,
1511 ffi::GTK_ACCESSIBLE_ROLE_TOOLBAR => Self::Toolbar,
1512 ffi::GTK_ACCESSIBLE_ROLE_TOOLTIP => Self::Tooltip,
1513 ffi::GTK_ACCESSIBLE_ROLE_TREE => Self::Tree,
1514 ffi::GTK_ACCESSIBLE_ROLE_TREE_GRID => Self::TreeGrid,
1515 ffi::GTK_ACCESSIBLE_ROLE_TREE_ITEM => Self::TreeItem,
1516 ffi::GTK_ACCESSIBLE_ROLE_WIDGET => Self::Widget,
1517 ffi::GTK_ACCESSIBLE_ROLE_WINDOW => Self::Window,
1518 #[cfg(feature = "v4_10")]
1519 ffi::GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON => Self::ToggleButton,
1520 #[cfg(feature = "v4_12")]
1521 ffi::GTK_ACCESSIBLE_ROLE_APPLICATION => Self::Application,
1522 #[cfg(feature = "v4_14")]
1523 ffi::GTK_ACCESSIBLE_ROLE_PARAGRAPH => Self::Paragraph,
1524 #[cfg(feature = "v4_14")]
1525 ffi::GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE => Self::BlockQuote,
1526 #[cfg(feature = "v4_14")]
1527 ffi::GTK_ACCESSIBLE_ROLE_ARTICLE => Self::Article,
1528 #[cfg(feature = "v4_14")]
1529 ffi::GTK_ACCESSIBLE_ROLE_COMMENT => Self::Comment,
1530 #[cfg(feature = "v4_14")]
1531 ffi::GTK_ACCESSIBLE_ROLE_TERMINAL => Self::Terminal,
1532 value => Self::__Unknown(value),
1533 }
1534 }
1535}
1536
1537impl StaticType for AccessibleRole {
1538 #[inline]
1539 #[doc(alias = "gtk_accessible_role_get_type")]
1540 fn static_type() -> glib::Type {
1541 unsafe { from_glib(ffi::gtk_accessible_role_get_type()) }
1542 }
1543}
1544
1545impl glib::HasParamSpec for AccessibleRole {
1546 type ParamSpec = glib::ParamSpecEnum;
1547 type SetValue = Self;
1548 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1549
1550 fn param_spec_builder() -> Self::BuilderFn {
1551 Self::ParamSpec::builder_with_default
1552 }
1553}
1554
1555impl glib::value::ValueType for AccessibleRole {
1556 type Type = Self;
1557}
1558
1559unsafe impl<'a> glib::value::FromValue<'a> for AccessibleRole {
1560 type Checker = glib::value::GenericValueTypeChecker<Self>;
1561
1562 #[inline]
1563 unsafe fn from_value(value: &'a glib::Value) -> Self {
1564 skip_assert_initialized!();
1565 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
1566 }
1567}
1568
1569impl ToValue for AccessibleRole {
1570 #[inline]
1571 fn to_value(&self) -> glib::Value {
1572 let mut value = glib::Value::for_value_type::<Self>();
1573 unsafe {
1574 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1575 }
1576 value
1577 }
1578
1579 #[inline]
1580 fn value_type(&self) -> glib::Type {
1581 Self::static_type()
1582 }
1583}
1584
1585impl From<AccessibleRole> for glib::Value {
1586 #[inline]
1587 fn from(v: AccessibleRole) -> Self {
1588 skip_assert_initialized!();
1589 ToValue::to_value(&v)
1590 }
1591}
1592
1593#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1596#[non_exhaustive]
1597#[doc(alias = "GtkAccessibleSort")]
1598pub enum AccessibleSort {
1599 #[doc(alias = "GTK_ACCESSIBLE_SORT_NONE")]
1601 None,
1602 #[doc(alias = "GTK_ACCESSIBLE_SORT_ASCENDING")]
1604 Ascending,
1605 #[doc(alias = "GTK_ACCESSIBLE_SORT_DESCENDING")]
1607 Descending,
1608 #[doc(alias = "GTK_ACCESSIBLE_SORT_OTHER")]
1611 Other,
1612 #[doc(hidden)]
1613 __Unknown(i32),
1614}
1615
1616#[doc(hidden)]
1617impl IntoGlib for AccessibleSort {
1618 type GlibType = ffi::GtkAccessibleSort;
1619
1620 #[inline]
1621 fn into_glib(self) -> ffi::GtkAccessibleSort {
1622 match self {
1623 Self::None => ffi::GTK_ACCESSIBLE_SORT_NONE,
1624 Self::Ascending => ffi::GTK_ACCESSIBLE_SORT_ASCENDING,
1625 Self::Descending => ffi::GTK_ACCESSIBLE_SORT_DESCENDING,
1626 Self::Other => ffi::GTK_ACCESSIBLE_SORT_OTHER,
1627 Self::__Unknown(value) => value,
1628 }
1629 }
1630}
1631
1632#[doc(hidden)]
1633impl FromGlib<ffi::GtkAccessibleSort> for AccessibleSort {
1634 #[inline]
1635 unsafe fn from_glib(value: ffi::GtkAccessibleSort) -> Self {
1636 skip_assert_initialized!();
1637
1638 match value {
1639 ffi::GTK_ACCESSIBLE_SORT_NONE => Self::None,
1640 ffi::GTK_ACCESSIBLE_SORT_ASCENDING => Self::Ascending,
1641 ffi::GTK_ACCESSIBLE_SORT_DESCENDING => Self::Descending,
1642 ffi::GTK_ACCESSIBLE_SORT_OTHER => Self::Other,
1643 value => Self::__Unknown(value),
1644 }
1645 }
1646}
1647
1648impl StaticType for AccessibleSort {
1649 #[inline]
1650 #[doc(alias = "gtk_accessible_sort_get_type")]
1651 fn static_type() -> glib::Type {
1652 unsafe { from_glib(ffi::gtk_accessible_sort_get_type()) }
1653 }
1654}
1655
1656impl glib::HasParamSpec for AccessibleSort {
1657 type ParamSpec = glib::ParamSpecEnum;
1658 type SetValue = Self;
1659 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1660
1661 fn param_spec_builder() -> Self::BuilderFn {
1662 Self::ParamSpec::builder_with_default
1663 }
1664}
1665
1666impl glib::value::ValueType for AccessibleSort {
1667 type Type = Self;
1668}
1669
1670unsafe impl<'a> glib::value::FromValue<'a> for AccessibleSort {
1671 type Checker = glib::value::GenericValueTypeChecker<Self>;
1672
1673 #[inline]
1674 unsafe fn from_value(value: &'a glib::Value) -> Self {
1675 skip_assert_initialized!();
1676 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
1677 }
1678}
1679
1680impl ToValue for AccessibleSort {
1681 #[inline]
1682 fn to_value(&self) -> glib::Value {
1683 let mut value = glib::Value::for_value_type::<Self>();
1684 unsafe {
1685 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1686 }
1687 value
1688 }
1689
1690 #[inline]
1691 fn value_type(&self) -> glib::Type {
1692 Self::static_type()
1693 }
1694}
1695
1696impl From<AccessibleSort> for glib::Value {
1697 #[inline]
1698 fn from(v: AccessibleSort) -> Self {
1699 skip_assert_initialized!();
1700 ToValue::to_value(&v)
1701 }
1702}
1703
1704#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1706#[non_exhaustive]
1707#[doc(alias = "GtkAccessibleState")]
1708pub enum AccessibleState {
1709 #[doc(alias = "GTK_ACCESSIBLE_STATE_BUSY")]
1711 Busy,
1712 #[doc(alias = "GTK_ACCESSIBLE_STATE_CHECKED")]
1715 Checked,
1716 #[doc(alias = "GTK_ACCESSIBLE_STATE_DISABLED")]
1720 Disabled,
1721 #[doc(alias = "GTK_ACCESSIBLE_STATE_EXPANDED")]
1725 Expanded,
1726 #[doc(alias = "GTK_ACCESSIBLE_STATE_HIDDEN")]
1732 Hidden,
1733 #[doc(alias = "GTK_ACCESSIBLE_STATE_INVALID")]
1736 Invalid,
1737 #[doc(alias = "GTK_ACCESSIBLE_STATE_PRESSED")]
1741 Pressed,
1742 #[doc(alias = "GTK_ACCESSIBLE_STATE_SELECTED")]
1745 Selected,
1746 #[cfg(feature = "v4_12")]
1749 #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
1750 #[doc(alias = "GTK_ACCESSIBLE_STATE_VISITED")]
1751 Visited,
1752 #[doc(hidden)]
1753 __Unknown(i32),
1754}
1755
1756impl AccessibleState {
1757 #[doc(alias = "gtk_accessible_state_init_value")]
1758 pub fn init_value(self, value: &mut glib::Value) {
1759 assert_initialized_main_thread!();
1760 unsafe {
1761 ffi::gtk_accessible_state_init_value(self.into_glib(), value.to_glib_none_mut().0);
1762 }
1763 }
1764}
1765
1766#[doc(hidden)]
1767impl IntoGlib for AccessibleState {
1768 type GlibType = ffi::GtkAccessibleState;
1769
1770 #[inline]
1771 fn into_glib(self) -> ffi::GtkAccessibleState {
1772 match self {
1773 Self::Busy => ffi::GTK_ACCESSIBLE_STATE_BUSY,
1774 Self::Checked => ffi::GTK_ACCESSIBLE_STATE_CHECKED,
1775 Self::Disabled => ffi::GTK_ACCESSIBLE_STATE_DISABLED,
1776 Self::Expanded => ffi::GTK_ACCESSIBLE_STATE_EXPANDED,
1777 Self::Hidden => ffi::GTK_ACCESSIBLE_STATE_HIDDEN,
1778 Self::Invalid => ffi::GTK_ACCESSIBLE_STATE_INVALID,
1779 Self::Pressed => ffi::GTK_ACCESSIBLE_STATE_PRESSED,
1780 Self::Selected => ffi::GTK_ACCESSIBLE_STATE_SELECTED,
1781 #[cfg(feature = "v4_12")]
1782 Self::Visited => ffi::GTK_ACCESSIBLE_STATE_VISITED,
1783 Self::__Unknown(value) => value,
1784 }
1785 }
1786}
1787
1788#[doc(hidden)]
1789impl FromGlib<ffi::GtkAccessibleState> for AccessibleState {
1790 #[inline]
1791 unsafe fn from_glib(value: ffi::GtkAccessibleState) -> Self {
1792 skip_assert_initialized!();
1793
1794 match value {
1795 ffi::GTK_ACCESSIBLE_STATE_BUSY => Self::Busy,
1796 ffi::GTK_ACCESSIBLE_STATE_CHECKED => Self::Checked,
1797 ffi::GTK_ACCESSIBLE_STATE_DISABLED => Self::Disabled,
1798 ffi::GTK_ACCESSIBLE_STATE_EXPANDED => Self::Expanded,
1799 ffi::GTK_ACCESSIBLE_STATE_HIDDEN => Self::Hidden,
1800 ffi::GTK_ACCESSIBLE_STATE_INVALID => Self::Invalid,
1801 ffi::GTK_ACCESSIBLE_STATE_PRESSED => Self::Pressed,
1802 ffi::GTK_ACCESSIBLE_STATE_SELECTED => Self::Selected,
1803 #[cfg(feature = "v4_12")]
1804 ffi::GTK_ACCESSIBLE_STATE_VISITED => Self::Visited,
1805 value => Self::__Unknown(value),
1806 }
1807 }
1808}
1809
1810impl StaticType for AccessibleState {
1811 #[inline]
1812 #[doc(alias = "gtk_accessible_state_get_type")]
1813 fn static_type() -> glib::Type {
1814 unsafe { from_glib(ffi::gtk_accessible_state_get_type()) }
1815 }
1816}
1817
1818impl glib::HasParamSpec for AccessibleState {
1819 type ParamSpec = glib::ParamSpecEnum;
1820 type SetValue = Self;
1821 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1822
1823 fn param_spec_builder() -> Self::BuilderFn {
1824 Self::ParamSpec::builder_with_default
1825 }
1826}
1827
1828impl glib::value::ValueType for AccessibleState {
1829 type Type = Self;
1830}
1831
1832unsafe impl<'a> glib::value::FromValue<'a> for AccessibleState {
1833 type Checker = glib::value::GenericValueTypeChecker<Self>;
1834
1835 #[inline]
1836 unsafe fn from_value(value: &'a glib::Value) -> Self {
1837 skip_assert_initialized!();
1838 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
1839 }
1840}
1841
1842impl ToValue for AccessibleState {
1843 #[inline]
1844 fn to_value(&self) -> glib::Value {
1845 let mut value = glib::Value::for_value_type::<Self>();
1846 unsafe {
1847 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1848 }
1849 value
1850 }
1851
1852 #[inline]
1853 fn value_type(&self) -> glib::Type {
1854 Self::static_type()
1855 }
1856}
1857
1858impl From<AccessibleState> for glib::Value {
1859 #[inline]
1860 fn from(v: AccessibleState) -> Self {
1861 skip_assert_initialized!();
1862 ToValue::to_value(&v)
1863 }
1864}
1865
1866#[cfg(feature = "v4_14")]
1868#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1869#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1870#[non_exhaustive]
1871#[doc(alias = "GtkAccessibleTextContentChange")]
1872pub enum AccessibleTextContentChange {
1873 #[doc(alias = "GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT")]
1876 Insert,
1877 #[doc(alias = "GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE")]
1880 Remove,
1881 #[doc(hidden)]
1882 __Unknown(i32),
1883}
1884
1885#[cfg(feature = "v4_14")]
1886#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1887#[doc(hidden)]
1888impl IntoGlib for AccessibleTextContentChange {
1889 type GlibType = ffi::GtkAccessibleTextContentChange;
1890
1891 #[inline]
1892 fn into_glib(self) -> ffi::GtkAccessibleTextContentChange {
1893 match self {
1894 Self::Insert => ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT,
1895 Self::Remove => ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE,
1896 Self::__Unknown(value) => value,
1897 }
1898 }
1899}
1900
1901#[cfg(feature = "v4_14")]
1902#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1903#[doc(hidden)]
1904impl FromGlib<ffi::GtkAccessibleTextContentChange> for AccessibleTextContentChange {
1905 #[inline]
1906 unsafe fn from_glib(value: ffi::GtkAccessibleTextContentChange) -> Self {
1907 skip_assert_initialized!();
1908
1909 match value {
1910 ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT => Self::Insert,
1911 ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE => Self::Remove,
1912 value => Self::__Unknown(value),
1913 }
1914 }
1915}
1916
1917#[cfg(feature = "v4_14")]
1918#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1919impl StaticType for AccessibleTextContentChange {
1920 #[inline]
1921 #[doc(alias = "gtk_accessible_text_content_change_get_type")]
1922 fn static_type() -> glib::Type {
1923 unsafe { from_glib(ffi::gtk_accessible_text_content_change_get_type()) }
1924 }
1925}
1926
1927#[cfg(feature = "v4_14")]
1928#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1929impl glib::HasParamSpec for AccessibleTextContentChange {
1930 type ParamSpec = glib::ParamSpecEnum;
1931 type SetValue = Self;
1932 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1933
1934 fn param_spec_builder() -> Self::BuilderFn {
1935 Self::ParamSpec::builder_with_default
1936 }
1937}
1938
1939#[cfg(feature = "v4_14")]
1940#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1941impl glib::value::ValueType for AccessibleTextContentChange {
1942 type Type = Self;
1943}
1944
1945#[cfg(feature = "v4_14")]
1946#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1947unsafe impl<'a> glib::value::FromValue<'a> for AccessibleTextContentChange {
1948 type Checker = glib::value::GenericValueTypeChecker<Self>;
1949
1950 #[inline]
1951 unsafe fn from_value(value: &'a glib::Value) -> Self {
1952 skip_assert_initialized!();
1953 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
1954 }
1955}
1956
1957#[cfg(feature = "v4_14")]
1958#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1959impl ToValue for AccessibleTextContentChange {
1960 #[inline]
1961 fn to_value(&self) -> glib::Value {
1962 let mut value = glib::Value::for_value_type::<Self>();
1963 unsafe {
1964 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1965 }
1966 value
1967 }
1968
1969 #[inline]
1970 fn value_type(&self) -> glib::Type {
1971 Self::static_type()
1972 }
1973}
1974
1975#[cfg(feature = "v4_14")]
1976#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1977impl From<AccessibleTextContentChange> for glib::Value {
1978 #[inline]
1979 fn from(v: AccessibleTextContentChange) -> Self {
1980 skip_assert_initialized!();
1981 ToValue::to_value(&v)
1982 }
1983}
1984
1985#[cfg(feature = "v4_14")]
1988#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1989#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1990#[non_exhaustive]
1991#[doc(alias = "GtkAccessibleTextGranularity")]
1992pub enum AccessibleTextGranularity {
1993 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER")]
1996 Character,
1997 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD")]
2001 Word,
2002 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE")]
2006 Sentence,
2007 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE")]
2011 Line,
2012 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH")]
2016 Paragraph,
2017 #[doc(hidden)]
2018 __Unknown(i32),
2019}
2020
2021#[cfg(feature = "v4_14")]
2022#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2023#[doc(hidden)]
2024impl IntoGlib for AccessibleTextGranularity {
2025 type GlibType = ffi::GtkAccessibleTextGranularity;
2026
2027 #[inline]
2028 fn into_glib(self) -> ffi::GtkAccessibleTextGranularity {
2029 match self {
2030 Self::Character => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER,
2031 Self::Word => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD,
2032 Self::Sentence => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE,
2033 Self::Line => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE,
2034 Self::Paragraph => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH,
2035 Self::__Unknown(value) => value,
2036 }
2037 }
2038}
2039
2040#[cfg(feature = "v4_14")]
2041#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2042#[doc(hidden)]
2043impl FromGlib<ffi::GtkAccessibleTextGranularity> for AccessibleTextGranularity {
2044 #[inline]
2045 unsafe fn from_glib(value: ffi::GtkAccessibleTextGranularity) -> Self {
2046 skip_assert_initialized!();
2047
2048 match value {
2049 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER => Self::Character,
2050 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD => Self::Word,
2051 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE => Self::Sentence,
2052 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE => Self::Line,
2053 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH => Self::Paragraph,
2054 value => Self::__Unknown(value),
2055 }
2056 }
2057}
2058
2059#[cfg(feature = "v4_14")]
2060#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2061impl StaticType for AccessibleTextGranularity {
2062 #[inline]
2063 #[doc(alias = "gtk_accessible_text_granularity_get_type")]
2064 fn static_type() -> glib::Type {
2065 unsafe { from_glib(ffi::gtk_accessible_text_granularity_get_type()) }
2066 }
2067}
2068
2069#[cfg(feature = "v4_14")]
2070#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2071impl glib::HasParamSpec for AccessibleTextGranularity {
2072 type ParamSpec = glib::ParamSpecEnum;
2073 type SetValue = Self;
2074 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2075
2076 fn param_spec_builder() -> Self::BuilderFn {
2077 Self::ParamSpec::builder_with_default
2078 }
2079}
2080
2081#[cfg(feature = "v4_14")]
2082#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2083impl glib::value::ValueType for AccessibleTextGranularity {
2084 type Type = Self;
2085}
2086
2087#[cfg(feature = "v4_14")]
2088#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2089unsafe impl<'a> glib::value::FromValue<'a> for AccessibleTextGranularity {
2090 type Checker = glib::value::GenericValueTypeChecker<Self>;
2091
2092 #[inline]
2093 unsafe fn from_value(value: &'a glib::Value) -> Self {
2094 skip_assert_initialized!();
2095 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
2096 }
2097}
2098
2099#[cfg(feature = "v4_14")]
2100#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2101impl ToValue for AccessibleTextGranularity {
2102 #[inline]
2103 fn to_value(&self) -> glib::Value {
2104 let mut value = glib::Value::for_value_type::<Self>();
2105 unsafe {
2106 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2107 }
2108 value
2109 }
2110
2111 #[inline]
2112 fn value_type(&self) -> glib::Type {
2113 Self::static_type()
2114 }
2115}
2116
2117#[cfg(feature = "v4_14")]
2118#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2119impl From<AccessibleTextGranularity> for glib::Value {
2120 #[inline]
2121 fn from(v: AccessibleTextGranularity) -> Self {
2122 skip_assert_initialized!();
2123 ToValue::to_value(&v)
2124 }
2125}
2126
2127#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2134#[non_exhaustive]
2135#[doc(alias = "GtkAccessibleTristate")]
2136pub enum AccessibleTristate {
2137 #[doc(alias = "GTK_ACCESSIBLE_TRISTATE_FALSE")]
2139 False,
2140 #[doc(alias = "GTK_ACCESSIBLE_TRISTATE_TRUE")]
2142 True,
2143 #[doc(alias = "GTK_ACCESSIBLE_TRISTATE_MIXED")]
2145 Mixed,
2146 #[doc(hidden)]
2147 __Unknown(i32),
2148}
2149
2150#[doc(hidden)]
2151impl IntoGlib for AccessibleTristate {
2152 type GlibType = ffi::GtkAccessibleTristate;
2153
2154 #[inline]
2155 fn into_glib(self) -> ffi::GtkAccessibleTristate {
2156 match self {
2157 Self::False => ffi::GTK_ACCESSIBLE_TRISTATE_FALSE,
2158 Self::True => ffi::GTK_ACCESSIBLE_TRISTATE_TRUE,
2159 Self::Mixed => ffi::GTK_ACCESSIBLE_TRISTATE_MIXED,
2160 Self::__Unknown(value) => value,
2161 }
2162 }
2163}
2164
2165#[doc(hidden)]
2166impl FromGlib<ffi::GtkAccessibleTristate> for AccessibleTristate {
2167 #[inline]
2168 unsafe fn from_glib(value: ffi::GtkAccessibleTristate) -> Self {
2169 skip_assert_initialized!();
2170
2171 match value {
2172 ffi::GTK_ACCESSIBLE_TRISTATE_FALSE => Self::False,
2173 ffi::GTK_ACCESSIBLE_TRISTATE_TRUE => Self::True,
2174 ffi::GTK_ACCESSIBLE_TRISTATE_MIXED => Self::Mixed,
2175 value => Self::__Unknown(value),
2176 }
2177 }
2178}
2179
2180impl StaticType for AccessibleTristate {
2181 #[inline]
2182 #[doc(alias = "gtk_accessible_tristate_get_type")]
2183 fn static_type() -> glib::Type {
2184 unsafe { from_glib(ffi::gtk_accessible_tristate_get_type()) }
2185 }
2186}
2187
2188impl glib::HasParamSpec for AccessibleTristate {
2189 type ParamSpec = glib::ParamSpecEnum;
2190 type SetValue = Self;
2191 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2192
2193 fn param_spec_builder() -> Self::BuilderFn {
2194 Self::ParamSpec::builder_with_default
2195 }
2196}
2197
2198impl glib::value::ValueType for AccessibleTristate {
2199 type Type = Self;
2200}
2201
2202unsafe impl<'a> glib::value::FromValue<'a> for AccessibleTristate {
2203 type Checker = glib::value::GenericValueTypeChecker<Self>;
2204
2205 #[inline]
2206 unsafe fn from_value(value: &'a glib::Value) -> Self {
2207 skip_assert_initialized!();
2208 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
2209 }
2210}
2211
2212impl ToValue for AccessibleTristate {
2213 #[inline]
2214 fn to_value(&self) -> glib::Value {
2215 let mut value = glib::Value::for_value_type::<Self>();
2216 unsafe {
2217 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2218 }
2219 value
2220 }
2221
2222 #[inline]
2223 fn value_type(&self) -> glib::Type {
2224 Self::static_type()
2225 }
2226}
2227
2228impl From<AccessibleTristate> for glib::Value {
2229 #[inline]
2230 fn from(v: AccessibleTristate) -> Self {
2231 skip_assert_initialized!();
2232 ToValue::to_value(&v)
2233 }
2234}
2235
2236#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2238#[non_exhaustive]
2239#[doc(alias = "GtkArrowType")]
2240pub enum ArrowType {
2241 #[doc(alias = "GTK_ARROW_UP")]
2243 Up,
2244 #[doc(alias = "GTK_ARROW_DOWN")]
2246 Down,
2247 #[doc(alias = "GTK_ARROW_LEFT")]
2249 Left,
2250 #[doc(alias = "GTK_ARROW_RIGHT")]
2252 Right,
2253 #[doc(alias = "GTK_ARROW_NONE")]
2255 None,
2256 #[doc(hidden)]
2257 __Unknown(i32),
2258}
2259
2260#[doc(hidden)]
2261impl IntoGlib for ArrowType {
2262 type GlibType = ffi::GtkArrowType;
2263
2264 #[inline]
2265 fn into_glib(self) -> ffi::GtkArrowType {
2266 match self {
2267 Self::Up => ffi::GTK_ARROW_UP,
2268 Self::Down => ffi::GTK_ARROW_DOWN,
2269 Self::Left => ffi::GTK_ARROW_LEFT,
2270 Self::Right => ffi::GTK_ARROW_RIGHT,
2271 Self::None => ffi::GTK_ARROW_NONE,
2272 Self::__Unknown(value) => value,
2273 }
2274 }
2275}
2276
2277#[doc(hidden)]
2278impl FromGlib<ffi::GtkArrowType> for ArrowType {
2279 #[inline]
2280 unsafe fn from_glib(value: ffi::GtkArrowType) -> Self {
2281 skip_assert_initialized!();
2282
2283 match value {
2284 ffi::GTK_ARROW_UP => Self::Up,
2285 ffi::GTK_ARROW_DOWN => Self::Down,
2286 ffi::GTK_ARROW_LEFT => Self::Left,
2287 ffi::GTK_ARROW_RIGHT => Self::Right,
2288 ffi::GTK_ARROW_NONE => Self::None,
2289 value => Self::__Unknown(value),
2290 }
2291 }
2292}
2293
2294impl StaticType for ArrowType {
2295 #[inline]
2296 #[doc(alias = "gtk_arrow_type_get_type")]
2297 fn static_type() -> glib::Type {
2298 unsafe { from_glib(ffi::gtk_arrow_type_get_type()) }
2299 }
2300}
2301
2302impl glib::HasParamSpec for ArrowType {
2303 type ParamSpec = glib::ParamSpecEnum;
2304 type SetValue = Self;
2305 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2306
2307 fn param_spec_builder() -> Self::BuilderFn {
2308 Self::ParamSpec::builder_with_default
2309 }
2310}
2311
2312impl glib::value::ValueType for ArrowType {
2313 type Type = Self;
2314}
2315
2316unsafe impl<'a> glib::value::FromValue<'a> for ArrowType {
2317 type Checker = glib::value::GenericValueTypeChecker<Self>;
2318
2319 #[inline]
2320 unsafe fn from_value(value: &'a glib::Value) -> Self {
2321 skip_assert_initialized!();
2322 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
2323 }
2324}
2325
2326impl ToValue for ArrowType {
2327 #[inline]
2328 fn to_value(&self) -> glib::Value {
2329 let mut value = glib::Value::for_value_type::<Self>();
2330 unsafe {
2331 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2332 }
2333 value
2334 }
2335
2336 #[inline]
2337 fn value_type(&self) -> glib::Type {
2338 Self::static_type()
2339 }
2340}
2341
2342impl From<ArrowType> for glib::Value {
2343 #[inline]
2344 fn from(v: ArrowType) -> Self {
2345 skip_assert_initialized!();
2346 ToValue::to_value(&v)
2347 }
2348}
2349
2350#[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
2365#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2366#[non_exhaustive]
2367#[doc(alias = "GtkAssistantPageType")]
2368pub enum AssistantPageType {
2369 #[doc(alias = "GTK_ASSISTANT_PAGE_CONTENT")]
2372 Content,
2373 #[doc(alias = "GTK_ASSISTANT_PAGE_INTRO")]
2377 Intro,
2378 #[doc(alias = "GTK_ASSISTANT_PAGE_CONFIRM")]
2381 Confirm,
2382 #[doc(alias = "GTK_ASSISTANT_PAGE_SUMMARY")]
2385 Summary,
2386 #[doc(alias = "GTK_ASSISTANT_PAGE_PROGRESS")]
2390 Progress,
2391 #[doc(alias = "GTK_ASSISTANT_PAGE_CUSTOM")]
2395 Custom,
2396 #[doc(hidden)]
2397 __Unknown(i32),
2398}
2399
2400#[allow(deprecated)]
2401#[doc(hidden)]
2402impl IntoGlib for AssistantPageType {
2403 type GlibType = ffi::GtkAssistantPageType;
2404
2405 #[inline]
2406 fn into_glib(self) -> ffi::GtkAssistantPageType {
2407 match self {
2408 Self::Content => ffi::GTK_ASSISTANT_PAGE_CONTENT,
2409 Self::Intro => ffi::GTK_ASSISTANT_PAGE_INTRO,
2410 Self::Confirm => ffi::GTK_ASSISTANT_PAGE_CONFIRM,
2411 Self::Summary => ffi::GTK_ASSISTANT_PAGE_SUMMARY,
2412 Self::Progress => ffi::GTK_ASSISTANT_PAGE_PROGRESS,
2413 Self::Custom => ffi::GTK_ASSISTANT_PAGE_CUSTOM,
2414 Self::__Unknown(value) => value,
2415 }
2416 }
2417}
2418
2419#[allow(deprecated)]
2420#[doc(hidden)]
2421impl FromGlib<ffi::GtkAssistantPageType> for AssistantPageType {
2422 #[inline]
2423 unsafe fn from_glib(value: ffi::GtkAssistantPageType) -> Self {
2424 skip_assert_initialized!();
2425
2426 match value {
2427 ffi::GTK_ASSISTANT_PAGE_CONTENT => Self::Content,
2428 ffi::GTK_ASSISTANT_PAGE_INTRO => Self::Intro,
2429 ffi::GTK_ASSISTANT_PAGE_CONFIRM => Self::Confirm,
2430 ffi::GTK_ASSISTANT_PAGE_SUMMARY => Self::Summary,
2431 ffi::GTK_ASSISTANT_PAGE_PROGRESS => Self::Progress,
2432 ffi::GTK_ASSISTANT_PAGE_CUSTOM => Self::Custom,
2433 value => Self::__Unknown(value),
2434 }
2435 }
2436}
2437
2438#[allow(deprecated)]
2439impl StaticType for AssistantPageType {
2440 #[inline]
2441 #[doc(alias = "gtk_assistant_page_type_get_type")]
2442 fn static_type() -> glib::Type {
2443 unsafe { from_glib(ffi::gtk_assistant_page_type_get_type()) }
2444 }
2445}
2446
2447#[allow(deprecated)]
2448impl glib::HasParamSpec for AssistantPageType {
2449 type ParamSpec = glib::ParamSpecEnum;
2450 type SetValue = Self;
2451 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2452
2453 fn param_spec_builder() -> Self::BuilderFn {
2454 Self::ParamSpec::builder_with_default
2455 }
2456}
2457
2458#[allow(deprecated)]
2459impl glib::value::ValueType for AssistantPageType {
2460 type Type = Self;
2461}
2462
2463#[allow(deprecated)]
2464unsafe impl<'a> glib::value::FromValue<'a> for AssistantPageType {
2465 type Checker = glib::value::GenericValueTypeChecker<Self>;
2466
2467 #[inline]
2468 unsafe fn from_value(value: &'a glib::Value) -> Self {
2469 skip_assert_initialized!();
2470 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
2471 }
2472}
2473
2474#[allow(deprecated)]
2475impl ToValue for AssistantPageType {
2476 #[inline]
2477 fn to_value(&self) -> glib::Value {
2478 let mut value = glib::Value::for_value_type::<Self>();
2479 unsafe {
2480 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2481 }
2482 value
2483 }
2484
2485 #[inline]
2486 fn value_type(&self) -> glib::Type {
2487 Self::static_type()
2488 }
2489}
2490
2491#[allow(deprecated)]
2492impl From<AssistantPageType> for glib::Value {
2493 #[inline]
2494 fn from(v: AssistantPageType) -> Self {
2495 skip_assert_initialized!();
2496 ToValue::to_value(&v)
2497 }
2498}
2499
2500#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2509#[non_exhaustive]
2510#[doc(alias = "GtkBaselinePosition")]
2511pub enum BaselinePosition {
2512 #[doc(alias = "GTK_BASELINE_POSITION_TOP")]
2514 Top,
2515 #[doc(alias = "GTK_BASELINE_POSITION_CENTER")]
2517 Center,
2518 #[doc(alias = "GTK_BASELINE_POSITION_BOTTOM")]
2520 Bottom,
2521 #[doc(hidden)]
2522 __Unknown(i32),
2523}
2524
2525#[doc(hidden)]
2526impl IntoGlib for BaselinePosition {
2527 type GlibType = ffi::GtkBaselinePosition;
2528
2529 #[inline]
2530 fn into_glib(self) -> ffi::GtkBaselinePosition {
2531 match self {
2532 Self::Top => ffi::GTK_BASELINE_POSITION_TOP,
2533 Self::Center => ffi::GTK_BASELINE_POSITION_CENTER,
2534 Self::Bottom => ffi::GTK_BASELINE_POSITION_BOTTOM,
2535 Self::__Unknown(value) => value,
2536 }
2537 }
2538}
2539
2540#[doc(hidden)]
2541impl FromGlib<ffi::GtkBaselinePosition> for BaselinePosition {
2542 #[inline]
2543 unsafe fn from_glib(value: ffi::GtkBaselinePosition) -> Self {
2544 skip_assert_initialized!();
2545
2546 match value {
2547 ffi::GTK_BASELINE_POSITION_TOP => Self::Top,
2548 ffi::GTK_BASELINE_POSITION_CENTER => Self::Center,
2549 ffi::GTK_BASELINE_POSITION_BOTTOM => Self::Bottom,
2550 value => Self::__Unknown(value),
2551 }
2552 }
2553}
2554
2555impl StaticType for BaselinePosition {
2556 #[inline]
2557 #[doc(alias = "gtk_baseline_position_get_type")]
2558 fn static_type() -> glib::Type {
2559 unsafe { from_glib(ffi::gtk_baseline_position_get_type()) }
2560 }
2561}
2562
2563impl glib::HasParamSpec for BaselinePosition {
2564 type ParamSpec = glib::ParamSpecEnum;
2565 type SetValue = Self;
2566 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2567
2568 fn param_spec_builder() -> Self::BuilderFn {
2569 Self::ParamSpec::builder_with_default
2570 }
2571}
2572
2573impl glib::value::ValueType for BaselinePosition {
2574 type Type = Self;
2575}
2576
2577unsafe impl<'a> glib::value::FromValue<'a> for BaselinePosition {
2578 type Checker = glib::value::GenericValueTypeChecker<Self>;
2579
2580 #[inline]
2581 unsafe fn from_value(value: &'a glib::Value) -> Self {
2582 skip_assert_initialized!();
2583 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
2584 }
2585}
2586
2587impl ToValue for BaselinePosition {
2588 #[inline]
2589 fn to_value(&self) -> glib::Value {
2590 let mut value = glib::Value::for_value_type::<Self>();
2591 unsafe {
2592 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2593 }
2594 value
2595 }
2596
2597 #[inline]
2598 fn value_type(&self) -> glib::Type {
2599 Self::static_type()
2600 }
2601}
2602
2603impl From<BaselinePosition> for glib::Value {
2604 #[inline]
2605 fn from(v: BaselinePosition) -> Self {
2606 skip_assert_initialized!();
2607 ToValue::to_value(&v)
2608 }
2609}
2610
2611#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2613#[non_exhaustive]
2614#[doc(alias = "GtkBorderStyle")]
2615pub enum BorderStyle {
2616 #[doc(alias = "GTK_BORDER_STYLE_NONE")]
2618 None,
2619 #[doc(alias = "GTK_BORDER_STYLE_HIDDEN")]
2621 Hidden,
2622 #[doc(alias = "GTK_BORDER_STYLE_SOLID")]
2624 Solid,
2625 #[doc(alias = "GTK_BORDER_STYLE_INSET")]
2627 Inset,
2628 #[doc(alias = "GTK_BORDER_STYLE_OUTSET")]
2630 Outset,
2631 #[doc(alias = "GTK_BORDER_STYLE_DOTTED")]
2633 Dotted,
2634 #[doc(alias = "GTK_BORDER_STYLE_DASHED")]
2636 Dashed,
2637 #[doc(alias = "GTK_BORDER_STYLE_DOUBLE")]
2639 Double,
2640 #[doc(alias = "GTK_BORDER_STYLE_GROOVE")]
2642 Groove,
2643 #[doc(alias = "GTK_BORDER_STYLE_RIDGE")]
2645 Ridge,
2646 #[doc(hidden)]
2647 __Unknown(i32),
2648}
2649
2650#[doc(hidden)]
2651impl IntoGlib for BorderStyle {
2652 type GlibType = ffi::GtkBorderStyle;
2653
2654 #[inline]
2655 fn into_glib(self) -> ffi::GtkBorderStyle {
2656 match self {
2657 Self::None => ffi::GTK_BORDER_STYLE_NONE,
2658 Self::Hidden => ffi::GTK_BORDER_STYLE_HIDDEN,
2659 Self::Solid => ffi::GTK_BORDER_STYLE_SOLID,
2660 Self::Inset => ffi::GTK_BORDER_STYLE_INSET,
2661 Self::Outset => ffi::GTK_BORDER_STYLE_OUTSET,
2662 Self::Dotted => ffi::GTK_BORDER_STYLE_DOTTED,
2663 Self::Dashed => ffi::GTK_BORDER_STYLE_DASHED,
2664 Self::Double => ffi::GTK_BORDER_STYLE_DOUBLE,
2665 Self::Groove => ffi::GTK_BORDER_STYLE_GROOVE,
2666 Self::Ridge => ffi::GTK_BORDER_STYLE_RIDGE,
2667 Self::__Unknown(value) => value,
2668 }
2669 }
2670}
2671
2672#[doc(hidden)]
2673impl FromGlib<ffi::GtkBorderStyle> for BorderStyle {
2674 #[inline]
2675 unsafe fn from_glib(value: ffi::GtkBorderStyle) -> Self {
2676 skip_assert_initialized!();
2677
2678 match value {
2679 ffi::GTK_BORDER_STYLE_NONE => Self::None,
2680 ffi::GTK_BORDER_STYLE_HIDDEN => Self::Hidden,
2681 ffi::GTK_BORDER_STYLE_SOLID => Self::Solid,
2682 ffi::GTK_BORDER_STYLE_INSET => Self::Inset,
2683 ffi::GTK_BORDER_STYLE_OUTSET => Self::Outset,
2684 ffi::GTK_BORDER_STYLE_DOTTED => Self::Dotted,
2685 ffi::GTK_BORDER_STYLE_DASHED => Self::Dashed,
2686 ffi::GTK_BORDER_STYLE_DOUBLE => Self::Double,
2687 ffi::GTK_BORDER_STYLE_GROOVE => Self::Groove,
2688 ffi::GTK_BORDER_STYLE_RIDGE => Self::Ridge,
2689 value => Self::__Unknown(value),
2690 }
2691 }
2692}
2693
2694impl StaticType for BorderStyle {
2695 #[inline]
2696 #[doc(alias = "gtk_border_style_get_type")]
2697 fn static_type() -> glib::Type {
2698 unsafe { from_glib(ffi::gtk_border_style_get_type()) }
2699 }
2700}
2701
2702impl glib::HasParamSpec for BorderStyle {
2703 type ParamSpec = glib::ParamSpecEnum;
2704 type SetValue = Self;
2705 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2706
2707 fn param_spec_builder() -> Self::BuilderFn {
2708 Self::ParamSpec::builder_with_default
2709 }
2710}
2711
2712impl glib::value::ValueType for BorderStyle {
2713 type Type = Self;
2714}
2715
2716unsafe impl<'a> glib::value::FromValue<'a> for BorderStyle {
2717 type Checker = glib::value::GenericValueTypeChecker<Self>;
2718
2719 #[inline]
2720 unsafe fn from_value(value: &'a glib::Value) -> Self {
2721 skip_assert_initialized!();
2722 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
2723 }
2724}
2725
2726impl ToValue for BorderStyle {
2727 #[inline]
2728 fn to_value(&self) -> glib::Value {
2729 let mut value = glib::Value::for_value_type::<Self>();
2730 unsafe {
2731 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2732 }
2733 value
2734 }
2735
2736 #[inline]
2737 fn value_type(&self) -> glib::Type {
2738 Self::static_type()
2739 }
2740}
2741
2742impl From<BorderStyle> for glib::Value {
2743 #[inline]
2744 fn from(v: BorderStyle) -> Self {
2745 skip_assert_initialized!();
2746 ToValue::to_value(&v)
2747 }
2748}
2749
2750#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2753#[non_exhaustive]
2754#[doc(alias = "GtkBuilderError")]
2755pub enum BuilderError {
2756 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION")]
2759 InvalidTypeFunction,
2760 #[doc(alias = "GTK_BUILDER_ERROR_UNHANDLED_TAG")]
2763 UnhandledTag,
2764 #[doc(alias = "GTK_BUILDER_ERROR_MISSING_ATTRIBUTE")]
2767 MissingAttribute,
2768 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_ATTRIBUTE")]
2771 InvalidAttribute,
2772 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_TAG")]
2775 InvalidTag,
2776 #[doc(alias = "GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE")]
2779 MissingPropertyValue,
2780 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_VALUE")]
2783 InvalidValue,
2784 #[doc(alias = "GTK_BUILDER_ERROR_VERSION_MISMATCH")]
2787 VersionMismatch,
2788 #[doc(alias = "GTK_BUILDER_ERROR_DUPLICATE_ID")]
2790 DuplicateId,
2791 #[doc(alias = "GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED")]
2794 ObjectTypeRefused,
2795 #[doc(alias = "GTK_BUILDER_ERROR_TEMPLATE_MISMATCH")]
2797 TemplateMismatch,
2798 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_PROPERTY")]
2800 InvalidProperty,
2801 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_SIGNAL")]
2803 InvalidSignal,
2804 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_ID")]
2806 InvalidId,
2807 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_FUNCTION")]
2811 InvalidFunction,
2812 #[doc(hidden)]
2813 __Unknown(i32),
2814}
2815
2816#[doc(hidden)]
2817impl IntoGlib for BuilderError {
2818 type GlibType = ffi::GtkBuilderError;
2819
2820 fn into_glib(self) -> ffi::GtkBuilderError {
2821 match self {
2822 Self::InvalidTypeFunction => ffi::GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION,
2823 Self::UnhandledTag => ffi::GTK_BUILDER_ERROR_UNHANDLED_TAG,
2824 Self::MissingAttribute => ffi::GTK_BUILDER_ERROR_MISSING_ATTRIBUTE,
2825 Self::InvalidAttribute => ffi::GTK_BUILDER_ERROR_INVALID_ATTRIBUTE,
2826 Self::InvalidTag => ffi::GTK_BUILDER_ERROR_INVALID_TAG,
2827 Self::MissingPropertyValue => ffi::GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE,
2828 Self::InvalidValue => ffi::GTK_BUILDER_ERROR_INVALID_VALUE,
2829 Self::VersionMismatch => ffi::GTK_BUILDER_ERROR_VERSION_MISMATCH,
2830 Self::DuplicateId => ffi::GTK_BUILDER_ERROR_DUPLICATE_ID,
2831 Self::ObjectTypeRefused => ffi::GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED,
2832 Self::TemplateMismatch => ffi::GTK_BUILDER_ERROR_TEMPLATE_MISMATCH,
2833 Self::InvalidProperty => ffi::GTK_BUILDER_ERROR_INVALID_PROPERTY,
2834 Self::InvalidSignal => ffi::GTK_BUILDER_ERROR_INVALID_SIGNAL,
2835 Self::InvalidId => ffi::GTK_BUILDER_ERROR_INVALID_ID,
2836 Self::InvalidFunction => ffi::GTK_BUILDER_ERROR_INVALID_FUNCTION,
2837 Self::__Unknown(value) => value,
2838 }
2839 }
2840}
2841
2842#[doc(hidden)]
2843impl FromGlib<ffi::GtkBuilderError> for BuilderError {
2844 unsafe fn from_glib(value: ffi::GtkBuilderError) -> Self {
2845 skip_assert_initialized!();
2846
2847 match value {
2848 ffi::GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION => Self::InvalidTypeFunction,
2849 ffi::GTK_BUILDER_ERROR_UNHANDLED_TAG => Self::UnhandledTag,
2850 ffi::GTK_BUILDER_ERROR_MISSING_ATTRIBUTE => Self::MissingAttribute,
2851 ffi::GTK_BUILDER_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
2852 ffi::GTK_BUILDER_ERROR_INVALID_TAG => Self::InvalidTag,
2853 ffi::GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE => Self::MissingPropertyValue,
2854 ffi::GTK_BUILDER_ERROR_INVALID_VALUE => Self::InvalidValue,
2855 ffi::GTK_BUILDER_ERROR_VERSION_MISMATCH => Self::VersionMismatch,
2856 ffi::GTK_BUILDER_ERROR_DUPLICATE_ID => Self::DuplicateId,
2857 ffi::GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED => Self::ObjectTypeRefused,
2858 ffi::GTK_BUILDER_ERROR_TEMPLATE_MISMATCH => Self::TemplateMismatch,
2859 ffi::GTK_BUILDER_ERROR_INVALID_PROPERTY => Self::InvalidProperty,
2860 ffi::GTK_BUILDER_ERROR_INVALID_SIGNAL => Self::InvalidSignal,
2861 ffi::GTK_BUILDER_ERROR_INVALID_ID => Self::InvalidId,
2862 ffi::GTK_BUILDER_ERROR_INVALID_FUNCTION => Self::InvalidFunction,
2863 value => Self::__Unknown(value),
2864 }
2865 }
2866}
2867
2868impl glib::error::ErrorDomain for BuilderError {
2869 #[inline]
2870 fn domain() -> glib::Quark {
2871 skip_assert_initialized!();
2872
2873 unsafe { from_glib(ffi::gtk_builder_error_quark()) }
2874 }
2875
2876 #[inline]
2877 fn code(self) -> i32 {
2878 self.into_glib()
2879 }
2880
2881 #[inline]
2882 #[allow(clippy::match_single_binding)]
2883 fn from(code: i32) -> Option<Self> {
2884 skip_assert_initialized!();
2885 match unsafe { from_glib(code) } {
2886 value => Some(value),
2887 }
2888 }
2889}
2890
2891impl StaticType for BuilderError {
2892 #[inline]
2893 #[doc(alias = "gtk_builder_error_get_type")]
2894 fn static_type() -> glib::Type {
2895 unsafe { from_glib(ffi::gtk_builder_error_get_type()) }
2896 }
2897}
2898
2899impl glib::HasParamSpec for BuilderError {
2900 type ParamSpec = glib::ParamSpecEnum;
2901 type SetValue = Self;
2902 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2903
2904 fn param_spec_builder() -> Self::BuilderFn {
2905 Self::ParamSpec::builder_with_default
2906 }
2907}
2908
2909impl glib::value::ValueType for BuilderError {
2910 type Type = Self;
2911}
2912
2913unsafe impl<'a> glib::value::FromValue<'a> for BuilderError {
2914 type Checker = glib::value::GenericValueTypeChecker<Self>;
2915
2916 #[inline]
2917 unsafe fn from_value(value: &'a glib::Value) -> Self {
2918 skip_assert_initialized!();
2919 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
2920 }
2921}
2922
2923impl ToValue for BuilderError {
2924 #[inline]
2925 fn to_value(&self) -> glib::Value {
2926 let mut value = glib::Value::for_value_type::<Self>();
2927 unsafe {
2928 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2929 }
2930 value
2931 }
2932
2933 #[inline]
2934 fn value_type(&self) -> glib::Type {
2935 Self::static_type()
2936 }
2937}
2938
2939impl From<BuilderError> for glib::Value {
2940 #[inline]
2941 fn from(v: BuilderError) -> Self {
2942 skip_assert_initialized!();
2943 ToValue::to_value(&v)
2944 }
2945}
2946
2947#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2956#[non_exhaustive]
2957#[doc(alias = "GtkButtonsType")]
2958pub enum ButtonsType {
2959 #[doc(alias = "GTK_BUTTONS_NONE")]
2961 None,
2962 #[doc(alias = "GTK_BUTTONS_OK")]
2964 Ok,
2965 #[doc(alias = "GTK_BUTTONS_CLOSE")]
2967 Close,
2968 #[doc(alias = "GTK_BUTTONS_CANCEL")]
2970 Cancel,
2971 #[doc(alias = "GTK_BUTTONS_YES_NO")]
2973 YesNo,
2974 #[doc(alias = "GTK_BUTTONS_OK_CANCEL")]
2976 OkCancel,
2977 #[doc(hidden)]
2978 __Unknown(i32),
2979}
2980
2981#[doc(hidden)]
2982impl IntoGlib for ButtonsType {
2983 type GlibType = ffi::GtkButtonsType;
2984
2985 #[inline]
2986 fn into_glib(self) -> ffi::GtkButtonsType {
2987 match self {
2988 Self::None => ffi::GTK_BUTTONS_NONE,
2989 Self::Ok => ffi::GTK_BUTTONS_OK,
2990 Self::Close => ffi::GTK_BUTTONS_CLOSE,
2991 Self::Cancel => ffi::GTK_BUTTONS_CANCEL,
2992 Self::YesNo => ffi::GTK_BUTTONS_YES_NO,
2993 Self::OkCancel => ffi::GTK_BUTTONS_OK_CANCEL,
2994 Self::__Unknown(value) => value,
2995 }
2996 }
2997}
2998
2999#[doc(hidden)]
3000impl FromGlib<ffi::GtkButtonsType> for ButtonsType {
3001 #[inline]
3002 unsafe fn from_glib(value: ffi::GtkButtonsType) -> Self {
3003 skip_assert_initialized!();
3004
3005 match value {
3006 ffi::GTK_BUTTONS_NONE => Self::None,
3007 ffi::GTK_BUTTONS_OK => Self::Ok,
3008 ffi::GTK_BUTTONS_CLOSE => Self::Close,
3009 ffi::GTK_BUTTONS_CANCEL => Self::Cancel,
3010 ffi::GTK_BUTTONS_YES_NO => Self::YesNo,
3011 ffi::GTK_BUTTONS_OK_CANCEL => Self::OkCancel,
3012 value => Self::__Unknown(value),
3013 }
3014 }
3015}
3016
3017impl StaticType for ButtonsType {
3018 #[inline]
3019 #[doc(alias = "gtk_buttons_type_get_type")]
3020 fn static_type() -> glib::Type {
3021 unsafe { from_glib(ffi::gtk_buttons_type_get_type()) }
3022 }
3023}
3024
3025impl glib::HasParamSpec for ButtonsType {
3026 type ParamSpec = glib::ParamSpecEnum;
3027 type SetValue = Self;
3028 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3029
3030 fn param_spec_builder() -> Self::BuilderFn {
3031 Self::ParamSpec::builder_with_default
3032 }
3033}
3034
3035impl glib::value::ValueType for ButtonsType {
3036 type Type = Self;
3037}
3038
3039unsafe impl<'a> glib::value::FromValue<'a> for ButtonsType {
3040 type Checker = glib::value::GenericValueTypeChecker<Self>;
3041
3042 #[inline]
3043 unsafe fn from_value(value: &'a glib::Value) -> Self {
3044 skip_assert_initialized!();
3045 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3046 }
3047}
3048
3049impl ToValue for ButtonsType {
3050 #[inline]
3051 fn to_value(&self) -> glib::Value {
3052 let mut value = glib::Value::for_value_type::<Self>();
3053 unsafe {
3054 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3055 }
3056 value
3057 }
3058
3059 #[inline]
3060 fn value_type(&self) -> glib::Type {
3061 Self::static_type()
3062 }
3063}
3064
3065impl From<ButtonsType> for glib::Value {
3066 #[inline]
3067 fn from(v: ButtonsType) -> Self {
3068 skip_assert_initialized!();
3069 ToValue::to_value(&v)
3070 }
3071}
3072
3073#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
3079#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3080#[non_exhaustive]
3081#[doc(alias = "GtkCellRendererAccelMode")]
3082pub enum CellRendererAccelMode {
3083 #[doc(alias = "GTK_CELL_RENDERER_ACCEL_MODE_GTK")]
3085 Gtk,
3086 #[doc(alias = "GTK_CELL_RENDERER_ACCEL_MODE_OTHER")]
3088 Other,
3089 #[doc(hidden)]
3090 __Unknown(i32),
3091}
3092
3093#[allow(deprecated)]
3094#[doc(hidden)]
3095impl IntoGlib for CellRendererAccelMode {
3096 type GlibType = ffi::GtkCellRendererAccelMode;
3097
3098 #[inline]
3099 fn into_glib(self) -> ffi::GtkCellRendererAccelMode {
3100 match self {
3101 Self::Gtk => ffi::GTK_CELL_RENDERER_ACCEL_MODE_GTK,
3102 Self::Other => ffi::GTK_CELL_RENDERER_ACCEL_MODE_OTHER,
3103 Self::__Unknown(value) => value,
3104 }
3105 }
3106}
3107
3108#[allow(deprecated)]
3109#[doc(hidden)]
3110impl FromGlib<ffi::GtkCellRendererAccelMode> for CellRendererAccelMode {
3111 #[inline]
3112 unsafe fn from_glib(value: ffi::GtkCellRendererAccelMode) -> Self {
3113 skip_assert_initialized!();
3114
3115 match value {
3116 ffi::GTK_CELL_RENDERER_ACCEL_MODE_GTK => Self::Gtk,
3117 ffi::GTK_CELL_RENDERER_ACCEL_MODE_OTHER => Self::Other,
3118 value => Self::__Unknown(value),
3119 }
3120 }
3121}
3122
3123#[allow(deprecated)]
3124impl StaticType for CellRendererAccelMode {
3125 #[inline]
3126 #[doc(alias = "gtk_cell_renderer_accel_mode_get_type")]
3127 fn static_type() -> glib::Type {
3128 unsafe { from_glib(ffi::gtk_cell_renderer_accel_mode_get_type()) }
3129 }
3130}
3131
3132#[allow(deprecated)]
3133impl glib::HasParamSpec for CellRendererAccelMode {
3134 type ParamSpec = glib::ParamSpecEnum;
3135 type SetValue = Self;
3136 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3137
3138 fn param_spec_builder() -> Self::BuilderFn {
3139 Self::ParamSpec::builder_with_default
3140 }
3141}
3142
3143#[allow(deprecated)]
3144impl glib::value::ValueType for CellRendererAccelMode {
3145 type Type = Self;
3146}
3147
3148#[allow(deprecated)]
3149unsafe impl<'a> glib::value::FromValue<'a> for CellRendererAccelMode {
3150 type Checker = glib::value::GenericValueTypeChecker<Self>;
3151
3152 #[inline]
3153 unsafe fn from_value(value: &'a glib::Value) -> Self {
3154 skip_assert_initialized!();
3155 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3156 }
3157}
3158
3159#[allow(deprecated)]
3160impl ToValue for CellRendererAccelMode {
3161 #[inline]
3162 fn to_value(&self) -> glib::Value {
3163 let mut value = glib::Value::for_value_type::<Self>();
3164 unsafe {
3165 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3166 }
3167 value
3168 }
3169
3170 #[inline]
3171 fn value_type(&self) -> glib::Type {
3172 Self::static_type()
3173 }
3174}
3175
3176#[allow(deprecated)]
3177impl From<CellRendererAccelMode> for glib::Value {
3178 #[inline]
3179 fn from(v: CellRendererAccelMode) -> Self {
3180 skip_assert_initialized!();
3181 ToValue::to_value(&v)
3182 }
3183}
3184
3185#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
3191#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3192#[non_exhaustive]
3193#[doc(alias = "GtkCellRendererMode")]
3194pub enum CellRendererMode {
3195 #[doc(alias = "GTK_CELL_RENDERER_MODE_INERT")]
3200 Inert,
3201 #[doc(alias = "GTK_CELL_RENDERER_MODE_ACTIVATABLE")]
3203 Activatable,
3204 #[doc(alias = "GTK_CELL_RENDERER_MODE_EDITABLE")]
3206 Editable,
3207 #[doc(hidden)]
3208 __Unknown(i32),
3209}
3210
3211#[allow(deprecated)]
3212#[doc(hidden)]
3213impl IntoGlib for CellRendererMode {
3214 type GlibType = ffi::GtkCellRendererMode;
3215
3216 #[inline]
3217 fn into_glib(self) -> ffi::GtkCellRendererMode {
3218 match self {
3219 Self::Inert => ffi::GTK_CELL_RENDERER_MODE_INERT,
3220 Self::Activatable => ffi::GTK_CELL_RENDERER_MODE_ACTIVATABLE,
3221 Self::Editable => ffi::GTK_CELL_RENDERER_MODE_EDITABLE,
3222 Self::__Unknown(value) => value,
3223 }
3224 }
3225}
3226
3227#[allow(deprecated)]
3228#[doc(hidden)]
3229impl FromGlib<ffi::GtkCellRendererMode> for CellRendererMode {
3230 #[inline]
3231 unsafe fn from_glib(value: ffi::GtkCellRendererMode) -> Self {
3232 skip_assert_initialized!();
3233
3234 match value {
3235 ffi::GTK_CELL_RENDERER_MODE_INERT => Self::Inert,
3236 ffi::GTK_CELL_RENDERER_MODE_ACTIVATABLE => Self::Activatable,
3237 ffi::GTK_CELL_RENDERER_MODE_EDITABLE => Self::Editable,
3238 value => Self::__Unknown(value),
3239 }
3240 }
3241}
3242
3243#[allow(deprecated)]
3244impl StaticType for CellRendererMode {
3245 #[inline]
3246 #[doc(alias = "gtk_cell_renderer_mode_get_type")]
3247 fn static_type() -> glib::Type {
3248 unsafe { from_glib(ffi::gtk_cell_renderer_mode_get_type()) }
3249 }
3250}
3251
3252#[allow(deprecated)]
3253impl glib::HasParamSpec for CellRendererMode {
3254 type ParamSpec = glib::ParamSpecEnum;
3255 type SetValue = Self;
3256 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3257
3258 fn param_spec_builder() -> Self::BuilderFn {
3259 Self::ParamSpec::builder_with_default
3260 }
3261}
3262
3263#[allow(deprecated)]
3264impl glib::value::ValueType for CellRendererMode {
3265 type Type = Self;
3266}
3267
3268#[allow(deprecated)]
3269unsafe impl<'a> glib::value::FromValue<'a> for CellRendererMode {
3270 type Checker = glib::value::GenericValueTypeChecker<Self>;
3271
3272 #[inline]
3273 unsafe fn from_value(value: &'a glib::Value) -> Self {
3274 skip_assert_initialized!();
3275 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3276 }
3277}
3278
3279#[allow(deprecated)]
3280impl ToValue for CellRendererMode {
3281 #[inline]
3282 fn to_value(&self) -> glib::Value {
3283 let mut value = glib::Value::for_value_type::<Self>();
3284 unsafe {
3285 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3286 }
3287 value
3288 }
3289
3290 #[inline]
3291 fn value_type(&self) -> glib::Type {
3292 Self::static_type()
3293 }
3294}
3295
3296#[allow(deprecated)]
3297impl From<CellRendererMode> for glib::Value {
3298 #[inline]
3299 fn from(v: CellRendererMode) -> Self {
3300 skip_assert_initialized!();
3301 ToValue::to_value(&v)
3302 }
3303}
3304
3305#[cfg(feature = "v4_10")]
3311#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3312#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3313#[non_exhaustive]
3314#[doc(alias = "GtkCollation")]
3315pub enum Collation {
3316 #[doc(alias = "GTK_COLLATION_NONE")]
3318 None,
3319 #[doc(alias = "GTK_COLLATION_UNICODE")]
3321 Unicode,
3322 #[doc(alias = "GTK_COLLATION_FILENAME")]
3324 Filename,
3325 #[doc(hidden)]
3326 __Unknown(i32),
3327}
3328
3329#[cfg(feature = "v4_10")]
3330#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3331#[doc(hidden)]
3332impl IntoGlib for Collation {
3333 type GlibType = ffi::GtkCollation;
3334
3335 #[inline]
3336 fn into_glib(self) -> ffi::GtkCollation {
3337 match self {
3338 Self::None => ffi::GTK_COLLATION_NONE,
3339 Self::Unicode => ffi::GTK_COLLATION_UNICODE,
3340 Self::Filename => ffi::GTK_COLLATION_FILENAME,
3341 Self::__Unknown(value) => value,
3342 }
3343 }
3344}
3345
3346#[cfg(feature = "v4_10")]
3347#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3348#[doc(hidden)]
3349impl FromGlib<ffi::GtkCollation> for Collation {
3350 #[inline]
3351 unsafe fn from_glib(value: ffi::GtkCollation) -> Self {
3352 skip_assert_initialized!();
3353
3354 match value {
3355 ffi::GTK_COLLATION_NONE => Self::None,
3356 ffi::GTK_COLLATION_UNICODE => Self::Unicode,
3357 ffi::GTK_COLLATION_FILENAME => Self::Filename,
3358 value => Self::__Unknown(value),
3359 }
3360 }
3361}
3362
3363#[cfg(feature = "v4_10")]
3364#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3365impl StaticType for Collation {
3366 #[inline]
3367 #[doc(alias = "gtk_collation_get_type")]
3368 fn static_type() -> glib::Type {
3369 unsafe { from_glib(ffi::gtk_collation_get_type()) }
3370 }
3371}
3372
3373#[cfg(feature = "v4_10")]
3374#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3375impl glib::HasParamSpec for Collation {
3376 type ParamSpec = glib::ParamSpecEnum;
3377 type SetValue = Self;
3378 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3379
3380 fn param_spec_builder() -> Self::BuilderFn {
3381 Self::ParamSpec::builder_with_default
3382 }
3383}
3384
3385#[cfg(feature = "v4_10")]
3386#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3387impl glib::value::ValueType for Collation {
3388 type Type = Self;
3389}
3390
3391#[cfg(feature = "v4_10")]
3392#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3393unsafe impl<'a> glib::value::FromValue<'a> for Collation {
3394 type Checker = glib::value::GenericValueTypeChecker<Self>;
3395
3396 #[inline]
3397 unsafe fn from_value(value: &'a glib::Value) -> Self {
3398 skip_assert_initialized!();
3399 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3400 }
3401}
3402
3403#[cfg(feature = "v4_10")]
3404#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3405impl ToValue for Collation {
3406 #[inline]
3407 fn to_value(&self) -> glib::Value {
3408 let mut value = glib::Value::for_value_type::<Self>();
3409 unsafe {
3410 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3411 }
3412 value
3413 }
3414
3415 #[inline]
3416 fn value_type(&self) -> glib::Type {
3417 Self::static_type()
3418 }
3419}
3420
3421#[cfg(feature = "v4_10")]
3422#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3423impl From<Collation> for glib::Value {
3424 #[inline]
3425 fn from(v: Collation) -> Self {
3426 skip_assert_initialized!();
3427 ToValue::to_value(&v)
3428 }
3429}
3430
3431#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3433#[non_exhaustive]
3434#[doc(alias = "GtkConstraintAttribute")]
3435pub enum ConstraintAttribute {
3436 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_NONE")]
3439 None,
3440 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_LEFT")]
3443 Left,
3444 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_RIGHT")]
3447 Right,
3448 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_TOP")]
3450 Top,
3451 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_BOTTOM")]
3453 Bottom,
3454 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_START")]
3458 Start,
3459 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_END")]
3463 End,
3464 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_WIDTH")]
3466 Width,
3467 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_HEIGHT")]
3469 Height,
3470 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_CENTER_X")]
3473 CenterX,
3474 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y")]
3477 CenterY,
3478 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_BASELINE")]
3480 Baseline,
3481 #[doc(hidden)]
3482 __Unknown(i32),
3483}
3484
3485#[doc(hidden)]
3486impl IntoGlib for ConstraintAttribute {
3487 type GlibType = ffi::GtkConstraintAttribute;
3488
3489 #[inline]
3490 fn into_glib(self) -> ffi::GtkConstraintAttribute {
3491 match self {
3492 Self::None => ffi::GTK_CONSTRAINT_ATTRIBUTE_NONE,
3493 Self::Left => ffi::GTK_CONSTRAINT_ATTRIBUTE_LEFT,
3494 Self::Right => ffi::GTK_CONSTRAINT_ATTRIBUTE_RIGHT,
3495 Self::Top => ffi::GTK_CONSTRAINT_ATTRIBUTE_TOP,
3496 Self::Bottom => ffi::GTK_CONSTRAINT_ATTRIBUTE_BOTTOM,
3497 Self::Start => ffi::GTK_CONSTRAINT_ATTRIBUTE_START,
3498 Self::End => ffi::GTK_CONSTRAINT_ATTRIBUTE_END,
3499 Self::Width => ffi::GTK_CONSTRAINT_ATTRIBUTE_WIDTH,
3500 Self::Height => ffi::GTK_CONSTRAINT_ATTRIBUTE_HEIGHT,
3501 Self::CenterX => ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_X,
3502 Self::CenterY => ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y,
3503 Self::Baseline => ffi::GTK_CONSTRAINT_ATTRIBUTE_BASELINE,
3504 Self::__Unknown(value) => value,
3505 }
3506 }
3507}
3508
3509#[doc(hidden)]
3510impl FromGlib<ffi::GtkConstraintAttribute> for ConstraintAttribute {
3511 #[inline]
3512 unsafe fn from_glib(value: ffi::GtkConstraintAttribute) -> Self {
3513 skip_assert_initialized!();
3514
3515 match value {
3516 ffi::GTK_CONSTRAINT_ATTRIBUTE_NONE => Self::None,
3517 ffi::GTK_CONSTRAINT_ATTRIBUTE_LEFT => Self::Left,
3518 ffi::GTK_CONSTRAINT_ATTRIBUTE_RIGHT => Self::Right,
3519 ffi::GTK_CONSTRAINT_ATTRIBUTE_TOP => Self::Top,
3520 ffi::GTK_CONSTRAINT_ATTRIBUTE_BOTTOM => Self::Bottom,
3521 ffi::GTK_CONSTRAINT_ATTRIBUTE_START => Self::Start,
3522 ffi::GTK_CONSTRAINT_ATTRIBUTE_END => Self::End,
3523 ffi::GTK_CONSTRAINT_ATTRIBUTE_WIDTH => Self::Width,
3524 ffi::GTK_CONSTRAINT_ATTRIBUTE_HEIGHT => Self::Height,
3525 ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_X => Self::CenterX,
3526 ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y => Self::CenterY,
3527 ffi::GTK_CONSTRAINT_ATTRIBUTE_BASELINE => Self::Baseline,
3528 value => Self::__Unknown(value),
3529 }
3530 }
3531}
3532
3533impl StaticType for ConstraintAttribute {
3534 #[inline]
3535 #[doc(alias = "gtk_constraint_attribute_get_type")]
3536 fn static_type() -> glib::Type {
3537 unsafe { from_glib(ffi::gtk_constraint_attribute_get_type()) }
3538 }
3539}
3540
3541impl glib::HasParamSpec for ConstraintAttribute {
3542 type ParamSpec = glib::ParamSpecEnum;
3543 type SetValue = Self;
3544 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3545
3546 fn param_spec_builder() -> Self::BuilderFn {
3547 Self::ParamSpec::builder_with_default
3548 }
3549}
3550
3551impl glib::value::ValueType for ConstraintAttribute {
3552 type Type = Self;
3553}
3554
3555unsafe impl<'a> glib::value::FromValue<'a> for ConstraintAttribute {
3556 type Checker = glib::value::GenericValueTypeChecker<Self>;
3557
3558 #[inline]
3559 unsafe fn from_value(value: &'a glib::Value) -> Self {
3560 skip_assert_initialized!();
3561 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3562 }
3563}
3564
3565impl ToValue for ConstraintAttribute {
3566 #[inline]
3567 fn to_value(&self) -> glib::Value {
3568 let mut value = glib::Value::for_value_type::<Self>();
3569 unsafe {
3570 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3571 }
3572 value
3573 }
3574
3575 #[inline]
3576 fn value_type(&self) -> glib::Type {
3577 Self::static_type()
3578 }
3579}
3580
3581impl From<ConstraintAttribute> for glib::Value {
3582 #[inline]
3583 fn from(v: ConstraintAttribute) -> Self {
3584 skip_assert_initialized!();
3585 ToValue::to_value(&v)
3586 }
3587}
3588
3589#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3591#[non_exhaustive]
3592#[doc(alias = "GtkConstraintRelation")]
3593pub enum ConstraintRelation {
3594 #[doc(alias = "GTK_CONSTRAINT_RELATION_LE")]
3596 Le,
3597 #[doc(alias = "GTK_CONSTRAINT_RELATION_EQ")]
3599 Eq,
3600 #[doc(alias = "GTK_CONSTRAINT_RELATION_GE")]
3602 Ge,
3603 #[doc(hidden)]
3604 __Unknown(i32),
3605}
3606
3607#[doc(hidden)]
3608impl IntoGlib for ConstraintRelation {
3609 type GlibType = ffi::GtkConstraintRelation;
3610
3611 #[inline]
3612 fn into_glib(self) -> ffi::GtkConstraintRelation {
3613 match self {
3614 Self::Le => ffi::GTK_CONSTRAINT_RELATION_LE,
3615 Self::Eq => ffi::GTK_CONSTRAINT_RELATION_EQ,
3616 Self::Ge => ffi::GTK_CONSTRAINT_RELATION_GE,
3617 Self::__Unknown(value) => value,
3618 }
3619 }
3620}
3621
3622#[doc(hidden)]
3623impl FromGlib<ffi::GtkConstraintRelation> for ConstraintRelation {
3624 #[inline]
3625 unsafe fn from_glib(value: ffi::GtkConstraintRelation) -> Self {
3626 skip_assert_initialized!();
3627
3628 match value {
3629 ffi::GTK_CONSTRAINT_RELATION_LE => Self::Le,
3630 ffi::GTK_CONSTRAINT_RELATION_EQ => Self::Eq,
3631 ffi::GTK_CONSTRAINT_RELATION_GE => Self::Ge,
3632 value => Self::__Unknown(value),
3633 }
3634 }
3635}
3636
3637impl StaticType for ConstraintRelation {
3638 #[inline]
3639 #[doc(alias = "gtk_constraint_relation_get_type")]
3640 fn static_type() -> glib::Type {
3641 unsafe { from_glib(ffi::gtk_constraint_relation_get_type()) }
3642 }
3643}
3644
3645impl glib::HasParamSpec for ConstraintRelation {
3646 type ParamSpec = glib::ParamSpecEnum;
3647 type SetValue = Self;
3648 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3649
3650 fn param_spec_builder() -> Self::BuilderFn {
3651 Self::ParamSpec::builder_with_default
3652 }
3653}
3654
3655impl glib::value::ValueType for ConstraintRelation {
3656 type Type = Self;
3657}
3658
3659unsafe impl<'a> glib::value::FromValue<'a> for ConstraintRelation {
3660 type Checker = glib::value::GenericValueTypeChecker<Self>;
3661
3662 #[inline]
3663 unsafe fn from_value(value: &'a glib::Value) -> Self {
3664 skip_assert_initialized!();
3665 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3666 }
3667}
3668
3669impl ToValue for ConstraintRelation {
3670 #[inline]
3671 fn to_value(&self) -> glib::Value {
3672 let mut value = glib::Value::for_value_type::<Self>();
3673 unsafe {
3674 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3675 }
3676 value
3677 }
3678
3679 #[inline]
3680 fn value_type(&self) -> glib::Type {
3681 Self::static_type()
3682 }
3683}
3684
3685impl From<ConstraintRelation> for glib::Value {
3686 #[inline]
3687 fn from(v: ConstraintRelation) -> Self {
3688 skip_assert_initialized!();
3689 ToValue::to_value(&v)
3690 }
3691}
3692
3693#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3698#[non_exhaustive]
3699#[doc(alias = "GtkConstraintStrength")]
3700pub enum ConstraintStrength {
3701 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_REQUIRED")]
3703 Required,
3704 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_STRONG")]
3706 Strong,
3707 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_MEDIUM")]
3709 Medium,
3710 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_WEAK")]
3712 Weak,
3713 #[doc(hidden)]
3714 __Unknown(i32),
3715}
3716
3717#[doc(hidden)]
3718impl IntoGlib for ConstraintStrength {
3719 type GlibType = ffi::GtkConstraintStrength;
3720
3721 #[inline]
3722 fn into_glib(self) -> ffi::GtkConstraintStrength {
3723 match self {
3724 Self::Required => ffi::GTK_CONSTRAINT_STRENGTH_REQUIRED,
3725 Self::Strong => ffi::GTK_CONSTRAINT_STRENGTH_STRONG,
3726 Self::Medium => ffi::GTK_CONSTRAINT_STRENGTH_MEDIUM,
3727 Self::Weak => ffi::GTK_CONSTRAINT_STRENGTH_WEAK,
3728 Self::__Unknown(value) => value,
3729 }
3730 }
3731}
3732
3733#[doc(hidden)]
3734impl FromGlib<ffi::GtkConstraintStrength> for ConstraintStrength {
3735 #[inline]
3736 unsafe fn from_glib(value: ffi::GtkConstraintStrength) -> Self {
3737 skip_assert_initialized!();
3738
3739 match value {
3740 ffi::GTK_CONSTRAINT_STRENGTH_REQUIRED => Self::Required,
3741 ffi::GTK_CONSTRAINT_STRENGTH_STRONG => Self::Strong,
3742 ffi::GTK_CONSTRAINT_STRENGTH_MEDIUM => Self::Medium,
3743 ffi::GTK_CONSTRAINT_STRENGTH_WEAK => Self::Weak,
3744 value => Self::__Unknown(value),
3745 }
3746 }
3747}
3748
3749impl StaticType for ConstraintStrength {
3750 #[inline]
3751 #[doc(alias = "gtk_constraint_strength_get_type")]
3752 fn static_type() -> glib::Type {
3753 unsafe { from_glib(ffi::gtk_constraint_strength_get_type()) }
3754 }
3755}
3756
3757impl glib::HasParamSpec for ConstraintStrength {
3758 type ParamSpec = glib::ParamSpecEnum;
3759 type SetValue = Self;
3760 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3761
3762 fn param_spec_builder() -> Self::BuilderFn {
3763 Self::ParamSpec::builder_with_default
3764 }
3765}
3766
3767impl glib::value::ValueType for ConstraintStrength {
3768 type Type = Self;
3769}
3770
3771unsafe impl<'a> glib::value::FromValue<'a> for ConstraintStrength {
3772 type Checker = glib::value::GenericValueTypeChecker<Self>;
3773
3774 #[inline]
3775 unsafe fn from_value(value: &'a glib::Value) -> Self {
3776 skip_assert_initialized!();
3777 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3778 }
3779}
3780
3781impl ToValue for ConstraintStrength {
3782 #[inline]
3783 fn to_value(&self) -> glib::Value {
3784 let mut value = glib::Value::for_value_type::<Self>();
3785 unsafe {
3786 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3787 }
3788 value
3789 }
3790
3791 #[inline]
3792 fn value_type(&self) -> glib::Type {
3793 Self::static_type()
3794 }
3795}
3796
3797impl From<ConstraintStrength> for glib::Value {
3798 #[inline]
3799 fn from(v: ConstraintStrength) -> Self {
3800 skip_assert_initialized!();
3801 ToValue::to_value(&v)
3802 }
3803}
3804
3805#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3807#[non_exhaustive]
3808#[doc(alias = "GtkConstraintVflParserError")]
3809pub enum ConstraintVflParserError {
3810 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL")]
3812 InvalidSymbol,
3813 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE")]
3815 InvalidAttribute,
3816 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW")]
3818 InvalidView,
3819 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC")]
3821 InvalidMetric,
3822 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY")]
3824 InvalidPriority,
3825 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION")]
3827 InvalidRelation,
3828 #[doc(hidden)]
3829 __Unknown(i32),
3830}
3831
3832#[doc(hidden)]
3833impl IntoGlib for ConstraintVflParserError {
3834 type GlibType = ffi::GtkConstraintVflParserError;
3835
3836 #[inline]
3837 fn into_glib(self) -> ffi::GtkConstraintVflParserError {
3838 match self {
3839 Self::InvalidSymbol => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL,
3840 Self::InvalidAttribute => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE,
3841 Self::InvalidView => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW,
3842 Self::InvalidMetric => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC,
3843 Self::InvalidPriority => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY,
3844 Self::InvalidRelation => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION,
3845 Self::__Unknown(value) => value,
3846 }
3847 }
3848}
3849
3850#[doc(hidden)]
3851impl FromGlib<ffi::GtkConstraintVflParserError> for ConstraintVflParserError {
3852 #[inline]
3853 unsafe fn from_glib(value: ffi::GtkConstraintVflParserError) -> Self {
3854 skip_assert_initialized!();
3855
3856 match value {
3857 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL => Self::InvalidSymbol,
3858 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
3859 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW => Self::InvalidView,
3860 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC => Self::InvalidMetric,
3861 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY => Self::InvalidPriority,
3862 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION => Self::InvalidRelation,
3863 value => Self::__Unknown(value),
3864 }
3865 }
3866}
3867
3868impl glib::error::ErrorDomain for ConstraintVflParserError {
3869 #[inline]
3870 fn domain() -> glib::Quark {
3871 skip_assert_initialized!();
3872
3873 unsafe { from_glib(ffi::gtk_constraint_vfl_parser_error_quark()) }
3874 }
3875
3876 #[inline]
3877 fn code(self) -> i32 {
3878 self.into_glib()
3879 }
3880
3881 #[inline]
3882 #[allow(clippy::match_single_binding)]
3883 fn from(code: i32) -> Option<Self> {
3884 skip_assert_initialized!();
3885 match unsafe { from_glib(code) } {
3886 value => Some(value),
3887 }
3888 }
3889}
3890
3891impl StaticType for ConstraintVflParserError {
3892 #[inline]
3893 #[doc(alias = "gtk_constraint_vfl_parser_error_get_type")]
3894 fn static_type() -> glib::Type {
3895 unsafe { from_glib(ffi::gtk_constraint_vfl_parser_error_get_type()) }
3896 }
3897}
3898
3899impl glib::HasParamSpec for ConstraintVflParserError {
3900 type ParamSpec = glib::ParamSpecEnum;
3901 type SetValue = Self;
3902 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3903
3904 fn param_spec_builder() -> Self::BuilderFn {
3905 Self::ParamSpec::builder_with_default
3906 }
3907}
3908
3909impl glib::value::ValueType for ConstraintVflParserError {
3910 type Type = Self;
3911}
3912
3913unsafe impl<'a> glib::value::FromValue<'a> for ConstraintVflParserError {
3914 type Checker = glib::value::GenericValueTypeChecker<Self>;
3915
3916 #[inline]
3917 unsafe fn from_value(value: &'a glib::Value) -> Self {
3918 skip_assert_initialized!();
3919 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
3920 }
3921}
3922
3923impl ToValue for ConstraintVflParserError {
3924 #[inline]
3925 fn to_value(&self) -> glib::Value {
3926 let mut value = glib::Value::for_value_type::<Self>();
3927 unsafe {
3928 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3929 }
3930 value
3931 }
3932
3933 #[inline]
3934 fn value_type(&self) -> glib::Type {
3935 Self::static_type()
3936 }
3937}
3938
3939impl From<ConstraintVflParserError> for glib::Value {
3940 #[inline]
3941 fn from(v: ConstraintVflParserError) -> Self {
3942 skip_assert_initialized!();
3943 ToValue::to_value(&v)
3944 }
3945}
3946
3947#[cfg(feature = "v4_8")]
3949#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
3950#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3951#[non_exhaustive]
3952#[doc(alias = "GtkContentFit")]
3953pub enum ContentFit {
3954 #[doc(alias = "GTK_CONTENT_FIT_FILL")]
3959 Fill,
3960 #[doc(alias = "GTK_CONTENT_FIT_CONTAIN")]
3965 Contain,
3966 #[doc(alias = "GTK_CONTENT_FIT_COVER")]
3971 Cover,
3972 #[doc(alias = "GTK_CONTENT_FIT_SCALE_DOWN")]
3975 ScaleDown,
3976 #[doc(hidden)]
3977 __Unknown(i32),
3978}
3979
3980#[cfg(feature = "v4_8")]
3981#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
3982#[doc(hidden)]
3983impl IntoGlib for ContentFit {
3984 type GlibType = ffi::GtkContentFit;
3985
3986 #[inline]
3987 fn into_glib(self) -> ffi::GtkContentFit {
3988 match self {
3989 Self::Fill => ffi::GTK_CONTENT_FIT_FILL,
3990 Self::Contain => ffi::GTK_CONTENT_FIT_CONTAIN,
3991 Self::Cover => ffi::GTK_CONTENT_FIT_COVER,
3992 Self::ScaleDown => ffi::GTK_CONTENT_FIT_SCALE_DOWN,
3993 Self::__Unknown(value) => value,
3994 }
3995 }
3996}
3997
3998#[cfg(feature = "v4_8")]
3999#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4000#[doc(hidden)]
4001impl FromGlib<ffi::GtkContentFit> for ContentFit {
4002 #[inline]
4003 unsafe fn from_glib(value: ffi::GtkContentFit) -> Self {
4004 skip_assert_initialized!();
4005
4006 match value {
4007 ffi::GTK_CONTENT_FIT_FILL => Self::Fill,
4008 ffi::GTK_CONTENT_FIT_CONTAIN => Self::Contain,
4009 ffi::GTK_CONTENT_FIT_COVER => Self::Cover,
4010 ffi::GTK_CONTENT_FIT_SCALE_DOWN => Self::ScaleDown,
4011 value => Self::__Unknown(value),
4012 }
4013 }
4014}
4015
4016#[cfg(feature = "v4_8")]
4017#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4018impl StaticType for ContentFit {
4019 #[inline]
4020 #[doc(alias = "gtk_content_fit_get_type")]
4021 fn static_type() -> glib::Type {
4022 unsafe { from_glib(ffi::gtk_content_fit_get_type()) }
4023 }
4024}
4025
4026#[cfg(feature = "v4_8")]
4027#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4028impl glib::HasParamSpec for ContentFit {
4029 type ParamSpec = glib::ParamSpecEnum;
4030 type SetValue = Self;
4031 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4032
4033 fn param_spec_builder() -> Self::BuilderFn {
4034 Self::ParamSpec::builder_with_default
4035 }
4036}
4037
4038#[cfg(feature = "v4_8")]
4039#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4040impl glib::value::ValueType for ContentFit {
4041 type Type = Self;
4042}
4043
4044#[cfg(feature = "v4_8")]
4045#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4046unsafe impl<'a> glib::value::FromValue<'a> for ContentFit {
4047 type Checker = glib::value::GenericValueTypeChecker<Self>;
4048
4049 #[inline]
4050 unsafe fn from_value(value: &'a glib::Value) -> Self {
4051 skip_assert_initialized!();
4052 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
4053 }
4054}
4055
4056#[cfg(feature = "v4_8")]
4057#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4058impl ToValue for ContentFit {
4059 #[inline]
4060 fn to_value(&self) -> glib::Value {
4061 let mut value = glib::Value::for_value_type::<Self>();
4062 unsafe {
4063 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4064 }
4065 value
4066 }
4067
4068 #[inline]
4069 fn value_type(&self) -> glib::Type {
4070 Self::static_type()
4071 }
4072}
4073
4074#[cfg(feature = "v4_8")]
4075#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4076impl From<ContentFit> for glib::Value {
4077 #[inline]
4078 fn from(v: ContentFit) -> Self {
4079 skip_assert_initialized!();
4080 ToValue::to_value(&v)
4081 }
4082}
4083
4084#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4089#[non_exhaustive]
4090#[doc(alias = "GtkCornerType")]
4091pub enum CornerType {
4092 #[doc(alias = "GTK_CORNER_TOP_LEFT")]
4095 TopLeft,
4096 #[doc(alias = "GTK_CORNER_BOTTOM_LEFT")]
4099 BottomLeft,
4100 #[doc(alias = "GTK_CORNER_TOP_RIGHT")]
4103 TopRight,
4104 #[doc(alias = "GTK_CORNER_BOTTOM_RIGHT")]
4107 BottomRight,
4108 #[doc(hidden)]
4109 __Unknown(i32),
4110}
4111
4112#[doc(hidden)]
4113impl IntoGlib for CornerType {
4114 type GlibType = ffi::GtkCornerType;
4115
4116 #[inline]
4117 fn into_glib(self) -> ffi::GtkCornerType {
4118 match self {
4119 Self::TopLeft => ffi::GTK_CORNER_TOP_LEFT,
4120 Self::BottomLeft => ffi::GTK_CORNER_BOTTOM_LEFT,
4121 Self::TopRight => ffi::GTK_CORNER_TOP_RIGHT,
4122 Self::BottomRight => ffi::GTK_CORNER_BOTTOM_RIGHT,
4123 Self::__Unknown(value) => value,
4124 }
4125 }
4126}
4127
4128#[doc(hidden)]
4129impl FromGlib<ffi::GtkCornerType> for CornerType {
4130 #[inline]
4131 unsafe fn from_glib(value: ffi::GtkCornerType) -> Self {
4132 skip_assert_initialized!();
4133
4134 match value {
4135 ffi::GTK_CORNER_TOP_LEFT => Self::TopLeft,
4136 ffi::GTK_CORNER_BOTTOM_LEFT => Self::BottomLeft,
4137 ffi::GTK_CORNER_TOP_RIGHT => Self::TopRight,
4138 ffi::GTK_CORNER_BOTTOM_RIGHT => Self::BottomRight,
4139 value => Self::__Unknown(value),
4140 }
4141 }
4142}
4143
4144impl StaticType for CornerType {
4145 #[inline]
4146 #[doc(alias = "gtk_corner_type_get_type")]
4147 fn static_type() -> glib::Type {
4148 unsafe { from_glib(ffi::gtk_corner_type_get_type()) }
4149 }
4150}
4151
4152impl glib::HasParamSpec for CornerType {
4153 type ParamSpec = glib::ParamSpecEnum;
4154 type SetValue = Self;
4155 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4156
4157 fn param_spec_builder() -> Self::BuilderFn {
4158 Self::ParamSpec::builder_with_default
4159 }
4160}
4161
4162impl glib::value::ValueType for CornerType {
4163 type Type = Self;
4164}
4165
4166unsafe impl<'a> glib::value::FromValue<'a> for CornerType {
4167 type Checker = glib::value::GenericValueTypeChecker<Self>;
4168
4169 #[inline]
4170 unsafe fn from_value(value: &'a glib::Value) -> Self {
4171 skip_assert_initialized!();
4172 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
4173 }
4174}
4175
4176impl ToValue for CornerType {
4177 #[inline]
4178 fn to_value(&self) -> glib::Value {
4179 let mut value = glib::Value::for_value_type::<Self>();
4180 unsafe {
4181 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4182 }
4183 value
4184 }
4185
4186 #[inline]
4187 fn value_type(&self) -> glib::Type {
4188 Self::static_type()
4189 }
4190}
4191
4192impl From<CornerType> for glib::Value {
4193 #[inline]
4194 fn from(v: CornerType) -> Self {
4195 skip_assert_initialized!();
4196 ToValue::to_value(&v)
4197 }
4198}
4199
4200#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4205#[non_exhaustive]
4206#[doc(alias = "GtkCssParserError")]
4207pub enum CssParserError {
4208 #[doc(alias = "GTK_CSS_PARSER_ERROR_FAILED")]
4210 Failed,
4211 #[doc(alias = "GTK_CSS_PARSER_ERROR_SYNTAX")]
4213 Syntax,
4214 #[doc(alias = "GTK_CSS_PARSER_ERROR_IMPORT")]
4216 Import,
4217 #[doc(alias = "GTK_CSS_PARSER_ERROR_NAME")]
4219 Name,
4220 #[doc(alias = "GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE")]
4222 UnknownValue,
4223 #[doc(hidden)]
4224 __Unknown(i32),
4225}
4226
4227#[doc(hidden)]
4228impl IntoGlib for CssParserError {
4229 type GlibType = ffi::GtkCssParserError;
4230
4231 #[inline]
4232 fn into_glib(self) -> ffi::GtkCssParserError {
4233 match self {
4234 Self::Failed => ffi::GTK_CSS_PARSER_ERROR_FAILED,
4235 Self::Syntax => ffi::GTK_CSS_PARSER_ERROR_SYNTAX,
4236 Self::Import => ffi::GTK_CSS_PARSER_ERROR_IMPORT,
4237 Self::Name => ffi::GTK_CSS_PARSER_ERROR_NAME,
4238 Self::UnknownValue => ffi::GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE,
4239 Self::__Unknown(value) => value,
4240 }
4241 }
4242}
4243
4244#[doc(hidden)]
4245impl FromGlib<ffi::GtkCssParserError> for CssParserError {
4246 #[inline]
4247 unsafe fn from_glib(value: ffi::GtkCssParserError) -> Self {
4248 skip_assert_initialized!();
4249
4250 match value {
4251 ffi::GTK_CSS_PARSER_ERROR_FAILED => Self::Failed,
4252 ffi::GTK_CSS_PARSER_ERROR_SYNTAX => Self::Syntax,
4253 ffi::GTK_CSS_PARSER_ERROR_IMPORT => Self::Import,
4254 ffi::GTK_CSS_PARSER_ERROR_NAME => Self::Name,
4255 ffi::GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE => Self::UnknownValue,
4256 value => Self::__Unknown(value),
4257 }
4258 }
4259}
4260
4261impl glib::error::ErrorDomain for CssParserError {
4262 #[inline]
4263 fn domain() -> glib::Quark {
4264 skip_assert_initialized!();
4265
4266 unsafe { from_glib(ffi::gtk_css_parser_error_quark()) }
4267 }
4268
4269 #[inline]
4270 fn code(self) -> i32 {
4271 self.into_glib()
4272 }
4273
4274 #[inline]
4275 #[allow(clippy::match_single_binding)]
4276 fn from(code: i32) -> Option<Self> {
4277 skip_assert_initialized!();
4278 match unsafe { from_glib(code) } {
4279 Self::__Unknown(_) => Some(Self::Failed),
4280 value => Some(value),
4281 }
4282 }
4283}
4284
4285#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4290#[non_exhaustive]
4291#[doc(alias = "GtkCssParserWarning")]
4292pub enum CssParserWarning {
4293 #[doc(alias = "GTK_CSS_PARSER_WARNING_DEPRECATED")]
4296 Deprecated,
4297 #[doc(alias = "GTK_CSS_PARSER_WARNING_SYNTAX")]
4300 Syntax,
4301 #[doc(alias = "GTK_CSS_PARSER_WARNING_UNIMPLEMENTED")]
4303 Unimplemented,
4304 #[doc(hidden)]
4305 __Unknown(i32),
4306}
4307
4308#[doc(hidden)]
4309impl IntoGlib for CssParserWarning {
4310 type GlibType = ffi::GtkCssParserWarning;
4311
4312 #[inline]
4313 fn into_glib(self) -> ffi::GtkCssParserWarning {
4314 match self {
4315 Self::Deprecated => ffi::GTK_CSS_PARSER_WARNING_DEPRECATED,
4316 Self::Syntax => ffi::GTK_CSS_PARSER_WARNING_SYNTAX,
4317 Self::Unimplemented => ffi::GTK_CSS_PARSER_WARNING_UNIMPLEMENTED,
4318 Self::__Unknown(value) => value,
4319 }
4320 }
4321}
4322
4323#[doc(hidden)]
4324impl FromGlib<ffi::GtkCssParserWarning> for CssParserWarning {
4325 #[inline]
4326 unsafe fn from_glib(value: ffi::GtkCssParserWarning) -> Self {
4327 skip_assert_initialized!();
4328
4329 match value {
4330 ffi::GTK_CSS_PARSER_WARNING_DEPRECATED => Self::Deprecated,
4331 ffi::GTK_CSS_PARSER_WARNING_SYNTAX => Self::Syntax,
4332 ffi::GTK_CSS_PARSER_WARNING_UNIMPLEMENTED => Self::Unimplemented,
4333 value => Self::__Unknown(value),
4334 }
4335 }
4336}
4337
4338#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4340#[non_exhaustive]
4341#[doc(alias = "GtkDeleteType")]
4342pub enum DeleteType {
4343 #[doc(alias = "GTK_DELETE_CHARS")]
4345 Chars,
4346 #[doc(alias = "GTK_DELETE_WORD_ENDS")]
4349 WordEnds,
4350 #[doc(alias = "GTK_DELETE_WORDS")]
4352 Words,
4353 #[doc(alias = "GTK_DELETE_DISPLAY_LINES")]
4358 DisplayLines,
4359 #[doc(alias = "GTK_DELETE_DISPLAY_LINE_ENDS")]
4362 DisplayLineEnds,
4363 #[doc(alias = "GTK_DELETE_PARAGRAPH_ENDS")]
4366 ParagraphEnds,
4367 #[doc(alias = "GTK_DELETE_PARAGRAPHS")]
4369 Paragraphs,
4370 #[doc(alias = "GTK_DELETE_WHITESPACE")]
4372 Whitespace,
4373 #[doc(hidden)]
4374 __Unknown(i32),
4375}
4376
4377#[doc(hidden)]
4378impl IntoGlib for DeleteType {
4379 type GlibType = ffi::GtkDeleteType;
4380
4381 #[inline]
4382 fn into_glib(self) -> ffi::GtkDeleteType {
4383 match self {
4384 Self::Chars => ffi::GTK_DELETE_CHARS,
4385 Self::WordEnds => ffi::GTK_DELETE_WORD_ENDS,
4386 Self::Words => ffi::GTK_DELETE_WORDS,
4387 Self::DisplayLines => ffi::GTK_DELETE_DISPLAY_LINES,
4388 Self::DisplayLineEnds => ffi::GTK_DELETE_DISPLAY_LINE_ENDS,
4389 Self::ParagraphEnds => ffi::GTK_DELETE_PARAGRAPH_ENDS,
4390 Self::Paragraphs => ffi::GTK_DELETE_PARAGRAPHS,
4391 Self::Whitespace => ffi::GTK_DELETE_WHITESPACE,
4392 Self::__Unknown(value) => value,
4393 }
4394 }
4395}
4396
4397#[doc(hidden)]
4398impl FromGlib<ffi::GtkDeleteType> for DeleteType {
4399 #[inline]
4400 unsafe fn from_glib(value: ffi::GtkDeleteType) -> Self {
4401 skip_assert_initialized!();
4402
4403 match value {
4404 ffi::GTK_DELETE_CHARS => Self::Chars,
4405 ffi::GTK_DELETE_WORD_ENDS => Self::WordEnds,
4406 ffi::GTK_DELETE_WORDS => Self::Words,
4407 ffi::GTK_DELETE_DISPLAY_LINES => Self::DisplayLines,
4408 ffi::GTK_DELETE_DISPLAY_LINE_ENDS => Self::DisplayLineEnds,
4409 ffi::GTK_DELETE_PARAGRAPH_ENDS => Self::ParagraphEnds,
4410 ffi::GTK_DELETE_PARAGRAPHS => Self::Paragraphs,
4411 ffi::GTK_DELETE_WHITESPACE => Self::Whitespace,
4412 value => Self::__Unknown(value),
4413 }
4414 }
4415}
4416
4417impl StaticType for DeleteType {
4418 #[inline]
4419 #[doc(alias = "gtk_delete_type_get_type")]
4420 fn static_type() -> glib::Type {
4421 unsafe { from_glib(ffi::gtk_delete_type_get_type()) }
4422 }
4423}
4424
4425impl glib::HasParamSpec for DeleteType {
4426 type ParamSpec = glib::ParamSpecEnum;
4427 type SetValue = Self;
4428 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4429
4430 fn param_spec_builder() -> Self::BuilderFn {
4431 Self::ParamSpec::builder_with_default
4432 }
4433}
4434
4435impl glib::value::ValueType for DeleteType {
4436 type Type = Self;
4437}
4438
4439unsafe impl<'a> glib::value::FromValue<'a> for DeleteType {
4440 type Checker = glib::value::GenericValueTypeChecker<Self>;
4441
4442 #[inline]
4443 unsafe fn from_value(value: &'a glib::Value) -> Self {
4444 skip_assert_initialized!();
4445 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
4446 }
4447}
4448
4449impl ToValue for DeleteType {
4450 #[inline]
4451 fn to_value(&self) -> glib::Value {
4452 let mut value = glib::Value::for_value_type::<Self>();
4453 unsafe {
4454 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4455 }
4456 value
4457 }
4458
4459 #[inline]
4460 fn value_type(&self) -> glib::Type {
4461 Self::static_type()
4462 }
4463}
4464
4465impl From<DeleteType> for glib::Value {
4466 #[inline]
4467 fn from(v: DeleteType) -> Self {
4468 skip_assert_initialized!();
4469 ToValue::to_value(&v)
4470 }
4471}
4472
4473#[cfg(feature = "v4_10")]
4476#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4477#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4478#[non_exhaustive]
4479#[doc(alias = "GtkDialogError")]
4480pub enum DialogError {
4481 #[doc(alias = "GTK_DIALOG_ERROR_FAILED")]
4484 Failed,
4485 #[doc(alias = "GTK_DIALOG_ERROR_CANCELLED")]
4488 Cancelled,
4489 #[doc(alias = "GTK_DIALOG_ERROR_DISMISSED")]
4492 Dismissed,
4493 #[doc(hidden)]
4494 __Unknown(i32),
4495}
4496
4497#[cfg(feature = "v4_10")]
4498#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4499#[doc(hidden)]
4500impl IntoGlib for DialogError {
4501 type GlibType = ffi::GtkDialogError;
4502
4503 #[inline]
4504 fn into_glib(self) -> ffi::GtkDialogError {
4505 match self {
4506 Self::Failed => ffi::GTK_DIALOG_ERROR_FAILED,
4507 Self::Cancelled => ffi::GTK_DIALOG_ERROR_CANCELLED,
4508 Self::Dismissed => ffi::GTK_DIALOG_ERROR_DISMISSED,
4509 Self::__Unknown(value) => value,
4510 }
4511 }
4512}
4513
4514#[cfg(feature = "v4_10")]
4515#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4516#[doc(hidden)]
4517impl FromGlib<ffi::GtkDialogError> for DialogError {
4518 #[inline]
4519 unsafe fn from_glib(value: ffi::GtkDialogError) -> Self {
4520 skip_assert_initialized!();
4521
4522 match value {
4523 ffi::GTK_DIALOG_ERROR_FAILED => Self::Failed,
4524 ffi::GTK_DIALOG_ERROR_CANCELLED => Self::Cancelled,
4525 ffi::GTK_DIALOG_ERROR_DISMISSED => Self::Dismissed,
4526 value => Self::__Unknown(value),
4527 }
4528 }
4529}
4530
4531#[cfg(feature = "v4_10")]
4532#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4533impl glib::error::ErrorDomain for DialogError {
4534 #[inline]
4535 fn domain() -> glib::Quark {
4536 skip_assert_initialized!();
4537
4538 unsafe { from_glib(ffi::gtk_dialog_error_quark()) }
4539 }
4540
4541 #[inline]
4542 fn code(self) -> i32 {
4543 self.into_glib()
4544 }
4545
4546 #[inline]
4547 #[allow(clippy::match_single_binding)]
4548 fn from(code: i32) -> Option<Self> {
4549 skip_assert_initialized!();
4550 match unsafe { from_glib(code) } {
4551 Self::__Unknown(_) => Some(Self::Failed),
4552 value => Some(value),
4553 }
4554 }
4555}
4556
4557#[cfg(feature = "v4_10")]
4558#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4559impl StaticType for DialogError {
4560 #[inline]
4561 #[doc(alias = "gtk_dialog_error_get_type")]
4562 fn static_type() -> glib::Type {
4563 unsafe { from_glib(ffi::gtk_dialog_error_get_type()) }
4564 }
4565}
4566
4567#[cfg(feature = "v4_10")]
4568#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4569impl glib::HasParamSpec for DialogError {
4570 type ParamSpec = glib::ParamSpecEnum;
4571 type SetValue = Self;
4572 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4573
4574 fn param_spec_builder() -> Self::BuilderFn {
4575 Self::ParamSpec::builder_with_default
4576 }
4577}
4578
4579#[cfg(feature = "v4_10")]
4580#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4581impl glib::value::ValueType for DialogError {
4582 type Type = Self;
4583}
4584
4585#[cfg(feature = "v4_10")]
4586#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4587unsafe impl<'a> glib::value::FromValue<'a> for DialogError {
4588 type Checker = glib::value::GenericValueTypeChecker<Self>;
4589
4590 #[inline]
4591 unsafe fn from_value(value: &'a glib::Value) -> Self {
4592 skip_assert_initialized!();
4593 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
4594 }
4595}
4596
4597#[cfg(feature = "v4_10")]
4598#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4599impl ToValue for DialogError {
4600 #[inline]
4601 fn to_value(&self) -> glib::Value {
4602 let mut value = glib::Value::for_value_type::<Self>();
4603 unsafe {
4604 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4605 }
4606 value
4607 }
4608
4609 #[inline]
4610 fn value_type(&self) -> glib::Type {
4611 Self::static_type()
4612 }
4613}
4614
4615#[cfg(feature = "v4_10")]
4616#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4617impl From<DialogError> for glib::Value {
4618 #[inline]
4619 fn from(v: DialogError) -> Self {
4620 skip_assert_initialized!();
4621 ToValue::to_value(&v)
4622 }
4623}
4624
4625#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4627#[non_exhaustive]
4628#[doc(alias = "GtkDirectionType")]
4629pub enum DirectionType {
4630 #[doc(alias = "GTK_DIR_TAB_FORWARD")]
4632 TabForward,
4633 #[doc(alias = "GTK_DIR_TAB_BACKWARD")]
4635 TabBackward,
4636 #[doc(alias = "GTK_DIR_UP")]
4638 Up,
4639 #[doc(alias = "GTK_DIR_DOWN")]
4641 Down,
4642 #[doc(alias = "GTK_DIR_LEFT")]
4644 Left,
4645 #[doc(alias = "GTK_DIR_RIGHT")]
4647 Right,
4648 #[doc(hidden)]
4649 __Unknown(i32),
4650}
4651
4652#[doc(hidden)]
4653impl IntoGlib for DirectionType {
4654 type GlibType = ffi::GtkDirectionType;
4655
4656 #[inline]
4657 fn into_glib(self) -> ffi::GtkDirectionType {
4658 match self {
4659 Self::TabForward => ffi::GTK_DIR_TAB_FORWARD,
4660 Self::TabBackward => ffi::GTK_DIR_TAB_BACKWARD,
4661 Self::Up => ffi::GTK_DIR_UP,
4662 Self::Down => ffi::GTK_DIR_DOWN,
4663 Self::Left => ffi::GTK_DIR_LEFT,
4664 Self::Right => ffi::GTK_DIR_RIGHT,
4665 Self::__Unknown(value) => value,
4666 }
4667 }
4668}
4669
4670#[doc(hidden)]
4671impl FromGlib<ffi::GtkDirectionType> for DirectionType {
4672 #[inline]
4673 unsafe fn from_glib(value: ffi::GtkDirectionType) -> Self {
4674 skip_assert_initialized!();
4675
4676 match value {
4677 ffi::GTK_DIR_TAB_FORWARD => Self::TabForward,
4678 ffi::GTK_DIR_TAB_BACKWARD => Self::TabBackward,
4679 ffi::GTK_DIR_UP => Self::Up,
4680 ffi::GTK_DIR_DOWN => Self::Down,
4681 ffi::GTK_DIR_LEFT => Self::Left,
4682 ffi::GTK_DIR_RIGHT => Self::Right,
4683 value => Self::__Unknown(value),
4684 }
4685 }
4686}
4687
4688impl StaticType for DirectionType {
4689 #[inline]
4690 #[doc(alias = "gtk_direction_type_get_type")]
4691 fn static_type() -> glib::Type {
4692 unsafe { from_glib(ffi::gtk_direction_type_get_type()) }
4693 }
4694}
4695
4696impl glib::HasParamSpec for DirectionType {
4697 type ParamSpec = glib::ParamSpecEnum;
4698 type SetValue = Self;
4699 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4700
4701 fn param_spec_builder() -> Self::BuilderFn {
4702 Self::ParamSpec::builder_with_default
4703 }
4704}
4705
4706impl glib::value::ValueType for DirectionType {
4707 type Type = Self;
4708}
4709
4710unsafe impl<'a> glib::value::FromValue<'a> for DirectionType {
4711 type Checker = glib::value::GenericValueTypeChecker<Self>;
4712
4713 #[inline]
4714 unsafe fn from_value(value: &'a glib::Value) -> Self {
4715 skip_assert_initialized!();
4716 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
4717 }
4718}
4719
4720impl ToValue for DirectionType {
4721 #[inline]
4722 fn to_value(&self) -> glib::Value {
4723 let mut value = glib::Value::for_value_type::<Self>();
4724 unsafe {
4725 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4726 }
4727 value
4728 }
4729
4730 #[inline]
4731 fn value_type(&self) -> glib::Type {
4732 Self::static_type()
4733 }
4734}
4735
4736impl From<DirectionType> for glib::Value {
4737 #[inline]
4738 fn from(v: DirectionType) -> Self {
4739 skip_assert_initialized!();
4740 ToValue::to_value(&v)
4741 }
4742}
4743
4744#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4749#[non_exhaustive]
4750#[doc(alias = "GtkEditableProperties")]
4751pub enum EditableProperties {
4752 #[doc(alias = "GTK_EDITABLE_PROP_TEXT")]
4754 PropText,
4755 #[doc(alias = "GTK_EDITABLE_PROP_CURSOR_POSITION")]
4757 PropCursorPosition,
4758 #[doc(alias = "GTK_EDITABLE_PROP_SELECTION_BOUND")]
4760 PropSelectionBound,
4761 #[doc(alias = "GTK_EDITABLE_PROP_EDITABLE")]
4763 PropEditable,
4764 #[doc(alias = "GTK_EDITABLE_PROP_WIDTH_CHARS")]
4766 PropWidthChars,
4767 #[doc(alias = "GTK_EDITABLE_PROP_MAX_WIDTH_CHARS")]
4769 PropMaxWidthChars,
4770 #[doc(alias = "GTK_EDITABLE_PROP_XALIGN")]
4772 PropXalign,
4773 #[doc(alias = "GTK_EDITABLE_PROP_ENABLE_UNDO")]
4775 PropEnableUndo,
4776 #[doc(alias = "GTK_EDITABLE_NUM_PROPERTIES")]
4778 NumProperties,
4779 #[doc(hidden)]
4780 __Unknown(i32),
4781}
4782
4783#[doc(hidden)]
4784impl IntoGlib for EditableProperties {
4785 type GlibType = ffi::GtkEditableProperties;
4786
4787 #[inline]
4788 fn into_glib(self) -> ffi::GtkEditableProperties {
4789 match self {
4790 Self::PropText => ffi::GTK_EDITABLE_PROP_TEXT,
4791 Self::PropCursorPosition => ffi::GTK_EDITABLE_PROP_CURSOR_POSITION,
4792 Self::PropSelectionBound => ffi::GTK_EDITABLE_PROP_SELECTION_BOUND,
4793 Self::PropEditable => ffi::GTK_EDITABLE_PROP_EDITABLE,
4794 Self::PropWidthChars => ffi::GTK_EDITABLE_PROP_WIDTH_CHARS,
4795 Self::PropMaxWidthChars => ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS,
4796 Self::PropXalign => ffi::GTK_EDITABLE_PROP_XALIGN,
4797 Self::PropEnableUndo => ffi::GTK_EDITABLE_PROP_ENABLE_UNDO,
4798 Self::NumProperties => ffi::GTK_EDITABLE_NUM_PROPERTIES,
4799 Self::__Unknown(value) => value,
4800 }
4801 }
4802}
4803
4804#[doc(hidden)]
4805impl FromGlib<ffi::GtkEditableProperties> for EditableProperties {
4806 #[inline]
4807 unsafe fn from_glib(value: ffi::GtkEditableProperties) -> Self {
4808 skip_assert_initialized!();
4809
4810 match value {
4811 ffi::GTK_EDITABLE_PROP_TEXT => Self::PropText,
4812 ffi::GTK_EDITABLE_PROP_CURSOR_POSITION => Self::PropCursorPosition,
4813 ffi::GTK_EDITABLE_PROP_SELECTION_BOUND => Self::PropSelectionBound,
4814 ffi::GTK_EDITABLE_PROP_EDITABLE => Self::PropEditable,
4815 ffi::GTK_EDITABLE_PROP_WIDTH_CHARS => Self::PropWidthChars,
4816 ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS => Self::PropMaxWidthChars,
4817 ffi::GTK_EDITABLE_PROP_XALIGN => Self::PropXalign,
4818 ffi::GTK_EDITABLE_PROP_ENABLE_UNDO => Self::PropEnableUndo,
4819 ffi::GTK_EDITABLE_NUM_PROPERTIES => Self::NumProperties,
4820 value => Self::__Unknown(value),
4821 }
4822 }
4823}
4824
4825impl StaticType for EditableProperties {
4826 #[inline]
4827 #[doc(alias = "gtk_editable_properties_get_type")]
4828 fn static_type() -> glib::Type {
4829 unsafe { from_glib(ffi::gtk_editable_properties_get_type()) }
4830 }
4831}
4832
4833impl glib::HasParamSpec for EditableProperties {
4834 type ParamSpec = glib::ParamSpecEnum;
4835 type SetValue = Self;
4836 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4837
4838 fn param_spec_builder() -> Self::BuilderFn {
4839 Self::ParamSpec::builder_with_default
4840 }
4841}
4842
4843impl glib::value::ValueType for EditableProperties {
4844 type Type = Self;
4845}
4846
4847unsafe impl<'a> glib::value::FromValue<'a> for EditableProperties {
4848 type Checker = glib::value::GenericValueTypeChecker<Self>;
4849
4850 #[inline]
4851 unsafe fn from_value(value: &'a glib::Value) -> Self {
4852 skip_assert_initialized!();
4853 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
4854 }
4855}
4856
4857impl ToValue for EditableProperties {
4858 #[inline]
4859 fn to_value(&self) -> glib::Value {
4860 let mut value = glib::Value::for_value_type::<Self>();
4861 unsafe {
4862 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4863 }
4864 value
4865 }
4866
4867 #[inline]
4868 fn value_type(&self) -> glib::Type {
4869 Self::static_type()
4870 }
4871}
4872
4873impl From<EditableProperties> for glib::Value {
4874 #[inline]
4875 fn from(v: EditableProperties) -> Self {
4876 skip_assert_initialized!();
4877 ToValue::to_value(&v)
4878 }
4879}
4880
4881#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4883#[non_exhaustive]
4884#[doc(alias = "GtkEntryIconPosition")]
4885pub enum EntryIconPosition {
4886 #[doc(alias = "GTK_ENTRY_ICON_PRIMARY")]
4888 Primary,
4889 #[doc(alias = "GTK_ENTRY_ICON_SECONDARY")]
4891 Secondary,
4892 #[doc(hidden)]
4893 __Unknown(i32),
4894}
4895
4896#[doc(hidden)]
4897impl IntoGlib for EntryIconPosition {
4898 type GlibType = ffi::GtkEntryIconPosition;
4899
4900 #[inline]
4901 fn into_glib(self) -> ffi::GtkEntryIconPosition {
4902 match self {
4903 Self::Primary => ffi::GTK_ENTRY_ICON_PRIMARY,
4904 Self::Secondary => ffi::GTK_ENTRY_ICON_SECONDARY,
4905 Self::__Unknown(value) => value,
4906 }
4907 }
4908}
4909
4910#[doc(hidden)]
4911impl FromGlib<ffi::GtkEntryIconPosition> for EntryIconPosition {
4912 #[inline]
4913 unsafe fn from_glib(value: ffi::GtkEntryIconPosition) -> Self {
4914 skip_assert_initialized!();
4915
4916 match value {
4917 ffi::GTK_ENTRY_ICON_PRIMARY => Self::Primary,
4918 ffi::GTK_ENTRY_ICON_SECONDARY => Self::Secondary,
4919 value => Self::__Unknown(value),
4920 }
4921 }
4922}
4923
4924impl StaticType for EntryIconPosition {
4925 #[inline]
4926 #[doc(alias = "gtk_entry_icon_position_get_type")]
4927 fn static_type() -> glib::Type {
4928 unsafe { from_glib(ffi::gtk_entry_icon_position_get_type()) }
4929 }
4930}
4931
4932impl glib::HasParamSpec for EntryIconPosition {
4933 type ParamSpec = glib::ParamSpecEnum;
4934 type SetValue = Self;
4935 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4936
4937 fn param_spec_builder() -> Self::BuilderFn {
4938 Self::ParamSpec::builder_with_default
4939 }
4940}
4941
4942impl glib::value::ValueType for EntryIconPosition {
4943 type Type = Self;
4944}
4945
4946unsafe impl<'a> glib::value::FromValue<'a> for EntryIconPosition {
4947 type Checker = glib::value::GenericValueTypeChecker<Self>;
4948
4949 #[inline]
4950 unsafe fn from_value(value: &'a glib::Value) -> Self {
4951 skip_assert_initialized!();
4952 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
4953 }
4954}
4955
4956impl ToValue for EntryIconPosition {
4957 #[inline]
4958 fn to_value(&self) -> glib::Value {
4959 let mut value = glib::Value::for_value_type::<Self>();
4960 unsafe {
4961 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4962 }
4963 value
4964 }
4965
4966 #[inline]
4967 fn value_type(&self) -> glib::Type {
4968 Self::static_type()
4969 }
4970}
4971
4972impl From<EntryIconPosition> for glib::Value {
4973 #[inline]
4974 fn from(v: EntryIconPosition) -> Self {
4975 skip_assert_initialized!();
4976 ToValue::to_value(&v)
4977 }
4978}
4979
4980#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4982#[non_exhaustive]
4983#[doc(alias = "GtkEventSequenceState")]
4984pub enum EventSequenceState {
4985 #[doc(alias = "GTK_EVENT_SEQUENCE_NONE")]
4987 None,
4988 #[doc(alias = "GTK_EVENT_SEQUENCE_CLAIMED")]
4990 Claimed,
4991 #[doc(alias = "GTK_EVENT_SEQUENCE_DENIED")]
4993 Denied,
4994 #[doc(hidden)]
4995 __Unknown(i32),
4996}
4997
4998#[doc(hidden)]
4999impl IntoGlib for EventSequenceState {
5000 type GlibType = ffi::GtkEventSequenceState;
5001
5002 #[inline]
5003 fn into_glib(self) -> ffi::GtkEventSequenceState {
5004 match self {
5005 Self::None => ffi::GTK_EVENT_SEQUENCE_NONE,
5006 Self::Claimed => ffi::GTK_EVENT_SEQUENCE_CLAIMED,
5007 Self::Denied => ffi::GTK_EVENT_SEQUENCE_DENIED,
5008 Self::__Unknown(value) => value,
5009 }
5010 }
5011}
5012
5013#[doc(hidden)]
5014impl FromGlib<ffi::GtkEventSequenceState> for EventSequenceState {
5015 #[inline]
5016 unsafe fn from_glib(value: ffi::GtkEventSequenceState) -> Self {
5017 skip_assert_initialized!();
5018
5019 match value {
5020 ffi::GTK_EVENT_SEQUENCE_NONE => Self::None,
5021 ffi::GTK_EVENT_SEQUENCE_CLAIMED => Self::Claimed,
5022 ffi::GTK_EVENT_SEQUENCE_DENIED => Self::Denied,
5023 value => Self::__Unknown(value),
5024 }
5025 }
5026}
5027
5028impl StaticType for EventSequenceState {
5029 #[inline]
5030 #[doc(alias = "gtk_event_sequence_state_get_type")]
5031 fn static_type() -> glib::Type {
5032 unsafe { from_glib(ffi::gtk_event_sequence_state_get_type()) }
5033 }
5034}
5035
5036impl glib::HasParamSpec for EventSequenceState {
5037 type ParamSpec = glib::ParamSpecEnum;
5038 type SetValue = Self;
5039 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5040
5041 fn param_spec_builder() -> Self::BuilderFn {
5042 Self::ParamSpec::builder_with_default
5043 }
5044}
5045
5046impl glib::value::ValueType for EventSequenceState {
5047 type Type = Self;
5048}
5049
5050unsafe impl<'a> glib::value::FromValue<'a> for EventSequenceState {
5051 type Checker = glib::value::GenericValueTypeChecker<Self>;
5052
5053 #[inline]
5054 unsafe fn from_value(value: &'a glib::Value) -> Self {
5055 skip_assert_initialized!();
5056 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5057 }
5058}
5059
5060impl ToValue for EventSequenceState {
5061 #[inline]
5062 fn to_value(&self) -> glib::Value {
5063 let mut value = glib::Value::for_value_type::<Self>();
5064 unsafe {
5065 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5066 }
5067 value
5068 }
5069
5070 #[inline]
5071 fn value_type(&self) -> glib::Type {
5072 Self::static_type()
5073 }
5074}
5075
5076impl From<EventSequenceState> for glib::Value {
5077 #[inline]
5078 fn from(v: EventSequenceState) -> Self {
5079 skip_assert_initialized!();
5080 ToValue::to_value(&v)
5081 }
5082}
5083
5084#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5087#[non_exhaustive]
5088#[doc(alias = "GtkFileChooserAction")]
5089pub enum FileChooserAction {
5090 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_OPEN")]
5093 Open,
5094 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SAVE")]
5098 Save,
5099 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER")]
5103 SelectFolder,
5104 #[doc(hidden)]
5105 __Unknown(i32),
5106}
5107
5108#[doc(hidden)]
5109impl IntoGlib for FileChooserAction {
5110 type GlibType = ffi::GtkFileChooserAction;
5111
5112 #[inline]
5113 fn into_glib(self) -> ffi::GtkFileChooserAction {
5114 match self {
5115 Self::Open => ffi::GTK_FILE_CHOOSER_ACTION_OPEN,
5116 Self::Save => ffi::GTK_FILE_CHOOSER_ACTION_SAVE,
5117 Self::SelectFolder => ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
5118 Self::__Unknown(value) => value,
5119 }
5120 }
5121}
5122
5123#[doc(hidden)]
5124impl FromGlib<ffi::GtkFileChooserAction> for FileChooserAction {
5125 #[inline]
5126 unsafe fn from_glib(value: ffi::GtkFileChooserAction) -> Self {
5127 skip_assert_initialized!();
5128
5129 match value {
5130 ffi::GTK_FILE_CHOOSER_ACTION_OPEN => Self::Open,
5131 ffi::GTK_FILE_CHOOSER_ACTION_SAVE => Self::Save,
5132 ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER => Self::SelectFolder,
5133 value => Self::__Unknown(value),
5134 }
5135 }
5136}
5137
5138impl StaticType for FileChooserAction {
5139 #[inline]
5140 #[doc(alias = "gtk_file_chooser_action_get_type")]
5141 fn static_type() -> glib::Type {
5142 unsafe { from_glib(ffi::gtk_file_chooser_action_get_type()) }
5143 }
5144}
5145
5146impl glib::HasParamSpec for FileChooserAction {
5147 type ParamSpec = glib::ParamSpecEnum;
5148 type SetValue = Self;
5149 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5150
5151 fn param_spec_builder() -> Self::BuilderFn {
5152 Self::ParamSpec::builder_with_default
5153 }
5154}
5155
5156impl glib::value::ValueType for FileChooserAction {
5157 type Type = Self;
5158}
5159
5160unsafe impl<'a> glib::value::FromValue<'a> for FileChooserAction {
5161 type Checker = glib::value::GenericValueTypeChecker<Self>;
5162
5163 #[inline]
5164 unsafe fn from_value(value: &'a glib::Value) -> Self {
5165 skip_assert_initialized!();
5166 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5167 }
5168}
5169
5170impl ToValue for FileChooserAction {
5171 #[inline]
5172 fn to_value(&self) -> glib::Value {
5173 let mut value = glib::Value::for_value_type::<Self>();
5174 unsafe {
5175 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5176 }
5177 value
5178 }
5179
5180 #[inline]
5181 fn value_type(&self) -> glib::Type {
5182 Self::static_type()
5183 }
5184}
5185
5186impl From<FileChooserAction> for glib::Value {
5187 #[inline]
5188 fn from(v: FileChooserAction) -> Self {
5189 skip_assert_initialized!();
5190 ToValue::to_value(&v)
5191 }
5192}
5193
5194#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
5201#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5202#[non_exhaustive]
5203#[doc(alias = "GtkFileChooserError")]
5204pub enum FileChooserError {
5205 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_NONEXISTENT")]
5207 Nonexistent,
5208 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_BAD_FILENAME")]
5210 BadFilename,
5211 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS")]
5214 AlreadyExists,
5215 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME")]
5218 IncompleteHostname,
5219 #[doc(hidden)]
5220 __Unknown(i32),
5221}
5222
5223#[allow(deprecated)]
5224#[doc(hidden)]
5225impl IntoGlib for FileChooserError {
5226 type GlibType = ffi::GtkFileChooserError;
5227
5228 #[inline]
5229 fn into_glib(self) -> ffi::GtkFileChooserError {
5230 match self {
5231 Self::Nonexistent => ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT,
5232 Self::BadFilename => ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME,
5233 Self::AlreadyExists => ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS,
5234 Self::IncompleteHostname => ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME,
5235 Self::__Unknown(value) => value,
5236 }
5237 }
5238}
5239
5240#[allow(deprecated)]
5241#[doc(hidden)]
5242impl FromGlib<ffi::GtkFileChooserError> for FileChooserError {
5243 #[inline]
5244 unsafe fn from_glib(value: ffi::GtkFileChooserError) -> Self {
5245 skip_assert_initialized!();
5246
5247 match value {
5248 ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT => Self::Nonexistent,
5249 ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME => Self::BadFilename,
5250 ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS => Self::AlreadyExists,
5251 ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME => Self::IncompleteHostname,
5252 value => Self::__Unknown(value),
5253 }
5254 }
5255}
5256
5257#[allow(deprecated)]
5258impl glib::error::ErrorDomain for FileChooserError {
5259 #[inline]
5260 fn domain() -> glib::Quark {
5261 skip_assert_initialized!();
5262
5263 unsafe { from_glib(ffi::gtk_file_chooser_error_quark()) }
5264 }
5265
5266 #[inline]
5267 fn code(self) -> i32 {
5268 self.into_glib()
5269 }
5270
5271 #[inline]
5272 #[allow(clippy::match_single_binding)]
5273 fn from(code: i32) -> Option<Self> {
5274 skip_assert_initialized!();
5275 match unsafe { from_glib(code) } {
5276 value => Some(value),
5277 }
5278 }
5279}
5280
5281#[allow(deprecated)]
5282impl StaticType for FileChooserError {
5283 #[inline]
5284 #[doc(alias = "gtk_file_chooser_error_get_type")]
5285 fn static_type() -> glib::Type {
5286 unsafe { from_glib(ffi::gtk_file_chooser_error_get_type()) }
5287 }
5288}
5289
5290#[allow(deprecated)]
5291impl glib::HasParamSpec for FileChooserError {
5292 type ParamSpec = glib::ParamSpecEnum;
5293 type SetValue = Self;
5294 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5295
5296 fn param_spec_builder() -> Self::BuilderFn {
5297 Self::ParamSpec::builder_with_default
5298 }
5299}
5300
5301#[allow(deprecated)]
5302impl glib::value::ValueType for FileChooserError {
5303 type Type = Self;
5304}
5305
5306#[allow(deprecated)]
5307unsafe impl<'a> glib::value::FromValue<'a> for FileChooserError {
5308 type Checker = glib::value::GenericValueTypeChecker<Self>;
5309
5310 #[inline]
5311 unsafe fn from_value(value: &'a glib::Value) -> Self {
5312 skip_assert_initialized!();
5313 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5314 }
5315}
5316
5317#[allow(deprecated)]
5318impl ToValue for FileChooserError {
5319 #[inline]
5320 fn to_value(&self) -> glib::Value {
5321 let mut value = glib::Value::for_value_type::<Self>();
5322 unsafe {
5323 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5324 }
5325 value
5326 }
5327
5328 #[inline]
5329 fn value_type(&self) -> glib::Type {
5330 Self::static_type()
5331 }
5332}
5333
5334#[allow(deprecated)]
5335impl From<FileChooserError> for glib::Value {
5336 #[inline]
5337 fn from(v: FileChooserError) -> Self {
5338 skip_assert_initialized!();
5339 ToValue::to_value(&v)
5340 }
5341}
5342
5343#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5352#[non_exhaustive]
5353#[doc(alias = "GtkFilterChange")]
5354pub enum FilterChange {
5355 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT")]
5358 Different,
5359 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT")]
5363 LessStrict,
5364 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT")]
5368 MoreStrict,
5369 #[cfg(feature = "v4_20")]
5374 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5375 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT_REWATCH")]
5376 DifferentRewatch,
5377 #[cfg(feature = "v4_20")]
5382 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5383 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT_REWATCH")]
5384 LessStrictRewatch,
5385 #[cfg(feature = "v4_20")]
5390 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5391 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT_REWATCH")]
5392 MoreStrictRewatch,
5393 #[doc(hidden)]
5394 __Unknown(i32),
5395}
5396
5397#[doc(hidden)]
5398impl IntoGlib for FilterChange {
5399 type GlibType = ffi::GtkFilterChange;
5400
5401 #[inline]
5402 fn into_glib(self) -> ffi::GtkFilterChange {
5403 match self {
5404 Self::Different => ffi::GTK_FILTER_CHANGE_DIFFERENT,
5405 Self::LessStrict => ffi::GTK_FILTER_CHANGE_LESS_STRICT,
5406 Self::MoreStrict => ffi::GTK_FILTER_CHANGE_MORE_STRICT,
5407 #[cfg(feature = "v4_20")]
5408 Self::DifferentRewatch => ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH,
5409 #[cfg(feature = "v4_20")]
5410 Self::LessStrictRewatch => ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH,
5411 #[cfg(feature = "v4_20")]
5412 Self::MoreStrictRewatch => ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH,
5413 Self::__Unknown(value) => value,
5414 }
5415 }
5416}
5417
5418#[doc(hidden)]
5419impl FromGlib<ffi::GtkFilterChange> for FilterChange {
5420 #[inline]
5421 unsafe fn from_glib(value: ffi::GtkFilterChange) -> Self {
5422 skip_assert_initialized!();
5423
5424 match value {
5425 ffi::GTK_FILTER_CHANGE_DIFFERENT => Self::Different,
5426 ffi::GTK_FILTER_CHANGE_LESS_STRICT => Self::LessStrict,
5427 ffi::GTK_FILTER_CHANGE_MORE_STRICT => Self::MoreStrict,
5428 #[cfg(feature = "v4_20")]
5429 ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH => Self::DifferentRewatch,
5430 #[cfg(feature = "v4_20")]
5431 ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH => Self::LessStrictRewatch,
5432 #[cfg(feature = "v4_20")]
5433 ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH => Self::MoreStrictRewatch,
5434 value => Self::__Unknown(value),
5435 }
5436 }
5437}
5438
5439impl StaticType for FilterChange {
5440 #[inline]
5441 #[doc(alias = "gtk_filter_change_get_type")]
5442 fn static_type() -> glib::Type {
5443 unsafe { from_glib(ffi::gtk_filter_change_get_type()) }
5444 }
5445}
5446
5447impl glib::HasParamSpec for FilterChange {
5448 type ParamSpec = glib::ParamSpecEnum;
5449 type SetValue = Self;
5450 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5451
5452 fn param_spec_builder() -> Self::BuilderFn {
5453 Self::ParamSpec::builder_with_default
5454 }
5455}
5456
5457impl glib::value::ValueType for FilterChange {
5458 type Type = Self;
5459}
5460
5461unsafe impl<'a> glib::value::FromValue<'a> for FilterChange {
5462 type Checker = glib::value::GenericValueTypeChecker<Self>;
5463
5464 #[inline]
5465 unsafe fn from_value(value: &'a glib::Value) -> Self {
5466 skip_assert_initialized!();
5467 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5468 }
5469}
5470
5471impl ToValue for FilterChange {
5472 #[inline]
5473 fn to_value(&self) -> glib::Value {
5474 let mut value = glib::Value::for_value_type::<Self>();
5475 unsafe {
5476 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5477 }
5478 value
5479 }
5480
5481 #[inline]
5482 fn value_type(&self) -> glib::Type {
5483 Self::static_type()
5484 }
5485}
5486
5487impl From<FilterChange> for glib::Value {
5488 #[inline]
5489 fn from(v: FilterChange) -> Self {
5490 skip_assert_initialized!();
5491 ToValue::to_value(&v)
5492 }
5493}
5494
5495#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5501#[non_exhaustive]
5502#[doc(alias = "GtkFilterMatch")]
5503pub enum FilterMatch {
5504 #[doc(alias = "GTK_FILTER_MATCH_SOME")]
5507 Some,
5508 #[doc(alias = "GTK_FILTER_MATCH_NONE")]
5511 None,
5512 #[doc(alias = "GTK_FILTER_MATCH_ALL")]
5515 All,
5516 #[doc(hidden)]
5517 __Unknown(i32),
5518}
5519
5520#[doc(hidden)]
5521impl IntoGlib for FilterMatch {
5522 type GlibType = ffi::GtkFilterMatch;
5523
5524 #[inline]
5525 fn into_glib(self) -> ffi::GtkFilterMatch {
5526 match self {
5527 Self::Some => ffi::GTK_FILTER_MATCH_SOME,
5528 Self::None => ffi::GTK_FILTER_MATCH_NONE,
5529 Self::All => ffi::GTK_FILTER_MATCH_ALL,
5530 Self::__Unknown(value) => value,
5531 }
5532 }
5533}
5534
5535#[doc(hidden)]
5536impl FromGlib<ffi::GtkFilterMatch> for FilterMatch {
5537 #[inline]
5538 unsafe fn from_glib(value: ffi::GtkFilterMatch) -> Self {
5539 skip_assert_initialized!();
5540
5541 match value {
5542 ffi::GTK_FILTER_MATCH_SOME => Self::Some,
5543 ffi::GTK_FILTER_MATCH_NONE => Self::None,
5544 ffi::GTK_FILTER_MATCH_ALL => Self::All,
5545 value => Self::__Unknown(value),
5546 }
5547 }
5548}
5549
5550impl StaticType for FilterMatch {
5551 #[inline]
5552 #[doc(alias = "gtk_filter_match_get_type")]
5553 fn static_type() -> glib::Type {
5554 unsafe { from_glib(ffi::gtk_filter_match_get_type()) }
5555 }
5556}
5557
5558impl glib::HasParamSpec for FilterMatch {
5559 type ParamSpec = glib::ParamSpecEnum;
5560 type SetValue = Self;
5561 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5562
5563 fn param_spec_builder() -> Self::BuilderFn {
5564 Self::ParamSpec::builder_with_default
5565 }
5566}
5567
5568impl glib::value::ValueType for FilterMatch {
5569 type Type = Self;
5570}
5571
5572unsafe impl<'a> glib::value::FromValue<'a> for FilterMatch {
5573 type Checker = glib::value::GenericValueTypeChecker<Self>;
5574
5575 #[inline]
5576 unsafe fn from_value(value: &'a glib::Value) -> Self {
5577 skip_assert_initialized!();
5578 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5579 }
5580}
5581
5582impl ToValue for FilterMatch {
5583 #[inline]
5584 fn to_value(&self) -> glib::Value {
5585 let mut value = glib::Value::for_value_type::<Self>();
5586 unsafe {
5587 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5588 }
5589 value
5590 }
5591
5592 #[inline]
5593 fn value_type(&self) -> glib::Type {
5594 Self::static_type()
5595 }
5596}
5597
5598impl From<FilterMatch> for glib::Value {
5599 #[inline]
5600 fn from(v: FilterMatch) -> Self {
5601 skip_assert_initialized!();
5602 ToValue::to_value(&v)
5603 }
5604}
5605
5606#[cfg(feature = "v4_10")]
5612#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5613#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5614#[non_exhaustive]
5615#[doc(alias = "GtkFontLevel")]
5616pub enum FontLevel {
5617 #[doc(alias = "GTK_FONT_LEVEL_FAMILY")]
5619 Family,
5620 #[doc(alias = "GTK_FONT_LEVEL_FACE")]
5622 Face,
5623 #[doc(alias = "GTK_FONT_LEVEL_FONT")]
5625 Font,
5626 #[doc(alias = "GTK_FONT_LEVEL_FEATURES")]
5628 Features,
5629 #[doc(hidden)]
5630 __Unknown(i32),
5631}
5632
5633#[cfg(feature = "v4_10")]
5634#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5635#[doc(hidden)]
5636impl IntoGlib for FontLevel {
5637 type GlibType = ffi::GtkFontLevel;
5638
5639 #[inline]
5640 fn into_glib(self) -> ffi::GtkFontLevel {
5641 match self {
5642 Self::Family => ffi::GTK_FONT_LEVEL_FAMILY,
5643 Self::Face => ffi::GTK_FONT_LEVEL_FACE,
5644 Self::Font => ffi::GTK_FONT_LEVEL_FONT,
5645 Self::Features => ffi::GTK_FONT_LEVEL_FEATURES,
5646 Self::__Unknown(value) => value,
5647 }
5648 }
5649}
5650
5651#[cfg(feature = "v4_10")]
5652#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5653#[doc(hidden)]
5654impl FromGlib<ffi::GtkFontLevel> for FontLevel {
5655 #[inline]
5656 unsafe fn from_glib(value: ffi::GtkFontLevel) -> Self {
5657 skip_assert_initialized!();
5658
5659 match value {
5660 ffi::GTK_FONT_LEVEL_FAMILY => Self::Family,
5661 ffi::GTK_FONT_LEVEL_FACE => Self::Face,
5662 ffi::GTK_FONT_LEVEL_FONT => Self::Font,
5663 ffi::GTK_FONT_LEVEL_FEATURES => Self::Features,
5664 value => Self::__Unknown(value),
5665 }
5666 }
5667}
5668
5669#[cfg(feature = "v4_10")]
5670#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5671impl StaticType for FontLevel {
5672 #[inline]
5673 #[doc(alias = "gtk_font_level_get_type")]
5674 fn static_type() -> glib::Type {
5675 unsafe { from_glib(ffi::gtk_font_level_get_type()) }
5676 }
5677}
5678
5679#[cfg(feature = "v4_10")]
5680#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5681impl glib::HasParamSpec for FontLevel {
5682 type ParamSpec = glib::ParamSpecEnum;
5683 type SetValue = Self;
5684 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5685
5686 fn param_spec_builder() -> Self::BuilderFn {
5687 Self::ParamSpec::builder_with_default
5688 }
5689}
5690
5691#[cfg(feature = "v4_10")]
5692#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5693impl glib::value::ValueType for FontLevel {
5694 type Type = Self;
5695}
5696
5697#[cfg(feature = "v4_10")]
5698#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5699unsafe impl<'a> glib::value::FromValue<'a> for FontLevel {
5700 type Checker = glib::value::GenericValueTypeChecker<Self>;
5701
5702 #[inline]
5703 unsafe fn from_value(value: &'a glib::Value) -> Self {
5704 skip_assert_initialized!();
5705 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5706 }
5707}
5708
5709#[cfg(feature = "v4_10")]
5710#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5711impl ToValue for FontLevel {
5712 #[inline]
5713 fn to_value(&self) -> glib::Value {
5714 let mut value = glib::Value::for_value_type::<Self>();
5715 unsafe {
5716 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5717 }
5718 value
5719 }
5720
5721 #[inline]
5722 fn value_type(&self) -> glib::Type {
5723 Self::static_type()
5724 }
5725}
5726
5727#[cfg(feature = "v4_10")]
5728#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5729impl From<FontLevel> for glib::Value {
5730 #[inline]
5731 fn from(v: FontLevel) -> Self {
5732 skip_assert_initialized!();
5733 ToValue::to_value(&v)
5734 }
5735}
5736
5737#[cfg(feature = "v4_16")]
5740#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5741#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5742#[non_exhaustive]
5743#[doc(alias = "GtkFontRendering")]
5744pub enum FontRendering {
5745 #[doc(alias = "GTK_FONT_RENDERING_AUTOMATIC")]
5748 Automatic,
5749 #[doc(alias = "GTK_FONT_RENDERING_MANUAL")]
5752 Manual,
5753 #[doc(hidden)]
5754 __Unknown(i32),
5755}
5756
5757#[cfg(feature = "v4_16")]
5758#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5759#[doc(hidden)]
5760impl IntoGlib for FontRendering {
5761 type GlibType = ffi::GtkFontRendering;
5762
5763 #[inline]
5764 fn into_glib(self) -> ffi::GtkFontRendering {
5765 match self {
5766 Self::Automatic => ffi::GTK_FONT_RENDERING_AUTOMATIC,
5767 Self::Manual => ffi::GTK_FONT_RENDERING_MANUAL,
5768 Self::__Unknown(value) => value,
5769 }
5770 }
5771}
5772
5773#[cfg(feature = "v4_16")]
5774#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5775#[doc(hidden)]
5776impl FromGlib<ffi::GtkFontRendering> for FontRendering {
5777 #[inline]
5778 unsafe fn from_glib(value: ffi::GtkFontRendering) -> Self {
5779 skip_assert_initialized!();
5780
5781 match value {
5782 ffi::GTK_FONT_RENDERING_AUTOMATIC => Self::Automatic,
5783 ffi::GTK_FONT_RENDERING_MANUAL => Self::Manual,
5784 value => Self::__Unknown(value),
5785 }
5786 }
5787}
5788
5789#[cfg(feature = "v4_16")]
5790#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5791impl StaticType for FontRendering {
5792 #[inline]
5793 #[doc(alias = "gtk_font_rendering_get_type")]
5794 fn static_type() -> glib::Type {
5795 unsafe { from_glib(ffi::gtk_font_rendering_get_type()) }
5796 }
5797}
5798
5799#[cfg(feature = "v4_16")]
5800#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5801impl glib::HasParamSpec for FontRendering {
5802 type ParamSpec = glib::ParamSpecEnum;
5803 type SetValue = Self;
5804 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5805
5806 fn param_spec_builder() -> Self::BuilderFn {
5807 Self::ParamSpec::builder_with_default
5808 }
5809}
5810
5811#[cfg(feature = "v4_16")]
5812#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5813impl glib::value::ValueType for FontRendering {
5814 type Type = Self;
5815}
5816
5817#[cfg(feature = "v4_16")]
5818#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5819unsafe impl<'a> glib::value::FromValue<'a> for FontRendering {
5820 type Checker = glib::value::GenericValueTypeChecker<Self>;
5821
5822 #[inline]
5823 unsafe fn from_value(value: &'a glib::Value) -> Self {
5824 skip_assert_initialized!();
5825 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5826 }
5827}
5828
5829#[cfg(feature = "v4_16")]
5830#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5831impl ToValue for FontRendering {
5832 #[inline]
5833 fn to_value(&self) -> glib::Value {
5834 let mut value = glib::Value::for_value_type::<Self>();
5835 unsafe {
5836 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5837 }
5838 value
5839 }
5840
5841 #[inline]
5842 fn value_type(&self) -> glib::Type {
5843 Self::static_type()
5844 }
5845}
5846
5847#[cfg(feature = "v4_16")]
5848#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5849impl From<FontRendering> for glib::Value {
5850 #[inline]
5851 fn from(v: FontRendering) -> Self {
5852 skip_assert_initialized!();
5853 ToValue::to_value(&v)
5854 }
5855}
5856
5857#[cfg(feature = "v4_14")]
5859#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5860#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5861#[non_exhaustive]
5862#[doc(alias = "GtkGraphicsOffloadEnabled")]
5863pub enum GraphicsOffloadEnabled {
5864 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_ENABLED")]
5866 Enabled,
5867 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_DISABLED")]
5869 Disabled,
5870 #[doc(hidden)]
5871 __Unknown(i32),
5872}
5873
5874#[cfg(feature = "v4_14")]
5875#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5876#[doc(hidden)]
5877impl IntoGlib for GraphicsOffloadEnabled {
5878 type GlibType = ffi::GtkGraphicsOffloadEnabled;
5879
5880 #[inline]
5881 fn into_glib(self) -> ffi::GtkGraphicsOffloadEnabled {
5882 match self {
5883 Self::Enabled => ffi::GTK_GRAPHICS_OFFLOAD_ENABLED,
5884 Self::Disabled => ffi::GTK_GRAPHICS_OFFLOAD_DISABLED,
5885 Self::__Unknown(value) => value,
5886 }
5887 }
5888}
5889
5890#[cfg(feature = "v4_14")]
5891#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5892#[doc(hidden)]
5893impl FromGlib<ffi::GtkGraphicsOffloadEnabled> for GraphicsOffloadEnabled {
5894 #[inline]
5895 unsafe fn from_glib(value: ffi::GtkGraphicsOffloadEnabled) -> Self {
5896 skip_assert_initialized!();
5897
5898 match value {
5899 ffi::GTK_GRAPHICS_OFFLOAD_ENABLED => Self::Enabled,
5900 ffi::GTK_GRAPHICS_OFFLOAD_DISABLED => Self::Disabled,
5901 value => Self::__Unknown(value),
5902 }
5903 }
5904}
5905
5906#[cfg(feature = "v4_14")]
5907#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5908impl StaticType for GraphicsOffloadEnabled {
5909 #[inline]
5910 #[doc(alias = "gtk_graphics_offload_enabled_get_type")]
5911 fn static_type() -> glib::Type {
5912 unsafe { from_glib(ffi::gtk_graphics_offload_enabled_get_type()) }
5913 }
5914}
5915
5916#[cfg(feature = "v4_14")]
5917#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5918impl glib::HasParamSpec for GraphicsOffloadEnabled {
5919 type ParamSpec = glib::ParamSpecEnum;
5920 type SetValue = Self;
5921 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5922
5923 fn param_spec_builder() -> Self::BuilderFn {
5924 Self::ParamSpec::builder_with_default
5925 }
5926}
5927
5928#[cfg(feature = "v4_14")]
5929#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5930impl glib::value::ValueType for GraphicsOffloadEnabled {
5931 type Type = Self;
5932}
5933
5934#[cfg(feature = "v4_14")]
5935#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5936unsafe impl<'a> glib::value::FromValue<'a> for GraphicsOffloadEnabled {
5937 type Checker = glib::value::GenericValueTypeChecker<Self>;
5938
5939 #[inline]
5940 unsafe fn from_value(value: &'a glib::Value) -> Self {
5941 skip_assert_initialized!();
5942 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
5943 }
5944}
5945
5946#[cfg(feature = "v4_14")]
5947#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5948impl ToValue for GraphicsOffloadEnabled {
5949 #[inline]
5950 fn to_value(&self) -> glib::Value {
5951 let mut value = glib::Value::for_value_type::<Self>();
5952 unsafe {
5953 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5954 }
5955 value
5956 }
5957
5958 #[inline]
5959 fn value_type(&self) -> glib::Type {
5960 Self::static_type()
5961 }
5962}
5963
5964#[cfg(feature = "v4_14")]
5965#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5966impl From<GraphicsOffloadEnabled> for glib::Value {
5967 #[inline]
5968 fn from(v: GraphicsOffloadEnabled) -> Self {
5969 skip_assert_initialized!();
5970 ToValue::to_value(&v)
5971 }
5972}
5973
5974#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5984#[non_exhaustive]
5985#[doc(alias = "GtkIconSize")]
5986pub enum IconSize {
5987 #[doc(alias = "GTK_ICON_SIZE_INHERIT")]
5989 Inherit,
5990 #[doc(alias = "GTK_ICON_SIZE_NORMAL")]
5992 Normal,
5993 #[doc(alias = "GTK_ICON_SIZE_LARGE")]
5995 Large,
5996 #[doc(hidden)]
5997 __Unknown(i32),
5998}
5999
6000#[doc(hidden)]
6001impl IntoGlib for IconSize {
6002 type GlibType = ffi::GtkIconSize;
6003
6004 #[inline]
6005 fn into_glib(self) -> ffi::GtkIconSize {
6006 match self {
6007 Self::Inherit => ffi::GTK_ICON_SIZE_INHERIT,
6008 Self::Normal => ffi::GTK_ICON_SIZE_NORMAL,
6009 Self::Large => ffi::GTK_ICON_SIZE_LARGE,
6010 Self::__Unknown(value) => value,
6011 }
6012 }
6013}
6014
6015#[doc(hidden)]
6016impl FromGlib<ffi::GtkIconSize> for IconSize {
6017 #[inline]
6018 unsafe fn from_glib(value: ffi::GtkIconSize) -> Self {
6019 skip_assert_initialized!();
6020
6021 match value {
6022 ffi::GTK_ICON_SIZE_INHERIT => Self::Inherit,
6023 ffi::GTK_ICON_SIZE_NORMAL => Self::Normal,
6024 ffi::GTK_ICON_SIZE_LARGE => Self::Large,
6025 value => Self::__Unknown(value),
6026 }
6027 }
6028}
6029
6030impl StaticType for IconSize {
6031 #[inline]
6032 #[doc(alias = "gtk_icon_size_get_type")]
6033 fn static_type() -> glib::Type {
6034 unsafe { from_glib(ffi::gtk_icon_size_get_type()) }
6035 }
6036}
6037
6038impl glib::HasParamSpec for IconSize {
6039 type ParamSpec = glib::ParamSpecEnum;
6040 type SetValue = Self;
6041 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6042
6043 fn param_spec_builder() -> Self::BuilderFn {
6044 Self::ParamSpec::builder_with_default
6045 }
6046}
6047
6048impl glib::value::ValueType for IconSize {
6049 type Type = Self;
6050}
6051
6052unsafe impl<'a> glib::value::FromValue<'a> for IconSize {
6053 type Checker = glib::value::GenericValueTypeChecker<Self>;
6054
6055 #[inline]
6056 unsafe fn from_value(value: &'a glib::Value) -> Self {
6057 skip_assert_initialized!();
6058 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6059 }
6060}
6061
6062impl ToValue for IconSize {
6063 #[inline]
6064 fn to_value(&self) -> glib::Value {
6065 let mut value = glib::Value::for_value_type::<Self>();
6066 unsafe {
6067 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6068 }
6069 value
6070 }
6071
6072 #[inline]
6073 fn value_type(&self) -> glib::Type {
6074 Self::static_type()
6075 }
6076}
6077
6078impl From<IconSize> for glib::Value {
6079 #[inline]
6080 fn from(v: IconSize) -> Self {
6081 skip_assert_initialized!();
6082 ToValue::to_value(&v)
6083 }
6084}
6085
6086#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6088#[non_exhaustive]
6089#[doc(alias = "GtkIconThemeError")]
6090pub enum IconThemeError {
6091 #[doc(alias = "GTK_ICON_THEME_NOT_FOUND")]
6093 NotFound,
6094 #[doc(alias = "GTK_ICON_THEME_FAILED")]
6096 Failed,
6097 #[doc(hidden)]
6098 __Unknown(i32),
6099}
6100
6101#[doc(hidden)]
6102impl IntoGlib for IconThemeError {
6103 type GlibType = ffi::GtkIconThemeError;
6104
6105 #[inline]
6106 fn into_glib(self) -> ffi::GtkIconThemeError {
6107 match self {
6108 Self::NotFound => ffi::GTK_ICON_THEME_NOT_FOUND,
6109 Self::Failed => ffi::GTK_ICON_THEME_FAILED,
6110 Self::__Unknown(value) => value,
6111 }
6112 }
6113}
6114
6115#[doc(hidden)]
6116impl FromGlib<ffi::GtkIconThemeError> for IconThemeError {
6117 #[inline]
6118 unsafe fn from_glib(value: ffi::GtkIconThemeError) -> Self {
6119 skip_assert_initialized!();
6120
6121 match value {
6122 ffi::GTK_ICON_THEME_NOT_FOUND => Self::NotFound,
6123 ffi::GTK_ICON_THEME_FAILED => Self::Failed,
6124 value => Self::__Unknown(value),
6125 }
6126 }
6127}
6128
6129impl glib::error::ErrorDomain for IconThemeError {
6130 #[inline]
6131 fn domain() -> glib::Quark {
6132 skip_assert_initialized!();
6133
6134 unsafe { from_glib(ffi::gtk_icon_theme_error_quark()) }
6135 }
6136
6137 #[inline]
6138 fn code(self) -> i32 {
6139 self.into_glib()
6140 }
6141
6142 #[inline]
6143 #[allow(clippy::match_single_binding)]
6144 fn from(code: i32) -> Option<Self> {
6145 skip_assert_initialized!();
6146 match unsafe { from_glib(code) } {
6147 Self::__Unknown(_) => Some(Self::Failed),
6148 value => Some(value),
6149 }
6150 }
6151}
6152
6153impl StaticType for IconThemeError {
6154 #[inline]
6155 #[doc(alias = "gtk_icon_theme_error_get_type")]
6156 fn static_type() -> glib::Type {
6157 unsafe { from_glib(ffi::gtk_icon_theme_error_get_type()) }
6158 }
6159}
6160
6161impl glib::HasParamSpec for IconThemeError {
6162 type ParamSpec = glib::ParamSpecEnum;
6163 type SetValue = Self;
6164 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6165
6166 fn param_spec_builder() -> Self::BuilderFn {
6167 Self::ParamSpec::builder_with_default
6168 }
6169}
6170
6171impl glib::value::ValueType for IconThemeError {
6172 type Type = Self;
6173}
6174
6175unsafe impl<'a> glib::value::FromValue<'a> for IconThemeError {
6176 type Checker = glib::value::GenericValueTypeChecker<Self>;
6177
6178 #[inline]
6179 unsafe fn from_value(value: &'a glib::Value) -> Self {
6180 skip_assert_initialized!();
6181 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6182 }
6183}
6184
6185impl ToValue for IconThemeError {
6186 #[inline]
6187 fn to_value(&self) -> glib::Value {
6188 let mut value = glib::Value::for_value_type::<Self>();
6189 unsafe {
6190 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6191 }
6192 value
6193 }
6194
6195 #[inline]
6196 fn value_type(&self) -> glib::Type {
6197 Self::static_type()
6198 }
6199}
6200
6201impl From<IconThemeError> for glib::Value {
6202 #[inline]
6203 fn from(v: IconThemeError) -> Self {
6204 skip_assert_initialized!();
6205 ToValue::to_value(&v)
6206 }
6207}
6208
6209#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
6215#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6216#[non_exhaustive]
6217#[doc(alias = "GtkIconViewDropPosition")]
6218pub enum IconViewDropPosition {
6219 #[doc(alias = "GTK_ICON_VIEW_NO_DROP")]
6221 NoDrop,
6222 #[doc(alias = "GTK_ICON_VIEW_DROP_INTO")]
6224 DropInto,
6225 #[doc(alias = "GTK_ICON_VIEW_DROP_LEFT")]
6227 DropLeft,
6228 #[doc(alias = "GTK_ICON_VIEW_DROP_RIGHT")]
6230 DropRight,
6231 #[doc(alias = "GTK_ICON_VIEW_DROP_ABOVE")]
6233 DropAbove,
6234 #[doc(alias = "GTK_ICON_VIEW_DROP_BELOW")]
6236 DropBelow,
6237 #[doc(hidden)]
6238 __Unknown(i32),
6239}
6240
6241#[allow(deprecated)]
6242#[doc(hidden)]
6243impl IntoGlib for IconViewDropPosition {
6244 type GlibType = ffi::GtkIconViewDropPosition;
6245
6246 #[inline]
6247 fn into_glib(self) -> ffi::GtkIconViewDropPosition {
6248 match self {
6249 Self::NoDrop => ffi::GTK_ICON_VIEW_NO_DROP,
6250 Self::DropInto => ffi::GTK_ICON_VIEW_DROP_INTO,
6251 Self::DropLeft => ffi::GTK_ICON_VIEW_DROP_LEFT,
6252 Self::DropRight => ffi::GTK_ICON_VIEW_DROP_RIGHT,
6253 Self::DropAbove => ffi::GTK_ICON_VIEW_DROP_ABOVE,
6254 Self::DropBelow => ffi::GTK_ICON_VIEW_DROP_BELOW,
6255 Self::__Unknown(value) => value,
6256 }
6257 }
6258}
6259
6260#[allow(deprecated)]
6261#[doc(hidden)]
6262impl FromGlib<ffi::GtkIconViewDropPosition> for IconViewDropPosition {
6263 #[inline]
6264 unsafe fn from_glib(value: ffi::GtkIconViewDropPosition) -> Self {
6265 skip_assert_initialized!();
6266
6267 match value {
6268 ffi::GTK_ICON_VIEW_NO_DROP => Self::NoDrop,
6269 ffi::GTK_ICON_VIEW_DROP_INTO => Self::DropInto,
6270 ffi::GTK_ICON_VIEW_DROP_LEFT => Self::DropLeft,
6271 ffi::GTK_ICON_VIEW_DROP_RIGHT => Self::DropRight,
6272 ffi::GTK_ICON_VIEW_DROP_ABOVE => Self::DropAbove,
6273 ffi::GTK_ICON_VIEW_DROP_BELOW => Self::DropBelow,
6274 value => Self::__Unknown(value),
6275 }
6276 }
6277}
6278
6279#[allow(deprecated)]
6280impl StaticType for IconViewDropPosition {
6281 #[inline]
6282 #[doc(alias = "gtk_icon_view_drop_position_get_type")]
6283 fn static_type() -> glib::Type {
6284 unsafe { from_glib(ffi::gtk_icon_view_drop_position_get_type()) }
6285 }
6286}
6287
6288#[allow(deprecated)]
6289impl glib::HasParamSpec for IconViewDropPosition {
6290 type ParamSpec = glib::ParamSpecEnum;
6291 type SetValue = Self;
6292 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6293
6294 fn param_spec_builder() -> Self::BuilderFn {
6295 Self::ParamSpec::builder_with_default
6296 }
6297}
6298
6299#[allow(deprecated)]
6300impl glib::value::ValueType for IconViewDropPosition {
6301 type Type = Self;
6302}
6303
6304#[allow(deprecated)]
6305unsafe impl<'a> glib::value::FromValue<'a> for IconViewDropPosition {
6306 type Checker = glib::value::GenericValueTypeChecker<Self>;
6307
6308 #[inline]
6309 unsafe fn from_value(value: &'a glib::Value) -> Self {
6310 skip_assert_initialized!();
6311 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6312 }
6313}
6314
6315#[allow(deprecated)]
6316impl ToValue for IconViewDropPosition {
6317 #[inline]
6318 fn to_value(&self) -> glib::Value {
6319 let mut value = glib::Value::for_value_type::<Self>();
6320 unsafe {
6321 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6322 }
6323 value
6324 }
6325
6326 #[inline]
6327 fn value_type(&self) -> glib::Type {
6328 Self::static_type()
6329 }
6330}
6331
6332#[allow(deprecated)]
6333impl From<IconViewDropPosition> for glib::Value {
6334 #[inline]
6335 fn from(v: IconViewDropPosition) -> Self {
6336 skip_assert_initialized!();
6337 ToValue::to_value(&v)
6338 }
6339}
6340
6341#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6350#[non_exhaustive]
6351#[doc(alias = "GtkImageType")]
6352pub enum ImageType {
6353 #[doc(alias = "GTK_IMAGE_EMPTY")]
6355 Empty,
6356 #[doc(alias = "GTK_IMAGE_ICON_NAME")]
6358 IconName,
6359 #[doc(alias = "GTK_IMAGE_GICON")]
6361 Gicon,
6362 #[doc(alias = "GTK_IMAGE_PAINTABLE")]
6364 Paintable,
6365 #[doc(hidden)]
6366 __Unknown(i32),
6367}
6368
6369#[doc(hidden)]
6370impl IntoGlib for ImageType {
6371 type GlibType = ffi::GtkImageType;
6372
6373 #[inline]
6374 fn into_glib(self) -> ffi::GtkImageType {
6375 match self {
6376 Self::Empty => ffi::GTK_IMAGE_EMPTY,
6377 Self::IconName => ffi::GTK_IMAGE_ICON_NAME,
6378 Self::Gicon => ffi::GTK_IMAGE_GICON,
6379 Self::Paintable => ffi::GTK_IMAGE_PAINTABLE,
6380 Self::__Unknown(value) => value,
6381 }
6382 }
6383}
6384
6385#[doc(hidden)]
6386impl FromGlib<ffi::GtkImageType> for ImageType {
6387 #[inline]
6388 unsafe fn from_glib(value: ffi::GtkImageType) -> Self {
6389 skip_assert_initialized!();
6390
6391 match value {
6392 ffi::GTK_IMAGE_EMPTY => Self::Empty,
6393 ffi::GTK_IMAGE_ICON_NAME => Self::IconName,
6394 ffi::GTK_IMAGE_GICON => Self::Gicon,
6395 ffi::GTK_IMAGE_PAINTABLE => Self::Paintable,
6396 value => Self::__Unknown(value),
6397 }
6398 }
6399}
6400
6401impl StaticType for ImageType {
6402 #[inline]
6403 #[doc(alias = "gtk_image_type_get_type")]
6404 fn static_type() -> glib::Type {
6405 unsafe { from_glib(ffi::gtk_image_type_get_type()) }
6406 }
6407}
6408
6409impl glib::HasParamSpec for ImageType {
6410 type ParamSpec = glib::ParamSpecEnum;
6411 type SetValue = Self;
6412 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6413
6414 fn param_spec_builder() -> Self::BuilderFn {
6415 Self::ParamSpec::builder_with_default
6416 }
6417}
6418
6419impl glib::value::ValueType for ImageType {
6420 type Type = Self;
6421}
6422
6423unsafe impl<'a> glib::value::FromValue<'a> for ImageType {
6424 type Checker = glib::value::GenericValueTypeChecker<Self>;
6425
6426 #[inline]
6427 unsafe fn from_value(value: &'a glib::Value) -> Self {
6428 skip_assert_initialized!();
6429 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6430 }
6431}
6432
6433impl ToValue for ImageType {
6434 #[inline]
6435 fn to_value(&self) -> glib::Value {
6436 let mut value = glib::Value::for_value_type::<Self>();
6437 unsafe {
6438 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6439 }
6440 value
6441 }
6442
6443 #[inline]
6444 fn value_type(&self) -> glib::Type {
6445 Self::static_type()
6446 }
6447}
6448
6449impl From<ImageType> for glib::Value {
6450 #[inline]
6451 fn from(v: ImageType) -> Self {
6452 skip_assert_initialized!();
6453 ToValue::to_value(&v)
6454 }
6455}
6456
6457#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6477#[non_exhaustive]
6478#[doc(alias = "GtkInputPurpose")]
6479pub enum InputPurpose {
6480 #[doc(alias = "GTK_INPUT_PURPOSE_FREE_FORM")]
6482 FreeForm,
6483 #[doc(alias = "GTK_INPUT_PURPOSE_ALPHA")]
6485 Alpha,
6486 #[doc(alias = "GTK_INPUT_PURPOSE_DIGITS")]
6488 Digits,
6489 #[doc(alias = "GTK_INPUT_PURPOSE_NUMBER")]
6491 Number,
6492 #[doc(alias = "GTK_INPUT_PURPOSE_PHONE")]
6494 Phone,
6495 #[doc(alias = "GTK_INPUT_PURPOSE_URL")]
6497 Url,
6498 #[doc(alias = "GTK_INPUT_PURPOSE_EMAIL")]
6500 Email,
6501 #[doc(alias = "GTK_INPUT_PURPOSE_NAME")]
6503 Name,
6504 #[doc(alias = "GTK_INPUT_PURPOSE_PASSWORD")]
6506 Password,
6507 #[doc(alias = "GTK_INPUT_PURPOSE_PIN")]
6509 Pin,
6510 #[doc(alias = "GTK_INPUT_PURPOSE_TERMINAL")]
6512 Terminal,
6513 #[doc(hidden)]
6514 __Unknown(i32),
6515}
6516
6517#[doc(hidden)]
6518impl IntoGlib for InputPurpose {
6519 type GlibType = ffi::GtkInputPurpose;
6520
6521 #[inline]
6522 fn into_glib(self) -> ffi::GtkInputPurpose {
6523 match self {
6524 Self::FreeForm => ffi::GTK_INPUT_PURPOSE_FREE_FORM,
6525 Self::Alpha => ffi::GTK_INPUT_PURPOSE_ALPHA,
6526 Self::Digits => ffi::GTK_INPUT_PURPOSE_DIGITS,
6527 Self::Number => ffi::GTK_INPUT_PURPOSE_NUMBER,
6528 Self::Phone => ffi::GTK_INPUT_PURPOSE_PHONE,
6529 Self::Url => ffi::GTK_INPUT_PURPOSE_URL,
6530 Self::Email => ffi::GTK_INPUT_PURPOSE_EMAIL,
6531 Self::Name => ffi::GTK_INPUT_PURPOSE_NAME,
6532 Self::Password => ffi::GTK_INPUT_PURPOSE_PASSWORD,
6533 Self::Pin => ffi::GTK_INPUT_PURPOSE_PIN,
6534 Self::Terminal => ffi::GTK_INPUT_PURPOSE_TERMINAL,
6535 Self::__Unknown(value) => value,
6536 }
6537 }
6538}
6539
6540#[doc(hidden)]
6541impl FromGlib<ffi::GtkInputPurpose> for InputPurpose {
6542 #[inline]
6543 unsafe fn from_glib(value: ffi::GtkInputPurpose) -> Self {
6544 skip_assert_initialized!();
6545
6546 match value {
6547 ffi::GTK_INPUT_PURPOSE_FREE_FORM => Self::FreeForm,
6548 ffi::GTK_INPUT_PURPOSE_ALPHA => Self::Alpha,
6549 ffi::GTK_INPUT_PURPOSE_DIGITS => Self::Digits,
6550 ffi::GTK_INPUT_PURPOSE_NUMBER => Self::Number,
6551 ffi::GTK_INPUT_PURPOSE_PHONE => Self::Phone,
6552 ffi::GTK_INPUT_PURPOSE_URL => Self::Url,
6553 ffi::GTK_INPUT_PURPOSE_EMAIL => Self::Email,
6554 ffi::GTK_INPUT_PURPOSE_NAME => Self::Name,
6555 ffi::GTK_INPUT_PURPOSE_PASSWORD => Self::Password,
6556 ffi::GTK_INPUT_PURPOSE_PIN => Self::Pin,
6557 ffi::GTK_INPUT_PURPOSE_TERMINAL => Self::Terminal,
6558 value => Self::__Unknown(value),
6559 }
6560 }
6561}
6562
6563impl StaticType for InputPurpose {
6564 #[inline]
6565 #[doc(alias = "gtk_input_purpose_get_type")]
6566 fn static_type() -> glib::Type {
6567 unsafe { from_glib(ffi::gtk_input_purpose_get_type()) }
6568 }
6569}
6570
6571impl glib::HasParamSpec for InputPurpose {
6572 type ParamSpec = glib::ParamSpecEnum;
6573 type SetValue = Self;
6574 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6575
6576 fn param_spec_builder() -> Self::BuilderFn {
6577 Self::ParamSpec::builder_with_default
6578 }
6579}
6580
6581impl glib::value::ValueType for InputPurpose {
6582 type Type = Self;
6583}
6584
6585unsafe impl<'a> glib::value::FromValue<'a> for InputPurpose {
6586 type Checker = glib::value::GenericValueTypeChecker<Self>;
6587
6588 #[inline]
6589 unsafe fn from_value(value: &'a glib::Value) -> Self {
6590 skip_assert_initialized!();
6591 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6592 }
6593}
6594
6595impl ToValue for InputPurpose {
6596 #[inline]
6597 fn to_value(&self) -> glib::Value {
6598 let mut value = glib::Value::for_value_type::<Self>();
6599 unsafe {
6600 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6601 }
6602 value
6603 }
6604
6605 #[inline]
6606 fn value_type(&self) -> glib::Type {
6607 Self::static_type()
6608 }
6609}
6610
6611impl From<InputPurpose> for glib::Value {
6612 #[inline]
6613 fn from(v: InputPurpose) -> Self {
6614 skip_assert_initialized!();
6615 ToValue::to_value(&v)
6616 }
6617}
6618
6619#[cfg(feature = "v4_8")]
6622#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6623#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6624#[non_exhaustive]
6625#[doc(alias = "GtkInscriptionOverflow")]
6626pub enum InscriptionOverflow {
6627 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_CLIP")]
6629 Clip,
6630 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START")]
6632 EllipsizeStart,
6633 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE")]
6635 EllipsizeMiddle,
6636 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END")]
6638 EllipsizeEnd,
6639 #[doc(hidden)]
6640 __Unknown(i32),
6641}
6642
6643#[cfg(feature = "v4_8")]
6644#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6645#[doc(hidden)]
6646impl IntoGlib for InscriptionOverflow {
6647 type GlibType = ffi::GtkInscriptionOverflow;
6648
6649 #[inline]
6650 fn into_glib(self) -> ffi::GtkInscriptionOverflow {
6651 match self {
6652 Self::Clip => ffi::GTK_INSCRIPTION_OVERFLOW_CLIP,
6653 Self::EllipsizeStart => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START,
6654 Self::EllipsizeMiddle => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE,
6655 Self::EllipsizeEnd => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END,
6656 Self::__Unknown(value) => value,
6657 }
6658 }
6659}
6660
6661#[cfg(feature = "v4_8")]
6662#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6663#[doc(hidden)]
6664impl FromGlib<ffi::GtkInscriptionOverflow> for InscriptionOverflow {
6665 #[inline]
6666 unsafe fn from_glib(value: ffi::GtkInscriptionOverflow) -> Self {
6667 skip_assert_initialized!();
6668
6669 match value {
6670 ffi::GTK_INSCRIPTION_OVERFLOW_CLIP => Self::Clip,
6671 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START => Self::EllipsizeStart,
6672 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE => Self::EllipsizeMiddle,
6673 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END => Self::EllipsizeEnd,
6674 value => Self::__Unknown(value),
6675 }
6676 }
6677}
6678
6679#[cfg(feature = "v4_8")]
6680#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6681impl StaticType for InscriptionOverflow {
6682 #[inline]
6683 #[doc(alias = "gtk_inscription_overflow_get_type")]
6684 fn static_type() -> glib::Type {
6685 unsafe { from_glib(ffi::gtk_inscription_overflow_get_type()) }
6686 }
6687}
6688
6689#[cfg(feature = "v4_8")]
6690#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6691impl glib::HasParamSpec for InscriptionOverflow {
6692 type ParamSpec = glib::ParamSpecEnum;
6693 type SetValue = Self;
6694 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6695
6696 fn param_spec_builder() -> Self::BuilderFn {
6697 Self::ParamSpec::builder_with_default
6698 }
6699}
6700
6701#[cfg(feature = "v4_8")]
6702#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6703impl glib::value::ValueType for InscriptionOverflow {
6704 type Type = Self;
6705}
6706
6707#[cfg(feature = "v4_8")]
6708#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6709unsafe impl<'a> glib::value::FromValue<'a> for InscriptionOverflow {
6710 type Checker = glib::value::GenericValueTypeChecker<Self>;
6711
6712 #[inline]
6713 unsafe fn from_value(value: &'a glib::Value) -> Self {
6714 skip_assert_initialized!();
6715 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6716 }
6717}
6718
6719#[cfg(feature = "v4_8")]
6720#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6721impl ToValue for InscriptionOverflow {
6722 #[inline]
6723 fn to_value(&self) -> glib::Value {
6724 let mut value = glib::Value::for_value_type::<Self>();
6725 unsafe {
6726 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6727 }
6728 value
6729 }
6730
6731 #[inline]
6732 fn value_type(&self) -> glib::Type {
6733 Self::static_type()
6734 }
6735}
6736
6737#[cfg(feature = "v4_8")]
6738#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6739impl From<InscriptionOverflow> for glib::Value {
6740 #[inline]
6741 fn from(v: InscriptionOverflow) -> Self {
6742 skip_assert_initialized!();
6743 ToValue::to_value(&v)
6744 }
6745}
6746
6747#[cfg(feature = "v4_20")]
6756#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6757#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6758#[non_exhaustive]
6759#[doc(alias = "GtkInterfaceColorScheme")]
6760pub enum InterfaceColorScheme {
6761 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED")]
6763 Unsupported,
6764 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DEFAULT")]
6766 Default,
6767 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DARK")]
6769 Dark,
6770 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_LIGHT")]
6772 Light,
6773 #[doc(hidden)]
6774 __Unknown(i32),
6775}
6776
6777#[cfg(feature = "v4_20")]
6778#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6779#[doc(hidden)]
6780impl IntoGlib for InterfaceColorScheme {
6781 type GlibType = ffi::GtkInterfaceColorScheme;
6782
6783 #[inline]
6784 fn into_glib(self) -> ffi::GtkInterfaceColorScheme {
6785 match self {
6786 Self::Unsupported => ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED,
6787 Self::Default => ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT,
6788 Self::Dark => ffi::GTK_INTERFACE_COLOR_SCHEME_DARK,
6789 Self::Light => ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT,
6790 Self::__Unknown(value) => value,
6791 }
6792 }
6793}
6794
6795#[cfg(feature = "v4_20")]
6796#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6797#[doc(hidden)]
6798impl FromGlib<ffi::GtkInterfaceColorScheme> for InterfaceColorScheme {
6799 #[inline]
6800 unsafe fn from_glib(value: ffi::GtkInterfaceColorScheme) -> Self {
6801 skip_assert_initialized!();
6802
6803 match value {
6804 ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED => Self::Unsupported,
6805 ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT => Self::Default,
6806 ffi::GTK_INTERFACE_COLOR_SCHEME_DARK => Self::Dark,
6807 ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT => Self::Light,
6808 value => Self::__Unknown(value),
6809 }
6810 }
6811}
6812
6813#[cfg(feature = "v4_20")]
6814#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6815impl StaticType for InterfaceColorScheme {
6816 #[inline]
6817 #[doc(alias = "gtk_interface_color_scheme_get_type")]
6818 fn static_type() -> glib::Type {
6819 unsafe { from_glib(ffi::gtk_interface_color_scheme_get_type()) }
6820 }
6821}
6822
6823#[cfg(feature = "v4_20")]
6824#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6825impl glib::HasParamSpec for InterfaceColorScheme {
6826 type ParamSpec = glib::ParamSpecEnum;
6827 type SetValue = Self;
6828 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6829
6830 fn param_spec_builder() -> Self::BuilderFn {
6831 Self::ParamSpec::builder_with_default
6832 }
6833}
6834
6835#[cfg(feature = "v4_20")]
6836#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6837impl glib::value::ValueType for InterfaceColorScheme {
6838 type Type = Self;
6839}
6840
6841#[cfg(feature = "v4_20")]
6842#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6843unsafe impl<'a> glib::value::FromValue<'a> for InterfaceColorScheme {
6844 type Checker = glib::value::GenericValueTypeChecker<Self>;
6845
6846 #[inline]
6847 unsafe fn from_value(value: &'a glib::Value) -> Self {
6848 skip_assert_initialized!();
6849 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6850 }
6851}
6852
6853#[cfg(feature = "v4_20")]
6854#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6855impl ToValue for InterfaceColorScheme {
6856 #[inline]
6857 fn to_value(&self) -> glib::Value {
6858 let mut value = glib::Value::for_value_type::<Self>();
6859 unsafe {
6860 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6861 }
6862 value
6863 }
6864
6865 #[inline]
6866 fn value_type(&self) -> glib::Type {
6867 Self::static_type()
6868 }
6869}
6870
6871#[cfg(feature = "v4_20")]
6872#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6873impl From<InterfaceColorScheme> for glib::Value {
6874 #[inline]
6875 fn from(v: InterfaceColorScheme) -> Self {
6876 skip_assert_initialized!();
6877 ToValue::to_value(&v)
6878 }
6879}
6880
6881#[cfg(feature = "v4_20")]
6890#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6891#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6892#[non_exhaustive]
6893#[doc(alias = "GtkInterfaceContrast")]
6894pub enum InterfaceContrast {
6895 #[doc(alias = "GTK_INTERFACE_CONTRAST_UNSUPPORTED")]
6897 Unsupported,
6898 #[doc(alias = "GTK_INTERFACE_CONTRAST_NO_PREFERENCE")]
6900 NoPreference,
6901 #[doc(alias = "GTK_INTERFACE_CONTRAST_MORE")]
6903 More,
6904 #[doc(alias = "GTK_INTERFACE_CONTRAST_LESS")]
6906 Less,
6907 #[doc(hidden)]
6908 __Unknown(i32),
6909}
6910
6911#[cfg(feature = "v4_20")]
6912#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6913#[doc(hidden)]
6914impl IntoGlib for InterfaceContrast {
6915 type GlibType = ffi::GtkInterfaceContrast;
6916
6917 #[inline]
6918 fn into_glib(self) -> ffi::GtkInterfaceContrast {
6919 match self {
6920 Self::Unsupported => ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED,
6921 Self::NoPreference => ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE,
6922 Self::More => ffi::GTK_INTERFACE_CONTRAST_MORE,
6923 Self::Less => ffi::GTK_INTERFACE_CONTRAST_LESS,
6924 Self::__Unknown(value) => value,
6925 }
6926 }
6927}
6928
6929#[cfg(feature = "v4_20")]
6930#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6931#[doc(hidden)]
6932impl FromGlib<ffi::GtkInterfaceContrast> for InterfaceContrast {
6933 #[inline]
6934 unsafe fn from_glib(value: ffi::GtkInterfaceContrast) -> Self {
6935 skip_assert_initialized!();
6936
6937 match value {
6938 ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED => Self::Unsupported,
6939 ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE => Self::NoPreference,
6940 ffi::GTK_INTERFACE_CONTRAST_MORE => Self::More,
6941 ffi::GTK_INTERFACE_CONTRAST_LESS => Self::Less,
6942 value => Self::__Unknown(value),
6943 }
6944 }
6945}
6946
6947#[cfg(feature = "v4_20")]
6948#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6949impl StaticType for InterfaceContrast {
6950 #[inline]
6951 #[doc(alias = "gtk_interface_contrast_get_type")]
6952 fn static_type() -> glib::Type {
6953 unsafe { from_glib(ffi::gtk_interface_contrast_get_type()) }
6954 }
6955}
6956
6957#[cfg(feature = "v4_20")]
6958#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6959impl glib::HasParamSpec for InterfaceContrast {
6960 type ParamSpec = glib::ParamSpecEnum;
6961 type SetValue = Self;
6962 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6963
6964 fn param_spec_builder() -> Self::BuilderFn {
6965 Self::ParamSpec::builder_with_default
6966 }
6967}
6968
6969#[cfg(feature = "v4_20")]
6970#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6971impl glib::value::ValueType for InterfaceContrast {
6972 type Type = Self;
6973}
6974
6975#[cfg(feature = "v4_20")]
6976#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6977unsafe impl<'a> glib::value::FromValue<'a> for InterfaceContrast {
6978 type Checker = glib::value::GenericValueTypeChecker<Self>;
6979
6980 #[inline]
6981 unsafe fn from_value(value: &'a glib::Value) -> Self {
6982 skip_assert_initialized!();
6983 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
6984 }
6985}
6986
6987#[cfg(feature = "v4_20")]
6988#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6989impl ToValue for InterfaceContrast {
6990 #[inline]
6991 fn to_value(&self) -> glib::Value {
6992 let mut value = glib::Value::for_value_type::<Self>();
6993 unsafe {
6994 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6995 }
6996 value
6997 }
6998
6999 #[inline]
7000 fn value_type(&self) -> glib::Type {
7001 Self::static_type()
7002 }
7003}
7004
7005#[cfg(feature = "v4_20")]
7006#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
7007impl From<InterfaceContrast> for glib::Value {
7008 #[inline]
7009 fn from(v: InterfaceContrast) -> Self {
7010 skip_assert_initialized!();
7011 ToValue::to_value(&v)
7012 }
7013}
7014
7015#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7017#[non_exhaustive]
7018#[doc(alias = "GtkJustification")]
7019pub enum Justification {
7020 #[doc(alias = "GTK_JUSTIFY_LEFT")]
7022 Left,
7023 #[doc(alias = "GTK_JUSTIFY_RIGHT")]
7025 Right,
7026 #[doc(alias = "GTK_JUSTIFY_CENTER")]
7028 Center,
7029 #[doc(alias = "GTK_JUSTIFY_FILL")]
7031 Fill,
7032 #[doc(hidden)]
7033 __Unknown(i32),
7034}
7035
7036#[doc(hidden)]
7037impl IntoGlib for Justification {
7038 type GlibType = ffi::GtkJustification;
7039
7040 #[inline]
7041 fn into_glib(self) -> ffi::GtkJustification {
7042 match self {
7043 Self::Left => ffi::GTK_JUSTIFY_LEFT,
7044 Self::Right => ffi::GTK_JUSTIFY_RIGHT,
7045 Self::Center => ffi::GTK_JUSTIFY_CENTER,
7046 Self::Fill => ffi::GTK_JUSTIFY_FILL,
7047 Self::__Unknown(value) => value,
7048 }
7049 }
7050}
7051
7052#[doc(hidden)]
7053impl FromGlib<ffi::GtkJustification> for Justification {
7054 #[inline]
7055 unsafe fn from_glib(value: ffi::GtkJustification) -> Self {
7056 skip_assert_initialized!();
7057
7058 match value {
7059 ffi::GTK_JUSTIFY_LEFT => Self::Left,
7060 ffi::GTK_JUSTIFY_RIGHT => Self::Right,
7061 ffi::GTK_JUSTIFY_CENTER => Self::Center,
7062 ffi::GTK_JUSTIFY_FILL => Self::Fill,
7063 value => Self::__Unknown(value),
7064 }
7065 }
7066}
7067
7068impl StaticType for Justification {
7069 #[inline]
7070 #[doc(alias = "gtk_justification_get_type")]
7071 fn static_type() -> glib::Type {
7072 unsafe { from_glib(ffi::gtk_justification_get_type()) }
7073 }
7074}
7075
7076impl glib::HasParamSpec for Justification {
7077 type ParamSpec = glib::ParamSpecEnum;
7078 type SetValue = Self;
7079 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7080
7081 fn param_spec_builder() -> Self::BuilderFn {
7082 Self::ParamSpec::builder_with_default
7083 }
7084}
7085
7086impl glib::value::ValueType for Justification {
7087 type Type = Self;
7088}
7089
7090unsafe impl<'a> glib::value::FromValue<'a> for Justification {
7091 type Checker = glib::value::GenericValueTypeChecker<Self>;
7092
7093 #[inline]
7094 unsafe fn from_value(value: &'a glib::Value) -> Self {
7095 skip_assert_initialized!();
7096 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
7097 }
7098}
7099
7100impl ToValue for Justification {
7101 #[inline]
7102 fn to_value(&self) -> glib::Value {
7103 let mut value = glib::Value::for_value_type::<Self>();
7104 unsafe {
7105 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7106 }
7107 value
7108 }
7109
7110 #[inline]
7111 fn value_type(&self) -> glib::Type {
7112 Self::static_type()
7113 }
7114}
7115
7116impl From<Justification> for glib::Value {
7117 #[inline]
7118 fn from(v: Justification) -> Self {
7119 skip_assert_initialized!();
7120 ToValue::to_value(&v)
7121 }
7122}
7123
7124#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7129#[non_exhaustive]
7130#[doc(alias = "GtkLevelBarMode")]
7131pub enum LevelBarMode {
7132 #[doc(alias = "GTK_LEVEL_BAR_MODE_CONTINUOUS")]
7134 Continuous,
7135 #[doc(alias = "GTK_LEVEL_BAR_MODE_DISCRETE")]
7137 Discrete,
7138 #[doc(hidden)]
7139 __Unknown(i32),
7140}
7141
7142#[doc(hidden)]
7143impl IntoGlib for LevelBarMode {
7144 type GlibType = ffi::GtkLevelBarMode;
7145
7146 #[inline]
7147 fn into_glib(self) -> ffi::GtkLevelBarMode {
7148 match self {
7149 Self::Continuous => ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS,
7150 Self::Discrete => ffi::GTK_LEVEL_BAR_MODE_DISCRETE,
7151 Self::__Unknown(value) => value,
7152 }
7153 }
7154}
7155
7156#[doc(hidden)]
7157impl FromGlib<ffi::GtkLevelBarMode> for LevelBarMode {
7158 #[inline]
7159 unsafe fn from_glib(value: ffi::GtkLevelBarMode) -> Self {
7160 skip_assert_initialized!();
7161
7162 match value {
7163 ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS => Self::Continuous,
7164 ffi::GTK_LEVEL_BAR_MODE_DISCRETE => Self::Discrete,
7165 value => Self::__Unknown(value),
7166 }
7167 }
7168}
7169
7170impl StaticType for LevelBarMode {
7171 #[inline]
7172 #[doc(alias = "gtk_level_bar_mode_get_type")]
7173 fn static_type() -> glib::Type {
7174 unsafe { from_glib(ffi::gtk_level_bar_mode_get_type()) }
7175 }
7176}
7177
7178impl glib::HasParamSpec for LevelBarMode {
7179 type ParamSpec = glib::ParamSpecEnum;
7180 type SetValue = Self;
7181 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7182
7183 fn param_spec_builder() -> Self::BuilderFn {
7184 Self::ParamSpec::builder_with_default
7185 }
7186}
7187
7188impl glib::value::ValueType for LevelBarMode {
7189 type Type = Self;
7190}
7191
7192unsafe impl<'a> glib::value::FromValue<'a> for LevelBarMode {
7193 type Checker = glib::value::GenericValueTypeChecker<Self>;
7194
7195 #[inline]
7196 unsafe fn from_value(value: &'a glib::Value) -> Self {
7197 skip_assert_initialized!();
7198 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
7199 }
7200}
7201
7202impl ToValue for LevelBarMode {
7203 #[inline]
7204 fn to_value(&self) -> glib::Value {
7205 let mut value = glib::Value::for_value_type::<Self>();
7206 unsafe {
7207 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7208 }
7209 value
7210 }
7211
7212 #[inline]
7213 fn value_type(&self) -> glib::Type {
7214 Self::static_type()
7215 }
7216}
7217
7218impl From<LevelBarMode> for glib::Value {
7219 #[inline]
7220 fn from(v: LevelBarMode) -> Self {
7221 skip_assert_initialized!();
7222 ToValue::to_value(&v)
7223 }
7224}
7225
7226#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7230#[non_exhaustive]
7231#[doc(alias = "GtkLicense")]
7232pub enum License {
7233 #[doc(alias = "GTK_LICENSE_UNKNOWN")]
7235 Unknown,
7236 #[doc(alias = "GTK_LICENSE_CUSTOM")]
7239 Custom,
7240 #[doc(alias = "GTK_LICENSE_GPL_2_0")]
7242 Gpl20,
7243 #[doc(alias = "GTK_LICENSE_GPL_3_0")]
7245 Gpl30,
7246 #[doc(alias = "GTK_LICENSE_LGPL_2_1")]
7248 Lgpl21,
7249 #[doc(alias = "GTK_LICENSE_LGPL_3_0")]
7251 Lgpl30,
7252 #[doc(alias = "GTK_LICENSE_BSD")]
7254 Bsd,
7255 #[doc(alias = "GTK_LICENSE_MIT_X11")]
7257 MitX11,
7258 #[doc(alias = "GTK_LICENSE_ARTISTIC")]
7260 Artistic,
7261 #[doc(alias = "GTK_LICENSE_GPL_2_0_ONLY")]
7263 Gpl20Only,
7264 #[doc(alias = "GTK_LICENSE_GPL_3_0_ONLY")]
7266 Gpl30Only,
7267 #[doc(alias = "GTK_LICENSE_LGPL_2_1_ONLY")]
7269 Lgpl21Only,
7270 #[doc(alias = "GTK_LICENSE_LGPL_3_0_ONLY")]
7272 Lgpl30Only,
7273 #[doc(alias = "GTK_LICENSE_AGPL_3_0")]
7275 Agpl30,
7276 #[doc(alias = "GTK_LICENSE_AGPL_3_0_ONLY")]
7278 Agpl30Only,
7279 #[doc(alias = "GTK_LICENSE_BSD_3")]
7281 Bsd3,
7282 #[doc(alias = "GTK_LICENSE_APACHE_2_0")]
7284 Apache20,
7285 #[doc(alias = "GTK_LICENSE_MPL_2_0")]
7287 Mpl20,
7288 #[cfg(feature = "v4_14")]
7290 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
7291 #[doc(alias = "GTK_LICENSE_0BSD")]
7292 _0bsd,
7293 #[doc(hidden)]
7294 __Unknown(i32),
7295}
7296
7297#[doc(hidden)]
7298impl IntoGlib for License {
7299 type GlibType = ffi::GtkLicense;
7300
7301 fn into_glib(self) -> ffi::GtkLicense {
7302 match self {
7303 Self::Unknown => ffi::GTK_LICENSE_UNKNOWN,
7304 Self::Custom => ffi::GTK_LICENSE_CUSTOM,
7305 Self::Gpl20 => ffi::GTK_LICENSE_GPL_2_0,
7306 Self::Gpl30 => ffi::GTK_LICENSE_GPL_3_0,
7307 Self::Lgpl21 => ffi::GTK_LICENSE_LGPL_2_1,
7308 Self::Lgpl30 => ffi::GTK_LICENSE_LGPL_3_0,
7309 Self::Bsd => ffi::GTK_LICENSE_BSD,
7310 Self::MitX11 => ffi::GTK_LICENSE_MIT_X11,
7311 Self::Artistic => ffi::GTK_LICENSE_ARTISTIC,
7312 Self::Gpl20Only => ffi::GTK_LICENSE_GPL_2_0_ONLY,
7313 Self::Gpl30Only => ffi::GTK_LICENSE_GPL_3_0_ONLY,
7314 Self::Lgpl21Only => ffi::GTK_LICENSE_LGPL_2_1_ONLY,
7315 Self::Lgpl30Only => ffi::GTK_LICENSE_LGPL_3_0_ONLY,
7316 Self::Agpl30 => ffi::GTK_LICENSE_AGPL_3_0,
7317 Self::Agpl30Only => ffi::GTK_LICENSE_AGPL_3_0_ONLY,
7318 Self::Bsd3 => ffi::GTK_LICENSE_BSD_3,
7319 Self::Apache20 => ffi::GTK_LICENSE_APACHE_2_0,
7320 Self::Mpl20 => ffi::GTK_LICENSE_MPL_2_0,
7321 #[cfg(feature = "v4_14")]
7322 Self::_0bsd => ffi::GTK_LICENSE_0BSD,
7323 Self::__Unknown(value) => value,
7324 }
7325 }
7326}
7327
7328#[doc(hidden)]
7329impl FromGlib<ffi::GtkLicense> for License {
7330 unsafe fn from_glib(value: ffi::GtkLicense) -> Self {
7331 skip_assert_initialized!();
7332
7333 match value {
7334 ffi::GTK_LICENSE_UNKNOWN => Self::Unknown,
7335 ffi::GTK_LICENSE_CUSTOM => Self::Custom,
7336 ffi::GTK_LICENSE_GPL_2_0 => Self::Gpl20,
7337 ffi::GTK_LICENSE_GPL_3_0 => Self::Gpl30,
7338 ffi::GTK_LICENSE_LGPL_2_1 => Self::Lgpl21,
7339 ffi::GTK_LICENSE_LGPL_3_0 => Self::Lgpl30,
7340 ffi::GTK_LICENSE_BSD => Self::Bsd,
7341 ffi::GTK_LICENSE_MIT_X11 => Self::MitX11,
7342 ffi::GTK_LICENSE_ARTISTIC => Self::Artistic,
7343 ffi::GTK_LICENSE_GPL_2_0_ONLY => Self::Gpl20Only,
7344 ffi::GTK_LICENSE_GPL_3_0_ONLY => Self::Gpl30Only,
7345 ffi::GTK_LICENSE_LGPL_2_1_ONLY => Self::Lgpl21Only,
7346 ffi::GTK_LICENSE_LGPL_3_0_ONLY => Self::Lgpl30Only,
7347 ffi::GTK_LICENSE_AGPL_3_0 => Self::Agpl30,
7348 ffi::GTK_LICENSE_AGPL_3_0_ONLY => Self::Agpl30Only,
7349 ffi::GTK_LICENSE_BSD_3 => Self::Bsd3,
7350 ffi::GTK_LICENSE_APACHE_2_0 => Self::Apache20,
7351 ffi::GTK_LICENSE_MPL_2_0 => Self::Mpl20,
7352 #[cfg(feature = "v4_14")]
7353 ffi::GTK_LICENSE_0BSD => Self::_0bsd,
7354 value => Self::__Unknown(value),
7355 }
7356 }
7357}
7358
7359impl StaticType for License {
7360 #[inline]
7361 #[doc(alias = "gtk_license_get_type")]
7362 fn static_type() -> glib::Type {
7363 unsafe { from_glib(ffi::gtk_license_get_type()) }
7364 }
7365}
7366
7367impl glib::HasParamSpec for License {
7368 type ParamSpec = glib::ParamSpecEnum;
7369 type SetValue = Self;
7370 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7371
7372 fn param_spec_builder() -> Self::BuilderFn {
7373 Self::ParamSpec::builder_with_default
7374 }
7375}
7376
7377impl glib::value::ValueType for License {
7378 type Type = Self;
7379}
7380
7381unsafe impl<'a> glib::value::FromValue<'a> for License {
7382 type Checker = glib::value::GenericValueTypeChecker<Self>;
7383
7384 #[inline]
7385 unsafe fn from_value(value: &'a glib::Value) -> Self {
7386 skip_assert_initialized!();
7387 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
7388 }
7389}
7390
7391impl ToValue for License {
7392 #[inline]
7393 fn to_value(&self) -> glib::Value {
7394 let mut value = glib::Value::for_value_type::<Self>();
7395 unsafe {
7396 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7397 }
7398 value
7399 }
7400
7401 #[inline]
7402 fn value_type(&self) -> glib::Type {
7403 Self::static_type()
7404 }
7405}
7406
7407impl From<License> for glib::Value {
7408 #[inline]
7409 fn from(v: License) -> Self {
7410 skip_assert_initialized!();
7411 ToValue::to_value(&v)
7412 }
7413}
7414
7415#[cfg(feature = "v4_12")]
7419#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7420#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7421#[non_exhaustive]
7422#[doc(alias = "GtkListTabBehavior")]
7423pub enum ListTabBehavior {
7424 #[doc(alias = "GTK_LIST_TAB_ALL")]
7426 All,
7427 #[doc(alias = "GTK_LIST_TAB_ITEM")]
7431 Item,
7432 #[doc(alias = "GTK_LIST_TAB_CELL")]
7438 Cell,
7439 #[doc(hidden)]
7440 __Unknown(i32),
7441}
7442
7443#[cfg(feature = "v4_12")]
7444#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7445#[doc(hidden)]
7446impl IntoGlib for ListTabBehavior {
7447 type GlibType = ffi::GtkListTabBehavior;
7448
7449 #[inline]
7450 fn into_glib(self) -> ffi::GtkListTabBehavior {
7451 match self {
7452 Self::All => ffi::GTK_LIST_TAB_ALL,
7453 Self::Item => ffi::GTK_LIST_TAB_ITEM,
7454 Self::Cell => ffi::GTK_LIST_TAB_CELL,
7455 Self::__Unknown(value) => value,
7456 }
7457 }
7458}
7459
7460#[cfg(feature = "v4_12")]
7461#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7462#[doc(hidden)]
7463impl FromGlib<ffi::GtkListTabBehavior> for ListTabBehavior {
7464 #[inline]
7465 unsafe fn from_glib(value: ffi::GtkListTabBehavior) -> Self {
7466 skip_assert_initialized!();
7467
7468 match value {
7469 ffi::GTK_LIST_TAB_ALL => Self::All,
7470 ffi::GTK_LIST_TAB_ITEM => Self::Item,
7471 ffi::GTK_LIST_TAB_CELL => Self::Cell,
7472 value => Self::__Unknown(value),
7473 }
7474 }
7475}
7476
7477#[cfg(feature = "v4_12")]
7478#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7479impl StaticType for ListTabBehavior {
7480 #[inline]
7481 #[doc(alias = "gtk_list_tab_behavior_get_type")]
7482 fn static_type() -> glib::Type {
7483 unsafe { from_glib(ffi::gtk_list_tab_behavior_get_type()) }
7484 }
7485}
7486
7487#[cfg(feature = "v4_12")]
7488#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7489impl glib::HasParamSpec for ListTabBehavior {
7490 type ParamSpec = glib::ParamSpecEnum;
7491 type SetValue = Self;
7492 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7493
7494 fn param_spec_builder() -> Self::BuilderFn {
7495 Self::ParamSpec::builder_with_default
7496 }
7497}
7498
7499#[cfg(feature = "v4_12")]
7500#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7501impl glib::value::ValueType for ListTabBehavior {
7502 type Type = Self;
7503}
7504
7505#[cfg(feature = "v4_12")]
7506#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7507unsafe impl<'a> glib::value::FromValue<'a> for ListTabBehavior {
7508 type Checker = glib::value::GenericValueTypeChecker<Self>;
7509
7510 #[inline]
7511 unsafe fn from_value(value: &'a glib::Value) -> Self {
7512 skip_assert_initialized!();
7513 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
7514 }
7515}
7516
7517#[cfg(feature = "v4_12")]
7518#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7519impl ToValue for ListTabBehavior {
7520 #[inline]
7521 fn to_value(&self) -> glib::Value {
7522 let mut value = glib::Value::for_value_type::<Self>();
7523 unsafe {
7524 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7525 }
7526 value
7527 }
7528
7529 #[inline]
7530 fn value_type(&self) -> glib::Type {
7531 Self::static_type()
7532 }
7533}
7534
7535#[cfg(feature = "v4_12")]
7536#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7537impl From<ListTabBehavior> for glib::Value {
7538 #[inline]
7539 fn from(v: ListTabBehavior) -> Self {
7540 skip_assert_initialized!();
7541 ToValue::to_value(&v)
7542 }
7543}
7544
7545#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7547#[non_exhaustive]
7548#[doc(alias = "GtkMessageType")]
7549pub enum MessageType {
7550 #[doc(alias = "GTK_MESSAGE_INFO")]
7552 Info,
7553 #[doc(alias = "GTK_MESSAGE_WARNING")]
7555 Warning,
7556 #[doc(alias = "GTK_MESSAGE_QUESTION")]
7558 Question,
7559 #[doc(alias = "GTK_MESSAGE_ERROR")]
7561 Error,
7562 #[doc(alias = "GTK_MESSAGE_OTHER")]
7564 Other,
7565 #[doc(hidden)]
7566 __Unknown(i32),
7567}
7568
7569#[doc(hidden)]
7570impl IntoGlib for MessageType {
7571 type GlibType = ffi::GtkMessageType;
7572
7573 #[inline]
7574 fn into_glib(self) -> ffi::GtkMessageType {
7575 match self {
7576 Self::Info => ffi::GTK_MESSAGE_INFO,
7577 Self::Warning => ffi::GTK_MESSAGE_WARNING,
7578 Self::Question => ffi::GTK_MESSAGE_QUESTION,
7579 Self::Error => ffi::GTK_MESSAGE_ERROR,
7580 Self::Other => ffi::GTK_MESSAGE_OTHER,
7581 Self::__Unknown(value) => value,
7582 }
7583 }
7584}
7585
7586#[doc(hidden)]
7587impl FromGlib<ffi::GtkMessageType> for MessageType {
7588 #[inline]
7589 unsafe fn from_glib(value: ffi::GtkMessageType) -> Self {
7590 skip_assert_initialized!();
7591
7592 match value {
7593 ffi::GTK_MESSAGE_INFO => Self::Info,
7594 ffi::GTK_MESSAGE_WARNING => Self::Warning,
7595 ffi::GTK_MESSAGE_QUESTION => Self::Question,
7596 ffi::GTK_MESSAGE_ERROR => Self::Error,
7597 ffi::GTK_MESSAGE_OTHER => Self::Other,
7598 value => Self::__Unknown(value),
7599 }
7600 }
7601}
7602
7603impl StaticType for MessageType {
7604 #[inline]
7605 #[doc(alias = "gtk_message_type_get_type")]
7606 fn static_type() -> glib::Type {
7607 unsafe { from_glib(ffi::gtk_message_type_get_type()) }
7608 }
7609}
7610
7611impl glib::HasParamSpec for MessageType {
7612 type ParamSpec = glib::ParamSpecEnum;
7613 type SetValue = Self;
7614 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7615
7616 fn param_spec_builder() -> Self::BuilderFn {
7617 Self::ParamSpec::builder_with_default
7618 }
7619}
7620
7621impl glib::value::ValueType for MessageType {
7622 type Type = Self;
7623}
7624
7625unsafe impl<'a> glib::value::FromValue<'a> for MessageType {
7626 type Checker = glib::value::GenericValueTypeChecker<Self>;
7627
7628 #[inline]
7629 unsafe fn from_value(value: &'a glib::Value) -> Self {
7630 skip_assert_initialized!();
7631 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
7632 }
7633}
7634
7635impl ToValue for MessageType {
7636 #[inline]
7637 fn to_value(&self) -> glib::Value {
7638 let mut value = glib::Value::for_value_type::<Self>();
7639 unsafe {
7640 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7641 }
7642 value
7643 }
7644
7645 #[inline]
7646 fn value_type(&self) -> glib::Type {
7647 Self::static_type()
7648 }
7649}
7650
7651impl From<MessageType> for glib::Value {
7652 #[inline]
7653 fn from(v: MessageType) -> Self {
7654 skip_assert_initialized!();
7655 ToValue::to_value(&v)
7656 }
7657}
7658
7659#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7662#[non_exhaustive]
7663#[doc(alias = "GtkMovementStep")]
7664pub enum MovementStep {
7665 #[doc(alias = "GTK_MOVEMENT_LOGICAL_POSITIONS")]
7667 LogicalPositions,
7668 #[doc(alias = "GTK_MOVEMENT_VISUAL_POSITIONS")]
7670 VisualPositions,
7671 #[doc(alias = "GTK_MOVEMENT_WORDS")]
7673 Words,
7674 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINES")]
7676 DisplayLines,
7677 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINE_ENDS")]
7679 DisplayLineEnds,
7680 #[doc(alias = "GTK_MOVEMENT_PARAGRAPHS")]
7682 Paragraphs,
7683 #[doc(alias = "GTK_MOVEMENT_PARAGRAPH_ENDS")]
7685 ParagraphEnds,
7686 #[doc(alias = "GTK_MOVEMENT_PAGES")]
7688 Pages,
7689 #[doc(alias = "GTK_MOVEMENT_BUFFER_ENDS")]
7691 BufferEnds,
7692 #[doc(alias = "GTK_MOVEMENT_HORIZONTAL_PAGES")]
7694 HorizontalPages,
7695 #[doc(hidden)]
7696 __Unknown(i32),
7697}
7698
7699#[doc(hidden)]
7700impl IntoGlib for MovementStep {
7701 type GlibType = ffi::GtkMovementStep;
7702
7703 #[inline]
7704 fn into_glib(self) -> ffi::GtkMovementStep {
7705 match self {
7706 Self::LogicalPositions => ffi::GTK_MOVEMENT_LOGICAL_POSITIONS,
7707 Self::VisualPositions => ffi::GTK_MOVEMENT_VISUAL_POSITIONS,
7708 Self::Words => ffi::GTK_MOVEMENT_WORDS,
7709 Self::DisplayLines => ffi::GTK_MOVEMENT_DISPLAY_LINES,
7710 Self::DisplayLineEnds => ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS,
7711 Self::Paragraphs => ffi::GTK_MOVEMENT_PARAGRAPHS,
7712 Self::ParagraphEnds => ffi::GTK_MOVEMENT_PARAGRAPH_ENDS,
7713 Self::Pages => ffi::GTK_MOVEMENT_PAGES,
7714 Self::BufferEnds => ffi::GTK_MOVEMENT_BUFFER_ENDS,
7715 Self::HorizontalPages => ffi::GTK_MOVEMENT_HORIZONTAL_PAGES,
7716 Self::__Unknown(value) => value,
7717 }
7718 }
7719}
7720
7721#[doc(hidden)]
7722impl FromGlib<ffi::GtkMovementStep> for MovementStep {
7723 #[inline]
7724 unsafe fn from_glib(value: ffi::GtkMovementStep) -> Self {
7725 skip_assert_initialized!();
7726
7727 match value {
7728 ffi::GTK_MOVEMENT_LOGICAL_POSITIONS => Self::LogicalPositions,
7729 ffi::GTK_MOVEMENT_VISUAL_POSITIONS => Self::VisualPositions,
7730 ffi::GTK_MOVEMENT_WORDS => Self::Words,
7731 ffi::GTK_MOVEMENT_DISPLAY_LINES => Self::DisplayLines,
7732 ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS => Self::DisplayLineEnds,
7733 ffi::GTK_MOVEMENT_PARAGRAPHS => Self::Paragraphs,
7734 ffi::GTK_MOVEMENT_PARAGRAPH_ENDS => Self::ParagraphEnds,
7735 ffi::GTK_MOVEMENT_PAGES => Self::Pages,
7736 ffi::GTK_MOVEMENT_BUFFER_ENDS => Self::BufferEnds,
7737 ffi::GTK_MOVEMENT_HORIZONTAL_PAGES => Self::HorizontalPages,
7738 value => Self::__Unknown(value),
7739 }
7740 }
7741}
7742
7743impl StaticType for MovementStep {
7744 #[inline]
7745 #[doc(alias = "gtk_movement_step_get_type")]
7746 fn static_type() -> glib::Type {
7747 unsafe { from_glib(ffi::gtk_movement_step_get_type()) }
7748 }
7749}
7750
7751impl glib::HasParamSpec for MovementStep {
7752 type ParamSpec = glib::ParamSpecEnum;
7753 type SetValue = Self;
7754 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7755
7756 fn param_spec_builder() -> Self::BuilderFn {
7757 Self::ParamSpec::builder_with_default
7758 }
7759}
7760
7761impl glib::value::ValueType for MovementStep {
7762 type Type = Self;
7763}
7764
7765unsafe impl<'a> glib::value::FromValue<'a> for MovementStep {
7766 type Checker = glib::value::GenericValueTypeChecker<Self>;
7767
7768 #[inline]
7769 unsafe fn from_value(value: &'a glib::Value) -> Self {
7770 skip_assert_initialized!();
7771 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
7772 }
7773}
7774
7775impl ToValue for MovementStep {
7776 #[inline]
7777 fn to_value(&self) -> glib::Value {
7778 let mut value = glib::Value::for_value_type::<Self>();
7779 unsafe {
7780 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7781 }
7782 value
7783 }
7784
7785 #[inline]
7786 fn value_type(&self) -> glib::Type {
7787 Self::static_type()
7788 }
7789}
7790
7791impl From<MovementStep> for glib::Value {
7792 #[inline]
7793 fn from(v: MovementStep) -> Self {
7794 skip_assert_initialized!();
7795 ToValue::to_value(&v)
7796 }
7797}
7798
7799#[cfg(feature = "v4_6")]
7804#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7805#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7806#[non_exhaustive]
7807#[doc(alias = "GtkNaturalWrapMode")]
7808pub enum NaturalWrapMode {
7809 #[doc(alias = "GTK_NATURAL_WRAP_INHERIT")]
7812 Inherit,
7813 #[doc(alias = "GTK_NATURAL_WRAP_NONE")]
7817 None,
7818 #[doc(alias = "GTK_NATURAL_WRAP_WORD")]
7822 Word,
7823 #[doc(hidden)]
7824 __Unknown(i32),
7825}
7826
7827#[cfg(feature = "v4_6")]
7828#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7829#[doc(hidden)]
7830impl IntoGlib for NaturalWrapMode {
7831 type GlibType = ffi::GtkNaturalWrapMode;
7832
7833 #[inline]
7834 fn into_glib(self) -> ffi::GtkNaturalWrapMode {
7835 match self {
7836 Self::Inherit => ffi::GTK_NATURAL_WRAP_INHERIT,
7837 Self::None => ffi::GTK_NATURAL_WRAP_NONE,
7838 Self::Word => ffi::GTK_NATURAL_WRAP_WORD,
7839 Self::__Unknown(value) => value,
7840 }
7841 }
7842}
7843
7844#[cfg(feature = "v4_6")]
7845#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7846#[doc(hidden)]
7847impl FromGlib<ffi::GtkNaturalWrapMode> for NaturalWrapMode {
7848 #[inline]
7849 unsafe fn from_glib(value: ffi::GtkNaturalWrapMode) -> Self {
7850 skip_assert_initialized!();
7851
7852 match value {
7853 ffi::GTK_NATURAL_WRAP_INHERIT => Self::Inherit,
7854 ffi::GTK_NATURAL_WRAP_NONE => Self::None,
7855 ffi::GTK_NATURAL_WRAP_WORD => Self::Word,
7856 value => Self::__Unknown(value),
7857 }
7858 }
7859}
7860
7861#[cfg(feature = "v4_6")]
7862#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7863impl StaticType for NaturalWrapMode {
7864 #[inline]
7865 #[doc(alias = "gtk_natural_wrap_mode_get_type")]
7866 fn static_type() -> glib::Type {
7867 unsafe { from_glib(ffi::gtk_natural_wrap_mode_get_type()) }
7868 }
7869}
7870
7871#[cfg(feature = "v4_6")]
7872#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7873impl glib::HasParamSpec for NaturalWrapMode {
7874 type ParamSpec = glib::ParamSpecEnum;
7875 type SetValue = Self;
7876 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7877
7878 fn param_spec_builder() -> Self::BuilderFn {
7879 Self::ParamSpec::builder_with_default
7880 }
7881}
7882
7883#[cfg(feature = "v4_6")]
7884#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7885impl glib::value::ValueType for NaturalWrapMode {
7886 type Type = Self;
7887}
7888
7889#[cfg(feature = "v4_6")]
7890#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7891unsafe impl<'a> glib::value::FromValue<'a> for NaturalWrapMode {
7892 type Checker = glib::value::GenericValueTypeChecker<Self>;
7893
7894 #[inline]
7895 unsafe fn from_value(value: &'a glib::Value) -> Self {
7896 skip_assert_initialized!();
7897 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
7898 }
7899}
7900
7901#[cfg(feature = "v4_6")]
7902#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7903impl ToValue for NaturalWrapMode {
7904 #[inline]
7905 fn to_value(&self) -> glib::Value {
7906 let mut value = glib::Value::for_value_type::<Self>();
7907 unsafe {
7908 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7909 }
7910 value
7911 }
7912
7913 #[inline]
7914 fn value_type(&self) -> glib::Type {
7915 Self::static_type()
7916 }
7917}
7918
7919#[cfg(feature = "v4_6")]
7920#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7921impl From<NaturalWrapMode> for glib::Value {
7922 #[inline]
7923 fn from(v: NaturalWrapMode) -> Self {
7924 skip_assert_initialized!();
7925 ToValue::to_value(&v)
7926 }
7927}
7928
7929#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7931#[non_exhaustive]
7932#[doc(alias = "GtkNotebookTab")]
7933pub enum NotebookTab {
7934 #[doc(alias = "GTK_NOTEBOOK_TAB_FIRST")]
7936 First,
7937 #[doc(alias = "GTK_NOTEBOOK_TAB_LAST")]
7939 Last,
7940 #[doc(hidden)]
7941 __Unknown(i32),
7942}
7943
7944#[doc(hidden)]
7945impl IntoGlib for NotebookTab {
7946 type GlibType = ffi::GtkNotebookTab;
7947
7948 #[inline]
7949 fn into_glib(self) -> ffi::GtkNotebookTab {
7950 match self {
7951 Self::First => ffi::GTK_NOTEBOOK_TAB_FIRST,
7952 Self::Last => ffi::GTK_NOTEBOOK_TAB_LAST,
7953 Self::__Unknown(value) => value,
7954 }
7955 }
7956}
7957
7958#[doc(hidden)]
7959impl FromGlib<ffi::GtkNotebookTab> for NotebookTab {
7960 #[inline]
7961 unsafe fn from_glib(value: ffi::GtkNotebookTab) -> Self {
7962 skip_assert_initialized!();
7963
7964 match value {
7965 ffi::GTK_NOTEBOOK_TAB_FIRST => Self::First,
7966 ffi::GTK_NOTEBOOK_TAB_LAST => Self::Last,
7967 value => Self::__Unknown(value),
7968 }
7969 }
7970}
7971
7972impl StaticType for NotebookTab {
7973 #[inline]
7974 #[doc(alias = "gtk_notebook_tab_get_type")]
7975 fn static_type() -> glib::Type {
7976 unsafe { from_glib(ffi::gtk_notebook_tab_get_type()) }
7977 }
7978}
7979
7980impl glib::HasParamSpec for NotebookTab {
7981 type ParamSpec = glib::ParamSpecEnum;
7982 type SetValue = Self;
7983 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7984
7985 fn param_spec_builder() -> Self::BuilderFn {
7986 Self::ParamSpec::builder_with_default
7987 }
7988}
7989
7990impl glib::value::ValueType for NotebookTab {
7991 type Type = Self;
7992}
7993
7994unsafe impl<'a> glib::value::FromValue<'a> for NotebookTab {
7995 type Checker = glib::value::GenericValueTypeChecker<Self>;
7996
7997 #[inline]
7998 unsafe fn from_value(value: &'a glib::Value) -> Self {
7999 skip_assert_initialized!();
8000 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8001 }
8002}
8003
8004impl ToValue for NotebookTab {
8005 #[inline]
8006 fn to_value(&self) -> glib::Value {
8007 let mut value = glib::Value::for_value_type::<Self>();
8008 unsafe {
8009 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8010 }
8011 value
8012 }
8013
8014 #[inline]
8015 fn value_type(&self) -> glib::Type {
8016 Self::static_type()
8017 }
8018}
8019
8020impl From<NotebookTab> for glib::Value {
8021 #[inline]
8022 fn from(v: NotebookTab) -> Self {
8023 skip_assert_initialized!();
8024 ToValue::to_value(&v)
8025 }
8026}
8027
8028#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8031#[non_exhaustive]
8032#[doc(alias = "GtkNumberUpLayout")]
8033pub enum NumberUpLayout {
8034 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM")]
8036 Lrtb,
8037 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP")]
8039 Lrbt,
8040 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM")]
8042 Rltb,
8043 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP")]
8045 Rlbt,
8046 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT")]
8048 Tblr,
8049 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT")]
8051 Tbrl,
8052 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT")]
8054 Btlr,
8055 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT")]
8057 Btrl,
8058 #[doc(hidden)]
8059 __Unknown(i32),
8060}
8061
8062#[doc(hidden)]
8063impl IntoGlib for NumberUpLayout {
8064 type GlibType = ffi::GtkNumberUpLayout;
8065
8066 #[inline]
8067 fn into_glib(self) -> ffi::GtkNumberUpLayout {
8068 match self {
8069 Self::Lrtb => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM,
8070 Self::Lrbt => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP,
8071 Self::Rltb => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM,
8072 Self::Rlbt => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP,
8073 Self::Tblr => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT,
8074 Self::Tbrl => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT,
8075 Self::Btlr => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT,
8076 Self::Btrl => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT,
8077 Self::__Unknown(value) => value,
8078 }
8079 }
8080}
8081
8082#[doc(hidden)]
8083impl FromGlib<ffi::GtkNumberUpLayout> for NumberUpLayout {
8084 #[inline]
8085 unsafe fn from_glib(value: ffi::GtkNumberUpLayout) -> Self {
8086 skip_assert_initialized!();
8087
8088 match value {
8089 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM => Self::Lrtb,
8090 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP => Self::Lrbt,
8091 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM => Self::Rltb,
8092 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP => Self::Rlbt,
8093 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT => Self::Tblr,
8094 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT => Self::Tbrl,
8095 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT => Self::Btlr,
8096 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT => Self::Btrl,
8097 value => Self::__Unknown(value),
8098 }
8099 }
8100}
8101
8102impl StaticType for NumberUpLayout {
8103 #[inline]
8104 #[doc(alias = "gtk_number_up_layout_get_type")]
8105 fn static_type() -> glib::Type {
8106 unsafe { from_glib(ffi::gtk_number_up_layout_get_type()) }
8107 }
8108}
8109
8110impl glib::HasParamSpec for NumberUpLayout {
8111 type ParamSpec = glib::ParamSpecEnum;
8112 type SetValue = Self;
8113 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8114
8115 fn param_spec_builder() -> Self::BuilderFn {
8116 Self::ParamSpec::builder_with_default
8117 }
8118}
8119
8120impl glib::value::ValueType for NumberUpLayout {
8121 type Type = Self;
8122}
8123
8124unsafe impl<'a> glib::value::FromValue<'a> for NumberUpLayout {
8125 type Checker = glib::value::GenericValueTypeChecker<Self>;
8126
8127 #[inline]
8128 unsafe fn from_value(value: &'a glib::Value) -> Self {
8129 skip_assert_initialized!();
8130 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8131 }
8132}
8133
8134impl ToValue for NumberUpLayout {
8135 #[inline]
8136 fn to_value(&self) -> glib::Value {
8137 let mut value = glib::Value::for_value_type::<Self>();
8138 unsafe {
8139 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8140 }
8141 value
8142 }
8143
8144 #[inline]
8145 fn value_type(&self) -> glib::Type {
8146 Self::static_type()
8147 }
8148}
8149
8150impl From<NumberUpLayout> for glib::Value {
8151 #[inline]
8152 fn from(v: NumberUpLayout) -> Self {
8153 skip_assert_initialized!();
8154 ToValue::to_value(&v)
8155 }
8156}
8157
8158#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8165#[non_exhaustive]
8166#[doc(alias = "GtkOrdering")]
8167pub enum Ordering {
8168 #[doc(alias = "GTK_ORDERING_SMALLER")]
8170 Smaller,
8171 #[doc(alias = "GTK_ORDERING_EQUAL")]
8173 Equal,
8174 #[doc(alias = "GTK_ORDERING_LARGER")]
8176 Larger,
8177 #[doc(hidden)]
8178 __Unknown(i32),
8179}
8180
8181#[doc(hidden)]
8182impl IntoGlib for Ordering {
8183 type GlibType = ffi::GtkOrdering;
8184
8185 #[inline]
8186 fn into_glib(self) -> ffi::GtkOrdering {
8187 match self {
8188 Self::Smaller => ffi::GTK_ORDERING_SMALLER,
8189 Self::Equal => ffi::GTK_ORDERING_EQUAL,
8190 Self::Larger => ffi::GTK_ORDERING_LARGER,
8191 Self::__Unknown(value) => value,
8192 }
8193 }
8194}
8195
8196#[doc(hidden)]
8197impl FromGlib<ffi::GtkOrdering> for Ordering {
8198 #[inline]
8199 unsafe fn from_glib(value: ffi::GtkOrdering) -> Self {
8200 skip_assert_initialized!();
8201
8202 match value {
8203 ffi::GTK_ORDERING_SMALLER => Self::Smaller,
8204 ffi::GTK_ORDERING_EQUAL => Self::Equal,
8205 ffi::GTK_ORDERING_LARGER => Self::Larger,
8206 value => Self::__Unknown(value),
8207 }
8208 }
8209}
8210
8211impl StaticType for Ordering {
8212 #[inline]
8213 #[doc(alias = "gtk_ordering_get_type")]
8214 fn static_type() -> glib::Type {
8215 unsafe { from_glib(ffi::gtk_ordering_get_type()) }
8216 }
8217}
8218
8219impl glib::HasParamSpec for Ordering {
8220 type ParamSpec = glib::ParamSpecEnum;
8221 type SetValue = Self;
8222 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8223
8224 fn param_spec_builder() -> Self::BuilderFn {
8225 Self::ParamSpec::builder_with_default
8226 }
8227}
8228
8229impl glib::value::ValueType for Ordering {
8230 type Type = Self;
8231}
8232
8233unsafe impl<'a> glib::value::FromValue<'a> for Ordering {
8234 type Checker = glib::value::GenericValueTypeChecker<Self>;
8235
8236 #[inline]
8237 unsafe fn from_value(value: &'a glib::Value) -> Self {
8238 skip_assert_initialized!();
8239 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8240 }
8241}
8242
8243impl ToValue for Ordering {
8244 #[inline]
8245 fn to_value(&self) -> glib::Value {
8246 let mut value = glib::Value::for_value_type::<Self>();
8247 unsafe {
8248 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8249 }
8250 value
8251 }
8252
8253 #[inline]
8254 fn value_type(&self) -> glib::Type {
8255 Self::static_type()
8256 }
8257}
8258
8259impl From<Ordering> for glib::Value {
8260 #[inline]
8261 fn from(v: Ordering) -> Self {
8262 skip_assert_initialized!();
8263 ToValue::to_value(&v)
8264 }
8265}
8266
8267#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8271#[non_exhaustive]
8272#[doc(alias = "GtkOrientation")]
8273pub enum Orientation {
8274 #[doc(alias = "GTK_ORIENTATION_HORIZONTAL")]
8276 Horizontal,
8277 #[doc(alias = "GTK_ORIENTATION_VERTICAL")]
8279 Vertical,
8280 #[doc(hidden)]
8281 __Unknown(i32),
8282}
8283
8284#[doc(hidden)]
8285impl IntoGlib for Orientation {
8286 type GlibType = ffi::GtkOrientation;
8287
8288 #[inline]
8289 fn into_glib(self) -> ffi::GtkOrientation {
8290 match self {
8291 Self::Horizontal => ffi::GTK_ORIENTATION_HORIZONTAL,
8292 Self::Vertical => ffi::GTK_ORIENTATION_VERTICAL,
8293 Self::__Unknown(value) => value,
8294 }
8295 }
8296}
8297
8298#[doc(hidden)]
8299impl FromGlib<ffi::GtkOrientation> for Orientation {
8300 #[inline]
8301 unsafe fn from_glib(value: ffi::GtkOrientation) -> Self {
8302 skip_assert_initialized!();
8303
8304 match value {
8305 ffi::GTK_ORIENTATION_HORIZONTAL => Self::Horizontal,
8306 ffi::GTK_ORIENTATION_VERTICAL => Self::Vertical,
8307 value => Self::__Unknown(value),
8308 }
8309 }
8310}
8311
8312impl StaticType for Orientation {
8313 #[inline]
8314 #[doc(alias = "gtk_orientation_get_type")]
8315 fn static_type() -> glib::Type {
8316 unsafe { from_glib(ffi::gtk_orientation_get_type()) }
8317 }
8318}
8319
8320impl glib::HasParamSpec for Orientation {
8321 type ParamSpec = glib::ParamSpecEnum;
8322 type SetValue = Self;
8323 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8324
8325 fn param_spec_builder() -> Self::BuilderFn {
8326 Self::ParamSpec::builder_with_default
8327 }
8328}
8329
8330impl glib::value::ValueType for Orientation {
8331 type Type = Self;
8332}
8333
8334unsafe impl<'a> glib::value::FromValue<'a> for Orientation {
8335 type Checker = glib::value::GenericValueTypeChecker<Self>;
8336
8337 #[inline]
8338 unsafe fn from_value(value: &'a glib::Value) -> Self {
8339 skip_assert_initialized!();
8340 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8341 }
8342}
8343
8344impl ToValue for Orientation {
8345 #[inline]
8346 fn to_value(&self) -> glib::Value {
8347 let mut value = glib::Value::for_value_type::<Self>();
8348 unsafe {
8349 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8350 }
8351 value
8352 }
8353
8354 #[inline]
8355 fn value_type(&self) -> glib::Type {
8356 Self::static_type()
8357 }
8358}
8359
8360impl From<Orientation> for glib::Value {
8361 #[inline]
8362 fn from(v: Orientation) -> Self {
8363 skip_assert_initialized!();
8364 ToValue::to_value(&v)
8365 }
8366}
8367
8368#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8374#[non_exhaustive]
8375#[doc(alias = "GtkOverflow")]
8376pub enum Overflow {
8377 #[doc(alias = "GTK_OVERFLOW_VISIBLE")]
8380 Visible,
8381 #[doc(alias = "GTK_OVERFLOW_HIDDEN")]
8384 Hidden,
8385 #[doc(hidden)]
8386 __Unknown(i32),
8387}
8388
8389#[doc(hidden)]
8390impl IntoGlib for Overflow {
8391 type GlibType = ffi::GtkOverflow;
8392
8393 #[inline]
8394 fn into_glib(self) -> ffi::GtkOverflow {
8395 match self {
8396 Self::Visible => ffi::GTK_OVERFLOW_VISIBLE,
8397 Self::Hidden => ffi::GTK_OVERFLOW_HIDDEN,
8398 Self::__Unknown(value) => value,
8399 }
8400 }
8401}
8402
8403#[doc(hidden)]
8404impl FromGlib<ffi::GtkOverflow> for Overflow {
8405 #[inline]
8406 unsafe fn from_glib(value: ffi::GtkOverflow) -> Self {
8407 skip_assert_initialized!();
8408
8409 match value {
8410 ffi::GTK_OVERFLOW_VISIBLE => Self::Visible,
8411 ffi::GTK_OVERFLOW_HIDDEN => Self::Hidden,
8412 value => Self::__Unknown(value),
8413 }
8414 }
8415}
8416
8417impl StaticType for Overflow {
8418 #[inline]
8419 #[doc(alias = "gtk_overflow_get_type")]
8420 fn static_type() -> glib::Type {
8421 unsafe { from_glib(ffi::gtk_overflow_get_type()) }
8422 }
8423}
8424
8425impl glib::HasParamSpec for Overflow {
8426 type ParamSpec = glib::ParamSpecEnum;
8427 type SetValue = Self;
8428 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8429
8430 fn param_spec_builder() -> Self::BuilderFn {
8431 Self::ParamSpec::builder_with_default
8432 }
8433}
8434
8435impl glib::value::ValueType for Overflow {
8436 type Type = Self;
8437}
8438
8439unsafe impl<'a> glib::value::FromValue<'a> for Overflow {
8440 type Checker = glib::value::GenericValueTypeChecker<Self>;
8441
8442 #[inline]
8443 unsafe fn from_value(value: &'a glib::Value) -> Self {
8444 skip_assert_initialized!();
8445 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8446 }
8447}
8448
8449impl ToValue for Overflow {
8450 #[inline]
8451 fn to_value(&self) -> glib::Value {
8452 let mut value = glib::Value::for_value_type::<Self>();
8453 unsafe {
8454 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8455 }
8456 value
8457 }
8458
8459 #[inline]
8460 fn value_type(&self) -> glib::Type {
8461 Self::static_type()
8462 }
8463}
8464
8465impl From<Overflow> for glib::Value {
8466 #[inline]
8467 fn from(v: Overflow) -> Self {
8468 skip_assert_initialized!();
8469 ToValue::to_value(&v)
8470 }
8471}
8472
8473#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8477#[non_exhaustive]
8478#[doc(alias = "GtkPackType")]
8479pub enum PackType {
8480 #[doc(alias = "GTK_PACK_START")]
8482 Start,
8483 #[doc(alias = "GTK_PACK_END")]
8485 End,
8486 #[doc(hidden)]
8487 __Unknown(i32),
8488}
8489
8490#[doc(hidden)]
8491impl IntoGlib for PackType {
8492 type GlibType = ffi::GtkPackType;
8493
8494 #[inline]
8495 fn into_glib(self) -> ffi::GtkPackType {
8496 match self {
8497 Self::Start => ffi::GTK_PACK_START,
8498 Self::End => ffi::GTK_PACK_END,
8499 Self::__Unknown(value) => value,
8500 }
8501 }
8502}
8503
8504#[doc(hidden)]
8505impl FromGlib<ffi::GtkPackType> for PackType {
8506 #[inline]
8507 unsafe fn from_glib(value: ffi::GtkPackType) -> Self {
8508 skip_assert_initialized!();
8509
8510 match value {
8511 ffi::GTK_PACK_START => Self::Start,
8512 ffi::GTK_PACK_END => Self::End,
8513 value => Self::__Unknown(value),
8514 }
8515 }
8516}
8517
8518impl StaticType for PackType {
8519 #[inline]
8520 #[doc(alias = "gtk_pack_type_get_type")]
8521 fn static_type() -> glib::Type {
8522 unsafe { from_glib(ffi::gtk_pack_type_get_type()) }
8523 }
8524}
8525
8526impl glib::HasParamSpec for PackType {
8527 type ParamSpec = glib::ParamSpecEnum;
8528 type SetValue = Self;
8529 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8530
8531 fn param_spec_builder() -> Self::BuilderFn {
8532 Self::ParamSpec::builder_with_default
8533 }
8534}
8535
8536impl glib::value::ValueType for PackType {
8537 type Type = Self;
8538}
8539
8540unsafe impl<'a> glib::value::FromValue<'a> for PackType {
8541 type Checker = glib::value::GenericValueTypeChecker<Self>;
8542
8543 #[inline]
8544 unsafe fn from_value(value: &'a glib::Value) -> Self {
8545 skip_assert_initialized!();
8546 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8547 }
8548}
8549
8550impl ToValue for PackType {
8551 #[inline]
8552 fn to_value(&self) -> glib::Value {
8553 let mut value = glib::Value::for_value_type::<Self>();
8554 unsafe {
8555 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8556 }
8557 value
8558 }
8559
8560 #[inline]
8561 fn value_type(&self) -> glib::Type {
8562 Self::static_type()
8563 }
8564}
8565
8566impl From<PackType> for glib::Value {
8567 #[inline]
8568 fn from(v: PackType) -> Self {
8569 skip_assert_initialized!();
8570 ToValue::to_value(&v)
8571 }
8572}
8573
8574#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8576#[non_exhaustive]
8577#[doc(alias = "GtkPadActionType")]
8578pub enum PadActionType {
8579 #[doc(alias = "GTK_PAD_ACTION_BUTTON")]
8581 Button,
8582 #[doc(alias = "GTK_PAD_ACTION_RING")]
8584 Ring,
8585 #[doc(alias = "GTK_PAD_ACTION_STRIP")]
8587 Strip,
8588 #[doc(alias = "GTK_PAD_ACTION_DIAL")]
8590 Dial,
8591 #[doc(hidden)]
8592 __Unknown(i32),
8593}
8594
8595#[doc(hidden)]
8596impl IntoGlib for PadActionType {
8597 type GlibType = ffi::GtkPadActionType;
8598
8599 #[inline]
8600 fn into_glib(self) -> ffi::GtkPadActionType {
8601 match self {
8602 Self::Button => ffi::GTK_PAD_ACTION_BUTTON,
8603 Self::Ring => ffi::GTK_PAD_ACTION_RING,
8604 Self::Strip => ffi::GTK_PAD_ACTION_STRIP,
8605 Self::Dial => ffi::GTK_PAD_ACTION_DIAL,
8606 Self::__Unknown(value) => value,
8607 }
8608 }
8609}
8610
8611#[doc(hidden)]
8612impl FromGlib<ffi::GtkPadActionType> for PadActionType {
8613 #[inline]
8614 unsafe fn from_glib(value: ffi::GtkPadActionType) -> Self {
8615 skip_assert_initialized!();
8616
8617 match value {
8618 ffi::GTK_PAD_ACTION_BUTTON => Self::Button,
8619 ffi::GTK_PAD_ACTION_RING => Self::Ring,
8620 ffi::GTK_PAD_ACTION_STRIP => Self::Strip,
8621 ffi::GTK_PAD_ACTION_DIAL => Self::Dial,
8622 value => Self::__Unknown(value),
8623 }
8624 }
8625}
8626
8627impl StaticType for PadActionType {
8628 #[inline]
8629 #[doc(alias = "gtk_pad_action_type_get_type")]
8630 fn static_type() -> glib::Type {
8631 unsafe { from_glib(ffi::gtk_pad_action_type_get_type()) }
8632 }
8633}
8634
8635impl glib::HasParamSpec for PadActionType {
8636 type ParamSpec = glib::ParamSpecEnum;
8637 type SetValue = Self;
8638 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8639
8640 fn param_spec_builder() -> Self::BuilderFn {
8641 Self::ParamSpec::builder_with_default
8642 }
8643}
8644
8645impl glib::value::ValueType for PadActionType {
8646 type Type = Self;
8647}
8648
8649unsafe impl<'a> glib::value::FromValue<'a> for PadActionType {
8650 type Checker = glib::value::GenericValueTypeChecker<Self>;
8651
8652 #[inline]
8653 unsafe fn from_value(value: &'a glib::Value) -> Self {
8654 skip_assert_initialized!();
8655 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8656 }
8657}
8658
8659impl ToValue for PadActionType {
8660 #[inline]
8661 fn to_value(&self) -> glib::Value {
8662 let mut value = glib::Value::for_value_type::<Self>();
8663 unsafe {
8664 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8665 }
8666 value
8667 }
8668
8669 #[inline]
8670 fn value_type(&self) -> glib::Type {
8671 Self::static_type()
8672 }
8673}
8674
8675impl From<PadActionType> for glib::Value {
8676 #[inline]
8677 fn from(v: PadActionType) -> Self {
8678 skip_assert_initialized!();
8679 ToValue::to_value(&v)
8680 }
8681}
8682
8683#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8685#[non_exhaustive]
8686#[doc(alias = "GtkPageOrientation")]
8687pub enum PageOrientation {
8688 #[doc(alias = "GTK_PAGE_ORIENTATION_PORTRAIT")]
8690 Portrait,
8691 #[doc(alias = "GTK_PAGE_ORIENTATION_LANDSCAPE")]
8693 Landscape,
8694 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT")]
8696 ReversePortrait,
8697 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE")]
8699 ReverseLandscape,
8700 #[doc(hidden)]
8701 __Unknown(i32),
8702}
8703
8704#[doc(hidden)]
8705impl IntoGlib for PageOrientation {
8706 type GlibType = ffi::GtkPageOrientation;
8707
8708 #[inline]
8709 fn into_glib(self) -> ffi::GtkPageOrientation {
8710 match self {
8711 Self::Portrait => ffi::GTK_PAGE_ORIENTATION_PORTRAIT,
8712 Self::Landscape => ffi::GTK_PAGE_ORIENTATION_LANDSCAPE,
8713 Self::ReversePortrait => ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT,
8714 Self::ReverseLandscape => ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE,
8715 Self::__Unknown(value) => value,
8716 }
8717 }
8718}
8719
8720#[doc(hidden)]
8721impl FromGlib<ffi::GtkPageOrientation> for PageOrientation {
8722 #[inline]
8723 unsafe fn from_glib(value: ffi::GtkPageOrientation) -> Self {
8724 skip_assert_initialized!();
8725
8726 match value {
8727 ffi::GTK_PAGE_ORIENTATION_PORTRAIT => Self::Portrait,
8728 ffi::GTK_PAGE_ORIENTATION_LANDSCAPE => Self::Landscape,
8729 ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT => Self::ReversePortrait,
8730 ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE => Self::ReverseLandscape,
8731 value => Self::__Unknown(value),
8732 }
8733 }
8734}
8735
8736impl StaticType for PageOrientation {
8737 #[inline]
8738 #[doc(alias = "gtk_page_orientation_get_type")]
8739 fn static_type() -> glib::Type {
8740 unsafe { from_glib(ffi::gtk_page_orientation_get_type()) }
8741 }
8742}
8743
8744impl glib::HasParamSpec for PageOrientation {
8745 type ParamSpec = glib::ParamSpecEnum;
8746 type SetValue = Self;
8747 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8748
8749 fn param_spec_builder() -> Self::BuilderFn {
8750 Self::ParamSpec::builder_with_default
8751 }
8752}
8753
8754impl glib::value::ValueType for PageOrientation {
8755 type Type = Self;
8756}
8757
8758unsafe impl<'a> glib::value::FromValue<'a> for PageOrientation {
8759 type Checker = glib::value::GenericValueTypeChecker<Self>;
8760
8761 #[inline]
8762 unsafe fn from_value(value: &'a glib::Value) -> Self {
8763 skip_assert_initialized!();
8764 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8765 }
8766}
8767
8768impl ToValue for PageOrientation {
8769 #[inline]
8770 fn to_value(&self) -> glib::Value {
8771 let mut value = glib::Value::for_value_type::<Self>();
8772 unsafe {
8773 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8774 }
8775 value
8776 }
8777
8778 #[inline]
8779 fn value_type(&self) -> glib::Type {
8780 Self::static_type()
8781 }
8782}
8783
8784impl From<PageOrientation> for glib::Value {
8785 #[inline]
8786 fn from(v: PageOrientation) -> Self {
8787 skip_assert_initialized!();
8788 ToValue::to_value(&v)
8789 }
8790}
8791
8792#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8794#[non_exhaustive]
8795#[doc(alias = "GtkPageSet")]
8796pub enum PageSet {
8797 #[doc(alias = "GTK_PAGE_SET_ALL")]
8799 All,
8800 #[doc(alias = "GTK_PAGE_SET_EVEN")]
8802 Even,
8803 #[doc(alias = "GTK_PAGE_SET_ODD")]
8805 Odd,
8806 #[doc(hidden)]
8807 __Unknown(i32),
8808}
8809
8810#[doc(hidden)]
8811impl IntoGlib for PageSet {
8812 type GlibType = ffi::GtkPageSet;
8813
8814 #[inline]
8815 fn into_glib(self) -> ffi::GtkPageSet {
8816 match self {
8817 Self::All => ffi::GTK_PAGE_SET_ALL,
8818 Self::Even => ffi::GTK_PAGE_SET_EVEN,
8819 Self::Odd => ffi::GTK_PAGE_SET_ODD,
8820 Self::__Unknown(value) => value,
8821 }
8822 }
8823}
8824
8825#[doc(hidden)]
8826impl FromGlib<ffi::GtkPageSet> for PageSet {
8827 #[inline]
8828 unsafe fn from_glib(value: ffi::GtkPageSet) -> Self {
8829 skip_assert_initialized!();
8830
8831 match value {
8832 ffi::GTK_PAGE_SET_ALL => Self::All,
8833 ffi::GTK_PAGE_SET_EVEN => Self::Even,
8834 ffi::GTK_PAGE_SET_ODD => Self::Odd,
8835 value => Self::__Unknown(value),
8836 }
8837 }
8838}
8839
8840impl StaticType for PageSet {
8841 #[inline]
8842 #[doc(alias = "gtk_page_set_get_type")]
8843 fn static_type() -> glib::Type {
8844 unsafe { from_glib(ffi::gtk_page_set_get_type()) }
8845 }
8846}
8847
8848impl glib::HasParamSpec for PageSet {
8849 type ParamSpec = glib::ParamSpecEnum;
8850 type SetValue = Self;
8851 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8852
8853 fn param_spec_builder() -> Self::BuilderFn {
8854 Self::ParamSpec::builder_with_default
8855 }
8856}
8857
8858impl glib::value::ValueType for PageSet {
8859 type Type = Self;
8860}
8861
8862unsafe impl<'a> glib::value::FromValue<'a> for PageSet {
8863 type Checker = glib::value::GenericValueTypeChecker<Self>;
8864
8865 #[inline]
8866 unsafe fn from_value(value: &'a glib::Value) -> Self {
8867 skip_assert_initialized!();
8868 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8869 }
8870}
8871
8872impl ToValue for PageSet {
8873 #[inline]
8874 fn to_value(&self) -> glib::Value {
8875 let mut value = glib::Value::for_value_type::<Self>();
8876 unsafe {
8877 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8878 }
8879 value
8880 }
8881
8882 #[inline]
8883 fn value_type(&self) -> glib::Type {
8884 Self::static_type()
8885 }
8886}
8887
8888impl From<PageSet> for glib::Value {
8889 #[inline]
8890 fn from(v: PageSet) -> Self {
8891 skip_assert_initialized!();
8892 ToValue::to_value(&v)
8893 }
8894}
8895
8896#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8898#[non_exhaustive]
8899#[doc(alias = "GtkPanDirection")]
8900pub enum PanDirection {
8901 #[doc(alias = "GTK_PAN_DIRECTION_LEFT")]
8903 Left,
8904 #[doc(alias = "GTK_PAN_DIRECTION_RIGHT")]
8906 Right,
8907 #[doc(alias = "GTK_PAN_DIRECTION_UP")]
8909 Up,
8910 #[doc(alias = "GTK_PAN_DIRECTION_DOWN")]
8912 Down,
8913 #[doc(hidden)]
8914 __Unknown(i32),
8915}
8916
8917#[doc(hidden)]
8918impl IntoGlib for PanDirection {
8919 type GlibType = ffi::GtkPanDirection;
8920
8921 #[inline]
8922 fn into_glib(self) -> ffi::GtkPanDirection {
8923 match self {
8924 Self::Left => ffi::GTK_PAN_DIRECTION_LEFT,
8925 Self::Right => ffi::GTK_PAN_DIRECTION_RIGHT,
8926 Self::Up => ffi::GTK_PAN_DIRECTION_UP,
8927 Self::Down => ffi::GTK_PAN_DIRECTION_DOWN,
8928 Self::__Unknown(value) => value,
8929 }
8930 }
8931}
8932
8933#[doc(hidden)]
8934impl FromGlib<ffi::GtkPanDirection> for PanDirection {
8935 #[inline]
8936 unsafe fn from_glib(value: ffi::GtkPanDirection) -> Self {
8937 skip_assert_initialized!();
8938
8939 match value {
8940 ffi::GTK_PAN_DIRECTION_LEFT => Self::Left,
8941 ffi::GTK_PAN_DIRECTION_RIGHT => Self::Right,
8942 ffi::GTK_PAN_DIRECTION_UP => Self::Up,
8943 ffi::GTK_PAN_DIRECTION_DOWN => Self::Down,
8944 value => Self::__Unknown(value),
8945 }
8946 }
8947}
8948
8949impl StaticType for PanDirection {
8950 #[inline]
8951 #[doc(alias = "gtk_pan_direction_get_type")]
8952 fn static_type() -> glib::Type {
8953 unsafe { from_glib(ffi::gtk_pan_direction_get_type()) }
8954 }
8955}
8956
8957impl glib::HasParamSpec for PanDirection {
8958 type ParamSpec = glib::ParamSpecEnum;
8959 type SetValue = Self;
8960 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8961
8962 fn param_spec_builder() -> Self::BuilderFn {
8963 Self::ParamSpec::builder_with_default
8964 }
8965}
8966
8967impl glib::value::ValueType for PanDirection {
8968 type Type = Self;
8969}
8970
8971unsafe impl<'a> glib::value::FromValue<'a> for PanDirection {
8972 type Checker = glib::value::GenericValueTypeChecker<Self>;
8973
8974 #[inline]
8975 unsafe fn from_value(value: &'a glib::Value) -> Self {
8976 skip_assert_initialized!();
8977 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
8978 }
8979}
8980
8981impl ToValue for PanDirection {
8982 #[inline]
8983 fn to_value(&self) -> glib::Value {
8984 let mut value = glib::Value::for_value_type::<Self>();
8985 unsafe {
8986 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8987 }
8988 value
8989 }
8990
8991 #[inline]
8992 fn value_type(&self) -> glib::Type {
8993 Self::static_type()
8994 }
8995}
8996
8997impl From<PanDirection> for glib::Value {
8998 #[inline]
8999 fn from(v: PanDirection) -> Self {
9000 skip_assert_initialized!();
9001 ToValue::to_value(&v)
9002 }
9003}
9004
9005#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9008#[non_exhaustive]
9009#[doc(alias = "GtkPolicyType")]
9010pub enum PolicyType {
9011 #[doc(alias = "GTK_POLICY_ALWAYS")]
9014 Always,
9015 #[doc(alias = "GTK_POLICY_AUTOMATIC")]
9018 Automatic,
9019 #[doc(alias = "GTK_POLICY_NEVER")]
9022 Never,
9023 #[doc(alias = "GTK_POLICY_EXTERNAL")]
9027 External,
9028 #[doc(hidden)]
9029 __Unknown(i32),
9030}
9031
9032#[doc(hidden)]
9033impl IntoGlib for PolicyType {
9034 type GlibType = ffi::GtkPolicyType;
9035
9036 #[inline]
9037 fn into_glib(self) -> ffi::GtkPolicyType {
9038 match self {
9039 Self::Always => ffi::GTK_POLICY_ALWAYS,
9040 Self::Automatic => ffi::GTK_POLICY_AUTOMATIC,
9041 Self::Never => ffi::GTK_POLICY_NEVER,
9042 Self::External => ffi::GTK_POLICY_EXTERNAL,
9043 Self::__Unknown(value) => value,
9044 }
9045 }
9046}
9047
9048#[doc(hidden)]
9049impl FromGlib<ffi::GtkPolicyType> for PolicyType {
9050 #[inline]
9051 unsafe fn from_glib(value: ffi::GtkPolicyType) -> Self {
9052 skip_assert_initialized!();
9053
9054 match value {
9055 ffi::GTK_POLICY_ALWAYS => Self::Always,
9056 ffi::GTK_POLICY_AUTOMATIC => Self::Automatic,
9057 ffi::GTK_POLICY_NEVER => Self::Never,
9058 ffi::GTK_POLICY_EXTERNAL => Self::External,
9059 value => Self::__Unknown(value),
9060 }
9061 }
9062}
9063
9064impl StaticType for PolicyType {
9065 #[inline]
9066 #[doc(alias = "gtk_policy_type_get_type")]
9067 fn static_type() -> glib::Type {
9068 unsafe { from_glib(ffi::gtk_policy_type_get_type()) }
9069 }
9070}
9071
9072impl glib::HasParamSpec for PolicyType {
9073 type ParamSpec = glib::ParamSpecEnum;
9074 type SetValue = Self;
9075 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9076
9077 fn param_spec_builder() -> Self::BuilderFn {
9078 Self::ParamSpec::builder_with_default
9079 }
9080}
9081
9082impl glib::value::ValueType for PolicyType {
9083 type Type = Self;
9084}
9085
9086unsafe impl<'a> glib::value::FromValue<'a> for PolicyType {
9087 type Checker = glib::value::GenericValueTypeChecker<Self>;
9088
9089 #[inline]
9090 unsafe fn from_value(value: &'a glib::Value) -> Self {
9091 skip_assert_initialized!();
9092 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9093 }
9094}
9095
9096impl ToValue for PolicyType {
9097 #[inline]
9098 fn to_value(&self) -> glib::Value {
9099 let mut value = glib::Value::for_value_type::<Self>();
9100 unsafe {
9101 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9102 }
9103 value
9104 }
9105
9106 #[inline]
9107 fn value_type(&self) -> glib::Type {
9108 Self::static_type()
9109 }
9110}
9111
9112impl From<PolicyType> for glib::Value {
9113 #[inline]
9114 fn from(v: PolicyType) -> Self {
9115 skip_assert_initialized!();
9116 ToValue::to_value(&v)
9117 }
9118}
9119
9120#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9125#[non_exhaustive]
9126#[doc(alias = "GtkPositionType")]
9127pub enum PositionType {
9128 #[doc(alias = "GTK_POS_LEFT")]
9130 Left,
9131 #[doc(alias = "GTK_POS_RIGHT")]
9133 Right,
9134 #[doc(alias = "GTK_POS_TOP")]
9136 Top,
9137 #[doc(alias = "GTK_POS_BOTTOM")]
9139 Bottom,
9140 #[doc(hidden)]
9141 __Unknown(i32),
9142}
9143
9144#[doc(hidden)]
9145impl IntoGlib for PositionType {
9146 type GlibType = ffi::GtkPositionType;
9147
9148 #[inline]
9149 fn into_glib(self) -> ffi::GtkPositionType {
9150 match self {
9151 Self::Left => ffi::GTK_POS_LEFT,
9152 Self::Right => ffi::GTK_POS_RIGHT,
9153 Self::Top => ffi::GTK_POS_TOP,
9154 Self::Bottom => ffi::GTK_POS_BOTTOM,
9155 Self::__Unknown(value) => value,
9156 }
9157 }
9158}
9159
9160#[doc(hidden)]
9161impl FromGlib<ffi::GtkPositionType> for PositionType {
9162 #[inline]
9163 unsafe fn from_glib(value: ffi::GtkPositionType) -> Self {
9164 skip_assert_initialized!();
9165
9166 match value {
9167 ffi::GTK_POS_LEFT => Self::Left,
9168 ffi::GTK_POS_RIGHT => Self::Right,
9169 ffi::GTK_POS_TOP => Self::Top,
9170 ffi::GTK_POS_BOTTOM => Self::Bottom,
9171 value => Self::__Unknown(value),
9172 }
9173 }
9174}
9175
9176impl StaticType for PositionType {
9177 #[inline]
9178 #[doc(alias = "gtk_position_type_get_type")]
9179 fn static_type() -> glib::Type {
9180 unsafe { from_glib(ffi::gtk_position_type_get_type()) }
9181 }
9182}
9183
9184impl glib::HasParamSpec for PositionType {
9185 type ParamSpec = glib::ParamSpecEnum;
9186 type SetValue = Self;
9187 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9188
9189 fn param_spec_builder() -> Self::BuilderFn {
9190 Self::ParamSpec::builder_with_default
9191 }
9192}
9193
9194impl glib::value::ValueType for PositionType {
9195 type Type = Self;
9196}
9197
9198unsafe impl<'a> glib::value::FromValue<'a> for PositionType {
9199 type Checker = glib::value::GenericValueTypeChecker<Self>;
9200
9201 #[inline]
9202 unsafe fn from_value(value: &'a glib::Value) -> Self {
9203 skip_assert_initialized!();
9204 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9205 }
9206}
9207
9208impl ToValue for PositionType {
9209 #[inline]
9210 fn to_value(&self) -> glib::Value {
9211 let mut value = glib::Value::for_value_type::<Self>();
9212 unsafe {
9213 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9214 }
9215 value
9216 }
9217
9218 #[inline]
9219 fn value_type(&self) -> glib::Type {
9220 Self::static_type()
9221 }
9222}
9223
9224impl From<PositionType> for glib::Value {
9225 #[inline]
9226 fn from(v: PositionType) -> Self {
9227 skip_assert_initialized!();
9228 ToValue::to_value(&v)
9229 }
9230}
9231
9232#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9234#[non_exhaustive]
9235#[doc(alias = "GtkPrintDuplex")]
9236pub enum PrintDuplex {
9237 #[doc(alias = "GTK_PRINT_DUPLEX_SIMPLEX")]
9239 Simplex,
9240 #[doc(alias = "GTK_PRINT_DUPLEX_HORIZONTAL")]
9242 Horizontal,
9243 #[doc(alias = "GTK_PRINT_DUPLEX_VERTICAL")]
9245 Vertical,
9246 #[doc(hidden)]
9247 __Unknown(i32),
9248}
9249
9250#[doc(hidden)]
9251impl IntoGlib for PrintDuplex {
9252 type GlibType = ffi::GtkPrintDuplex;
9253
9254 #[inline]
9255 fn into_glib(self) -> ffi::GtkPrintDuplex {
9256 match self {
9257 Self::Simplex => ffi::GTK_PRINT_DUPLEX_SIMPLEX,
9258 Self::Horizontal => ffi::GTK_PRINT_DUPLEX_HORIZONTAL,
9259 Self::Vertical => ffi::GTK_PRINT_DUPLEX_VERTICAL,
9260 Self::__Unknown(value) => value,
9261 }
9262 }
9263}
9264
9265#[doc(hidden)]
9266impl FromGlib<ffi::GtkPrintDuplex> for PrintDuplex {
9267 #[inline]
9268 unsafe fn from_glib(value: ffi::GtkPrintDuplex) -> Self {
9269 skip_assert_initialized!();
9270
9271 match value {
9272 ffi::GTK_PRINT_DUPLEX_SIMPLEX => Self::Simplex,
9273 ffi::GTK_PRINT_DUPLEX_HORIZONTAL => Self::Horizontal,
9274 ffi::GTK_PRINT_DUPLEX_VERTICAL => Self::Vertical,
9275 value => Self::__Unknown(value),
9276 }
9277 }
9278}
9279
9280impl StaticType for PrintDuplex {
9281 #[inline]
9282 #[doc(alias = "gtk_print_duplex_get_type")]
9283 fn static_type() -> glib::Type {
9284 unsafe { from_glib(ffi::gtk_print_duplex_get_type()) }
9285 }
9286}
9287
9288impl glib::HasParamSpec for PrintDuplex {
9289 type ParamSpec = glib::ParamSpecEnum;
9290 type SetValue = Self;
9291 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9292
9293 fn param_spec_builder() -> Self::BuilderFn {
9294 Self::ParamSpec::builder_with_default
9295 }
9296}
9297
9298impl glib::value::ValueType for PrintDuplex {
9299 type Type = Self;
9300}
9301
9302unsafe impl<'a> glib::value::FromValue<'a> for PrintDuplex {
9303 type Checker = glib::value::GenericValueTypeChecker<Self>;
9304
9305 #[inline]
9306 unsafe fn from_value(value: &'a glib::Value) -> Self {
9307 skip_assert_initialized!();
9308 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9309 }
9310}
9311
9312impl ToValue for PrintDuplex {
9313 #[inline]
9314 fn to_value(&self) -> glib::Value {
9315 let mut value = glib::Value::for_value_type::<Self>();
9316 unsafe {
9317 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9318 }
9319 value
9320 }
9321
9322 #[inline]
9323 fn value_type(&self) -> glib::Type {
9324 Self::static_type()
9325 }
9326}
9327
9328impl From<PrintDuplex> for glib::Value {
9329 #[inline]
9330 fn from(v: PrintDuplex) -> Self {
9331 skip_assert_initialized!();
9332 ToValue::to_value(&v)
9333 }
9334}
9335
9336#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9339#[non_exhaustive]
9340#[doc(alias = "GtkPrintError")]
9341pub enum PrintError {
9342 #[doc(alias = "GTK_PRINT_ERROR_GENERAL")]
9344 General,
9345 #[doc(alias = "GTK_PRINT_ERROR_INTERNAL_ERROR")]
9347 InternalError,
9348 #[doc(alias = "GTK_PRINT_ERROR_NOMEM")]
9350 Nomem,
9351 #[doc(alias = "GTK_PRINT_ERROR_INVALID_FILE")]
9354 InvalidFile,
9355 #[doc(hidden)]
9356 __Unknown(i32),
9357}
9358
9359#[doc(hidden)]
9360impl IntoGlib for PrintError {
9361 type GlibType = ffi::GtkPrintError;
9362
9363 #[inline]
9364 fn into_glib(self) -> ffi::GtkPrintError {
9365 match self {
9366 Self::General => ffi::GTK_PRINT_ERROR_GENERAL,
9367 Self::InternalError => ffi::GTK_PRINT_ERROR_INTERNAL_ERROR,
9368 Self::Nomem => ffi::GTK_PRINT_ERROR_NOMEM,
9369 Self::InvalidFile => ffi::GTK_PRINT_ERROR_INVALID_FILE,
9370 Self::__Unknown(value) => value,
9371 }
9372 }
9373}
9374
9375#[doc(hidden)]
9376impl FromGlib<ffi::GtkPrintError> for PrintError {
9377 #[inline]
9378 unsafe fn from_glib(value: ffi::GtkPrintError) -> Self {
9379 skip_assert_initialized!();
9380
9381 match value {
9382 ffi::GTK_PRINT_ERROR_GENERAL => Self::General,
9383 ffi::GTK_PRINT_ERROR_INTERNAL_ERROR => Self::InternalError,
9384 ffi::GTK_PRINT_ERROR_NOMEM => Self::Nomem,
9385 ffi::GTK_PRINT_ERROR_INVALID_FILE => Self::InvalidFile,
9386 value => Self::__Unknown(value),
9387 }
9388 }
9389}
9390
9391impl glib::error::ErrorDomain for PrintError {
9392 #[inline]
9393 fn domain() -> glib::Quark {
9394 skip_assert_initialized!();
9395
9396 unsafe { from_glib(ffi::gtk_print_error_quark()) }
9397 }
9398
9399 #[inline]
9400 fn code(self) -> i32 {
9401 self.into_glib()
9402 }
9403
9404 #[inline]
9405 #[allow(clippy::match_single_binding)]
9406 fn from(code: i32) -> Option<Self> {
9407 skip_assert_initialized!();
9408 match unsafe { from_glib(code) } {
9409 value => Some(value),
9410 }
9411 }
9412}
9413
9414impl StaticType for PrintError {
9415 #[inline]
9416 #[doc(alias = "gtk_print_error_get_type")]
9417 fn static_type() -> glib::Type {
9418 unsafe { from_glib(ffi::gtk_print_error_get_type()) }
9419 }
9420}
9421
9422impl glib::HasParamSpec for PrintError {
9423 type ParamSpec = glib::ParamSpecEnum;
9424 type SetValue = Self;
9425 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9426
9427 fn param_spec_builder() -> Self::BuilderFn {
9428 Self::ParamSpec::builder_with_default
9429 }
9430}
9431
9432impl glib::value::ValueType for PrintError {
9433 type Type = Self;
9434}
9435
9436unsafe impl<'a> glib::value::FromValue<'a> for PrintError {
9437 type Checker = glib::value::GenericValueTypeChecker<Self>;
9438
9439 #[inline]
9440 unsafe fn from_value(value: &'a glib::Value) -> Self {
9441 skip_assert_initialized!();
9442 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9443 }
9444}
9445
9446impl ToValue for PrintError {
9447 #[inline]
9448 fn to_value(&self) -> glib::Value {
9449 let mut value = glib::Value::for_value_type::<Self>();
9450 unsafe {
9451 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9452 }
9453 value
9454 }
9455
9456 #[inline]
9457 fn value_type(&self) -> glib::Type {
9458 Self::static_type()
9459 }
9460}
9461
9462impl From<PrintError> for glib::Value {
9463 #[inline]
9464 fn from(v: PrintError) -> Self {
9465 skip_assert_initialized!();
9466 ToValue::to_value(&v)
9467 }
9468}
9469
9470#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9474#[non_exhaustive]
9475#[doc(alias = "GtkPrintOperationAction")]
9476pub enum PrintOperationAction {
9477 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG")]
9479 PrintDialog,
9480 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT")]
9484 Print,
9485 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PREVIEW")]
9487 Preview,
9488 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_EXPORT")]
9491 Export,
9492 #[doc(hidden)]
9493 __Unknown(i32),
9494}
9495
9496#[doc(hidden)]
9497impl IntoGlib for PrintOperationAction {
9498 type GlibType = ffi::GtkPrintOperationAction;
9499
9500 #[inline]
9501 fn into_glib(self) -> ffi::GtkPrintOperationAction {
9502 match self {
9503 Self::PrintDialog => ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
9504 Self::Print => ffi::GTK_PRINT_OPERATION_ACTION_PRINT,
9505 Self::Preview => ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW,
9506 Self::Export => ffi::GTK_PRINT_OPERATION_ACTION_EXPORT,
9507 Self::__Unknown(value) => value,
9508 }
9509 }
9510}
9511
9512#[doc(hidden)]
9513impl FromGlib<ffi::GtkPrintOperationAction> for PrintOperationAction {
9514 #[inline]
9515 unsafe fn from_glib(value: ffi::GtkPrintOperationAction) -> Self {
9516 skip_assert_initialized!();
9517
9518 match value {
9519 ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG => Self::PrintDialog,
9520 ffi::GTK_PRINT_OPERATION_ACTION_PRINT => Self::Print,
9521 ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW => Self::Preview,
9522 ffi::GTK_PRINT_OPERATION_ACTION_EXPORT => Self::Export,
9523 value => Self::__Unknown(value),
9524 }
9525 }
9526}
9527
9528impl StaticType for PrintOperationAction {
9529 #[inline]
9530 #[doc(alias = "gtk_print_operation_action_get_type")]
9531 fn static_type() -> glib::Type {
9532 unsafe { from_glib(ffi::gtk_print_operation_action_get_type()) }
9533 }
9534}
9535
9536impl glib::HasParamSpec for PrintOperationAction {
9537 type ParamSpec = glib::ParamSpecEnum;
9538 type SetValue = Self;
9539 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9540
9541 fn param_spec_builder() -> Self::BuilderFn {
9542 Self::ParamSpec::builder_with_default
9543 }
9544}
9545
9546impl glib::value::ValueType for PrintOperationAction {
9547 type Type = Self;
9548}
9549
9550unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationAction {
9551 type Checker = glib::value::GenericValueTypeChecker<Self>;
9552
9553 #[inline]
9554 unsafe fn from_value(value: &'a glib::Value) -> Self {
9555 skip_assert_initialized!();
9556 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9557 }
9558}
9559
9560impl ToValue for PrintOperationAction {
9561 #[inline]
9562 fn to_value(&self) -> glib::Value {
9563 let mut value = glib::Value::for_value_type::<Self>();
9564 unsafe {
9565 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9566 }
9567 value
9568 }
9569
9570 #[inline]
9571 fn value_type(&self) -> glib::Type {
9572 Self::static_type()
9573 }
9574}
9575
9576impl From<PrintOperationAction> for glib::Value {
9577 #[inline]
9578 fn from(v: PrintOperationAction) -> Self {
9579 skip_assert_initialized!();
9580 ToValue::to_value(&v)
9581 }
9582}
9583
9584#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9588#[non_exhaustive]
9589#[doc(alias = "GtkPrintOperationResult")]
9590pub enum PrintOperationResult {
9591 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_ERROR")]
9593 Error,
9594 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_APPLY")]
9596 Apply,
9597 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_CANCEL")]
9600 Cancel,
9601 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_IN_PROGRESS")]
9604 InProgress,
9605 #[doc(hidden)]
9606 __Unknown(i32),
9607}
9608
9609#[doc(hidden)]
9610impl IntoGlib for PrintOperationResult {
9611 type GlibType = ffi::GtkPrintOperationResult;
9612
9613 #[inline]
9614 fn into_glib(self) -> ffi::GtkPrintOperationResult {
9615 match self {
9616 Self::Error => ffi::GTK_PRINT_OPERATION_RESULT_ERROR,
9617 Self::Apply => ffi::GTK_PRINT_OPERATION_RESULT_APPLY,
9618 Self::Cancel => ffi::GTK_PRINT_OPERATION_RESULT_CANCEL,
9619 Self::InProgress => ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS,
9620 Self::__Unknown(value) => value,
9621 }
9622 }
9623}
9624
9625#[doc(hidden)]
9626impl FromGlib<ffi::GtkPrintOperationResult> for PrintOperationResult {
9627 #[inline]
9628 unsafe fn from_glib(value: ffi::GtkPrintOperationResult) -> Self {
9629 skip_assert_initialized!();
9630
9631 match value {
9632 ffi::GTK_PRINT_OPERATION_RESULT_ERROR => Self::Error,
9633 ffi::GTK_PRINT_OPERATION_RESULT_APPLY => Self::Apply,
9634 ffi::GTK_PRINT_OPERATION_RESULT_CANCEL => Self::Cancel,
9635 ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS => Self::InProgress,
9636 value => Self::__Unknown(value),
9637 }
9638 }
9639}
9640
9641impl StaticType for PrintOperationResult {
9642 #[inline]
9643 #[doc(alias = "gtk_print_operation_result_get_type")]
9644 fn static_type() -> glib::Type {
9645 unsafe { from_glib(ffi::gtk_print_operation_result_get_type()) }
9646 }
9647}
9648
9649impl glib::HasParamSpec for PrintOperationResult {
9650 type ParamSpec = glib::ParamSpecEnum;
9651 type SetValue = Self;
9652 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9653
9654 fn param_spec_builder() -> Self::BuilderFn {
9655 Self::ParamSpec::builder_with_default
9656 }
9657}
9658
9659impl glib::value::ValueType for PrintOperationResult {
9660 type Type = Self;
9661}
9662
9663unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationResult {
9664 type Checker = glib::value::GenericValueTypeChecker<Self>;
9665
9666 #[inline]
9667 unsafe fn from_value(value: &'a glib::Value) -> Self {
9668 skip_assert_initialized!();
9669 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9670 }
9671}
9672
9673impl ToValue for PrintOperationResult {
9674 #[inline]
9675 fn to_value(&self) -> glib::Value {
9676 let mut value = glib::Value::for_value_type::<Self>();
9677 unsafe {
9678 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9679 }
9680 value
9681 }
9682
9683 #[inline]
9684 fn value_type(&self) -> glib::Type {
9685 Self::static_type()
9686 }
9687}
9688
9689impl From<PrintOperationResult> for glib::Value {
9690 #[inline]
9691 fn from(v: PrintOperationResult) -> Self {
9692 skip_assert_initialized!();
9693 ToValue::to_value(&v)
9694 }
9695}
9696
9697#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9699#[non_exhaustive]
9700#[doc(alias = "GtkPrintPages")]
9701pub enum PrintPages {
9702 #[doc(alias = "GTK_PRINT_PAGES_ALL")]
9704 All,
9705 #[doc(alias = "GTK_PRINT_PAGES_CURRENT")]
9707 Current,
9708 #[doc(alias = "GTK_PRINT_PAGES_RANGES")]
9710 Ranges,
9711 #[doc(alias = "GTK_PRINT_PAGES_SELECTION")]
9713 Selection,
9714 #[doc(hidden)]
9715 __Unknown(i32),
9716}
9717
9718#[doc(hidden)]
9719impl IntoGlib for PrintPages {
9720 type GlibType = ffi::GtkPrintPages;
9721
9722 #[inline]
9723 fn into_glib(self) -> ffi::GtkPrintPages {
9724 match self {
9725 Self::All => ffi::GTK_PRINT_PAGES_ALL,
9726 Self::Current => ffi::GTK_PRINT_PAGES_CURRENT,
9727 Self::Ranges => ffi::GTK_PRINT_PAGES_RANGES,
9728 Self::Selection => ffi::GTK_PRINT_PAGES_SELECTION,
9729 Self::__Unknown(value) => value,
9730 }
9731 }
9732}
9733
9734#[doc(hidden)]
9735impl FromGlib<ffi::GtkPrintPages> for PrintPages {
9736 #[inline]
9737 unsafe fn from_glib(value: ffi::GtkPrintPages) -> Self {
9738 skip_assert_initialized!();
9739
9740 match value {
9741 ffi::GTK_PRINT_PAGES_ALL => Self::All,
9742 ffi::GTK_PRINT_PAGES_CURRENT => Self::Current,
9743 ffi::GTK_PRINT_PAGES_RANGES => Self::Ranges,
9744 ffi::GTK_PRINT_PAGES_SELECTION => Self::Selection,
9745 value => Self::__Unknown(value),
9746 }
9747 }
9748}
9749
9750impl StaticType for PrintPages {
9751 #[inline]
9752 #[doc(alias = "gtk_print_pages_get_type")]
9753 fn static_type() -> glib::Type {
9754 unsafe { from_glib(ffi::gtk_print_pages_get_type()) }
9755 }
9756}
9757
9758impl glib::HasParamSpec for PrintPages {
9759 type ParamSpec = glib::ParamSpecEnum;
9760 type SetValue = Self;
9761 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9762
9763 fn param_spec_builder() -> Self::BuilderFn {
9764 Self::ParamSpec::builder_with_default
9765 }
9766}
9767
9768impl glib::value::ValueType for PrintPages {
9769 type Type = Self;
9770}
9771
9772unsafe impl<'a> glib::value::FromValue<'a> for PrintPages {
9773 type Checker = glib::value::GenericValueTypeChecker<Self>;
9774
9775 #[inline]
9776 unsafe fn from_value(value: &'a glib::Value) -> Self {
9777 skip_assert_initialized!();
9778 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9779 }
9780}
9781
9782impl ToValue for PrintPages {
9783 #[inline]
9784 fn to_value(&self) -> glib::Value {
9785 let mut value = glib::Value::for_value_type::<Self>();
9786 unsafe {
9787 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9788 }
9789 value
9790 }
9791
9792 #[inline]
9793 fn value_type(&self) -> glib::Type {
9794 Self::static_type()
9795 }
9796}
9797
9798impl From<PrintPages> for glib::Value {
9799 #[inline]
9800 fn from(v: PrintPages) -> Self {
9801 skip_assert_initialized!();
9802 ToValue::to_value(&v)
9803 }
9804}
9805
9806#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9808#[non_exhaustive]
9809#[doc(alias = "GtkPrintQuality")]
9810pub enum PrintQuality {
9811 #[doc(alias = "GTK_PRINT_QUALITY_LOW")]
9813 Low,
9814 #[doc(alias = "GTK_PRINT_QUALITY_NORMAL")]
9816 Normal,
9817 #[doc(alias = "GTK_PRINT_QUALITY_HIGH")]
9819 High,
9820 #[doc(alias = "GTK_PRINT_QUALITY_DRAFT")]
9822 Draft,
9823 #[doc(hidden)]
9824 __Unknown(i32),
9825}
9826
9827#[doc(hidden)]
9828impl IntoGlib for PrintQuality {
9829 type GlibType = ffi::GtkPrintQuality;
9830
9831 #[inline]
9832 fn into_glib(self) -> ffi::GtkPrintQuality {
9833 match self {
9834 Self::Low => ffi::GTK_PRINT_QUALITY_LOW,
9835 Self::Normal => ffi::GTK_PRINT_QUALITY_NORMAL,
9836 Self::High => ffi::GTK_PRINT_QUALITY_HIGH,
9837 Self::Draft => ffi::GTK_PRINT_QUALITY_DRAFT,
9838 Self::__Unknown(value) => value,
9839 }
9840 }
9841}
9842
9843#[doc(hidden)]
9844impl FromGlib<ffi::GtkPrintQuality> for PrintQuality {
9845 #[inline]
9846 unsafe fn from_glib(value: ffi::GtkPrintQuality) -> Self {
9847 skip_assert_initialized!();
9848
9849 match value {
9850 ffi::GTK_PRINT_QUALITY_LOW => Self::Low,
9851 ffi::GTK_PRINT_QUALITY_NORMAL => Self::Normal,
9852 ffi::GTK_PRINT_QUALITY_HIGH => Self::High,
9853 ffi::GTK_PRINT_QUALITY_DRAFT => Self::Draft,
9854 value => Self::__Unknown(value),
9855 }
9856 }
9857}
9858
9859impl StaticType for PrintQuality {
9860 #[inline]
9861 #[doc(alias = "gtk_print_quality_get_type")]
9862 fn static_type() -> glib::Type {
9863 unsafe { from_glib(ffi::gtk_print_quality_get_type()) }
9864 }
9865}
9866
9867impl glib::HasParamSpec for PrintQuality {
9868 type ParamSpec = glib::ParamSpecEnum;
9869 type SetValue = Self;
9870 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9871
9872 fn param_spec_builder() -> Self::BuilderFn {
9873 Self::ParamSpec::builder_with_default
9874 }
9875}
9876
9877impl glib::value::ValueType for PrintQuality {
9878 type Type = Self;
9879}
9880
9881unsafe impl<'a> glib::value::FromValue<'a> for PrintQuality {
9882 type Checker = glib::value::GenericValueTypeChecker<Self>;
9883
9884 #[inline]
9885 unsafe fn from_value(value: &'a glib::Value) -> Self {
9886 skip_assert_initialized!();
9887 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
9888 }
9889}
9890
9891impl ToValue for PrintQuality {
9892 #[inline]
9893 fn to_value(&self) -> glib::Value {
9894 let mut value = glib::Value::for_value_type::<Self>();
9895 unsafe {
9896 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9897 }
9898 value
9899 }
9900
9901 #[inline]
9902 fn value_type(&self) -> glib::Type {
9903 Self::static_type()
9904 }
9905}
9906
9907impl From<PrintQuality> for glib::Value {
9908 #[inline]
9909 fn from(v: PrintQuality) -> Self {
9910 skip_assert_initialized!();
9911 ToValue::to_value(&v)
9912 }
9913}
9914
9915#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9918#[non_exhaustive]
9919#[doc(alias = "GtkPrintStatus")]
9920pub enum PrintStatus {
9921 #[doc(alias = "GTK_PRINT_STATUS_INITIAL")]
9924 Initial,
9925 #[doc(alias = "GTK_PRINT_STATUS_PREPARING")]
9928 Preparing,
9929 #[doc(alias = "GTK_PRINT_STATUS_GENERATING_DATA")]
9932 GeneratingData,
9933 #[doc(alias = "GTK_PRINT_STATUS_SENDING_DATA")]
9936 SendingData,
9937 #[doc(alias = "GTK_PRINT_STATUS_PENDING")]
9940 Pending,
9941 #[doc(alias = "GTK_PRINT_STATUS_PENDING_ISSUE")]
9944 PendingIssue,
9945 #[doc(alias = "GTK_PRINT_STATUS_PRINTING")]
9947 Printing,
9948 #[doc(alias = "GTK_PRINT_STATUS_FINISHED")]
9950 Finished,
9951 #[doc(alias = "GTK_PRINT_STATUS_FINISHED_ABORTED")]
9953 FinishedAborted,
9954 #[doc(hidden)]
9955 __Unknown(i32),
9956}
9957
9958#[doc(hidden)]
9959impl IntoGlib for PrintStatus {
9960 type GlibType = ffi::GtkPrintStatus;
9961
9962 #[inline]
9963 fn into_glib(self) -> ffi::GtkPrintStatus {
9964 match self {
9965 Self::Initial => ffi::GTK_PRINT_STATUS_INITIAL,
9966 Self::Preparing => ffi::GTK_PRINT_STATUS_PREPARING,
9967 Self::GeneratingData => ffi::GTK_PRINT_STATUS_GENERATING_DATA,
9968 Self::SendingData => ffi::GTK_PRINT_STATUS_SENDING_DATA,
9969 Self::Pending => ffi::GTK_PRINT_STATUS_PENDING,
9970 Self::PendingIssue => ffi::GTK_PRINT_STATUS_PENDING_ISSUE,
9971 Self::Printing => ffi::GTK_PRINT_STATUS_PRINTING,
9972 Self::Finished => ffi::GTK_PRINT_STATUS_FINISHED,
9973 Self::FinishedAborted => ffi::GTK_PRINT_STATUS_FINISHED_ABORTED,
9974 Self::__Unknown(value) => value,
9975 }
9976 }
9977}
9978
9979#[doc(hidden)]
9980impl FromGlib<ffi::GtkPrintStatus> for PrintStatus {
9981 #[inline]
9982 unsafe fn from_glib(value: ffi::GtkPrintStatus) -> Self {
9983 skip_assert_initialized!();
9984
9985 match value {
9986 ffi::GTK_PRINT_STATUS_INITIAL => Self::Initial,
9987 ffi::GTK_PRINT_STATUS_PREPARING => Self::Preparing,
9988 ffi::GTK_PRINT_STATUS_GENERATING_DATA => Self::GeneratingData,
9989 ffi::GTK_PRINT_STATUS_SENDING_DATA => Self::SendingData,
9990 ffi::GTK_PRINT_STATUS_PENDING => Self::Pending,
9991 ffi::GTK_PRINT_STATUS_PENDING_ISSUE => Self::PendingIssue,
9992 ffi::GTK_PRINT_STATUS_PRINTING => Self::Printing,
9993 ffi::GTK_PRINT_STATUS_FINISHED => Self::Finished,
9994 ffi::GTK_PRINT_STATUS_FINISHED_ABORTED => Self::FinishedAborted,
9995 value => Self::__Unknown(value),
9996 }
9997 }
9998}
9999
10000impl StaticType for PrintStatus {
10001 #[inline]
10002 #[doc(alias = "gtk_print_status_get_type")]
10003 fn static_type() -> glib::Type {
10004 unsafe { from_glib(ffi::gtk_print_status_get_type()) }
10005 }
10006}
10007
10008impl glib::HasParamSpec for PrintStatus {
10009 type ParamSpec = glib::ParamSpecEnum;
10010 type SetValue = Self;
10011 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10012
10013 fn param_spec_builder() -> Self::BuilderFn {
10014 Self::ParamSpec::builder_with_default
10015 }
10016}
10017
10018impl glib::value::ValueType for PrintStatus {
10019 type Type = Self;
10020}
10021
10022unsafe impl<'a> glib::value::FromValue<'a> for PrintStatus {
10023 type Checker = glib::value::GenericValueTypeChecker<Self>;
10024
10025 #[inline]
10026 unsafe fn from_value(value: &'a glib::Value) -> Self {
10027 skip_assert_initialized!();
10028 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10029 }
10030}
10031
10032impl ToValue for PrintStatus {
10033 #[inline]
10034 fn to_value(&self) -> glib::Value {
10035 let mut value = glib::Value::for_value_type::<Self>();
10036 unsafe {
10037 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10038 }
10039 value
10040 }
10041
10042 #[inline]
10043 fn value_type(&self) -> glib::Type {
10044 Self::static_type()
10045 }
10046}
10047
10048impl From<PrintStatus> for glib::Value {
10049 #[inline]
10050 fn from(v: PrintStatus) -> Self {
10051 skip_assert_initialized!();
10052 ToValue::to_value(&v)
10053 }
10054}
10055
10056#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10059#[non_exhaustive]
10060#[doc(alias = "GtkPropagationLimit")]
10061pub enum PropagationLimit {
10062 #[doc(alias = "GTK_LIMIT_NONE")]
10065 None,
10066 #[doc(alias = "GTK_LIMIT_SAME_NATIVE")]
10071 SameNative,
10072 #[doc(hidden)]
10073 __Unknown(i32),
10074}
10075
10076#[doc(hidden)]
10077impl IntoGlib for PropagationLimit {
10078 type GlibType = ffi::GtkPropagationLimit;
10079
10080 #[inline]
10081 fn into_glib(self) -> ffi::GtkPropagationLimit {
10082 match self {
10083 Self::None => ffi::GTK_LIMIT_NONE,
10084 Self::SameNative => ffi::GTK_LIMIT_SAME_NATIVE,
10085 Self::__Unknown(value) => value,
10086 }
10087 }
10088}
10089
10090#[doc(hidden)]
10091impl FromGlib<ffi::GtkPropagationLimit> for PropagationLimit {
10092 #[inline]
10093 unsafe fn from_glib(value: ffi::GtkPropagationLimit) -> Self {
10094 skip_assert_initialized!();
10095
10096 match value {
10097 ffi::GTK_LIMIT_NONE => Self::None,
10098 ffi::GTK_LIMIT_SAME_NATIVE => Self::SameNative,
10099 value => Self::__Unknown(value),
10100 }
10101 }
10102}
10103
10104impl StaticType for PropagationLimit {
10105 #[inline]
10106 #[doc(alias = "gtk_propagation_limit_get_type")]
10107 fn static_type() -> glib::Type {
10108 unsafe { from_glib(ffi::gtk_propagation_limit_get_type()) }
10109 }
10110}
10111
10112impl glib::HasParamSpec for PropagationLimit {
10113 type ParamSpec = glib::ParamSpecEnum;
10114 type SetValue = Self;
10115 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10116
10117 fn param_spec_builder() -> Self::BuilderFn {
10118 Self::ParamSpec::builder_with_default
10119 }
10120}
10121
10122impl glib::value::ValueType for PropagationLimit {
10123 type Type = Self;
10124}
10125
10126unsafe impl<'a> glib::value::FromValue<'a> for PropagationLimit {
10127 type Checker = glib::value::GenericValueTypeChecker<Self>;
10128
10129 #[inline]
10130 unsafe fn from_value(value: &'a glib::Value) -> Self {
10131 skip_assert_initialized!();
10132 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10133 }
10134}
10135
10136impl ToValue for PropagationLimit {
10137 #[inline]
10138 fn to_value(&self) -> glib::Value {
10139 let mut value = glib::Value::for_value_type::<Self>();
10140 unsafe {
10141 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10142 }
10143 value
10144 }
10145
10146 #[inline]
10147 fn value_type(&self) -> glib::Type {
10148 Self::static_type()
10149 }
10150}
10151
10152impl From<PropagationLimit> for glib::Value {
10153 #[inline]
10154 fn from(v: PropagationLimit) -> Self {
10155 skip_assert_initialized!();
10156 ToValue::to_value(&v)
10157 }
10158}
10159
10160#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10162#[non_exhaustive]
10163#[doc(alias = "GtkPropagationPhase")]
10164pub enum PropagationPhase {
10165 #[doc(alias = "GTK_PHASE_NONE")]
10167 None,
10168 #[doc(alias = "GTK_PHASE_CAPTURE")]
10173 Capture,
10174 #[doc(alias = "GTK_PHASE_BUBBLE")]
10178 Bubble,
10179 #[doc(alias = "GTK_PHASE_TARGET")]
10183 Target,
10184 #[doc(hidden)]
10185 __Unknown(i32),
10186}
10187
10188#[doc(hidden)]
10189impl IntoGlib for PropagationPhase {
10190 type GlibType = ffi::GtkPropagationPhase;
10191
10192 #[inline]
10193 fn into_glib(self) -> ffi::GtkPropagationPhase {
10194 match self {
10195 Self::None => ffi::GTK_PHASE_NONE,
10196 Self::Capture => ffi::GTK_PHASE_CAPTURE,
10197 Self::Bubble => ffi::GTK_PHASE_BUBBLE,
10198 Self::Target => ffi::GTK_PHASE_TARGET,
10199 Self::__Unknown(value) => value,
10200 }
10201 }
10202}
10203
10204#[doc(hidden)]
10205impl FromGlib<ffi::GtkPropagationPhase> for PropagationPhase {
10206 #[inline]
10207 unsafe fn from_glib(value: ffi::GtkPropagationPhase) -> Self {
10208 skip_assert_initialized!();
10209
10210 match value {
10211 ffi::GTK_PHASE_NONE => Self::None,
10212 ffi::GTK_PHASE_CAPTURE => Self::Capture,
10213 ffi::GTK_PHASE_BUBBLE => Self::Bubble,
10214 ffi::GTK_PHASE_TARGET => Self::Target,
10215 value => Self::__Unknown(value),
10216 }
10217 }
10218}
10219
10220impl StaticType for PropagationPhase {
10221 #[inline]
10222 #[doc(alias = "gtk_propagation_phase_get_type")]
10223 fn static_type() -> glib::Type {
10224 unsafe { from_glib(ffi::gtk_propagation_phase_get_type()) }
10225 }
10226}
10227
10228impl glib::HasParamSpec for PropagationPhase {
10229 type ParamSpec = glib::ParamSpecEnum;
10230 type SetValue = Self;
10231 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10232
10233 fn param_spec_builder() -> Self::BuilderFn {
10234 Self::ParamSpec::builder_with_default
10235 }
10236}
10237
10238impl glib::value::ValueType for PropagationPhase {
10239 type Type = Self;
10240}
10241
10242unsafe impl<'a> glib::value::FromValue<'a> for PropagationPhase {
10243 type Checker = glib::value::GenericValueTypeChecker<Self>;
10244
10245 #[inline]
10246 unsafe fn from_value(value: &'a glib::Value) -> Self {
10247 skip_assert_initialized!();
10248 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10249 }
10250}
10251
10252impl ToValue for PropagationPhase {
10253 #[inline]
10254 fn to_value(&self) -> glib::Value {
10255 let mut value = glib::Value::for_value_type::<Self>();
10256 unsafe {
10257 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10258 }
10259 value
10260 }
10261
10262 #[inline]
10263 fn value_type(&self) -> glib::Type {
10264 Self::static_type()
10265 }
10266}
10267
10268impl From<PropagationPhase> for glib::Value {
10269 #[inline]
10270 fn from(v: PropagationPhase) -> Self {
10271 skip_assert_initialized!();
10272 ToValue::to_value(&v)
10273 }
10274}
10275
10276#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10278#[non_exhaustive]
10279#[doc(alias = "GtkRecentManagerError")]
10280pub enum RecentManagerError {
10281 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_FOUND")]
10284 NotFound,
10285 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_URI")]
10287 InvalidUri,
10288 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING")]
10291 InvalidEncoding,
10292 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED")]
10295 NotRegistered,
10296 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_READ")]
10299 Read,
10300 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_WRITE")]
10303 Write,
10304 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_UNKNOWN")]
10306 Unknown,
10307 #[doc(hidden)]
10308 __Unknown(i32),
10309}
10310
10311#[doc(hidden)]
10312impl IntoGlib for RecentManagerError {
10313 type GlibType = ffi::GtkRecentManagerError;
10314
10315 #[inline]
10316 fn into_glib(self) -> ffi::GtkRecentManagerError {
10317 match self {
10318 Self::NotFound => ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND,
10319 Self::InvalidUri => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI,
10320 Self::InvalidEncoding => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING,
10321 Self::NotRegistered => ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED,
10322 Self::Read => ffi::GTK_RECENT_MANAGER_ERROR_READ,
10323 Self::Write => ffi::GTK_RECENT_MANAGER_ERROR_WRITE,
10324 Self::Unknown => ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN,
10325 Self::__Unknown(value) => value,
10326 }
10327 }
10328}
10329
10330#[doc(hidden)]
10331impl FromGlib<ffi::GtkRecentManagerError> for RecentManagerError {
10332 #[inline]
10333 unsafe fn from_glib(value: ffi::GtkRecentManagerError) -> Self {
10334 skip_assert_initialized!();
10335
10336 match value {
10337 ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND => Self::NotFound,
10338 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI => Self::InvalidUri,
10339 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING => Self::InvalidEncoding,
10340 ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED => Self::NotRegistered,
10341 ffi::GTK_RECENT_MANAGER_ERROR_READ => Self::Read,
10342 ffi::GTK_RECENT_MANAGER_ERROR_WRITE => Self::Write,
10343 ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN => Self::Unknown,
10344 value => Self::__Unknown(value),
10345 }
10346 }
10347}
10348
10349impl glib::error::ErrorDomain for RecentManagerError {
10350 #[inline]
10351 fn domain() -> glib::Quark {
10352 skip_assert_initialized!();
10353
10354 unsafe { from_glib(ffi::gtk_recent_manager_error_quark()) }
10355 }
10356
10357 #[inline]
10358 fn code(self) -> i32 {
10359 self.into_glib()
10360 }
10361
10362 #[inline]
10363 #[allow(clippy::match_single_binding)]
10364 fn from(code: i32) -> Option<Self> {
10365 skip_assert_initialized!();
10366 match unsafe { from_glib(code) } {
10367 value => Some(value),
10368 }
10369 }
10370}
10371
10372impl StaticType for RecentManagerError {
10373 #[inline]
10374 #[doc(alias = "gtk_recent_manager_error_get_type")]
10375 fn static_type() -> glib::Type {
10376 unsafe { from_glib(ffi::gtk_recent_manager_error_get_type()) }
10377 }
10378}
10379
10380impl glib::HasParamSpec for RecentManagerError {
10381 type ParamSpec = glib::ParamSpecEnum;
10382 type SetValue = Self;
10383 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10384
10385 fn param_spec_builder() -> Self::BuilderFn {
10386 Self::ParamSpec::builder_with_default
10387 }
10388}
10389
10390impl glib::value::ValueType for RecentManagerError {
10391 type Type = Self;
10392}
10393
10394unsafe impl<'a> glib::value::FromValue<'a> for RecentManagerError {
10395 type Checker = glib::value::GenericValueTypeChecker<Self>;
10396
10397 #[inline]
10398 unsafe fn from_value(value: &'a glib::Value) -> Self {
10399 skip_assert_initialized!();
10400 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10401 }
10402}
10403
10404impl ToValue for RecentManagerError {
10405 #[inline]
10406 fn to_value(&self) -> glib::Value {
10407 let mut value = glib::Value::for_value_type::<Self>();
10408 unsafe {
10409 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10410 }
10411 value
10412 }
10413
10414 #[inline]
10415 fn value_type(&self) -> glib::Type {
10416 Self::static_type()
10417 }
10418}
10419
10420impl From<RecentManagerError> for glib::Value {
10421 #[inline]
10422 fn from(v: RecentManagerError) -> Self {
10423 skip_assert_initialized!();
10424 ToValue::to_value(&v)
10425 }
10426}
10427
10428#[cfg(feature = "v4_22")]
10434#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10435#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10436#[non_exhaustive]
10437#[doc(alias = "GtkReducedMotion")]
10438pub enum ReducedMotion {
10439 #[doc(alias = "GTK_REDUCED_MOTION_NO_PREFERENCE")]
10441 NoPreference,
10442 #[doc(alias = "GTK_REDUCED_MOTION_REDUCE")]
10447 Reduce,
10448 #[doc(hidden)]
10449 __Unknown(i32),
10450}
10451
10452#[cfg(feature = "v4_22")]
10453#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10454#[doc(hidden)]
10455impl IntoGlib for ReducedMotion {
10456 type GlibType = ffi::GtkReducedMotion;
10457
10458 #[inline]
10459 fn into_glib(self) -> ffi::GtkReducedMotion {
10460 match self {
10461 Self::NoPreference => ffi::GTK_REDUCED_MOTION_NO_PREFERENCE,
10462 Self::Reduce => ffi::GTK_REDUCED_MOTION_REDUCE,
10463 Self::__Unknown(value) => value,
10464 }
10465 }
10466}
10467
10468#[cfg(feature = "v4_22")]
10469#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10470#[doc(hidden)]
10471impl FromGlib<ffi::GtkReducedMotion> for ReducedMotion {
10472 #[inline]
10473 unsafe fn from_glib(value: ffi::GtkReducedMotion) -> Self {
10474 skip_assert_initialized!();
10475
10476 match value {
10477 ffi::GTK_REDUCED_MOTION_NO_PREFERENCE => Self::NoPreference,
10478 ffi::GTK_REDUCED_MOTION_REDUCE => Self::Reduce,
10479 value => Self::__Unknown(value),
10480 }
10481 }
10482}
10483
10484#[cfg(feature = "v4_22")]
10485#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10486impl StaticType for ReducedMotion {
10487 #[inline]
10488 #[doc(alias = "gtk_reduced_motion_get_type")]
10489 fn static_type() -> glib::Type {
10490 unsafe { from_glib(ffi::gtk_reduced_motion_get_type()) }
10491 }
10492}
10493
10494#[cfg(feature = "v4_22")]
10495#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10496impl glib::HasParamSpec for ReducedMotion {
10497 type ParamSpec = glib::ParamSpecEnum;
10498 type SetValue = Self;
10499 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10500
10501 fn param_spec_builder() -> Self::BuilderFn {
10502 Self::ParamSpec::builder_with_default
10503 }
10504}
10505
10506#[cfg(feature = "v4_22")]
10507#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10508impl glib::value::ValueType for ReducedMotion {
10509 type Type = Self;
10510}
10511
10512#[cfg(feature = "v4_22")]
10513#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10514unsafe impl<'a> glib::value::FromValue<'a> for ReducedMotion {
10515 type Checker = glib::value::GenericValueTypeChecker<Self>;
10516
10517 #[inline]
10518 unsafe fn from_value(value: &'a glib::Value) -> Self {
10519 skip_assert_initialized!();
10520 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10521 }
10522}
10523
10524#[cfg(feature = "v4_22")]
10525#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10526impl ToValue for ReducedMotion {
10527 #[inline]
10528 fn to_value(&self) -> glib::Value {
10529 let mut value = glib::Value::for_value_type::<Self>();
10530 unsafe {
10531 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10532 }
10533 value
10534 }
10535
10536 #[inline]
10537 fn value_type(&self) -> glib::Type {
10538 Self::static_type()
10539 }
10540}
10541
10542#[cfg(feature = "v4_22")]
10543#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10544impl From<ReducedMotion> for glib::Value {
10545 #[inline]
10546 fn from(v: ReducedMotion) -> Self {
10547 skip_assert_initialized!();
10548 ToValue::to_value(&v)
10549 }
10550}
10551
10552#[cfg(feature = "v4_22")]
10556#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10557#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10558#[non_exhaustive]
10559#[doc(alias = "GtkRestoreReason")]
10560pub enum RestoreReason {
10561 #[doc(alias = "GTK_RESTORE_REASON_PRISTINE")]
10563 Pristine,
10564 #[doc(alias = "GTK_RESTORE_REASON_LAUNCH")]
10566 Launch,
10567 #[doc(alias = "GTK_RESTORE_REASON_RECOVER")]
10569 Recover,
10570 #[doc(alias = "GTK_RESTORE_REASON_RESTORE")]
10572 Restore,
10573 #[doc(hidden)]
10574 __Unknown(i32),
10575}
10576
10577#[cfg(feature = "v4_22")]
10578#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10579#[doc(hidden)]
10580impl IntoGlib for RestoreReason {
10581 type GlibType = ffi::GtkRestoreReason;
10582
10583 #[inline]
10584 fn into_glib(self) -> ffi::GtkRestoreReason {
10585 match self {
10586 Self::Pristine => ffi::GTK_RESTORE_REASON_PRISTINE,
10587 Self::Launch => ffi::GTK_RESTORE_REASON_LAUNCH,
10588 Self::Recover => ffi::GTK_RESTORE_REASON_RECOVER,
10589 Self::Restore => ffi::GTK_RESTORE_REASON_RESTORE,
10590 Self::__Unknown(value) => value,
10591 }
10592 }
10593}
10594
10595#[cfg(feature = "v4_22")]
10596#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10597#[doc(hidden)]
10598impl FromGlib<ffi::GtkRestoreReason> for RestoreReason {
10599 #[inline]
10600 unsafe fn from_glib(value: ffi::GtkRestoreReason) -> Self {
10601 skip_assert_initialized!();
10602
10603 match value {
10604 ffi::GTK_RESTORE_REASON_PRISTINE => Self::Pristine,
10605 ffi::GTK_RESTORE_REASON_LAUNCH => Self::Launch,
10606 ffi::GTK_RESTORE_REASON_RECOVER => Self::Recover,
10607 ffi::GTK_RESTORE_REASON_RESTORE => Self::Restore,
10608 value => Self::__Unknown(value),
10609 }
10610 }
10611}
10612
10613#[cfg(feature = "v4_22")]
10614#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10615impl StaticType for RestoreReason {
10616 #[inline]
10617 #[doc(alias = "gtk_restore_reason_get_type")]
10618 fn static_type() -> glib::Type {
10619 unsafe { from_glib(ffi::gtk_restore_reason_get_type()) }
10620 }
10621}
10622
10623#[cfg(feature = "v4_22")]
10624#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10625impl glib::HasParamSpec for RestoreReason {
10626 type ParamSpec = glib::ParamSpecEnum;
10627 type SetValue = Self;
10628 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10629
10630 fn param_spec_builder() -> Self::BuilderFn {
10631 Self::ParamSpec::builder_with_default
10632 }
10633}
10634
10635#[cfg(feature = "v4_22")]
10636#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10637impl glib::value::ValueType for RestoreReason {
10638 type Type = Self;
10639}
10640
10641#[cfg(feature = "v4_22")]
10642#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10643unsafe impl<'a> glib::value::FromValue<'a> for RestoreReason {
10644 type Checker = glib::value::GenericValueTypeChecker<Self>;
10645
10646 #[inline]
10647 unsafe fn from_value(value: &'a glib::Value) -> Self {
10648 skip_assert_initialized!();
10649 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10650 }
10651}
10652
10653#[cfg(feature = "v4_22")]
10654#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10655impl ToValue for RestoreReason {
10656 #[inline]
10657 fn to_value(&self) -> glib::Value {
10658 let mut value = glib::Value::for_value_type::<Self>();
10659 unsafe {
10660 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10661 }
10662 value
10663 }
10664
10665 #[inline]
10666 fn value_type(&self) -> glib::Type {
10667 Self::static_type()
10668 }
10669}
10670
10671#[cfg(feature = "v4_22")]
10672#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10673impl From<RestoreReason> for glib::Value {
10674 #[inline]
10675 fn from(v: RestoreReason) -> Self {
10676 skip_assert_initialized!();
10677 ToValue::to_value(&v)
10678 }
10679}
10680
10681#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10684#[non_exhaustive]
10685#[doc(alias = "GtkRevealerTransitionType")]
10686pub enum RevealerTransitionType {
10687 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_NONE")]
10689 None,
10690 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_CROSSFADE")]
10692 Crossfade,
10693 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT")]
10695 SlideRight,
10696 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT")]
10698 SlideLeft,
10699 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP")]
10701 SlideUp,
10702 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN")]
10704 SlideDown,
10705 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT")]
10707 SwingRight,
10708 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT")]
10710 SwingLeft,
10711 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_UP")]
10713 SwingUp,
10714 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN")]
10716 SwingDown,
10717 #[cfg(feature = "v4_22")]
10720 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10721 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT")]
10722 FadeSlideRight,
10723 #[cfg(feature = "v4_22")]
10726 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10727 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT")]
10728 FadeSlideLeft,
10729 #[cfg(feature = "v4_22")]
10732 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10733 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP")]
10734 FadeSlideUp,
10735 #[cfg(feature = "v4_22")]
10738 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10739 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN")]
10740 FadeSlideDown,
10741 #[doc(hidden)]
10742 __Unknown(i32),
10743}
10744
10745#[doc(hidden)]
10746impl IntoGlib for RevealerTransitionType {
10747 type GlibType = ffi::GtkRevealerTransitionType;
10748
10749 fn into_glib(self) -> ffi::GtkRevealerTransitionType {
10750 match self {
10751 Self::None => ffi::GTK_REVEALER_TRANSITION_TYPE_NONE,
10752 Self::Crossfade => ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE,
10753 Self::SlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT,
10754 Self::SlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT,
10755 Self::SlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP,
10756 Self::SlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN,
10757 Self::SwingRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT,
10758 Self::SwingLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT,
10759 Self::SwingUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP,
10760 Self::SwingDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN,
10761 #[cfg(feature = "v4_22")]
10762 Self::FadeSlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT,
10763 #[cfg(feature = "v4_22")]
10764 Self::FadeSlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT,
10765 #[cfg(feature = "v4_22")]
10766 Self::FadeSlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP,
10767 #[cfg(feature = "v4_22")]
10768 Self::FadeSlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN,
10769 Self::__Unknown(value) => value,
10770 }
10771 }
10772}
10773
10774#[doc(hidden)]
10775impl FromGlib<ffi::GtkRevealerTransitionType> for RevealerTransitionType {
10776 unsafe fn from_glib(value: ffi::GtkRevealerTransitionType) -> Self {
10777 skip_assert_initialized!();
10778
10779 match value {
10780 ffi::GTK_REVEALER_TRANSITION_TYPE_NONE => Self::None,
10781 ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
10782 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
10783 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
10784 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
10785 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
10786 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT => Self::SwingRight,
10787 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT => Self::SwingLeft,
10788 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP => Self::SwingUp,
10789 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN => Self::SwingDown,
10790 #[cfg(feature = "v4_22")]
10791 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT => Self::FadeSlideRight,
10792 #[cfg(feature = "v4_22")]
10793 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT => Self::FadeSlideLeft,
10794 #[cfg(feature = "v4_22")]
10795 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP => Self::FadeSlideUp,
10796 #[cfg(feature = "v4_22")]
10797 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN => Self::FadeSlideDown,
10798 value => Self::__Unknown(value),
10799 }
10800 }
10801}
10802
10803impl StaticType for RevealerTransitionType {
10804 #[inline]
10805 #[doc(alias = "gtk_revealer_transition_type_get_type")]
10806 fn static_type() -> glib::Type {
10807 unsafe { from_glib(ffi::gtk_revealer_transition_type_get_type()) }
10808 }
10809}
10810
10811impl glib::HasParamSpec for RevealerTransitionType {
10812 type ParamSpec = glib::ParamSpecEnum;
10813 type SetValue = Self;
10814 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10815
10816 fn param_spec_builder() -> Self::BuilderFn {
10817 Self::ParamSpec::builder_with_default
10818 }
10819}
10820
10821impl glib::value::ValueType for RevealerTransitionType {
10822 type Type = Self;
10823}
10824
10825unsafe impl<'a> glib::value::FromValue<'a> for RevealerTransitionType {
10826 type Checker = glib::value::GenericValueTypeChecker<Self>;
10827
10828 #[inline]
10829 unsafe fn from_value(value: &'a glib::Value) -> Self {
10830 skip_assert_initialized!();
10831 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10832 }
10833}
10834
10835impl ToValue for RevealerTransitionType {
10836 #[inline]
10837 fn to_value(&self) -> glib::Value {
10838 let mut value = glib::Value::for_value_type::<Self>();
10839 unsafe {
10840 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10841 }
10842 value
10843 }
10844
10845 #[inline]
10846 fn value_type(&self) -> glib::Type {
10847 Self::static_type()
10848 }
10849}
10850
10851impl From<RevealerTransitionType> for glib::Value {
10852 #[inline]
10853 fn from(v: RevealerTransitionType) -> Self {
10854 skip_assert_initialized!();
10855 ToValue::to_value(&v)
10856 }
10857}
10858
10859#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10861#[non_exhaustive]
10862#[doc(alias = "GtkScrollStep")]
10863pub enum ScrollStep {
10864 #[doc(alias = "GTK_SCROLL_STEPS")]
10866 Steps,
10867 #[doc(alias = "GTK_SCROLL_PAGES")]
10869 Pages,
10870 #[doc(alias = "GTK_SCROLL_ENDS")]
10872 Ends,
10873 #[doc(alias = "GTK_SCROLL_HORIZONTAL_STEPS")]
10875 HorizontalSteps,
10876 #[doc(alias = "GTK_SCROLL_HORIZONTAL_PAGES")]
10878 HorizontalPages,
10879 #[doc(alias = "GTK_SCROLL_HORIZONTAL_ENDS")]
10881 HorizontalEnds,
10882 #[doc(hidden)]
10883 __Unknown(i32),
10884}
10885
10886#[doc(hidden)]
10887impl IntoGlib for ScrollStep {
10888 type GlibType = ffi::GtkScrollStep;
10889
10890 #[inline]
10891 fn into_glib(self) -> ffi::GtkScrollStep {
10892 match self {
10893 Self::Steps => ffi::GTK_SCROLL_STEPS,
10894 Self::Pages => ffi::GTK_SCROLL_PAGES,
10895 Self::Ends => ffi::GTK_SCROLL_ENDS,
10896 Self::HorizontalSteps => ffi::GTK_SCROLL_HORIZONTAL_STEPS,
10897 Self::HorizontalPages => ffi::GTK_SCROLL_HORIZONTAL_PAGES,
10898 Self::HorizontalEnds => ffi::GTK_SCROLL_HORIZONTAL_ENDS,
10899 Self::__Unknown(value) => value,
10900 }
10901 }
10902}
10903
10904#[doc(hidden)]
10905impl FromGlib<ffi::GtkScrollStep> for ScrollStep {
10906 #[inline]
10907 unsafe fn from_glib(value: ffi::GtkScrollStep) -> Self {
10908 skip_assert_initialized!();
10909
10910 match value {
10911 ffi::GTK_SCROLL_STEPS => Self::Steps,
10912 ffi::GTK_SCROLL_PAGES => Self::Pages,
10913 ffi::GTK_SCROLL_ENDS => Self::Ends,
10914 ffi::GTK_SCROLL_HORIZONTAL_STEPS => Self::HorizontalSteps,
10915 ffi::GTK_SCROLL_HORIZONTAL_PAGES => Self::HorizontalPages,
10916 ffi::GTK_SCROLL_HORIZONTAL_ENDS => Self::HorizontalEnds,
10917 value => Self::__Unknown(value),
10918 }
10919 }
10920}
10921
10922impl StaticType for ScrollStep {
10923 #[inline]
10924 #[doc(alias = "gtk_scroll_step_get_type")]
10925 fn static_type() -> glib::Type {
10926 unsafe { from_glib(ffi::gtk_scroll_step_get_type()) }
10927 }
10928}
10929
10930impl glib::HasParamSpec for ScrollStep {
10931 type ParamSpec = glib::ParamSpecEnum;
10932 type SetValue = Self;
10933 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10934
10935 fn param_spec_builder() -> Self::BuilderFn {
10936 Self::ParamSpec::builder_with_default
10937 }
10938}
10939
10940impl glib::value::ValueType for ScrollStep {
10941 type Type = Self;
10942}
10943
10944unsafe impl<'a> glib::value::FromValue<'a> for ScrollStep {
10945 type Checker = glib::value::GenericValueTypeChecker<Self>;
10946
10947 #[inline]
10948 unsafe fn from_value(value: &'a glib::Value) -> Self {
10949 skip_assert_initialized!();
10950 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
10951 }
10952}
10953
10954impl ToValue for ScrollStep {
10955 #[inline]
10956 fn to_value(&self) -> glib::Value {
10957 let mut value = glib::Value::for_value_type::<Self>();
10958 unsafe {
10959 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10960 }
10961 value
10962 }
10963
10964 #[inline]
10965 fn value_type(&self) -> glib::Type {
10966 Self::static_type()
10967 }
10968}
10969
10970impl From<ScrollStep> for glib::Value {
10971 #[inline]
10972 fn from(v: ScrollStep) -> Self {
10973 skip_assert_initialized!();
10974 ToValue::to_value(&v)
10975 }
10976}
10977
10978#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10980#[non_exhaustive]
10981#[doc(alias = "GtkScrollType")]
10982pub enum ScrollType {
10983 #[doc(alias = "GTK_SCROLL_NONE")]
10985 None,
10986 #[doc(alias = "GTK_SCROLL_JUMP")]
10988 Jump,
10989 #[doc(alias = "GTK_SCROLL_STEP_BACKWARD")]
10991 StepBackward,
10992 #[doc(alias = "GTK_SCROLL_STEP_FORWARD")]
10994 StepForward,
10995 #[doc(alias = "GTK_SCROLL_PAGE_BACKWARD")]
10997 PageBackward,
10998 #[doc(alias = "GTK_SCROLL_PAGE_FORWARD")]
11000 PageForward,
11001 #[doc(alias = "GTK_SCROLL_STEP_UP")]
11003 StepUp,
11004 #[doc(alias = "GTK_SCROLL_STEP_DOWN")]
11006 StepDown,
11007 #[doc(alias = "GTK_SCROLL_PAGE_UP")]
11009 PageUp,
11010 #[doc(alias = "GTK_SCROLL_PAGE_DOWN")]
11012 PageDown,
11013 #[doc(alias = "GTK_SCROLL_STEP_LEFT")]
11015 StepLeft,
11016 #[doc(alias = "GTK_SCROLL_STEP_RIGHT")]
11018 StepRight,
11019 #[doc(alias = "GTK_SCROLL_PAGE_LEFT")]
11021 PageLeft,
11022 #[doc(alias = "GTK_SCROLL_PAGE_RIGHT")]
11024 PageRight,
11025 #[doc(alias = "GTK_SCROLL_START")]
11027 Start,
11028 #[doc(alias = "GTK_SCROLL_END")]
11030 End,
11031 #[doc(hidden)]
11032 __Unknown(i32),
11033}
11034
11035#[doc(hidden)]
11036impl IntoGlib for ScrollType {
11037 type GlibType = ffi::GtkScrollType;
11038
11039 fn into_glib(self) -> ffi::GtkScrollType {
11040 match self {
11041 Self::None => ffi::GTK_SCROLL_NONE,
11042 Self::Jump => ffi::GTK_SCROLL_JUMP,
11043 Self::StepBackward => ffi::GTK_SCROLL_STEP_BACKWARD,
11044 Self::StepForward => ffi::GTK_SCROLL_STEP_FORWARD,
11045 Self::PageBackward => ffi::GTK_SCROLL_PAGE_BACKWARD,
11046 Self::PageForward => ffi::GTK_SCROLL_PAGE_FORWARD,
11047 Self::StepUp => ffi::GTK_SCROLL_STEP_UP,
11048 Self::StepDown => ffi::GTK_SCROLL_STEP_DOWN,
11049 Self::PageUp => ffi::GTK_SCROLL_PAGE_UP,
11050 Self::PageDown => ffi::GTK_SCROLL_PAGE_DOWN,
11051 Self::StepLeft => ffi::GTK_SCROLL_STEP_LEFT,
11052 Self::StepRight => ffi::GTK_SCROLL_STEP_RIGHT,
11053 Self::PageLeft => ffi::GTK_SCROLL_PAGE_LEFT,
11054 Self::PageRight => ffi::GTK_SCROLL_PAGE_RIGHT,
11055 Self::Start => ffi::GTK_SCROLL_START,
11056 Self::End => ffi::GTK_SCROLL_END,
11057 Self::__Unknown(value) => value,
11058 }
11059 }
11060}
11061
11062#[doc(hidden)]
11063impl FromGlib<ffi::GtkScrollType> for ScrollType {
11064 unsafe fn from_glib(value: ffi::GtkScrollType) -> Self {
11065 skip_assert_initialized!();
11066
11067 match value {
11068 ffi::GTK_SCROLL_NONE => Self::None,
11069 ffi::GTK_SCROLL_JUMP => Self::Jump,
11070 ffi::GTK_SCROLL_STEP_BACKWARD => Self::StepBackward,
11071 ffi::GTK_SCROLL_STEP_FORWARD => Self::StepForward,
11072 ffi::GTK_SCROLL_PAGE_BACKWARD => Self::PageBackward,
11073 ffi::GTK_SCROLL_PAGE_FORWARD => Self::PageForward,
11074 ffi::GTK_SCROLL_STEP_UP => Self::StepUp,
11075 ffi::GTK_SCROLL_STEP_DOWN => Self::StepDown,
11076 ffi::GTK_SCROLL_PAGE_UP => Self::PageUp,
11077 ffi::GTK_SCROLL_PAGE_DOWN => Self::PageDown,
11078 ffi::GTK_SCROLL_STEP_LEFT => Self::StepLeft,
11079 ffi::GTK_SCROLL_STEP_RIGHT => Self::StepRight,
11080 ffi::GTK_SCROLL_PAGE_LEFT => Self::PageLeft,
11081 ffi::GTK_SCROLL_PAGE_RIGHT => Self::PageRight,
11082 ffi::GTK_SCROLL_START => Self::Start,
11083 ffi::GTK_SCROLL_END => Self::End,
11084 value => Self::__Unknown(value),
11085 }
11086 }
11087}
11088
11089impl StaticType for ScrollType {
11090 #[inline]
11091 #[doc(alias = "gtk_scroll_type_get_type")]
11092 fn static_type() -> glib::Type {
11093 unsafe { from_glib(ffi::gtk_scroll_type_get_type()) }
11094 }
11095}
11096
11097impl glib::HasParamSpec for ScrollType {
11098 type ParamSpec = glib::ParamSpecEnum;
11099 type SetValue = Self;
11100 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11101
11102 fn param_spec_builder() -> Self::BuilderFn {
11103 Self::ParamSpec::builder_with_default
11104 }
11105}
11106
11107impl glib::value::ValueType for ScrollType {
11108 type Type = Self;
11109}
11110
11111unsafe impl<'a> glib::value::FromValue<'a> for ScrollType {
11112 type Checker = glib::value::GenericValueTypeChecker<Self>;
11113
11114 #[inline]
11115 unsafe fn from_value(value: &'a glib::Value) -> Self {
11116 skip_assert_initialized!();
11117 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11118 }
11119}
11120
11121impl ToValue for ScrollType {
11122 #[inline]
11123 fn to_value(&self) -> glib::Value {
11124 let mut value = glib::Value::for_value_type::<Self>();
11125 unsafe {
11126 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11127 }
11128 value
11129 }
11130
11131 #[inline]
11132 fn value_type(&self) -> glib::Type {
11133 Self::static_type()
11134 }
11135}
11136
11137impl From<ScrollType> for glib::Value {
11138 #[inline]
11139 fn from(v: ScrollType) -> Self {
11140 skip_assert_initialized!();
11141 ToValue::to_value(&v)
11142 }
11143}
11144
11145#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11148#[non_exhaustive]
11149#[doc(alias = "GtkScrollablePolicy")]
11150pub enum ScrollablePolicy {
11151 #[doc(alias = "GTK_SCROLL_MINIMUM")]
11153 Minimum,
11154 #[doc(alias = "GTK_SCROLL_NATURAL")]
11156 Natural,
11157 #[doc(hidden)]
11158 __Unknown(i32),
11159}
11160
11161#[doc(hidden)]
11162impl IntoGlib for ScrollablePolicy {
11163 type GlibType = ffi::GtkScrollablePolicy;
11164
11165 #[inline]
11166 fn into_glib(self) -> ffi::GtkScrollablePolicy {
11167 match self {
11168 Self::Minimum => ffi::GTK_SCROLL_MINIMUM,
11169 Self::Natural => ffi::GTK_SCROLL_NATURAL,
11170 Self::__Unknown(value) => value,
11171 }
11172 }
11173}
11174
11175#[doc(hidden)]
11176impl FromGlib<ffi::GtkScrollablePolicy> for ScrollablePolicy {
11177 #[inline]
11178 unsafe fn from_glib(value: ffi::GtkScrollablePolicy) -> Self {
11179 skip_assert_initialized!();
11180
11181 match value {
11182 ffi::GTK_SCROLL_MINIMUM => Self::Minimum,
11183 ffi::GTK_SCROLL_NATURAL => Self::Natural,
11184 value => Self::__Unknown(value),
11185 }
11186 }
11187}
11188
11189impl StaticType for ScrollablePolicy {
11190 #[inline]
11191 #[doc(alias = "gtk_scrollable_policy_get_type")]
11192 fn static_type() -> glib::Type {
11193 unsafe { from_glib(ffi::gtk_scrollable_policy_get_type()) }
11194 }
11195}
11196
11197impl glib::HasParamSpec for ScrollablePolicy {
11198 type ParamSpec = glib::ParamSpecEnum;
11199 type SetValue = Self;
11200 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11201
11202 fn param_spec_builder() -> Self::BuilderFn {
11203 Self::ParamSpec::builder_with_default
11204 }
11205}
11206
11207impl glib::value::ValueType for ScrollablePolicy {
11208 type Type = Self;
11209}
11210
11211unsafe impl<'a> glib::value::FromValue<'a> for ScrollablePolicy {
11212 type Checker = glib::value::GenericValueTypeChecker<Self>;
11213
11214 #[inline]
11215 unsafe fn from_value(value: &'a glib::Value) -> Self {
11216 skip_assert_initialized!();
11217 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11218 }
11219}
11220
11221impl ToValue for ScrollablePolicy {
11222 #[inline]
11223 fn to_value(&self) -> glib::Value {
11224 let mut value = glib::Value::for_value_type::<Self>();
11225 unsafe {
11226 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11227 }
11228 value
11229 }
11230
11231 #[inline]
11232 fn value_type(&self) -> glib::Type {
11233 Self::static_type()
11234 }
11235}
11236
11237impl From<ScrollablePolicy> for glib::Value {
11238 #[inline]
11239 fn from(v: ScrollablePolicy) -> Self {
11240 skip_assert_initialized!();
11241 ToValue::to_value(&v)
11242 }
11243}
11244
11245#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11247#[non_exhaustive]
11248#[doc(alias = "GtkSelectionMode")]
11249pub enum SelectionMode {
11250 #[doc(alias = "GTK_SELECTION_NONE")]
11252 None,
11253 #[doc(alias = "GTK_SELECTION_SINGLE")]
11255 Single,
11256 #[doc(alias = "GTK_SELECTION_BROWSE")]
11263 Browse,
11264 #[doc(alias = "GTK_SELECTION_MULTIPLE")]
11269 Multiple,
11270 #[doc(hidden)]
11271 __Unknown(i32),
11272}
11273
11274#[doc(hidden)]
11275impl IntoGlib for SelectionMode {
11276 type GlibType = ffi::GtkSelectionMode;
11277
11278 #[inline]
11279 fn into_glib(self) -> ffi::GtkSelectionMode {
11280 match self {
11281 Self::None => ffi::GTK_SELECTION_NONE,
11282 Self::Single => ffi::GTK_SELECTION_SINGLE,
11283 Self::Browse => ffi::GTK_SELECTION_BROWSE,
11284 Self::Multiple => ffi::GTK_SELECTION_MULTIPLE,
11285 Self::__Unknown(value) => value,
11286 }
11287 }
11288}
11289
11290#[doc(hidden)]
11291impl FromGlib<ffi::GtkSelectionMode> for SelectionMode {
11292 #[inline]
11293 unsafe fn from_glib(value: ffi::GtkSelectionMode) -> Self {
11294 skip_assert_initialized!();
11295
11296 match value {
11297 ffi::GTK_SELECTION_NONE => Self::None,
11298 ffi::GTK_SELECTION_SINGLE => Self::Single,
11299 ffi::GTK_SELECTION_BROWSE => Self::Browse,
11300 ffi::GTK_SELECTION_MULTIPLE => Self::Multiple,
11301 value => Self::__Unknown(value),
11302 }
11303 }
11304}
11305
11306impl StaticType for SelectionMode {
11307 #[inline]
11308 #[doc(alias = "gtk_selection_mode_get_type")]
11309 fn static_type() -> glib::Type {
11310 unsafe { from_glib(ffi::gtk_selection_mode_get_type()) }
11311 }
11312}
11313
11314impl glib::HasParamSpec for SelectionMode {
11315 type ParamSpec = glib::ParamSpecEnum;
11316 type SetValue = Self;
11317 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11318
11319 fn param_spec_builder() -> Self::BuilderFn {
11320 Self::ParamSpec::builder_with_default
11321 }
11322}
11323
11324impl glib::value::ValueType for SelectionMode {
11325 type Type = Self;
11326}
11327
11328unsafe impl<'a> glib::value::FromValue<'a> for SelectionMode {
11329 type Checker = glib::value::GenericValueTypeChecker<Self>;
11330
11331 #[inline]
11332 unsafe fn from_value(value: &'a glib::Value) -> Self {
11333 skip_assert_initialized!();
11334 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11335 }
11336}
11337
11338impl ToValue for SelectionMode {
11339 #[inline]
11340 fn to_value(&self) -> glib::Value {
11341 let mut value = glib::Value::for_value_type::<Self>();
11342 unsafe {
11343 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11344 }
11345 value
11346 }
11347
11348 #[inline]
11349 fn value_type(&self) -> glib::Type {
11350 Self::static_type()
11351 }
11352}
11353
11354impl From<SelectionMode> for glib::Value {
11355 #[inline]
11356 fn from(v: SelectionMode) -> Self {
11357 skip_assert_initialized!();
11358 ToValue::to_value(&v)
11359 }
11360}
11361
11362#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11365#[non_exhaustive]
11366#[doc(alias = "GtkSensitivityType")]
11367pub enum SensitivityType {
11368 #[doc(alias = "GTK_SENSITIVITY_AUTO")]
11371 Auto,
11372 #[doc(alias = "GTK_SENSITIVITY_ON")]
11374 On,
11375 #[doc(alias = "GTK_SENSITIVITY_OFF")]
11377 Off,
11378 #[doc(hidden)]
11379 __Unknown(i32),
11380}
11381
11382#[doc(hidden)]
11383impl IntoGlib for SensitivityType {
11384 type GlibType = ffi::GtkSensitivityType;
11385
11386 #[inline]
11387 fn into_glib(self) -> ffi::GtkSensitivityType {
11388 match self {
11389 Self::Auto => ffi::GTK_SENSITIVITY_AUTO,
11390 Self::On => ffi::GTK_SENSITIVITY_ON,
11391 Self::Off => ffi::GTK_SENSITIVITY_OFF,
11392 Self::__Unknown(value) => value,
11393 }
11394 }
11395}
11396
11397#[doc(hidden)]
11398impl FromGlib<ffi::GtkSensitivityType> for SensitivityType {
11399 #[inline]
11400 unsafe fn from_glib(value: ffi::GtkSensitivityType) -> Self {
11401 skip_assert_initialized!();
11402
11403 match value {
11404 ffi::GTK_SENSITIVITY_AUTO => Self::Auto,
11405 ffi::GTK_SENSITIVITY_ON => Self::On,
11406 ffi::GTK_SENSITIVITY_OFF => Self::Off,
11407 value => Self::__Unknown(value),
11408 }
11409 }
11410}
11411
11412impl StaticType for SensitivityType {
11413 #[inline]
11414 #[doc(alias = "gtk_sensitivity_type_get_type")]
11415 fn static_type() -> glib::Type {
11416 unsafe { from_glib(ffi::gtk_sensitivity_type_get_type()) }
11417 }
11418}
11419
11420impl glib::HasParamSpec for SensitivityType {
11421 type ParamSpec = glib::ParamSpecEnum;
11422 type SetValue = Self;
11423 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11424
11425 fn param_spec_builder() -> Self::BuilderFn {
11426 Self::ParamSpec::builder_with_default
11427 }
11428}
11429
11430impl glib::value::ValueType for SensitivityType {
11431 type Type = Self;
11432}
11433
11434unsafe impl<'a> glib::value::FromValue<'a> for SensitivityType {
11435 type Checker = glib::value::GenericValueTypeChecker<Self>;
11436
11437 #[inline]
11438 unsafe fn from_value(value: &'a glib::Value) -> Self {
11439 skip_assert_initialized!();
11440 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11441 }
11442}
11443
11444impl ToValue for SensitivityType {
11445 #[inline]
11446 fn to_value(&self) -> glib::Value {
11447 let mut value = glib::Value::for_value_type::<Self>();
11448 unsafe {
11449 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11450 }
11451 value
11452 }
11453
11454 #[inline]
11455 fn value_type(&self) -> glib::Type {
11456 Self::static_type()
11457 }
11458}
11459
11460impl From<SensitivityType> for glib::Value {
11461 #[inline]
11462 fn from(v: SensitivityType) -> Self {
11463 skip_assert_initialized!();
11464 ToValue::to_value(&v)
11465 }
11466}
11467
11468#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11471#[non_exhaustive]
11472#[doc(alias = "GtkShortcutScope")]
11473pub enum ShortcutScope {
11474 #[doc(alias = "GTK_SHORTCUT_SCOPE_LOCAL")]
11477 Local,
11478 #[doc(alias = "GTK_SHORTCUT_SCOPE_MANAGED")]
11481 Managed,
11482 #[doc(alias = "GTK_SHORTCUT_SCOPE_GLOBAL")]
11485 Global,
11486 #[doc(hidden)]
11487 __Unknown(i32),
11488}
11489
11490#[doc(hidden)]
11491impl IntoGlib for ShortcutScope {
11492 type GlibType = ffi::GtkShortcutScope;
11493
11494 #[inline]
11495 fn into_glib(self) -> ffi::GtkShortcutScope {
11496 match self {
11497 Self::Local => ffi::GTK_SHORTCUT_SCOPE_LOCAL,
11498 Self::Managed => ffi::GTK_SHORTCUT_SCOPE_MANAGED,
11499 Self::Global => ffi::GTK_SHORTCUT_SCOPE_GLOBAL,
11500 Self::__Unknown(value) => value,
11501 }
11502 }
11503}
11504
11505#[doc(hidden)]
11506impl FromGlib<ffi::GtkShortcutScope> for ShortcutScope {
11507 #[inline]
11508 unsafe fn from_glib(value: ffi::GtkShortcutScope) -> Self {
11509 skip_assert_initialized!();
11510
11511 match value {
11512 ffi::GTK_SHORTCUT_SCOPE_LOCAL => Self::Local,
11513 ffi::GTK_SHORTCUT_SCOPE_MANAGED => Self::Managed,
11514 ffi::GTK_SHORTCUT_SCOPE_GLOBAL => Self::Global,
11515 value => Self::__Unknown(value),
11516 }
11517 }
11518}
11519
11520impl StaticType for ShortcutScope {
11521 #[inline]
11522 #[doc(alias = "gtk_shortcut_scope_get_type")]
11523 fn static_type() -> glib::Type {
11524 unsafe { from_glib(ffi::gtk_shortcut_scope_get_type()) }
11525 }
11526}
11527
11528impl glib::HasParamSpec for ShortcutScope {
11529 type ParamSpec = glib::ParamSpecEnum;
11530 type SetValue = Self;
11531 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11532
11533 fn param_spec_builder() -> Self::BuilderFn {
11534 Self::ParamSpec::builder_with_default
11535 }
11536}
11537
11538impl glib::value::ValueType for ShortcutScope {
11539 type Type = Self;
11540}
11541
11542unsafe impl<'a> glib::value::FromValue<'a> for ShortcutScope {
11543 type Checker = glib::value::GenericValueTypeChecker<Self>;
11544
11545 #[inline]
11546 unsafe fn from_value(value: &'a glib::Value) -> Self {
11547 skip_assert_initialized!();
11548 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11549 }
11550}
11551
11552impl ToValue for ShortcutScope {
11553 #[inline]
11554 fn to_value(&self) -> glib::Value {
11555 let mut value = glib::Value::for_value_type::<Self>();
11556 unsafe {
11557 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11558 }
11559 value
11560 }
11561
11562 #[inline]
11563 fn value_type(&self) -> glib::Type {
11564 Self::static_type()
11565 }
11566}
11567
11568impl From<ShortcutScope> for glib::Value {
11569 #[inline]
11570 fn from(v: ShortcutScope) -> Self {
11571 skip_assert_initialized!();
11572 ToValue::to_value(&v)
11573 }
11574}
11575
11576#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11580#[non_exhaustive]
11581#[doc(alias = "GtkShortcutType")]
11582pub enum ShortcutType {
11583 #[doc(alias = "GTK_SHORTCUT_ACCELERATOR")]
11586 Accelerator,
11587 #[doc(alias = "GTK_SHORTCUT_GESTURE_PINCH")]
11589 GesturePinch,
11590 #[doc(alias = "GTK_SHORTCUT_GESTURE_STRETCH")]
11592 GestureStretch,
11593 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE")]
11595 GestureRotateClockwise,
11596 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE")]
11598 GestureRotateCounterclockwise,
11599 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT")]
11601 GestureTwoFingerSwipeLeft,
11602 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT")]
11604 GestureTwoFingerSwipeRight,
11605 #[doc(alias = "GTK_SHORTCUT_GESTURE")]
11608 Gesture,
11609 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_LEFT")]
11611 GestureSwipeLeft,
11612 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_RIGHT")]
11614 GestureSwipeRight,
11615 #[doc(hidden)]
11616 __Unknown(i32),
11617}
11618
11619#[doc(hidden)]
11620impl IntoGlib for ShortcutType {
11621 type GlibType = ffi::GtkShortcutType;
11622
11623 #[inline]
11624 fn into_glib(self) -> ffi::GtkShortcutType {
11625 match self {
11626 Self::Accelerator => ffi::GTK_SHORTCUT_ACCELERATOR,
11627 Self::GesturePinch => ffi::GTK_SHORTCUT_GESTURE_PINCH,
11628 Self::GestureStretch => ffi::GTK_SHORTCUT_GESTURE_STRETCH,
11629 Self::GestureRotateClockwise => ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE,
11630 Self::GestureRotateCounterclockwise => {
11631 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE
11632 }
11633 Self::GestureTwoFingerSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT,
11634 Self::GestureTwoFingerSwipeRight => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT,
11635 Self::Gesture => ffi::GTK_SHORTCUT_GESTURE,
11636 Self::GestureSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT,
11637 Self::GestureSwipeRight => ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT,
11638 Self::__Unknown(value) => value,
11639 }
11640 }
11641}
11642
11643#[doc(hidden)]
11644impl FromGlib<ffi::GtkShortcutType> for ShortcutType {
11645 #[inline]
11646 unsafe fn from_glib(value: ffi::GtkShortcutType) -> Self {
11647 skip_assert_initialized!();
11648
11649 match value {
11650 ffi::GTK_SHORTCUT_ACCELERATOR => Self::Accelerator,
11651 ffi::GTK_SHORTCUT_GESTURE_PINCH => Self::GesturePinch,
11652 ffi::GTK_SHORTCUT_GESTURE_STRETCH => Self::GestureStretch,
11653 ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE => Self::GestureRotateClockwise,
11654 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE => {
11655 Self::GestureRotateCounterclockwise
11656 }
11657 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT => Self::GestureTwoFingerSwipeLeft,
11658 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT => Self::GestureTwoFingerSwipeRight,
11659 ffi::GTK_SHORTCUT_GESTURE => Self::Gesture,
11660 ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT => Self::GestureSwipeLeft,
11661 ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT => Self::GestureSwipeRight,
11662 value => Self::__Unknown(value),
11663 }
11664 }
11665}
11666
11667impl StaticType for ShortcutType {
11668 #[inline]
11669 #[doc(alias = "gtk_shortcut_type_get_type")]
11670 fn static_type() -> glib::Type {
11671 unsafe { from_glib(ffi::gtk_shortcut_type_get_type()) }
11672 }
11673}
11674
11675impl glib::HasParamSpec for ShortcutType {
11676 type ParamSpec = glib::ParamSpecEnum;
11677 type SetValue = Self;
11678 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11679
11680 fn param_spec_builder() -> Self::BuilderFn {
11681 Self::ParamSpec::builder_with_default
11682 }
11683}
11684
11685impl glib::value::ValueType for ShortcutType {
11686 type Type = Self;
11687}
11688
11689unsafe impl<'a> glib::value::FromValue<'a> for ShortcutType {
11690 type Checker = glib::value::GenericValueTypeChecker<Self>;
11691
11692 #[inline]
11693 unsafe fn from_value(value: &'a glib::Value) -> Self {
11694 skip_assert_initialized!();
11695 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11696 }
11697}
11698
11699impl ToValue for ShortcutType {
11700 #[inline]
11701 fn to_value(&self) -> glib::Value {
11702 let mut value = glib::Value::for_value_type::<Self>();
11703 unsafe {
11704 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11705 }
11706 value
11707 }
11708
11709 #[inline]
11710 fn value_type(&self) -> glib::Type {
11711 Self::static_type()
11712 }
11713}
11714
11715impl From<ShortcutType> for glib::Value {
11716 #[inline]
11717 fn from(v: ShortcutType) -> Self {
11718 skip_assert_initialized!();
11719 ToValue::to_value(&v)
11720 }
11721}
11722
11723#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11726#[non_exhaustive]
11727#[doc(alias = "GtkSizeGroupMode")]
11728pub enum SizeGroupMode {
11729 #[doc(alias = "GTK_SIZE_GROUP_NONE")]
11731 None,
11732 #[doc(alias = "GTK_SIZE_GROUP_HORIZONTAL")]
11734 Horizontal,
11735 #[doc(alias = "GTK_SIZE_GROUP_VERTICAL")]
11737 Vertical,
11738 #[doc(alias = "GTK_SIZE_GROUP_BOTH")]
11740 Both,
11741 #[doc(hidden)]
11742 __Unknown(i32),
11743}
11744
11745#[doc(hidden)]
11746impl IntoGlib for SizeGroupMode {
11747 type GlibType = ffi::GtkSizeGroupMode;
11748
11749 #[inline]
11750 fn into_glib(self) -> ffi::GtkSizeGroupMode {
11751 match self {
11752 Self::None => ffi::GTK_SIZE_GROUP_NONE,
11753 Self::Horizontal => ffi::GTK_SIZE_GROUP_HORIZONTAL,
11754 Self::Vertical => ffi::GTK_SIZE_GROUP_VERTICAL,
11755 Self::Both => ffi::GTK_SIZE_GROUP_BOTH,
11756 Self::__Unknown(value) => value,
11757 }
11758 }
11759}
11760
11761#[doc(hidden)]
11762impl FromGlib<ffi::GtkSizeGroupMode> for SizeGroupMode {
11763 #[inline]
11764 unsafe fn from_glib(value: ffi::GtkSizeGroupMode) -> Self {
11765 skip_assert_initialized!();
11766
11767 match value {
11768 ffi::GTK_SIZE_GROUP_NONE => Self::None,
11769 ffi::GTK_SIZE_GROUP_HORIZONTAL => Self::Horizontal,
11770 ffi::GTK_SIZE_GROUP_VERTICAL => Self::Vertical,
11771 ffi::GTK_SIZE_GROUP_BOTH => Self::Both,
11772 value => Self::__Unknown(value),
11773 }
11774 }
11775}
11776
11777impl StaticType for SizeGroupMode {
11778 #[inline]
11779 #[doc(alias = "gtk_size_group_mode_get_type")]
11780 fn static_type() -> glib::Type {
11781 unsafe { from_glib(ffi::gtk_size_group_mode_get_type()) }
11782 }
11783}
11784
11785impl glib::HasParamSpec for SizeGroupMode {
11786 type ParamSpec = glib::ParamSpecEnum;
11787 type SetValue = Self;
11788 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11789
11790 fn param_spec_builder() -> Self::BuilderFn {
11791 Self::ParamSpec::builder_with_default
11792 }
11793}
11794
11795impl glib::value::ValueType for SizeGroupMode {
11796 type Type = Self;
11797}
11798
11799unsafe impl<'a> glib::value::FromValue<'a> for SizeGroupMode {
11800 type Checker = glib::value::GenericValueTypeChecker<Self>;
11801
11802 #[inline]
11803 unsafe fn from_value(value: &'a glib::Value) -> Self {
11804 skip_assert_initialized!();
11805 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11806 }
11807}
11808
11809impl ToValue for SizeGroupMode {
11810 #[inline]
11811 fn to_value(&self) -> glib::Value {
11812 let mut value = glib::Value::for_value_type::<Self>();
11813 unsafe {
11814 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11815 }
11816 value
11817 }
11818
11819 #[inline]
11820 fn value_type(&self) -> glib::Type {
11821 Self::static_type()
11822 }
11823}
11824
11825impl From<SizeGroupMode> for glib::Value {
11826 #[inline]
11827 fn from(v: SizeGroupMode) -> Self {
11828 skip_assert_initialized!();
11829 ToValue::to_value(&v)
11830 }
11831}
11832
11833#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11836#[non_exhaustive]
11837#[doc(alias = "GtkSizeRequestMode")]
11838pub enum SizeRequestMode {
11839 #[doc(alias = "GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH")]
11841 HeightForWidth,
11842 #[doc(alias = "GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT")]
11844 WidthForHeight,
11845 #[doc(alias = "GTK_SIZE_REQUEST_CONSTANT_SIZE")]
11847 ConstantSize,
11848 #[doc(hidden)]
11849 __Unknown(i32),
11850}
11851
11852#[doc(hidden)]
11853impl IntoGlib for SizeRequestMode {
11854 type GlibType = ffi::GtkSizeRequestMode;
11855
11856 #[inline]
11857 fn into_glib(self) -> ffi::GtkSizeRequestMode {
11858 match self {
11859 Self::HeightForWidth => ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH,
11860 Self::WidthForHeight => ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT,
11861 Self::ConstantSize => ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE,
11862 Self::__Unknown(value) => value,
11863 }
11864 }
11865}
11866
11867#[doc(hidden)]
11868impl FromGlib<ffi::GtkSizeRequestMode> for SizeRequestMode {
11869 #[inline]
11870 unsafe fn from_glib(value: ffi::GtkSizeRequestMode) -> Self {
11871 skip_assert_initialized!();
11872
11873 match value {
11874 ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH => Self::HeightForWidth,
11875 ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT => Self::WidthForHeight,
11876 ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE => Self::ConstantSize,
11877 value => Self::__Unknown(value),
11878 }
11879 }
11880}
11881
11882impl StaticType for SizeRequestMode {
11883 #[inline]
11884 #[doc(alias = "gtk_size_request_mode_get_type")]
11885 fn static_type() -> glib::Type {
11886 unsafe { from_glib(ffi::gtk_size_request_mode_get_type()) }
11887 }
11888}
11889
11890impl glib::HasParamSpec for SizeRequestMode {
11891 type ParamSpec = glib::ParamSpecEnum;
11892 type SetValue = Self;
11893 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11894
11895 fn param_spec_builder() -> Self::BuilderFn {
11896 Self::ParamSpec::builder_with_default
11897 }
11898}
11899
11900impl glib::value::ValueType for SizeRequestMode {
11901 type Type = Self;
11902}
11903
11904unsafe impl<'a> glib::value::FromValue<'a> for SizeRequestMode {
11905 type Checker = glib::value::GenericValueTypeChecker<Self>;
11906
11907 #[inline]
11908 unsafe fn from_value(value: &'a glib::Value) -> Self {
11909 skip_assert_initialized!();
11910 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
11911 }
11912}
11913
11914impl ToValue for SizeRequestMode {
11915 #[inline]
11916 fn to_value(&self) -> glib::Value {
11917 let mut value = glib::Value::for_value_type::<Self>();
11918 unsafe {
11919 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11920 }
11921 value
11922 }
11923
11924 #[inline]
11925 fn value_type(&self) -> glib::Type {
11926 Self::static_type()
11927 }
11928}
11929
11930impl From<SizeRequestMode> for glib::Value {
11931 #[inline]
11932 fn from(v: SizeRequestMode) -> Self {
11933 skip_assert_initialized!();
11934 ToValue::to_value(&v)
11935 }
11936}
11937
11938#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11940#[non_exhaustive]
11941#[doc(alias = "GtkSortType")]
11942pub enum SortType {
11943 #[doc(alias = "GTK_SORT_ASCENDING")]
11945 Ascending,
11946 #[doc(alias = "GTK_SORT_DESCENDING")]
11948 Descending,
11949 #[doc(hidden)]
11950 __Unknown(i32),
11951}
11952
11953#[doc(hidden)]
11954impl IntoGlib for SortType {
11955 type GlibType = ffi::GtkSortType;
11956
11957 #[inline]
11958 fn into_glib(self) -> ffi::GtkSortType {
11959 match self {
11960 Self::Ascending => ffi::GTK_SORT_ASCENDING,
11961 Self::Descending => ffi::GTK_SORT_DESCENDING,
11962 Self::__Unknown(value) => value,
11963 }
11964 }
11965}
11966
11967#[doc(hidden)]
11968impl FromGlib<ffi::GtkSortType> for SortType {
11969 #[inline]
11970 unsafe fn from_glib(value: ffi::GtkSortType) -> Self {
11971 skip_assert_initialized!();
11972
11973 match value {
11974 ffi::GTK_SORT_ASCENDING => Self::Ascending,
11975 ffi::GTK_SORT_DESCENDING => Self::Descending,
11976 value => Self::__Unknown(value),
11977 }
11978 }
11979}
11980
11981impl StaticType for SortType {
11982 #[inline]
11983 #[doc(alias = "gtk_sort_type_get_type")]
11984 fn static_type() -> glib::Type {
11985 unsafe { from_glib(ffi::gtk_sort_type_get_type()) }
11986 }
11987}
11988
11989impl glib::HasParamSpec for SortType {
11990 type ParamSpec = glib::ParamSpecEnum;
11991 type SetValue = Self;
11992 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11993
11994 fn param_spec_builder() -> Self::BuilderFn {
11995 Self::ParamSpec::builder_with_default
11996 }
11997}
11998
11999impl glib::value::ValueType for SortType {
12000 type Type = Self;
12001}
12002
12003unsafe impl<'a> glib::value::FromValue<'a> for SortType {
12004 type Checker = glib::value::GenericValueTypeChecker<Self>;
12005
12006 #[inline]
12007 unsafe fn from_value(value: &'a glib::Value) -> Self {
12008 skip_assert_initialized!();
12009 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12010 }
12011}
12012
12013impl ToValue for SortType {
12014 #[inline]
12015 fn to_value(&self) -> glib::Value {
12016 let mut value = glib::Value::for_value_type::<Self>();
12017 unsafe {
12018 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12019 }
12020 value
12021 }
12022
12023 #[inline]
12024 fn value_type(&self) -> glib::Type {
12025 Self::static_type()
12026 }
12027}
12028
12029impl From<SortType> for glib::Value {
12030 #[inline]
12031 fn from(v: SortType) -> Self {
12032 skip_assert_initialized!();
12033 ToValue::to_value(&v)
12034 }
12035}
12036
12037#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12040#[non_exhaustive]
12041#[doc(alias = "GtkSorterChange")]
12042pub enum SorterChange {
12043 #[doc(alias = "GTK_SORTER_CHANGE_DIFFERENT")]
12046 Different,
12047 #[doc(alias = "GTK_SORTER_CHANGE_INVERTED")]
12051 Inverted,
12052 #[doc(alias = "GTK_SORTER_CHANGE_LESS_STRICT")]
12055 LessStrict,
12056 #[doc(alias = "GTK_SORTER_CHANGE_MORE_STRICT")]
12059 MoreStrict,
12060 #[doc(hidden)]
12061 __Unknown(i32),
12062}
12063
12064#[doc(hidden)]
12065impl IntoGlib for SorterChange {
12066 type GlibType = ffi::GtkSorterChange;
12067
12068 #[inline]
12069 fn into_glib(self) -> ffi::GtkSorterChange {
12070 match self {
12071 Self::Different => ffi::GTK_SORTER_CHANGE_DIFFERENT,
12072 Self::Inverted => ffi::GTK_SORTER_CHANGE_INVERTED,
12073 Self::LessStrict => ffi::GTK_SORTER_CHANGE_LESS_STRICT,
12074 Self::MoreStrict => ffi::GTK_SORTER_CHANGE_MORE_STRICT,
12075 Self::__Unknown(value) => value,
12076 }
12077 }
12078}
12079
12080#[doc(hidden)]
12081impl FromGlib<ffi::GtkSorterChange> for SorterChange {
12082 #[inline]
12083 unsafe fn from_glib(value: ffi::GtkSorterChange) -> Self {
12084 skip_assert_initialized!();
12085
12086 match value {
12087 ffi::GTK_SORTER_CHANGE_DIFFERENT => Self::Different,
12088 ffi::GTK_SORTER_CHANGE_INVERTED => Self::Inverted,
12089 ffi::GTK_SORTER_CHANGE_LESS_STRICT => Self::LessStrict,
12090 ffi::GTK_SORTER_CHANGE_MORE_STRICT => Self::MoreStrict,
12091 value => Self::__Unknown(value),
12092 }
12093 }
12094}
12095
12096impl StaticType for SorterChange {
12097 #[inline]
12098 #[doc(alias = "gtk_sorter_change_get_type")]
12099 fn static_type() -> glib::Type {
12100 unsafe { from_glib(ffi::gtk_sorter_change_get_type()) }
12101 }
12102}
12103
12104impl glib::HasParamSpec for SorterChange {
12105 type ParamSpec = glib::ParamSpecEnum;
12106 type SetValue = Self;
12107 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12108
12109 fn param_spec_builder() -> Self::BuilderFn {
12110 Self::ParamSpec::builder_with_default
12111 }
12112}
12113
12114impl glib::value::ValueType for SorterChange {
12115 type Type = Self;
12116}
12117
12118unsafe impl<'a> glib::value::FromValue<'a> for SorterChange {
12119 type Checker = glib::value::GenericValueTypeChecker<Self>;
12120
12121 #[inline]
12122 unsafe fn from_value(value: &'a glib::Value) -> Self {
12123 skip_assert_initialized!();
12124 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12125 }
12126}
12127
12128impl ToValue for SorterChange {
12129 #[inline]
12130 fn to_value(&self) -> glib::Value {
12131 let mut value = glib::Value::for_value_type::<Self>();
12132 unsafe {
12133 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12134 }
12135 value
12136 }
12137
12138 #[inline]
12139 fn value_type(&self) -> glib::Type {
12140 Self::static_type()
12141 }
12142}
12143
12144impl From<SorterChange> for glib::Value {
12145 #[inline]
12146 fn from(v: SorterChange) -> Self {
12147 skip_assert_initialized!();
12148 ToValue::to_value(&v)
12149 }
12150}
12151
12152#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12154#[non_exhaustive]
12155#[doc(alias = "GtkSorterOrder")]
12156pub enum SorterOrder {
12157 #[doc(alias = "GTK_SORTER_ORDER_PARTIAL")]
12159 Partial,
12160 #[doc(alias = "GTK_SORTER_ORDER_NONE")]
12163 None,
12164 #[doc(alias = "GTK_SORTER_ORDER_TOTAL")]
12168 Total,
12169 #[doc(hidden)]
12170 __Unknown(i32),
12171}
12172
12173#[doc(hidden)]
12174impl IntoGlib for SorterOrder {
12175 type GlibType = ffi::GtkSorterOrder;
12176
12177 #[inline]
12178 fn into_glib(self) -> ffi::GtkSorterOrder {
12179 match self {
12180 Self::Partial => ffi::GTK_SORTER_ORDER_PARTIAL,
12181 Self::None => ffi::GTK_SORTER_ORDER_NONE,
12182 Self::Total => ffi::GTK_SORTER_ORDER_TOTAL,
12183 Self::__Unknown(value) => value,
12184 }
12185 }
12186}
12187
12188#[doc(hidden)]
12189impl FromGlib<ffi::GtkSorterOrder> for SorterOrder {
12190 #[inline]
12191 unsafe fn from_glib(value: ffi::GtkSorterOrder) -> Self {
12192 skip_assert_initialized!();
12193
12194 match value {
12195 ffi::GTK_SORTER_ORDER_PARTIAL => Self::Partial,
12196 ffi::GTK_SORTER_ORDER_NONE => Self::None,
12197 ffi::GTK_SORTER_ORDER_TOTAL => Self::Total,
12198 value => Self::__Unknown(value),
12199 }
12200 }
12201}
12202
12203impl StaticType for SorterOrder {
12204 #[inline]
12205 #[doc(alias = "gtk_sorter_order_get_type")]
12206 fn static_type() -> glib::Type {
12207 unsafe { from_glib(ffi::gtk_sorter_order_get_type()) }
12208 }
12209}
12210
12211impl glib::HasParamSpec for SorterOrder {
12212 type ParamSpec = glib::ParamSpecEnum;
12213 type SetValue = Self;
12214 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12215
12216 fn param_spec_builder() -> Self::BuilderFn {
12217 Self::ParamSpec::builder_with_default
12218 }
12219}
12220
12221impl glib::value::ValueType for SorterOrder {
12222 type Type = Self;
12223}
12224
12225unsafe impl<'a> glib::value::FromValue<'a> for SorterOrder {
12226 type Checker = glib::value::GenericValueTypeChecker<Self>;
12227
12228 #[inline]
12229 unsafe fn from_value(value: &'a glib::Value) -> Self {
12230 skip_assert_initialized!();
12231 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12232 }
12233}
12234
12235impl ToValue for SorterOrder {
12236 #[inline]
12237 fn to_value(&self) -> glib::Value {
12238 let mut value = glib::Value::for_value_type::<Self>();
12239 unsafe {
12240 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12241 }
12242 value
12243 }
12244
12245 #[inline]
12246 fn value_type(&self) -> glib::Type {
12247 Self::static_type()
12248 }
12249}
12250
12251impl From<SorterOrder> for glib::Value {
12252 #[inline]
12253 fn from(v: SorterOrder) -> Self {
12254 skip_assert_initialized!();
12255 ToValue::to_value(&v)
12256 }
12257}
12258
12259#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12264#[non_exhaustive]
12265#[doc(alias = "GtkSpinButtonUpdatePolicy")]
12266pub enum SpinButtonUpdatePolicy {
12267 #[doc(alias = "GTK_UPDATE_ALWAYS")]
12270 Always,
12271 #[doc(alias = "GTK_UPDATE_IF_VALID")]
12275 IfValid,
12276 #[doc(hidden)]
12277 __Unknown(i32),
12278}
12279
12280#[doc(hidden)]
12281impl IntoGlib for SpinButtonUpdatePolicy {
12282 type GlibType = ffi::GtkSpinButtonUpdatePolicy;
12283
12284 #[inline]
12285 fn into_glib(self) -> ffi::GtkSpinButtonUpdatePolicy {
12286 match self {
12287 Self::Always => ffi::GTK_UPDATE_ALWAYS,
12288 Self::IfValid => ffi::GTK_UPDATE_IF_VALID,
12289 Self::__Unknown(value) => value,
12290 }
12291 }
12292}
12293
12294#[doc(hidden)]
12295impl FromGlib<ffi::GtkSpinButtonUpdatePolicy> for SpinButtonUpdatePolicy {
12296 #[inline]
12297 unsafe fn from_glib(value: ffi::GtkSpinButtonUpdatePolicy) -> Self {
12298 skip_assert_initialized!();
12299
12300 match value {
12301 ffi::GTK_UPDATE_ALWAYS => Self::Always,
12302 ffi::GTK_UPDATE_IF_VALID => Self::IfValid,
12303 value => Self::__Unknown(value),
12304 }
12305 }
12306}
12307
12308impl StaticType for SpinButtonUpdatePolicy {
12309 #[inline]
12310 #[doc(alias = "gtk_spin_button_update_policy_get_type")]
12311 fn static_type() -> glib::Type {
12312 unsafe { from_glib(ffi::gtk_spin_button_update_policy_get_type()) }
12313 }
12314}
12315
12316impl glib::HasParamSpec for SpinButtonUpdatePolicy {
12317 type ParamSpec = glib::ParamSpecEnum;
12318 type SetValue = Self;
12319 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12320
12321 fn param_spec_builder() -> Self::BuilderFn {
12322 Self::ParamSpec::builder_with_default
12323 }
12324}
12325
12326impl glib::value::ValueType for SpinButtonUpdatePolicy {
12327 type Type = Self;
12328}
12329
12330unsafe impl<'a> glib::value::FromValue<'a> for SpinButtonUpdatePolicy {
12331 type Checker = glib::value::GenericValueTypeChecker<Self>;
12332
12333 #[inline]
12334 unsafe fn from_value(value: &'a glib::Value) -> Self {
12335 skip_assert_initialized!();
12336 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12337 }
12338}
12339
12340impl ToValue for SpinButtonUpdatePolicy {
12341 #[inline]
12342 fn to_value(&self) -> glib::Value {
12343 let mut value = glib::Value::for_value_type::<Self>();
12344 unsafe {
12345 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12346 }
12347 value
12348 }
12349
12350 #[inline]
12351 fn value_type(&self) -> glib::Type {
12352 Self::static_type()
12353 }
12354}
12355
12356impl From<SpinButtonUpdatePolicy> for glib::Value {
12357 #[inline]
12358 fn from(v: SpinButtonUpdatePolicy) -> Self {
12359 skip_assert_initialized!();
12360 ToValue::to_value(&v)
12361 }
12362}
12363
12364#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12367#[non_exhaustive]
12368#[doc(alias = "GtkSpinType")]
12369pub enum SpinType {
12370 #[doc(alias = "GTK_SPIN_STEP_FORWARD")]
12372 StepForward,
12373 #[doc(alias = "GTK_SPIN_STEP_BACKWARD")]
12375 StepBackward,
12376 #[doc(alias = "GTK_SPIN_PAGE_FORWARD")]
12378 PageForward,
12379 #[doc(alias = "GTK_SPIN_PAGE_BACKWARD")]
12381 PageBackward,
12382 #[doc(alias = "GTK_SPIN_HOME")]
12384 Home,
12385 #[doc(alias = "GTK_SPIN_END")]
12387 End,
12388 #[doc(alias = "GTK_SPIN_USER_DEFINED")]
12390 UserDefined,
12391 #[doc(hidden)]
12392 __Unknown(i32),
12393}
12394
12395#[doc(hidden)]
12396impl IntoGlib for SpinType {
12397 type GlibType = ffi::GtkSpinType;
12398
12399 #[inline]
12400 fn into_glib(self) -> ffi::GtkSpinType {
12401 match self {
12402 Self::StepForward => ffi::GTK_SPIN_STEP_FORWARD,
12403 Self::StepBackward => ffi::GTK_SPIN_STEP_BACKWARD,
12404 Self::PageForward => ffi::GTK_SPIN_PAGE_FORWARD,
12405 Self::PageBackward => ffi::GTK_SPIN_PAGE_BACKWARD,
12406 Self::Home => ffi::GTK_SPIN_HOME,
12407 Self::End => ffi::GTK_SPIN_END,
12408 Self::UserDefined => ffi::GTK_SPIN_USER_DEFINED,
12409 Self::__Unknown(value) => value,
12410 }
12411 }
12412}
12413
12414#[doc(hidden)]
12415impl FromGlib<ffi::GtkSpinType> for SpinType {
12416 #[inline]
12417 unsafe fn from_glib(value: ffi::GtkSpinType) -> Self {
12418 skip_assert_initialized!();
12419
12420 match value {
12421 ffi::GTK_SPIN_STEP_FORWARD => Self::StepForward,
12422 ffi::GTK_SPIN_STEP_BACKWARD => Self::StepBackward,
12423 ffi::GTK_SPIN_PAGE_FORWARD => Self::PageForward,
12424 ffi::GTK_SPIN_PAGE_BACKWARD => Self::PageBackward,
12425 ffi::GTK_SPIN_HOME => Self::Home,
12426 ffi::GTK_SPIN_END => Self::End,
12427 ffi::GTK_SPIN_USER_DEFINED => Self::UserDefined,
12428 value => Self::__Unknown(value),
12429 }
12430 }
12431}
12432
12433impl StaticType for SpinType {
12434 #[inline]
12435 #[doc(alias = "gtk_spin_type_get_type")]
12436 fn static_type() -> glib::Type {
12437 unsafe { from_glib(ffi::gtk_spin_type_get_type()) }
12438 }
12439}
12440
12441impl glib::HasParamSpec for SpinType {
12442 type ParamSpec = glib::ParamSpecEnum;
12443 type SetValue = Self;
12444 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12445
12446 fn param_spec_builder() -> Self::BuilderFn {
12447 Self::ParamSpec::builder_with_default
12448 }
12449}
12450
12451impl glib::value::ValueType for SpinType {
12452 type Type = Self;
12453}
12454
12455unsafe impl<'a> glib::value::FromValue<'a> for SpinType {
12456 type Checker = glib::value::GenericValueTypeChecker<Self>;
12457
12458 #[inline]
12459 unsafe fn from_value(value: &'a glib::Value) -> Self {
12460 skip_assert_initialized!();
12461 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12462 }
12463}
12464
12465impl ToValue for SpinType {
12466 #[inline]
12467 fn to_value(&self) -> glib::Value {
12468 let mut value = glib::Value::for_value_type::<Self>();
12469 unsafe {
12470 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12471 }
12472 value
12473 }
12474
12475 #[inline]
12476 fn value_type(&self) -> glib::Type {
12477 Self::static_type()
12478 }
12479}
12480
12481impl From<SpinType> for glib::Value {
12482 #[inline]
12483 fn from(v: SpinType) -> Self {
12484 skip_assert_initialized!();
12485 ToValue::to_value(&v)
12486 }
12487}
12488
12489#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12493#[non_exhaustive]
12494#[doc(alias = "GtkStackTransitionType")]
12495pub enum StackTransitionType {
12496 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_NONE")]
12498 None,
12499 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_CROSSFADE")]
12501 Crossfade,
12502 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT")]
12504 SlideRight,
12505 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT")]
12507 SlideLeft,
12508 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP")]
12510 SlideUp,
12511 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN")]
12513 SlideDown,
12514 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT")]
12516 SlideLeftRight,
12517 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN")]
12519 SlideUpDown,
12520 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP")]
12522 OverUp,
12523 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN")]
12525 OverDown,
12526 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT")]
12528 OverLeft,
12529 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT")]
12531 OverRight,
12532 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_UP")]
12534 UnderUp,
12535 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_DOWN")]
12537 UnderDown,
12538 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_LEFT")]
12540 UnderLeft,
12541 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT")]
12543 UnderRight,
12544 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN")]
12546 OverUpDown,
12547 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP")]
12549 OverDownUp,
12550 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT")]
12552 OverLeftRight,
12553 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT")]
12555 OverRightLeft,
12556 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT")]
12558 RotateLeft,
12559 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT")]
12561 RotateRight,
12562 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT")]
12564 RotateLeftRight,
12565 #[doc(hidden)]
12566 __Unknown(i32),
12567}
12568
12569#[doc(hidden)]
12570impl IntoGlib for StackTransitionType {
12571 type GlibType = ffi::GtkStackTransitionType;
12572
12573 fn into_glib(self) -> ffi::GtkStackTransitionType {
12574 match self {
12575 Self::None => ffi::GTK_STACK_TRANSITION_TYPE_NONE,
12576 Self::Crossfade => ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE,
12577 Self::SlideRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT,
12578 Self::SlideLeft => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT,
12579 Self::SlideUp => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP,
12580 Self::SlideDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN,
12581 Self::SlideLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT,
12582 Self::SlideUpDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN,
12583 Self::OverUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP,
12584 Self::OverDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN,
12585 Self::OverLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT,
12586 Self::OverRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT,
12587 Self::UnderUp => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP,
12588 Self::UnderDown => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN,
12589 Self::UnderLeft => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT,
12590 Self::UnderRight => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT,
12591 Self::OverUpDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN,
12592 Self::OverDownUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP,
12593 Self::OverLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT,
12594 Self::OverRightLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT,
12595 Self::RotateLeft => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT,
12596 Self::RotateRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT,
12597 Self::RotateLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT,
12598 Self::__Unknown(value) => value,
12599 }
12600 }
12601}
12602
12603#[doc(hidden)]
12604impl FromGlib<ffi::GtkStackTransitionType> for StackTransitionType {
12605 unsafe fn from_glib(value: ffi::GtkStackTransitionType) -> Self {
12606 skip_assert_initialized!();
12607
12608 match value {
12609 ffi::GTK_STACK_TRANSITION_TYPE_NONE => Self::None,
12610 ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
12611 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
12612 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
12613 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
12614 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
12615 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT => Self::SlideLeftRight,
12616 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN => Self::SlideUpDown,
12617 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP => Self::OverUp,
12618 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN => Self::OverDown,
12619 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT => Self::OverLeft,
12620 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT => Self::OverRight,
12621 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP => Self::UnderUp,
12622 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN => Self::UnderDown,
12623 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT => Self::UnderLeft,
12624 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT => Self::UnderRight,
12625 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN => Self::OverUpDown,
12626 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP => Self::OverDownUp,
12627 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT => Self::OverLeftRight,
12628 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT => Self::OverRightLeft,
12629 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT => Self::RotateLeft,
12630 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT => Self::RotateRight,
12631 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT => Self::RotateLeftRight,
12632 value => Self::__Unknown(value),
12633 }
12634 }
12635}
12636
12637impl StaticType for StackTransitionType {
12638 #[inline]
12639 #[doc(alias = "gtk_stack_transition_type_get_type")]
12640 fn static_type() -> glib::Type {
12641 unsafe { from_glib(ffi::gtk_stack_transition_type_get_type()) }
12642 }
12643}
12644
12645impl glib::HasParamSpec for StackTransitionType {
12646 type ParamSpec = glib::ParamSpecEnum;
12647 type SetValue = Self;
12648 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12649
12650 fn param_spec_builder() -> Self::BuilderFn {
12651 Self::ParamSpec::builder_with_default
12652 }
12653}
12654
12655impl glib::value::ValueType for StackTransitionType {
12656 type Type = Self;
12657}
12658
12659unsafe impl<'a> glib::value::FromValue<'a> for StackTransitionType {
12660 type Checker = glib::value::GenericValueTypeChecker<Self>;
12661
12662 #[inline]
12663 unsafe fn from_value(value: &'a glib::Value) -> Self {
12664 skip_assert_initialized!();
12665 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12666 }
12667}
12668
12669impl ToValue for StackTransitionType {
12670 #[inline]
12671 fn to_value(&self) -> glib::Value {
12672 let mut value = glib::Value::for_value_type::<Self>();
12673 unsafe {
12674 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12675 }
12676 value
12677 }
12678
12679 #[inline]
12680 fn value_type(&self) -> glib::Type {
12681 Self::static_type()
12682 }
12683}
12684
12685impl From<StackTransitionType> for glib::Value {
12686 #[inline]
12687 fn from(v: StackTransitionType) -> Self {
12688 skip_assert_initialized!();
12689 ToValue::to_value(&v)
12690 }
12691}
12692
12693#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12695#[non_exhaustive]
12696#[doc(alias = "GtkStringFilterMatchMode")]
12697pub enum StringFilterMatchMode {
12698 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_EXACT")]
12701 Exact,
12702 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_SUBSTRING")]
12705 Substring,
12706 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_PREFIX")]
12709 Prefix,
12710 #[doc(hidden)]
12711 __Unknown(i32),
12712}
12713
12714#[doc(hidden)]
12715impl IntoGlib for StringFilterMatchMode {
12716 type GlibType = ffi::GtkStringFilterMatchMode;
12717
12718 #[inline]
12719 fn into_glib(self) -> ffi::GtkStringFilterMatchMode {
12720 match self {
12721 Self::Exact => ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT,
12722 Self::Substring => ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING,
12723 Self::Prefix => ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX,
12724 Self::__Unknown(value) => value,
12725 }
12726 }
12727}
12728
12729#[doc(hidden)]
12730impl FromGlib<ffi::GtkStringFilterMatchMode> for StringFilterMatchMode {
12731 #[inline]
12732 unsafe fn from_glib(value: ffi::GtkStringFilterMatchMode) -> Self {
12733 skip_assert_initialized!();
12734
12735 match value {
12736 ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT => Self::Exact,
12737 ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING => Self::Substring,
12738 ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX => Self::Prefix,
12739 value => Self::__Unknown(value),
12740 }
12741 }
12742}
12743
12744impl StaticType for StringFilterMatchMode {
12745 #[inline]
12746 #[doc(alias = "gtk_string_filter_match_mode_get_type")]
12747 fn static_type() -> glib::Type {
12748 unsafe { from_glib(ffi::gtk_string_filter_match_mode_get_type()) }
12749 }
12750}
12751
12752impl glib::HasParamSpec for StringFilterMatchMode {
12753 type ParamSpec = glib::ParamSpecEnum;
12754 type SetValue = Self;
12755 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12756
12757 fn param_spec_builder() -> Self::BuilderFn {
12758 Self::ParamSpec::builder_with_default
12759 }
12760}
12761
12762impl glib::value::ValueType for StringFilterMatchMode {
12763 type Type = Self;
12764}
12765
12766unsafe impl<'a> glib::value::FromValue<'a> for StringFilterMatchMode {
12767 type Checker = glib::value::GenericValueTypeChecker<Self>;
12768
12769 #[inline]
12770 unsafe fn from_value(value: &'a glib::Value) -> Self {
12771 skip_assert_initialized!();
12772 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12773 }
12774}
12775
12776impl ToValue for StringFilterMatchMode {
12777 #[inline]
12778 fn to_value(&self) -> glib::Value {
12779 let mut value = glib::Value::for_value_type::<Self>();
12780 unsafe {
12781 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12782 }
12783 value
12784 }
12785
12786 #[inline]
12787 fn value_type(&self) -> glib::Type {
12788 Self::static_type()
12789 }
12790}
12791
12792impl From<StringFilterMatchMode> for glib::Value {
12793 #[inline]
12794 fn from(v: StringFilterMatchMode) -> Self {
12795 skip_assert_initialized!();
12796 ToValue::to_value(&v)
12797 }
12798}
12799
12800#[cfg(feature = "v4_6")]
12805#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12806#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12807#[non_exhaustive]
12808#[doc(alias = "GtkSymbolicColor")]
12809pub enum SymbolicColor {
12810 #[doc(alias = "GTK_SYMBOLIC_COLOR_FOREGROUND")]
12812 Foreground,
12813 #[doc(alias = "GTK_SYMBOLIC_COLOR_ERROR")]
12815 Error,
12816 #[doc(alias = "GTK_SYMBOLIC_COLOR_WARNING")]
12818 Warning,
12819 #[doc(alias = "GTK_SYMBOLIC_COLOR_SUCCESS")]
12821 Success,
12822 #[cfg(feature = "v4_22")]
12824 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12825 #[doc(alias = "GTK_SYMBOLIC_COLOR_ACCENT")]
12826 Accent,
12827 #[doc(hidden)]
12828 __Unknown(i32),
12829}
12830
12831#[cfg(feature = "v4_6")]
12832#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12833#[doc(hidden)]
12834impl IntoGlib for SymbolicColor {
12835 type GlibType = ffi::GtkSymbolicColor;
12836
12837 #[inline]
12838 fn into_glib(self) -> ffi::GtkSymbolicColor {
12839 match self {
12840 Self::Foreground => ffi::GTK_SYMBOLIC_COLOR_FOREGROUND,
12841 Self::Error => ffi::GTK_SYMBOLIC_COLOR_ERROR,
12842 Self::Warning => ffi::GTK_SYMBOLIC_COLOR_WARNING,
12843 Self::Success => ffi::GTK_SYMBOLIC_COLOR_SUCCESS,
12844 #[cfg(feature = "v4_22")]
12845 Self::Accent => ffi::GTK_SYMBOLIC_COLOR_ACCENT,
12846 Self::__Unknown(value) => value,
12847 }
12848 }
12849}
12850
12851#[cfg(feature = "v4_6")]
12852#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12853#[doc(hidden)]
12854impl FromGlib<ffi::GtkSymbolicColor> for SymbolicColor {
12855 #[inline]
12856 unsafe fn from_glib(value: ffi::GtkSymbolicColor) -> Self {
12857 skip_assert_initialized!();
12858
12859 match value {
12860 ffi::GTK_SYMBOLIC_COLOR_FOREGROUND => Self::Foreground,
12861 ffi::GTK_SYMBOLIC_COLOR_ERROR => Self::Error,
12862 ffi::GTK_SYMBOLIC_COLOR_WARNING => Self::Warning,
12863 ffi::GTK_SYMBOLIC_COLOR_SUCCESS => Self::Success,
12864 #[cfg(feature = "v4_22")]
12865 ffi::GTK_SYMBOLIC_COLOR_ACCENT => Self::Accent,
12866 value => Self::__Unknown(value),
12867 }
12868 }
12869}
12870
12871#[cfg(feature = "v4_6")]
12872#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12873impl StaticType for SymbolicColor {
12874 #[inline]
12875 #[doc(alias = "gtk_symbolic_color_get_type")]
12876 fn static_type() -> glib::Type {
12877 unsafe { from_glib(ffi::gtk_symbolic_color_get_type()) }
12878 }
12879}
12880
12881#[cfg(feature = "v4_6")]
12882#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12883impl glib::HasParamSpec for SymbolicColor {
12884 type ParamSpec = glib::ParamSpecEnum;
12885 type SetValue = Self;
12886 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12887
12888 fn param_spec_builder() -> Self::BuilderFn {
12889 Self::ParamSpec::builder_with_default
12890 }
12891}
12892
12893#[cfg(feature = "v4_6")]
12894#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12895impl glib::value::ValueType for SymbolicColor {
12896 type Type = Self;
12897}
12898
12899#[cfg(feature = "v4_6")]
12900#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12901unsafe impl<'a> glib::value::FromValue<'a> for SymbolicColor {
12902 type Checker = glib::value::GenericValueTypeChecker<Self>;
12903
12904 #[inline]
12905 unsafe fn from_value(value: &'a glib::Value) -> Self {
12906 skip_assert_initialized!();
12907 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
12908 }
12909}
12910
12911#[cfg(feature = "v4_6")]
12912#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12913impl ToValue for SymbolicColor {
12914 #[inline]
12915 fn to_value(&self) -> glib::Value {
12916 let mut value = glib::Value::for_value_type::<Self>();
12917 unsafe {
12918 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12919 }
12920 value
12921 }
12922
12923 #[inline]
12924 fn value_type(&self) -> glib::Type {
12925 Self::static_type()
12926 }
12927}
12928
12929#[cfg(feature = "v4_6")]
12930#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12931impl From<SymbolicColor> for glib::Value {
12932 #[inline]
12933 fn from(v: SymbolicColor) -> Self {
12934 skip_assert_initialized!();
12935 ToValue::to_value(&v)
12936 }
12937}
12938
12939#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12949#[non_exhaustive]
12950#[doc(alias = "GtkSystemSetting")]
12951pub enum SystemSetting {
12952 #[doc(alias = "GTK_SYSTEM_SETTING_DPI")]
12954 Dpi,
12955 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_NAME")]
12957 FontName,
12958 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_CONFIG")]
12966 FontConfig,
12967 #[doc(alias = "GTK_SYSTEM_SETTING_DISPLAY")]
12969 Display,
12970 #[doc(alias = "GTK_SYSTEM_SETTING_ICON_THEME")]
12973 IconTheme,
12974 #[doc(hidden)]
12975 __Unknown(i32),
12976}
12977
12978#[doc(hidden)]
12979impl IntoGlib for SystemSetting {
12980 type GlibType = ffi::GtkSystemSetting;
12981
12982 #[inline]
12983 fn into_glib(self) -> ffi::GtkSystemSetting {
12984 match self {
12985 Self::Dpi => ffi::GTK_SYSTEM_SETTING_DPI,
12986 Self::FontName => ffi::GTK_SYSTEM_SETTING_FONT_NAME,
12987 Self::FontConfig => ffi::GTK_SYSTEM_SETTING_FONT_CONFIG,
12988 Self::Display => ffi::GTK_SYSTEM_SETTING_DISPLAY,
12989 Self::IconTheme => ffi::GTK_SYSTEM_SETTING_ICON_THEME,
12990 Self::__Unknown(value) => value,
12991 }
12992 }
12993}
12994
12995#[doc(hidden)]
12996impl FromGlib<ffi::GtkSystemSetting> for SystemSetting {
12997 #[inline]
12998 unsafe fn from_glib(value: ffi::GtkSystemSetting) -> Self {
12999 skip_assert_initialized!();
13000
13001 match value {
13002 ffi::GTK_SYSTEM_SETTING_DPI => Self::Dpi,
13003 ffi::GTK_SYSTEM_SETTING_FONT_NAME => Self::FontName,
13004 ffi::GTK_SYSTEM_SETTING_FONT_CONFIG => Self::FontConfig,
13005 ffi::GTK_SYSTEM_SETTING_DISPLAY => Self::Display,
13006 ffi::GTK_SYSTEM_SETTING_ICON_THEME => Self::IconTheme,
13007 value => Self::__Unknown(value),
13008 }
13009 }
13010}
13011
13012impl StaticType for SystemSetting {
13013 #[inline]
13014 #[doc(alias = "gtk_system_setting_get_type")]
13015 fn static_type() -> glib::Type {
13016 unsafe { from_glib(ffi::gtk_system_setting_get_type()) }
13017 }
13018}
13019
13020impl glib::HasParamSpec for SystemSetting {
13021 type ParamSpec = glib::ParamSpecEnum;
13022 type SetValue = Self;
13023 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13024
13025 fn param_spec_builder() -> Self::BuilderFn {
13026 Self::ParamSpec::builder_with_default
13027 }
13028}
13029
13030impl glib::value::ValueType for SystemSetting {
13031 type Type = Self;
13032}
13033
13034unsafe impl<'a> glib::value::FromValue<'a> for SystemSetting {
13035 type Checker = glib::value::GenericValueTypeChecker<Self>;
13036
13037 #[inline]
13038 unsafe fn from_value(value: &'a glib::Value) -> Self {
13039 skip_assert_initialized!();
13040 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13041 }
13042}
13043
13044impl ToValue for SystemSetting {
13045 #[inline]
13046 fn to_value(&self) -> glib::Value {
13047 let mut value = glib::Value::for_value_type::<Self>();
13048 unsafe {
13049 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13050 }
13051 value
13052 }
13053
13054 #[inline]
13055 fn value_type(&self) -> glib::Type {
13056 Self::static_type()
13057 }
13058}
13059
13060impl From<SystemSetting> for glib::Value {
13061 #[inline]
13062 fn from(v: SystemSetting) -> Self {
13063 skip_assert_initialized!();
13064 ToValue::to_value(&v)
13065 }
13066}
13067
13068#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13070#[non_exhaustive]
13071#[doc(alias = "GtkTextDirection")]
13072pub enum TextDirection {
13073 #[doc(alias = "GTK_TEXT_DIR_NONE")]
13075 None,
13076 #[doc(alias = "GTK_TEXT_DIR_LTR")]
13078 Ltr,
13079 #[doc(alias = "GTK_TEXT_DIR_RTL")]
13081 Rtl,
13082 #[doc(hidden)]
13083 __Unknown(i32),
13084}
13085
13086#[doc(hidden)]
13087impl IntoGlib for TextDirection {
13088 type GlibType = ffi::GtkTextDirection;
13089
13090 #[inline]
13091 fn into_glib(self) -> ffi::GtkTextDirection {
13092 match self {
13093 Self::None => ffi::GTK_TEXT_DIR_NONE,
13094 Self::Ltr => ffi::GTK_TEXT_DIR_LTR,
13095 Self::Rtl => ffi::GTK_TEXT_DIR_RTL,
13096 Self::__Unknown(value) => value,
13097 }
13098 }
13099}
13100
13101#[doc(hidden)]
13102impl FromGlib<ffi::GtkTextDirection> for TextDirection {
13103 #[inline]
13104 unsafe fn from_glib(value: ffi::GtkTextDirection) -> Self {
13105 skip_assert_initialized!();
13106
13107 match value {
13108 ffi::GTK_TEXT_DIR_NONE => Self::None,
13109 ffi::GTK_TEXT_DIR_LTR => Self::Ltr,
13110 ffi::GTK_TEXT_DIR_RTL => Self::Rtl,
13111 value => Self::__Unknown(value),
13112 }
13113 }
13114}
13115
13116impl StaticType for TextDirection {
13117 #[inline]
13118 #[doc(alias = "gtk_text_direction_get_type")]
13119 fn static_type() -> glib::Type {
13120 unsafe { from_glib(ffi::gtk_text_direction_get_type()) }
13121 }
13122}
13123
13124impl glib::HasParamSpec for TextDirection {
13125 type ParamSpec = glib::ParamSpecEnum;
13126 type SetValue = Self;
13127 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13128
13129 fn param_spec_builder() -> Self::BuilderFn {
13130 Self::ParamSpec::builder_with_default
13131 }
13132}
13133
13134impl glib::value::ValueType for TextDirection {
13135 type Type = Self;
13136}
13137
13138unsafe impl<'a> glib::value::FromValue<'a> for TextDirection {
13139 type Checker = glib::value::GenericValueTypeChecker<Self>;
13140
13141 #[inline]
13142 unsafe fn from_value(value: &'a glib::Value) -> Self {
13143 skip_assert_initialized!();
13144 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13145 }
13146}
13147
13148impl ToValue for TextDirection {
13149 #[inline]
13150 fn to_value(&self) -> glib::Value {
13151 let mut value = glib::Value::for_value_type::<Self>();
13152 unsafe {
13153 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13154 }
13155 value
13156 }
13157
13158 #[inline]
13159 fn value_type(&self) -> glib::Type {
13160 Self::static_type()
13161 }
13162}
13163
13164impl From<TextDirection> for glib::Value {
13165 #[inline]
13166 fn from(v: TextDirection) -> Self {
13167 skip_assert_initialized!();
13168 ToValue::to_value(&v)
13169 }
13170}
13171
13172#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13175#[non_exhaustive]
13176#[doc(alias = "GtkTextExtendSelection")]
13177pub enum TextExtendSelection {
13178 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_WORD")]
13181 Word,
13182 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_LINE")]
13185 Line,
13186 #[doc(hidden)]
13187 __Unknown(i32),
13188}
13189
13190#[doc(hidden)]
13191impl IntoGlib for TextExtendSelection {
13192 type GlibType = ffi::GtkTextExtendSelection;
13193
13194 #[inline]
13195 fn into_glib(self) -> ffi::GtkTextExtendSelection {
13196 match self {
13197 Self::Word => ffi::GTK_TEXT_EXTEND_SELECTION_WORD,
13198 Self::Line => ffi::GTK_TEXT_EXTEND_SELECTION_LINE,
13199 Self::__Unknown(value) => value,
13200 }
13201 }
13202}
13203
13204#[doc(hidden)]
13205impl FromGlib<ffi::GtkTextExtendSelection> for TextExtendSelection {
13206 #[inline]
13207 unsafe fn from_glib(value: ffi::GtkTextExtendSelection) -> Self {
13208 skip_assert_initialized!();
13209
13210 match value {
13211 ffi::GTK_TEXT_EXTEND_SELECTION_WORD => Self::Word,
13212 ffi::GTK_TEXT_EXTEND_SELECTION_LINE => Self::Line,
13213 value => Self::__Unknown(value),
13214 }
13215 }
13216}
13217
13218impl StaticType for TextExtendSelection {
13219 #[inline]
13220 #[doc(alias = "gtk_text_extend_selection_get_type")]
13221 fn static_type() -> glib::Type {
13222 unsafe { from_glib(ffi::gtk_text_extend_selection_get_type()) }
13223 }
13224}
13225
13226impl glib::HasParamSpec for TextExtendSelection {
13227 type ParamSpec = glib::ParamSpecEnum;
13228 type SetValue = Self;
13229 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13230
13231 fn param_spec_builder() -> Self::BuilderFn {
13232 Self::ParamSpec::builder_with_default
13233 }
13234}
13235
13236impl glib::value::ValueType for TextExtendSelection {
13237 type Type = Self;
13238}
13239
13240unsafe impl<'a> glib::value::FromValue<'a> for TextExtendSelection {
13241 type Checker = glib::value::GenericValueTypeChecker<Self>;
13242
13243 #[inline]
13244 unsafe fn from_value(value: &'a glib::Value) -> Self {
13245 skip_assert_initialized!();
13246 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13247 }
13248}
13249
13250impl ToValue for TextExtendSelection {
13251 #[inline]
13252 fn to_value(&self) -> glib::Value {
13253 let mut value = glib::Value::for_value_type::<Self>();
13254 unsafe {
13255 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13256 }
13257 value
13258 }
13259
13260 #[inline]
13261 fn value_type(&self) -> glib::Type {
13262 Self::static_type()
13263 }
13264}
13265
13266impl From<TextExtendSelection> for glib::Value {
13267 #[inline]
13268 fn from(v: TextExtendSelection) -> Self {
13269 skip_assert_initialized!();
13270 ToValue::to_value(&v)
13271 }
13272}
13273
13274#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13277#[non_exhaustive]
13278#[doc(alias = "GtkTextViewLayer")]
13279pub enum TextViewLayer {
13280 #[doc(alias = "GTK_TEXT_VIEW_LAYER_BELOW_TEXT")]
13282 BelowText,
13283 #[doc(alias = "GTK_TEXT_VIEW_LAYER_ABOVE_TEXT")]
13285 AboveText,
13286 #[doc(hidden)]
13287 __Unknown(i32),
13288}
13289
13290#[doc(hidden)]
13291impl IntoGlib for TextViewLayer {
13292 type GlibType = ffi::GtkTextViewLayer;
13293
13294 #[inline]
13295 fn into_glib(self) -> ffi::GtkTextViewLayer {
13296 match self {
13297 Self::BelowText => ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT,
13298 Self::AboveText => ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT,
13299 Self::__Unknown(value) => value,
13300 }
13301 }
13302}
13303
13304#[doc(hidden)]
13305impl FromGlib<ffi::GtkTextViewLayer> for TextViewLayer {
13306 #[inline]
13307 unsafe fn from_glib(value: ffi::GtkTextViewLayer) -> Self {
13308 skip_assert_initialized!();
13309
13310 match value {
13311 ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT => Self::BelowText,
13312 ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT => Self::AboveText,
13313 value => Self::__Unknown(value),
13314 }
13315 }
13316}
13317
13318impl StaticType for TextViewLayer {
13319 #[inline]
13320 #[doc(alias = "gtk_text_view_layer_get_type")]
13321 fn static_type() -> glib::Type {
13322 unsafe { from_glib(ffi::gtk_text_view_layer_get_type()) }
13323 }
13324}
13325
13326impl glib::HasParamSpec for TextViewLayer {
13327 type ParamSpec = glib::ParamSpecEnum;
13328 type SetValue = Self;
13329 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13330
13331 fn param_spec_builder() -> Self::BuilderFn {
13332 Self::ParamSpec::builder_with_default
13333 }
13334}
13335
13336impl glib::value::ValueType for TextViewLayer {
13337 type Type = Self;
13338}
13339
13340unsafe impl<'a> glib::value::FromValue<'a> for TextViewLayer {
13341 type Checker = glib::value::GenericValueTypeChecker<Self>;
13342
13343 #[inline]
13344 unsafe fn from_value(value: &'a glib::Value) -> Self {
13345 skip_assert_initialized!();
13346 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13347 }
13348}
13349
13350impl ToValue for TextViewLayer {
13351 #[inline]
13352 fn to_value(&self) -> glib::Value {
13353 let mut value = glib::Value::for_value_type::<Self>();
13354 unsafe {
13355 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13356 }
13357 value
13358 }
13359
13360 #[inline]
13361 fn value_type(&self) -> glib::Type {
13362 Self::static_type()
13363 }
13364}
13365
13366impl From<TextViewLayer> for glib::Value {
13367 #[inline]
13368 fn from(v: TextViewLayer) -> Self {
13369 skip_assert_initialized!();
13370 ToValue::to_value(&v)
13371 }
13372}
13373
13374#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13376#[non_exhaustive]
13377#[doc(alias = "GtkTextWindowType")]
13378pub enum TextWindowType {
13379 #[doc(alias = "GTK_TEXT_WINDOW_WIDGET")]
13381 Widget,
13382 #[doc(alias = "GTK_TEXT_WINDOW_TEXT")]
13384 Text,
13385 #[doc(alias = "GTK_TEXT_WINDOW_LEFT")]
13387 Left,
13388 #[doc(alias = "GTK_TEXT_WINDOW_RIGHT")]
13390 Right,
13391 #[doc(alias = "GTK_TEXT_WINDOW_TOP")]
13393 Top,
13394 #[doc(alias = "GTK_TEXT_WINDOW_BOTTOM")]
13396 Bottom,
13397 #[doc(hidden)]
13398 __Unknown(i32),
13399}
13400
13401#[doc(hidden)]
13402impl IntoGlib for TextWindowType {
13403 type GlibType = ffi::GtkTextWindowType;
13404
13405 #[inline]
13406 fn into_glib(self) -> ffi::GtkTextWindowType {
13407 match self {
13408 Self::Widget => ffi::GTK_TEXT_WINDOW_WIDGET,
13409 Self::Text => ffi::GTK_TEXT_WINDOW_TEXT,
13410 Self::Left => ffi::GTK_TEXT_WINDOW_LEFT,
13411 Self::Right => ffi::GTK_TEXT_WINDOW_RIGHT,
13412 Self::Top => ffi::GTK_TEXT_WINDOW_TOP,
13413 Self::Bottom => ffi::GTK_TEXT_WINDOW_BOTTOM,
13414 Self::__Unknown(value) => value,
13415 }
13416 }
13417}
13418
13419#[doc(hidden)]
13420impl FromGlib<ffi::GtkTextWindowType> for TextWindowType {
13421 #[inline]
13422 unsafe fn from_glib(value: ffi::GtkTextWindowType) -> Self {
13423 skip_assert_initialized!();
13424
13425 match value {
13426 ffi::GTK_TEXT_WINDOW_WIDGET => Self::Widget,
13427 ffi::GTK_TEXT_WINDOW_TEXT => Self::Text,
13428 ffi::GTK_TEXT_WINDOW_LEFT => Self::Left,
13429 ffi::GTK_TEXT_WINDOW_RIGHT => Self::Right,
13430 ffi::GTK_TEXT_WINDOW_TOP => Self::Top,
13431 ffi::GTK_TEXT_WINDOW_BOTTOM => Self::Bottom,
13432 value => Self::__Unknown(value),
13433 }
13434 }
13435}
13436
13437impl StaticType for TextWindowType {
13438 #[inline]
13439 #[doc(alias = "gtk_text_window_type_get_type")]
13440 fn static_type() -> glib::Type {
13441 unsafe { from_glib(ffi::gtk_text_window_type_get_type()) }
13442 }
13443}
13444
13445impl glib::HasParamSpec for TextWindowType {
13446 type ParamSpec = glib::ParamSpecEnum;
13447 type SetValue = Self;
13448 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13449
13450 fn param_spec_builder() -> Self::BuilderFn {
13451 Self::ParamSpec::builder_with_default
13452 }
13453}
13454
13455impl glib::value::ValueType for TextWindowType {
13456 type Type = Self;
13457}
13458
13459unsafe impl<'a> glib::value::FromValue<'a> for TextWindowType {
13460 type Checker = glib::value::GenericValueTypeChecker<Self>;
13461
13462 #[inline]
13463 unsafe fn from_value(value: &'a glib::Value) -> Self {
13464 skip_assert_initialized!();
13465 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13466 }
13467}
13468
13469impl ToValue for TextWindowType {
13470 #[inline]
13471 fn to_value(&self) -> glib::Value {
13472 let mut value = glib::Value::for_value_type::<Self>();
13473 unsafe {
13474 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13475 }
13476 value
13477 }
13478
13479 #[inline]
13480 fn value_type(&self) -> glib::Type {
13481 Self::static_type()
13482 }
13483}
13484
13485impl From<TextWindowType> for glib::Value {
13486 #[inline]
13487 fn from(v: TextWindowType) -> Self {
13488 skip_assert_initialized!();
13489 ToValue::to_value(&v)
13490 }
13491}
13492
13493#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13501#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13502#[non_exhaustive]
13503#[doc(alias = "GtkTreeViewColumnSizing")]
13504pub enum TreeViewColumnSizing {
13505 #[doc(alias = "GTK_TREE_VIEW_COLUMN_GROW_ONLY")]
13507 GrowOnly,
13508 #[doc(alias = "GTK_TREE_VIEW_COLUMN_AUTOSIZE")]
13510 Autosize,
13511 #[doc(alias = "GTK_TREE_VIEW_COLUMN_FIXED")]
13513 Fixed,
13514 #[doc(hidden)]
13515 __Unknown(i32),
13516}
13517
13518#[allow(deprecated)]
13519#[doc(hidden)]
13520impl IntoGlib for TreeViewColumnSizing {
13521 type GlibType = ffi::GtkTreeViewColumnSizing;
13522
13523 #[inline]
13524 fn into_glib(self) -> ffi::GtkTreeViewColumnSizing {
13525 match self {
13526 Self::GrowOnly => ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY,
13527 Self::Autosize => ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE,
13528 Self::Fixed => ffi::GTK_TREE_VIEW_COLUMN_FIXED,
13529 Self::__Unknown(value) => value,
13530 }
13531 }
13532}
13533
13534#[allow(deprecated)]
13535#[doc(hidden)]
13536impl FromGlib<ffi::GtkTreeViewColumnSizing> for TreeViewColumnSizing {
13537 #[inline]
13538 unsafe fn from_glib(value: ffi::GtkTreeViewColumnSizing) -> Self {
13539 skip_assert_initialized!();
13540
13541 match value {
13542 ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY => Self::GrowOnly,
13543 ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE => Self::Autosize,
13544 ffi::GTK_TREE_VIEW_COLUMN_FIXED => Self::Fixed,
13545 value => Self::__Unknown(value),
13546 }
13547 }
13548}
13549
13550#[allow(deprecated)]
13551impl StaticType for TreeViewColumnSizing {
13552 #[inline]
13553 #[doc(alias = "gtk_tree_view_column_sizing_get_type")]
13554 fn static_type() -> glib::Type {
13555 unsafe { from_glib(ffi::gtk_tree_view_column_sizing_get_type()) }
13556 }
13557}
13558
13559#[allow(deprecated)]
13560impl glib::HasParamSpec for TreeViewColumnSizing {
13561 type ParamSpec = glib::ParamSpecEnum;
13562 type SetValue = Self;
13563 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13564
13565 fn param_spec_builder() -> Self::BuilderFn {
13566 Self::ParamSpec::builder_with_default
13567 }
13568}
13569
13570#[allow(deprecated)]
13571impl glib::value::ValueType for TreeViewColumnSizing {
13572 type Type = Self;
13573}
13574
13575#[allow(deprecated)]
13576unsafe impl<'a> glib::value::FromValue<'a> for TreeViewColumnSizing {
13577 type Checker = glib::value::GenericValueTypeChecker<Self>;
13578
13579 #[inline]
13580 unsafe fn from_value(value: &'a glib::Value) -> Self {
13581 skip_assert_initialized!();
13582 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13583 }
13584}
13585
13586#[allow(deprecated)]
13587impl ToValue for TreeViewColumnSizing {
13588 #[inline]
13589 fn to_value(&self) -> glib::Value {
13590 let mut value = glib::Value::for_value_type::<Self>();
13591 unsafe {
13592 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13593 }
13594 value
13595 }
13596
13597 #[inline]
13598 fn value_type(&self) -> glib::Type {
13599 Self::static_type()
13600 }
13601}
13602
13603#[allow(deprecated)]
13604impl From<TreeViewColumnSizing> for glib::Value {
13605 #[inline]
13606 fn from(v: TreeViewColumnSizing) -> Self {
13607 skip_assert_initialized!();
13608 ToValue::to_value(&v)
13609 }
13610}
13611
13612#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13618#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13619#[non_exhaustive]
13620#[doc(alias = "GtkTreeViewDropPosition")]
13621pub enum TreeViewDropPosition {
13622 #[doc(alias = "GTK_TREE_VIEW_DROP_BEFORE")]
13624 Before,
13625 #[doc(alias = "GTK_TREE_VIEW_DROP_AFTER")]
13627 After,
13628 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_BEFORE")]
13630 IntoOrBefore,
13631 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_AFTER")]
13633 IntoOrAfter,
13634 #[doc(hidden)]
13635 __Unknown(i32),
13636}
13637
13638#[allow(deprecated)]
13639#[doc(hidden)]
13640impl IntoGlib for TreeViewDropPosition {
13641 type GlibType = ffi::GtkTreeViewDropPosition;
13642
13643 #[inline]
13644 fn into_glib(self) -> ffi::GtkTreeViewDropPosition {
13645 match self {
13646 Self::Before => ffi::GTK_TREE_VIEW_DROP_BEFORE,
13647 Self::After => ffi::GTK_TREE_VIEW_DROP_AFTER,
13648 Self::IntoOrBefore => ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE,
13649 Self::IntoOrAfter => ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER,
13650 Self::__Unknown(value) => value,
13651 }
13652 }
13653}
13654
13655#[allow(deprecated)]
13656#[doc(hidden)]
13657impl FromGlib<ffi::GtkTreeViewDropPosition> for TreeViewDropPosition {
13658 #[inline]
13659 unsafe fn from_glib(value: ffi::GtkTreeViewDropPosition) -> Self {
13660 skip_assert_initialized!();
13661
13662 match value {
13663 ffi::GTK_TREE_VIEW_DROP_BEFORE => Self::Before,
13664 ffi::GTK_TREE_VIEW_DROP_AFTER => Self::After,
13665 ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE => Self::IntoOrBefore,
13666 ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER => Self::IntoOrAfter,
13667 value => Self::__Unknown(value),
13668 }
13669 }
13670}
13671
13672#[allow(deprecated)]
13673impl StaticType for TreeViewDropPosition {
13674 #[inline]
13675 #[doc(alias = "gtk_tree_view_drop_position_get_type")]
13676 fn static_type() -> glib::Type {
13677 unsafe { from_glib(ffi::gtk_tree_view_drop_position_get_type()) }
13678 }
13679}
13680
13681#[allow(deprecated)]
13682impl glib::HasParamSpec for TreeViewDropPosition {
13683 type ParamSpec = glib::ParamSpecEnum;
13684 type SetValue = Self;
13685 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13686
13687 fn param_spec_builder() -> Self::BuilderFn {
13688 Self::ParamSpec::builder_with_default
13689 }
13690}
13691
13692#[allow(deprecated)]
13693impl glib::value::ValueType for TreeViewDropPosition {
13694 type Type = Self;
13695}
13696
13697#[allow(deprecated)]
13698unsafe impl<'a> glib::value::FromValue<'a> for TreeViewDropPosition {
13699 type Checker = glib::value::GenericValueTypeChecker<Self>;
13700
13701 #[inline]
13702 unsafe fn from_value(value: &'a glib::Value) -> Self {
13703 skip_assert_initialized!();
13704 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13705 }
13706}
13707
13708#[allow(deprecated)]
13709impl ToValue for TreeViewDropPosition {
13710 #[inline]
13711 fn to_value(&self) -> glib::Value {
13712 let mut value = glib::Value::for_value_type::<Self>();
13713 unsafe {
13714 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13715 }
13716 value
13717 }
13718
13719 #[inline]
13720 fn value_type(&self) -> glib::Type {
13721 Self::static_type()
13722 }
13723}
13724
13725#[allow(deprecated)]
13726impl From<TreeViewDropPosition> for glib::Value {
13727 #[inline]
13728 fn from(v: TreeViewDropPosition) -> Self {
13729 skip_assert_initialized!();
13730 ToValue::to_value(&v)
13731 }
13732}
13733
13734#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13740#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13741#[non_exhaustive]
13742#[doc(alias = "GtkTreeViewGridLines")]
13743pub enum TreeViewGridLines {
13744 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_NONE")]
13746 None,
13747 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_HORIZONTAL")]
13749 Horizontal,
13750 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_VERTICAL")]
13752 Vertical,
13753 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_BOTH")]
13755 Both,
13756 #[doc(hidden)]
13757 __Unknown(i32),
13758}
13759
13760#[allow(deprecated)]
13761#[doc(hidden)]
13762impl IntoGlib for TreeViewGridLines {
13763 type GlibType = ffi::GtkTreeViewGridLines;
13764
13765 #[inline]
13766 fn into_glib(self) -> ffi::GtkTreeViewGridLines {
13767 match self {
13768 Self::None => ffi::GTK_TREE_VIEW_GRID_LINES_NONE,
13769 Self::Horizontal => ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL,
13770 Self::Vertical => ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL,
13771 Self::Both => ffi::GTK_TREE_VIEW_GRID_LINES_BOTH,
13772 Self::__Unknown(value) => value,
13773 }
13774 }
13775}
13776
13777#[allow(deprecated)]
13778#[doc(hidden)]
13779impl FromGlib<ffi::GtkTreeViewGridLines> for TreeViewGridLines {
13780 #[inline]
13781 unsafe fn from_glib(value: ffi::GtkTreeViewGridLines) -> Self {
13782 skip_assert_initialized!();
13783
13784 match value {
13785 ffi::GTK_TREE_VIEW_GRID_LINES_NONE => Self::None,
13786 ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL => Self::Horizontal,
13787 ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL => Self::Vertical,
13788 ffi::GTK_TREE_VIEW_GRID_LINES_BOTH => Self::Both,
13789 value => Self::__Unknown(value),
13790 }
13791 }
13792}
13793
13794#[allow(deprecated)]
13795impl StaticType for TreeViewGridLines {
13796 #[inline]
13797 #[doc(alias = "gtk_tree_view_grid_lines_get_type")]
13798 fn static_type() -> glib::Type {
13799 unsafe { from_glib(ffi::gtk_tree_view_grid_lines_get_type()) }
13800 }
13801}
13802
13803#[allow(deprecated)]
13804impl glib::HasParamSpec for TreeViewGridLines {
13805 type ParamSpec = glib::ParamSpecEnum;
13806 type SetValue = Self;
13807 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13808
13809 fn param_spec_builder() -> Self::BuilderFn {
13810 Self::ParamSpec::builder_with_default
13811 }
13812}
13813
13814#[allow(deprecated)]
13815impl glib::value::ValueType for TreeViewGridLines {
13816 type Type = Self;
13817}
13818
13819#[allow(deprecated)]
13820unsafe impl<'a> glib::value::FromValue<'a> for TreeViewGridLines {
13821 type Checker = glib::value::GenericValueTypeChecker<Self>;
13822
13823 #[inline]
13824 unsafe fn from_value(value: &'a glib::Value) -> Self {
13825 skip_assert_initialized!();
13826 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13827 }
13828}
13829
13830#[allow(deprecated)]
13831impl ToValue for TreeViewGridLines {
13832 #[inline]
13833 fn to_value(&self) -> glib::Value {
13834 let mut value = glib::Value::for_value_type::<Self>();
13835 unsafe {
13836 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13837 }
13838 value
13839 }
13840
13841 #[inline]
13842 fn value_type(&self) -> glib::Type {
13843 Self::static_type()
13844 }
13845}
13846
13847#[allow(deprecated)]
13848impl From<TreeViewGridLines> for glib::Value {
13849 #[inline]
13850 fn from(v: TreeViewGridLines) -> Self {
13851 skip_assert_initialized!();
13852 ToValue::to_value(&v)
13853 }
13854}
13855
13856#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13858#[non_exhaustive]
13859#[doc(alias = "GtkUnit")]
13860pub enum Unit {
13861 #[doc(alias = "GTK_UNIT_NONE")]
13863 None,
13864 #[doc(alias = "GTK_UNIT_POINTS")]
13866 Points,
13867 #[doc(alias = "GTK_UNIT_INCH")]
13869 Inch,
13870 #[doc(alias = "GTK_UNIT_MM")]
13872 Mm,
13873 #[doc(hidden)]
13874 __Unknown(i32),
13875}
13876
13877#[doc(hidden)]
13878impl IntoGlib for Unit {
13879 type GlibType = ffi::GtkUnit;
13880
13881 #[inline]
13882 fn into_glib(self) -> ffi::GtkUnit {
13883 match self {
13884 Self::None => ffi::GTK_UNIT_NONE,
13885 Self::Points => ffi::GTK_UNIT_POINTS,
13886 Self::Inch => ffi::GTK_UNIT_INCH,
13887 Self::Mm => ffi::GTK_UNIT_MM,
13888 Self::__Unknown(value) => value,
13889 }
13890 }
13891}
13892
13893#[doc(hidden)]
13894impl FromGlib<ffi::GtkUnit> for Unit {
13895 #[inline]
13896 unsafe fn from_glib(value: ffi::GtkUnit) -> Self {
13897 skip_assert_initialized!();
13898
13899 match value {
13900 ffi::GTK_UNIT_NONE => Self::None,
13901 ffi::GTK_UNIT_POINTS => Self::Points,
13902 ffi::GTK_UNIT_INCH => Self::Inch,
13903 ffi::GTK_UNIT_MM => Self::Mm,
13904 value => Self::__Unknown(value),
13905 }
13906 }
13907}
13908
13909impl StaticType for Unit {
13910 #[inline]
13911 #[doc(alias = "gtk_unit_get_type")]
13912 fn static_type() -> glib::Type {
13913 unsafe { from_glib(ffi::gtk_unit_get_type()) }
13914 }
13915}
13916
13917impl glib::HasParamSpec for Unit {
13918 type ParamSpec = glib::ParamSpecEnum;
13919 type SetValue = Self;
13920 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13921
13922 fn param_spec_builder() -> Self::BuilderFn {
13923 Self::ParamSpec::builder_with_default
13924 }
13925}
13926
13927impl glib::value::ValueType for Unit {
13928 type Type = Self;
13929}
13930
13931unsafe impl<'a> glib::value::FromValue<'a> for Unit {
13932 type Checker = glib::value::GenericValueTypeChecker<Self>;
13933
13934 #[inline]
13935 unsafe fn from_value(value: &'a glib::Value) -> Self {
13936 skip_assert_initialized!();
13937 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
13938 }
13939}
13940
13941impl ToValue for Unit {
13942 #[inline]
13943 fn to_value(&self) -> glib::Value {
13944 let mut value = glib::Value::for_value_type::<Self>();
13945 unsafe {
13946 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13947 }
13948 value
13949 }
13950
13951 #[inline]
13952 fn value_type(&self) -> glib::Type {
13953 Self::static_type()
13954 }
13955}
13956
13957impl From<Unit> for glib::Value {
13958 #[inline]
13959 fn from(v: Unit) -> Self {
13960 skip_assert_initialized!();
13961 ToValue::to_value(&v)
13962 }
13963}
13964
13965#[cfg(feature = "v4_20")]
13968#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13969#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13970#[non_exhaustive]
13971#[doc(alias = "GtkWindowGravity")]
13972pub enum WindowGravity {
13973 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_LEFT")]
13975 TopLeft,
13976 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP")]
13978 Top,
13979 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_RIGHT")]
13981 TopRight,
13982 #[doc(alias = "GTK_WINDOW_GRAVITY_LEFT")]
13984 Left,
13985 #[doc(alias = "GTK_WINDOW_GRAVITY_CENTER")]
13987 Center,
13988 #[doc(alias = "GTK_WINDOW_GRAVITY_RIGHT")]
13990 Right,
13991 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_LEFT")]
13993 BottomLeft,
13994 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM")]
13996 Bottom,
13997 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_RIGHT")]
13999 BottomRight,
14000 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_START")]
14003 TopStart,
14004 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_END")]
14007 TopEnd,
14008 #[doc(alias = "GTK_WINDOW_GRAVITY_START")]
14011 Start,
14012 #[doc(alias = "GTK_WINDOW_GRAVITY_END")]
14015 End,
14016 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_START")]
14019 BottomStart,
14020 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_END")]
14023 BottomEnd,
14024 #[doc(hidden)]
14025 __Unknown(i32),
14026}
14027
14028#[cfg(feature = "v4_20")]
14029#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14030#[doc(hidden)]
14031impl IntoGlib for WindowGravity {
14032 type GlibType = ffi::GtkWindowGravity;
14033
14034 fn into_glib(self) -> ffi::GtkWindowGravity {
14035 match self {
14036 Self::TopLeft => ffi::GTK_WINDOW_GRAVITY_TOP_LEFT,
14037 Self::Top => ffi::GTK_WINDOW_GRAVITY_TOP,
14038 Self::TopRight => ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT,
14039 Self::Left => ffi::GTK_WINDOW_GRAVITY_LEFT,
14040 Self::Center => ffi::GTK_WINDOW_GRAVITY_CENTER,
14041 Self::Right => ffi::GTK_WINDOW_GRAVITY_RIGHT,
14042 Self::BottomLeft => ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT,
14043 Self::Bottom => ffi::GTK_WINDOW_GRAVITY_BOTTOM,
14044 Self::BottomRight => ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT,
14045 Self::TopStart => ffi::GTK_WINDOW_GRAVITY_TOP_START,
14046 Self::TopEnd => ffi::GTK_WINDOW_GRAVITY_TOP_END,
14047 Self::Start => ffi::GTK_WINDOW_GRAVITY_START,
14048 Self::End => ffi::GTK_WINDOW_GRAVITY_END,
14049 Self::BottomStart => ffi::GTK_WINDOW_GRAVITY_BOTTOM_START,
14050 Self::BottomEnd => ffi::GTK_WINDOW_GRAVITY_BOTTOM_END,
14051 Self::__Unknown(value) => value,
14052 }
14053 }
14054}
14055
14056#[cfg(feature = "v4_20")]
14057#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14058#[doc(hidden)]
14059impl FromGlib<ffi::GtkWindowGravity> for WindowGravity {
14060 unsafe fn from_glib(value: ffi::GtkWindowGravity) -> Self {
14061 skip_assert_initialized!();
14062
14063 match value {
14064 ffi::GTK_WINDOW_GRAVITY_TOP_LEFT => Self::TopLeft,
14065 ffi::GTK_WINDOW_GRAVITY_TOP => Self::Top,
14066 ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT => Self::TopRight,
14067 ffi::GTK_WINDOW_GRAVITY_LEFT => Self::Left,
14068 ffi::GTK_WINDOW_GRAVITY_CENTER => Self::Center,
14069 ffi::GTK_WINDOW_GRAVITY_RIGHT => Self::Right,
14070 ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT => Self::BottomLeft,
14071 ffi::GTK_WINDOW_GRAVITY_BOTTOM => Self::Bottom,
14072 ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT => Self::BottomRight,
14073 ffi::GTK_WINDOW_GRAVITY_TOP_START => Self::TopStart,
14074 ffi::GTK_WINDOW_GRAVITY_TOP_END => Self::TopEnd,
14075 ffi::GTK_WINDOW_GRAVITY_START => Self::Start,
14076 ffi::GTK_WINDOW_GRAVITY_END => Self::End,
14077 ffi::GTK_WINDOW_GRAVITY_BOTTOM_START => Self::BottomStart,
14078 ffi::GTK_WINDOW_GRAVITY_BOTTOM_END => Self::BottomEnd,
14079 value => Self::__Unknown(value),
14080 }
14081 }
14082}
14083
14084#[cfg(feature = "v4_20")]
14085#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14086impl StaticType for WindowGravity {
14087 #[inline]
14088 #[doc(alias = "gtk_window_gravity_get_type")]
14089 fn static_type() -> glib::Type {
14090 unsafe { from_glib(ffi::gtk_window_gravity_get_type()) }
14091 }
14092}
14093
14094#[cfg(feature = "v4_20")]
14095#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14096impl glib::HasParamSpec for WindowGravity {
14097 type ParamSpec = glib::ParamSpecEnum;
14098 type SetValue = Self;
14099 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14100
14101 fn param_spec_builder() -> Self::BuilderFn {
14102 Self::ParamSpec::builder_with_default
14103 }
14104}
14105
14106#[cfg(feature = "v4_20")]
14107#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14108impl glib::value::ValueType for WindowGravity {
14109 type Type = Self;
14110}
14111
14112#[cfg(feature = "v4_20")]
14113#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14114unsafe impl<'a> glib::value::FromValue<'a> for WindowGravity {
14115 type Checker = glib::value::GenericValueTypeChecker<Self>;
14116
14117 #[inline]
14118 unsafe fn from_value(value: &'a glib::Value) -> Self {
14119 skip_assert_initialized!();
14120 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
14121 }
14122}
14123
14124#[cfg(feature = "v4_20")]
14125#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14126impl ToValue for WindowGravity {
14127 #[inline]
14128 fn to_value(&self) -> glib::Value {
14129 let mut value = glib::Value::for_value_type::<Self>();
14130 unsafe {
14131 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14132 }
14133 value
14134 }
14135
14136 #[inline]
14137 fn value_type(&self) -> glib::Type {
14138 Self::static_type()
14139 }
14140}
14141
14142#[cfg(feature = "v4_20")]
14143#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14144impl From<WindowGravity> for glib::Value {
14145 #[inline]
14146 fn from(v: WindowGravity) -> Self {
14147 skip_assert_initialized!();
14148 ToValue::to_value(&v)
14149 }
14150}
14151
14152#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14154#[non_exhaustive]
14155#[doc(alias = "GtkWrapMode")]
14156pub enum WrapMode {
14157 #[doc(alias = "GTK_WRAP_NONE")]
14159 None,
14160 #[doc(alias = "GTK_WRAP_CHAR")]
14164 Char,
14165 #[doc(alias = "GTK_WRAP_WORD")]
14167 Word,
14168 #[doc(alias = "GTK_WRAP_WORD_CHAR")]
14171 WordChar,
14172 #[doc(hidden)]
14173 __Unknown(i32),
14174}
14175
14176#[doc(hidden)]
14177impl IntoGlib for WrapMode {
14178 type GlibType = ffi::GtkWrapMode;
14179
14180 #[inline]
14181 fn into_glib(self) -> ffi::GtkWrapMode {
14182 match self {
14183 Self::None => ffi::GTK_WRAP_NONE,
14184 Self::Char => ffi::GTK_WRAP_CHAR,
14185 Self::Word => ffi::GTK_WRAP_WORD,
14186 Self::WordChar => ffi::GTK_WRAP_WORD_CHAR,
14187 Self::__Unknown(value) => value,
14188 }
14189 }
14190}
14191
14192#[doc(hidden)]
14193impl FromGlib<ffi::GtkWrapMode> for WrapMode {
14194 #[inline]
14195 unsafe fn from_glib(value: ffi::GtkWrapMode) -> Self {
14196 skip_assert_initialized!();
14197
14198 match value {
14199 ffi::GTK_WRAP_NONE => Self::None,
14200 ffi::GTK_WRAP_CHAR => Self::Char,
14201 ffi::GTK_WRAP_WORD => Self::Word,
14202 ffi::GTK_WRAP_WORD_CHAR => Self::WordChar,
14203 value => Self::__Unknown(value),
14204 }
14205 }
14206}
14207
14208impl StaticType for WrapMode {
14209 #[inline]
14210 #[doc(alias = "gtk_wrap_mode_get_type")]
14211 fn static_type() -> glib::Type {
14212 unsafe { from_glib(ffi::gtk_wrap_mode_get_type()) }
14213 }
14214}
14215
14216impl glib::HasParamSpec for WrapMode {
14217 type ParamSpec = glib::ParamSpecEnum;
14218 type SetValue = Self;
14219 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14220
14221 fn param_spec_builder() -> Self::BuilderFn {
14222 Self::ParamSpec::builder_with_default
14223 }
14224}
14225
14226impl glib::value::ValueType for WrapMode {
14227 type Type = Self;
14228}
14229
14230unsafe impl<'a> glib::value::FromValue<'a> for WrapMode {
14231 type Checker = glib::value::GenericValueTypeChecker<Self>;
14232
14233 #[inline]
14234 unsafe fn from_value(value: &'a glib::Value) -> Self {
14235 skip_assert_initialized!();
14236 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
14237 }
14238}
14239
14240impl ToValue for WrapMode {
14241 #[inline]
14242 fn to_value(&self) -> glib::Value {
14243 let mut value = glib::Value::for_value_type::<Self>();
14244 unsafe {
14245 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14246 }
14247 value
14248 }
14249
14250 #[inline]
14251 fn value_type(&self) -> glib::Type {
14252 Self::static_type()
14253 }
14254}
14255
14256impl From<WrapMode> for glib::Value {
14257 #[inline]
14258 fn from(v: WrapMode) -> Self {
14259 skip_assert_initialized!();
14260 ToValue::to_value(&v)
14261 }
14262}