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