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