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)]
2956#[non_exhaustive]
2957#[doc(alias = "GtkButtonsType")]
2958pub enum ButtonsType {
2959 #[doc(alias = "GTK_BUTTONS_NONE")]
2961 None,
2962 #[doc(alias = "GTK_BUTTONS_OK")]
2964 Ok,
2965 #[doc(alias = "GTK_BUTTONS_CLOSE")]
2967 Close,
2968 #[doc(alias = "GTK_BUTTONS_CANCEL")]
2970 Cancel,
2971 #[doc(alias = "GTK_BUTTONS_YES_NO")]
2973 YesNo,
2974 #[doc(alias = "GTK_BUTTONS_OK_CANCEL")]
2976 OkCancel,
2977 #[doc(hidden)]
2978 __Unknown(i32),
2979}
2980
2981#[doc(hidden)]
2982impl IntoGlib for ButtonsType {
2983 type GlibType = ffi::GtkButtonsType;
2984
2985 #[inline]
2986 fn into_glib(self) -> ffi::GtkButtonsType {
2987 match self {
2988 Self::None => ffi::GTK_BUTTONS_NONE,
2989 Self::Ok => ffi::GTK_BUTTONS_OK,
2990 Self::Close => ffi::GTK_BUTTONS_CLOSE,
2991 Self::Cancel => ffi::GTK_BUTTONS_CANCEL,
2992 Self::YesNo => ffi::GTK_BUTTONS_YES_NO,
2993 Self::OkCancel => ffi::GTK_BUTTONS_OK_CANCEL,
2994 Self::__Unknown(value) => value,
2995 }
2996 }
2997}
2998
2999#[doc(hidden)]
3000impl FromGlib<ffi::GtkButtonsType> for ButtonsType {
3001 #[inline]
3002 unsafe fn from_glib(value: ffi::GtkButtonsType) -> Self {
3003 skip_assert_initialized!();
3004
3005 match value {
3006 ffi::GTK_BUTTONS_NONE => Self::None,
3007 ffi::GTK_BUTTONS_OK => Self::Ok,
3008 ffi::GTK_BUTTONS_CLOSE => Self::Close,
3009 ffi::GTK_BUTTONS_CANCEL => Self::Cancel,
3010 ffi::GTK_BUTTONS_YES_NO => Self::YesNo,
3011 ffi::GTK_BUTTONS_OK_CANCEL => Self::OkCancel,
3012 value => Self::__Unknown(value),
3013 }
3014 }
3015}
3016
3017impl StaticType for ButtonsType {
3018 #[inline]
3019 #[doc(alias = "gtk_buttons_type_get_type")]
3020 fn static_type() -> glib::Type {
3021 unsafe { from_glib(ffi::gtk_buttons_type_get_type()) }
3022 }
3023}
3024
3025impl glib::HasParamSpec for ButtonsType {
3026 type ParamSpec = glib::ParamSpecEnum;
3027 type SetValue = Self;
3028 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3029
3030 fn param_spec_builder() -> Self::BuilderFn {
3031 Self::ParamSpec::builder_with_default
3032 }
3033}
3034
3035impl glib::value::ValueType for ButtonsType {
3036 type Type = Self;
3037}
3038
3039unsafe impl<'a> glib::value::FromValue<'a> for ButtonsType {
3040 type Checker = glib::value::GenericValueTypeChecker<Self>;
3041
3042 #[inline]
3043 unsafe fn from_value(value: &'a glib::Value) -> Self {
3044 skip_assert_initialized!();
3045 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3046 }
3047}
3048
3049impl ToValue for ButtonsType {
3050 #[inline]
3051 fn to_value(&self) -> glib::Value {
3052 let mut value = glib::Value::for_value_type::<Self>();
3053 unsafe {
3054 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3055 }
3056 value
3057 }
3058
3059 #[inline]
3060 fn value_type(&self) -> glib::Type {
3061 Self::static_type()
3062 }
3063}
3064
3065impl From<ButtonsType> for glib::Value {
3066 #[inline]
3067 fn from(v: ButtonsType) -> Self {
3068 skip_assert_initialized!();
3069 ToValue::to_value(&v)
3070 }
3071}
3072
3073#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
3079#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3080#[non_exhaustive]
3081#[doc(alias = "GtkCellRendererAccelMode")]
3082pub enum CellRendererAccelMode {
3083 #[doc(alias = "GTK_CELL_RENDERER_ACCEL_MODE_GTK")]
3085 Gtk,
3086 #[doc(alias = "GTK_CELL_RENDERER_ACCEL_MODE_OTHER")]
3088 Other,
3089 #[doc(hidden)]
3090 __Unknown(i32),
3091}
3092
3093#[allow(deprecated)]
3094#[doc(hidden)]
3095impl IntoGlib for CellRendererAccelMode {
3096 type GlibType = ffi::GtkCellRendererAccelMode;
3097
3098 #[inline]
3099 fn into_glib(self) -> ffi::GtkCellRendererAccelMode {
3100 match self {
3101 Self::Gtk => ffi::GTK_CELL_RENDERER_ACCEL_MODE_GTK,
3102 Self::Other => ffi::GTK_CELL_RENDERER_ACCEL_MODE_OTHER,
3103 Self::__Unknown(value) => value,
3104 }
3105 }
3106}
3107
3108#[allow(deprecated)]
3109#[doc(hidden)]
3110impl FromGlib<ffi::GtkCellRendererAccelMode> for CellRendererAccelMode {
3111 #[inline]
3112 unsafe fn from_glib(value: ffi::GtkCellRendererAccelMode) -> Self {
3113 skip_assert_initialized!();
3114
3115 match value {
3116 ffi::GTK_CELL_RENDERER_ACCEL_MODE_GTK => Self::Gtk,
3117 ffi::GTK_CELL_RENDERER_ACCEL_MODE_OTHER => Self::Other,
3118 value => Self::__Unknown(value),
3119 }
3120 }
3121}
3122
3123#[allow(deprecated)]
3124impl StaticType for CellRendererAccelMode {
3125 #[inline]
3126 #[doc(alias = "gtk_cell_renderer_accel_mode_get_type")]
3127 fn static_type() -> glib::Type {
3128 unsafe { from_glib(ffi::gtk_cell_renderer_accel_mode_get_type()) }
3129 }
3130}
3131
3132#[allow(deprecated)]
3133impl glib::HasParamSpec for CellRendererAccelMode {
3134 type ParamSpec = glib::ParamSpecEnum;
3135 type SetValue = Self;
3136 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3137
3138 fn param_spec_builder() -> Self::BuilderFn {
3139 Self::ParamSpec::builder_with_default
3140 }
3141}
3142
3143#[allow(deprecated)]
3144impl glib::value::ValueType for CellRendererAccelMode {
3145 type Type = Self;
3146}
3147
3148#[allow(deprecated)]
3149unsafe impl<'a> glib::value::FromValue<'a> for CellRendererAccelMode {
3150 type Checker = glib::value::GenericValueTypeChecker<Self>;
3151
3152 #[inline]
3153 unsafe fn from_value(value: &'a glib::Value) -> Self {
3154 skip_assert_initialized!();
3155 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3156 }
3157}
3158
3159#[allow(deprecated)]
3160impl ToValue for CellRendererAccelMode {
3161 #[inline]
3162 fn to_value(&self) -> glib::Value {
3163 let mut value = glib::Value::for_value_type::<Self>();
3164 unsafe {
3165 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3166 }
3167 value
3168 }
3169
3170 #[inline]
3171 fn value_type(&self) -> glib::Type {
3172 Self::static_type()
3173 }
3174}
3175
3176#[allow(deprecated)]
3177impl From<CellRendererAccelMode> for glib::Value {
3178 #[inline]
3179 fn from(v: CellRendererAccelMode) -> Self {
3180 skip_assert_initialized!();
3181 ToValue::to_value(&v)
3182 }
3183}
3184
3185#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
3191#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3192#[non_exhaustive]
3193#[doc(alias = "GtkCellRendererMode")]
3194pub enum CellRendererMode {
3195 #[doc(alias = "GTK_CELL_RENDERER_MODE_INERT")]
3200 Inert,
3201 #[doc(alias = "GTK_CELL_RENDERER_MODE_ACTIVATABLE")]
3203 Activatable,
3204 #[doc(alias = "GTK_CELL_RENDERER_MODE_EDITABLE")]
3206 Editable,
3207 #[doc(hidden)]
3208 __Unknown(i32),
3209}
3210
3211#[allow(deprecated)]
3212#[doc(hidden)]
3213impl IntoGlib for CellRendererMode {
3214 type GlibType = ffi::GtkCellRendererMode;
3215
3216 #[inline]
3217 fn into_glib(self) -> ffi::GtkCellRendererMode {
3218 match self {
3219 Self::Inert => ffi::GTK_CELL_RENDERER_MODE_INERT,
3220 Self::Activatable => ffi::GTK_CELL_RENDERER_MODE_ACTIVATABLE,
3221 Self::Editable => ffi::GTK_CELL_RENDERER_MODE_EDITABLE,
3222 Self::__Unknown(value) => value,
3223 }
3224 }
3225}
3226
3227#[allow(deprecated)]
3228#[doc(hidden)]
3229impl FromGlib<ffi::GtkCellRendererMode> for CellRendererMode {
3230 #[inline]
3231 unsafe fn from_glib(value: ffi::GtkCellRendererMode) -> Self {
3232 skip_assert_initialized!();
3233
3234 match value {
3235 ffi::GTK_CELL_RENDERER_MODE_INERT => Self::Inert,
3236 ffi::GTK_CELL_RENDERER_MODE_ACTIVATABLE => Self::Activatable,
3237 ffi::GTK_CELL_RENDERER_MODE_EDITABLE => Self::Editable,
3238 value => Self::__Unknown(value),
3239 }
3240 }
3241}
3242
3243#[allow(deprecated)]
3244impl StaticType for CellRendererMode {
3245 #[inline]
3246 #[doc(alias = "gtk_cell_renderer_mode_get_type")]
3247 fn static_type() -> glib::Type {
3248 unsafe { from_glib(ffi::gtk_cell_renderer_mode_get_type()) }
3249 }
3250}
3251
3252#[allow(deprecated)]
3253impl glib::HasParamSpec for CellRendererMode {
3254 type ParamSpec = glib::ParamSpecEnum;
3255 type SetValue = Self;
3256 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3257
3258 fn param_spec_builder() -> Self::BuilderFn {
3259 Self::ParamSpec::builder_with_default
3260 }
3261}
3262
3263#[allow(deprecated)]
3264impl glib::value::ValueType for CellRendererMode {
3265 type Type = Self;
3266}
3267
3268#[allow(deprecated)]
3269unsafe impl<'a> glib::value::FromValue<'a> for CellRendererMode {
3270 type Checker = glib::value::GenericValueTypeChecker<Self>;
3271
3272 #[inline]
3273 unsafe fn from_value(value: &'a glib::Value) -> Self {
3274 skip_assert_initialized!();
3275 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3276 }
3277}
3278
3279#[allow(deprecated)]
3280impl ToValue for CellRendererMode {
3281 #[inline]
3282 fn to_value(&self) -> glib::Value {
3283 let mut value = glib::Value::for_value_type::<Self>();
3284 unsafe {
3285 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3286 }
3287 value
3288 }
3289
3290 #[inline]
3291 fn value_type(&self) -> glib::Type {
3292 Self::static_type()
3293 }
3294}
3295
3296#[allow(deprecated)]
3297impl From<CellRendererMode> for glib::Value {
3298 #[inline]
3299 fn from(v: CellRendererMode) -> Self {
3300 skip_assert_initialized!();
3301 ToValue::to_value(&v)
3302 }
3303}
3304
3305#[cfg(feature = "v4_10")]
3311#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3312#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3313#[non_exhaustive]
3314#[doc(alias = "GtkCollation")]
3315pub enum Collation {
3316 #[doc(alias = "GTK_COLLATION_NONE")]
3318 None,
3319 #[doc(alias = "GTK_COLLATION_UNICODE")]
3321 Unicode,
3322 #[doc(alias = "GTK_COLLATION_FILENAME")]
3324 Filename,
3325 #[doc(hidden)]
3326 __Unknown(i32),
3327}
3328
3329#[cfg(feature = "v4_10")]
3330#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3331#[doc(hidden)]
3332impl IntoGlib for Collation {
3333 type GlibType = ffi::GtkCollation;
3334
3335 #[inline]
3336 fn into_glib(self) -> ffi::GtkCollation {
3337 match self {
3338 Self::None => ffi::GTK_COLLATION_NONE,
3339 Self::Unicode => ffi::GTK_COLLATION_UNICODE,
3340 Self::Filename => ffi::GTK_COLLATION_FILENAME,
3341 Self::__Unknown(value) => value,
3342 }
3343 }
3344}
3345
3346#[cfg(feature = "v4_10")]
3347#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3348#[doc(hidden)]
3349impl FromGlib<ffi::GtkCollation> for Collation {
3350 #[inline]
3351 unsafe fn from_glib(value: ffi::GtkCollation) -> Self {
3352 skip_assert_initialized!();
3353
3354 match value {
3355 ffi::GTK_COLLATION_NONE => Self::None,
3356 ffi::GTK_COLLATION_UNICODE => Self::Unicode,
3357 ffi::GTK_COLLATION_FILENAME => Self::Filename,
3358 value => Self::__Unknown(value),
3359 }
3360 }
3361}
3362
3363#[cfg(feature = "v4_10")]
3364#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3365impl StaticType for Collation {
3366 #[inline]
3367 #[doc(alias = "gtk_collation_get_type")]
3368 fn static_type() -> glib::Type {
3369 unsafe { from_glib(ffi::gtk_collation_get_type()) }
3370 }
3371}
3372
3373#[cfg(feature = "v4_10")]
3374#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3375impl glib::HasParamSpec for Collation {
3376 type ParamSpec = glib::ParamSpecEnum;
3377 type SetValue = Self;
3378 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3379
3380 fn param_spec_builder() -> Self::BuilderFn {
3381 Self::ParamSpec::builder_with_default
3382 }
3383}
3384
3385#[cfg(feature = "v4_10")]
3386#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3387impl glib::value::ValueType for Collation {
3388 type Type = Self;
3389}
3390
3391#[cfg(feature = "v4_10")]
3392#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3393unsafe impl<'a> glib::value::FromValue<'a> for Collation {
3394 type Checker = glib::value::GenericValueTypeChecker<Self>;
3395
3396 #[inline]
3397 unsafe fn from_value(value: &'a glib::Value) -> Self {
3398 skip_assert_initialized!();
3399 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3400 }
3401}
3402
3403#[cfg(feature = "v4_10")]
3404#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3405impl ToValue for Collation {
3406 #[inline]
3407 fn to_value(&self) -> glib::Value {
3408 let mut value = glib::Value::for_value_type::<Self>();
3409 unsafe {
3410 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3411 }
3412 value
3413 }
3414
3415 #[inline]
3416 fn value_type(&self) -> glib::Type {
3417 Self::static_type()
3418 }
3419}
3420
3421#[cfg(feature = "v4_10")]
3422#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3423impl From<Collation> for glib::Value {
3424 #[inline]
3425 fn from(v: Collation) -> Self {
3426 skip_assert_initialized!();
3427 ToValue::to_value(&v)
3428 }
3429}
3430
3431#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3433#[non_exhaustive]
3434#[doc(alias = "GtkConstraintAttribute")]
3435pub enum ConstraintAttribute {
3436 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_NONE")]
3439 None,
3440 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_LEFT")]
3443 Left,
3444 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_RIGHT")]
3447 Right,
3448 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_TOP")]
3450 Top,
3451 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_BOTTOM")]
3453 Bottom,
3454 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_START")]
3458 Start,
3459 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_END")]
3463 End,
3464 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_WIDTH")]
3466 Width,
3467 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_HEIGHT")]
3469 Height,
3470 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_CENTER_X")]
3473 CenterX,
3474 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y")]
3477 CenterY,
3478 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_BASELINE")]
3480 Baseline,
3481 #[doc(hidden)]
3482 __Unknown(i32),
3483}
3484
3485#[doc(hidden)]
3486impl IntoGlib for ConstraintAttribute {
3487 type GlibType = ffi::GtkConstraintAttribute;
3488
3489 #[inline]
3490 fn into_glib(self) -> ffi::GtkConstraintAttribute {
3491 match self {
3492 Self::None => ffi::GTK_CONSTRAINT_ATTRIBUTE_NONE,
3493 Self::Left => ffi::GTK_CONSTRAINT_ATTRIBUTE_LEFT,
3494 Self::Right => ffi::GTK_CONSTRAINT_ATTRIBUTE_RIGHT,
3495 Self::Top => ffi::GTK_CONSTRAINT_ATTRIBUTE_TOP,
3496 Self::Bottom => ffi::GTK_CONSTRAINT_ATTRIBUTE_BOTTOM,
3497 Self::Start => ffi::GTK_CONSTRAINT_ATTRIBUTE_START,
3498 Self::End => ffi::GTK_CONSTRAINT_ATTRIBUTE_END,
3499 Self::Width => ffi::GTK_CONSTRAINT_ATTRIBUTE_WIDTH,
3500 Self::Height => ffi::GTK_CONSTRAINT_ATTRIBUTE_HEIGHT,
3501 Self::CenterX => ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_X,
3502 Self::CenterY => ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y,
3503 Self::Baseline => ffi::GTK_CONSTRAINT_ATTRIBUTE_BASELINE,
3504 Self::__Unknown(value) => value,
3505 }
3506 }
3507}
3508
3509#[doc(hidden)]
3510impl FromGlib<ffi::GtkConstraintAttribute> for ConstraintAttribute {
3511 #[inline]
3512 unsafe fn from_glib(value: ffi::GtkConstraintAttribute) -> Self {
3513 skip_assert_initialized!();
3514
3515 match value {
3516 ffi::GTK_CONSTRAINT_ATTRIBUTE_NONE => Self::None,
3517 ffi::GTK_CONSTRAINT_ATTRIBUTE_LEFT => Self::Left,
3518 ffi::GTK_CONSTRAINT_ATTRIBUTE_RIGHT => Self::Right,
3519 ffi::GTK_CONSTRAINT_ATTRIBUTE_TOP => Self::Top,
3520 ffi::GTK_CONSTRAINT_ATTRIBUTE_BOTTOM => Self::Bottom,
3521 ffi::GTK_CONSTRAINT_ATTRIBUTE_START => Self::Start,
3522 ffi::GTK_CONSTRAINT_ATTRIBUTE_END => Self::End,
3523 ffi::GTK_CONSTRAINT_ATTRIBUTE_WIDTH => Self::Width,
3524 ffi::GTK_CONSTRAINT_ATTRIBUTE_HEIGHT => Self::Height,
3525 ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_X => Self::CenterX,
3526 ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y => Self::CenterY,
3527 ffi::GTK_CONSTRAINT_ATTRIBUTE_BASELINE => Self::Baseline,
3528 value => Self::__Unknown(value),
3529 }
3530 }
3531}
3532
3533impl StaticType for ConstraintAttribute {
3534 #[inline]
3535 #[doc(alias = "gtk_constraint_attribute_get_type")]
3536 fn static_type() -> glib::Type {
3537 unsafe { from_glib(ffi::gtk_constraint_attribute_get_type()) }
3538 }
3539}
3540
3541impl glib::HasParamSpec for ConstraintAttribute {
3542 type ParamSpec = glib::ParamSpecEnum;
3543 type SetValue = Self;
3544 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3545
3546 fn param_spec_builder() -> Self::BuilderFn {
3547 Self::ParamSpec::builder_with_default
3548 }
3549}
3550
3551impl glib::value::ValueType for ConstraintAttribute {
3552 type Type = Self;
3553}
3554
3555unsafe impl<'a> glib::value::FromValue<'a> for ConstraintAttribute {
3556 type Checker = glib::value::GenericValueTypeChecker<Self>;
3557
3558 #[inline]
3559 unsafe fn from_value(value: &'a glib::Value) -> Self {
3560 skip_assert_initialized!();
3561 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3562 }
3563}
3564
3565impl ToValue for ConstraintAttribute {
3566 #[inline]
3567 fn to_value(&self) -> glib::Value {
3568 let mut value = glib::Value::for_value_type::<Self>();
3569 unsafe {
3570 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3571 }
3572 value
3573 }
3574
3575 #[inline]
3576 fn value_type(&self) -> glib::Type {
3577 Self::static_type()
3578 }
3579}
3580
3581impl From<ConstraintAttribute> for glib::Value {
3582 #[inline]
3583 fn from(v: ConstraintAttribute) -> Self {
3584 skip_assert_initialized!();
3585 ToValue::to_value(&v)
3586 }
3587}
3588
3589#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3591#[non_exhaustive]
3592#[doc(alias = "GtkConstraintRelation")]
3593pub enum ConstraintRelation {
3594 #[doc(alias = "GTK_CONSTRAINT_RELATION_LE")]
3596 Le,
3597 #[doc(alias = "GTK_CONSTRAINT_RELATION_EQ")]
3599 Eq,
3600 #[doc(alias = "GTK_CONSTRAINT_RELATION_GE")]
3602 Ge,
3603 #[doc(hidden)]
3604 __Unknown(i32),
3605}
3606
3607#[doc(hidden)]
3608impl IntoGlib for ConstraintRelation {
3609 type GlibType = ffi::GtkConstraintRelation;
3610
3611 #[inline]
3612 fn into_glib(self) -> ffi::GtkConstraintRelation {
3613 match self {
3614 Self::Le => ffi::GTK_CONSTRAINT_RELATION_LE,
3615 Self::Eq => ffi::GTK_CONSTRAINT_RELATION_EQ,
3616 Self::Ge => ffi::GTK_CONSTRAINT_RELATION_GE,
3617 Self::__Unknown(value) => value,
3618 }
3619 }
3620}
3621
3622#[doc(hidden)]
3623impl FromGlib<ffi::GtkConstraintRelation> for ConstraintRelation {
3624 #[inline]
3625 unsafe fn from_glib(value: ffi::GtkConstraintRelation) -> Self {
3626 skip_assert_initialized!();
3627
3628 match value {
3629 ffi::GTK_CONSTRAINT_RELATION_LE => Self::Le,
3630 ffi::GTK_CONSTRAINT_RELATION_EQ => Self::Eq,
3631 ffi::GTK_CONSTRAINT_RELATION_GE => Self::Ge,
3632 value => Self::__Unknown(value),
3633 }
3634 }
3635}
3636
3637impl StaticType for ConstraintRelation {
3638 #[inline]
3639 #[doc(alias = "gtk_constraint_relation_get_type")]
3640 fn static_type() -> glib::Type {
3641 unsafe { from_glib(ffi::gtk_constraint_relation_get_type()) }
3642 }
3643}
3644
3645impl glib::HasParamSpec for ConstraintRelation {
3646 type ParamSpec = glib::ParamSpecEnum;
3647 type SetValue = Self;
3648 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3649
3650 fn param_spec_builder() -> Self::BuilderFn {
3651 Self::ParamSpec::builder_with_default
3652 }
3653}
3654
3655impl glib::value::ValueType for ConstraintRelation {
3656 type Type = Self;
3657}
3658
3659unsafe impl<'a> glib::value::FromValue<'a> for ConstraintRelation {
3660 type Checker = glib::value::GenericValueTypeChecker<Self>;
3661
3662 #[inline]
3663 unsafe fn from_value(value: &'a glib::Value) -> Self {
3664 skip_assert_initialized!();
3665 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3666 }
3667}
3668
3669impl ToValue for ConstraintRelation {
3670 #[inline]
3671 fn to_value(&self) -> glib::Value {
3672 let mut value = glib::Value::for_value_type::<Self>();
3673 unsafe {
3674 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3675 }
3676 value
3677 }
3678
3679 #[inline]
3680 fn value_type(&self) -> glib::Type {
3681 Self::static_type()
3682 }
3683}
3684
3685impl From<ConstraintRelation> for glib::Value {
3686 #[inline]
3687 fn from(v: ConstraintRelation) -> Self {
3688 skip_assert_initialized!();
3689 ToValue::to_value(&v)
3690 }
3691}
3692
3693#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3698#[non_exhaustive]
3699#[doc(alias = "GtkConstraintStrength")]
3700pub enum ConstraintStrength {
3701 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_REQUIRED")]
3703 Required,
3704 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_STRONG")]
3706 Strong,
3707 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_MEDIUM")]
3709 Medium,
3710 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_WEAK")]
3712 Weak,
3713 #[doc(hidden)]
3714 __Unknown(i32),
3715}
3716
3717#[doc(hidden)]
3718impl IntoGlib for ConstraintStrength {
3719 type GlibType = ffi::GtkConstraintStrength;
3720
3721 #[inline]
3722 fn into_glib(self) -> ffi::GtkConstraintStrength {
3723 match self {
3724 Self::Required => ffi::GTK_CONSTRAINT_STRENGTH_REQUIRED,
3725 Self::Strong => ffi::GTK_CONSTRAINT_STRENGTH_STRONG,
3726 Self::Medium => ffi::GTK_CONSTRAINT_STRENGTH_MEDIUM,
3727 Self::Weak => ffi::GTK_CONSTRAINT_STRENGTH_WEAK,
3728 Self::__Unknown(value) => value,
3729 }
3730 }
3731}
3732
3733#[doc(hidden)]
3734impl FromGlib<ffi::GtkConstraintStrength> for ConstraintStrength {
3735 #[inline]
3736 unsafe fn from_glib(value: ffi::GtkConstraintStrength) -> Self {
3737 skip_assert_initialized!();
3738
3739 match value {
3740 ffi::GTK_CONSTRAINT_STRENGTH_REQUIRED => Self::Required,
3741 ffi::GTK_CONSTRAINT_STRENGTH_STRONG => Self::Strong,
3742 ffi::GTK_CONSTRAINT_STRENGTH_MEDIUM => Self::Medium,
3743 ffi::GTK_CONSTRAINT_STRENGTH_WEAK => Self::Weak,
3744 value => Self::__Unknown(value),
3745 }
3746 }
3747}
3748
3749impl StaticType for ConstraintStrength {
3750 #[inline]
3751 #[doc(alias = "gtk_constraint_strength_get_type")]
3752 fn static_type() -> glib::Type {
3753 unsafe { from_glib(ffi::gtk_constraint_strength_get_type()) }
3754 }
3755}
3756
3757impl glib::HasParamSpec for ConstraintStrength {
3758 type ParamSpec = glib::ParamSpecEnum;
3759 type SetValue = Self;
3760 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3761
3762 fn param_spec_builder() -> Self::BuilderFn {
3763 Self::ParamSpec::builder_with_default
3764 }
3765}
3766
3767impl glib::value::ValueType for ConstraintStrength {
3768 type Type = Self;
3769}
3770
3771unsafe impl<'a> glib::value::FromValue<'a> for ConstraintStrength {
3772 type Checker = glib::value::GenericValueTypeChecker<Self>;
3773
3774 #[inline]
3775 unsafe fn from_value(value: &'a glib::Value) -> Self {
3776 skip_assert_initialized!();
3777 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3778 }
3779}
3780
3781impl ToValue for ConstraintStrength {
3782 #[inline]
3783 fn to_value(&self) -> glib::Value {
3784 let mut value = glib::Value::for_value_type::<Self>();
3785 unsafe {
3786 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3787 }
3788 value
3789 }
3790
3791 #[inline]
3792 fn value_type(&self) -> glib::Type {
3793 Self::static_type()
3794 }
3795}
3796
3797impl From<ConstraintStrength> for glib::Value {
3798 #[inline]
3799 fn from(v: ConstraintStrength) -> Self {
3800 skip_assert_initialized!();
3801 ToValue::to_value(&v)
3802 }
3803}
3804
3805#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3807#[non_exhaustive]
3808#[doc(alias = "GtkConstraintVflParserError")]
3809pub enum ConstraintVflParserError {
3810 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL")]
3812 InvalidSymbol,
3813 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE")]
3815 InvalidAttribute,
3816 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW")]
3818 InvalidView,
3819 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC")]
3821 InvalidMetric,
3822 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY")]
3824 InvalidPriority,
3825 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION")]
3827 InvalidRelation,
3828 #[doc(hidden)]
3829 __Unknown(i32),
3830}
3831
3832#[doc(hidden)]
3833impl IntoGlib for ConstraintVflParserError {
3834 type GlibType = ffi::GtkConstraintVflParserError;
3835
3836 #[inline]
3837 fn into_glib(self) -> ffi::GtkConstraintVflParserError {
3838 match self {
3839 Self::InvalidSymbol => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL,
3840 Self::InvalidAttribute => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE,
3841 Self::InvalidView => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW,
3842 Self::InvalidMetric => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC,
3843 Self::InvalidPriority => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY,
3844 Self::InvalidRelation => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION,
3845 Self::__Unknown(value) => value,
3846 }
3847 }
3848}
3849
3850#[doc(hidden)]
3851impl FromGlib<ffi::GtkConstraintVflParserError> for ConstraintVflParserError {
3852 #[inline]
3853 unsafe fn from_glib(value: ffi::GtkConstraintVflParserError) -> Self {
3854 skip_assert_initialized!();
3855
3856 match value {
3857 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL => Self::InvalidSymbol,
3858 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
3859 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW => Self::InvalidView,
3860 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC => Self::InvalidMetric,
3861 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY => Self::InvalidPriority,
3862 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION => Self::InvalidRelation,
3863 value => Self::__Unknown(value),
3864 }
3865 }
3866}
3867
3868impl glib::error::ErrorDomain for ConstraintVflParserError {
3869 #[inline]
3870 fn domain() -> glib::Quark {
3871 skip_assert_initialized!();
3872
3873 unsafe { from_glib(ffi::gtk_constraint_vfl_parser_error_quark()) }
3874 }
3875
3876 #[inline]
3877 fn code(self) -> i32 {
3878 self.into_glib()
3879 }
3880
3881 #[inline]
3882 #[allow(clippy::match_single_binding)]
3883 fn from(code: i32) -> Option<Self> {
3884 skip_assert_initialized!();
3885 match unsafe { from_glib(code) } {
3886 value => Some(value),
3887 }
3888 }
3889}
3890
3891impl StaticType for ConstraintVflParserError {
3892 #[inline]
3893 #[doc(alias = "gtk_constraint_vfl_parser_error_get_type")]
3894 fn static_type() -> glib::Type {
3895 unsafe { from_glib(ffi::gtk_constraint_vfl_parser_error_get_type()) }
3896 }
3897}
3898
3899impl glib::HasParamSpec for ConstraintVflParserError {
3900 type ParamSpec = glib::ParamSpecEnum;
3901 type SetValue = Self;
3902 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3903
3904 fn param_spec_builder() -> Self::BuilderFn {
3905 Self::ParamSpec::builder_with_default
3906 }
3907}
3908
3909impl glib::value::ValueType for ConstraintVflParserError {
3910 type Type = Self;
3911}
3912
3913unsafe impl<'a> glib::value::FromValue<'a> for ConstraintVflParserError {
3914 type Checker = glib::value::GenericValueTypeChecker<Self>;
3915
3916 #[inline]
3917 unsafe fn from_value(value: &'a glib::Value) -> Self {
3918 skip_assert_initialized!();
3919 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3920 }
3921}
3922
3923impl ToValue for ConstraintVflParserError {
3924 #[inline]
3925 fn to_value(&self) -> glib::Value {
3926 let mut value = glib::Value::for_value_type::<Self>();
3927 unsafe {
3928 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3929 }
3930 value
3931 }
3932
3933 #[inline]
3934 fn value_type(&self) -> glib::Type {
3935 Self::static_type()
3936 }
3937}
3938
3939impl From<ConstraintVflParserError> for glib::Value {
3940 #[inline]
3941 fn from(v: ConstraintVflParserError) -> Self {
3942 skip_assert_initialized!();
3943 ToValue::to_value(&v)
3944 }
3945}
3946
3947#[cfg(feature = "v4_8")]
3949#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
3950#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3951#[non_exhaustive]
3952#[doc(alias = "GtkContentFit")]
3953pub enum ContentFit {
3954 #[doc(alias = "GTK_CONTENT_FIT_FILL")]
3959 Fill,
3960 #[doc(alias = "GTK_CONTENT_FIT_CONTAIN")]
3965 Contain,
3966 #[doc(alias = "GTK_CONTENT_FIT_COVER")]
3971 Cover,
3972 #[doc(alias = "GTK_CONTENT_FIT_SCALE_DOWN")]
3975 ScaleDown,
3976 #[doc(hidden)]
3977 __Unknown(i32),
3978}
3979
3980#[cfg(feature = "v4_8")]
3981#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
3982#[doc(hidden)]
3983impl IntoGlib for ContentFit {
3984 type GlibType = ffi::GtkContentFit;
3985
3986 #[inline]
3987 fn into_glib(self) -> ffi::GtkContentFit {
3988 match self {
3989 Self::Fill => ffi::GTK_CONTENT_FIT_FILL,
3990 Self::Contain => ffi::GTK_CONTENT_FIT_CONTAIN,
3991 Self::Cover => ffi::GTK_CONTENT_FIT_COVER,
3992 Self::ScaleDown => ffi::GTK_CONTENT_FIT_SCALE_DOWN,
3993 Self::__Unknown(value) => value,
3994 }
3995 }
3996}
3997
3998#[cfg(feature = "v4_8")]
3999#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4000#[doc(hidden)]
4001impl FromGlib<ffi::GtkContentFit> for ContentFit {
4002 #[inline]
4003 unsafe fn from_glib(value: ffi::GtkContentFit) -> Self {
4004 skip_assert_initialized!();
4005
4006 match value {
4007 ffi::GTK_CONTENT_FIT_FILL => Self::Fill,
4008 ffi::GTK_CONTENT_FIT_CONTAIN => Self::Contain,
4009 ffi::GTK_CONTENT_FIT_COVER => Self::Cover,
4010 ffi::GTK_CONTENT_FIT_SCALE_DOWN => Self::ScaleDown,
4011 value => Self::__Unknown(value),
4012 }
4013 }
4014}
4015
4016#[cfg(feature = "v4_8")]
4017#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4018impl StaticType for ContentFit {
4019 #[inline]
4020 #[doc(alias = "gtk_content_fit_get_type")]
4021 fn static_type() -> glib::Type {
4022 unsafe { from_glib(ffi::gtk_content_fit_get_type()) }
4023 }
4024}
4025
4026#[cfg(feature = "v4_8")]
4027#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4028impl glib::HasParamSpec for ContentFit {
4029 type ParamSpec = glib::ParamSpecEnum;
4030 type SetValue = Self;
4031 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4032
4033 fn param_spec_builder() -> Self::BuilderFn {
4034 Self::ParamSpec::builder_with_default
4035 }
4036}
4037
4038#[cfg(feature = "v4_8")]
4039#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4040impl glib::value::ValueType for ContentFit {
4041 type Type = Self;
4042}
4043
4044#[cfg(feature = "v4_8")]
4045#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4046unsafe impl<'a> glib::value::FromValue<'a> for ContentFit {
4047 type Checker = glib::value::GenericValueTypeChecker<Self>;
4048
4049 #[inline]
4050 unsafe fn from_value(value: &'a glib::Value) -> Self {
4051 skip_assert_initialized!();
4052 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4053 }
4054}
4055
4056#[cfg(feature = "v4_8")]
4057#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4058impl ToValue for ContentFit {
4059 #[inline]
4060 fn to_value(&self) -> glib::Value {
4061 let mut value = glib::Value::for_value_type::<Self>();
4062 unsafe {
4063 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4064 }
4065 value
4066 }
4067
4068 #[inline]
4069 fn value_type(&self) -> glib::Type {
4070 Self::static_type()
4071 }
4072}
4073
4074#[cfg(feature = "v4_8")]
4075#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4076impl From<ContentFit> for glib::Value {
4077 #[inline]
4078 fn from(v: ContentFit) -> Self {
4079 skip_assert_initialized!();
4080 ToValue::to_value(&v)
4081 }
4082}
4083
4084#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4089#[non_exhaustive]
4090#[doc(alias = "GtkCornerType")]
4091pub enum CornerType {
4092 #[doc(alias = "GTK_CORNER_TOP_LEFT")]
4095 TopLeft,
4096 #[doc(alias = "GTK_CORNER_BOTTOM_LEFT")]
4099 BottomLeft,
4100 #[doc(alias = "GTK_CORNER_TOP_RIGHT")]
4103 TopRight,
4104 #[doc(alias = "GTK_CORNER_BOTTOM_RIGHT")]
4107 BottomRight,
4108 #[doc(hidden)]
4109 __Unknown(i32),
4110}
4111
4112#[doc(hidden)]
4113impl IntoGlib for CornerType {
4114 type GlibType = ffi::GtkCornerType;
4115
4116 #[inline]
4117 fn into_glib(self) -> ffi::GtkCornerType {
4118 match self {
4119 Self::TopLeft => ffi::GTK_CORNER_TOP_LEFT,
4120 Self::BottomLeft => ffi::GTK_CORNER_BOTTOM_LEFT,
4121 Self::TopRight => ffi::GTK_CORNER_TOP_RIGHT,
4122 Self::BottomRight => ffi::GTK_CORNER_BOTTOM_RIGHT,
4123 Self::__Unknown(value) => value,
4124 }
4125 }
4126}
4127
4128#[doc(hidden)]
4129impl FromGlib<ffi::GtkCornerType> for CornerType {
4130 #[inline]
4131 unsafe fn from_glib(value: ffi::GtkCornerType) -> Self {
4132 skip_assert_initialized!();
4133
4134 match value {
4135 ffi::GTK_CORNER_TOP_LEFT => Self::TopLeft,
4136 ffi::GTK_CORNER_BOTTOM_LEFT => Self::BottomLeft,
4137 ffi::GTK_CORNER_TOP_RIGHT => Self::TopRight,
4138 ffi::GTK_CORNER_BOTTOM_RIGHT => Self::BottomRight,
4139 value => Self::__Unknown(value),
4140 }
4141 }
4142}
4143
4144impl StaticType for CornerType {
4145 #[inline]
4146 #[doc(alias = "gtk_corner_type_get_type")]
4147 fn static_type() -> glib::Type {
4148 unsafe { from_glib(ffi::gtk_corner_type_get_type()) }
4149 }
4150}
4151
4152impl glib::HasParamSpec for CornerType {
4153 type ParamSpec = glib::ParamSpecEnum;
4154 type SetValue = Self;
4155 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4156
4157 fn param_spec_builder() -> Self::BuilderFn {
4158 Self::ParamSpec::builder_with_default
4159 }
4160}
4161
4162impl glib::value::ValueType for CornerType {
4163 type Type = Self;
4164}
4165
4166unsafe impl<'a> glib::value::FromValue<'a> for CornerType {
4167 type Checker = glib::value::GenericValueTypeChecker<Self>;
4168
4169 #[inline]
4170 unsafe fn from_value(value: &'a glib::Value) -> Self {
4171 skip_assert_initialized!();
4172 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4173 }
4174}
4175
4176impl ToValue for CornerType {
4177 #[inline]
4178 fn to_value(&self) -> glib::Value {
4179 let mut value = glib::Value::for_value_type::<Self>();
4180 unsafe {
4181 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4182 }
4183 value
4184 }
4185
4186 #[inline]
4187 fn value_type(&self) -> glib::Type {
4188 Self::static_type()
4189 }
4190}
4191
4192impl From<CornerType> for glib::Value {
4193 #[inline]
4194 fn from(v: CornerType) -> Self {
4195 skip_assert_initialized!();
4196 ToValue::to_value(&v)
4197 }
4198}
4199
4200#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4205#[non_exhaustive]
4206#[doc(alias = "GtkCssParserError")]
4207pub enum CssParserError {
4208 #[doc(alias = "GTK_CSS_PARSER_ERROR_FAILED")]
4210 Failed,
4211 #[doc(alias = "GTK_CSS_PARSER_ERROR_SYNTAX")]
4213 Syntax,
4214 #[doc(alias = "GTK_CSS_PARSER_ERROR_IMPORT")]
4216 Import,
4217 #[doc(alias = "GTK_CSS_PARSER_ERROR_NAME")]
4219 Name,
4220 #[doc(alias = "GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE")]
4222 UnknownValue,
4223 #[doc(hidden)]
4224 __Unknown(i32),
4225}
4226
4227#[doc(hidden)]
4228impl IntoGlib for CssParserError {
4229 type GlibType = ffi::GtkCssParserError;
4230
4231 #[inline]
4232 fn into_glib(self) -> ffi::GtkCssParserError {
4233 match self {
4234 Self::Failed => ffi::GTK_CSS_PARSER_ERROR_FAILED,
4235 Self::Syntax => ffi::GTK_CSS_PARSER_ERROR_SYNTAX,
4236 Self::Import => ffi::GTK_CSS_PARSER_ERROR_IMPORT,
4237 Self::Name => ffi::GTK_CSS_PARSER_ERROR_NAME,
4238 Self::UnknownValue => ffi::GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE,
4239 Self::__Unknown(value) => value,
4240 }
4241 }
4242}
4243
4244#[doc(hidden)]
4245impl FromGlib<ffi::GtkCssParserError> for CssParserError {
4246 #[inline]
4247 unsafe fn from_glib(value: ffi::GtkCssParserError) -> Self {
4248 skip_assert_initialized!();
4249
4250 match value {
4251 ffi::GTK_CSS_PARSER_ERROR_FAILED => Self::Failed,
4252 ffi::GTK_CSS_PARSER_ERROR_SYNTAX => Self::Syntax,
4253 ffi::GTK_CSS_PARSER_ERROR_IMPORT => Self::Import,
4254 ffi::GTK_CSS_PARSER_ERROR_NAME => Self::Name,
4255 ffi::GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE => Self::UnknownValue,
4256 value => Self::__Unknown(value),
4257 }
4258 }
4259}
4260
4261impl glib::error::ErrorDomain for CssParserError {
4262 #[inline]
4263 fn domain() -> glib::Quark {
4264 skip_assert_initialized!();
4265
4266 unsafe { from_glib(ffi::gtk_css_parser_error_quark()) }
4267 }
4268
4269 #[inline]
4270 fn code(self) -> i32 {
4271 self.into_glib()
4272 }
4273
4274 #[inline]
4275 #[allow(clippy::match_single_binding)]
4276 fn from(code: i32) -> Option<Self> {
4277 skip_assert_initialized!();
4278 match unsafe { from_glib(code) } {
4279 Self::__Unknown(_) => Some(Self::Failed),
4280 value => Some(value),
4281 }
4282 }
4283}
4284
4285#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4290#[non_exhaustive]
4291#[doc(alias = "GtkCssParserWarning")]
4292pub enum CssParserWarning {
4293 #[doc(alias = "GTK_CSS_PARSER_WARNING_DEPRECATED")]
4296 Deprecated,
4297 #[doc(alias = "GTK_CSS_PARSER_WARNING_SYNTAX")]
4300 Syntax,
4301 #[doc(alias = "GTK_CSS_PARSER_WARNING_UNIMPLEMENTED")]
4303 Unimplemented,
4304 #[doc(hidden)]
4305 __Unknown(i32),
4306}
4307
4308#[doc(hidden)]
4309impl IntoGlib for CssParserWarning {
4310 type GlibType = ffi::GtkCssParserWarning;
4311
4312 #[inline]
4313 fn into_glib(self) -> ffi::GtkCssParserWarning {
4314 match self {
4315 Self::Deprecated => ffi::GTK_CSS_PARSER_WARNING_DEPRECATED,
4316 Self::Syntax => ffi::GTK_CSS_PARSER_WARNING_SYNTAX,
4317 Self::Unimplemented => ffi::GTK_CSS_PARSER_WARNING_UNIMPLEMENTED,
4318 Self::__Unknown(value) => value,
4319 }
4320 }
4321}
4322
4323#[doc(hidden)]
4324impl FromGlib<ffi::GtkCssParserWarning> for CssParserWarning {
4325 #[inline]
4326 unsafe fn from_glib(value: ffi::GtkCssParserWarning) -> Self {
4327 skip_assert_initialized!();
4328
4329 match value {
4330 ffi::GTK_CSS_PARSER_WARNING_DEPRECATED => Self::Deprecated,
4331 ffi::GTK_CSS_PARSER_WARNING_SYNTAX => Self::Syntax,
4332 ffi::GTK_CSS_PARSER_WARNING_UNIMPLEMENTED => Self::Unimplemented,
4333 value => Self::__Unknown(value),
4334 }
4335 }
4336}
4337
4338#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4340#[non_exhaustive]
4341#[doc(alias = "GtkDeleteType")]
4342pub enum DeleteType {
4343 #[doc(alias = "GTK_DELETE_CHARS")]
4345 Chars,
4346 #[doc(alias = "GTK_DELETE_WORD_ENDS")]
4349 WordEnds,
4350 #[doc(alias = "GTK_DELETE_WORDS")]
4352 Words,
4353 #[doc(alias = "GTK_DELETE_DISPLAY_LINES")]
4358 DisplayLines,
4359 #[doc(alias = "GTK_DELETE_DISPLAY_LINE_ENDS")]
4362 DisplayLineEnds,
4363 #[doc(alias = "GTK_DELETE_PARAGRAPH_ENDS")]
4366 ParagraphEnds,
4367 #[doc(alias = "GTK_DELETE_PARAGRAPHS")]
4369 Paragraphs,
4370 #[doc(alias = "GTK_DELETE_WHITESPACE")]
4372 Whitespace,
4373 #[doc(hidden)]
4374 __Unknown(i32),
4375}
4376
4377#[doc(hidden)]
4378impl IntoGlib for DeleteType {
4379 type GlibType = ffi::GtkDeleteType;
4380
4381 #[inline]
4382 fn into_glib(self) -> ffi::GtkDeleteType {
4383 match self {
4384 Self::Chars => ffi::GTK_DELETE_CHARS,
4385 Self::WordEnds => ffi::GTK_DELETE_WORD_ENDS,
4386 Self::Words => ffi::GTK_DELETE_WORDS,
4387 Self::DisplayLines => ffi::GTK_DELETE_DISPLAY_LINES,
4388 Self::DisplayLineEnds => ffi::GTK_DELETE_DISPLAY_LINE_ENDS,
4389 Self::ParagraphEnds => ffi::GTK_DELETE_PARAGRAPH_ENDS,
4390 Self::Paragraphs => ffi::GTK_DELETE_PARAGRAPHS,
4391 Self::Whitespace => ffi::GTK_DELETE_WHITESPACE,
4392 Self::__Unknown(value) => value,
4393 }
4394 }
4395}
4396
4397#[doc(hidden)]
4398impl FromGlib<ffi::GtkDeleteType> for DeleteType {
4399 #[inline]
4400 unsafe fn from_glib(value: ffi::GtkDeleteType) -> Self {
4401 skip_assert_initialized!();
4402
4403 match value {
4404 ffi::GTK_DELETE_CHARS => Self::Chars,
4405 ffi::GTK_DELETE_WORD_ENDS => Self::WordEnds,
4406 ffi::GTK_DELETE_WORDS => Self::Words,
4407 ffi::GTK_DELETE_DISPLAY_LINES => Self::DisplayLines,
4408 ffi::GTK_DELETE_DISPLAY_LINE_ENDS => Self::DisplayLineEnds,
4409 ffi::GTK_DELETE_PARAGRAPH_ENDS => Self::ParagraphEnds,
4410 ffi::GTK_DELETE_PARAGRAPHS => Self::Paragraphs,
4411 ffi::GTK_DELETE_WHITESPACE => Self::Whitespace,
4412 value => Self::__Unknown(value),
4413 }
4414 }
4415}
4416
4417impl StaticType for DeleteType {
4418 #[inline]
4419 #[doc(alias = "gtk_delete_type_get_type")]
4420 fn static_type() -> glib::Type {
4421 unsafe { from_glib(ffi::gtk_delete_type_get_type()) }
4422 }
4423}
4424
4425impl glib::HasParamSpec for DeleteType {
4426 type ParamSpec = glib::ParamSpecEnum;
4427 type SetValue = Self;
4428 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4429
4430 fn param_spec_builder() -> Self::BuilderFn {
4431 Self::ParamSpec::builder_with_default
4432 }
4433}
4434
4435impl glib::value::ValueType for DeleteType {
4436 type Type = Self;
4437}
4438
4439unsafe impl<'a> glib::value::FromValue<'a> for DeleteType {
4440 type Checker = glib::value::GenericValueTypeChecker<Self>;
4441
4442 #[inline]
4443 unsafe fn from_value(value: &'a glib::Value) -> Self {
4444 skip_assert_initialized!();
4445 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4446 }
4447}
4448
4449impl ToValue for DeleteType {
4450 #[inline]
4451 fn to_value(&self) -> glib::Value {
4452 let mut value = glib::Value::for_value_type::<Self>();
4453 unsafe {
4454 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4455 }
4456 value
4457 }
4458
4459 #[inline]
4460 fn value_type(&self) -> glib::Type {
4461 Self::static_type()
4462 }
4463}
4464
4465impl From<DeleteType> for glib::Value {
4466 #[inline]
4467 fn from(v: DeleteType) -> Self {
4468 skip_assert_initialized!();
4469 ToValue::to_value(&v)
4470 }
4471}
4472
4473#[cfg(feature = "v4_10")]
4476#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4477#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4478#[non_exhaustive]
4479#[doc(alias = "GtkDialogError")]
4480pub enum DialogError {
4481 #[doc(alias = "GTK_DIALOG_ERROR_FAILED")]
4484 Failed,
4485 #[doc(alias = "GTK_DIALOG_ERROR_CANCELLED")]
4488 Cancelled,
4489 #[doc(alias = "GTK_DIALOG_ERROR_DISMISSED")]
4492 Dismissed,
4493 #[doc(hidden)]
4494 __Unknown(i32),
4495}
4496
4497#[cfg(feature = "v4_10")]
4498#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4499#[doc(hidden)]
4500impl IntoGlib for DialogError {
4501 type GlibType = ffi::GtkDialogError;
4502
4503 #[inline]
4504 fn into_glib(self) -> ffi::GtkDialogError {
4505 match self {
4506 Self::Failed => ffi::GTK_DIALOG_ERROR_FAILED,
4507 Self::Cancelled => ffi::GTK_DIALOG_ERROR_CANCELLED,
4508 Self::Dismissed => ffi::GTK_DIALOG_ERROR_DISMISSED,
4509 Self::__Unknown(value) => value,
4510 }
4511 }
4512}
4513
4514#[cfg(feature = "v4_10")]
4515#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4516#[doc(hidden)]
4517impl FromGlib<ffi::GtkDialogError> for DialogError {
4518 #[inline]
4519 unsafe fn from_glib(value: ffi::GtkDialogError) -> Self {
4520 skip_assert_initialized!();
4521
4522 match value {
4523 ffi::GTK_DIALOG_ERROR_FAILED => Self::Failed,
4524 ffi::GTK_DIALOG_ERROR_CANCELLED => Self::Cancelled,
4525 ffi::GTK_DIALOG_ERROR_DISMISSED => Self::Dismissed,
4526 value => Self::__Unknown(value),
4527 }
4528 }
4529}
4530
4531#[cfg(feature = "v4_10")]
4532#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4533impl glib::error::ErrorDomain for DialogError {
4534 #[inline]
4535 fn domain() -> glib::Quark {
4536 skip_assert_initialized!();
4537
4538 unsafe { from_glib(ffi::gtk_dialog_error_quark()) }
4539 }
4540
4541 #[inline]
4542 fn code(self) -> i32 {
4543 self.into_glib()
4544 }
4545
4546 #[inline]
4547 #[allow(clippy::match_single_binding)]
4548 fn from(code: i32) -> Option<Self> {
4549 skip_assert_initialized!();
4550 match unsafe { from_glib(code) } {
4551 Self::__Unknown(_) => Some(Self::Failed),
4552 value => Some(value),
4553 }
4554 }
4555}
4556
4557#[cfg(feature = "v4_10")]
4558#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4559impl StaticType for DialogError {
4560 #[inline]
4561 #[doc(alias = "gtk_dialog_error_get_type")]
4562 fn static_type() -> glib::Type {
4563 unsafe { from_glib(ffi::gtk_dialog_error_get_type()) }
4564 }
4565}
4566
4567#[cfg(feature = "v4_10")]
4568#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4569impl glib::HasParamSpec for DialogError {
4570 type ParamSpec = glib::ParamSpecEnum;
4571 type SetValue = Self;
4572 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4573
4574 fn param_spec_builder() -> Self::BuilderFn {
4575 Self::ParamSpec::builder_with_default
4576 }
4577}
4578
4579#[cfg(feature = "v4_10")]
4580#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4581impl glib::value::ValueType for DialogError {
4582 type Type = Self;
4583}
4584
4585#[cfg(feature = "v4_10")]
4586#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4587unsafe impl<'a> glib::value::FromValue<'a> for DialogError {
4588 type Checker = glib::value::GenericValueTypeChecker<Self>;
4589
4590 #[inline]
4591 unsafe fn from_value(value: &'a glib::Value) -> Self {
4592 skip_assert_initialized!();
4593 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4594 }
4595}
4596
4597#[cfg(feature = "v4_10")]
4598#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4599impl ToValue for DialogError {
4600 #[inline]
4601 fn to_value(&self) -> glib::Value {
4602 let mut value = glib::Value::for_value_type::<Self>();
4603 unsafe {
4604 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4605 }
4606 value
4607 }
4608
4609 #[inline]
4610 fn value_type(&self) -> glib::Type {
4611 Self::static_type()
4612 }
4613}
4614
4615#[cfg(feature = "v4_10")]
4616#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4617impl From<DialogError> for glib::Value {
4618 #[inline]
4619 fn from(v: DialogError) -> Self {
4620 skip_assert_initialized!();
4621 ToValue::to_value(&v)
4622 }
4623}
4624
4625#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4627#[non_exhaustive]
4628#[doc(alias = "GtkDirectionType")]
4629pub enum DirectionType {
4630 #[doc(alias = "GTK_DIR_TAB_FORWARD")]
4632 TabForward,
4633 #[doc(alias = "GTK_DIR_TAB_BACKWARD")]
4635 TabBackward,
4636 #[doc(alias = "GTK_DIR_UP")]
4638 Up,
4639 #[doc(alias = "GTK_DIR_DOWN")]
4641 Down,
4642 #[doc(alias = "GTK_DIR_LEFT")]
4644 Left,
4645 #[doc(alias = "GTK_DIR_RIGHT")]
4647 Right,
4648 #[doc(hidden)]
4649 __Unknown(i32),
4650}
4651
4652#[doc(hidden)]
4653impl IntoGlib for DirectionType {
4654 type GlibType = ffi::GtkDirectionType;
4655
4656 #[inline]
4657 fn into_glib(self) -> ffi::GtkDirectionType {
4658 match self {
4659 Self::TabForward => ffi::GTK_DIR_TAB_FORWARD,
4660 Self::TabBackward => ffi::GTK_DIR_TAB_BACKWARD,
4661 Self::Up => ffi::GTK_DIR_UP,
4662 Self::Down => ffi::GTK_DIR_DOWN,
4663 Self::Left => ffi::GTK_DIR_LEFT,
4664 Self::Right => ffi::GTK_DIR_RIGHT,
4665 Self::__Unknown(value) => value,
4666 }
4667 }
4668}
4669
4670#[doc(hidden)]
4671impl FromGlib<ffi::GtkDirectionType> for DirectionType {
4672 #[inline]
4673 unsafe fn from_glib(value: ffi::GtkDirectionType) -> Self {
4674 skip_assert_initialized!();
4675
4676 match value {
4677 ffi::GTK_DIR_TAB_FORWARD => Self::TabForward,
4678 ffi::GTK_DIR_TAB_BACKWARD => Self::TabBackward,
4679 ffi::GTK_DIR_UP => Self::Up,
4680 ffi::GTK_DIR_DOWN => Self::Down,
4681 ffi::GTK_DIR_LEFT => Self::Left,
4682 ffi::GTK_DIR_RIGHT => Self::Right,
4683 value => Self::__Unknown(value),
4684 }
4685 }
4686}
4687
4688impl StaticType for DirectionType {
4689 #[inline]
4690 #[doc(alias = "gtk_direction_type_get_type")]
4691 fn static_type() -> glib::Type {
4692 unsafe { from_glib(ffi::gtk_direction_type_get_type()) }
4693 }
4694}
4695
4696impl glib::HasParamSpec for DirectionType {
4697 type ParamSpec = glib::ParamSpecEnum;
4698 type SetValue = Self;
4699 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4700
4701 fn param_spec_builder() -> Self::BuilderFn {
4702 Self::ParamSpec::builder_with_default
4703 }
4704}
4705
4706impl glib::value::ValueType for DirectionType {
4707 type Type = Self;
4708}
4709
4710unsafe impl<'a> glib::value::FromValue<'a> for DirectionType {
4711 type Checker = glib::value::GenericValueTypeChecker<Self>;
4712
4713 #[inline]
4714 unsafe fn from_value(value: &'a glib::Value) -> Self {
4715 skip_assert_initialized!();
4716 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4717 }
4718}
4719
4720impl ToValue for DirectionType {
4721 #[inline]
4722 fn to_value(&self) -> glib::Value {
4723 let mut value = glib::Value::for_value_type::<Self>();
4724 unsafe {
4725 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4726 }
4727 value
4728 }
4729
4730 #[inline]
4731 fn value_type(&self) -> glib::Type {
4732 Self::static_type()
4733 }
4734}
4735
4736impl From<DirectionType> for glib::Value {
4737 #[inline]
4738 fn from(v: DirectionType) -> Self {
4739 skip_assert_initialized!();
4740 ToValue::to_value(&v)
4741 }
4742}
4743
4744#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4749#[non_exhaustive]
4750#[doc(alias = "GtkEditableProperties")]
4751pub enum EditableProperties {
4752 #[doc(alias = "GTK_EDITABLE_PROP_TEXT")]
4754 PropText,
4755 #[doc(alias = "GTK_EDITABLE_PROP_CURSOR_POSITION")]
4757 PropCursorPosition,
4758 #[doc(alias = "GTK_EDITABLE_PROP_SELECTION_BOUND")]
4760 PropSelectionBound,
4761 #[doc(alias = "GTK_EDITABLE_PROP_EDITABLE")]
4763 PropEditable,
4764 #[doc(alias = "GTK_EDITABLE_PROP_WIDTH_CHARS")]
4766 PropWidthChars,
4767 #[doc(alias = "GTK_EDITABLE_PROP_MAX_WIDTH_CHARS")]
4769 PropMaxWidthChars,
4770 #[doc(alias = "GTK_EDITABLE_PROP_XALIGN")]
4772 PropXalign,
4773 #[doc(alias = "GTK_EDITABLE_PROP_ENABLE_UNDO")]
4775 PropEnableUndo,
4776 #[doc(alias = "GTK_EDITABLE_PROP_COMPLETE_TEXT")]
4778 PropCompleteText,
4779 #[doc(alias = "GTK_EDITABLE_PROP_INPUT_INTERCEPTOR")]
4781 PropInputInterceptor,
4782 #[doc(alias = "GTK_EDITABLE_NUM_PROPERTIES")]
4784 NumProperties,
4785 #[doc(hidden)]
4786 __Unknown(i32),
4787}
4788
4789#[doc(hidden)]
4790impl IntoGlib for EditableProperties {
4791 type GlibType = ffi::GtkEditableProperties;
4792
4793 #[inline]
4794 fn into_glib(self) -> ffi::GtkEditableProperties {
4795 match self {
4796 Self::PropText => ffi::GTK_EDITABLE_PROP_TEXT,
4797 Self::PropCursorPosition => ffi::GTK_EDITABLE_PROP_CURSOR_POSITION,
4798 Self::PropSelectionBound => ffi::GTK_EDITABLE_PROP_SELECTION_BOUND,
4799 Self::PropEditable => ffi::GTK_EDITABLE_PROP_EDITABLE,
4800 Self::PropWidthChars => ffi::GTK_EDITABLE_PROP_WIDTH_CHARS,
4801 Self::PropMaxWidthChars => ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS,
4802 Self::PropXalign => ffi::GTK_EDITABLE_PROP_XALIGN,
4803 Self::PropEnableUndo => ffi::GTK_EDITABLE_PROP_ENABLE_UNDO,
4804 Self::PropCompleteText => ffi::GTK_EDITABLE_PROP_COMPLETE_TEXT,
4805 Self::PropInputInterceptor => ffi::GTK_EDITABLE_PROP_INPUT_INTERCEPTOR,
4806 Self::NumProperties => ffi::GTK_EDITABLE_NUM_PROPERTIES,
4807 Self::__Unknown(value) => value,
4808 }
4809 }
4810}
4811
4812#[doc(hidden)]
4813impl FromGlib<ffi::GtkEditableProperties> for EditableProperties {
4814 #[inline]
4815 unsafe fn from_glib(value: ffi::GtkEditableProperties) -> Self {
4816 skip_assert_initialized!();
4817
4818 match value {
4819 ffi::GTK_EDITABLE_PROP_TEXT => Self::PropText,
4820 ffi::GTK_EDITABLE_PROP_CURSOR_POSITION => Self::PropCursorPosition,
4821 ffi::GTK_EDITABLE_PROP_SELECTION_BOUND => Self::PropSelectionBound,
4822 ffi::GTK_EDITABLE_PROP_EDITABLE => Self::PropEditable,
4823 ffi::GTK_EDITABLE_PROP_WIDTH_CHARS => Self::PropWidthChars,
4824 ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS => Self::PropMaxWidthChars,
4825 ffi::GTK_EDITABLE_PROP_XALIGN => Self::PropXalign,
4826 ffi::GTK_EDITABLE_PROP_ENABLE_UNDO => Self::PropEnableUndo,
4827 ffi::GTK_EDITABLE_PROP_COMPLETE_TEXT => Self::PropCompleteText,
4828 ffi::GTK_EDITABLE_PROP_INPUT_INTERCEPTOR => Self::PropInputInterceptor,
4829 ffi::GTK_EDITABLE_NUM_PROPERTIES => Self::NumProperties,
4830 value => Self::__Unknown(value),
4831 }
4832 }
4833}
4834
4835impl StaticType for EditableProperties {
4836 #[inline]
4837 #[doc(alias = "gtk_editable_properties_get_type")]
4838 fn static_type() -> glib::Type {
4839 unsafe { from_glib(ffi::gtk_editable_properties_get_type()) }
4840 }
4841}
4842
4843impl glib::HasParamSpec for EditableProperties {
4844 type ParamSpec = glib::ParamSpecEnum;
4845 type SetValue = Self;
4846 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4847
4848 fn param_spec_builder() -> Self::BuilderFn {
4849 Self::ParamSpec::builder_with_default
4850 }
4851}
4852
4853impl glib::value::ValueType for EditableProperties {
4854 type Type = Self;
4855}
4856
4857unsafe impl<'a> glib::value::FromValue<'a> for EditableProperties {
4858 type Checker = glib::value::GenericValueTypeChecker<Self>;
4859
4860 #[inline]
4861 unsafe fn from_value(value: &'a glib::Value) -> Self {
4862 skip_assert_initialized!();
4863 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4864 }
4865}
4866
4867impl ToValue for EditableProperties {
4868 #[inline]
4869 fn to_value(&self) -> glib::Value {
4870 let mut value = glib::Value::for_value_type::<Self>();
4871 unsafe {
4872 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4873 }
4874 value
4875 }
4876
4877 #[inline]
4878 fn value_type(&self) -> glib::Type {
4879 Self::static_type()
4880 }
4881}
4882
4883impl From<EditableProperties> for glib::Value {
4884 #[inline]
4885 fn from(v: EditableProperties) -> Self {
4886 skip_assert_initialized!();
4887 ToValue::to_value(&v)
4888 }
4889}
4890
4891#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4893#[non_exhaustive]
4894#[doc(alias = "GtkEntryIconPosition")]
4895pub enum EntryIconPosition {
4896 #[doc(alias = "GTK_ENTRY_ICON_PRIMARY")]
4898 Primary,
4899 #[doc(alias = "GTK_ENTRY_ICON_SECONDARY")]
4901 Secondary,
4902 #[doc(hidden)]
4903 __Unknown(i32),
4904}
4905
4906#[doc(hidden)]
4907impl IntoGlib for EntryIconPosition {
4908 type GlibType = ffi::GtkEntryIconPosition;
4909
4910 #[inline]
4911 fn into_glib(self) -> ffi::GtkEntryIconPosition {
4912 match self {
4913 Self::Primary => ffi::GTK_ENTRY_ICON_PRIMARY,
4914 Self::Secondary => ffi::GTK_ENTRY_ICON_SECONDARY,
4915 Self::__Unknown(value) => value,
4916 }
4917 }
4918}
4919
4920#[doc(hidden)]
4921impl FromGlib<ffi::GtkEntryIconPosition> for EntryIconPosition {
4922 #[inline]
4923 unsafe fn from_glib(value: ffi::GtkEntryIconPosition) -> Self {
4924 skip_assert_initialized!();
4925
4926 match value {
4927 ffi::GTK_ENTRY_ICON_PRIMARY => Self::Primary,
4928 ffi::GTK_ENTRY_ICON_SECONDARY => Self::Secondary,
4929 value => Self::__Unknown(value),
4930 }
4931 }
4932}
4933
4934impl StaticType for EntryIconPosition {
4935 #[inline]
4936 #[doc(alias = "gtk_entry_icon_position_get_type")]
4937 fn static_type() -> glib::Type {
4938 unsafe { from_glib(ffi::gtk_entry_icon_position_get_type()) }
4939 }
4940}
4941
4942impl glib::HasParamSpec for EntryIconPosition {
4943 type ParamSpec = glib::ParamSpecEnum;
4944 type SetValue = Self;
4945 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4946
4947 fn param_spec_builder() -> Self::BuilderFn {
4948 Self::ParamSpec::builder_with_default
4949 }
4950}
4951
4952impl glib::value::ValueType for EntryIconPosition {
4953 type Type = Self;
4954}
4955
4956unsafe impl<'a> glib::value::FromValue<'a> for EntryIconPosition {
4957 type Checker = glib::value::GenericValueTypeChecker<Self>;
4958
4959 #[inline]
4960 unsafe fn from_value(value: &'a glib::Value) -> Self {
4961 skip_assert_initialized!();
4962 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4963 }
4964}
4965
4966impl ToValue for EntryIconPosition {
4967 #[inline]
4968 fn to_value(&self) -> glib::Value {
4969 let mut value = glib::Value::for_value_type::<Self>();
4970 unsafe {
4971 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4972 }
4973 value
4974 }
4975
4976 #[inline]
4977 fn value_type(&self) -> glib::Type {
4978 Self::static_type()
4979 }
4980}
4981
4982impl From<EntryIconPosition> for glib::Value {
4983 #[inline]
4984 fn from(v: EntryIconPosition) -> Self {
4985 skip_assert_initialized!();
4986 ToValue::to_value(&v)
4987 }
4988}
4989
4990#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4992#[non_exhaustive]
4993#[doc(alias = "GtkEventSequenceState")]
4994pub enum EventSequenceState {
4995 #[doc(alias = "GTK_EVENT_SEQUENCE_NONE")]
4997 None,
4998 #[doc(alias = "GTK_EVENT_SEQUENCE_CLAIMED")]
5000 Claimed,
5001 #[doc(alias = "GTK_EVENT_SEQUENCE_DENIED")]
5003 Denied,
5004 #[doc(hidden)]
5005 __Unknown(i32),
5006}
5007
5008#[doc(hidden)]
5009impl IntoGlib for EventSequenceState {
5010 type GlibType = ffi::GtkEventSequenceState;
5011
5012 #[inline]
5013 fn into_glib(self) -> ffi::GtkEventSequenceState {
5014 match self {
5015 Self::None => ffi::GTK_EVENT_SEQUENCE_NONE,
5016 Self::Claimed => ffi::GTK_EVENT_SEQUENCE_CLAIMED,
5017 Self::Denied => ffi::GTK_EVENT_SEQUENCE_DENIED,
5018 Self::__Unknown(value) => value,
5019 }
5020 }
5021}
5022
5023#[doc(hidden)]
5024impl FromGlib<ffi::GtkEventSequenceState> for EventSequenceState {
5025 #[inline]
5026 unsafe fn from_glib(value: ffi::GtkEventSequenceState) -> Self {
5027 skip_assert_initialized!();
5028
5029 match value {
5030 ffi::GTK_EVENT_SEQUENCE_NONE => Self::None,
5031 ffi::GTK_EVENT_SEQUENCE_CLAIMED => Self::Claimed,
5032 ffi::GTK_EVENT_SEQUENCE_DENIED => Self::Denied,
5033 value => Self::__Unknown(value),
5034 }
5035 }
5036}
5037
5038impl StaticType for EventSequenceState {
5039 #[inline]
5040 #[doc(alias = "gtk_event_sequence_state_get_type")]
5041 fn static_type() -> glib::Type {
5042 unsafe { from_glib(ffi::gtk_event_sequence_state_get_type()) }
5043 }
5044}
5045
5046impl glib::HasParamSpec for EventSequenceState {
5047 type ParamSpec = glib::ParamSpecEnum;
5048 type SetValue = Self;
5049 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5050
5051 fn param_spec_builder() -> Self::BuilderFn {
5052 Self::ParamSpec::builder_with_default
5053 }
5054}
5055
5056impl glib::value::ValueType for EventSequenceState {
5057 type Type = Self;
5058}
5059
5060unsafe impl<'a> glib::value::FromValue<'a> for EventSequenceState {
5061 type Checker = glib::value::GenericValueTypeChecker<Self>;
5062
5063 #[inline]
5064 unsafe fn from_value(value: &'a glib::Value) -> Self {
5065 skip_assert_initialized!();
5066 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5067 }
5068}
5069
5070impl ToValue for EventSequenceState {
5071 #[inline]
5072 fn to_value(&self) -> glib::Value {
5073 let mut value = glib::Value::for_value_type::<Self>();
5074 unsafe {
5075 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5076 }
5077 value
5078 }
5079
5080 #[inline]
5081 fn value_type(&self) -> glib::Type {
5082 Self::static_type()
5083 }
5084}
5085
5086impl From<EventSequenceState> for glib::Value {
5087 #[inline]
5088 fn from(v: EventSequenceState) -> Self {
5089 skip_assert_initialized!();
5090 ToValue::to_value(&v)
5091 }
5092}
5093
5094#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5097#[non_exhaustive]
5098#[doc(alias = "GtkFileChooserAction")]
5099pub enum FileChooserAction {
5100 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_OPEN")]
5103 Open,
5104 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SAVE")]
5108 Save,
5109 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER")]
5113 SelectFolder,
5114 #[doc(hidden)]
5115 __Unknown(i32),
5116}
5117
5118#[doc(hidden)]
5119impl IntoGlib for FileChooserAction {
5120 type GlibType = ffi::GtkFileChooserAction;
5121
5122 #[inline]
5123 fn into_glib(self) -> ffi::GtkFileChooserAction {
5124 match self {
5125 Self::Open => ffi::GTK_FILE_CHOOSER_ACTION_OPEN,
5126 Self::Save => ffi::GTK_FILE_CHOOSER_ACTION_SAVE,
5127 Self::SelectFolder => ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
5128 Self::__Unknown(value) => value,
5129 }
5130 }
5131}
5132
5133#[doc(hidden)]
5134impl FromGlib<ffi::GtkFileChooserAction> for FileChooserAction {
5135 #[inline]
5136 unsafe fn from_glib(value: ffi::GtkFileChooserAction) -> Self {
5137 skip_assert_initialized!();
5138
5139 match value {
5140 ffi::GTK_FILE_CHOOSER_ACTION_OPEN => Self::Open,
5141 ffi::GTK_FILE_CHOOSER_ACTION_SAVE => Self::Save,
5142 ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER => Self::SelectFolder,
5143 value => Self::__Unknown(value),
5144 }
5145 }
5146}
5147
5148impl StaticType for FileChooserAction {
5149 #[inline]
5150 #[doc(alias = "gtk_file_chooser_action_get_type")]
5151 fn static_type() -> glib::Type {
5152 unsafe { from_glib(ffi::gtk_file_chooser_action_get_type()) }
5153 }
5154}
5155
5156impl glib::HasParamSpec for FileChooserAction {
5157 type ParamSpec = glib::ParamSpecEnum;
5158 type SetValue = Self;
5159 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5160
5161 fn param_spec_builder() -> Self::BuilderFn {
5162 Self::ParamSpec::builder_with_default
5163 }
5164}
5165
5166impl glib::value::ValueType for FileChooserAction {
5167 type Type = Self;
5168}
5169
5170unsafe impl<'a> glib::value::FromValue<'a> for FileChooserAction {
5171 type Checker = glib::value::GenericValueTypeChecker<Self>;
5172
5173 #[inline]
5174 unsafe fn from_value(value: &'a glib::Value) -> Self {
5175 skip_assert_initialized!();
5176 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5177 }
5178}
5179
5180impl ToValue for FileChooserAction {
5181 #[inline]
5182 fn to_value(&self) -> glib::Value {
5183 let mut value = glib::Value::for_value_type::<Self>();
5184 unsafe {
5185 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5186 }
5187 value
5188 }
5189
5190 #[inline]
5191 fn value_type(&self) -> glib::Type {
5192 Self::static_type()
5193 }
5194}
5195
5196impl From<FileChooserAction> for glib::Value {
5197 #[inline]
5198 fn from(v: FileChooserAction) -> Self {
5199 skip_assert_initialized!();
5200 ToValue::to_value(&v)
5201 }
5202}
5203
5204#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
5211#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5212#[non_exhaustive]
5213#[doc(alias = "GtkFileChooserError")]
5214pub enum FileChooserError {
5215 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_NONEXISTENT")]
5217 Nonexistent,
5218 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_BAD_FILENAME")]
5220 BadFilename,
5221 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS")]
5224 AlreadyExists,
5225 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME")]
5228 IncompleteHostname,
5229 #[doc(hidden)]
5230 __Unknown(i32),
5231}
5232
5233#[allow(deprecated)]
5234#[doc(hidden)]
5235impl IntoGlib for FileChooserError {
5236 type GlibType = ffi::GtkFileChooserError;
5237
5238 #[inline]
5239 fn into_glib(self) -> ffi::GtkFileChooserError {
5240 match self {
5241 Self::Nonexistent => ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT,
5242 Self::BadFilename => ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME,
5243 Self::AlreadyExists => ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS,
5244 Self::IncompleteHostname => ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME,
5245 Self::__Unknown(value) => value,
5246 }
5247 }
5248}
5249
5250#[allow(deprecated)]
5251#[doc(hidden)]
5252impl FromGlib<ffi::GtkFileChooserError> for FileChooserError {
5253 #[inline]
5254 unsafe fn from_glib(value: ffi::GtkFileChooserError) -> Self {
5255 skip_assert_initialized!();
5256
5257 match value {
5258 ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT => Self::Nonexistent,
5259 ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME => Self::BadFilename,
5260 ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS => Self::AlreadyExists,
5261 ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME => Self::IncompleteHostname,
5262 value => Self::__Unknown(value),
5263 }
5264 }
5265}
5266
5267#[allow(deprecated)]
5268impl glib::error::ErrorDomain for FileChooserError {
5269 #[inline]
5270 fn domain() -> glib::Quark {
5271 skip_assert_initialized!();
5272
5273 unsafe { from_glib(ffi::gtk_file_chooser_error_quark()) }
5274 }
5275
5276 #[inline]
5277 fn code(self) -> i32 {
5278 self.into_glib()
5279 }
5280
5281 #[inline]
5282 #[allow(clippy::match_single_binding)]
5283 fn from(code: i32) -> Option<Self> {
5284 skip_assert_initialized!();
5285 match unsafe { from_glib(code) } {
5286 value => Some(value),
5287 }
5288 }
5289}
5290
5291#[allow(deprecated)]
5292impl StaticType for FileChooserError {
5293 #[inline]
5294 #[doc(alias = "gtk_file_chooser_error_get_type")]
5295 fn static_type() -> glib::Type {
5296 unsafe { from_glib(ffi::gtk_file_chooser_error_get_type()) }
5297 }
5298}
5299
5300#[allow(deprecated)]
5301impl glib::HasParamSpec for FileChooserError {
5302 type ParamSpec = glib::ParamSpecEnum;
5303 type SetValue = Self;
5304 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5305
5306 fn param_spec_builder() -> Self::BuilderFn {
5307 Self::ParamSpec::builder_with_default
5308 }
5309}
5310
5311#[allow(deprecated)]
5312impl glib::value::ValueType for FileChooserError {
5313 type Type = Self;
5314}
5315
5316#[allow(deprecated)]
5317unsafe impl<'a> glib::value::FromValue<'a> for FileChooserError {
5318 type Checker = glib::value::GenericValueTypeChecker<Self>;
5319
5320 #[inline]
5321 unsafe fn from_value(value: &'a glib::Value) -> Self {
5322 skip_assert_initialized!();
5323 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5324 }
5325}
5326
5327#[allow(deprecated)]
5328impl ToValue for FileChooserError {
5329 #[inline]
5330 fn to_value(&self) -> glib::Value {
5331 let mut value = glib::Value::for_value_type::<Self>();
5332 unsafe {
5333 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5334 }
5335 value
5336 }
5337
5338 #[inline]
5339 fn value_type(&self) -> glib::Type {
5340 Self::static_type()
5341 }
5342}
5343
5344#[allow(deprecated)]
5345impl From<FileChooserError> for glib::Value {
5346 #[inline]
5347 fn from(v: FileChooserError) -> Self {
5348 skip_assert_initialized!();
5349 ToValue::to_value(&v)
5350 }
5351}
5352
5353#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5362#[non_exhaustive]
5363#[doc(alias = "GtkFilterChange")]
5364pub enum FilterChange {
5365 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT")]
5368 Different,
5369 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT")]
5373 LessStrict,
5374 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT")]
5378 MoreStrict,
5379 #[cfg(feature = "v4_20")]
5384 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5385 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT_REWATCH")]
5386 DifferentRewatch,
5387 #[cfg(feature = "v4_20")]
5392 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5393 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT_REWATCH")]
5394 LessStrictRewatch,
5395 #[cfg(feature = "v4_20")]
5400 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5401 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT_REWATCH")]
5402 MoreStrictRewatch,
5403 #[doc(hidden)]
5404 __Unknown(i32),
5405}
5406
5407#[doc(hidden)]
5408impl IntoGlib for FilterChange {
5409 type GlibType = ffi::GtkFilterChange;
5410
5411 #[inline]
5412 fn into_glib(self) -> ffi::GtkFilterChange {
5413 match self {
5414 Self::Different => ffi::GTK_FILTER_CHANGE_DIFFERENT,
5415 Self::LessStrict => ffi::GTK_FILTER_CHANGE_LESS_STRICT,
5416 Self::MoreStrict => ffi::GTK_FILTER_CHANGE_MORE_STRICT,
5417 #[cfg(feature = "v4_20")]
5418 Self::DifferentRewatch => ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH,
5419 #[cfg(feature = "v4_20")]
5420 Self::LessStrictRewatch => ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH,
5421 #[cfg(feature = "v4_20")]
5422 Self::MoreStrictRewatch => ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH,
5423 Self::__Unknown(value) => value,
5424 }
5425 }
5426}
5427
5428#[doc(hidden)]
5429impl FromGlib<ffi::GtkFilterChange> for FilterChange {
5430 #[inline]
5431 unsafe fn from_glib(value: ffi::GtkFilterChange) -> Self {
5432 skip_assert_initialized!();
5433
5434 match value {
5435 ffi::GTK_FILTER_CHANGE_DIFFERENT => Self::Different,
5436 ffi::GTK_FILTER_CHANGE_LESS_STRICT => Self::LessStrict,
5437 ffi::GTK_FILTER_CHANGE_MORE_STRICT => Self::MoreStrict,
5438 #[cfg(feature = "v4_20")]
5439 ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH => Self::DifferentRewatch,
5440 #[cfg(feature = "v4_20")]
5441 ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH => Self::LessStrictRewatch,
5442 #[cfg(feature = "v4_20")]
5443 ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH => Self::MoreStrictRewatch,
5444 value => Self::__Unknown(value),
5445 }
5446 }
5447}
5448
5449impl StaticType for FilterChange {
5450 #[inline]
5451 #[doc(alias = "gtk_filter_change_get_type")]
5452 fn static_type() -> glib::Type {
5453 unsafe { from_glib(ffi::gtk_filter_change_get_type()) }
5454 }
5455}
5456
5457impl glib::HasParamSpec for FilterChange {
5458 type ParamSpec = glib::ParamSpecEnum;
5459 type SetValue = Self;
5460 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5461
5462 fn param_spec_builder() -> Self::BuilderFn {
5463 Self::ParamSpec::builder_with_default
5464 }
5465}
5466
5467impl glib::value::ValueType for FilterChange {
5468 type Type = Self;
5469}
5470
5471unsafe impl<'a> glib::value::FromValue<'a> for FilterChange {
5472 type Checker = glib::value::GenericValueTypeChecker<Self>;
5473
5474 #[inline]
5475 unsafe fn from_value(value: &'a glib::Value) -> Self {
5476 skip_assert_initialized!();
5477 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5478 }
5479}
5480
5481impl ToValue for FilterChange {
5482 #[inline]
5483 fn to_value(&self) -> glib::Value {
5484 let mut value = glib::Value::for_value_type::<Self>();
5485 unsafe {
5486 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5487 }
5488 value
5489 }
5490
5491 #[inline]
5492 fn value_type(&self) -> glib::Type {
5493 Self::static_type()
5494 }
5495}
5496
5497impl From<FilterChange> for glib::Value {
5498 #[inline]
5499 fn from(v: FilterChange) -> Self {
5500 skip_assert_initialized!();
5501 ToValue::to_value(&v)
5502 }
5503}
5504
5505#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5511#[non_exhaustive]
5512#[doc(alias = "GtkFilterMatch")]
5513pub enum FilterMatch {
5514 #[doc(alias = "GTK_FILTER_MATCH_SOME")]
5517 Some,
5518 #[doc(alias = "GTK_FILTER_MATCH_NONE")]
5521 None,
5522 #[doc(alias = "GTK_FILTER_MATCH_ALL")]
5525 All,
5526 #[doc(hidden)]
5527 __Unknown(i32),
5528}
5529
5530#[doc(hidden)]
5531impl IntoGlib for FilterMatch {
5532 type GlibType = ffi::GtkFilterMatch;
5533
5534 #[inline]
5535 fn into_glib(self) -> ffi::GtkFilterMatch {
5536 match self {
5537 Self::Some => ffi::GTK_FILTER_MATCH_SOME,
5538 Self::None => ffi::GTK_FILTER_MATCH_NONE,
5539 Self::All => ffi::GTK_FILTER_MATCH_ALL,
5540 Self::__Unknown(value) => value,
5541 }
5542 }
5543}
5544
5545#[doc(hidden)]
5546impl FromGlib<ffi::GtkFilterMatch> for FilterMatch {
5547 #[inline]
5548 unsafe fn from_glib(value: ffi::GtkFilterMatch) -> Self {
5549 skip_assert_initialized!();
5550
5551 match value {
5552 ffi::GTK_FILTER_MATCH_SOME => Self::Some,
5553 ffi::GTK_FILTER_MATCH_NONE => Self::None,
5554 ffi::GTK_FILTER_MATCH_ALL => Self::All,
5555 value => Self::__Unknown(value),
5556 }
5557 }
5558}
5559
5560impl StaticType for FilterMatch {
5561 #[inline]
5562 #[doc(alias = "gtk_filter_match_get_type")]
5563 fn static_type() -> glib::Type {
5564 unsafe { from_glib(ffi::gtk_filter_match_get_type()) }
5565 }
5566}
5567
5568impl glib::HasParamSpec for FilterMatch {
5569 type ParamSpec = glib::ParamSpecEnum;
5570 type SetValue = Self;
5571 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5572
5573 fn param_spec_builder() -> Self::BuilderFn {
5574 Self::ParamSpec::builder_with_default
5575 }
5576}
5577
5578impl glib::value::ValueType for FilterMatch {
5579 type Type = Self;
5580}
5581
5582unsafe impl<'a> glib::value::FromValue<'a> for FilterMatch {
5583 type Checker = glib::value::GenericValueTypeChecker<Self>;
5584
5585 #[inline]
5586 unsafe fn from_value(value: &'a glib::Value) -> Self {
5587 skip_assert_initialized!();
5588 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5589 }
5590}
5591
5592impl ToValue for FilterMatch {
5593 #[inline]
5594 fn to_value(&self) -> glib::Value {
5595 let mut value = glib::Value::for_value_type::<Self>();
5596 unsafe {
5597 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5598 }
5599 value
5600 }
5601
5602 #[inline]
5603 fn value_type(&self) -> glib::Type {
5604 Self::static_type()
5605 }
5606}
5607
5608impl From<FilterMatch> for glib::Value {
5609 #[inline]
5610 fn from(v: FilterMatch) -> Self {
5611 skip_assert_initialized!();
5612 ToValue::to_value(&v)
5613 }
5614}
5615
5616#[cfg(feature = "v4_10")]
5622#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5623#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5624#[non_exhaustive]
5625#[doc(alias = "GtkFontLevel")]
5626pub enum FontLevel {
5627 #[doc(alias = "GTK_FONT_LEVEL_FAMILY")]
5629 Family,
5630 #[doc(alias = "GTK_FONT_LEVEL_FACE")]
5632 Face,
5633 #[doc(alias = "GTK_FONT_LEVEL_FONT")]
5635 Font,
5636 #[doc(alias = "GTK_FONT_LEVEL_FEATURES")]
5638 Features,
5639 #[doc(hidden)]
5640 __Unknown(i32),
5641}
5642
5643#[cfg(feature = "v4_10")]
5644#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5645#[doc(hidden)]
5646impl IntoGlib for FontLevel {
5647 type GlibType = ffi::GtkFontLevel;
5648
5649 #[inline]
5650 fn into_glib(self) -> ffi::GtkFontLevel {
5651 match self {
5652 Self::Family => ffi::GTK_FONT_LEVEL_FAMILY,
5653 Self::Face => ffi::GTK_FONT_LEVEL_FACE,
5654 Self::Font => ffi::GTK_FONT_LEVEL_FONT,
5655 Self::Features => ffi::GTK_FONT_LEVEL_FEATURES,
5656 Self::__Unknown(value) => value,
5657 }
5658 }
5659}
5660
5661#[cfg(feature = "v4_10")]
5662#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5663#[doc(hidden)]
5664impl FromGlib<ffi::GtkFontLevel> for FontLevel {
5665 #[inline]
5666 unsafe fn from_glib(value: ffi::GtkFontLevel) -> Self {
5667 skip_assert_initialized!();
5668
5669 match value {
5670 ffi::GTK_FONT_LEVEL_FAMILY => Self::Family,
5671 ffi::GTK_FONT_LEVEL_FACE => Self::Face,
5672 ffi::GTK_FONT_LEVEL_FONT => Self::Font,
5673 ffi::GTK_FONT_LEVEL_FEATURES => Self::Features,
5674 value => Self::__Unknown(value),
5675 }
5676 }
5677}
5678
5679#[cfg(feature = "v4_10")]
5680#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5681impl StaticType for FontLevel {
5682 #[inline]
5683 #[doc(alias = "gtk_font_level_get_type")]
5684 fn static_type() -> glib::Type {
5685 unsafe { from_glib(ffi::gtk_font_level_get_type()) }
5686 }
5687}
5688
5689#[cfg(feature = "v4_10")]
5690#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5691impl glib::HasParamSpec for FontLevel {
5692 type ParamSpec = glib::ParamSpecEnum;
5693 type SetValue = Self;
5694 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5695
5696 fn param_spec_builder() -> Self::BuilderFn {
5697 Self::ParamSpec::builder_with_default
5698 }
5699}
5700
5701#[cfg(feature = "v4_10")]
5702#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5703impl glib::value::ValueType for FontLevel {
5704 type Type = Self;
5705}
5706
5707#[cfg(feature = "v4_10")]
5708#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5709unsafe impl<'a> glib::value::FromValue<'a> for FontLevel {
5710 type Checker = glib::value::GenericValueTypeChecker<Self>;
5711
5712 #[inline]
5713 unsafe fn from_value(value: &'a glib::Value) -> Self {
5714 skip_assert_initialized!();
5715 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5716 }
5717}
5718
5719#[cfg(feature = "v4_10")]
5720#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5721impl ToValue for FontLevel {
5722 #[inline]
5723 fn to_value(&self) -> glib::Value {
5724 let mut value = glib::Value::for_value_type::<Self>();
5725 unsafe {
5726 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5727 }
5728 value
5729 }
5730
5731 #[inline]
5732 fn value_type(&self) -> glib::Type {
5733 Self::static_type()
5734 }
5735}
5736
5737#[cfg(feature = "v4_10")]
5738#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5739impl From<FontLevel> for glib::Value {
5740 #[inline]
5741 fn from(v: FontLevel) -> Self {
5742 skip_assert_initialized!();
5743 ToValue::to_value(&v)
5744 }
5745}
5746
5747#[cfg(feature = "v4_16")]
5750#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5751#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5752#[non_exhaustive]
5753#[doc(alias = "GtkFontRendering")]
5754pub enum FontRendering {
5755 #[doc(alias = "GTK_FONT_RENDERING_AUTOMATIC")]
5758 Automatic,
5759 #[doc(alias = "GTK_FONT_RENDERING_MANUAL")]
5762 Manual,
5763 #[doc(hidden)]
5764 __Unknown(i32),
5765}
5766
5767#[cfg(feature = "v4_16")]
5768#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5769#[doc(hidden)]
5770impl IntoGlib for FontRendering {
5771 type GlibType = ffi::GtkFontRendering;
5772
5773 #[inline]
5774 fn into_glib(self) -> ffi::GtkFontRendering {
5775 match self {
5776 Self::Automatic => ffi::GTK_FONT_RENDERING_AUTOMATIC,
5777 Self::Manual => ffi::GTK_FONT_RENDERING_MANUAL,
5778 Self::__Unknown(value) => value,
5779 }
5780 }
5781}
5782
5783#[cfg(feature = "v4_16")]
5784#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5785#[doc(hidden)]
5786impl FromGlib<ffi::GtkFontRendering> for FontRendering {
5787 #[inline]
5788 unsafe fn from_glib(value: ffi::GtkFontRendering) -> Self {
5789 skip_assert_initialized!();
5790
5791 match value {
5792 ffi::GTK_FONT_RENDERING_AUTOMATIC => Self::Automatic,
5793 ffi::GTK_FONT_RENDERING_MANUAL => Self::Manual,
5794 value => Self::__Unknown(value),
5795 }
5796 }
5797}
5798
5799#[cfg(feature = "v4_16")]
5800#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5801impl StaticType for FontRendering {
5802 #[inline]
5803 #[doc(alias = "gtk_font_rendering_get_type")]
5804 fn static_type() -> glib::Type {
5805 unsafe { from_glib(ffi::gtk_font_rendering_get_type()) }
5806 }
5807}
5808
5809#[cfg(feature = "v4_16")]
5810#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5811impl glib::HasParamSpec for FontRendering {
5812 type ParamSpec = glib::ParamSpecEnum;
5813 type SetValue = Self;
5814 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5815
5816 fn param_spec_builder() -> Self::BuilderFn {
5817 Self::ParamSpec::builder_with_default
5818 }
5819}
5820
5821#[cfg(feature = "v4_16")]
5822#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5823impl glib::value::ValueType for FontRendering {
5824 type Type = Self;
5825}
5826
5827#[cfg(feature = "v4_16")]
5828#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5829unsafe impl<'a> glib::value::FromValue<'a> for FontRendering {
5830 type Checker = glib::value::GenericValueTypeChecker<Self>;
5831
5832 #[inline]
5833 unsafe fn from_value(value: &'a glib::Value) -> Self {
5834 skip_assert_initialized!();
5835 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5836 }
5837}
5838
5839#[cfg(feature = "v4_16")]
5840#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5841impl ToValue for FontRendering {
5842 #[inline]
5843 fn to_value(&self) -> glib::Value {
5844 let mut value = glib::Value::for_value_type::<Self>();
5845 unsafe {
5846 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5847 }
5848 value
5849 }
5850
5851 #[inline]
5852 fn value_type(&self) -> glib::Type {
5853 Self::static_type()
5854 }
5855}
5856
5857#[cfg(feature = "v4_16")]
5858#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5859impl From<FontRendering> for glib::Value {
5860 #[inline]
5861 fn from(v: FontRendering) -> Self {
5862 skip_assert_initialized!();
5863 ToValue::to_value(&v)
5864 }
5865}
5866
5867#[cfg(feature = "v4_14")]
5869#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5870#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5871#[non_exhaustive]
5872#[doc(alias = "GtkGraphicsOffloadEnabled")]
5873pub enum GraphicsOffloadEnabled {
5874 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_ENABLED")]
5876 Enabled,
5877 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_DISABLED")]
5879 Disabled,
5880 #[doc(hidden)]
5881 __Unknown(i32),
5882}
5883
5884#[cfg(feature = "v4_14")]
5885#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5886#[doc(hidden)]
5887impl IntoGlib for GraphicsOffloadEnabled {
5888 type GlibType = ffi::GtkGraphicsOffloadEnabled;
5889
5890 #[inline]
5891 fn into_glib(self) -> ffi::GtkGraphicsOffloadEnabled {
5892 match self {
5893 Self::Enabled => ffi::GTK_GRAPHICS_OFFLOAD_ENABLED,
5894 Self::Disabled => ffi::GTK_GRAPHICS_OFFLOAD_DISABLED,
5895 Self::__Unknown(value) => value,
5896 }
5897 }
5898}
5899
5900#[cfg(feature = "v4_14")]
5901#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5902#[doc(hidden)]
5903impl FromGlib<ffi::GtkGraphicsOffloadEnabled> for GraphicsOffloadEnabled {
5904 #[inline]
5905 unsafe fn from_glib(value: ffi::GtkGraphicsOffloadEnabled) -> Self {
5906 skip_assert_initialized!();
5907
5908 match value {
5909 ffi::GTK_GRAPHICS_OFFLOAD_ENABLED => Self::Enabled,
5910 ffi::GTK_GRAPHICS_OFFLOAD_DISABLED => Self::Disabled,
5911 value => Self::__Unknown(value),
5912 }
5913 }
5914}
5915
5916#[cfg(feature = "v4_14")]
5917#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5918impl StaticType for GraphicsOffloadEnabled {
5919 #[inline]
5920 #[doc(alias = "gtk_graphics_offload_enabled_get_type")]
5921 fn static_type() -> glib::Type {
5922 unsafe { from_glib(ffi::gtk_graphics_offload_enabled_get_type()) }
5923 }
5924}
5925
5926#[cfg(feature = "v4_14")]
5927#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5928impl glib::HasParamSpec for GraphicsOffloadEnabled {
5929 type ParamSpec = glib::ParamSpecEnum;
5930 type SetValue = Self;
5931 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5932
5933 fn param_spec_builder() -> Self::BuilderFn {
5934 Self::ParamSpec::builder_with_default
5935 }
5936}
5937
5938#[cfg(feature = "v4_14")]
5939#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5940impl glib::value::ValueType for GraphicsOffloadEnabled {
5941 type Type = Self;
5942}
5943
5944#[cfg(feature = "v4_14")]
5945#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5946unsafe impl<'a> glib::value::FromValue<'a> for GraphicsOffloadEnabled {
5947 type Checker = glib::value::GenericValueTypeChecker<Self>;
5948
5949 #[inline]
5950 unsafe fn from_value(value: &'a glib::Value) -> Self {
5951 skip_assert_initialized!();
5952 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5953 }
5954}
5955
5956#[cfg(feature = "v4_14")]
5957#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5958impl ToValue for GraphicsOffloadEnabled {
5959 #[inline]
5960 fn to_value(&self) -> glib::Value {
5961 let mut value = glib::Value::for_value_type::<Self>();
5962 unsafe {
5963 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5964 }
5965 value
5966 }
5967
5968 #[inline]
5969 fn value_type(&self) -> glib::Type {
5970 Self::static_type()
5971 }
5972}
5973
5974#[cfg(feature = "v4_14")]
5975#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5976impl From<GraphicsOffloadEnabled> for glib::Value {
5977 #[inline]
5978 fn from(v: GraphicsOffloadEnabled) -> Self {
5979 skip_assert_initialized!();
5980 ToValue::to_value(&v)
5981 }
5982}
5983
5984#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5994#[non_exhaustive]
5995#[doc(alias = "GtkIconSize")]
5996pub enum IconSize {
5997 #[doc(alias = "GTK_ICON_SIZE_INHERIT")]
5999 Inherit,
6000 #[doc(alias = "GTK_ICON_SIZE_NORMAL")]
6002 Normal,
6003 #[doc(alias = "GTK_ICON_SIZE_LARGE")]
6005 Large,
6006 #[doc(hidden)]
6007 __Unknown(i32),
6008}
6009
6010#[doc(hidden)]
6011impl IntoGlib for IconSize {
6012 type GlibType = ffi::GtkIconSize;
6013
6014 #[inline]
6015 fn into_glib(self) -> ffi::GtkIconSize {
6016 match self {
6017 Self::Inherit => ffi::GTK_ICON_SIZE_INHERIT,
6018 Self::Normal => ffi::GTK_ICON_SIZE_NORMAL,
6019 Self::Large => ffi::GTK_ICON_SIZE_LARGE,
6020 Self::__Unknown(value) => value,
6021 }
6022 }
6023}
6024
6025#[doc(hidden)]
6026impl FromGlib<ffi::GtkIconSize> for IconSize {
6027 #[inline]
6028 unsafe fn from_glib(value: ffi::GtkIconSize) -> Self {
6029 skip_assert_initialized!();
6030
6031 match value {
6032 ffi::GTK_ICON_SIZE_INHERIT => Self::Inherit,
6033 ffi::GTK_ICON_SIZE_NORMAL => Self::Normal,
6034 ffi::GTK_ICON_SIZE_LARGE => Self::Large,
6035 value => Self::__Unknown(value),
6036 }
6037 }
6038}
6039
6040impl StaticType for IconSize {
6041 #[inline]
6042 #[doc(alias = "gtk_icon_size_get_type")]
6043 fn static_type() -> glib::Type {
6044 unsafe { from_glib(ffi::gtk_icon_size_get_type()) }
6045 }
6046}
6047
6048impl glib::HasParamSpec for IconSize {
6049 type ParamSpec = glib::ParamSpecEnum;
6050 type SetValue = Self;
6051 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6052
6053 fn param_spec_builder() -> Self::BuilderFn {
6054 Self::ParamSpec::builder_with_default
6055 }
6056}
6057
6058impl glib::value::ValueType for IconSize {
6059 type Type = Self;
6060}
6061
6062unsafe impl<'a> glib::value::FromValue<'a> for IconSize {
6063 type Checker = glib::value::GenericValueTypeChecker<Self>;
6064
6065 #[inline]
6066 unsafe fn from_value(value: &'a glib::Value) -> Self {
6067 skip_assert_initialized!();
6068 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6069 }
6070}
6071
6072impl ToValue for IconSize {
6073 #[inline]
6074 fn to_value(&self) -> glib::Value {
6075 let mut value = glib::Value::for_value_type::<Self>();
6076 unsafe {
6077 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6078 }
6079 value
6080 }
6081
6082 #[inline]
6083 fn value_type(&self) -> glib::Type {
6084 Self::static_type()
6085 }
6086}
6087
6088impl From<IconSize> for glib::Value {
6089 #[inline]
6090 fn from(v: IconSize) -> Self {
6091 skip_assert_initialized!();
6092 ToValue::to_value(&v)
6093 }
6094}
6095
6096#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6098#[non_exhaustive]
6099#[doc(alias = "GtkIconThemeError")]
6100pub enum IconThemeError {
6101 #[doc(alias = "GTK_ICON_THEME_NOT_FOUND")]
6103 NotFound,
6104 #[doc(alias = "GTK_ICON_THEME_FAILED")]
6106 Failed,
6107 #[doc(hidden)]
6108 __Unknown(i32),
6109}
6110
6111#[doc(hidden)]
6112impl IntoGlib for IconThemeError {
6113 type GlibType = ffi::GtkIconThemeError;
6114
6115 #[inline]
6116 fn into_glib(self) -> ffi::GtkIconThemeError {
6117 match self {
6118 Self::NotFound => ffi::GTK_ICON_THEME_NOT_FOUND,
6119 Self::Failed => ffi::GTK_ICON_THEME_FAILED,
6120 Self::__Unknown(value) => value,
6121 }
6122 }
6123}
6124
6125#[doc(hidden)]
6126impl FromGlib<ffi::GtkIconThemeError> for IconThemeError {
6127 #[inline]
6128 unsafe fn from_glib(value: ffi::GtkIconThemeError) -> Self {
6129 skip_assert_initialized!();
6130
6131 match value {
6132 ffi::GTK_ICON_THEME_NOT_FOUND => Self::NotFound,
6133 ffi::GTK_ICON_THEME_FAILED => Self::Failed,
6134 value => Self::__Unknown(value),
6135 }
6136 }
6137}
6138
6139impl glib::error::ErrorDomain for IconThemeError {
6140 #[inline]
6141 fn domain() -> glib::Quark {
6142 skip_assert_initialized!();
6143
6144 unsafe { from_glib(ffi::gtk_icon_theme_error_quark()) }
6145 }
6146
6147 #[inline]
6148 fn code(self) -> i32 {
6149 self.into_glib()
6150 }
6151
6152 #[inline]
6153 #[allow(clippy::match_single_binding)]
6154 fn from(code: i32) -> Option<Self> {
6155 skip_assert_initialized!();
6156 match unsafe { from_glib(code) } {
6157 Self::__Unknown(_) => Some(Self::Failed),
6158 value => Some(value),
6159 }
6160 }
6161}
6162
6163impl StaticType for IconThemeError {
6164 #[inline]
6165 #[doc(alias = "gtk_icon_theme_error_get_type")]
6166 fn static_type() -> glib::Type {
6167 unsafe { from_glib(ffi::gtk_icon_theme_error_get_type()) }
6168 }
6169}
6170
6171impl glib::HasParamSpec for IconThemeError {
6172 type ParamSpec = glib::ParamSpecEnum;
6173 type SetValue = Self;
6174 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6175
6176 fn param_spec_builder() -> Self::BuilderFn {
6177 Self::ParamSpec::builder_with_default
6178 }
6179}
6180
6181impl glib::value::ValueType for IconThemeError {
6182 type Type = Self;
6183}
6184
6185unsafe impl<'a> glib::value::FromValue<'a> for IconThemeError {
6186 type Checker = glib::value::GenericValueTypeChecker<Self>;
6187
6188 #[inline]
6189 unsafe fn from_value(value: &'a glib::Value) -> Self {
6190 skip_assert_initialized!();
6191 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6192 }
6193}
6194
6195impl ToValue for IconThemeError {
6196 #[inline]
6197 fn to_value(&self) -> glib::Value {
6198 let mut value = glib::Value::for_value_type::<Self>();
6199 unsafe {
6200 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6201 }
6202 value
6203 }
6204
6205 #[inline]
6206 fn value_type(&self) -> glib::Type {
6207 Self::static_type()
6208 }
6209}
6210
6211impl From<IconThemeError> for glib::Value {
6212 #[inline]
6213 fn from(v: IconThemeError) -> Self {
6214 skip_assert_initialized!();
6215 ToValue::to_value(&v)
6216 }
6217}
6218
6219#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
6225#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6226#[non_exhaustive]
6227#[doc(alias = "GtkIconViewDropPosition")]
6228pub enum IconViewDropPosition {
6229 #[doc(alias = "GTK_ICON_VIEW_NO_DROP")]
6231 NoDrop,
6232 #[doc(alias = "GTK_ICON_VIEW_DROP_INTO")]
6234 DropInto,
6235 #[doc(alias = "GTK_ICON_VIEW_DROP_LEFT")]
6237 DropLeft,
6238 #[doc(alias = "GTK_ICON_VIEW_DROP_RIGHT")]
6240 DropRight,
6241 #[doc(alias = "GTK_ICON_VIEW_DROP_ABOVE")]
6243 DropAbove,
6244 #[doc(alias = "GTK_ICON_VIEW_DROP_BELOW")]
6246 DropBelow,
6247 #[doc(hidden)]
6248 __Unknown(i32),
6249}
6250
6251#[allow(deprecated)]
6252#[doc(hidden)]
6253impl IntoGlib for IconViewDropPosition {
6254 type GlibType = ffi::GtkIconViewDropPosition;
6255
6256 #[inline]
6257 fn into_glib(self) -> ffi::GtkIconViewDropPosition {
6258 match self {
6259 Self::NoDrop => ffi::GTK_ICON_VIEW_NO_DROP,
6260 Self::DropInto => ffi::GTK_ICON_VIEW_DROP_INTO,
6261 Self::DropLeft => ffi::GTK_ICON_VIEW_DROP_LEFT,
6262 Self::DropRight => ffi::GTK_ICON_VIEW_DROP_RIGHT,
6263 Self::DropAbove => ffi::GTK_ICON_VIEW_DROP_ABOVE,
6264 Self::DropBelow => ffi::GTK_ICON_VIEW_DROP_BELOW,
6265 Self::__Unknown(value) => value,
6266 }
6267 }
6268}
6269
6270#[allow(deprecated)]
6271#[doc(hidden)]
6272impl FromGlib<ffi::GtkIconViewDropPosition> for IconViewDropPosition {
6273 #[inline]
6274 unsafe fn from_glib(value: ffi::GtkIconViewDropPosition) -> Self {
6275 skip_assert_initialized!();
6276
6277 match value {
6278 ffi::GTK_ICON_VIEW_NO_DROP => Self::NoDrop,
6279 ffi::GTK_ICON_VIEW_DROP_INTO => Self::DropInto,
6280 ffi::GTK_ICON_VIEW_DROP_LEFT => Self::DropLeft,
6281 ffi::GTK_ICON_VIEW_DROP_RIGHT => Self::DropRight,
6282 ffi::GTK_ICON_VIEW_DROP_ABOVE => Self::DropAbove,
6283 ffi::GTK_ICON_VIEW_DROP_BELOW => Self::DropBelow,
6284 value => Self::__Unknown(value),
6285 }
6286 }
6287}
6288
6289#[allow(deprecated)]
6290impl StaticType for IconViewDropPosition {
6291 #[inline]
6292 #[doc(alias = "gtk_icon_view_drop_position_get_type")]
6293 fn static_type() -> glib::Type {
6294 unsafe { from_glib(ffi::gtk_icon_view_drop_position_get_type()) }
6295 }
6296}
6297
6298#[allow(deprecated)]
6299impl glib::HasParamSpec for IconViewDropPosition {
6300 type ParamSpec = glib::ParamSpecEnum;
6301 type SetValue = Self;
6302 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6303
6304 fn param_spec_builder() -> Self::BuilderFn {
6305 Self::ParamSpec::builder_with_default
6306 }
6307}
6308
6309#[allow(deprecated)]
6310impl glib::value::ValueType for IconViewDropPosition {
6311 type Type = Self;
6312}
6313
6314#[allow(deprecated)]
6315unsafe impl<'a> glib::value::FromValue<'a> for IconViewDropPosition {
6316 type Checker = glib::value::GenericValueTypeChecker<Self>;
6317
6318 #[inline]
6319 unsafe fn from_value(value: &'a glib::Value) -> Self {
6320 skip_assert_initialized!();
6321 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6322 }
6323}
6324
6325#[allow(deprecated)]
6326impl ToValue for IconViewDropPosition {
6327 #[inline]
6328 fn to_value(&self) -> glib::Value {
6329 let mut value = glib::Value::for_value_type::<Self>();
6330 unsafe {
6331 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6332 }
6333 value
6334 }
6335
6336 #[inline]
6337 fn value_type(&self) -> glib::Type {
6338 Self::static_type()
6339 }
6340}
6341
6342#[allow(deprecated)]
6343impl From<IconViewDropPosition> for glib::Value {
6344 #[inline]
6345 fn from(v: IconViewDropPosition) -> Self {
6346 skip_assert_initialized!();
6347 ToValue::to_value(&v)
6348 }
6349}
6350
6351#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6360#[non_exhaustive]
6361#[doc(alias = "GtkImageType")]
6362pub enum ImageType {
6363 #[doc(alias = "GTK_IMAGE_EMPTY")]
6365 Empty,
6366 #[doc(alias = "GTK_IMAGE_ICON_NAME")]
6368 IconName,
6369 #[doc(alias = "GTK_IMAGE_GICON")]
6371 Gicon,
6372 #[doc(alias = "GTK_IMAGE_PAINTABLE")]
6374 Paintable,
6375 #[doc(hidden)]
6376 __Unknown(i32),
6377}
6378
6379#[doc(hidden)]
6380impl IntoGlib for ImageType {
6381 type GlibType = ffi::GtkImageType;
6382
6383 #[inline]
6384 fn into_glib(self) -> ffi::GtkImageType {
6385 match self {
6386 Self::Empty => ffi::GTK_IMAGE_EMPTY,
6387 Self::IconName => ffi::GTK_IMAGE_ICON_NAME,
6388 Self::Gicon => ffi::GTK_IMAGE_GICON,
6389 Self::Paintable => ffi::GTK_IMAGE_PAINTABLE,
6390 Self::__Unknown(value) => value,
6391 }
6392 }
6393}
6394
6395#[doc(hidden)]
6396impl FromGlib<ffi::GtkImageType> for ImageType {
6397 #[inline]
6398 unsafe fn from_glib(value: ffi::GtkImageType) -> Self {
6399 skip_assert_initialized!();
6400
6401 match value {
6402 ffi::GTK_IMAGE_EMPTY => Self::Empty,
6403 ffi::GTK_IMAGE_ICON_NAME => Self::IconName,
6404 ffi::GTK_IMAGE_GICON => Self::Gicon,
6405 ffi::GTK_IMAGE_PAINTABLE => Self::Paintable,
6406 value => Self::__Unknown(value),
6407 }
6408 }
6409}
6410
6411impl StaticType for ImageType {
6412 #[inline]
6413 #[doc(alias = "gtk_image_type_get_type")]
6414 fn static_type() -> glib::Type {
6415 unsafe { from_glib(ffi::gtk_image_type_get_type()) }
6416 }
6417}
6418
6419impl glib::HasParamSpec for ImageType {
6420 type ParamSpec = glib::ParamSpecEnum;
6421 type SetValue = Self;
6422 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6423
6424 fn param_spec_builder() -> Self::BuilderFn {
6425 Self::ParamSpec::builder_with_default
6426 }
6427}
6428
6429impl glib::value::ValueType for ImageType {
6430 type Type = Self;
6431}
6432
6433unsafe impl<'a> glib::value::FromValue<'a> for ImageType {
6434 type Checker = glib::value::GenericValueTypeChecker<Self>;
6435
6436 #[inline]
6437 unsafe fn from_value(value: &'a glib::Value) -> Self {
6438 skip_assert_initialized!();
6439 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6440 }
6441}
6442
6443impl ToValue for ImageType {
6444 #[inline]
6445 fn to_value(&self) -> glib::Value {
6446 let mut value = glib::Value::for_value_type::<Self>();
6447 unsafe {
6448 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6449 }
6450 value
6451 }
6452
6453 #[inline]
6454 fn value_type(&self) -> glib::Type {
6455 Self::static_type()
6456 }
6457}
6458
6459impl From<ImageType> for glib::Value {
6460 #[inline]
6461 fn from(v: ImageType) -> Self {
6462 skip_assert_initialized!();
6463 ToValue::to_value(&v)
6464 }
6465}
6466
6467#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6487#[non_exhaustive]
6488#[doc(alias = "GtkInputPurpose")]
6489pub enum InputPurpose {
6490 #[doc(alias = "GTK_INPUT_PURPOSE_FREE_FORM")]
6492 FreeForm,
6493 #[doc(alias = "GTK_INPUT_PURPOSE_ALPHA")]
6495 Alpha,
6496 #[doc(alias = "GTK_INPUT_PURPOSE_DIGITS")]
6498 Digits,
6499 #[doc(alias = "GTK_INPUT_PURPOSE_NUMBER")]
6501 Number,
6502 #[doc(alias = "GTK_INPUT_PURPOSE_PHONE")]
6504 Phone,
6505 #[doc(alias = "GTK_INPUT_PURPOSE_URL")]
6507 Url,
6508 #[doc(alias = "GTK_INPUT_PURPOSE_EMAIL")]
6510 Email,
6511 #[doc(alias = "GTK_INPUT_PURPOSE_NAME")]
6513 Name,
6514 #[doc(alias = "GTK_INPUT_PURPOSE_PASSWORD")]
6516 Password,
6517 #[doc(alias = "GTK_INPUT_PURPOSE_PIN")]
6519 Pin,
6520 #[doc(alias = "GTK_INPUT_PURPOSE_TERMINAL")]
6522 Terminal,
6523 #[doc(hidden)]
6524 __Unknown(i32),
6525}
6526
6527#[doc(hidden)]
6528impl IntoGlib for InputPurpose {
6529 type GlibType = ffi::GtkInputPurpose;
6530
6531 #[inline]
6532 fn into_glib(self) -> ffi::GtkInputPurpose {
6533 match self {
6534 Self::FreeForm => ffi::GTK_INPUT_PURPOSE_FREE_FORM,
6535 Self::Alpha => ffi::GTK_INPUT_PURPOSE_ALPHA,
6536 Self::Digits => ffi::GTK_INPUT_PURPOSE_DIGITS,
6537 Self::Number => ffi::GTK_INPUT_PURPOSE_NUMBER,
6538 Self::Phone => ffi::GTK_INPUT_PURPOSE_PHONE,
6539 Self::Url => ffi::GTK_INPUT_PURPOSE_URL,
6540 Self::Email => ffi::GTK_INPUT_PURPOSE_EMAIL,
6541 Self::Name => ffi::GTK_INPUT_PURPOSE_NAME,
6542 Self::Password => ffi::GTK_INPUT_PURPOSE_PASSWORD,
6543 Self::Pin => ffi::GTK_INPUT_PURPOSE_PIN,
6544 Self::Terminal => ffi::GTK_INPUT_PURPOSE_TERMINAL,
6545 Self::__Unknown(value) => value,
6546 }
6547 }
6548}
6549
6550#[doc(hidden)]
6551impl FromGlib<ffi::GtkInputPurpose> for InputPurpose {
6552 #[inline]
6553 unsafe fn from_glib(value: ffi::GtkInputPurpose) -> Self {
6554 skip_assert_initialized!();
6555
6556 match value {
6557 ffi::GTK_INPUT_PURPOSE_FREE_FORM => Self::FreeForm,
6558 ffi::GTK_INPUT_PURPOSE_ALPHA => Self::Alpha,
6559 ffi::GTK_INPUT_PURPOSE_DIGITS => Self::Digits,
6560 ffi::GTK_INPUT_PURPOSE_NUMBER => Self::Number,
6561 ffi::GTK_INPUT_PURPOSE_PHONE => Self::Phone,
6562 ffi::GTK_INPUT_PURPOSE_URL => Self::Url,
6563 ffi::GTK_INPUT_PURPOSE_EMAIL => Self::Email,
6564 ffi::GTK_INPUT_PURPOSE_NAME => Self::Name,
6565 ffi::GTK_INPUT_PURPOSE_PASSWORD => Self::Password,
6566 ffi::GTK_INPUT_PURPOSE_PIN => Self::Pin,
6567 ffi::GTK_INPUT_PURPOSE_TERMINAL => Self::Terminal,
6568 value => Self::__Unknown(value),
6569 }
6570 }
6571}
6572
6573impl StaticType for InputPurpose {
6574 #[inline]
6575 #[doc(alias = "gtk_input_purpose_get_type")]
6576 fn static_type() -> glib::Type {
6577 unsafe { from_glib(ffi::gtk_input_purpose_get_type()) }
6578 }
6579}
6580
6581impl glib::HasParamSpec for InputPurpose {
6582 type ParamSpec = glib::ParamSpecEnum;
6583 type SetValue = Self;
6584 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6585
6586 fn param_spec_builder() -> Self::BuilderFn {
6587 Self::ParamSpec::builder_with_default
6588 }
6589}
6590
6591impl glib::value::ValueType for InputPurpose {
6592 type Type = Self;
6593}
6594
6595unsafe impl<'a> glib::value::FromValue<'a> for InputPurpose {
6596 type Checker = glib::value::GenericValueTypeChecker<Self>;
6597
6598 #[inline]
6599 unsafe fn from_value(value: &'a glib::Value) -> Self {
6600 skip_assert_initialized!();
6601 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6602 }
6603}
6604
6605impl ToValue for InputPurpose {
6606 #[inline]
6607 fn to_value(&self) -> glib::Value {
6608 let mut value = glib::Value::for_value_type::<Self>();
6609 unsafe {
6610 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6611 }
6612 value
6613 }
6614
6615 #[inline]
6616 fn value_type(&self) -> glib::Type {
6617 Self::static_type()
6618 }
6619}
6620
6621impl From<InputPurpose> for glib::Value {
6622 #[inline]
6623 fn from(v: InputPurpose) -> Self {
6624 skip_assert_initialized!();
6625 ToValue::to_value(&v)
6626 }
6627}
6628
6629#[cfg(feature = "v4_8")]
6632#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6633#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6634#[non_exhaustive]
6635#[doc(alias = "GtkInscriptionOverflow")]
6636pub enum InscriptionOverflow {
6637 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_CLIP")]
6639 Clip,
6640 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START")]
6642 EllipsizeStart,
6643 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE")]
6645 EllipsizeMiddle,
6646 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END")]
6648 EllipsizeEnd,
6649 #[doc(hidden)]
6650 __Unknown(i32),
6651}
6652
6653#[cfg(feature = "v4_8")]
6654#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6655#[doc(hidden)]
6656impl IntoGlib for InscriptionOverflow {
6657 type GlibType = ffi::GtkInscriptionOverflow;
6658
6659 #[inline]
6660 fn into_glib(self) -> ffi::GtkInscriptionOverflow {
6661 match self {
6662 Self::Clip => ffi::GTK_INSCRIPTION_OVERFLOW_CLIP,
6663 Self::EllipsizeStart => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START,
6664 Self::EllipsizeMiddle => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE,
6665 Self::EllipsizeEnd => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END,
6666 Self::__Unknown(value) => value,
6667 }
6668 }
6669}
6670
6671#[cfg(feature = "v4_8")]
6672#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6673#[doc(hidden)]
6674impl FromGlib<ffi::GtkInscriptionOverflow> for InscriptionOverflow {
6675 #[inline]
6676 unsafe fn from_glib(value: ffi::GtkInscriptionOverflow) -> Self {
6677 skip_assert_initialized!();
6678
6679 match value {
6680 ffi::GTK_INSCRIPTION_OVERFLOW_CLIP => Self::Clip,
6681 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START => Self::EllipsizeStart,
6682 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE => Self::EllipsizeMiddle,
6683 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END => Self::EllipsizeEnd,
6684 value => Self::__Unknown(value),
6685 }
6686 }
6687}
6688
6689#[cfg(feature = "v4_8")]
6690#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6691impl StaticType for InscriptionOverflow {
6692 #[inline]
6693 #[doc(alias = "gtk_inscription_overflow_get_type")]
6694 fn static_type() -> glib::Type {
6695 unsafe { from_glib(ffi::gtk_inscription_overflow_get_type()) }
6696 }
6697}
6698
6699#[cfg(feature = "v4_8")]
6700#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6701impl glib::HasParamSpec for InscriptionOverflow {
6702 type ParamSpec = glib::ParamSpecEnum;
6703 type SetValue = Self;
6704 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6705
6706 fn param_spec_builder() -> Self::BuilderFn {
6707 Self::ParamSpec::builder_with_default
6708 }
6709}
6710
6711#[cfg(feature = "v4_8")]
6712#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6713impl glib::value::ValueType for InscriptionOverflow {
6714 type Type = Self;
6715}
6716
6717#[cfg(feature = "v4_8")]
6718#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6719unsafe impl<'a> glib::value::FromValue<'a> for InscriptionOverflow {
6720 type Checker = glib::value::GenericValueTypeChecker<Self>;
6721
6722 #[inline]
6723 unsafe fn from_value(value: &'a glib::Value) -> Self {
6724 skip_assert_initialized!();
6725 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6726 }
6727}
6728
6729#[cfg(feature = "v4_8")]
6730#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6731impl ToValue for InscriptionOverflow {
6732 #[inline]
6733 fn to_value(&self) -> glib::Value {
6734 let mut value = glib::Value::for_value_type::<Self>();
6735 unsafe {
6736 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6737 }
6738 value
6739 }
6740
6741 #[inline]
6742 fn value_type(&self) -> glib::Type {
6743 Self::static_type()
6744 }
6745}
6746
6747#[cfg(feature = "v4_8")]
6748#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6749impl From<InscriptionOverflow> for glib::Value {
6750 #[inline]
6751 fn from(v: InscriptionOverflow) -> Self {
6752 skip_assert_initialized!();
6753 ToValue::to_value(&v)
6754 }
6755}
6756
6757#[cfg(feature = "v4_20")]
6766#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6767#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6768#[non_exhaustive]
6769#[doc(alias = "GtkInterfaceColorScheme")]
6770pub enum InterfaceColorScheme {
6771 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED")]
6773 Unsupported,
6774 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DEFAULT")]
6776 Default,
6777 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DARK")]
6779 Dark,
6780 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_LIGHT")]
6782 Light,
6783 #[doc(hidden)]
6784 __Unknown(i32),
6785}
6786
6787#[cfg(feature = "v4_20")]
6788#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6789#[doc(hidden)]
6790impl IntoGlib for InterfaceColorScheme {
6791 type GlibType = ffi::GtkInterfaceColorScheme;
6792
6793 #[inline]
6794 fn into_glib(self) -> ffi::GtkInterfaceColorScheme {
6795 match self {
6796 Self::Unsupported => ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED,
6797 Self::Default => ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT,
6798 Self::Dark => ffi::GTK_INTERFACE_COLOR_SCHEME_DARK,
6799 Self::Light => ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT,
6800 Self::__Unknown(value) => value,
6801 }
6802 }
6803}
6804
6805#[cfg(feature = "v4_20")]
6806#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6807#[doc(hidden)]
6808impl FromGlib<ffi::GtkInterfaceColorScheme> for InterfaceColorScheme {
6809 #[inline]
6810 unsafe fn from_glib(value: ffi::GtkInterfaceColorScheme) -> Self {
6811 skip_assert_initialized!();
6812
6813 match value {
6814 ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED => Self::Unsupported,
6815 ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT => Self::Default,
6816 ffi::GTK_INTERFACE_COLOR_SCHEME_DARK => Self::Dark,
6817 ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT => Self::Light,
6818 value => Self::__Unknown(value),
6819 }
6820 }
6821}
6822
6823#[cfg(feature = "v4_20")]
6824#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6825impl StaticType for InterfaceColorScheme {
6826 #[inline]
6827 #[doc(alias = "gtk_interface_color_scheme_get_type")]
6828 fn static_type() -> glib::Type {
6829 unsafe { from_glib(ffi::gtk_interface_color_scheme_get_type()) }
6830 }
6831}
6832
6833#[cfg(feature = "v4_20")]
6834#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6835impl glib::HasParamSpec for InterfaceColorScheme {
6836 type ParamSpec = glib::ParamSpecEnum;
6837 type SetValue = Self;
6838 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6839
6840 fn param_spec_builder() -> Self::BuilderFn {
6841 Self::ParamSpec::builder_with_default
6842 }
6843}
6844
6845#[cfg(feature = "v4_20")]
6846#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6847impl glib::value::ValueType for InterfaceColorScheme {
6848 type Type = Self;
6849}
6850
6851#[cfg(feature = "v4_20")]
6852#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6853unsafe impl<'a> glib::value::FromValue<'a> for InterfaceColorScheme {
6854 type Checker = glib::value::GenericValueTypeChecker<Self>;
6855
6856 #[inline]
6857 unsafe fn from_value(value: &'a glib::Value) -> Self {
6858 skip_assert_initialized!();
6859 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6860 }
6861}
6862
6863#[cfg(feature = "v4_20")]
6864#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6865impl ToValue for InterfaceColorScheme {
6866 #[inline]
6867 fn to_value(&self) -> glib::Value {
6868 let mut value = glib::Value::for_value_type::<Self>();
6869 unsafe {
6870 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6871 }
6872 value
6873 }
6874
6875 #[inline]
6876 fn value_type(&self) -> glib::Type {
6877 Self::static_type()
6878 }
6879}
6880
6881#[cfg(feature = "v4_20")]
6882#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6883impl From<InterfaceColorScheme> for glib::Value {
6884 #[inline]
6885 fn from(v: InterfaceColorScheme) -> Self {
6886 skip_assert_initialized!();
6887 ToValue::to_value(&v)
6888 }
6889}
6890
6891#[cfg(feature = "v4_20")]
6900#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6901#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6902#[non_exhaustive]
6903#[doc(alias = "GtkInterfaceContrast")]
6904pub enum InterfaceContrast {
6905 #[doc(alias = "GTK_INTERFACE_CONTRAST_UNSUPPORTED")]
6907 Unsupported,
6908 #[doc(alias = "GTK_INTERFACE_CONTRAST_NO_PREFERENCE")]
6910 NoPreference,
6911 #[doc(alias = "GTK_INTERFACE_CONTRAST_MORE")]
6913 More,
6914 #[doc(alias = "GTK_INTERFACE_CONTRAST_LESS")]
6916 Less,
6917 #[doc(hidden)]
6918 __Unknown(i32),
6919}
6920
6921#[cfg(feature = "v4_20")]
6922#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6923#[doc(hidden)]
6924impl IntoGlib for InterfaceContrast {
6925 type GlibType = ffi::GtkInterfaceContrast;
6926
6927 #[inline]
6928 fn into_glib(self) -> ffi::GtkInterfaceContrast {
6929 match self {
6930 Self::Unsupported => ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED,
6931 Self::NoPreference => ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE,
6932 Self::More => ffi::GTK_INTERFACE_CONTRAST_MORE,
6933 Self::Less => ffi::GTK_INTERFACE_CONTRAST_LESS,
6934 Self::__Unknown(value) => value,
6935 }
6936 }
6937}
6938
6939#[cfg(feature = "v4_20")]
6940#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6941#[doc(hidden)]
6942impl FromGlib<ffi::GtkInterfaceContrast> for InterfaceContrast {
6943 #[inline]
6944 unsafe fn from_glib(value: ffi::GtkInterfaceContrast) -> Self {
6945 skip_assert_initialized!();
6946
6947 match value {
6948 ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED => Self::Unsupported,
6949 ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE => Self::NoPreference,
6950 ffi::GTK_INTERFACE_CONTRAST_MORE => Self::More,
6951 ffi::GTK_INTERFACE_CONTRAST_LESS => Self::Less,
6952 value => Self::__Unknown(value),
6953 }
6954 }
6955}
6956
6957#[cfg(feature = "v4_20")]
6958#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6959impl StaticType for InterfaceContrast {
6960 #[inline]
6961 #[doc(alias = "gtk_interface_contrast_get_type")]
6962 fn static_type() -> glib::Type {
6963 unsafe { from_glib(ffi::gtk_interface_contrast_get_type()) }
6964 }
6965}
6966
6967#[cfg(feature = "v4_20")]
6968#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6969impl glib::HasParamSpec for InterfaceContrast {
6970 type ParamSpec = glib::ParamSpecEnum;
6971 type SetValue = Self;
6972 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6973
6974 fn param_spec_builder() -> Self::BuilderFn {
6975 Self::ParamSpec::builder_with_default
6976 }
6977}
6978
6979#[cfg(feature = "v4_20")]
6980#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6981impl glib::value::ValueType for InterfaceContrast {
6982 type Type = Self;
6983}
6984
6985#[cfg(feature = "v4_20")]
6986#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6987unsafe impl<'a> glib::value::FromValue<'a> for InterfaceContrast {
6988 type Checker = glib::value::GenericValueTypeChecker<Self>;
6989
6990 #[inline]
6991 unsafe fn from_value(value: &'a glib::Value) -> Self {
6992 skip_assert_initialized!();
6993 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6994 }
6995}
6996
6997#[cfg(feature = "v4_20")]
6998#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6999impl ToValue for InterfaceContrast {
7000 #[inline]
7001 fn to_value(&self) -> glib::Value {
7002 let mut value = glib::Value::for_value_type::<Self>();
7003 unsafe {
7004 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7005 }
7006 value
7007 }
7008
7009 #[inline]
7010 fn value_type(&self) -> glib::Type {
7011 Self::static_type()
7012 }
7013}
7014
7015#[cfg(feature = "v4_20")]
7016#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
7017impl From<InterfaceContrast> for glib::Value {
7018 #[inline]
7019 fn from(v: InterfaceContrast) -> Self {
7020 skip_assert_initialized!();
7021 ToValue::to_value(&v)
7022 }
7023}
7024
7025#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7027#[non_exhaustive]
7028#[doc(alias = "GtkJustification")]
7029pub enum Justification {
7030 #[doc(alias = "GTK_JUSTIFY_LEFT")]
7032 Left,
7033 #[doc(alias = "GTK_JUSTIFY_RIGHT")]
7035 Right,
7036 #[doc(alias = "GTK_JUSTIFY_CENTER")]
7038 Center,
7039 #[doc(alias = "GTK_JUSTIFY_FILL")]
7041 Fill,
7042 #[doc(hidden)]
7043 __Unknown(i32),
7044}
7045
7046#[doc(hidden)]
7047impl IntoGlib for Justification {
7048 type GlibType = ffi::GtkJustification;
7049
7050 #[inline]
7051 fn into_glib(self) -> ffi::GtkJustification {
7052 match self {
7053 Self::Left => ffi::GTK_JUSTIFY_LEFT,
7054 Self::Right => ffi::GTK_JUSTIFY_RIGHT,
7055 Self::Center => ffi::GTK_JUSTIFY_CENTER,
7056 Self::Fill => ffi::GTK_JUSTIFY_FILL,
7057 Self::__Unknown(value) => value,
7058 }
7059 }
7060}
7061
7062#[doc(hidden)]
7063impl FromGlib<ffi::GtkJustification> for Justification {
7064 #[inline]
7065 unsafe fn from_glib(value: ffi::GtkJustification) -> Self {
7066 skip_assert_initialized!();
7067
7068 match value {
7069 ffi::GTK_JUSTIFY_LEFT => Self::Left,
7070 ffi::GTK_JUSTIFY_RIGHT => Self::Right,
7071 ffi::GTK_JUSTIFY_CENTER => Self::Center,
7072 ffi::GTK_JUSTIFY_FILL => Self::Fill,
7073 value => Self::__Unknown(value),
7074 }
7075 }
7076}
7077
7078impl StaticType for Justification {
7079 #[inline]
7080 #[doc(alias = "gtk_justification_get_type")]
7081 fn static_type() -> glib::Type {
7082 unsafe { from_glib(ffi::gtk_justification_get_type()) }
7083 }
7084}
7085
7086impl glib::HasParamSpec for Justification {
7087 type ParamSpec = glib::ParamSpecEnum;
7088 type SetValue = Self;
7089 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7090
7091 fn param_spec_builder() -> Self::BuilderFn {
7092 Self::ParamSpec::builder_with_default
7093 }
7094}
7095
7096impl glib::value::ValueType for Justification {
7097 type Type = Self;
7098}
7099
7100unsafe impl<'a> glib::value::FromValue<'a> for Justification {
7101 type Checker = glib::value::GenericValueTypeChecker<Self>;
7102
7103 #[inline]
7104 unsafe fn from_value(value: &'a glib::Value) -> Self {
7105 skip_assert_initialized!();
7106 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7107 }
7108}
7109
7110impl ToValue for Justification {
7111 #[inline]
7112 fn to_value(&self) -> glib::Value {
7113 let mut value = glib::Value::for_value_type::<Self>();
7114 unsafe {
7115 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7116 }
7117 value
7118 }
7119
7120 #[inline]
7121 fn value_type(&self) -> glib::Type {
7122 Self::static_type()
7123 }
7124}
7125
7126impl From<Justification> for glib::Value {
7127 #[inline]
7128 fn from(v: Justification) -> Self {
7129 skip_assert_initialized!();
7130 ToValue::to_value(&v)
7131 }
7132}
7133
7134#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7139#[non_exhaustive]
7140#[doc(alias = "GtkLevelBarMode")]
7141pub enum LevelBarMode {
7142 #[doc(alias = "GTK_LEVEL_BAR_MODE_CONTINUOUS")]
7144 Continuous,
7145 #[doc(alias = "GTK_LEVEL_BAR_MODE_DISCRETE")]
7147 Discrete,
7148 #[doc(hidden)]
7149 __Unknown(i32),
7150}
7151
7152#[doc(hidden)]
7153impl IntoGlib for LevelBarMode {
7154 type GlibType = ffi::GtkLevelBarMode;
7155
7156 #[inline]
7157 fn into_glib(self) -> ffi::GtkLevelBarMode {
7158 match self {
7159 Self::Continuous => ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS,
7160 Self::Discrete => ffi::GTK_LEVEL_BAR_MODE_DISCRETE,
7161 Self::__Unknown(value) => value,
7162 }
7163 }
7164}
7165
7166#[doc(hidden)]
7167impl FromGlib<ffi::GtkLevelBarMode> for LevelBarMode {
7168 #[inline]
7169 unsafe fn from_glib(value: ffi::GtkLevelBarMode) -> Self {
7170 skip_assert_initialized!();
7171
7172 match value {
7173 ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS => Self::Continuous,
7174 ffi::GTK_LEVEL_BAR_MODE_DISCRETE => Self::Discrete,
7175 value => Self::__Unknown(value),
7176 }
7177 }
7178}
7179
7180impl StaticType for LevelBarMode {
7181 #[inline]
7182 #[doc(alias = "gtk_level_bar_mode_get_type")]
7183 fn static_type() -> glib::Type {
7184 unsafe { from_glib(ffi::gtk_level_bar_mode_get_type()) }
7185 }
7186}
7187
7188impl glib::HasParamSpec for LevelBarMode {
7189 type ParamSpec = glib::ParamSpecEnum;
7190 type SetValue = Self;
7191 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7192
7193 fn param_spec_builder() -> Self::BuilderFn {
7194 Self::ParamSpec::builder_with_default
7195 }
7196}
7197
7198impl glib::value::ValueType for LevelBarMode {
7199 type Type = Self;
7200}
7201
7202unsafe impl<'a> glib::value::FromValue<'a> for LevelBarMode {
7203 type Checker = glib::value::GenericValueTypeChecker<Self>;
7204
7205 #[inline]
7206 unsafe fn from_value(value: &'a glib::Value) -> Self {
7207 skip_assert_initialized!();
7208 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7209 }
7210}
7211
7212impl ToValue for LevelBarMode {
7213 #[inline]
7214 fn to_value(&self) -> glib::Value {
7215 let mut value = glib::Value::for_value_type::<Self>();
7216 unsafe {
7217 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7218 }
7219 value
7220 }
7221
7222 #[inline]
7223 fn value_type(&self) -> glib::Type {
7224 Self::static_type()
7225 }
7226}
7227
7228impl From<LevelBarMode> for glib::Value {
7229 #[inline]
7230 fn from(v: LevelBarMode) -> Self {
7231 skip_assert_initialized!();
7232 ToValue::to_value(&v)
7233 }
7234}
7235
7236#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7240#[non_exhaustive]
7241#[doc(alias = "GtkLicense")]
7242pub enum License {
7243 #[doc(alias = "GTK_LICENSE_UNKNOWN")]
7245 Unknown,
7246 #[doc(alias = "GTK_LICENSE_CUSTOM")]
7249 Custom,
7250 #[doc(alias = "GTK_LICENSE_GPL_2_0")]
7252 Gpl20,
7253 #[doc(alias = "GTK_LICENSE_GPL_3_0")]
7255 Gpl30,
7256 #[doc(alias = "GTK_LICENSE_LGPL_2_1")]
7258 Lgpl21,
7259 #[doc(alias = "GTK_LICENSE_LGPL_3_0")]
7261 Lgpl30,
7262 #[doc(alias = "GTK_LICENSE_BSD")]
7264 Bsd,
7265 #[doc(alias = "GTK_LICENSE_MIT_X11")]
7267 MitX11,
7268 #[doc(alias = "GTK_LICENSE_ARTISTIC")]
7270 Artistic,
7271 #[doc(alias = "GTK_LICENSE_GPL_2_0_ONLY")]
7273 Gpl20Only,
7274 #[doc(alias = "GTK_LICENSE_GPL_3_0_ONLY")]
7276 Gpl30Only,
7277 #[doc(alias = "GTK_LICENSE_LGPL_2_1_ONLY")]
7279 Lgpl21Only,
7280 #[doc(alias = "GTK_LICENSE_LGPL_3_0_ONLY")]
7282 Lgpl30Only,
7283 #[doc(alias = "GTK_LICENSE_AGPL_3_0")]
7285 Agpl30,
7286 #[doc(alias = "GTK_LICENSE_AGPL_3_0_ONLY")]
7288 Agpl30Only,
7289 #[doc(alias = "GTK_LICENSE_BSD_3")]
7291 Bsd3,
7292 #[doc(alias = "GTK_LICENSE_APACHE_2_0")]
7294 Apache20,
7295 #[doc(alias = "GTK_LICENSE_MPL_2_0")]
7297 Mpl20,
7298 #[cfg(feature = "v4_14")]
7300 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
7301 #[doc(alias = "GTK_LICENSE_0BSD")]
7302 _0bsd,
7303 #[doc(hidden)]
7304 __Unknown(i32),
7305}
7306
7307#[doc(hidden)]
7308impl IntoGlib for License {
7309 type GlibType = ffi::GtkLicense;
7310
7311 fn into_glib(self) -> ffi::GtkLicense {
7312 match self {
7313 Self::Unknown => ffi::GTK_LICENSE_UNKNOWN,
7314 Self::Custom => ffi::GTK_LICENSE_CUSTOM,
7315 Self::Gpl20 => ffi::GTK_LICENSE_GPL_2_0,
7316 Self::Gpl30 => ffi::GTK_LICENSE_GPL_3_0,
7317 Self::Lgpl21 => ffi::GTK_LICENSE_LGPL_2_1,
7318 Self::Lgpl30 => ffi::GTK_LICENSE_LGPL_3_0,
7319 Self::Bsd => ffi::GTK_LICENSE_BSD,
7320 Self::MitX11 => ffi::GTK_LICENSE_MIT_X11,
7321 Self::Artistic => ffi::GTK_LICENSE_ARTISTIC,
7322 Self::Gpl20Only => ffi::GTK_LICENSE_GPL_2_0_ONLY,
7323 Self::Gpl30Only => ffi::GTK_LICENSE_GPL_3_0_ONLY,
7324 Self::Lgpl21Only => ffi::GTK_LICENSE_LGPL_2_1_ONLY,
7325 Self::Lgpl30Only => ffi::GTK_LICENSE_LGPL_3_0_ONLY,
7326 Self::Agpl30 => ffi::GTK_LICENSE_AGPL_3_0,
7327 Self::Agpl30Only => ffi::GTK_LICENSE_AGPL_3_0_ONLY,
7328 Self::Bsd3 => ffi::GTK_LICENSE_BSD_3,
7329 Self::Apache20 => ffi::GTK_LICENSE_APACHE_2_0,
7330 Self::Mpl20 => ffi::GTK_LICENSE_MPL_2_0,
7331 #[cfg(feature = "v4_14")]
7332 Self::_0bsd => ffi::GTK_LICENSE_0BSD,
7333 Self::__Unknown(value) => value,
7334 }
7335 }
7336}
7337
7338#[doc(hidden)]
7339impl FromGlib<ffi::GtkLicense> for License {
7340 unsafe fn from_glib(value: ffi::GtkLicense) -> Self {
7341 skip_assert_initialized!();
7342
7343 match value {
7344 ffi::GTK_LICENSE_UNKNOWN => Self::Unknown,
7345 ffi::GTK_LICENSE_CUSTOM => Self::Custom,
7346 ffi::GTK_LICENSE_GPL_2_0 => Self::Gpl20,
7347 ffi::GTK_LICENSE_GPL_3_0 => Self::Gpl30,
7348 ffi::GTK_LICENSE_LGPL_2_1 => Self::Lgpl21,
7349 ffi::GTK_LICENSE_LGPL_3_0 => Self::Lgpl30,
7350 ffi::GTK_LICENSE_BSD => Self::Bsd,
7351 ffi::GTK_LICENSE_MIT_X11 => Self::MitX11,
7352 ffi::GTK_LICENSE_ARTISTIC => Self::Artistic,
7353 ffi::GTK_LICENSE_GPL_2_0_ONLY => Self::Gpl20Only,
7354 ffi::GTK_LICENSE_GPL_3_0_ONLY => Self::Gpl30Only,
7355 ffi::GTK_LICENSE_LGPL_2_1_ONLY => Self::Lgpl21Only,
7356 ffi::GTK_LICENSE_LGPL_3_0_ONLY => Self::Lgpl30Only,
7357 ffi::GTK_LICENSE_AGPL_3_0 => Self::Agpl30,
7358 ffi::GTK_LICENSE_AGPL_3_0_ONLY => Self::Agpl30Only,
7359 ffi::GTK_LICENSE_BSD_3 => Self::Bsd3,
7360 ffi::GTK_LICENSE_APACHE_2_0 => Self::Apache20,
7361 ffi::GTK_LICENSE_MPL_2_0 => Self::Mpl20,
7362 #[cfg(feature = "v4_14")]
7363 ffi::GTK_LICENSE_0BSD => Self::_0bsd,
7364 value => Self::__Unknown(value),
7365 }
7366 }
7367}
7368
7369impl StaticType for License {
7370 #[inline]
7371 #[doc(alias = "gtk_license_get_type")]
7372 fn static_type() -> glib::Type {
7373 unsafe { from_glib(ffi::gtk_license_get_type()) }
7374 }
7375}
7376
7377impl glib::HasParamSpec for License {
7378 type ParamSpec = glib::ParamSpecEnum;
7379 type SetValue = Self;
7380 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7381
7382 fn param_spec_builder() -> Self::BuilderFn {
7383 Self::ParamSpec::builder_with_default
7384 }
7385}
7386
7387impl glib::value::ValueType for License {
7388 type Type = Self;
7389}
7390
7391unsafe impl<'a> glib::value::FromValue<'a> for License {
7392 type Checker = glib::value::GenericValueTypeChecker<Self>;
7393
7394 #[inline]
7395 unsafe fn from_value(value: &'a glib::Value) -> Self {
7396 skip_assert_initialized!();
7397 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7398 }
7399}
7400
7401impl ToValue for License {
7402 #[inline]
7403 fn to_value(&self) -> glib::Value {
7404 let mut value = glib::Value::for_value_type::<Self>();
7405 unsafe {
7406 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7407 }
7408 value
7409 }
7410
7411 #[inline]
7412 fn value_type(&self) -> glib::Type {
7413 Self::static_type()
7414 }
7415}
7416
7417impl From<License> for glib::Value {
7418 #[inline]
7419 fn from(v: License) -> Self {
7420 skip_assert_initialized!();
7421 ToValue::to_value(&v)
7422 }
7423}
7424
7425#[cfg(feature = "v4_12")]
7429#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7430#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7431#[non_exhaustive]
7432#[doc(alias = "GtkListTabBehavior")]
7433pub enum ListTabBehavior {
7434 #[doc(alias = "GTK_LIST_TAB_ALL")]
7436 All,
7437 #[doc(alias = "GTK_LIST_TAB_ITEM")]
7441 Item,
7442 #[doc(alias = "GTK_LIST_TAB_CELL")]
7448 Cell,
7449 #[doc(hidden)]
7450 __Unknown(i32),
7451}
7452
7453#[cfg(feature = "v4_12")]
7454#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7455#[doc(hidden)]
7456impl IntoGlib for ListTabBehavior {
7457 type GlibType = ffi::GtkListTabBehavior;
7458
7459 #[inline]
7460 fn into_glib(self) -> ffi::GtkListTabBehavior {
7461 match self {
7462 Self::All => ffi::GTK_LIST_TAB_ALL,
7463 Self::Item => ffi::GTK_LIST_TAB_ITEM,
7464 Self::Cell => ffi::GTK_LIST_TAB_CELL,
7465 Self::__Unknown(value) => value,
7466 }
7467 }
7468}
7469
7470#[cfg(feature = "v4_12")]
7471#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7472#[doc(hidden)]
7473impl FromGlib<ffi::GtkListTabBehavior> for ListTabBehavior {
7474 #[inline]
7475 unsafe fn from_glib(value: ffi::GtkListTabBehavior) -> Self {
7476 skip_assert_initialized!();
7477
7478 match value {
7479 ffi::GTK_LIST_TAB_ALL => Self::All,
7480 ffi::GTK_LIST_TAB_ITEM => Self::Item,
7481 ffi::GTK_LIST_TAB_CELL => Self::Cell,
7482 value => Self::__Unknown(value),
7483 }
7484 }
7485}
7486
7487#[cfg(feature = "v4_12")]
7488#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7489impl StaticType for ListTabBehavior {
7490 #[inline]
7491 #[doc(alias = "gtk_list_tab_behavior_get_type")]
7492 fn static_type() -> glib::Type {
7493 unsafe { from_glib(ffi::gtk_list_tab_behavior_get_type()) }
7494 }
7495}
7496
7497#[cfg(feature = "v4_12")]
7498#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7499impl glib::HasParamSpec for ListTabBehavior {
7500 type ParamSpec = glib::ParamSpecEnum;
7501 type SetValue = Self;
7502 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7503
7504 fn param_spec_builder() -> Self::BuilderFn {
7505 Self::ParamSpec::builder_with_default
7506 }
7507}
7508
7509#[cfg(feature = "v4_12")]
7510#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7511impl glib::value::ValueType for ListTabBehavior {
7512 type Type = Self;
7513}
7514
7515#[cfg(feature = "v4_12")]
7516#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7517unsafe impl<'a> glib::value::FromValue<'a> for ListTabBehavior {
7518 type Checker = glib::value::GenericValueTypeChecker<Self>;
7519
7520 #[inline]
7521 unsafe fn from_value(value: &'a glib::Value) -> Self {
7522 skip_assert_initialized!();
7523 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7524 }
7525}
7526
7527#[cfg(feature = "v4_12")]
7528#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7529impl ToValue for ListTabBehavior {
7530 #[inline]
7531 fn to_value(&self) -> glib::Value {
7532 let mut value = glib::Value::for_value_type::<Self>();
7533 unsafe {
7534 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7535 }
7536 value
7537 }
7538
7539 #[inline]
7540 fn value_type(&self) -> glib::Type {
7541 Self::static_type()
7542 }
7543}
7544
7545#[cfg(feature = "v4_12")]
7546#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7547impl From<ListTabBehavior> for glib::Value {
7548 #[inline]
7549 fn from(v: ListTabBehavior) -> Self {
7550 skip_assert_initialized!();
7551 ToValue::to_value(&v)
7552 }
7553}
7554
7555#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7557#[non_exhaustive]
7558#[doc(alias = "GtkMessageType")]
7559pub enum MessageType {
7560 #[doc(alias = "GTK_MESSAGE_INFO")]
7562 Info,
7563 #[doc(alias = "GTK_MESSAGE_WARNING")]
7565 Warning,
7566 #[doc(alias = "GTK_MESSAGE_QUESTION")]
7568 Question,
7569 #[doc(alias = "GTK_MESSAGE_ERROR")]
7571 Error,
7572 #[doc(alias = "GTK_MESSAGE_OTHER")]
7574 Other,
7575 #[doc(hidden)]
7576 __Unknown(i32),
7577}
7578
7579#[doc(hidden)]
7580impl IntoGlib for MessageType {
7581 type GlibType = ffi::GtkMessageType;
7582
7583 #[inline]
7584 fn into_glib(self) -> ffi::GtkMessageType {
7585 match self {
7586 Self::Info => ffi::GTK_MESSAGE_INFO,
7587 Self::Warning => ffi::GTK_MESSAGE_WARNING,
7588 Self::Question => ffi::GTK_MESSAGE_QUESTION,
7589 Self::Error => ffi::GTK_MESSAGE_ERROR,
7590 Self::Other => ffi::GTK_MESSAGE_OTHER,
7591 Self::__Unknown(value) => value,
7592 }
7593 }
7594}
7595
7596#[doc(hidden)]
7597impl FromGlib<ffi::GtkMessageType> for MessageType {
7598 #[inline]
7599 unsafe fn from_glib(value: ffi::GtkMessageType) -> Self {
7600 skip_assert_initialized!();
7601
7602 match value {
7603 ffi::GTK_MESSAGE_INFO => Self::Info,
7604 ffi::GTK_MESSAGE_WARNING => Self::Warning,
7605 ffi::GTK_MESSAGE_QUESTION => Self::Question,
7606 ffi::GTK_MESSAGE_ERROR => Self::Error,
7607 ffi::GTK_MESSAGE_OTHER => Self::Other,
7608 value => Self::__Unknown(value),
7609 }
7610 }
7611}
7612
7613impl StaticType for MessageType {
7614 #[inline]
7615 #[doc(alias = "gtk_message_type_get_type")]
7616 fn static_type() -> glib::Type {
7617 unsafe { from_glib(ffi::gtk_message_type_get_type()) }
7618 }
7619}
7620
7621impl glib::HasParamSpec for MessageType {
7622 type ParamSpec = glib::ParamSpecEnum;
7623 type SetValue = Self;
7624 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7625
7626 fn param_spec_builder() -> Self::BuilderFn {
7627 Self::ParamSpec::builder_with_default
7628 }
7629}
7630
7631impl glib::value::ValueType for MessageType {
7632 type Type = Self;
7633}
7634
7635unsafe impl<'a> glib::value::FromValue<'a> for MessageType {
7636 type Checker = glib::value::GenericValueTypeChecker<Self>;
7637
7638 #[inline]
7639 unsafe fn from_value(value: &'a glib::Value) -> Self {
7640 skip_assert_initialized!();
7641 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7642 }
7643}
7644
7645impl ToValue for MessageType {
7646 #[inline]
7647 fn to_value(&self) -> glib::Value {
7648 let mut value = glib::Value::for_value_type::<Self>();
7649 unsafe {
7650 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7651 }
7652 value
7653 }
7654
7655 #[inline]
7656 fn value_type(&self) -> glib::Type {
7657 Self::static_type()
7658 }
7659}
7660
7661impl From<MessageType> for glib::Value {
7662 #[inline]
7663 fn from(v: MessageType) -> Self {
7664 skip_assert_initialized!();
7665 ToValue::to_value(&v)
7666 }
7667}
7668
7669#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7672#[non_exhaustive]
7673#[doc(alias = "GtkMovementStep")]
7674pub enum MovementStep {
7675 #[doc(alias = "GTK_MOVEMENT_LOGICAL_POSITIONS")]
7677 LogicalPositions,
7678 #[doc(alias = "GTK_MOVEMENT_VISUAL_POSITIONS")]
7680 VisualPositions,
7681 #[doc(alias = "GTK_MOVEMENT_WORDS")]
7683 Words,
7684 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINES")]
7686 DisplayLines,
7687 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINE_ENDS")]
7689 DisplayLineEnds,
7690 #[doc(alias = "GTK_MOVEMENT_PARAGRAPHS")]
7692 Paragraphs,
7693 #[doc(alias = "GTK_MOVEMENT_PARAGRAPH_ENDS")]
7695 ParagraphEnds,
7696 #[doc(alias = "GTK_MOVEMENT_PAGES")]
7698 Pages,
7699 #[doc(alias = "GTK_MOVEMENT_BUFFER_ENDS")]
7701 BufferEnds,
7702 #[doc(alias = "GTK_MOVEMENT_HORIZONTAL_PAGES")]
7704 HorizontalPages,
7705 #[doc(hidden)]
7706 __Unknown(i32),
7707}
7708
7709#[doc(hidden)]
7710impl IntoGlib for MovementStep {
7711 type GlibType = ffi::GtkMovementStep;
7712
7713 #[inline]
7714 fn into_glib(self) -> ffi::GtkMovementStep {
7715 match self {
7716 Self::LogicalPositions => ffi::GTK_MOVEMENT_LOGICAL_POSITIONS,
7717 Self::VisualPositions => ffi::GTK_MOVEMENT_VISUAL_POSITIONS,
7718 Self::Words => ffi::GTK_MOVEMENT_WORDS,
7719 Self::DisplayLines => ffi::GTK_MOVEMENT_DISPLAY_LINES,
7720 Self::DisplayLineEnds => ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS,
7721 Self::Paragraphs => ffi::GTK_MOVEMENT_PARAGRAPHS,
7722 Self::ParagraphEnds => ffi::GTK_MOVEMENT_PARAGRAPH_ENDS,
7723 Self::Pages => ffi::GTK_MOVEMENT_PAGES,
7724 Self::BufferEnds => ffi::GTK_MOVEMENT_BUFFER_ENDS,
7725 Self::HorizontalPages => ffi::GTK_MOVEMENT_HORIZONTAL_PAGES,
7726 Self::__Unknown(value) => value,
7727 }
7728 }
7729}
7730
7731#[doc(hidden)]
7732impl FromGlib<ffi::GtkMovementStep> for MovementStep {
7733 #[inline]
7734 unsafe fn from_glib(value: ffi::GtkMovementStep) -> Self {
7735 skip_assert_initialized!();
7736
7737 match value {
7738 ffi::GTK_MOVEMENT_LOGICAL_POSITIONS => Self::LogicalPositions,
7739 ffi::GTK_MOVEMENT_VISUAL_POSITIONS => Self::VisualPositions,
7740 ffi::GTK_MOVEMENT_WORDS => Self::Words,
7741 ffi::GTK_MOVEMENT_DISPLAY_LINES => Self::DisplayLines,
7742 ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS => Self::DisplayLineEnds,
7743 ffi::GTK_MOVEMENT_PARAGRAPHS => Self::Paragraphs,
7744 ffi::GTK_MOVEMENT_PARAGRAPH_ENDS => Self::ParagraphEnds,
7745 ffi::GTK_MOVEMENT_PAGES => Self::Pages,
7746 ffi::GTK_MOVEMENT_BUFFER_ENDS => Self::BufferEnds,
7747 ffi::GTK_MOVEMENT_HORIZONTAL_PAGES => Self::HorizontalPages,
7748 value => Self::__Unknown(value),
7749 }
7750 }
7751}
7752
7753impl StaticType for MovementStep {
7754 #[inline]
7755 #[doc(alias = "gtk_movement_step_get_type")]
7756 fn static_type() -> glib::Type {
7757 unsafe { from_glib(ffi::gtk_movement_step_get_type()) }
7758 }
7759}
7760
7761impl glib::HasParamSpec for MovementStep {
7762 type ParamSpec = glib::ParamSpecEnum;
7763 type SetValue = Self;
7764 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7765
7766 fn param_spec_builder() -> Self::BuilderFn {
7767 Self::ParamSpec::builder_with_default
7768 }
7769}
7770
7771impl glib::value::ValueType for MovementStep {
7772 type Type = Self;
7773}
7774
7775unsafe impl<'a> glib::value::FromValue<'a> for MovementStep {
7776 type Checker = glib::value::GenericValueTypeChecker<Self>;
7777
7778 #[inline]
7779 unsafe fn from_value(value: &'a glib::Value) -> Self {
7780 skip_assert_initialized!();
7781 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7782 }
7783}
7784
7785impl ToValue for MovementStep {
7786 #[inline]
7787 fn to_value(&self) -> glib::Value {
7788 let mut value = glib::Value::for_value_type::<Self>();
7789 unsafe {
7790 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7791 }
7792 value
7793 }
7794
7795 #[inline]
7796 fn value_type(&self) -> glib::Type {
7797 Self::static_type()
7798 }
7799}
7800
7801impl From<MovementStep> for glib::Value {
7802 #[inline]
7803 fn from(v: MovementStep) -> Self {
7804 skip_assert_initialized!();
7805 ToValue::to_value(&v)
7806 }
7807}
7808
7809#[cfg(feature = "v4_6")]
7814#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7815#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7816#[non_exhaustive]
7817#[doc(alias = "GtkNaturalWrapMode")]
7818pub enum NaturalWrapMode {
7819 #[doc(alias = "GTK_NATURAL_WRAP_INHERIT")]
7822 Inherit,
7823 #[doc(alias = "GTK_NATURAL_WRAP_NONE")]
7827 None,
7828 #[doc(alias = "GTK_NATURAL_WRAP_WORD")]
7832 Word,
7833 #[doc(hidden)]
7834 __Unknown(i32),
7835}
7836
7837#[cfg(feature = "v4_6")]
7838#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7839#[doc(hidden)]
7840impl IntoGlib for NaturalWrapMode {
7841 type GlibType = ffi::GtkNaturalWrapMode;
7842
7843 #[inline]
7844 fn into_glib(self) -> ffi::GtkNaturalWrapMode {
7845 match self {
7846 Self::Inherit => ffi::GTK_NATURAL_WRAP_INHERIT,
7847 Self::None => ffi::GTK_NATURAL_WRAP_NONE,
7848 Self::Word => ffi::GTK_NATURAL_WRAP_WORD,
7849 Self::__Unknown(value) => value,
7850 }
7851 }
7852}
7853
7854#[cfg(feature = "v4_6")]
7855#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7856#[doc(hidden)]
7857impl FromGlib<ffi::GtkNaturalWrapMode> for NaturalWrapMode {
7858 #[inline]
7859 unsafe fn from_glib(value: ffi::GtkNaturalWrapMode) -> Self {
7860 skip_assert_initialized!();
7861
7862 match value {
7863 ffi::GTK_NATURAL_WRAP_INHERIT => Self::Inherit,
7864 ffi::GTK_NATURAL_WRAP_NONE => Self::None,
7865 ffi::GTK_NATURAL_WRAP_WORD => Self::Word,
7866 value => Self::__Unknown(value),
7867 }
7868 }
7869}
7870
7871#[cfg(feature = "v4_6")]
7872#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7873impl StaticType for NaturalWrapMode {
7874 #[inline]
7875 #[doc(alias = "gtk_natural_wrap_mode_get_type")]
7876 fn static_type() -> glib::Type {
7877 unsafe { from_glib(ffi::gtk_natural_wrap_mode_get_type()) }
7878 }
7879}
7880
7881#[cfg(feature = "v4_6")]
7882#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7883impl glib::HasParamSpec for NaturalWrapMode {
7884 type ParamSpec = glib::ParamSpecEnum;
7885 type SetValue = Self;
7886 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7887
7888 fn param_spec_builder() -> Self::BuilderFn {
7889 Self::ParamSpec::builder_with_default
7890 }
7891}
7892
7893#[cfg(feature = "v4_6")]
7894#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7895impl glib::value::ValueType for NaturalWrapMode {
7896 type Type = Self;
7897}
7898
7899#[cfg(feature = "v4_6")]
7900#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7901unsafe impl<'a> glib::value::FromValue<'a> for NaturalWrapMode {
7902 type Checker = glib::value::GenericValueTypeChecker<Self>;
7903
7904 #[inline]
7905 unsafe fn from_value(value: &'a glib::Value) -> Self {
7906 skip_assert_initialized!();
7907 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7908 }
7909}
7910
7911#[cfg(feature = "v4_6")]
7912#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7913impl ToValue for NaturalWrapMode {
7914 #[inline]
7915 fn to_value(&self) -> glib::Value {
7916 let mut value = glib::Value::for_value_type::<Self>();
7917 unsafe {
7918 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7919 }
7920 value
7921 }
7922
7923 #[inline]
7924 fn value_type(&self) -> glib::Type {
7925 Self::static_type()
7926 }
7927}
7928
7929#[cfg(feature = "v4_6")]
7930#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7931impl From<NaturalWrapMode> for glib::Value {
7932 #[inline]
7933 fn from(v: NaturalWrapMode) -> Self {
7934 skip_assert_initialized!();
7935 ToValue::to_value(&v)
7936 }
7937}
7938
7939#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7941#[non_exhaustive]
7942#[doc(alias = "GtkNotebookTab")]
7943pub enum NotebookTab {
7944 #[doc(alias = "GTK_NOTEBOOK_TAB_FIRST")]
7946 First,
7947 #[doc(alias = "GTK_NOTEBOOK_TAB_LAST")]
7949 Last,
7950 #[doc(hidden)]
7951 __Unknown(i32),
7952}
7953
7954#[doc(hidden)]
7955impl IntoGlib for NotebookTab {
7956 type GlibType = ffi::GtkNotebookTab;
7957
7958 #[inline]
7959 fn into_glib(self) -> ffi::GtkNotebookTab {
7960 match self {
7961 Self::First => ffi::GTK_NOTEBOOK_TAB_FIRST,
7962 Self::Last => ffi::GTK_NOTEBOOK_TAB_LAST,
7963 Self::__Unknown(value) => value,
7964 }
7965 }
7966}
7967
7968#[doc(hidden)]
7969impl FromGlib<ffi::GtkNotebookTab> for NotebookTab {
7970 #[inline]
7971 unsafe fn from_glib(value: ffi::GtkNotebookTab) -> Self {
7972 skip_assert_initialized!();
7973
7974 match value {
7975 ffi::GTK_NOTEBOOK_TAB_FIRST => Self::First,
7976 ffi::GTK_NOTEBOOK_TAB_LAST => Self::Last,
7977 value => Self::__Unknown(value),
7978 }
7979 }
7980}
7981
7982impl StaticType for NotebookTab {
7983 #[inline]
7984 #[doc(alias = "gtk_notebook_tab_get_type")]
7985 fn static_type() -> glib::Type {
7986 unsafe { from_glib(ffi::gtk_notebook_tab_get_type()) }
7987 }
7988}
7989
7990impl glib::HasParamSpec for NotebookTab {
7991 type ParamSpec = glib::ParamSpecEnum;
7992 type SetValue = Self;
7993 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7994
7995 fn param_spec_builder() -> Self::BuilderFn {
7996 Self::ParamSpec::builder_with_default
7997 }
7998}
7999
8000impl glib::value::ValueType for NotebookTab {
8001 type Type = Self;
8002}
8003
8004unsafe impl<'a> glib::value::FromValue<'a> for NotebookTab {
8005 type Checker = glib::value::GenericValueTypeChecker<Self>;
8006
8007 #[inline]
8008 unsafe fn from_value(value: &'a glib::Value) -> Self {
8009 skip_assert_initialized!();
8010 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8011 }
8012}
8013
8014impl ToValue for NotebookTab {
8015 #[inline]
8016 fn to_value(&self) -> glib::Value {
8017 let mut value = glib::Value::for_value_type::<Self>();
8018 unsafe {
8019 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8020 }
8021 value
8022 }
8023
8024 #[inline]
8025 fn value_type(&self) -> glib::Type {
8026 Self::static_type()
8027 }
8028}
8029
8030impl From<NotebookTab> for glib::Value {
8031 #[inline]
8032 fn from(v: NotebookTab) -> Self {
8033 skip_assert_initialized!();
8034 ToValue::to_value(&v)
8035 }
8036}
8037
8038#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8041#[non_exhaustive]
8042#[doc(alias = "GtkNumberUpLayout")]
8043pub enum NumberUpLayout {
8044 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM")]
8046 Lrtb,
8047 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP")]
8049 Lrbt,
8050 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM")]
8052 Rltb,
8053 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP")]
8055 Rlbt,
8056 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT")]
8058 Tblr,
8059 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT")]
8061 Tbrl,
8062 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT")]
8064 Btlr,
8065 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT")]
8067 Btrl,
8068 #[doc(hidden)]
8069 __Unknown(i32),
8070}
8071
8072#[doc(hidden)]
8073impl IntoGlib for NumberUpLayout {
8074 type GlibType = ffi::GtkNumberUpLayout;
8075
8076 #[inline]
8077 fn into_glib(self) -> ffi::GtkNumberUpLayout {
8078 match self {
8079 Self::Lrtb => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM,
8080 Self::Lrbt => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP,
8081 Self::Rltb => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM,
8082 Self::Rlbt => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP,
8083 Self::Tblr => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT,
8084 Self::Tbrl => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT,
8085 Self::Btlr => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT,
8086 Self::Btrl => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT,
8087 Self::__Unknown(value) => value,
8088 }
8089 }
8090}
8091
8092#[doc(hidden)]
8093impl FromGlib<ffi::GtkNumberUpLayout> for NumberUpLayout {
8094 #[inline]
8095 unsafe fn from_glib(value: ffi::GtkNumberUpLayout) -> Self {
8096 skip_assert_initialized!();
8097
8098 match value {
8099 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM => Self::Lrtb,
8100 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP => Self::Lrbt,
8101 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM => Self::Rltb,
8102 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP => Self::Rlbt,
8103 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT => Self::Tblr,
8104 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT => Self::Tbrl,
8105 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT => Self::Btlr,
8106 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT => Self::Btrl,
8107 value => Self::__Unknown(value),
8108 }
8109 }
8110}
8111
8112impl StaticType for NumberUpLayout {
8113 #[inline]
8114 #[doc(alias = "gtk_number_up_layout_get_type")]
8115 fn static_type() -> glib::Type {
8116 unsafe { from_glib(ffi::gtk_number_up_layout_get_type()) }
8117 }
8118}
8119
8120impl glib::HasParamSpec for NumberUpLayout {
8121 type ParamSpec = glib::ParamSpecEnum;
8122 type SetValue = Self;
8123 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8124
8125 fn param_spec_builder() -> Self::BuilderFn {
8126 Self::ParamSpec::builder_with_default
8127 }
8128}
8129
8130impl glib::value::ValueType for NumberUpLayout {
8131 type Type = Self;
8132}
8133
8134unsafe impl<'a> glib::value::FromValue<'a> for NumberUpLayout {
8135 type Checker = glib::value::GenericValueTypeChecker<Self>;
8136
8137 #[inline]
8138 unsafe fn from_value(value: &'a glib::Value) -> Self {
8139 skip_assert_initialized!();
8140 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8141 }
8142}
8143
8144impl ToValue for NumberUpLayout {
8145 #[inline]
8146 fn to_value(&self) -> glib::Value {
8147 let mut value = glib::Value::for_value_type::<Self>();
8148 unsafe {
8149 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8150 }
8151 value
8152 }
8153
8154 #[inline]
8155 fn value_type(&self) -> glib::Type {
8156 Self::static_type()
8157 }
8158}
8159
8160impl From<NumberUpLayout> for glib::Value {
8161 #[inline]
8162 fn from(v: NumberUpLayout) -> Self {
8163 skip_assert_initialized!();
8164 ToValue::to_value(&v)
8165 }
8166}
8167
8168#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8175#[non_exhaustive]
8176#[doc(alias = "GtkOrdering")]
8177pub enum Ordering {
8178 #[doc(alias = "GTK_ORDERING_SMALLER")]
8180 Smaller,
8181 #[doc(alias = "GTK_ORDERING_EQUAL")]
8183 Equal,
8184 #[doc(alias = "GTK_ORDERING_LARGER")]
8186 Larger,
8187 #[doc(hidden)]
8188 __Unknown(i32),
8189}
8190
8191#[doc(hidden)]
8192impl IntoGlib for Ordering {
8193 type GlibType = ffi::GtkOrdering;
8194
8195 #[inline]
8196 fn into_glib(self) -> ffi::GtkOrdering {
8197 match self {
8198 Self::Smaller => ffi::GTK_ORDERING_SMALLER,
8199 Self::Equal => ffi::GTK_ORDERING_EQUAL,
8200 Self::Larger => ffi::GTK_ORDERING_LARGER,
8201 Self::__Unknown(value) => value,
8202 }
8203 }
8204}
8205
8206#[doc(hidden)]
8207impl FromGlib<ffi::GtkOrdering> for Ordering {
8208 #[inline]
8209 unsafe fn from_glib(value: ffi::GtkOrdering) -> Self {
8210 skip_assert_initialized!();
8211
8212 match value {
8213 ffi::GTK_ORDERING_SMALLER => Self::Smaller,
8214 ffi::GTK_ORDERING_EQUAL => Self::Equal,
8215 ffi::GTK_ORDERING_LARGER => Self::Larger,
8216 value => Self::__Unknown(value),
8217 }
8218 }
8219}
8220
8221impl StaticType for Ordering {
8222 #[inline]
8223 #[doc(alias = "gtk_ordering_get_type")]
8224 fn static_type() -> glib::Type {
8225 unsafe { from_glib(ffi::gtk_ordering_get_type()) }
8226 }
8227}
8228
8229impl glib::HasParamSpec for Ordering {
8230 type ParamSpec = glib::ParamSpecEnum;
8231 type SetValue = Self;
8232 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8233
8234 fn param_spec_builder() -> Self::BuilderFn {
8235 Self::ParamSpec::builder_with_default
8236 }
8237}
8238
8239impl glib::value::ValueType for Ordering {
8240 type Type = Self;
8241}
8242
8243unsafe impl<'a> glib::value::FromValue<'a> for Ordering {
8244 type Checker = glib::value::GenericValueTypeChecker<Self>;
8245
8246 #[inline]
8247 unsafe fn from_value(value: &'a glib::Value) -> Self {
8248 skip_assert_initialized!();
8249 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8250 }
8251}
8252
8253impl ToValue for Ordering {
8254 #[inline]
8255 fn to_value(&self) -> glib::Value {
8256 let mut value = glib::Value::for_value_type::<Self>();
8257 unsafe {
8258 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8259 }
8260 value
8261 }
8262
8263 #[inline]
8264 fn value_type(&self) -> glib::Type {
8265 Self::static_type()
8266 }
8267}
8268
8269impl From<Ordering> for glib::Value {
8270 #[inline]
8271 fn from(v: Ordering) -> Self {
8272 skip_assert_initialized!();
8273 ToValue::to_value(&v)
8274 }
8275}
8276
8277#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8281#[non_exhaustive]
8282#[doc(alias = "GtkOrientation")]
8283pub enum Orientation {
8284 #[doc(alias = "GTK_ORIENTATION_HORIZONTAL")]
8286 Horizontal,
8287 #[doc(alias = "GTK_ORIENTATION_VERTICAL")]
8289 Vertical,
8290 #[doc(hidden)]
8291 __Unknown(i32),
8292}
8293
8294#[doc(hidden)]
8295impl IntoGlib for Orientation {
8296 type GlibType = ffi::GtkOrientation;
8297
8298 #[inline]
8299 fn into_glib(self) -> ffi::GtkOrientation {
8300 match self {
8301 Self::Horizontal => ffi::GTK_ORIENTATION_HORIZONTAL,
8302 Self::Vertical => ffi::GTK_ORIENTATION_VERTICAL,
8303 Self::__Unknown(value) => value,
8304 }
8305 }
8306}
8307
8308#[doc(hidden)]
8309impl FromGlib<ffi::GtkOrientation> for Orientation {
8310 #[inline]
8311 unsafe fn from_glib(value: ffi::GtkOrientation) -> Self {
8312 skip_assert_initialized!();
8313
8314 match value {
8315 ffi::GTK_ORIENTATION_HORIZONTAL => Self::Horizontal,
8316 ffi::GTK_ORIENTATION_VERTICAL => Self::Vertical,
8317 value => Self::__Unknown(value),
8318 }
8319 }
8320}
8321
8322impl StaticType for Orientation {
8323 #[inline]
8324 #[doc(alias = "gtk_orientation_get_type")]
8325 fn static_type() -> glib::Type {
8326 unsafe { from_glib(ffi::gtk_orientation_get_type()) }
8327 }
8328}
8329
8330impl glib::HasParamSpec for Orientation {
8331 type ParamSpec = glib::ParamSpecEnum;
8332 type SetValue = Self;
8333 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8334
8335 fn param_spec_builder() -> Self::BuilderFn {
8336 Self::ParamSpec::builder_with_default
8337 }
8338}
8339
8340impl glib::value::ValueType for Orientation {
8341 type Type = Self;
8342}
8343
8344unsafe impl<'a> glib::value::FromValue<'a> for Orientation {
8345 type Checker = glib::value::GenericValueTypeChecker<Self>;
8346
8347 #[inline]
8348 unsafe fn from_value(value: &'a glib::Value) -> Self {
8349 skip_assert_initialized!();
8350 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8351 }
8352}
8353
8354impl ToValue for Orientation {
8355 #[inline]
8356 fn to_value(&self) -> glib::Value {
8357 let mut value = glib::Value::for_value_type::<Self>();
8358 unsafe {
8359 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8360 }
8361 value
8362 }
8363
8364 #[inline]
8365 fn value_type(&self) -> glib::Type {
8366 Self::static_type()
8367 }
8368}
8369
8370impl From<Orientation> for glib::Value {
8371 #[inline]
8372 fn from(v: Orientation) -> Self {
8373 skip_assert_initialized!();
8374 ToValue::to_value(&v)
8375 }
8376}
8377
8378#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8384#[non_exhaustive]
8385#[doc(alias = "GtkOverflow")]
8386pub enum Overflow {
8387 #[doc(alias = "GTK_OVERFLOW_VISIBLE")]
8390 Visible,
8391 #[doc(alias = "GTK_OVERFLOW_HIDDEN")]
8394 Hidden,
8395 #[doc(hidden)]
8396 __Unknown(i32),
8397}
8398
8399#[doc(hidden)]
8400impl IntoGlib for Overflow {
8401 type GlibType = ffi::GtkOverflow;
8402
8403 #[inline]
8404 fn into_glib(self) -> ffi::GtkOverflow {
8405 match self {
8406 Self::Visible => ffi::GTK_OVERFLOW_VISIBLE,
8407 Self::Hidden => ffi::GTK_OVERFLOW_HIDDEN,
8408 Self::__Unknown(value) => value,
8409 }
8410 }
8411}
8412
8413#[doc(hidden)]
8414impl FromGlib<ffi::GtkOverflow> for Overflow {
8415 #[inline]
8416 unsafe fn from_glib(value: ffi::GtkOverflow) -> Self {
8417 skip_assert_initialized!();
8418
8419 match value {
8420 ffi::GTK_OVERFLOW_VISIBLE => Self::Visible,
8421 ffi::GTK_OVERFLOW_HIDDEN => Self::Hidden,
8422 value => Self::__Unknown(value),
8423 }
8424 }
8425}
8426
8427impl StaticType for Overflow {
8428 #[inline]
8429 #[doc(alias = "gtk_overflow_get_type")]
8430 fn static_type() -> glib::Type {
8431 unsafe { from_glib(ffi::gtk_overflow_get_type()) }
8432 }
8433}
8434
8435impl glib::HasParamSpec for Overflow {
8436 type ParamSpec = glib::ParamSpecEnum;
8437 type SetValue = Self;
8438 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8439
8440 fn param_spec_builder() -> Self::BuilderFn {
8441 Self::ParamSpec::builder_with_default
8442 }
8443}
8444
8445impl glib::value::ValueType for Overflow {
8446 type Type = Self;
8447}
8448
8449unsafe impl<'a> glib::value::FromValue<'a> for Overflow {
8450 type Checker = glib::value::GenericValueTypeChecker<Self>;
8451
8452 #[inline]
8453 unsafe fn from_value(value: &'a glib::Value) -> Self {
8454 skip_assert_initialized!();
8455 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8456 }
8457}
8458
8459impl ToValue for Overflow {
8460 #[inline]
8461 fn to_value(&self) -> glib::Value {
8462 let mut value = glib::Value::for_value_type::<Self>();
8463 unsafe {
8464 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8465 }
8466 value
8467 }
8468
8469 #[inline]
8470 fn value_type(&self) -> glib::Type {
8471 Self::static_type()
8472 }
8473}
8474
8475impl From<Overflow> for glib::Value {
8476 #[inline]
8477 fn from(v: Overflow) -> Self {
8478 skip_assert_initialized!();
8479 ToValue::to_value(&v)
8480 }
8481}
8482
8483#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8487#[non_exhaustive]
8488#[doc(alias = "GtkPackType")]
8489pub enum PackType {
8490 #[doc(alias = "GTK_PACK_START")]
8492 Start,
8493 #[doc(alias = "GTK_PACK_END")]
8495 End,
8496 #[doc(hidden)]
8497 __Unknown(i32),
8498}
8499
8500#[doc(hidden)]
8501impl IntoGlib for PackType {
8502 type GlibType = ffi::GtkPackType;
8503
8504 #[inline]
8505 fn into_glib(self) -> ffi::GtkPackType {
8506 match self {
8507 Self::Start => ffi::GTK_PACK_START,
8508 Self::End => ffi::GTK_PACK_END,
8509 Self::__Unknown(value) => value,
8510 }
8511 }
8512}
8513
8514#[doc(hidden)]
8515impl FromGlib<ffi::GtkPackType> for PackType {
8516 #[inline]
8517 unsafe fn from_glib(value: ffi::GtkPackType) -> Self {
8518 skip_assert_initialized!();
8519
8520 match value {
8521 ffi::GTK_PACK_START => Self::Start,
8522 ffi::GTK_PACK_END => Self::End,
8523 value => Self::__Unknown(value),
8524 }
8525 }
8526}
8527
8528impl StaticType for PackType {
8529 #[inline]
8530 #[doc(alias = "gtk_pack_type_get_type")]
8531 fn static_type() -> glib::Type {
8532 unsafe { from_glib(ffi::gtk_pack_type_get_type()) }
8533 }
8534}
8535
8536impl glib::HasParamSpec for PackType {
8537 type ParamSpec = glib::ParamSpecEnum;
8538 type SetValue = Self;
8539 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8540
8541 fn param_spec_builder() -> Self::BuilderFn {
8542 Self::ParamSpec::builder_with_default
8543 }
8544}
8545
8546impl glib::value::ValueType for PackType {
8547 type Type = Self;
8548}
8549
8550unsafe impl<'a> glib::value::FromValue<'a> for PackType {
8551 type Checker = glib::value::GenericValueTypeChecker<Self>;
8552
8553 #[inline]
8554 unsafe fn from_value(value: &'a glib::Value) -> Self {
8555 skip_assert_initialized!();
8556 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8557 }
8558}
8559
8560impl ToValue for PackType {
8561 #[inline]
8562 fn to_value(&self) -> glib::Value {
8563 let mut value = glib::Value::for_value_type::<Self>();
8564 unsafe {
8565 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8566 }
8567 value
8568 }
8569
8570 #[inline]
8571 fn value_type(&self) -> glib::Type {
8572 Self::static_type()
8573 }
8574}
8575
8576impl From<PackType> for glib::Value {
8577 #[inline]
8578 fn from(v: PackType) -> Self {
8579 skip_assert_initialized!();
8580 ToValue::to_value(&v)
8581 }
8582}
8583
8584#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8586#[non_exhaustive]
8587#[doc(alias = "GtkPadActionType")]
8588pub enum PadActionType {
8589 #[doc(alias = "GTK_PAD_ACTION_BUTTON")]
8591 Button,
8592 #[doc(alias = "GTK_PAD_ACTION_RING")]
8594 Ring,
8595 #[doc(alias = "GTK_PAD_ACTION_STRIP")]
8597 Strip,
8598 #[doc(alias = "GTK_PAD_ACTION_DIAL")]
8600 Dial,
8601 #[doc(hidden)]
8602 __Unknown(i32),
8603}
8604
8605#[doc(hidden)]
8606impl IntoGlib for PadActionType {
8607 type GlibType = ffi::GtkPadActionType;
8608
8609 #[inline]
8610 fn into_glib(self) -> ffi::GtkPadActionType {
8611 match self {
8612 Self::Button => ffi::GTK_PAD_ACTION_BUTTON,
8613 Self::Ring => ffi::GTK_PAD_ACTION_RING,
8614 Self::Strip => ffi::GTK_PAD_ACTION_STRIP,
8615 Self::Dial => ffi::GTK_PAD_ACTION_DIAL,
8616 Self::__Unknown(value) => value,
8617 }
8618 }
8619}
8620
8621#[doc(hidden)]
8622impl FromGlib<ffi::GtkPadActionType> for PadActionType {
8623 #[inline]
8624 unsafe fn from_glib(value: ffi::GtkPadActionType) -> Self {
8625 skip_assert_initialized!();
8626
8627 match value {
8628 ffi::GTK_PAD_ACTION_BUTTON => Self::Button,
8629 ffi::GTK_PAD_ACTION_RING => Self::Ring,
8630 ffi::GTK_PAD_ACTION_STRIP => Self::Strip,
8631 ffi::GTK_PAD_ACTION_DIAL => Self::Dial,
8632 value => Self::__Unknown(value),
8633 }
8634 }
8635}
8636
8637impl StaticType for PadActionType {
8638 #[inline]
8639 #[doc(alias = "gtk_pad_action_type_get_type")]
8640 fn static_type() -> glib::Type {
8641 unsafe { from_glib(ffi::gtk_pad_action_type_get_type()) }
8642 }
8643}
8644
8645impl glib::HasParamSpec for PadActionType {
8646 type ParamSpec = glib::ParamSpecEnum;
8647 type SetValue = Self;
8648 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8649
8650 fn param_spec_builder() -> Self::BuilderFn {
8651 Self::ParamSpec::builder_with_default
8652 }
8653}
8654
8655impl glib::value::ValueType for PadActionType {
8656 type Type = Self;
8657}
8658
8659unsafe impl<'a> glib::value::FromValue<'a> for PadActionType {
8660 type Checker = glib::value::GenericValueTypeChecker<Self>;
8661
8662 #[inline]
8663 unsafe fn from_value(value: &'a glib::Value) -> Self {
8664 skip_assert_initialized!();
8665 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8666 }
8667}
8668
8669impl ToValue for PadActionType {
8670 #[inline]
8671 fn to_value(&self) -> glib::Value {
8672 let mut value = glib::Value::for_value_type::<Self>();
8673 unsafe {
8674 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8675 }
8676 value
8677 }
8678
8679 #[inline]
8680 fn value_type(&self) -> glib::Type {
8681 Self::static_type()
8682 }
8683}
8684
8685impl From<PadActionType> for glib::Value {
8686 #[inline]
8687 fn from(v: PadActionType) -> Self {
8688 skip_assert_initialized!();
8689 ToValue::to_value(&v)
8690 }
8691}
8692
8693#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8695#[non_exhaustive]
8696#[doc(alias = "GtkPageOrientation")]
8697pub enum PageOrientation {
8698 #[doc(alias = "GTK_PAGE_ORIENTATION_PORTRAIT")]
8700 Portrait,
8701 #[doc(alias = "GTK_PAGE_ORIENTATION_LANDSCAPE")]
8703 Landscape,
8704 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT")]
8706 ReversePortrait,
8707 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE")]
8709 ReverseLandscape,
8710 #[doc(hidden)]
8711 __Unknown(i32),
8712}
8713
8714#[doc(hidden)]
8715impl IntoGlib for PageOrientation {
8716 type GlibType = ffi::GtkPageOrientation;
8717
8718 #[inline]
8719 fn into_glib(self) -> ffi::GtkPageOrientation {
8720 match self {
8721 Self::Portrait => ffi::GTK_PAGE_ORIENTATION_PORTRAIT,
8722 Self::Landscape => ffi::GTK_PAGE_ORIENTATION_LANDSCAPE,
8723 Self::ReversePortrait => ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT,
8724 Self::ReverseLandscape => ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE,
8725 Self::__Unknown(value) => value,
8726 }
8727 }
8728}
8729
8730#[doc(hidden)]
8731impl FromGlib<ffi::GtkPageOrientation> for PageOrientation {
8732 #[inline]
8733 unsafe fn from_glib(value: ffi::GtkPageOrientation) -> Self {
8734 skip_assert_initialized!();
8735
8736 match value {
8737 ffi::GTK_PAGE_ORIENTATION_PORTRAIT => Self::Portrait,
8738 ffi::GTK_PAGE_ORIENTATION_LANDSCAPE => Self::Landscape,
8739 ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT => Self::ReversePortrait,
8740 ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE => Self::ReverseLandscape,
8741 value => Self::__Unknown(value),
8742 }
8743 }
8744}
8745
8746impl StaticType for PageOrientation {
8747 #[inline]
8748 #[doc(alias = "gtk_page_orientation_get_type")]
8749 fn static_type() -> glib::Type {
8750 unsafe { from_glib(ffi::gtk_page_orientation_get_type()) }
8751 }
8752}
8753
8754impl glib::HasParamSpec for PageOrientation {
8755 type ParamSpec = glib::ParamSpecEnum;
8756 type SetValue = Self;
8757 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8758
8759 fn param_spec_builder() -> Self::BuilderFn {
8760 Self::ParamSpec::builder_with_default
8761 }
8762}
8763
8764impl glib::value::ValueType for PageOrientation {
8765 type Type = Self;
8766}
8767
8768unsafe impl<'a> glib::value::FromValue<'a> for PageOrientation {
8769 type Checker = glib::value::GenericValueTypeChecker<Self>;
8770
8771 #[inline]
8772 unsafe fn from_value(value: &'a glib::Value) -> Self {
8773 skip_assert_initialized!();
8774 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8775 }
8776}
8777
8778impl ToValue for PageOrientation {
8779 #[inline]
8780 fn to_value(&self) -> glib::Value {
8781 let mut value = glib::Value::for_value_type::<Self>();
8782 unsafe {
8783 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8784 }
8785 value
8786 }
8787
8788 #[inline]
8789 fn value_type(&self) -> glib::Type {
8790 Self::static_type()
8791 }
8792}
8793
8794impl From<PageOrientation> for glib::Value {
8795 #[inline]
8796 fn from(v: PageOrientation) -> Self {
8797 skip_assert_initialized!();
8798 ToValue::to_value(&v)
8799 }
8800}
8801
8802#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8804#[non_exhaustive]
8805#[doc(alias = "GtkPageSet")]
8806pub enum PageSet {
8807 #[doc(alias = "GTK_PAGE_SET_ALL")]
8809 All,
8810 #[doc(alias = "GTK_PAGE_SET_EVEN")]
8812 Even,
8813 #[doc(alias = "GTK_PAGE_SET_ODD")]
8815 Odd,
8816 #[doc(hidden)]
8817 __Unknown(i32),
8818}
8819
8820#[doc(hidden)]
8821impl IntoGlib for PageSet {
8822 type GlibType = ffi::GtkPageSet;
8823
8824 #[inline]
8825 fn into_glib(self) -> ffi::GtkPageSet {
8826 match self {
8827 Self::All => ffi::GTK_PAGE_SET_ALL,
8828 Self::Even => ffi::GTK_PAGE_SET_EVEN,
8829 Self::Odd => ffi::GTK_PAGE_SET_ODD,
8830 Self::__Unknown(value) => value,
8831 }
8832 }
8833}
8834
8835#[doc(hidden)]
8836impl FromGlib<ffi::GtkPageSet> for PageSet {
8837 #[inline]
8838 unsafe fn from_glib(value: ffi::GtkPageSet) -> Self {
8839 skip_assert_initialized!();
8840
8841 match value {
8842 ffi::GTK_PAGE_SET_ALL => Self::All,
8843 ffi::GTK_PAGE_SET_EVEN => Self::Even,
8844 ffi::GTK_PAGE_SET_ODD => Self::Odd,
8845 value => Self::__Unknown(value),
8846 }
8847 }
8848}
8849
8850impl StaticType for PageSet {
8851 #[inline]
8852 #[doc(alias = "gtk_page_set_get_type")]
8853 fn static_type() -> glib::Type {
8854 unsafe { from_glib(ffi::gtk_page_set_get_type()) }
8855 }
8856}
8857
8858impl glib::HasParamSpec for PageSet {
8859 type ParamSpec = glib::ParamSpecEnum;
8860 type SetValue = Self;
8861 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8862
8863 fn param_spec_builder() -> Self::BuilderFn {
8864 Self::ParamSpec::builder_with_default
8865 }
8866}
8867
8868impl glib::value::ValueType for PageSet {
8869 type Type = Self;
8870}
8871
8872unsafe impl<'a> glib::value::FromValue<'a> for PageSet {
8873 type Checker = glib::value::GenericValueTypeChecker<Self>;
8874
8875 #[inline]
8876 unsafe fn from_value(value: &'a glib::Value) -> Self {
8877 skip_assert_initialized!();
8878 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8879 }
8880}
8881
8882impl ToValue for PageSet {
8883 #[inline]
8884 fn to_value(&self) -> glib::Value {
8885 let mut value = glib::Value::for_value_type::<Self>();
8886 unsafe {
8887 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8888 }
8889 value
8890 }
8891
8892 #[inline]
8893 fn value_type(&self) -> glib::Type {
8894 Self::static_type()
8895 }
8896}
8897
8898impl From<PageSet> for glib::Value {
8899 #[inline]
8900 fn from(v: PageSet) -> Self {
8901 skip_assert_initialized!();
8902 ToValue::to_value(&v)
8903 }
8904}
8905
8906#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8908#[non_exhaustive]
8909#[doc(alias = "GtkPanDirection")]
8910pub enum PanDirection {
8911 #[doc(alias = "GTK_PAN_DIRECTION_LEFT")]
8913 Left,
8914 #[doc(alias = "GTK_PAN_DIRECTION_RIGHT")]
8916 Right,
8917 #[doc(alias = "GTK_PAN_DIRECTION_UP")]
8919 Up,
8920 #[doc(alias = "GTK_PAN_DIRECTION_DOWN")]
8922 Down,
8923 #[doc(hidden)]
8924 __Unknown(i32),
8925}
8926
8927#[doc(hidden)]
8928impl IntoGlib for PanDirection {
8929 type GlibType = ffi::GtkPanDirection;
8930
8931 #[inline]
8932 fn into_glib(self) -> ffi::GtkPanDirection {
8933 match self {
8934 Self::Left => ffi::GTK_PAN_DIRECTION_LEFT,
8935 Self::Right => ffi::GTK_PAN_DIRECTION_RIGHT,
8936 Self::Up => ffi::GTK_PAN_DIRECTION_UP,
8937 Self::Down => ffi::GTK_PAN_DIRECTION_DOWN,
8938 Self::__Unknown(value) => value,
8939 }
8940 }
8941}
8942
8943#[doc(hidden)]
8944impl FromGlib<ffi::GtkPanDirection> for PanDirection {
8945 #[inline]
8946 unsafe fn from_glib(value: ffi::GtkPanDirection) -> Self {
8947 skip_assert_initialized!();
8948
8949 match value {
8950 ffi::GTK_PAN_DIRECTION_LEFT => Self::Left,
8951 ffi::GTK_PAN_DIRECTION_RIGHT => Self::Right,
8952 ffi::GTK_PAN_DIRECTION_UP => Self::Up,
8953 ffi::GTK_PAN_DIRECTION_DOWN => Self::Down,
8954 value => Self::__Unknown(value),
8955 }
8956 }
8957}
8958
8959impl StaticType for PanDirection {
8960 #[inline]
8961 #[doc(alias = "gtk_pan_direction_get_type")]
8962 fn static_type() -> glib::Type {
8963 unsafe { from_glib(ffi::gtk_pan_direction_get_type()) }
8964 }
8965}
8966
8967impl glib::HasParamSpec for PanDirection {
8968 type ParamSpec = glib::ParamSpecEnum;
8969 type SetValue = Self;
8970 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8971
8972 fn param_spec_builder() -> Self::BuilderFn {
8973 Self::ParamSpec::builder_with_default
8974 }
8975}
8976
8977impl glib::value::ValueType for PanDirection {
8978 type Type = Self;
8979}
8980
8981unsafe impl<'a> glib::value::FromValue<'a> for PanDirection {
8982 type Checker = glib::value::GenericValueTypeChecker<Self>;
8983
8984 #[inline]
8985 unsafe fn from_value(value: &'a glib::Value) -> Self {
8986 skip_assert_initialized!();
8987 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8988 }
8989}
8990
8991impl ToValue for PanDirection {
8992 #[inline]
8993 fn to_value(&self) -> glib::Value {
8994 let mut value = glib::Value::for_value_type::<Self>();
8995 unsafe {
8996 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8997 }
8998 value
8999 }
9000
9001 #[inline]
9002 fn value_type(&self) -> glib::Type {
9003 Self::static_type()
9004 }
9005}
9006
9007impl From<PanDirection> for glib::Value {
9008 #[inline]
9009 fn from(v: PanDirection) -> Self {
9010 skip_assert_initialized!();
9011 ToValue::to_value(&v)
9012 }
9013}
9014
9015#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9018#[non_exhaustive]
9019#[doc(alias = "GtkPolicyType")]
9020pub enum PolicyType {
9021 #[doc(alias = "GTK_POLICY_ALWAYS")]
9024 Always,
9025 #[doc(alias = "GTK_POLICY_AUTOMATIC")]
9028 Automatic,
9029 #[doc(alias = "GTK_POLICY_NEVER")]
9032 Never,
9033 #[doc(alias = "GTK_POLICY_EXTERNAL")]
9037 External,
9038 #[doc(hidden)]
9039 __Unknown(i32),
9040}
9041
9042#[doc(hidden)]
9043impl IntoGlib for PolicyType {
9044 type GlibType = ffi::GtkPolicyType;
9045
9046 #[inline]
9047 fn into_glib(self) -> ffi::GtkPolicyType {
9048 match self {
9049 Self::Always => ffi::GTK_POLICY_ALWAYS,
9050 Self::Automatic => ffi::GTK_POLICY_AUTOMATIC,
9051 Self::Never => ffi::GTK_POLICY_NEVER,
9052 Self::External => ffi::GTK_POLICY_EXTERNAL,
9053 Self::__Unknown(value) => value,
9054 }
9055 }
9056}
9057
9058#[doc(hidden)]
9059impl FromGlib<ffi::GtkPolicyType> for PolicyType {
9060 #[inline]
9061 unsafe fn from_glib(value: ffi::GtkPolicyType) -> Self {
9062 skip_assert_initialized!();
9063
9064 match value {
9065 ffi::GTK_POLICY_ALWAYS => Self::Always,
9066 ffi::GTK_POLICY_AUTOMATIC => Self::Automatic,
9067 ffi::GTK_POLICY_NEVER => Self::Never,
9068 ffi::GTK_POLICY_EXTERNAL => Self::External,
9069 value => Self::__Unknown(value),
9070 }
9071 }
9072}
9073
9074impl StaticType for PolicyType {
9075 #[inline]
9076 #[doc(alias = "gtk_policy_type_get_type")]
9077 fn static_type() -> glib::Type {
9078 unsafe { from_glib(ffi::gtk_policy_type_get_type()) }
9079 }
9080}
9081
9082impl glib::HasParamSpec for PolicyType {
9083 type ParamSpec = glib::ParamSpecEnum;
9084 type SetValue = Self;
9085 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9086
9087 fn param_spec_builder() -> Self::BuilderFn {
9088 Self::ParamSpec::builder_with_default
9089 }
9090}
9091
9092impl glib::value::ValueType for PolicyType {
9093 type Type = Self;
9094}
9095
9096unsafe impl<'a> glib::value::FromValue<'a> for PolicyType {
9097 type Checker = glib::value::GenericValueTypeChecker<Self>;
9098
9099 #[inline]
9100 unsafe fn from_value(value: &'a glib::Value) -> Self {
9101 skip_assert_initialized!();
9102 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9103 }
9104}
9105
9106impl ToValue for PolicyType {
9107 #[inline]
9108 fn to_value(&self) -> glib::Value {
9109 let mut value = glib::Value::for_value_type::<Self>();
9110 unsafe {
9111 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9112 }
9113 value
9114 }
9115
9116 #[inline]
9117 fn value_type(&self) -> glib::Type {
9118 Self::static_type()
9119 }
9120}
9121
9122impl From<PolicyType> for glib::Value {
9123 #[inline]
9124 fn from(v: PolicyType) -> Self {
9125 skip_assert_initialized!();
9126 ToValue::to_value(&v)
9127 }
9128}
9129
9130#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9135#[non_exhaustive]
9136#[doc(alias = "GtkPositionType")]
9137pub enum PositionType {
9138 #[doc(alias = "GTK_POS_LEFT")]
9140 Left,
9141 #[doc(alias = "GTK_POS_RIGHT")]
9143 Right,
9144 #[doc(alias = "GTK_POS_TOP")]
9146 Top,
9147 #[doc(alias = "GTK_POS_BOTTOM")]
9149 Bottom,
9150 #[doc(hidden)]
9151 __Unknown(i32),
9152}
9153
9154#[doc(hidden)]
9155impl IntoGlib for PositionType {
9156 type GlibType = ffi::GtkPositionType;
9157
9158 #[inline]
9159 fn into_glib(self) -> ffi::GtkPositionType {
9160 match self {
9161 Self::Left => ffi::GTK_POS_LEFT,
9162 Self::Right => ffi::GTK_POS_RIGHT,
9163 Self::Top => ffi::GTK_POS_TOP,
9164 Self::Bottom => ffi::GTK_POS_BOTTOM,
9165 Self::__Unknown(value) => value,
9166 }
9167 }
9168}
9169
9170#[doc(hidden)]
9171impl FromGlib<ffi::GtkPositionType> for PositionType {
9172 #[inline]
9173 unsafe fn from_glib(value: ffi::GtkPositionType) -> Self {
9174 skip_assert_initialized!();
9175
9176 match value {
9177 ffi::GTK_POS_LEFT => Self::Left,
9178 ffi::GTK_POS_RIGHT => Self::Right,
9179 ffi::GTK_POS_TOP => Self::Top,
9180 ffi::GTK_POS_BOTTOM => Self::Bottom,
9181 value => Self::__Unknown(value),
9182 }
9183 }
9184}
9185
9186impl StaticType for PositionType {
9187 #[inline]
9188 #[doc(alias = "gtk_position_type_get_type")]
9189 fn static_type() -> glib::Type {
9190 unsafe { from_glib(ffi::gtk_position_type_get_type()) }
9191 }
9192}
9193
9194impl glib::HasParamSpec for PositionType {
9195 type ParamSpec = glib::ParamSpecEnum;
9196 type SetValue = Self;
9197 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9198
9199 fn param_spec_builder() -> Self::BuilderFn {
9200 Self::ParamSpec::builder_with_default
9201 }
9202}
9203
9204impl glib::value::ValueType for PositionType {
9205 type Type = Self;
9206}
9207
9208unsafe impl<'a> glib::value::FromValue<'a> for PositionType {
9209 type Checker = glib::value::GenericValueTypeChecker<Self>;
9210
9211 #[inline]
9212 unsafe fn from_value(value: &'a glib::Value) -> Self {
9213 skip_assert_initialized!();
9214 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9215 }
9216}
9217
9218impl ToValue for PositionType {
9219 #[inline]
9220 fn to_value(&self) -> glib::Value {
9221 let mut value = glib::Value::for_value_type::<Self>();
9222 unsafe {
9223 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9224 }
9225 value
9226 }
9227
9228 #[inline]
9229 fn value_type(&self) -> glib::Type {
9230 Self::static_type()
9231 }
9232}
9233
9234impl From<PositionType> for glib::Value {
9235 #[inline]
9236 fn from(v: PositionType) -> Self {
9237 skip_assert_initialized!();
9238 ToValue::to_value(&v)
9239 }
9240}
9241
9242#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9244#[non_exhaustive]
9245#[doc(alias = "GtkPrintDuplex")]
9246pub enum PrintDuplex {
9247 #[doc(alias = "GTK_PRINT_DUPLEX_SIMPLEX")]
9249 Simplex,
9250 #[doc(alias = "GTK_PRINT_DUPLEX_HORIZONTAL")]
9252 Horizontal,
9253 #[doc(alias = "GTK_PRINT_DUPLEX_VERTICAL")]
9255 Vertical,
9256 #[doc(hidden)]
9257 __Unknown(i32),
9258}
9259
9260#[doc(hidden)]
9261impl IntoGlib for PrintDuplex {
9262 type GlibType = ffi::GtkPrintDuplex;
9263
9264 #[inline]
9265 fn into_glib(self) -> ffi::GtkPrintDuplex {
9266 match self {
9267 Self::Simplex => ffi::GTK_PRINT_DUPLEX_SIMPLEX,
9268 Self::Horizontal => ffi::GTK_PRINT_DUPLEX_HORIZONTAL,
9269 Self::Vertical => ffi::GTK_PRINT_DUPLEX_VERTICAL,
9270 Self::__Unknown(value) => value,
9271 }
9272 }
9273}
9274
9275#[doc(hidden)]
9276impl FromGlib<ffi::GtkPrintDuplex> for PrintDuplex {
9277 #[inline]
9278 unsafe fn from_glib(value: ffi::GtkPrintDuplex) -> Self {
9279 skip_assert_initialized!();
9280
9281 match value {
9282 ffi::GTK_PRINT_DUPLEX_SIMPLEX => Self::Simplex,
9283 ffi::GTK_PRINT_DUPLEX_HORIZONTAL => Self::Horizontal,
9284 ffi::GTK_PRINT_DUPLEX_VERTICAL => Self::Vertical,
9285 value => Self::__Unknown(value),
9286 }
9287 }
9288}
9289
9290impl StaticType for PrintDuplex {
9291 #[inline]
9292 #[doc(alias = "gtk_print_duplex_get_type")]
9293 fn static_type() -> glib::Type {
9294 unsafe { from_glib(ffi::gtk_print_duplex_get_type()) }
9295 }
9296}
9297
9298impl glib::HasParamSpec for PrintDuplex {
9299 type ParamSpec = glib::ParamSpecEnum;
9300 type SetValue = Self;
9301 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9302
9303 fn param_spec_builder() -> Self::BuilderFn {
9304 Self::ParamSpec::builder_with_default
9305 }
9306}
9307
9308impl glib::value::ValueType for PrintDuplex {
9309 type Type = Self;
9310}
9311
9312unsafe impl<'a> glib::value::FromValue<'a> for PrintDuplex {
9313 type Checker = glib::value::GenericValueTypeChecker<Self>;
9314
9315 #[inline]
9316 unsafe fn from_value(value: &'a glib::Value) -> Self {
9317 skip_assert_initialized!();
9318 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9319 }
9320}
9321
9322impl ToValue for PrintDuplex {
9323 #[inline]
9324 fn to_value(&self) -> glib::Value {
9325 let mut value = glib::Value::for_value_type::<Self>();
9326 unsafe {
9327 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9328 }
9329 value
9330 }
9331
9332 #[inline]
9333 fn value_type(&self) -> glib::Type {
9334 Self::static_type()
9335 }
9336}
9337
9338impl From<PrintDuplex> for glib::Value {
9339 #[inline]
9340 fn from(v: PrintDuplex) -> Self {
9341 skip_assert_initialized!();
9342 ToValue::to_value(&v)
9343 }
9344}
9345
9346#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9349#[non_exhaustive]
9350#[doc(alias = "GtkPrintError")]
9351pub enum PrintError {
9352 #[doc(alias = "GTK_PRINT_ERROR_GENERAL")]
9354 General,
9355 #[doc(alias = "GTK_PRINT_ERROR_INTERNAL_ERROR")]
9357 InternalError,
9358 #[doc(alias = "GTK_PRINT_ERROR_NOMEM")]
9360 Nomem,
9361 #[doc(alias = "GTK_PRINT_ERROR_INVALID_FILE")]
9364 InvalidFile,
9365 #[doc(hidden)]
9366 __Unknown(i32),
9367}
9368
9369#[doc(hidden)]
9370impl IntoGlib for PrintError {
9371 type GlibType = ffi::GtkPrintError;
9372
9373 #[inline]
9374 fn into_glib(self) -> ffi::GtkPrintError {
9375 match self {
9376 Self::General => ffi::GTK_PRINT_ERROR_GENERAL,
9377 Self::InternalError => ffi::GTK_PRINT_ERROR_INTERNAL_ERROR,
9378 Self::Nomem => ffi::GTK_PRINT_ERROR_NOMEM,
9379 Self::InvalidFile => ffi::GTK_PRINT_ERROR_INVALID_FILE,
9380 Self::__Unknown(value) => value,
9381 }
9382 }
9383}
9384
9385#[doc(hidden)]
9386impl FromGlib<ffi::GtkPrintError> for PrintError {
9387 #[inline]
9388 unsafe fn from_glib(value: ffi::GtkPrintError) -> Self {
9389 skip_assert_initialized!();
9390
9391 match value {
9392 ffi::GTK_PRINT_ERROR_GENERAL => Self::General,
9393 ffi::GTK_PRINT_ERROR_INTERNAL_ERROR => Self::InternalError,
9394 ffi::GTK_PRINT_ERROR_NOMEM => Self::Nomem,
9395 ffi::GTK_PRINT_ERROR_INVALID_FILE => Self::InvalidFile,
9396 value => Self::__Unknown(value),
9397 }
9398 }
9399}
9400
9401impl glib::error::ErrorDomain for PrintError {
9402 #[inline]
9403 fn domain() -> glib::Quark {
9404 skip_assert_initialized!();
9405
9406 unsafe { from_glib(ffi::gtk_print_error_quark()) }
9407 }
9408
9409 #[inline]
9410 fn code(self) -> i32 {
9411 self.into_glib()
9412 }
9413
9414 #[inline]
9415 #[allow(clippy::match_single_binding)]
9416 fn from(code: i32) -> Option<Self> {
9417 skip_assert_initialized!();
9418 match unsafe { from_glib(code) } {
9419 value => Some(value),
9420 }
9421 }
9422}
9423
9424impl StaticType for PrintError {
9425 #[inline]
9426 #[doc(alias = "gtk_print_error_get_type")]
9427 fn static_type() -> glib::Type {
9428 unsafe { from_glib(ffi::gtk_print_error_get_type()) }
9429 }
9430}
9431
9432impl glib::HasParamSpec for PrintError {
9433 type ParamSpec = glib::ParamSpecEnum;
9434 type SetValue = Self;
9435 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9436
9437 fn param_spec_builder() -> Self::BuilderFn {
9438 Self::ParamSpec::builder_with_default
9439 }
9440}
9441
9442impl glib::value::ValueType for PrintError {
9443 type Type = Self;
9444}
9445
9446unsafe impl<'a> glib::value::FromValue<'a> for PrintError {
9447 type Checker = glib::value::GenericValueTypeChecker<Self>;
9448
9449 #[inline]
9450 unsafe fn from_value(value: &'a glib::Value) -> Self {
9451 skip_assert_initialized!();
9452 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9453 }
9454}
9455
9456impl ToValue for PrintError {
9457 #[inline]
9458 fn to_value(&self) -> glib::Value {
9459 let mut value = glib::Value::for_value_type::<Self>();
9460 unsafe {
9461 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9462 }
9463 value
9464 }
9465
9466 #[inline]
9467 fn value_type(&self) -> glib::Type {
9468 Self::static_type()
9469 }
9470}
9471
9472impl From<PrintError> for glib::Value {
9473 #[inline]
9474 fn from(v: PrintError) -> Self {
9475 skip_assert_initialized!();
9476 ToValue::to_value(&v)
9477 }
9478}
9479
9480#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9484#[non_exhaustive]
9485#[doc(alias = "GtkPrintOperationAction")]
9486pub enum PrintOperationAction {
9487 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG")]
9489 PrintDialog,
9490 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT")]
9494 Print,
9495 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PREVIEW")]
9497 Preview,
9498 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_EXPORT")]
9501 Export,
9502 #[doc(hidden)]
9503 __Unknown(i32),
9504}
9505
9506#[doc(hidden)]
9507impl IntoGlib for PrintOperationAction {
9508 type GlibType = ffi::GtkPrintOperationAction;
9509
9510 #[inline]
9511 fn into_glib(self) -> ffi::GtkPrintOperationAction {
9512 match self {
9513 Self::PrintDialog => ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
9514 Self::Print => ffi::GTK_PRINT_OPERATION_ACTION_PRINT,
9515 Self::Preview => ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW,
9516 Self::Export => ffi::GTK_PRINT_OPERATION_ACTION_EXPORT,
9517 Self::__Unknown(value) => value,
9518 }
9519 }
9520}
9521
9522#[doc(hidden)]
9523impl FromGlib<ffi::GtkPrintOperationAction> for PrintOperationAction {
9524 #[inline]
9525 unsafe fn from_glib(value: ffi::GtkPrintOperationAction) -> Self {
9526 skip_assert_initialized!();
9527
9528 match value {
9529 ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG => Self::PrintDialog,
9530 ffi::GTK_PRINT_OPERATION_ACTION_PRINT => Self::Print,
9531 ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW => Self::Preview,
9532 ffi::GTK_PRINT_OPERATION_ACTION_EXPORT => Self::Export,
9533 value => Self::__Unknown(value),
9534 }
9535 }
9536}
9537
9538impl StaticType for PrintOperationAction {
9539 #[inline]
9540 #[doc(alias = "gtk_print_operation_action_get_type")]
9541 fn static_type() -> glib::Type {
9542 unsafe { from_glib(ffi::gtk_print_operation_action_get_type()) }
9543 }
9544}
9545
9546impl glib::HasParamSpec for PrintOperationAction {
9547 type ParamSpec = glib::ParamSpecEnum;
9548 type SetValue = Self;
9549 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9550
9551 fn param_spec_builder() -> Self::BuilderFn {
9552 Self::ParamSpec::builder_with_default
9553 }
9554}
9555
9556impl glib::value::ValueType for PrintOperationAction {
9557 type Type = Self;
9558}
9559
9560unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationAction {
9561 type Checker = glib::value::GenericValueTypeChecker<Self>;
9562
9563 #[inline]
9564 unsafe fn from_value(value: &'a glib::Value) -> Self {
9565 skip_assert_initialized!();
9566 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9567 }
9568}
9569
9570impl ToValue for PrintOperationAction {
9571 #[inline]
9572 fn to_value(&self) -> glib::Value {
9573 let mut value = glib::Value::for_value_type::<Self>();
9574 unsafe {
9575 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9576 }
9577 value
9578 }
9579
9580 #[inline]
9581 fn value_type(&self) -> glib::Type {
9582 Self::static_type()
9583 }
9584}
9585
9586impl From<PrintOperationAction> for glib::Value {
9587 #[inline]
9588 fn from(v: PrintOperationAction) -> Self {
9589 skip_assert_initialized!();
9590 ToValue::to_value(&v)
9591 }
9592}
9593
9594#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9598#[non_exhaustive]
9599#[doc(alias = "GtkPrintOperationResult")]
9600pub enum PrintOperationResult {
9601 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_ERROR")]
9603 Error,
9604 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_APPLY")]
9606 Apply,
9607 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_CANCEL")]
9610 Cancel,
9611 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_IN_PROGRESS")]
9614 InProgress,
9615 #[doc(hidden)]
9616 __Unknown(i32),
9617}
9618
9619#[doc(hidden)]
9620impl IntoGlib for PrintOperationResult {
9621 type GlibType = ffi::GtkPrintOperationResult;
9622
9623 #[inline]
9624 fn into_glib(self) -> ffi::GtkPrintOperationResult {
9625 match self {
9626 Self::Error => ffi::GTK_PRINT_OPERATION_RESULT_ERROR,
9627 Self::Apply => ffi::GTK_PRINT_OPERATION_RESULT_APPLY,
9628 Self::Cancel => ffi::GTK_PRINT_OPERATION_RESULT_CANCEL,
9629 Self::InProgress => ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS,
9630 Self::__Unknown(value) => value,
9631 }
9632 }
9633}
9634
9635#[doc(hidden)]
9636impl FromGlib<ffi::GtkPrintOperationResult> for PrintOperationResult {
9637 #[inline]
9638 unsafe fn from_glib(value: ffi::GtkPrintOperationResult) -> Self {
9639 skip_assert_initialized!();
9640
9641 match value {
9642 ffi::GTK_PRINT_OPERATION_RESULT_ERROR => Self::Error,
9643 ffi::GTK_PRINT_OPERATION_RESULT_APPLY => Self::Apply,
9644 ffi::GTK_PRINT_OPERATION_RESULT_CANCEL => Self::Cancel,
9645 ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS => Self::InProgress,
9646 value => Self::__Unknown(value),
9647 }
9648 }
9649}
9650
9651impl StaticType for PrintOperationResult {
9652 #[inline]
9653 #[doc(alias = "gtk_print_operation_result_get_type")]
9654 fn static_type() -> glib::Type {
9655 unsafe { from_glib(ffi::gtk_print_operation_result_get_type()) }
9656 }
9657}
9658
9659impl glib::HasParamSpec for PrintOperationResult {
9660 type ParamSpec = glib::ParamSpecEnum;
9661 type SetValue = Self;
9662 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9663
9664 fn param_spec_builder() -> Self::BuilderFn {
9665 Self::ParamSpec::builder_with_default
9666 }
9667}
9668
9669impl glib::value::ValueType for PrintOperationResult {
9670 type Type = Self;
9671}
9672
9673unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationResult {
9674 type Checker = glib::value::GenericValueTypeChecker<Self>;
9675
9676 #[inline]
9677 unsafe fn from_value(value: &'a glib::Value) -> Self {
9678 skip_assert_initialized!();
9679 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9680 }
9681}
9682
9683impl ToValue for PrintOperationResult {
9684 #[inline]
9685 fn to_value(&self) -> glib::Value {
9686 let mut value = glib::Value::for_value_type::<Self>();
9687 unsafe {
9688 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9689 }
9690 value
9691 }
9692
9693 #[inline]
9694 fn value_type(&self) -> glib::Type {
9695 Self::static_type()
9696 }
9697}
9698
9699impl From<PrintOperationResult> for glib::Value {
9700 #[inline]
9701 fn from(v: PrintOperationResult) -> Self {
9702 skip_assert_initialized!();
9703 ToValue::to_value(&v)
9704 }
9705}
9706
9707#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9709#[non_exhaustive]
9710#[doc(alias = "GtkPrintPages")]
9711pub enum PrintPages {
9712 #[doc(alias = "GTK_PRINT_PAGES_ALL")]
9714 All,
9715 #[doc(alias = "GTK_PRINT_PAGES_CURRENT")]
9717 Current,
9718 #[doc(alias = "GTK_PRINT_PAGES_RANGES")]
9720 Ranges,
9721 #[doc(alias = "GTK_PRINT_PAGES_SELECTION")]
9723 Selection,
9724 #[doc(hidden)]
9725 __Unknown(i32),
9726}
9727
9728#[doc(hidden)]
9729impl IntoGlib for PrintPages {
9730 type GlibType = ffi::GtkPrintPages;
9731
9732 #[inline]
9733 fn into_glib(self) -> ffi::GtkPrintPages {
9734 match self {
9735 Self::All => ffi::GTK_PRINT_PAGES_ALL,
9736 Self::Current => ffi::GTK_PRINT_PAGES_CURRENT,
9737 Self::Ranges => ffi::GTK_PRINT_PAGES_RANGES,
9738 Self::Selection => ffi::GTK_PRINT_PAGES_SELECTION,
9739 Self::__Unknown(value) => value,
9740 }
9741 }
9742}
9743
9744#[doc(hidden)]
9745impl FromGlib<ffi::GtkPrintPages> for PrintPages {
9746 #[inline]
9747 unsafe fn from_glib(value: ffi::GtkPrintPages) -> Self {
9748 skip_assert_initialized!();
9749
9750 match value {
9751 ffi::GTK_PRINT_PAGES_ALL => Self::All,
9752 ffi::GTK_PRINT_PAGES_CURRENT => Self::Current,
9753 ffi::GTK_PRINT_PAGES_RANGES => Self::Ranges,
9754 ffi::GTK_PRINT_PAGES_SELECTION => Self::Selection,
9755 value => Self::__Unknown(value),
9756 }
9757 }
9758}
9759
9760impl StaticType for PrintPages {
9761 #[inline]
9762 #[doc(alias = "gtk_print_pages_get_type")]
9763 fn static_type() -> glib::Type {
9764 unsafe { from_glib(ffi::gtk_print_pages_get_type()) }
9765 }
9766}
9767
9768impl glib::HasParamSpec for PrintPages {
9769 type ParamSpec = glib::ParamSpecEnum;
9770 type SetValue = Self;
9771 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9772
9773 fn param_spec_builder() -> Self::BuilderFn {
9774 Self::ParamSpec::builder_with_default
9775 }
9776}
9777
9778impl glib::value::ValueType for PrintPages {
9779 type Type = Self;
9780}
9781
9782unsafe impl<'a> glib::value::FromValue<'a> for PrintPages {
9783 type Checker = glib::value::GenericValueTypeChecker<Self>;
9784
9785 #[inline]
9786 unsafe fn from_value(value: &'a glib::Value) -> Self {
9787 skip_assert_initialized!();
9788 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9789 }
9790}
9791
9792impl ToValue for PrintPages {
9793 #[inline]
9794 fn to_value(&self) -> glib::Value {
9795 let mut value = glib::Value::for_value_type::<Self>();
9796 unsafe {
9797 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9798 }
9799 value
9800 }
9801
9802 #[inline]
9803 fn value_type(&self) -> glib::Type {
9804 Self::static_type()
9805 }
9806}
9807
9808impl From<PrintPages> for glib::Value {
9809 #[inline]
9810 fn from(v: PrintPages) -> Self {
9811 skip_assert_initialized!();
9812 ToValue::to_value(&v)
9813 }
9814}
9815
9816#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9818#[non_exhaustive]
9819#[doc(alias = "GtkPrintQuality")]
9820pub enum PrintQuality {
9821 #[doc(alias = "GTK_PRINT_QUALITY_LOW")]
9823 Low,
9824 #[doc(alias = "GTK_PRINT_QUALITY_NORMAL")]
9826 Normal,
9827 #[doc(alias = "GTK_PRINT_QUALITY_HIGH")]
9829 High,
9830 #[doc(alias = "GTK_PRINT_QUALITY_DRAFT")]
9832 Draft,
9833 #[doc(hidden)]
9834 __Unknown(i32),
9835}
9836
9837#[doc(hidden)]
9838impl IntoGlib for PrintQuality {
9839 type GlibType = ffi::GtkPrintQuality;
9840
9841 #[inline]
9842 fn into_glib(self) -> ffi::GtkPrintQuality {
9843 match self {
9844 Self::Low => ffi::GTK_PRINT_QUALITY_LOW,
9845 Self::Normal => ffi::GTK_PRINT_QUALITY_NORMAL,
9846 Self::High => ffi::GTK_PRINT_QUALITY_HIGH,
9847 Self::Draft => ffi::GTK_PRINT_QUALITY_DRAFT,
9848 Self::__Unknown(value) => value,
9849 }
9850 }
9851}
9852
9853#[doc(hidden)]
9854impl FromGlib<ffi::GtkPrintQuality> for PrintQuality {
9855 #[inline]
9856 unsafe fn from_glib(value: ffi::GtkPrintQuality) -> Self {
9857 skip_assert_initialized!();
9858
9859 match value {
9860 ffi::GTK_PRINT_QUALITY_LOW => Self::Low,
9861 ffi::GTK_PRINT_QUALITY_NORMAL => Self::Normal,
9862 ffi::GTK_PRINT_QUALITY_HIGH => Self::High,
9863 ffi::GTK_PRINT_QUALITY_DRAFT => Self::Draft,
9864 value => Self::__Unknown(value),
9865 }
9866 }
9867}
9868
9869impl StaticType for PrintQuality {
9870 #[inline]
9871 #[doc(alias = "gtk_print_quality_get_type")]
9872 fn static_type() -> glib::Type {
9873 unsafe { from_glib(ffi::gtk_print_quality_get_type()) }
9874 }
9875}
9876
9877impl glib::HasParamSpec for PrintQuality {
9878 type ParamSpec = glib::ParamSpecEnum;
9879 type SetValue = Self;
9880 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9881
9882 fn param_spec_builder() -> Self::BuilderFn {
9883 Self::ParamSpec::builder_with_default
9884 }
9885}
9886
9887impl glib::value::ValueType for PrintQuality {
9888 type Type = Self;
9889}
9890
9891unsafe impl<'a> glib::value::FromValue<'a> for PrintQuality {
9892 type Checker = glib::value::GenericValueTypeChecker<Self>;
9893
9894 #[inline]
9895 unsafe fn from_value(value: &'a glib::Value) -> Self {
9896 skip_assert_initialized!();
9897 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9898 }
9899}
9900
9901impl ToValue for PrintQuality {
9902 #[inline]
9903 fn to_value(&self) -> glib::Value {
9904 let mut value = glib::Value::for_value_type::<Self>();
9905 unsafe {
9906 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9907 }
9908 value
9909 }
9910
9911 #[inline]
9912 fn value_type(&self) -> glib::Type {
9913 Self::static_type()
9914 }
9915}
9916
9917impl From<PrintQuality> for glib::Value {
9918 #[inline]
9919 fn from(v: PrintQuality) -> Self {
9920 skip_assert_initialized!();
9921 ToValue::to_value(&v)
9922 }
9923}
9924
9925#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9928#[non_exhaustive]
9929#[doc(alias = "GtkPrintStatus")]
9930pub enum PrintStatus {
9931 #[doc(alias = "GTK_PRINT_STATUS_INITIAL")]
9934 Initial,
9935 #[doc(alias = "GTK_PRINT_STATUS_PREPARING")]
9938 Preparing,
9939 #[doc(alias = "GTK_PRINT_STATUS_GENERATING_DATA")]
9942 GeneratingData,
9943 #[doc(alias = "GTK_PRINT_STATUS_SENDING_DATA")]
9946 SendingData,
9947 #[doc(alias = "GTK_PRINT_STATUS_PENDING")]
9950 Pending,
9951 #[doc(alias = "GTK_PRINT_STATUS_PENDING_ISSUE")]
9954 PendingIssue,
9955 #[doc(alias = "GTK_PRINT_STATUS_PRINTING")]
9957 Printing,
9958 #[doc(alias = "GTK_PRINT_STATUS_FINISHED")]
9960 Finished,
9961 #[doc(alias = "GTK_PRINT_STATUS_FINISHED_ABORTED")]
9963 FinishedAborted,
9964 #[doc(hidden)]
9965 __Unknown(i32),
9966}
9967
9968#[doc(hidden)]
9969impl IntoGlib for PrintStatus {
9970 type GlibType = ffi::GtkPrintStatus;
9971
9972 #[inline]
9973 fn into_glib(self) -> ffi::GtkPrintStatus {
9974 match self {
9975 Self::Initial => ffi::GTK_PRINT_STATUS_INITIAL,
9976 Self::Preparing => ffi::GTK_PRINT_STATUS_PREPARING,
9977 Self::GeneratingData => ffi::GTK_PRINT_STATUS_GENERATING_DATA,
9978 Self::SendingData => ffi::GTK_PRINT_STATUS_SENDING_DATA,
9979 Self::Pending => ffi::GTK_PRINT_STATUS_PENDING,
9980 Self::PendingIssue => ffi::GTK_PRINT_STATUS_PENDING_ISSUE,
9981 Self::Printing => ffi::GTK_PRINT_STATUS_PRINTING,
9982 Self::Finished => ffi::GTK_PRINT_STATUS_FINISHED,
9983 Self::FinishedAborted => ffi::GTK_PRINT_STATUS_FINISHED_ABORTED,
9984 Self::__Unknown(value) => value,
9985 }
9986 }
9987}
9988
9989#[doc(hidden)]
9990impl FromGlib<ffi::GtkPrintStatus> for PrintStatus {
9991 #[inline]
9992 unsafe fn from_glib(value: ffi::GtkPrintStatus) -> Self {
9993 skip_assert_initialized!();
9994
9995 match value {
9996 ffi::GTK_PRINT_STATUS_INITIAL => Self::Initial,
9997 ffi::GTK_PRINT_STATUS_PREPARING => Self::Preparing,
9998 ffi::GTK_PRINT_STATUS_GENERATING_DATA => Self::GeneratingData,
9999 ffi::GTK_PRINT_STATUS_SENDING_DATA => Self::SendingData,
10000 ffi::GTK_PRINT_STATUS_PENDING => Self::Pending,
10001 ffi::GTK_PRINT_STATUS_PENDING_ISSUE => Self::PendingIssue,
10002 ffi::GTK_PRINT_STATUS_PRINTING => Self::Printing,
10003 ffi::GTK_PRINT_STATUS_FINISHED => Self::Finished,
10004 ffi::GTK_PRINT_STATUS_FINISHED_ABORTED => Self::FinishedAborted,
10005 value => Self::__Unknown(value),
10006 }
10007 }
10008}
10009
10010impl StaticType for PrintStatus {
10011 #[inline]
10012 #[doc(alias = "gtk_print_status_get_type")]
10013 fn static_type() -> glib::Type {
10014 unsafe { from_glib(ffi::gtk_print_status_get_type()) }
10015 }
10016}
10017
10018impl glib::HasParamSpec for PrintStatus {
10019 type ParamSpec = glib::ParamSpecEnum;
10020 type SetValue = Self;
10021 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10022
10023 fn param_spec_builder() -> Self::BuilderFn {
10024 Self::ParamSpec::builder_with_default
10025 }
10026}
10027
10028impl glib::value::ValueType for PrintStatus {
10029 type Type = Self;
10030}
10031
10032unsafe impl<'a> glib::value::FromValue<'a> for PrintStatus {
10033 type Checker = glib::value::GenericValueTypeChecker<Self>;
10034
10035 #[inline]
10036 unsafe fn from_value(value: &'a glib::Value) -> Self {
10037 skip_assert_initialized!();
10038 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10039 }
10040}
10041
10042impl ToValue for PrintStatus {
10043 #[inline]
10044 fn to_value(&self) -> glib::Value {
10045 let mut value = glib::Value::for_value_type::<Self>();
10046 unsafe {
10047 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10048 }
10049 value
10050 }
10051
10052 #[inline]
10053 fn value_type(&self) -> glib::Type {
10054 Self::static_type()
10055 }
10056}
10057
10058impl From<PrintStatus> for glib::Value {
10059 #[inline]
10060 fn from(v: PrintStatus) -> Self {
10061 skip_assert_initialized!();
10062 ToValue::to_value(&v)
10063 }
10064}
10065
10066#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10069#[non_exhaustive]
10070#[doc(alias = "GtkPropagationLimit")]
10071pub enum PropagationLimit {
10072 #[doc(alias = "GTK_LIMIT_NONE")]
10075 None,
10076 #[doc(alias = "GTK_LIMIT_SAME_NATIVE")]
10081 SameNative,
10082 #[doc(hidden)]
10083 __Unknown(i32),
10084}
10085
10086#[doc(hidden)]
10087impl IntoGlib for PropagationLimit {
10088 type GlibType = ffi::GtkPropagationLimit;
10089
10090 #[inline]
10091 fn into_glib(self) -> ffi::GtkPropagationLimit {
10092 match self {
10093 Self::None => ffi::GTK_LIMIT_NONE,
10094 Self::SameNative => ffi::GTK_LIMIT_SAME_NATIVE,
10095 Self::__Unknown(value) => value,
10096 }
10097 }
10098}
10099
10100#[doc(hidden)]
10101impl FromGlib<ffi::GtkPropagationLimit> for PropagationLimit {
10102 #[inline]
10103 unsafe fn from_glib(value: ffi::GtkPropagationLimit) -> Self {
10104 skip_assert_initialized!();
10105
10106 match value {
10107 ffi::GTK_LIMIT_NONE => Self::None,
10108 ffi::GTK_LIMIT_SAME_NATIVE => Self::SameNative,
10109 value => Self::__Unknown(value),
10110 }
10111 }
10112}
10113
10114impl StaticType for PropagationLimit {
10115 #[inline]
10116 #[doc(alias = "gtk_propagation_limit_get_type")]
10117 fn static_type() -> glib::Type {
10118 unsafe { from_glib(ffi::gtk_propagation_limit_get_type()) }
10119 }
10120}
10121
10122impl glib::HasParamSpec for PropagationLimit {
10123 type ParamSpec = glib::ParamSpecEnum;
10124 type SetValue = Self;
10125 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10126
10127 fn param_spec_builder() -> Self::BuilderFn {
10128 Self::ParamSpec::builder_with_default
10129 }
10130}
10131
10132impl glib::value::ValueType for PropagationLimit {
10133 type Type = Self;
10134}
10135
10136unsafe impl<'a> glib::value::FromValue<'a> for PropagationLimit {
10137 type Checker = glib::value::GenericValueTypeChecker<Self>;
10138
10139 #[inline]
10140 unsafe fn from_value(value: &'a glib::Value) -> Self {
10141 skip_assert_initialized!();
10142 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10143 }
10144}
10145
10146impl ToValue for PropagationLimit {
10147 #[inline]
10148 fn to_value(&self) -> glib::Value {
10149 let mut value = glib::Value::for_value_type::<Self>();
10150 unsafe {
10151 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10152 }
10153 value
10154 }
10155
10156 #[inline]
10157 fn value_type(&self) -> glib::Type {
10158 Self::static_type()
10159 }
10160}
10161
10162impl From<PropagationLimit> for glib::Value {
10163 #[inline]
10164 fn from(v: PropagationLimit) -> Self {
10165 skip_assert_initialized!();
10166 ToValue::to_value(&v)
10167 }
10168}
10169
10170#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10172#[non_exhaustive]
10173#[doc(alias = "GtkPropagationPhase")]
10174pub enum PropagationPhase {
10175 #[doc(alias = "GTK_PHASE_NONE")]
10177 None,
10178 #[doc(alias = "GTK_PHASE_CAPTURE")]
10183 Capture,
10184 #[doc(alias = "GTK_PHASE_BUBBLE")]
10188 Bubble,
10189 #[doc(alias = "GTK_PHASE_TARGET")]
10193 Target,
10194 #[doc(hidden)]
10195 __Unknown(i32),
10196}
10197
10198#[doc(hidden)]
10199impl IntoGlib for PropagationPhase {
10200 type GlibType = ffi::GtkPropagationPhase;
10201
10202 #[inline]
10203 fn into_glib(self) -> ffi::GtkPropagationPhase {
10204 match self {
10205 Self::None => ffi::GTK_PHASE_NONE,
10206 Self::Capture => ffi::GTK_PHASE_CAPTURE,
10207 Self::Bubble => ffi::GTK_PHASE_BUBBLE,
10208 Self::Target => ffi::GTK_PHASE_TARGET,
10209 Self::__Unknown(value) => value,
10210 }
10211 }
10212}
10213
10214#[doc(hidden)]
10215impl FromGlib<ffi::GtkPropagationPhase> for PropagationPhase {
10216 #[inline]
10217 unsafe fn from_glib(value: ffi::GtkPropagationPhase) -> Self {
10218 skip_assert_initialized!();
10219
10220 match value {
10221 ffi::GTK_PHASE_NONE => Self::None,
10222 ffi::GTK_PHASE_CAPTURE => Self::Capture,
10223 ffi::GTK_PHASE_BUBBLE => Self::Bubble,
10224 ffi::GTK_PHASE_TARGET => Self::Target,
10225 value => Self::__Unknown(value),
10226 }
10227 }
10228}
10229
10230impl StaticType for PropagationPhase {
10231 #[inline]
10232 #[doc(alias = "gtk_propagation_phase_get_type")]
10233 fn static_type() -> glib::Type {
10234 unsafe { from_glib(ffi::gtk_propagation_phase_get_type()) }
10235 }
10236}
10237
10238impl glib::HasParamSpec for PropagationPhase {
10239 type ParamSpec = glib::ParamSpecEnum;
10240 type SetValue = Self;
10241 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10242
10243 fn param_spec_builder() -> Self::BuilderFn {
10244 Self::ParamSpec::builder_with_default
10245 }
10246}
10247
10248impl glib::value::ValueType for PropagationPhase {
10249 type Type = Self;
10250}
10251
10252unsafe impl<'a> glib::value::FromValue<'a> for PropagationPhase {
10253 type Checker = glib::value::GenericValueTypeChecker<Self>;
10254
10255 #[inline]
10256 unsafe fn from_value(value: &'a glib::Value) -> Self {
10257 skip_assert_initialized!();
10258 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10259 }
10260}
10261
10262impl ToValue for PropagationPhase {
10263 #[inline]
10264 fn to_value(&self) -> glib::Value {
10265 let mut value = glib::Value::for_value_type::<Self>();
10266 unsafe {
10267 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10268 }
10269 value
10270 }
10271
10272 #[inline]
10273 fn value_type(&self) -> glib::Type {
10274 Self::static_type()
10275 }
10276}
10277
10278impl From<PropagationPhase> for glib::Value {
10279 #[inline]
10280 fn from(v: PropagationPhase) -> Self {
10281 skip_assert_initialized!();
10282 ToValue::to_value(&v)
10283 }
10284}
10285
10286#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10288#[non_exhaustive]
10289#[doc(alias = "GtkRecentManagerError")]
10290pub enum RecentManagerError {
10291 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_FOUND")]
10294 NotFound,
10295 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_URI")]
10297 InvalidUri,
10298 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING")]
10301 InvalidEncoding,
10302 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED")]
10305 NotRegistered,
10306 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_READ")]
10309 Read,
10310 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_WRITE")]
10313 Write,
10314 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_UNKNOWN")]
10316 Unknown,
10317 #[doc(hidden)]
10318 __Unknown(i32),
10319}
10320
10321#[doc(hidden)]
10322impl IntoGlib for RecentManagerError {
10323 type GlibType = ffi::GtkRecentManagerError;
10324
10325 #[inline]
10326 fn into_glib(self) -> ffi::GtkRecentManagerError {
10327 match self {
10328 Self::NotFound => ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND,
10329 Self::InvalidUri => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI,
10330 Self::InvalidEncoding => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING,
10331 Self::NotRegistered => ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED,
10332 Self::Read => ffi::GTK_RECENT_MANAGER_ERROR_READ,
10333 Self::Write => ffi::GTK_RECENT_MANAGER_ERROR_WRITE,
10334 Self::Unknown => ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN,
10335 Self::__Unknown(value) => value,
10336 }
10337 }
10338}
10339
10340#[doc(hidden)]
10341impl FromGlib<ffi::GtkRecentManagerError> for RecentManagerError {
10342 #[inline]
10343 unsafe fn from_glib(value: ffi::GtkRecentManagerError) -> Self {
10344 skip_assert_initialized!();
10345
10346 match value {
10347 ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND => Self::NotFound,
10348 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI => Self::InvalidUri,
10349 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING => Self::InvalidEncoding,
10350 ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED => Self::NotRegistered,
10351 ffi::GTK_RECENT_MANAGER_ERROR_READ => Self::Read,
10352 ffi::GTK_RECENT_MANAGER_ERROR_WRITE => Self::Write,
10353 ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN => Self::Unknown,
10354 value => Self::__Unknown(value),
10355 }
10356 }
10357}
10358
10359impl glib::error::ErrorDomain for RecentManagerError {
10360 #[inline]
10361 fn domain() -> glib::Quark {
10362 skip_assert_initialized!();
10363
10364 unsafe { from_glib(ffi::gtk_recent_manager_error_quark()) }
10365 }
10366
10367 #[inline]
10368 fn code(self) -> i32 {
10369 self.into_glib()
10370 }
10371
10372 #[inline]
10373 #[allow(clippy::match_single_binding)]
10374 fn from(code: i32) -> Option<Self> {
10375 skip_assert_initialized!();
10376 match unsafe { from_glib(code) } {
10377 value => Some(value),
10378 }
10379 }
10380}
10381
10382impl StaticType for RecentManagerError {
10383 #[inline]
10384 #[doc(alias = "gtk_recent_manager_error_get_type")]
10385 fn static_type() -> glib::Type {
10386 unsafe { from_glib(ffi::gtk_recent_manager_error_get_type()) }
10387 }
10388}
10389
10390impl glib::HasParamSpec for RecentManagerError {
10391 type ParamSpec = glib::ParamSpecEnum;
10392 type SetValue = Self;
10393 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10394
10395 fn param_spec_builder() -> Self::BuilderFn {
10396 Self::ParamSpec::builder_with_default
10397 }
10398}
10399
10400impl glib::value::ValueType for RecentManagerError {
10401 type Type = Self;
10402}
10403
10404unsafe impl<'a> glib::value::FromValue<'a> for RecentManagerError {
10405 type Checker = glib::value::GenericValueTypeChecker<Self>;
10406
10407 #[inline]
10408 unsafe fn from_value(value: &'a glib::Value) -> Self {
10409 skip_assert_initialized!();
10410 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10411 }
10412}
10413
10414impl ToValue for RecentManagerError {
10415 #[inline]
10416 fn to_value(&self) -> glib::Value {
10417 let mut value = glib::Value::for_value_type::<Self>();
10418 unsafe {
10419 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10420 }
10421 value
10422 }
10423
10424 #[inline]
10425 fn value_type(&self) -> glib::Type {
10426 Self::static_type()
10427 }
10428}
10429
10430impl From<RecentManagerError> for glib::Value {
10431 #[inline]
10432 fn from(v: RecentManagerError) -> Self {
10433 skip_assert_initialized!();
10434 ToValue::to_value(&v)
10435 }
10436}
10437
10438#[cfg(feature = "v4_22")]
10444#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10445#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10446#[non_exhaustive]
10447#[doc(alias = "GtkReducedMotion")]
10448pub enum ReducedMotion {
10449 #[doc(alias = "GTK_REDUCED_MOTION_NO_PREFERENCE")]
10451 NoPreference,
10452 #[doc(alias = "GTK_REDUCED_MOTION_REDUCE")]
10457 Reduce,
10458 #[doc(hidden)]
10459 __Unknown(i32),
10460}
10461
10462#[cfg(feature = "v4_22")]
10463#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10464#[doc(hidden)]
10465impl IntoGlib for ReducedMotion {
10466 type GlibType = ffi::GtkReducedMotion;
10467
10468 #[inline]
10469 fn into_glib(self) -> ffi::GtkReducedMotion {
10470 match self {
10471 Self::NoPreference => ffi::GTK_REDUCED_MOTION_NO_PREFERENCE,
10472 Self::Reduce => ffi::GTK_REDUCED_MOTION_REDUCE,
10473 Self::__Unknown(value) => value,
10474 }
10475 }
10476}
10477
10478#[cfg(feature = "v4_22")]
10479#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10480#[doc(hidden)]
10481impl FromGlib<ffi::GtkReducedMotion> for ReducedMotion {
10482 #[inline]
10483 unsafe fn from_glib(value: ffi::GtkReducedMotion) -> Self {
10484 skip_assert_initialized!();
10485
10486 match value {
10487 ffi::GTK_REDUCED_MOTION_NO_PREFERENCE => Self::NoPreference,
10488 ffi::GTK_REDUCED_MOTION_REDUCE => Self::Reduce,
10489 value => Self::__Unknown(value),
10490 }
10491 }
10492}
10493
10494#[cfg(feature = "v4_22")]
10495#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10496impl StaticType for ReducedMotion {
10497 #[inline]
10498 #[doc(alias = "gtk_reduced_motion_get_type")]
10499 fn static_type() -> glib::Type {
10500 unsafe { from_glib(ffi::gtk_reduced_motion_get_type()) }
10501 }
10502}
10503
10504#[cfg(feature = "v4_22")]
10505#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10506impl glib::HasParamSpec for ReducedMotion {
10507 type ParamSpec = glib::ParamSpecEnum;
10508 type SetValue = Self;
10509 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10510
10511 fn param_spec_builder() -> Self::BuilderFn {
10512 Self::ParamSpec::builder_with_default
10513 }
10514}
10515
10516#[cfg(feature = "v4_22")]
10517#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10518impl glib::value::ValueType for ReducedMotion {
10519 type Type = Self;
10520}
10521
10522#[cfg(feature = "v4_22")]
10523#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10524unsafe impl<'a> glib::value::FromValue<'a> for ReducedMotion {
10525 type Checker = glib::value::GenericValueTypeChecker<Self>;
10526
10527 #[inline]
10528 unsafe fn from_value(value: &'a glib::Value) -> Self {
10529 skip_assert_initialized!();
10530 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10531 }
10532}
10533
10534#[cfg(feature = "v4_22")]
10535#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10536impl ToValue for ReducedMotion {
10537 #[inline]
10538 fn to_value(&self) -> glib::Value {
10539 let mut value = glib::Value::for_value_type::<Self>();
10540 unsafe {
10541 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10542 }
10543 value
10544 }
10545
10546 #[inline]
10547 fn value_type(&self) -> glib::Type {
10548 Self::static_type()
10549 }
10550}
10551
10552#[cfg(feature = "v4_22")]
10553#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10554impl From<ReducedMotion> for glib::Value {
10555 #[inline]
10556 fn from(v: ReducedMotion) -> Self {
10557 skip_assert_initialized!();
10558 ToValue::to_value(&v)
10559 }
10560}
10561
10562#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10565#[non_exhaustive]
10566#[doc(alias = "GtkRevealerTransitionType")]
10567pub enum RevealerTransitionType {
10568 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_NONE")]
10570 None,
10571 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_CROSSFADE")]
10573 Crossfade,
10574 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT")]
10576 SlideRight,
10577 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT")]
10579 SlideLeft,
10580 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP")]
10582 SlideUp,
10583 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN")]
10585 SlideDown,
10586 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT")]
10588 SwingRight,
10589 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT")]
10591 SwingLeft,
10592 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_UP")]
10594 SwingUp,
10595 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN")]
10597 SwingDown,
10598 #[cfg(feature = "v4_22")]
10601 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10602 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT")]
10603 FadeSlideRight,
10604 #[cfg(feature = "v4_22")]
10607 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10608 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT")]
10609 FadeSlideLeft,
10610 #[cfg(feature = "v4_22")]
10613 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10614 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP")]
10615 FadeSlideUp,
10616 #[cfg(feature = "v4_22")]
10619 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10620 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN")]
10621 FadeSlideDown,
10622 #[doc(hidden)]
10623 __Unknown(i32),
10624}
10625
10626#[doc(hidden)]
10627impl IntoGlib for RevealerTransitionType {
10628 type GlibType = ffi::GtkRevealerTransitionType;
10629
10630 fn into_glib(self) -> ffi::GtkRevealerTransitionType {
10631 match self {
10632 Self::None => ffi::GTK_REVEALER_TRANSITION_TYPE_NONE,
10633 Self::Crossfade => ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE,
10634 Self::SlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT,
10635 Self::SlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT,
10636 Self::SlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP,
10637 Self::SlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN,
10638 Self::SwingRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT,
10639 Self::SwingLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT,
10640 Self::SwingUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP,
10641 Self::SwingDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN,
10642 #[cfg(feature = "v4_22")]
10643 Self::FadeSlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT,
10644 #[cfg(feature = "v4_22")]
10645 Self::FadeSlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT,
10646 #[cfg(feature = "v4_22")]
10647 Self::FadeSlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP,
10648 #[cfg(feature = "v4_22")]
10649 Self::FadeSlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN,
10650 Self::__Unknown(value) => value,
10651 }
10652 }
10653}
10654
10655#[doc(hidden)]
10656impl FromGlib<ffi::GtkRevealerTransitionType> for RevealerTransitionType {
10657 unsafe fn from_glib(value: ffi::GtkRevealerTransitionType) -> Self {
10658 skip_assert_initialized!();
10659
10660 match value {
10661 ffi::GTK_REVEALER_TRANSITION_TYPE_NONE => Self::None,
10662 ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
10663 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
10664 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
10665 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
10666 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
10667 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT => Self::SwingRight,
10668 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT => Self::SwingLeft,
10669 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP => Self::SwingUp,
10670 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN => Self::SwingDown,
10671 #[cfg(feature = "v4_22")]
10672 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT => Self::FadeSlideRight,
10673 #[cfg(feature = "v4_22")]
10674 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT => Self::FadeSlideLeft,
10675 #[cfg(feature = "v4_22")]
10676 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP => Self::FadeSlideUp,
10677 #[cfg(feature = "v4_22")]
10678 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN => Self::FadeSlideDown,
10679 value => Self::__Unknown(value),
10680 }
10681 }
10682}
10683
10684impl StaticType for RevealerTransitionType {
10685 #[inline]
10686 #[doc(alias = "gtk_revealer_transition_type_get_type")]
10687 fn static_type() -> glib::Type {
10688 unsafe { from_glib(ffi::gtk_revealer_transition_type_get_type()) }
10689 }
10690}
10691
10692impl glib::HasParamSpec for RevealerTransitionType {
10693 type ParamSpec = glib::ParamSpecEnum;
10694 type SetValue = Self;
10695 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10696
10697 fn param_spec_builder() -> Self::BuilderFn {
10698 Self::ParamSpec::builder_with_default
10699 }
10700}
10701
10702impl glib::value::ValueType for RevealerTransitionType {
10703 type Type = Self;
10704}
10705
10706unsafe impl<'a> glib::value::FromValue<'a> for RevealerTransitionType {
10707 type Checker = glib::value::GenericValueTypeChecker<Self>;
10708
10709 #[inline]
10710 unsafe fn from_value(value: &'a glib::Value) -> Self {
10711 skip_assert_initialized!();
10712 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10713 }
10714}
10715
10716impl ToValue for RevealerTransitionType {
10717 #[inline]
10718 fn to_value(&self) -> glib::Value {
10719 let mut value = glib::Value::for_value_type::<Self>();
10720 unsafe {
10721 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10722 }
10723 value
10724 }
10725
10726 #[inline]
10727 fn value_type(&self) -> glib::Type {
10728 Self::static_type()
10729 }
10730}
10731
10732impl From<RevealerTransitionType> for glib::Value {
10733 #[inline]
10734 fn from(v: RevealerTransitionType) -> Self {
10735 skip_assert_initialized!();
10736 ToValue::to_value(&v)
10737 }
10738}
10739
10740#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10742#[non_exhaustive]
10743#[doc(alias = "GtkScrollStep")]
10744pub enum ScrollStep {
10745 #[doc(alias = "GTK_SCROLL_STEPS")]
10747 Steps,
10748 #[doc(alias = "GTK_SCROLL_PAGES")]
10750 Pages,
10751 #[doc(alias = "GTK_SCROLL_ENDS")]
10753 Ends,
10754 #[doc(alias = "GTK_SCROLL_HORIZONTAL_STEPS")]
10756 HorizontalSteps,
10757 #[doc(alias = "GTK_SCROLL_HORIZONTAL_PAGES")]
10759 HorizontalPages,
10760 #[doc(alias = "GTK_SCROLL_HORIZONTAL_ENDS")]
10762 HorizontalEnds,
10763 #[doc(hidden)]
10764 __Unknown(i32),
10765}
10766
10767#[doc(hidden)]
10768impl IntoGlib for ScrollStep {
10769 type GlibType = ffi::GtkScrollStep;
10770
10771 #[inline]
10772 fn into_glib(self) -> ffi::GtkScrollStep {
10773 match self {
10774 Self::Steps => ffi::GTK_SCROLL_STEPS,
10775 Self::Pages => ffi::GTK_SCROLL_PAGES,
10776 Self::Ends => ffi::GTK_SCROLL_ENDS,
10777 Self::HorizontalSteps => ffi::GTK_SCROLL_HORIZONTAL_STEPS,
10778 Self::HorizontalPages => ffi::GTK_SCROLL_HORIZONTAL_PAGES,
10779 Self::HorizontalEnds => ffi::GTK_SCROLL_HORIZONTAL_ENDS,
10780 Self::__Unknown(value) => value,
10781 }
10782 }
10783}
10784
10785#[doc(hidden)]
10786impl FromGlib<ffi::GtkScrollStep> for ScrollStep {
10787 #[inline]
10788 unsafe fn from_glib(value: ffi::GtkScrollStep) -> Self {
10789 skip_assert_initialized!();
10790
10791 match value {
10792 ffi::GTK_SCROLL_STEPS => Self::Steps,
10793 ffi::GTK_SCROLL_PAGES => Self::Pages,
10794 ffi::GTK_SCROLL_ENDS => Self::Ends,
10795 ffi::GTK_SCROLL_HORIZONTAL_STEPS => Self::HorizontalSteps,
10796 ffi::GTK_SCROLL_HORIZONTAL_PAGES => Self::HorizontalPages,
10797 ffi::GTK_SCROLL_HORIZONTAL_ENDS => Self::HorizontalEnds,
10798 value => Self::__Unknown(value),
10799 }
10800 }
10801}
10802
10803impl StaticType for ScrollStep {
10804 #[inline]
10805 #[doc(alias = "gtk_scroll_step_get_type")]
10806 fn static_type() -> glib::Type {
10807 unsafe { from_glib(ffi::gtk_scroll_step_get_type()) }
10808 }
10809}
10810
10811impl glib::HasParamSpec for ScrollStep {
10812 type ParamSpec = glib::ParamSpecEnum;
10813 type SetValue = Self;
10814 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10815
10816 fn param_spec_builder() -> Self::BuilderFn {
10817 Self::ParamSpec::builder_with_default
10818 }
10819}
10820
10821impl glib::value::ValueType for ScrollStep {
10822 type Type = Self;
10823}
10824
10825unsafe impl<'a> glib::value::FromValue<'a> for ScrollStep {
10826 type Checker = glib::value::GenericValueTypeChecker<Self>;
10827
10828 #[inline]
10829 unsafe fn from_value(value: &'a glib::Value) -> Self {
10830 skip_assert_initialized!();
10831 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10832 }
10833}
10834
10835impl ToValue for ScrollStep {
10836 #[inline]
10837 fn to_value(&self) -> glib::Value {
10838 let mut value = glib::Value::for_value_type::<Self>();
10839 unsafe {
10840 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10841 }
10842 value
10843 }
10844
10845 #[inline]
10846 fn value_type(&self) -> glib::Type {
10847 Self::static_type()
10848 }
10849}
10850
10851impl From<ScrollStep> for glib::Value {
10852 #[inline]
10853 fn from(v: ScrollStep) -> Self {
10854 skip_assert_initialized!();
10855 ToValue::to_value(&v)
10856 }
10857}
10858
10859#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10861#[non_exhaustive]
10862#[doc(alias = "GtkScrollType")]
10863pub enum ScrollType {
10864 #[doc(alias = "GTK_SCROLL_NONE")]
10866 None,
10867 #[doc(alias = "GTK_SCROLL_JUMP")]
10869 Jump,
10870 #[doc(alias = "GTK_SCROLL_STEP_BACKWARD")]
10872 StepBackward,
10873 #[doc(alias = "GTK_SCROLL_STEP_FORWARD")]
10875 StepForward,
10876 #[doc(alias = "GTK_SCROLL_PAGE_BACKWARD")]
10878 PageBackward,
10879 #[doc(alias = "GTK_SCROLL_PAGE_FORWARD")]
10881 PageForward,
10882 #[doc(alias = "GTK_SCROLL_STEP_UP")]
10884 StepUp,
10885 #[doc(alias = "GTK_SCROLL_STEP_DOWN")]
10887 StepDown,
10888 #[doc(alias = "GTK_SCROLL_PAGE_UP")]
10890 PageUp,
10891 #[doc(alias = "GTK_SCROLL_PAGE_DOWN")]
10893 PageDown,
10894 #[doc(alias = "GTK_SCROLL_STEP_LEFT")]
10896 StepLeft,
10897 #[doc(alias = "GTK_SCROLL_STEP_RIGHT")]
10899 StepRight,
10900 #[doc(alias = "GTK_SCROLL_PAGE_LEFT")]
10902 PageLeft,
10903 #[doc(alias = "GTK_SCROLL_PAGE_RIGHT")]
10905 PageRight,
10906 #[doc(alias = "GTK_SCROLL_START")]
10908 Start,
10909 #[doc(alias = "GTK_SCROLL_END")]
10911 End,
10912 #[doc(hidden)]
10913 __Unknown(i32),
10914}
10915
10916#[doc(hidden)]
10917impl IntoGlib for ScrollType {
10918 type GlibType = ffi::GtkScrollType;
10919
10920 fn into_glib(self) -> ffi::GtkScrollType {
10921 match self {
10922 Self::None => ffi::GTK_SCROLL_NONE,
10923 Self::Jump => ffi::GTK_SCROLL_JUMP,
10924 Self::StepBackward => ffi::GTK_SCROLL_STEP_BACKWARD,
10925 Self::StepForward => ffi::GTK_SCROLL_STEP_FORWARD,
10926 Self::PageBackward => ffi::GTK_SCROLL_PAGE_BACKWARD,
10927 Self::PageForward => ffi::GTK_SCROLL_PAGE_FORWARD,
10928 Self::StepUp => ffi::GTK_SCROLL_STEP_UP,
10929 Self::StepDown => ffi::GTK_SCROLL_STEP_DOWN,
10930 Self::PageUp => ffi::GTK_SCROLL_PAGE_UP,
10931 Self::PageDown => ffi::GTK_SCROLL_PAGE_DOWN,
10932 Self::StepLeft => ffi::GTK_SCROLL_STEP_LEFT,
10933 Self::StepRight => ffi::GTK_SCROLL_STEP_RIGHT,
10934 Self::PageLeft => ffi::GTK_SCROLL_PAGE_LEFT,
10935 Self::PageRight => ffi::GTK_SCROLL_PAGE_RIGHT,
10936 Self::Start => ffi::GTK_SCROLL_START,
10937 Self::End => ffi::GTK_SCROLL_END,
10938 Self::__Unknown(value) => value,
10939 }
10940 }
10941}
10942
10943#[doc(hidden)]
10944impl FromGlib<ffi::GtkScrollType> for ScrollType {
10945 unsafe fn from_glib(value: ffi::GtkScrollType) -> Self {
10946 skip_assert_initialized!();
10947
10948 match value {
10949 ffi::GTK_SCROLL_NONE => Self::None,
10950 ffi::GTK_SCROLL_JUMP => Self::Jump,
10951 ffi::GTK_SCROLL_STEP_BACKWARD => Self::StepBackward,
10952 ffi::GTK_SCROLL_STEP_FORWARD => Self::StepForward,
10953 ffi::GTK_SCROLL_PAGE_BACKWARD => Self::PageBackward,
10954 ffi::GTK_SCROLL_PAGE_FORWARD => Self::PageForward,
10955 ffi::GTK_SCROLL_STEP_UP => Self::StepUp,
10956 ffi::GTK_SCROLL_STEP_DOWN => Self::StepDown,
10957 ffi::GTK_SCROLL_PAGE_UP => Self::PageUp,
10958 ffi::GTK_SCROLL_PAGE_DOWN => Self::PageDown,
10959 ffi::GTK_SCROLL_STEP_LEFT => Self::StepLeft,
10960 ffi::GTK_SCROLL_STEP_RIGHT => Self::StepRight,
10961 ffi::GTK_SCROLL_PAGE_LEFT => Self::PageLeft,
10962 ffi::GTK_SCROLL_PAGE_RIGHT => Self::PageRight,
10963 ffi::GTK_SCROLL_START => Self::Start,
10964 ffi::GTK_SCROLL_END => Self::End,
10965 value => Self::__Unknown(value),
10966 }
10967 }
10968}
10969
10970impl StaticType for ScrollType {
10971 #[inline]
10972 #[doc(alias = "gtk_scroll_type_get_type")]
10973 fn static_type() -> glib::Type {
10974 unsafe { from_glib(ffi::gtk_scroll_type_get_type()) }
10975 }
10976}
10977
10978impl glib::HasParamSpec for ScrollType {
10979 type ParamSpec = glib::ParamSpecEnum;
10980 type SetValue = Self;
10981 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10982
10983 fn param_spec_builder() -> Self::BuilderFn {
10984 Self::ParamSpec::builder_with_default
10985 }
10986}
10987
10988impl glib::value::ValueType for ScrollType {
10989 type Type = Self;
10990}
10991
10992unsafe impl<'a> glib::value::FromValue<'a> for ScrollType {
10993 type Checker = glib::value::GenericValueTypeChecker<Self>;
10994
10995 #[inline]
10996 unsafe fn from_value(value: &'a glib::Value) -> Self {
10997 skip_assert_initialized!();
10998 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10999 }
11000}
11001
11002impl ToValue for ScrollType {
11003 #[inline]
11004 fn to_value(&self) -> glib::Value {
11005 let mut value = glib::Value::for_value_type::<Self>();
11006 unsafe {
11007 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11008 }
11009 value
11010 }
11011
11012 #[inline]
11013 fn value_type(&self) -> glib::Type {
11014 Self::static_type()
11015 }
11016}
11017
11018impl From<ScrollType> for glib::Value {
11019 #[inline]
11020 fn from(v: ScrollType) -> Self {
11021 skip_assert_initialized!();
11022 ToValue::to_value(&v)
11023 }
11024}
11025
11026#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11029#[non_exhaustive]
11030#[doc(alias = "GtkScrollablePolicy")]
11031pub enum ScrollablePolicy {
11032 #[doc(alias = "GTK_SCROLL_MINIMUM")]
11034 Minimum,
11035 #[doc(alias = "GTK_SCROLL_NATURAL")]
11037 Natural,
11038 #[doc(hidden)]
11039 __Unknown(i32),
11040}
11041
11042#[doc(hidden)]
11043impl IntoGlib for ScrollablePolicy {
11044 type GlibType = ffi::GtkScrollablePolicy;
11045
11046 #[inline]
11047 fn into_glib(self) -> ffi::GtkScrollablePolicy {
11048 match self {
11049 Self::Minimum => ffi::GTK_SCROLL_MINIMUM,
11050 Self::Natural => ffi::GTK_SCROLL_NATURAL,
11051 Self::__Unknown(value) => value,
11052 }
11053 }
11054}
11055
11056#[doc(hidden)]
11057impl FromGlib<ffi::GtkScrollablePolicy> for ScrollablePolicy {
11058 #[inline]
11059 unsafe fn from_glib(value: ffi::GtkScrollablePolicy) -> Self {
11060 skip_assert_initialized!();
11061
11062 match value {
11063 ffi::GTK_SCROLL_MINIMUM => Self::Minimum,
11064 ffi::GTK_SCROLL_NATURAL => Self::Natural,
11065 value => Self::__Unknown(value),
11066 }
11067 }
11068}
11069
11070impl StaticType for ScrollablePolicy {
11071 #[inline]
11072 #[doc(alias = "gtk_scrollable_policy_get_type")]
11073 fn static_type() -> glib::Type {
11074 unsafe { from_glib(ffi::gtk_scrollable_policy_get_type()) }
11075 }
11076}
11077
11078impl glib::HasParamSpec for ScrollablePolicy {
11079 type ParamSpec = glib::ParamSpecEnum;
11080 type SetValue = Self;
11081 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11082
11083 fn param_spec_builder() -> Self::BuilderFn {
11084 Self::ParamSpec::builder_with_default
11085 }
11086}
11087
11088impl glib::value::ValueType for ScrollablePolicy {
11089 type Type = Self;
11090}
11091
11092unsafe impl<'a> glib::value::FromValue<'a> for ScrollablePolicy {
11093 type Checker = glib::value::GenericValueTypeChecker<Self>;
11094
11095 #[inline]
11096 unsafe fn from_value(value: &'a glib::Value) -> Self {
11097 skip_assert_initialized!();
11098 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11099 }
11100}
11101
11102impl ToValue for ScrollablePolicy {
11103 #[inline]
11104 fn to_value(&self) -> glib::Value {
11105 let mut value = glib::Value::for_value_type::<Self>();
11106 unsafe {
11107 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11108 }
11109 value
11110 }
11111
11112 #[inline]
11113 fn value_type(&self) -> glib::Type {
11114 Self::static_type()
11115 }
11116}
11117
11118impl From<ScrollablePolicy> for glib::Value {
11119 #[inline]
11120 fn from(v: ScrollablePolicy) -> Self {
11121 skip_assert_initialized!();
11122 ToValue::to_value(&v)
11123 }
11124}
11125
11126#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11128#[non_exhaustive]
11129#[doc(alias = "GtkSelectionMode")]
11130pub enum SelectionMode {
11131 #[doc(alias = "GTK_SELECTION_NONE")]
11133 None,
11134 #[doc(alias = "GTK_SELECTION_SINGLE")]
11136 Single,
11137 #[doc(alias = "GTK_SELECTION_BROWSE")]
11144 Browse,
11145 #[doc(alias = "GTK_SELECTION_MULTIPLE")]
11150 Multiple,
11151 #[doc(hidden)]
11152 __Unknown(i32),
11153}
11154
11155#[doc(hidden)]
11156impl IntoGlib for SelectionMode {
11157 type GlibType = ffi::GtkSelectionMode;
11158
11159 #[inline]
11160 fn into_glib(self) -> ffi::GtkSelectionMode {
11161 match self {
11162 Self::None => ffi::GTK_SELECTION_NONE,
11163 Self::Single => ffi::GTK_SELECTION_SINGLE,
11164 Self::Browse => ffi::GTK_SELECTION_BROWSE,
11165 Self::Multiple => ffi::GTK_SELECTION_MULTIPLE,
11166 Self::__Unknown(value) => value,
11167 }
11168 }
11169}
11170
11171#[doc(hidden)]
11172impl FromGlib<ffi::GtkSelectionMode> for SelectionMode {
11173 #[inline]
11174 unsafe fn from_glib(value: ffi::GtkSelectionMode) -> Self {
11175 skip_assert_initialized!();
11176
11177 match value {
11178 ffi::GTK_SELECTION_NONE => Self::None,
11179 ffi::GTK_SELECTION_SINGLE => Self::Single,
11180 ffi::GTK_SELECTION_BROWSE => Self::Browse,
11181 ffi::GTK_SELECTION_MULTIPLE => Self::Multiple,
11182 value => Self::__Unknown(value),
11183 }
11184 }
11185}
11186
11187impl StaticType for SelectionMode {
11188 #[inline]
11189 #[doc(alias = "gtk_selection_mode_get_type")]
11190 fn static_type() -> glib::Type {
11191 unsafe { from_glib(ffi::gtk_selection_mode_get_type()) }
11192 }
11193}
11194
11195impl glib::HasParamSpec for SelectionMode {
11196 type ParamSpec = glib::ParamSpecEnum;
11197 type SetValue = Self;
11198 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11199
11200 fn param_spec_builder() -> Self::BuilderFn {
11201 Self::ParamSpec::builder_with_default
11202 }
11203}
11204
11205impl glib::value::ValueType for SelectionMode {
11206 type Type = Self;
11207}
11208
11209unsafe impl<'a> glib::value::FromValue<'a> for SelectionMode {
11210 type Checker = glib::value::GenericValueTypeChecker<Self>;
11211
11212 #[inline]
11213 unsafe fn from_value(value: &'a glib::Value) -> Self {
11214 skip_assert_initialized!();
11215 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11216 }
11217}
11218
11219impl ToValue for SelectionMode {
11220 #[inline]
11221 fn to_value(&self) -> glib::Value {
11222 let mut value = glib::Value::for_value_type::<Self>();
11223 unsafe {
11224 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11225 }
11226 value
11227 }
11228
11229 #[inline]
11230 fn value_type(&self) -> glib::Type {
11231 Self::static_type()
11232 }
11233}
11234
11235impl From<SelectionMode> for glib::Value {
11236 #[inline]
11237 fn from(v: SelectionMode) -> Self {
11238 skip_assert_initialized!();
11239 ToValue::to_value(&v)
11240 }
11241}
11242
11243#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11246#[non_exhaustive]
11247#[doc(alias = "GtkSensitivityType")]
11248pub enum SensitivityType {
11249 #[doc(alias = "GTK_SENSITIVITY_AUTO")]
11252 Auto,
11253 #[doc(alias = "GTK_SENSITIVITY_ON")]
11255 On,
11256 #[doc(alias = "GTK_SENSITIVITY_OFF")]
11258 Off,
11259 #[doc(hidden)]
11260 __Unknown(i32),
11261}
11262
11263#[doc(hidden)]
11264impl IntoGlib for SensitivityType {
11265 type GlibType = ffi::GtkSensitivityType;
11266
11267 #[inline]
11268 fn into_glib(self) -> ffi::GtkSensitivityType {
11269 match self {
11270 Self::Auto => ffi::GTK_SENSITIVITY_AUTO,
11271 Self::On => ffi::GTK_SENSITIVITY_ON,
11272 Self::Off => ffi::GTK_SENSITIVITY_OFF,
11273 Self::__Unknown(value) => value,
11274 }
11275 }
11276}
11277
11278#[doc(hidden)]
11279impl FromGlib<ffi::GtkSensitivityType> for SensitivityType {
11280 #[inline]
11281 unsafe fn from_glib(value: ffi::GtkSensitivityType) -> Self {
11282 skip_assert_initialized!();
11283
11284 match value {
11285 ffi::GTK_SENSITIVITY_AUTO => Self::Auto,
11286 ffi::GTK_SENSITIVITY_ON => Self::On,
11287 ffi::GTK_SENSITIVITY_OFF => Self::Off,
11288 value => Self::__Unknown(value),
11289 }
11290 }
11291}
11292
11293impl StaticType for SensitivityType {
11294 #[inline]
11295 #[doc(alias = "gtk_sensitivity_type_get_type")]
11296 fn static_type() -> glib::Type {
11297 unsafe { from_glib(ffi::gtk_sensitivity_type_get_type()) }
11298 }
11299}
11300
11301impl glib::HasParamSpec for SensitivityType {
11302 type ParamSpec = glib::ParamSpecEnum;
11303 type SetValue = Self;
11304 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11305
11306 fn param_spec_builder() -> Self::BuilderFn {
11307 Self::ParamSpec::builder_with_default
11308 }
11309}
11310
11311impl glib::value::ValueType for SensitivityType {
11312 type Type = Self;
11313}
11314
11315unsafe impl<'a> glib::value::FromValue<'a> for SensitivityType {
11316 type Checker = glib::value::GenericValueTypeChecker<Self>;
11317
11318 #[inline]
11319 unsafe fn from_value(value: &'a glib::Value) -> Self {
11320 skip_assert_initialized!();
11321 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11322 }
11323}
11324
11325impl ToValue for SensitivityType {
11326 #[inline]
11327 fn to_value(&self) -> glib::Value {
11328 let mut value = glib::Value::for_value_type::<Self>();
11329 unsafe {
11330 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11331 }
11332 value
11333 }
11334
11335 #[inline]
11336 fn value_type(&self) -> glib::Type {
11337 Self::static_type()
11338 }
11339}
11340
11341impl From<SensitivityType> for glib::Value {
11342 #[inline]
11343 fn from(v: SensitivityType) -> Self {
11344 skip_assert_initialized!();
11345 ToValue::to_value(&v)
11346 }
11347}
11348
11349#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11352#[non_exhaustive]
11353#[doc(alias = "GtkShortcutScope")]
11354pub enum ShortcutScope {
11355 #[doc(alias = "GTK_SHORTCUT_SCOPE_LOCAL")]
11358 Local,
11359 #[doc(alias = "GTK_SHORTCUT_SCOPE_MANAGED")]
11362 Managed,
11363 #[doc(alias = "GTK_SHORTCUT_SCOPE_GLOBAL")]
11366 Global,
11367 #[doc(hidden)]
11368 __Unknown(i32),
11369}
11370
11371#[doc(hidden)]
11372impl IntoGlib for ShortcutScope {
11373 type GlibType = ffi::GtkShortcutScope;
11374
11375 #[inline]
11376 fn into_glib(self) -> ffi::GtkShortcutScope {
11377 match self {
11378 Self::Local => ffi::GTK_SHORTCUT_SCOPE_LOCAL,
11379 Self::Managed => ffi::GTK_SHORTCUT_SCOPE_MANAGED,
11380 Self::Global => ffi::GTK_SHORTCUT_SCOPE_GLOBAL,
11381 Self::__Unknown(value) => value,
11382 }
11383 }
11384}
11385
11386#[doc(hidden)]
11387impl FromGlib<ffi::GtkShortcutScope> for ShortcutScope {
11388 #[inline]
11389 unsafe fn from_glib(value: ffi::GtkShortcutScope) -> Self {
11390 skip_assert_initialized!();
11391
11392 match value {
11393 ffi::GTK_SHORTCUT_SCOPE_LOCAL => Self::Local,
11394 ffi::GTK_SHORTCUT_SCOPE_MANAGED => Self::Managed,
11395 ffi::GTK_SHORTCUT_SCOPE_GLOBAL => Self::Global,
11396 value => Self::__Unknown(value),
11397 }
11398 }
11399}
11400
11401impl StaticType for ShortcutScope {
11402 #[inline]
11403 #[doc(alias = "gtk_shortcut_scope_get_type")]
11404 fn static_type() -> glib::Type {
11405 unsafe { from_glib(ffi::gtk_shortcut_scope_get_type()) }
11406 }
11407}
11408
11409impl glib::HasParamSpec for ShortcutScope {
11410 type ParamSpec = glib::ParamSpecEnum;
11411 type SetValue = Self;
11412 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11413
11414 fn param_spec_builder() -> Self::BuilderFn {
11415 Self::ParamSpec::builder_with_default
11416 }
11417}
11418
11419impl glib::value::ValueType for ShortcutScope {
11420 type Type = Self;
11421}
11422
11423unsafe impl<'a> glib::value::FromValue<'a> for ShortcutScope {
11424 type Checker = glib::value::GenericValueTypeChecker<Self>;
11425
11426 #[inline]
11427 unsafe fn from_value(value: &'a glib::Value) -> Self {
11428 skip_assert_initialized!();
11429 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11430 }
11431}
11432
11433impl ToValue for ShortcutScope {
11434 #[inline]
11435 fn to_value(&self) -> glib::Value {
11436 let mut value = glib::Value::for_value_type::<Self>();
11437 unsafe {
11438 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11439 }
11440 value
11441 }
11442
11443 #[inline]
11444 fn value_type(&self) -> glib::Type {
11445 Self::static_type()
11446 }
11447}
11448
11449impl From<ShortcutScope> for glib::Value {
11450 #[inline]
11451 fn from(v: ShortcutScope) -> Self {
11452 skip_assert_initialized!();
11453 ToValue::to_value(&v)
11454 }
11455}
11456
11457#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11461#[non_exhaustive]
11462#[doc(alias = "GtkShortcutType")]
11463pub enum ShortcutType {
11464 #[doc(alias = "GTK_SHORTCUT_ACCELERATOR")]
11467 Accelerator,
11468 #[doc(alias = "GTK_SHORTCUT_GESTURE_PINCH")]
11470 GesturePinch,
11471 #[doc(alias = "GTK_SHORTCUT_GESTURE_STRETCH")]
11473 GestureStretch,
11474 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE")]
11476 GestureRotateClockwise,
11477 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE")]
11479 GestureRotateCounterclockwise,
11480 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT")]
11482 GestureTwoFingerSwipeLeft,
11483 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT")]
11485 GestureTwoFingerSwipeRight,
11486 #[doc(alias = "GTK_SHORTCUT_GESTURE")]
11489 Gesture,
11490 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_LEFT")]
11492 GestureSwipeLeft,
11493 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_RIGHT")]
11495 GestureSwipeRight,
11496 #[doc(hidden)]
11497 __Unknown(i32),
11498}
11499
11500#[doc(hidden)]
11501impl IntoGlib for ShortcutType {
11502 type GlibType = ffi::GtkShortcutType;
11503
11504 #[inline]
11505 fn into_glib(self) -> ffi::GtkShortcutType {
11506 match self {
11507 Self::Accelerator => ffi::GTK_SHORTCUT_ACCELERATOR,
11508 Self::GesturePinch => ffi::GTK_SHORTCUT_GESTURE_PINCH,
11509 Self::GestureStretch => ffi::GTK_SHORTCUT_GESTURE_STRETCH,
11510 Self::GestureRotateClockwise => ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE,
11511 Self::GestureRotateCounterclockwise => {
11512 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE
11513 }
11514 Self::GestureTwoFingerSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT,
11515 Self::GestureTwoFingerSwipeRight => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT,
11516 Self::Gesture => ffi::GTK_SHORTCUT_GESTURE,
11517 Self::GestureSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT,
11518 Self::GestureSwipeRight => ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT,
11519 Self::__Unknown(value) => value,
11520 }
11521 }
11522}
11523
11524#[doc(hidden)]
11525impl FromGlib<ffi::GtkShortcutType> for ShortcutType {
11526 #[inline]
11527 unsafe fn from_glib(value: ffi::GtkShortcutType) -> Self {
11528 skip_assert_initialized!();
11529
11530 match value {
11531 ffi::GTK_SHORTCUT_ACCELERATOR => Self::Accelerator,
11532 ffi::GTK_SHORTCUT_GESTURE_PINCH => Self::GesturePinch,
11533 ffi::GTK_SHORTCUT_GESTURE_STRETCH => Self::GestureStretch,
11534 ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE => Self::GestureRotateClockwise,
11535 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE => {
11536 Self::GestureRotateCounterclockwise
11537 }
11538 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT => Self::GestureTwoFingerSwipeLeft,
11539 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT => Self::GestureTwoFingerSwipeRight,
11540 ffi::GTK_SHORTCUT_GESTURE => Self::Gesture,
11541 ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT => Self::GestureSwipeLeft,
11542 ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT => Self::GestureSwipeRight,
11543 value => Self::__Unknown(value),
11544 }
11545 }
11546}
11547
11548impl StaticType for ShortcutType {
11549 #[inline]
11550 #[doc(alias = "gtk_shortcut_type_get_type")]
11551 fn static_type() -> glib::Type {
11552 unsafe { from_glib(ffi::gtk_shortcut_type_get_type()) }
11553 }
11554}
11555
11556impl glib::HasParamSpec for ShortcutType {
11557 type ParamSpec = glib::ParamSpecEnum;
11558 type SetValue = Self;
11559 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11560
11561 fn param_spec_builder() -> Self::BuilderFn {
11562 Self::ParamSpec::builder_with_default
11563 }
11564}
11565
11566impl glib::value::ValueType for ShortcutType {
11567 type Type = Self;
11568}
11569
11570unsafe impl<'a> glib::value::FromValue<'a> for ShortcutType {
11571 type Checker = glib::value::GenericValueTypeChecker<Self>;
11572
11573 #[inline]
11574 unsafe fn from_value(value: &'a glib::Value) -> Self {
11575 skip_assert_initialized!();
11576 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11577 }
11578}
11579
11580impl ToValue for ShortcutType {
11581 #[inline]
11582 fn to_value(&self) -> glib::Value {
11583 let mut value = glib::Value::for_value_type::<Self>();
11584 unsafe {
11585 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11586 }
11587 value
11588 }
11589
11590 #[inline]
11591 fn value_type(&self) -> glib::Type {
11592 Self::static_type()
11593 }
11594}
11595
11596impl From<ShortcutType> for glib::Value {
11597 #[inline]
11598 fn from(v: ShortcutType) -> Self {
11599 skip_assert_initialized!();
11600 ToValue::to_value(&v)
11601 }
11602}
11603
11604#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11607#[non_exhaustive]
11608#[doc(alias = "GtkSizeGroupMode")]
11609pub enum SizeGroupMode {
11610 #[doc(alias = "GTK_SIZE_GROUP_NONE")]
11612 None,
11613 #[doc(alias = "GTK_SIZE_GROUP_HORIZONTAL")]
11615 Horizontal,
11616 #[doc(alias = "GTK_SIZE_GROUP_VERTICAL")]
11618 Vertical,
11619 #[doc(alias = "GTK_SIZE_GROUP_BOTH")]
11621 Both,
11622 #[doc(hidden)]
11623 __Unknown(i32),
11624}
11625
11626#[doc(hidden)]
11627impl IntoGlib for SizeGroupMode {
11628 type GlibType = ffi::GtkSizeGroupMode;
11629
11630 #[inline]
11631 fn into_glib(self) -> ffi::GtkSizeGroupMode {
11632 match self {
11633 Self::None => ffi::GTK_SIZE_GROUP_NONE,
11634 Self::Horizontal => ffi::GTK_SIZE_GROUP_HORIZONTAL,
11635 Self::Vertical => ffi::GTK_SIZE_GROUP_VERTICAL,
11636 Self::Both => ffi::GTK_SIZE_GROUP_BOTH,
11637 Self::__Unknown(value) => value,
11638 }
11639 }
11640}
11641
11642#[doc(hidden)]
11643impl FromGlib<ffi::GtkSizeGroupMode> for SizeGroupMode {
11644 #[inline]
11645 unsafe fn from_glib(value: ffi::GtkSizeGroupMode) -> Self {
11646 skip_assert_initialized!();
11647
11648 match value {
11649 ffi::GTK_SIZE_GROUP_NONE => Self::None,
11650 ffi::GTK_SIZE_GROUP_HORIZONTAL => Self::Horizontal,
11651 ffi::GTK_SIZE_GROUP_VERTICAL => Self::Vertical,
11652 ffi::GTK_SIZE_GROUP_BOTH => Self::Both,
11653 value => Self::__Unknown(value),
11654 }
11655 }
11656}
11657
11658impl StaticType for SizeGroupMode {
11659 #[inline]
11660 #[doc(alias = "gtk_size_group_mode_get_type")]
11661 fn static_type() -> glib::Type {
11662 unsafe { from_glib(ffi::gtk_size_group_mode_get_type()) }
11663 }
11664}
11665
11666impl glib::HasParamSpec for SizeGroupMode {
11667 type ParamSpec = glib::ParamSpecEnum;
11668 type SetValue = Self;
11669 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11670
11671 fn param_spec_builder() -> Self::BuilderFn {
11672 Self::ParamSpec::builder_with_default
11673 }
11674}
11675
11676impl glib::value::ValueType for SizeGroupMode {
11677 type Type = Self;
11678}
11679
11680unsafe impl<'a> glib::value::FromValue<'a> for SizeGroupMode {
11681 type Checker = glib::value::GenericValueTypeChecker<Self>;
11682
11683 #[inline]
11684 unsafe fn from_value(value: &'a glib::Value) -> Self {
11685 skip_assert_initialized!();
11686 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11687 }
11688}
11689
11690impl ToValue for SizeGroupMode {
11691 #[inline]
11692 fn to_value(&self) -> glib::Value {
11693 let mut value = glib::Value::for_value_type::<Self>();
11694 unsafe {
11695 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11696 }
11697 value
11698 }
11699
11700 #[inline]
11701 fn value_type(&self) -> glib::Type {
11702 Self::static_type()
11703 }
11704}
11705
11706impl From<SizeGroupMode> for glib::Value {
11707 #[inline]
11708 fn from(v: SizeGroupMode) -> Self {
11709 skip_assert_initialized!();
11710 ToValue::to_value(&v)
11711 }
11712}
11713
11714#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11717#[non_exhaustive]
11718#[doc(alias = "GtkSizeRequestMode")]
11719pub enum SizeRequestMode {
11720 #[doc(alias = "GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH")]
11722 HeightForWidth,
11723 #[doc(alias = "GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT")]
11725 WidthForHeight,
11726 #[doc(alias = "GTK_SIZE_REQUEST_CONSTANT_SIZE")]
11728 ConstantSize,
11729 #[doc(hidden)]
11730 __Unknown(i32),
11731}
11732
11733#[doc(hidden)]
11734impl IntoGlib for SizeRequestMode {
11735 type GlibType = ffi::GtkSizeRequestMode;
11736
11737 #[inline]
11738 fn into_glib(self) -> ffi::GtkSizeRequestMode {
11739 match self {
11740 Self::HeightForWidth => ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH,
11741 Self::WidthForHeight => ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT,
11742 Self::ConstantSize => ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE,
11743 Self::__Unknown(value) => value,
11744 }
11745 }
11746}
11747
11748#[doc(hidden)]
11749impl FromGlib<ffi::GtkSizeRequestMode> for SizeRequestMode {
11750 #[inline]
11751 unsafe fn from_glib(value: ffi::GtkSizeRequestMode) -> Self {
11752 skip_assert_initialized!();
11753
11754 match value {
11755 ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH => Self::HeightForWidth,
11756 ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT => Self::WidthForHeight,
11757 ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE => Self::ConstantSize,
11758 value => Self::__Unknown(value),
11759 }
11760 }
11761}
11762
11763impl StaticType for SizeRequestMode {
11764 #[inline]
11765 #[doc(alias = "gtk_size_request_mode_get_type")]
11766 fn static_type() -> glib::Type {
11767 unsafe { from_glib(ffi::gtk_size_request_mode_get_type()) }
11768 }
11769}
11770
11771impl glib::HasParamSpec for SizeRequestMode {
11772 type ParamSpec = glib::ParamSpecEnum;
11773 type SetValue = Self;
11774 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11775
11776 fn param_spec_builder() -> Self::BuilderFn {
11777 Self::ParamSpec::builder_with_default
11778 }
11779}
11780
11781impl glib::value::ValueType for SizeRequestMode {
11782 type Type = Self;
11783}
11784
11785unsafe impl<'a> glib::value::FromValue<'a> for SizeRequestMode {
11786 type Checker = glib::value::GenericValueTypeChecker<Self>;
11787
11788 #[inline]
11789 unsafe fn from_value(value: &'a glib::Value) -> Self {
11790 skip_assert_initialized!();
11791 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11792 }
11793}
11794
11795impl ToValue for SizeRequestMode {
11796 #[inline]
11797 fn to_value(&self) -> glib::Value {
11798 let mut value = glib::Value::for_value_type::<Self>();
11799 unsafe {
11800 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11801 }
11802 value
11803 }
11804
11805 #[inline]
11806 fn value_type(&self) -> glib::Type {
11807 Self::static_type()
11808 }
11809}
11810
11811impl From<SizeRequestMode> for glib::Value {
11812 #[inline]
11813 fn from(v: SizeRequestMode) -> Self {
11814 skip_assert_initialized!();
11815 ToValue::to_value(&v)
11816 }
11817}
11818
11819#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11821#[non_exhaustive]
11822#[doc(alias = "GtkSortType")]
11823pub enum SortType {
11824 #[doc(alias = "GTK_SORT_ASCENDING")]
11826 Ascending,
11827 #[doc(alias = "GTK_SORT_DESCENDING")]
11829 Descending,
11830 #[doc(hidden)]
11831 __Unknown(i32),
11832}
11833
11834#[doc(hidden)]
11835impl IntoGlib for SortType {
11836 type GlibType = ffi::GtkSortType;
11837
11838 #[inline]
11839 fn into_glib(self) -> ffi::GtkSortType {
11840 match self {
11841 Self::Ascending => ffi::GTK_SORT_ASCENDING,
11842 Self::Descending => ffi::GTK_SORT_DESCENDING,
11843 Self::__Unknown(value) => value,
11844 }
11845 }
11846}
11847
11848#[doc(hidden)]
11849impl FromGlib<ffi::GtkSortType> for SortType {
11850 #[inline]
11851 unsafe fn from_glib(value: ffi::GtkSortType) -> Self {
11852 skip_assert_initialized!();
11853
11854 match value {
11855 ffi::GTK_SORT_ASCENDING => Self::Ascending,
11856 ffi::GTK_SORT_DESCENDING => Self::Descending,
11857 value => Self::__Unknown(value),
11858 }
11859 }
11860}
11861
11862impl StaticType for SortType {
11863 #[inline]
11864 #[doc(alias = "gtk_sort_type_get_type")]
11865 fn static_type() -> glib::Type {
11866 unsafe { from_glib(ffi::gtk_sort_type_get_type()) }
11867 }
11868}
11869
11870impl glib::HasParamSpec for SortType {
11871 type ParamSpec = glib::ParamSpecEnum;
11872 type SetValue = Self;
11873 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11874
11875 fn param_spec_builder() -> Self::BuilderFn {
11876 Self::ParamSpec::builder_with_default
11877 }
11878}
11879
11880impl glib::value::ValueType for SortType {
11881 type Type = Self;
11882}
11883
11884unsafe impl<'a> glib::value::FromValue<'a> for SortType {
11885 type Checker = glib::value::GenericValueTypeChecker<Self>;
11886
11887 #[inline]
11888 unsafe fn from_value(value: &'a glib::Value) -> Self {
11889 skip_assert_initialized!();
11890 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11891 }
11892}
11893
11894impl ToValue for SortType {
11895 #[inline]
11896 fn to_value(&self) -> glib::Value {
11897 let mut value = glib::Value::for_value_type::<Self>();
11898 unsafe {
11899 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11900 }
11901 value
11902 }
11903
11904 #[inline]
11905 fn value_type(&self) -> glib::Type {
11906 Self::static_type()
11907 }
11908}
11909
11910impl From<SortType> for glib::Value {
11911 #[inline]
11912 fn from(v: SortType) -> Self {
11913 skip_assert_initialized!();
11914 ToValue::to_value(&v)
11915 }
11916}
11917
11918#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11921#[non_exhaustive]
11922#[doc(alias = "GtkSorterChange")]
11923pub enum SorterChange {
11924 #[doc(alias = "GTK_SORTER_CHANGE_DIFFERENT")]
11927 Different,
11928 #[doc(alias = "GTK_SORTER_CHANGE_INVERTED")]
11932 Inverted,
11933 #[doc(alias = "GTK_SORTER_CHANGE_LESS_STRICT")]
11936 LessStrict,
11937 #[doc(alias = "GTK_SORTER_CHANGE_MORE_STRICT")]
11940 MoreStrict,
11941 #[doc(hidden)]
11942 __Unknown(i32),
11943}
11944
11945#[doc(hidden)]
11946impl IntoGlib for SorterChange {
11947 type GlibType = ffi::GtkSorterChange;
11948
11949 #[inline]
11950 fn into_glib(self) -> ffi::GtkSorterChange {
11951 match self {
11952 Self::Different => ffi::GTK_SORTER_CHANGE_DIFFERENT,
11953 Self::Inverted => ffi::GTK_SORTER_CHANGE_INVERTED,
11954 Self::LessStrict => ffi::GTK_SORTER_CHANGE_LESS_STRICT,
11955 Self::MoreStrict => ffi::GTK_SORTER_CHANGE_MORE_STRICT,
11956 Self::__Unknown(value) => value,
11957 }
11958 }
11959}
11960
11961#[doc(hidden)]
11962impl FromGlib<ffi::GtkSorterChange> for SorterChange {
11963 #[inline]
11964 unsafe fn from_glib(value: ffi::GtkSorterChange) -> Self {
11965 skip_assert_initialized!();
11966
11967 match value {
11968 ffi::GTK_SORTER_CHANGE_DIFFERENT => Self::Different,
11969 ffi::GTK_SORTER_CHANGE_INVERTED => Self::Inverted,
11970 ffi::GTK_SORTER_CHANGE_LESS_STRICT => Self::LessStrict,
11971 ffi::GTK_SORTER_CHANGE_MORE_STRICT => Self::MoreStrict,
11972 value => Self::__Unknown(value),
11973 }
11974 }
11975}
11976
11977impl StaticType for SorterChange {
11978 #[inline]
11979 #[doc(alias = "gtk_sorter_change_get_type")]
11980 fn static_type() -> glib::Type {
11981 unsafe { from_glib(ffi::gtk_sorter_change_get_type()) }
11982 }
11983}
11984
11985impl glib::HasParamSpec for SorterChange {
11986 type ParamSpec = glib::ParamSpecEnum;
11987 type SetValue = Self;
11988 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11989
11990 fn param_spec_builder() -> Self::BuilderFn {
11991 Self::ParamSpec::builder_with_default
11992 }
11993}
11994
11995impl glib::value::ValueType for SorterChange {
11996 type Type = Self;
11997}
11998
11999unsafe impl<'a> glib::value::FromValue<'a> for SorterChange {
12000 type Checker = glib::value::GenericValueTypeChecker<Self>;
12001
12002 #[inline]
12003 unsafe fn from_value(value: &'a glib::Value) -> Self {
12004 skip_assert_initialized!();
12005 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12006 }
12007}
12008
12009impl ToValue for SorterChange {
12010 #[inline]
12011 fn to_value(&self) -> glib::Value {
12012 let mut value = glib::Value::for_value_type::<Self>();
12013 unsafe {
12014 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12015 }
12016 value
12017 }
12018
12019 #[inline]
12020 fn value_type(&self) -> glib::Type {
12021 Self::static_type()
12022 }
12023}
12024
12025impl From<SorterChange> for glib::Value {
12026 #[inline]
12027 fn from(v: SorterChange) -> Self {
12028 skip_assert_initialized!();
12029 ToValue::to_value(&v)
12030 }
12031}
12032
12033#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12035#[non_exhaustive]
12036#[doc(alias = "GtkSorterOrder")]
12037pub enum SorterOrder {
12038 #[doc(alias = "GTK_SORTER_ORDER_PARTIAL")]
12040 Partial,
12041 #[doc(alias = "GTK_SORTER_ORDER_NONE")]
12044 None,
12045 #[doc(alias = "GTK_SORTER_ORDER_TOTAL")]
12049 Total,
12050 #[doc(hidden)]
12051 __Unknown(i32),
12052}
12053
12054#[doc(hidden)]
12055impl IntoGlib for SorterOrder {
12056 type GlibType = ffi::GtkSorterOrder;
12057
12058 #[inline]
12059 fn into_glib(self) -> ffi::GtkSorterOrder {
12060 match self {
12061 Self::Partial => ffi::GTK_SORTER_ORDER_PARTIAL,
12062 Self::None => ffi::GTK_SORTER_ORDER_NONE,
12063 Self::Total => ffi::GTK_SORTER_ORDER_TOTAL,
12064 Self::__Unknown(value) => value,
12065 }
12066 }
12067}
12068
12069#[doc(hidden)]
12070impl FromGlib<ffi::GtkSorterOrder> for SorterOrder {
12071 #[inline]
12072 unsafe fn from_glib(value: ffi::GtkSorterOrder) -> Self {
12073 skip_assert_initialized!();
12074
12075 match value {
12076 ffi::GTK_SORTER_ORDER_PARTIAL => Self::Partial,
12077 ffi::GTK_SORTER_ORDER_NONE => Self::None,
12078 ffi::GTK_SORTER_ORDER_TOTAL => Self::Total,
12079 value => Self::__Unknown(value),
12080 }
12081 }
12082}
12083
12084impl StaticType for SorterOrder {
12085 #[inline]
12086 #[doc(alias = "gtk_sorter_order_get_type")]
12087 fn static_type() -> glib::Type {
12088 unsafe { from_glib(ffi::gtk_sorter_order_get_type()) }
12089 }
12090}
12091
12092impl glib::HasParamSpec for SorterOrder {
12093 type ParamSpec = glib::ParamSpecEnum;
12094 type SetValue = Self;
12095 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12096
12097 fn param_spec_builder() -> Self::BuilderFn {
12098 Self::ParamSpec::builder_with_default
12099 }
12100}
12101
12102impl glib::value::ValueType for SorterOrder {
12103 type Type = Self;
12104}
12105
12106unsafe impl<'a> glib::value::FromValue<'a> for SorterOrder {
12107 type Checker = glib::value::GenericValueTypeChecker<Self>;
12108
12109 #[inline]
12110 unsafe fn from_value(value: &'a glib::Value) -> Self {
12111 skip_assert_initialized!();
12112 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12113 }
12114}
12115
12116impl ToValue for SorterOrder {
12117 #[inline]
12118 fn to_value(&self) -> glib::Value {
12119 let mut value = glib::Value::for_value_type::<Self>();
12120 unsafe {
12121 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12122 }
12123 value
12124 }
12125
12126 #[inline]
12127 fn value_type(&self) -> glib::Type {
12128 Self::static_type()
12129 }
12130}
12131
12132impl From<SorterOrder> for glib::Value {
12133 #[inline]
12134 fn from(v: SorterOrder) -> Self {
12135 skip_assert_initialized!();
12136 ToValue::to_value(&v)
12137 }
12138}
12139
12140#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12145#[non_exhaustive]
12146#[doc(alias = "GtkSpinButtonUpdatePolicy")]
12147pub enum SpinButtonUpdatePolicy {
12148 #[doc(alias = "GTK_UPDATE_ALWAYS")]
12151 Always,
12152 #[doc(alias = "GTK_UPDATE_IF_VALID")]
12156 IfValid,
12157 #[doc(hidden)]
12158 __Unknown(i32),
12159}
12160
12161#[doc(hidden)]
12162impl IntoGlib for SpinButtonUpdatePolicy {
12163 type GlibType = ffi::GtkSpinButtonUpdatePolicy;
12164
12165 #[inline]
12166 fn into_glib(self) -> ffi::GtkSpinButtonUpdatePolicy {
12167 match self {
12168 Self::Always => ffi::GTK_UPDATE_ALWAYS,
12169 Self::IfValid => ffi::GTK_UPDATE_IF_VALID,
12170 Self::__Unknown(value) => value,
12171 }
12172 }
12173}
12174
12175#[doc(hidden)]
12176impl FromGlib<ffi::GtkSpinButtonUpdatePolicy> for SpinButtonUpdatePolicy {
12177 #[inline]
12178 unsafe fn from_glib(value: ffi::GtkSpinButtonUpdatePolicy) -> Self {
12179 skip_assert_initialized!();
12180
12181 match value {
12182 ffi::GTK_UPDATE_ALWAYS => Self::Always,
12183 ffi::GTK_UPDATE_IF_VALID => Self::IfValid,
12184 value => Self::__Unknown(value),
12185 }
12186 }
12187}
12188
12189impl StaticType for SpinButtonUpdatePolicy {
12190 #[inline]
12191 #[doc(alias = "gtk_spin_button_update_policy_get_type")]
12192 fn static_type() -> glib::Type {
12193 unsafe { from_glib(ffi::gtk_spin_button_update_policy_get_type()) }
12194 }
12195}
12196
12197impl glib::HasParamSpec for SpinButtonUpdatePolicy {
12198 type ParamSpec = glib::ParamSpecEnum;
12199 type SetValue = Self;
12200 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12201
12202 fn param_spec_builder() -> Self::BuilderFn {
12203 Self::ParamSpec::builder_with_default
12204 }
12205}
12206
12207impl glib::value::ValueType for SpinButtonUpdatePolicy {
12208 type Type = Self;
12209}
12210
12211unsafe impl<'a> glib::value::FromValue<'a> for SpinButtonUpdatePolicy {
12212 type Checker = glib::value::GenericValueTypeChecker<Self>;
12213
12214 #[inline]
12215 unsafe fn from_value(value: &'a glib::Value) -> Self {
12216 skip_assert_initialized!();
12217 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12218 }
12219}
12220
12221impl ToValue for SpinButtonUpdatePolicy {
12222 #[inline]
12223 fn to_value(&self) -> glib::Value {
12224 let mut value = glib::Value::for_value_type::<Self>();
12225 unsafe {
12226 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12227 }
12228 value
12229 }
12230
12231 #[inline]
12232 fn value_type(&self) -> glib::Type {
12233 Self::static_type()
12234 }
12235}
12236
12237impl From<SpinButtonUpdatePolicy> for glib::Value {
12238 #[inline]
12239 fn from(v: SpinButtonUpdatePolicy) -> Self {
12240 skip_assert_initialized!();
12241 ToValue::to_value(&v)
12242 }
12243}
12244
12245#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12248#[non_exhaustive]
12249#[doc(alias = "GtkSpinType")]
12250pub enum SpinType {
12251 #[doc(alias = "GTK_SPIN_STEP_FORWARD")]
12253 StepForward,
12254 #[doc(alias = "GTK_SPIN_STEP_BACKWARD")]
12256 StepBackward,
12257 #[doc(alias = "GTK_SPIN_PAGE_FORWARD")]
12259 PageForward,
12260 #[doc(alias = "GTK_SPIN_PAGE_BACKWARD")]
12262 PageBackward,
12263 #[doc(alias = "GTK_SPIN_HOME")]
12265 Home,
12266 #[doc(alias = "GTK_SPIN_END")]
12268 End,
12269 #[doc(alias = "GTK_SPIN_USER_DEFINED")]
12271 UserDefined,
12272 #[doc(hidden)]
12273 __Unknown(i32),
12274}
12275
12276#[doc(hidden)]
12277impl IntoGlib for SpinType {
12278 type GlibType = ffi::GtkSpinType;
12279
12280 #[inline]
12281 fn into_glib(self) -> ffi::GtkSpinType {
12282 match self {
12283 Self::StepForward => ffi::GTK_SPIN_STEP_FORWARD,
12284 Self::StepBackward => ffi::GTK_SPIN_STEP_BACKWARD,
12285 Self::PageForward => ffi::GTK_SPIN_PAGE_FORWARD,
12286 Self::PageBackward => ffi::GTK_SPIN_PAGE_BACKWARD,
12287 Self::Home => ffi::GTK_SPIN_HOME,
12288 Self::End => ffi::GTK_SPIN_END,
12289 Self::UserDefined => ffi::GTK_SPIN_USER_DEFINED,
12290 Self::__Unknown(value) => value,
12291 }
12292 }
12293}
12294
12295#[doc(hidden)]
12296impl FromGlib<ffi::GtkSpinType> for SpinType {
12297 #[inline]
12298 unsafe fn from_glib(value: ffi::GtkSpinType) -> Self {
12299 skip_assert_initialized!();
12300
12301 match value {
12302 ffi::GTK_SPIN_STEP_FORWARD => Self::StepForward,
12303 ffi::GTK_SPIN_STEP_BACKWARD => Self::StepBackward,
12304 ffi::GTK_SPIN_PAGE_FORWARD => Self::PageForward,
12305 ffi::GTK_SPIN_PAGE_BACKWARD => Self::PageBackward,
12306 ffi::GTK_SPIN_HOME => Self::Home,
12307 ffi::GTK_SPIN_END => Self::End,
12308 ffi::GTK_SPIN_USER_DEFINED => Self::UserDefined,
12309 value => Self::__Unknown(value),
12310 }
12311 }
12312}
12313
12314impl StaticType for SpinType {
12315 #[inline]
12316 #[doc(alias = "gtk_spin_type_get_type")]
12317 fn static_type() -> glib::Type {
12318 unsafe { from_glib(ffi::gtk_spin_type_get_type()) }
12319 }
12320}
12321
12322impl glib::HasParamSpec for SpinType {
12323 type ParamSpec = glib::ParamSpecEnum;
12324 type SetValue = Self;
12325 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12326
12327 fn param_spec_builder() -> Self::BuilderFn {
12328 Self::ParamSpec::builder_with_default
12329 }
12330}
12331
12332impl glib::value::ValueType for SpinType {
12333 type Type = Self;
12334}
12335
12336unsafe impl<'a> glib::value::FromValue<'a> for SpinType {
12337 type Checker = glib::value::GenericValueTypeChecker<Self>;
12338
12339 #[inline]
12340 unsafe fn from_value(value: &'a glib::Value) -> Self {
12341 skip_assert_initialized!();
12342 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12343 }
12344}
12345
12346impl ToValue for SpinType {
12347 #[inline]
12348 fn to_value(&self) -> glib::Value {
12349 let mut value = glib::Value::for_value_type::<Self>();
12350 unsafe {
12351 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12352 }
12353 value
12354 }
12355
12356 #[inline]
12357 fn value_type(&self) -> glib::Type {
12358 Self::static_type()
12359 }
12360}
12361
12362impl From<SpinType> for glib::Value {
12363 #[inline]
12364 fn from(v: SpinType) -> Self {
12365 skip_assert_initialized!();
12366 ToValue::to_value(&v)
12367 }
12368}
12369
12370#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12374#[non_exhaustive]
12375#[doc(alias = "GtkStackTransitionType")]
12376pub enum StackTransitionType {
12377 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_NONE")]
12379 None,
12380 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_CROSSFADE")]
12382 Crossfade,
12383 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT")]
12385 SlideRight,
12386 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT")]
12388 SlideLeft,
12389 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP")]
12391 SlideUp,
12392 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN")]
12394 SlideDown,
12395 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT")]
12397 SlideLeftRight,
12398 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN")]
12400 SlideUpDown,
12401 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP")]
12403 OverUp,
12404 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN")]
12406 OverDown,
12407 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT")]
12409 OverLeft,
12410 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT")]
12412 OverRight,
12413 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_UP")]
12415 UnderUp,
12416 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_DOWN")]
12418 UnderDown,
12419 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_LEFT")]
12421 UnderLeft,
12422 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT")]
12424 UnderRight,
12425 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN")]
12427 OverUpDown,
12428 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP")]
12430 OverDownUp,
12431 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT")]
12433 OverLeftRight,
12434 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT")]
12436 OverRightLeft,
12437 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT")]
12439 RotateLeft,
12440 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT")]
12442 RotateRight,
12443 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT")]
12445 RotateLeftRight,
12446 #[doc(hidden)]
12447 __Unknown(i32),
12448}
12449
12450#[doc(hidden)]
12451impl IntoGlib for StackTransitionType {
12452 type GlibType = ffi::GtkStackTransitionType;
12453
12454 fn into_glib(self) -> ffi::GtkStackTransitionType {
12455 match self {
12456 Self::None => ffi::GTK_STACK_TRANSITION_TYPE_NONE,
12457 Self::Crossfade => ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE,
12458 Self::SlideRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT,
12459 Self::SlideLeft => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT,
12460 Self::SlideUp => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP,
12461 Self::SlideDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN,
12462 Self::SlideLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT,
12463 Self::SlideUpDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN,
12464 Self::OverUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP,
12465 Self::OverDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN,
12466 Self::OverLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT,
12467 Self::OverRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT,
12468 Self::UnderUp => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP,
12469 Self::UnderDown => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN,
12470 Self::UnderLeft => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT,
12471 Self::UnderRight => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT,
12472 Self::OverUpDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN,
12473 Self::OverDownUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP,
12474 Self::OverLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT,
12475 Self::OverRightLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT,
12476 Self::RotateLeft => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT,
12477 Self::RotateRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT,
12478 Self::RotateLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT,
12479 Self::__Unknown(value) => value,
12480 }
12481 }
12482}
12483
12484#[doc(hidden)]
12485impl FromGlib<ffi::GtkStackTransitionType> for StackTransitionType {
12486 unsafe fn from_glib(value: ffi::GtkStackTransitionType) -> Self {
12487 skip_assert_initialized!();
12488
12489 match value {
12490 ffi::GTK_STACK_TRANSITION_TYPE_NONE => Self::None,
12491 ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
12492 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
12493 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
12494 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
12495 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
12496 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT => Self::SlideLeftRight,
12497 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN => Self::SlideUpDown,
12498 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP => Self::OverUp,
12499 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN => Self::OverDown,
12500 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT => Self::OverLeft,
12501 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT => Self::OverRight,
12502 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP => Self::UnderUp,
12503 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN => Self::UnderDown,
12504 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT => Self::UnderLeft,
12505 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT => Self::UnderRight,
12506 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN => Self::OverUpDown,
12507 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP => Self::OverDownUp,
12508 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT => Self::OverLeftRight,
12509 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT => Self::OverRightLeft,
12510 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT => Self::RotateLeft,
12511 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT => Self::RotateRight,
12512 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT => Self::RotateLeftRight,
12513 value => Self::__Unknown(value),
12514 }
12515 }
12516}
12517
12518impl StaticType for StackTransitionType {
12519 #[inline]
12520 #[doc(alias = "gtk_stack_transition_type_get_type")]
12521 fn static_type() -> glib::Type {
12522 unsafe { from_glib(ffi::gtk_stack_transition_type_get_type()) }
12523 }
12524}
12525
12526impl glib::HasParamSpec for StackTransitionType {
12527 type ParamSpec = glib::ParamSpecEnum;
12528 type SetValue = Self;
12529 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12530
12531 fn param_spec_builder() -> Self::BuilderFn {
12532 Self::ParamSpec::builder_with_default
12533 }
12534}
12535
12536impl glib::value::ValueType for StackTransitionType {
12537 type Type = Self;
12538}
12539
12540unsafe impl<'a> glib::value::FromValue<'a> for StackTransitionType {
12541 type Checker = glib::value::GenericValueTypeChecker<Self>;
12542
12543 #[inline]
12544 unsafe fn from_value(value: &'a glib::Value) -> Self {
12545 skip_assert_initialized!();
12546 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12547 }
12548}
12549
12550impl ToValue for StackTransitionType {
12551 #[inline]
12552 fn to_value(&self) -> glib::Value {
12553 let mut value = glib::Value::for_value_type::<Self>();
12554 unsafe {
12555 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12556 }
12557 value
12558 }
12559
12560 #[inline]
12561 fn value_type(&self) -> glib::Type {
12562 Self::static_type()
12563 }
12564}
12565
12566impl From<StackTransitionType> for glib::Value {
12567 #[inline]
12568 fn from(v: StackTransitionType) -> Self {
12569 skip_assert_initialized!();
12570 ToValue::to_value(&v)
12571 }
12572}
12573
12574#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12576#[non_exhaustive]
12577#[doc(alias = "GtkStringFilterMatchMode")]
12578pub enum StringFilterMatchMode {
12579 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_EXACT")]
12582 Exact,
12583 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_SUBSTRING")]
12586 Substring,
12587 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_PREFIX")]
12590 Prefix,
12591 #[doc(hidden)]
12592 __Unknown(i32),
12593}
12594
12595#[doc(hidden)]
12596impl IntoGlib for StringFilterMatchMode {
12597 type GlibType = ffi::GtkStringFilterMatchMode;
12598
12599 #[inline]
12600 fn into_glib(self) -> ffi::GtkStringFilterMatchMode {
12601 match self {
12602 Self::Exact => ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT,
12603 Self::Substring => ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING,
12604 Self::Prefix => ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX,
12605 Self::__Unknown(value) => value,
12606 }
12607 }
12608}
12609
12610#[doc(hidden)]
12611impl FromGlib<ffi::GtkStringFilterMatchMode> for StringFilterMatchMode {
12612 #[inline]
12613 unsafe fn from_glib(value: ffi::GtkStringFilterMatchMode) -> Self {
12614 skip_assert_initialized!();
12615
12616 match value {
12617 ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT => Self::Exact,
12618 ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING => Self::Substring,
12619 ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX => Self::Prefix,
12620 value => Self::__Unknown(value),
12621 }
12622 }
12623}
12624
12625impl StaticType for StringFilterMatchMode {
12626 #[inline]
12627 #[doc(alias = "gtk_string_filter_match_mode_get_type")]
12628 fn static_type() -> glib::Type {
12629 unsafe { from_glib(ffi::gtk_string_filter_match_mode_get_type()) }
12630 }
12631}
12632
12633impl glib::HasParamSpec for StringFilterMatchMode {
12634 type ParamSpec = glib::ParamSpecEnum;
12635 type SetValue = Self;
12636 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12637
12638 fn param_spec_builder() -> Self::BuilderFn {
12639 Self::ParamSpec::builder_with_default
12640 }
12641}
12642
12643impl glib::value::ValueType for StringFilterMatchMode {
12644 type Type = Self;
12645}
12646
12647unsafe impl<'a> glib::value::FromValue<'a> for StringFilterMatchMode {
12648 type Checker = glib::value::GenericValueTypeChecker<Self>;
12649
12650 #[inline]
12651 unsafe fn from_value(value: &'a glib::Value) -> Self {
12652 skip_assert_initialized!();
12653 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12654 }
12655}
12656
12657impl ToValue for StringFilterMatchMode {
12658 #[inline]
12659 fn to_value(&self) -> glib::Value {
12660 let mut value = glib::Value::for_value_type::<Self>();
12661 unsafe {
12662 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12663 }
12664 value
12665 }
12666
12667 #[inline]
12668 fn value_type(&self) -> glib::Type {
12669 Self::static_type()
12670 }
12671}
12672
12673impl From<StringFilterMatchMode> for glib::Value {
12674 #[inline]
12675 fn from(v: StringFilterMatchMode) -> Self {
12676 skip_assert_initialized!();
12677 ToValue::to_value(&v)
12678 }
12679}
12680
12681#[cfg(feature = "v4_22")]
12684#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12685#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12686#[non_exhaustive]
12687#[doc(alias = "GtkSvgError")]
12688pub enum SvgError {
12689 #[doc(alias = "GTK_SVG_ERROR_INVALID_SYNTAX")]
12692 InvalidSyntax,
12693 #[doc(alias = "GTK_SVG_ERROR_INVALID_ELEMENT")]
12697 InvalidElement,
12698 #[doc(alias = "GTK_SVG_ERROR_INVALID_ATTRIBUTE")]
12702 InvalidAttribute,
12703 #[doc(alias = "GTK_SVG_ERROR_MISSING_ATTRIBUTE")]
12705 MissingAttribute,
12706 #[doc(alias = "GTK_SVG_ERROR_INVALID_REFERENCE")]
12709 InvalidReference,
12710 #[doc(alias = "GTK_SVG_ERROR_FAILED_UPDATE")]
12712 FailedUpdate,
12713 #[doc(alias = "GTK_SVG_ERROR_FAILED_RENDERING")]
12716 FailedRendering,
12717 #[doc(alias = "GTK_SVG_ERROR_IGNORED_ELEMENT")]
12721 IgnoredElement,
12722 #[doc(alias = "GTK_SVG_ERROR_LIMITS_EXCEEDED")]
12725 LimitsExceeded,
12726 #[doc(alias = "GTK_SVG_ERROR_NOT_IMPLEMENTED")]
12730 NotImplemented,
12731 #[doc(alias = "GTK_SVG_ERROR_FEATURE_DISABLED")]
12732 FeatureDisabled,
12733 #[doc(hidden)]
12734 __Unknown(i32),
12735}
12736
12737#[cfg(feature = "v4_22")]
12738#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12739impl SvgError {
12740 #[doc(alias = "gtk_svg_error_get_attribute")]
12741 #[doc(alias = "get_attribute")]
12742 pub fn attribute(error: &glib::Error) -> Option<glib::GString> {
12743 assert_initialized_main_thread!();
12744 unsafe { from_glib_none(ffi::gtk_svg_error_get_attribute(error.to_glib_none().0)) }
12745 }
12746
12747 #[doc(alias = "gtk_svg_error_get_element")]
12748 #[doc(alias = "get_element")]
12749 pub fn element(error: &glib::Error) -> Option<glib::GString> {
12750 assert_initialized_main_thread!();
12751 unsafe { from_glib_none(ffi::gtk_svg_error_get_element(error.to_glib_none().0)) }
12752 }
12753
12754 #[cfg(feature = "v4_24")]
12761 #[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
12762 #[doc(alias = "gtk_svg_error_get_input")]
12763 #[doc(alias = "get_input")]
12764 pub fn input(error: &glib::Error) -> Option<glib::GString> {
12765 assert_initialized_main_thread!();
12766 unsafe { from_glib_none(ffi::gtk_svg_error_get_input(error.to_glib_none().0)) }
12767 }
12768
12769 #[doc(alias = "gtk_svg_error_quark")]
12776 pub fn quark() -> glib::Quark {
12777 assert_initialized_main_thread!();
12778 unsafe { from_glib(ffi::gtk_svg_error_quark()) }
12779 }
12780}
12781
12782#[cfg(feature = "v4_22")]
12783#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12784#[doc(hidden)]
12785impl IntoGlib for SvgError {
12786 type GlibType = ffi::GtkSvgError;
12787
12788 #[inline]
12789 fn into_glib(self) -> ffi::GtkSvgError {
12790 match self {
12791 Self::InvalidSyntax => ffi::GTK_SVG_ERROR_INVALID_SYNTAX,
12792 Self::InvalidElement => ffi::GTK_SVG_ERROR_INVALID_ELEMENT,
12793 Self::InvalidAttribute => ffi::GTK_SVG_ERROR_INVALID_ATTRIBUTE,
12794 Self::MissingAttribute => ffi::GTK_SVG_ERROR_MISSING_ATTRIBUTE,
12795 Self::InvalidReference => ffi::GTK_SVG_ERROR_INVALID_REFERENCE,
12796 Self::FailedUpdate => ffi::GTK_SVG_ERROR_FAILED_UPDATE,
12797 Self::FailedRendering => ffi::GTK_SVG_ERROR_FAILED_RENDERING,
12798 Self::IgnoredElement => ffi::GTK_SVG_ERROR_IGNORED_ELEMENT,
12799 Self::LimitsExceeded => ffi::GTK_SVG_ERROR_LIMITS_EXCEEDED,
12800 Self::NotImplemented => ffi::GTK_SVG_ERROR_NOT_IMPLEMENTED,
12801 Self::FeatureDisabled => ffi::GTK_SVG_ERROR_FEATURE_DISABLED,
12802 Self::__Unknown(value) => value,
12803 }
12804 }
12805}
12806
12807#[cfg(feature = "v4_22")]
12808#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12809#[doc(hidden)]
12810impl FromGlib<ffi::GtkSvgError> for SvgError {
12811 #[inline]
12812 unsafe fn from_glib(value: ffi::GtkSvgError) -> Self {
12813 skip_assert_initialized!();
12814
12815 match value {
12816 ffi::GTK_SVG_ERROR_INVALID_SYNTAX => Self::InvalidSyntax,
12817 ffi::GTK_SVG_ERROR_INVALID_ELEMENT => Self::InvalidElement,
12818 ffi::GTK_SVG_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
12819 ffi::GTK_SVG_ERROR_MISSING_ATTRIBUTE => Self::MissingAttribute,
12820 ffi::GTK_SVG_ERROR_INVALID_REFERENCE => Self::InvalidReference,
12821 ffi::GTK_SVG_ERROR_FAILED_UPDATE => Self::FailedUpdate,
12822 ffi::GTK_SVG_ERROR_FAILED_RENDERING => Self::FailedRendering,
12823 ffi::GTK_SVG_ERROR_IGNORED_ELEMENT => Self::IgnoredElement,
12824 ffi::GTK_SVG_ERROR_LIMITS_EXCEEDED => Self::LimitsExceeded,
12825 ffi::GTK_SVG_ERROR_NOT_IMPLEMENTED => Self::NotImplemented,
12826 ffi::GTK_SVG_ERROR_FEATURE_DISABLED => Self::FeatureDisabled,
12827 value => Self::__Unknown(value),
12828 }
12829 }
12830}
12831
12832#[cfg(feature = "v4_22")]
12833#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12834impl glib::error::ErrorDomain for SvgError {
12835 #[inline]
12836 fn domain() -> glib::Quark {
12837 skip_assert_initialized!();
12838
12839 static QUARK: ::std::sync::OnceLock<glib::ffi::GQuark> = ::std::sync::OnceLock::new();
12840 let quark = *QUARK.get_or_init(|| unsafe {
12841 glib::ffi::g_quark_from_static_string(c"GtkSvgError".as_ptr())
12842 });
12843 unsafe { from_glib(quark) }
12844 }
12845
12846 #[inline]
12847 fn code(self) -> i32 {
12848 self.into_glib()
12849 }
12850
12851 #[inline]
12852 #[allow(clippy::match_single_binding)]
12853 fn from(code: i32) -> Option<Self> {
12854 skip_assert_initialized!();
12855 match unsafe { from_glib(code) } {
12856 value => Some(value),
12857 }
12858 }
12859}
12860
12861#[cfg(feature = "v4_22")]
12862#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12863impl StaticType for SvgError {
12864 #[inline]
12865 #[doc(alias = "gtk_svg_error_get_type")]
12866 fn static_type() -> glib::Type {
12867 unsafe { from_glib(ffi::gtk_svg_error_get_type()) }
12868 }
12869}
12870
12871#[cfg(feature = "v4_22")]
12872#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12873impl glib::HasParamSpec for SvgError {
12874 type ParamSpec = glib::ParamSpecEnum;
12875 type SetValue = Self;
12876 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12877
12878 fn param_spec_builder() -> Self::BuilderFn {
12879 Self::ParamSpec::builder_with_default
12880 }
12881}
12882
12883#[cfg(feature = "v4_22")]
12884#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12885impl glib::value::ValueType for SvgError {
12886 type Type = Self;
12887}
12888
12889#[cfg(feature = "v4_22")]
12890#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12891unsafe impl<'a> glib::value::FromValue<'a> for SvgError {
12892 type Checker = glib::value::GenericValueTypeChecker<Self>;
12893
12894 #[inline]
12895 unsafe fn from_value(value: &'a glib::Value) -> Self {
12896 skip_assert_initialized!();
12897 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12898 }
12899}
12900
12901#[cfg(feature = "v4_22")]
12902#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12903impl ToValue for SvgError {
12904 #[inline]
12905 fn to_value(&self) -> glib::Value {
12906 let mut value = glib::Value::for_value_type::<Self>();
12907 unsafe {
12908 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12909 }
12910 value
12911 }
12912
12913 #[inline]
12914 fn value_type(&self) -> glib::Type {
12915 Self::static_type()
12916 }
12917}
12918
12919#[cfg(feature = "v4_22")]
12920#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12921impl From<SvgError> for glib::Value {
12922 #[inline]
12923 fn from(v: SvgError) -> Self {
12924 skip_assert_initialized!();
12925 ToValue::to_value(&v)
12926 }
12927}
12928
12929#[cfg(feature = "v4_6")]
12934#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12935#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12936#[non_exhaustive]
12937#[doc(alias = "GtkSymbolicColor")]
12938pub enum SymbolicColor {
12939 #[doc(alias = "GTK_SYMBOLIC_COLOR_FOREGROUND")]
12941 Foreground,
12942 #[doc(alias = "GTK_SYMBOLIC_COLOR_ERROR")]
12944 Error,
12945 #[doc(alias = "GTK_SYMBOLIC_COLOR_WARNING")]
12947 Warning,
12948 #[doc(alias = "GTK_SYMBOLIC_COLOR_SUCCESS")]
12950 Success,
12951 #[cfg(feature = "v4_22")]
12953 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12954 #[doc(alias = "GTK_SYMBOLIC_COLOR_ACCENT")]
12955 Accent,
12956 #[doc(hidden)]
12957 __Unknown(i32),
12958}
12959
12960#[cfg(feature = "v4_6")]
12961#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12962#[doc(hidden)]
12963impl IntoGlib for SymbolicColor {
12964 type GlibType = ffi::GtkSymbolicColor;
12965
12966 #[inline]
12967 fn into_glib(self) -> ffi::GtkSymbolicColor {
12968 match self {
12969 Self::Foreground => ffi::GTK_SYMBOLIC_COLOR_FOREGROUND,
12970 Self::Error => ffi::GTK_SYMBOLIC_COLOR_ERROR,
12971 Self::Warning => ffi::GTK_SYMBOLIC_COLOR_WARNING,
12972 Self::Success => ffi::GTK_SYMBOLIC_COLOR_SUCCESS,
12973 #[cfg(feature = "v4_22")]
12974 Self::Accent => ffi::GTK_SYMBOLIC_COLOR_ACCENT,
12975 Self::__Unknown(value) => value,
12976 }
12977 }
12978}
12979
12980#[cfg(feature = "v4_6")]
12981#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12982#[doc(hidden)]
12983impl FromGlib<ffi::GtkSymbolicColor> for SymbolicColor {
12984 #[inline]
12985 unsafe fn from_glib(value: ffi::GtkSymbolicColor) -> Self {
12986 skip_assert_initialized!();
12987
12988 match value {
12989 ffi::GTK_SYMBOLIC_COLOR_FOREGROUND => Self::Foreground,
12990 ffi::GTK_SYMBOLIC_COLOR_ERROR => Self::Error,
12991 ffi::GTK_SYMBOLIC_COLOR_WARNING => Self::Warning,
12992 ffi::GTK_SYMBOLIC_COLOR_SUCCESS => Self::Success,
12993 #[cfg(feature = "v4_22")]
12994 ffi::GTK_SYMBOLIC_COLOR_ACCENT => Self::Accent,
12995 value => Self::__Unknown(value),
12996 }
12997 }
12998}
12999
13000#[cfg(feature = "v4_6")]
13001#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13002impl StaticType for SymbolicColor {
13003 #[inline]
13004 #[doc(alias = "gtk_symbolic_color_get_type")]
13005 fn static_type() -> glib::Type {
13006 unsafe { from_glib(ffi::gtk_symbolic_color_get_type()) }
13007 }
13008}
13009
13010#[cfg(feature = "v4_6")]
13011#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13012impl glib::HasParamSpec for SymbolicColor {
13013 type ParamSpec = glib::ParamSpecEnum;
13014 type SetValue = Self;
13015 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13016
13017 fn param_spec_builder() -> Self::BuilderFn {
13018 Self::ParamSpec::builder_with_default
13019 }
13020}
13021
13022#[cfg(feature = "v4_6")]
13023#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13024impl glib::value::ValueType for SymbolicColor {
13025 type Type = Self;
13026}
13027
13028#[cfg(feature = "v4_6")]
13029#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13030unsafe impl<'a> glib::value::FromValue<'a> for SymbolicColor {
13031 type Checker = glib::value::GenericValueTypeChecker<Self>;
13032
13033 #[inline]
13034 unsafe fn from_value(value: &'a glib::Value) -> Self {
13035 skip_assert_initialized!();
13036 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13037 }
13038}
13039
13040#[cfg(feature = "v4_6")]
13041#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13042impl ToValue for SymbolicColor {
13043 #[inline]
13044 fn to_value(&self) -> glib::Value {
13045 let mut value = glib::Value::for_value_type::<Self>();
13046 unsafe {
13047 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13048 }
13049 value
13050 }
13051
13052 #[inline]
13053 fn value_type(&self) -> glib::Type {
13054 Self::static_type()
13055 }
13056}
13057
13058#[cfg(feature = "v4_6")]
13059#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13060impl From<SymbolicColor> for glib::Value {
13061 #[inline]
13062 fn from(v: SymbolicColor) -> Self {
13063 skip_assert_initialized!();
13064 ToValue::to_value(&v)
13065 }
13066}
13067
13068#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13078#[non_exhaustive]
13079#[doc(alias = "GtkSystemSetting")]
13080pub enum SystemSetting {
13081 #[doc(alias = "GTK_SYSTEM_SETTING_DPI")]
13083 Dpi,
13084 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_NAME")]
13086 FontName,
13087 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_CONFIG")]
13095 FontConfig,
13096 #[doc(alias = "GTK_SYSTEM_SETTING_DISPLAY")]
13098 Display,
13099 #[doc(alias = "GTK_SYSTEM_SETTING_ICON_THEME")]
13102 IconTheme,
13103 #[doc(hidden)]
13104 __Unknown(i32),
13105}
13106
13107#[doc(hidden)]
13108impl IntoGlib for SystemSetting {
13109 type GlibType = ffi::GtkSystemSetting;
13110
13111 #[inline]
13112 fn into_glib(self) -> ffi::GtkSystemSetting {
13113 match self {
13114 Self::Dpi => ffi::GTK_SYSTEM_SETTING_DPI,
13115 Self::FontName => ffi::GTK_SYSTEM_SETTING_FONT_NAME,
13116 Self::FontConfig => ffi::GTK_SYSTEM_SETTING_FONT_CONFIG,
13117 Self::Display => ffi::GTK_SYSTEM_SETTING_DISPLAY,
13118 Self::IconTheme => ffi::GTK_SYSTEM_SETTING_ICON_THEME,
13119 Self::__Unknown(value) => value,
13120 }
13121 }
13122}
13123
13124#[doc(hidden)]
13125impl FromGlib<ffi::GtkSystemSetting> for SystemSetting {
13126 #[inline]
13127 unsafe fn from_glib(value: ffi::GtkSystemSetting) -> Self {
13128 skip_assert_initialized!();
13129
13130 match value {
13131 ffi::GTK_SYSTEM_SETTING_DPI => Self::Dpi,
13132 ffi::GTK_SYSTEM_SETTING_FONT_NAME => Self::FontName,
13133 ffi::GTK_SYSTEM_SETTING_FONT_CONFIG => Self::FontConfig,
13134 ffi::GTK_SYSTEM_SETTING_DISPLAY => Self::Display,
13135 ffi::GTK_SYSTEM_SETTING_ICON_THEME => Self::IconTheme,
13136 value => Self::__Unknown(value),
13137 }
13138 }
13139}
13140
13141impl StaticType for SystemSetting {
13142 #[inline]
13143 #[doc(alias = "gtk_system_setting_get_type")]
13144 fn static_type() -> glib::Type {
13145 unsafe { from_glib(ffi::gtk_system_setting_get_type()) }
13146 }
13147}
13148
13149impl glib::HasParamSpec for SystemSetting {
13150 type ParamSpec = glib::ParamSpecEnum;
13151 type SetValue = Self;
13152 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13153
13154 fn param_spec_builder() -> Self::BuilderFn {
13155 Self::ParamSpec::builder_with_default
13156 }
13157}
13158
13159impl glib::value::ValueType for SystemSetting {
13160 type Type = Self;
13161}
13162
13163unsafe impl<'a> glib::value::FromValue<'a> for SystemSetting {
13164 type Checker = glib::value::GenericValueTypeChecker<Self>;
13165
13166 #[inline]
13167 unsafe fn from_value(value: &'a glib::Value) -> Self {
13168 skip_assert_initialized!();
13169 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13170 }
13171}
13172
13173impl ToValue for SystemSetting {
13174 #[inline]
13175 fn to_value(&self) -> glib::Value {
13176 let mut value = glib::Value::for_value_type::<Self>();
13177 unsafe {
13178 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13179 }
13180 value
13181 }
13182
13183 #[inline]
13184 fn value_type(&self) -> glib::Type {
13185 Self::static_type()
13186 }
13187}
13188
13189impl From<SystemSetting> for glib::Value {
13190 #[inline]
13191 fn from(v: SystemSetting) -> Self {
13192 skip_assert_initialized!();
13193 ToValue::to_value(&v)
13194 }
13195}
13196
13197#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13199#[non_exhaustive]
13200#[doc(alias = "GtkTextDirection")]
13201pub enum TextDirection {
13202 #[doc(alias = "GTK_TEXT_DIR_NONE")]
13204 None,
13205 #[doc(alias = "GTK_TEXT_DIR_LTR")]
13207 Ltr,
13208 #[doc(alias = "GTK_TEXT_DIR_RTL")]
13210 Rtl,
13211 #[doc(hidden)]
13212 __Unknown(i32),
13213}
13214
13215#[doc(hidden)]
13216impl IntoGlib for TextDirection {
13217 type GlibType = ffi::GtkTextDirection;
13218
13219 #[inline]
13220 fn into_glib(self) -> ffi::GtkTextDirection {
13221 match self {
13222 Self::None => ffi::GTK_TEXT_DIR_NONE,
13223 Self::Ltr => ffi::GTK_TEXT_DIR_LTR,
13224 Self::Rtl => ffi::GTK_TEXT_DIR_RTL,
13225 Self::__Unknown(value) => value,
13226 }
13227 }
13228}
13229
13230#[doc(hidden)]
13231impl FromGlib<ffi::GtkTextDirection> for TextDirection {
13232 #[inline]
13233 unsafe fn from_glib(value: ffi::GtkTextDirection) -> Self {
13234 skip_assert_initialized!();
13235
13236 match value {
13237 ffi::GTK_TEXT_DIR_NONE => Self::None,
13238 ffi::GTK_TEXT_DIR_LTR => Self::Ltr,
13239 ffi::GTK_TEXT_DIR_RTL => Self::Rtl,
13240 value => Self::__Unknown(value),
13241 }
13242 }
13243}
13244
13245impl StaticType for TextDirection {
13246 #[inline]
13247 #[doc(alias = "gtk_text_direction_get_type")]
13248 fn static_type() -> glib::Type {
13249 unsafe { from_glib(ffi::gtk_text_direction_get_type()) }
13250 }
13251}
13252
13253impl glib::HasParamSpec for TextDirection {
13254 type ParamSpec = glib::ParamSpecEnum;
13255 type SetValue = Self;
13256 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13257
13258 fn param_spec_builder() -> Self::BuilderFn {
13259 Self::ParamSpec::builder_with_default
13260 }
13261}
13262
13263impl glib::value::ValueType for TextDirection {
13264 type Type = Self;
13265}
13266
13267unsafe impl<'a> glib::value::FromValue<'a> for TextDirection {
13268 type Checker = glib::value::GenericValueTypeChecker<Self>;
13269
13270 #[inline]
13271 unsafe fn from_value(value: &'a glib::Value) -> Self {
13272 skip_assert_initialized!();
13273 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13274 }
13275}
13276
13277impl ToValue for TextDirection {
13278 #[inline]
13279 fn to_value(&self) -> glib::Value {
13280 let mut value = glib::Value::for_value_type::<Self>();
13281 unsafe {
13282 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13283 }
13284 value
13285 }
13286
13287 #[inline]
13288 fn value_type(&self) -> glib::Type {
13289 Self::static_type()
13290 }
13291}
13292
13293impl From<TextDirection> for glib::Value {
13294 #[inline]
13295 fn from(v: TextDirection) -> Self {
13296 skip_assert_initialized!();
13297 ToValue::to_value(&v)
13298 }
13299}
13300
13301#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13304#[non_exhaustive]
13305#[doc(alias = "GtkTextExtendSelection")]
13306pub enum TextExtendSelection {
13307 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_WORD")]
13310 Word,
13311 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_LINE")]
13314 Line,
13315 #[doc(hidden)]
13316 __Unknown(i32),
13317}
13318
13319#[doc(hidden)]
13320impl IntoGlib for TextExtendSelection {
13321 type GlibType = ffi::GtkTextExtendSelection;
13322
13323 #[inline]
13324 fn into_glib(self) -> ffi::GtkTextExtendSelection {
13325 match self {
13326 Self::Word => ffi::GTK_TEXT_EXTEND_SELECTION_WORD,
13327 Self::Line => ffi::GTK_TEXT_EXTEND_SELECTION_LINE,
13328 Self::__Unknown(value) => value,
13329 }
13330 }
13331}
13332
13333#[doc(hidden)]
13334impl FromGlib<ffi::GtkTextExtendSelection> for TextExtendSelection {
13335 #[inline]
13336 unsafe fn from_glib(value: ffi::GtkTextExtendSelection) -> Self {
13337 skip_assert_initialized!();
13338
13339 match value {
13340 ffi::GTK_TEXT_EXTEND_SELECTION_WORD => Self::Word,
13341 ffi::GTK_TEXT_EXTEND_SELECTION_LINE => Self::Line,
13342 value => Self::__Unknown(value),
13343 }
13344 }
13345}
13346
13347impl StaticType for TextExtendSelection {
13348 #[inline]
13349 #[doc(alias = "gtk_text_extend_selection_get_type")]
13350 fn static_type() -> glib::Type {
13351 unsafe { from_glib(ffi::gtk_text_extend_selection_get_type()) }
13352 }
13353}
13354
13355impl glib::HasParamSpec for TextExtendSelection {
13356 type ParamSpec = glib::ParamSpecEnum;
13357 type SetValue = Self;
13358 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13359
13360 fn param_spec_builder() -> Self::BuilderFn {
13361 Self::ParamSpec::builder_with_default
13362 }
13363}
13364
13365impl glib::value::ValueType for TextExtendSelection {
13366 type Type = Self;
13367}
13368
13369unsafe impl<'a> glib::value::FromValue<'a> for TextExtendSelection {
13370 type Checker = glib::value::GenericValueTypeChecker<Self>;
13371
13372 #[inline]
13373 unsafe fn from_value(value: &'a glib::Value) -> Self {
13374 skip_assert_initialized!();
13375 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13376 }
13377}
13378
13379impl ToValue for TextExtendSelection {
13380 #[inline]
13381 fn to_value(&self) -> glib::Value {
13382 let mut value = glib::Value::for_value_type::<Self>();
13383 unsafe {
13384 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13385 }
13386 value
13387 }
13388
13389 #[inline]
13390 fn value_type(&self) -> glib::Type {
13391 Self::static_type()
13392 }
13393}
13394
13395impl From<TextExtendSelection> for glib::Value {
13396 #[inline]
13397 fn from(v: TextExtendSelection) -> Self {
13398 skip_assert_initialized!();
13399 ToValue::to_value(&v)
13400 }
13401}
13402
13403#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13406#[non_exhaustive]
13407#[doc(alias = "GtkTextViewLayer")]
13408pub enum TextViewLayer {
13409 #[doc(alias = "GTK_TEXT_VIEW_LAYER_BELOW_TEXT")]
13411 BelowText,
13412 #[doc(alias = "GTK_TEXT_VIEW_LAYER_ABOVE_TEXT")]
13414 AboveText,
13415 #[doc(hidden)]
13416 __Unknown(i32),
13417}
13418
13419#[doc(hidden)]
13420impl IntoGlib for TextViewLayer {
13421 type GlibType = ffi::GtkTextViewLayer;
13422
13423 #[inline]
13424 fn into_glib(self) -> ffi::GtkTextViewLayer {
13425 match self {
13426 Self::BelowText => ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT,
13427 Self::AboveText => ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT,
13428 Self::__Unknown(value) => value,
13429 }
13430 }
13431}
13432
13433#[doc(hidden)]
13434impl FromGlib<ffi::GtkTextViewLayer> for TextViewLayer {
13435 #[inline]
13436 unsafe fn from_glib(value: ffi::GtkTextViewLayer) -> Self {
13437 skip_assert_initialized!();
13438
13439 match value {
13440 ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT => Self::BelowText,
13441 ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT => Self::AboveText,
13442 value => Self::__Unknown(value),
13443 }
13444 }
13445}
13446
13447impl StaticType for TextViewLayer {
13448 #[inline]
13449 #[doc(alias = "gtk_text_view_layer_get_type")]
13450 fn static_type() -> glib::Type {
13451 unsafe { from_glib(ffi::gtk_text_view_layer_get_type()) }
13452 }
13453}
13454
13455impl glib::HasParamSpec for TextViewLayer {
13456 type ParamSpec = glib::ParamSpecEnum;
13457 type SetValue = Self;
13458 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13459
13460 fn param_spec_builder() -> Self::BuilderFn {
13461 Self::ParamSpec::builder_with_default
13462 }
13463}
13464
13465impl glib::value::ValueType for TextViewLayer {
13466 type Type = Self;
13467}
13468
13469unsafe impl<'a> glib::value::FromValue<'a> for TextViewLayer {
13470 type Checker = glib::value::GenericValueTypeChecker<Self>;
13471
13472 #[inline]
13473 unsafe fn from_value(value: &'a glib::Value) -> Self {
13474 skip_assert_initialized!();
13475 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13476 }
13477}
13478
13479impl ToValue for TextViewLayer {
13480 #[inline]
13481 fn to_value(&self) -> glib::Value {
13482 let mut value = glib::Value::for_value_type::<Self>();
13483 unsafe {
13484 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13485 }
13486 value
13487 }
13488
13489 #[inline]
13490 fn value_type(&self) -> glib::Type {
13491 Self::static_type()
13492 }
13493}
13494
13495impl From<TextViewLayer> for glib::Value {
13496 #[inline]
13497 fn from(v: TextViewLayer) -> Self {
13498 skip_assert_initialized!();
13499 ToValue::to_value(&v)
13500 }
13501}
13502
13503#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13505#[non_exhaustive]
13506#[doc(alias = "GtkTextWindowType")]
13507pub enum TextWindowType {
13508 #[doc(alias = "GTK_TEXT_WINDOW_WIDGET")]
13510 Widget,
13511 #[doc(alias = "GTK_TEXT_WINDOW_TEXT")]
13513 Text,
13514 #[doc(alias = "GTK_TEXT_WINDOW_LEFT")]
13516 Left,
13517 #[doc(alias = "GTK_TEXT_WINDOW_RIGHT")]
13519 Right,
13520 #[doc(alias = "GTK_TEXT_WINDOW_TOP")]
13522 Top,
13523 #[doc(alias = "GTK_TEXT_WINDOW_BOTTOM")]
13525 Bottom,
13526 #[doc(hidden)]
13527 __Unknown(i32),
13528}
13529
13530#[doc(hidden)]
13531impl IntoGlib for TextWindowType {
13532 type GlibType = ffi::GtkTextWindowType;
13533
13534 #[inline]
13535 fn into_glib(self) -> ffi::GtkTextWindowType {
13536 match self {
13537 Self::Widget => ffi::GTK_TEXT_WINDOW_WIDGET,
13538 Self::Text => ffi::GTK_TEXT_WINDOW_TEXT,
13539 Self::Left => ffi::GTK_TEXT_WINDOW_LEFT,
13540 Self::Right => ffi::GTK_TEXT_WINDOW_RIGHT,
13541 Self::Top => ffi::GTK_TEXT_WINDOW_TOP,
13542 Self::Bottom => ffi::GTK_TEXT_WINDOW_BOTTOM,
13543 Self::__Unknown(value) => value,
13544 }
13545 }
13546}
13547
13548#[doc(hidden)]
13549impl FromGlib<ffi::GtkTextWindowType> for TextWindowType {
13550 #[inline]
13551 unsafe fn from_glib(value: ffi::GtkTextWindowType) -> Self {
13552 skip_assert_initialized!();
13553
13554 match value {
13555 ffi::GTK_TEXT_WINDOW_WIDGET => Self::Widget,
13556 ffi::GTK_TEXT_WINDOW_TEXT => Self::Text,
13557 ffi::GTK_TEXT_WINDOW_LEFT => Self::Left,
13558 ffi::GTK_TEXT_WINDOW_RIGHT => Self::Right,
13559 ffi::GTK_TEXT_WINDOW_TOP => Self::Top,
13560 ffi::GTK_TEXT_WINDOW_BOTTOM => Self::Bottom,
13561 value => Self::__Unknown(value),
13562 }
13563 }
13564}
13565
13566impl StaticType for TextWindowType {
13567 #[inline]
13568 #[doc(alias = "gtk_text_window_type_get_type")]
13569 fn static_type() -> glib::Type {
13570 unsafe { from_glib(ffi::gtk_text_window_type_get_type()) }
13571 }
13572}
13573
13574impl glib::HasParamSpec for TextWindowType {
13575 type ParamSpec = glib::ParamSpecEnum;
13576 type SetValue = Self;
13577 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13578
13579 fn param_spec_builder() -> Self::BuilderFn {
13580 Self::ParamSpec::builder_with_default
13581 }
13582}
13583
13584impl glib::value::ValueType for TextWindowType {
13585 type Type = Self;
13586}
13587
13588unsafe impl<'a> glib::value::FromValue<'a> for TextWindowType {
13589 type Checker = glib::value::GenericValueTypeChecker<Self>;
13590
13591 #[inline]
13592 unsafe fn from_value(value: &'a glib::Value) -> Self {
13593 skip_assert_initialized!();
13594 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13595 }
13596}
13597
13598impl ToValue for TextWindowType {
13599 #[inline]
13600 fn to_value(&self) -> glib::Value {
13601 let mut value = glib::Value::for_value_type::<Self>();
13602 unsafe {
13603 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13604 }
13605 value
13606 }
13607
13608 #[inline]
13609 fn value_type(&self) -> glib::Type {
13610 Self::static_type()
13611 }
13612}
13613
13614impl From<TextWindowType> for glib::Value {
13615 #[inline]
13616 fn from(v: TextWindowType) -> Self {
13617 skip_assert_initialized!();
13618 ToValue::to_value(&v)
13619 }
13620}
13621
13622#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13630#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13631#[non_exhaustive]
13632#[doc(alias = "GtkTreeViewColumnSizing")]
13633pub enum TreeViewColumnSizing {
13634 #[doc(alias = "GTK_TREE_VIEW_COLUMN_GROW_ONLY")]
13636 GrowOnly,
13637 #[doc(alias = "GTK_TREE_VIEW_COLUMN_AUTOSIZE")]
13639 Autosize,
13640 #[doc(alias = "GTK_TREE_VIEW_COLUMN_FIXED")]
13642 Fixed,
13643 #[doc(hidden)]
13644 __Unknown(i32),
13645}
13646
13647#[allow(deprecated)]
13648#[doc(hidden)]
13649impl IntoGlib for TreeViewColumnSizing {
13650 type GlibType = ffi::GtkTreeViewColumnSizing;
13651
13652 #[inline]
13653 fn into_glib(self) -> ffi::GtkTreeViewColumnSizing {
13654 match self {
13655 Self::GrowOnly => ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY,
13656 Self::Autosize => ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE,
13657 Self::Fixed => ffi::GTK_TREE_VIEW_COLUMN_FIXED,
13658 Self::__Unknown(value) => value,
13659 }
13660 }
13661}
13662
13663#[allow(deprecated)]
13664#[doc(hidden)]
13665impl FromGlib<ffi::GtkTreeViewColumnSizing> for TreeViewColumnSizing {
13666 #[inline]
13667 unsafe fn from_glib(value: ffi::GtkTreeViewColumnSizing) -> Self {
13668 skip_assert_initialized!();
13669
13670 match value {
13671 ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY => Self::GrowOnly,
13672 ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE => Self::Autosize,
13673 ffi::GTK_TREE_VIEW_COLUMN_FIXED => Self::Fixed,
13674 value => Self::__Unknown(value),
13675 }
13676 }
13677}
13678
13679#[allow(deprecated)]
13680impl StaticType for TreeViewColumnSizing {
13681 #[inline]
13682 #[doc(alias = "gtk_tree_view_column_sizing_get_type")]
13683 fn static_type() -> glib::Type {
13684 unsafe { from_glib(ffi::gtk_tree_view_column_sizing_get_type()) }
13685 }
13686}
13687
13688#[allow(deprecated)]
13689impl glib::HasParamSpec for TreeViewColumnSizing {
13690 type ParamSpec = glib::ParamSpecEnum;
13691 type SetValue = Self;
13692 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13693
13694 fn param_spec_builder() -> Self::BuilderFn {
13695 Self::ParamSpec::builder_with_default
13696 }
13697}
13698
13699#[allow(deprecated)]
13700impl glib::value::ValueType for TreeViewColumnSizing {
13701 type Type = Self;
13702}
13703
13704#[allow(deprecated)]
13705unsafe impl<'a> glib::value::FromValue<'a> for TreeViewColumnSizing {
13706 type Checker = glib::value::GenericValueTypeChecker<Self>;
13707
13708 #[inline]
13709 unsafe fn from_value(value: &'a glib::Value) -> Self {
13710 skip_assert_initialized!();
13711 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13712 }
13713}
13714
13715#[allow(deprecated)]
13716impl ToValue for TreeViewColumnSizing {
13717 #[inline]
13718 fn to_value(&self) -> glib::Value {
13719 let mut value = glib::Value::for_value_type::<Self>();
13720 unsafe {
13721 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13722 }
13723 value
13724 }
13725
13726 #[inline]
13727 fn value_type(&self) -> glib::Type {
13728 Self::static_type()
13729 }
13730}
13731
13732#[allow(deprecated)]
13733impl From<TreeViewColumnSizing> for glib::Value {
13734 #[inline]
13735 fn from(v: TreeViewColumnSizing) -> Self {
13736 skip_assert_initialized!();
13737 ToValue::to_value(&v)
13738 }
13739}
13740
13741#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13747#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13748#[non_exhaustive]
13749#[doc(alias = "GtkTreeViewDropPosition")]
13750pub enum TreeViewDropPosition {
13751 #[doc(alias = "GTK_TREE_VIEW_DROP_BEFORE")]
13753 Before,
13754 #[doc(alias = "GTK_TREE_VIEW_DROP_AFTER")]
13756 After,
13757 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_BEFORE")]
13759 IntoOrBefore,
13760 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_AFTER")]
13762 IntoOrAfter,
13763 #[doc(hidden)]
13764 __Unknown(i32),
13765}
13766
13767#[allow(deprecated)]
13768#[doc(hidden)]
13769impl IntoGlib for TreeViewDropPosition {
13770 type GlibType = ffi::GtkTreeViewDropPosition;
13771
13772 #[inline]
13773 fn into_glib(self) -> ffi::GtkTreeViewDropPosition {
13774 match self {
13775 Self::Before => ffi::GTK_TREE_VIEW_DROP_BEFORE,
13776 Self::After => ffi::GTK_TREE_VIEW_DROP_AFTER,
13777 Self::IntoOrBefore => ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE,
13778 Self::IntoOrAfter => ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER,
13779 Self::__Unknown(value) => value,
13780 }
13781 }
13782}
13783
13784#[allow(deprecated)]
13785#[doc(hidden)]
13786impl FromGlib<ffi::GtkTreeViewDropPosition> for TreeViewDropPosition {
13787 #[inline]
13788 unsafe fn from_glib(value: ffi::GtkTreeViewDropPosition) -> Self {
13789 skip_assert_initialized!();
13790
13791 match value {
13792 ffi::GTK_TREE_VIEW_DROP_BEFORE => Self::Before,
13793 ffi::GTK_TREE_VIEW_DROP_AFTER => Self::After,
13794 ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE => Self::IntoOrBefore,
13795 ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER => Self::IntoOrAfter,
13796 value => Self::__Unknown(value),
13797 }
13798 }
13799}
13800
13801#[allow(deprecated)]
13802impl StaticType for TreeViewDropPosition {
13803 #[inline]
13804 #[doc(alias = "gtk_tree_view_drop_position_get_type")]
13805 fn static_type() -> glib::Type {
13806 unsafe { from_glib(ffi::gtk_tree_view_drop_position_get_type()) }
13807 }
13808}
13809
13810#[allow(deprecated)]
13811impl glib::HasParamSpec for TreeViewDropPosition {
13812 type ParamSpec = glib::ParamSpecEnum;
13813 type SetValue = Self;
13814 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13815
13816 fn param_spec_builder() -> Self::BuilderFn {
13817 Self::ParamSpec::builder_with_default
13818 }
13819}
13820
13821#[allow(deprecated)]
13822impl glib::value::ValueType for TreeViewDropPosition {
13823 type Type = Self;
13824}
13825
13826#[allow(deprecated)]
13827unsafe impl<'a> glib::value::FromValue<'a> for TreeViewDropPosition {
13828 type Checker = glib::value::GenericValueTypeChecker<Self>;
13829
13830 #[inline]
13831 unsafe fn from_value(value: &'a glib::Value) -> Self {
13832 skip_assert_initialized!();
13833 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13834 }
13835}
13836
13837#[allow(deprecated)]
13838impl ToValue for TreeViewDropPosition {
13839 #[inline]
13840 fn to_value(&self) -> glib::Value {
13841 let mut value = glib::Value::for_value_type::<Self>();
13842 unsafe {
13843 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13844 }
13845 value
13846 }
13847
13848 #[inline]
13849 fn value_type(&self) -> glib::Type {
13850 Self::static_type()
13851 }
13852}
13853
13854#[allow(deprecated)]
13855impl From<TreeViewDropPosition> for glib::Value {
13856 #[inline]
13857 fn from(v: TreeViewDropPosition) -> Self {
13858 skip_assert_initialized!();
13859 ToValue::to_value(&v)
13860 }
13861}
13862
13863#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13869#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13870#[non_exhaustive]
13871#[doc(alias = "GtkTreeViewGridLines")]
13872pub enum TreeViewGridLines {
13873 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_NONE")]
13875 None,
13876 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_HORIZONTAL")]
13878 Horizontal,
13879 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_VERTICAL")]
13881 Vertical,
13882 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_BOTH")]
13884 Both,
13885 #[doc(hidden)]
13886 __Unknown(i32),
13887}
13888
13889#[allow(deprecated)]
13890#[doc(hidden)]
13891impl IntoGlib for TreeViewGridLines {
13892 type GlibType = ffi::GtkTreeViewGridLines;
13893
13894 #[inline]
13895 fn into_glib(self) -> ffi::GtkTreeViewGridLines {
13896 match self {
13897 Self::None => ffi::GTK_TREE_VIEW_GRID_LINES_NONE,
13898 Self::Horizontal => ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL,
13899 Self::Vertical => ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL,
13900 Self::Both => ffi::GTK_TREE_VIEW_GRID_LINES_BOTH,
13901 Self::__Unknown(value) => value,
13902 }
13903 }
13904}
13905
13906#[allow(deprecated)]
13907#[doc(hidden)]
13908impl FromGlib<ffi::GtkTreeViewGridLines> for TreeViewGridLines {
13909 #[inline]
13910 unsafe fn from_glib(value: ffi::GtkTreeViewGridLines) -> Self {
13911 skip_assert_initialized!();
13912
13913 match value {
13914 ffi::GTK_TREE_VIEW_GRID_LINES_NONE => Self::None,
13915 ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL => Self::Horizontal,
13916 ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL => Self::Vertical,
13917 ffi::GTK_TREE_VIEW_GRID_LINES_BOTH => Self::Both,
13918 value => Self::__Unknown(value),
13919 }
13920 }
13921}
13922
13923#[allow(deprecated)]
13924impl StaticType for TreeViewGridLines {
13925 #[inline]
13926 #[doc(alias = "gtk_tree_view_grid_lines_get_type")]
13927 fn static_type() -> glib::Type {
13928 unsafe { from_glib(ffi::gtk_tree_view_grid_lines_get_type()) }
13929 }
13930}
13931
13932#[allow(deprecated)]
13933impl glib::HasParamSpec for TreeViewGridLines {
13934 type ParamSpec = glib::ParamSpecEnum;
13935 type SetValue = Self;
13936 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13937
13938 fn param_spec_builder() -> Self::BuilderFn {
13939 Self::ParamSpec::builder_with_default
13940 }
13941}
13942
13943#[allow(deprecated)]
13944impl glib::value::ValueType for TreeViewGridLines {
13945 type Type = Self;
13946}
13947
13948#[allow(deprecated)]
13949unsafe impl<'a> glib::value::FromValue<'a> for TreeViewGridLines {
13950 type Checker = glib::value::GenericValueTypeChecker<Self>;
13951
13952 #[inline]
13953 unsafe fn from_value(value: &'a glib::Value) -> Self {
13954 skip_assert_initialized!();
13955 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13956 }
13957}
13958
13959#[allow(deprecated)]
13960impl ToValue for TreeViewGridLines {
13961 #[inline]
13962 fn to_value(&self) -> glib::Value {
13963 let mut value = glib::Value::for_value_type::<Self>();
13964 unsafe {
13965 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13966 }
13967 value
13968 }
13969
13970 #[inline]
13971 fn value_type(&self) -> glib::Type {
13972 Self::static_type()
13973 }
13974}
13975
13976#[allow(deprecated)]
13977impl From<TreeViewGridLines> for glib::Value {
13978 #[inline]
13979 fn from(v: TreeViewGridLines) -> Self {
13980 skip_assert_initialized!();
13981 ToValue::to_value(&v)
13982 }
13983}
13984
13985#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13987#[non_exhaustive]
13988#[doc(alias = "GtkUnit")]
13989pub enum Unit {
13990 #[doc(alias = "GTK_UNIT_NONE")]
13992 None,
13993 #[doc(alias = "GTK_UNIT_POINTS")]
13995 Points,
13996 #[doc(alias = "GTK_UNIT_INCH")]
13998 Inch,
13999 #[doc(alias = "GTK_UNIT_MM")]
14001 Mm,
14002 #[doc(hidden)]
14003 __Unknown(i32),
14004}
14005
14006#[doc(hidden)]
14007impl IntoGlib for Unit {
14008 type GlibType = ffi::GtkUnit;
14009
14010 #[inline]
14011 fn into_glib(self) -> ffi::GtkUnit {
14012 match self {
14013 Self::None => ffi::GTK_UNIT_NONE,
14014 Self::Points => ffi::GTK_UNIT_POINTS,
14015 Self::Inch => ffi::GTK_UNIT_INCH,
14016 Self::Mm => ffi::GTK_UNIT_MM,
14017 Self::__Unknown(value) => value,
14018 }
14019 }
14020}
14021
14022#[doc(hidden)]
14023impl FromGlib<ffi::GtkUnit> for Unit {
14024 #[inline]
14025 unsafe fn from_glib(value: ffi::GtkUnit) -> Self {
14026 skip_assert_initialized!();
14027
14028 match value {
14029 ffi::GTK_UNIT_NONE => Self::None,
14030 ffi::GTK_UNIT_POINTS => Self::Points,
14031 ffi::GTK_UNIT_INCH => Self::Inch,
14032 ffi::GTK_UNIT_MM => Self::Mm,
14033 value => Self::__Unknown(value),
14034 }
14035 }
14036}
14037
14038impl StaticType for Unit {
14039 #[inline]
14040 #[doc(alias = "gtk_unit_get_type")]
14041 fn static_type() -> glib::Type {
14042 unsafe { from_glib(ffi::gtk_unit_get_type()) }
14043 }
14044}
14045
14046impl glib::HasParamSpec for Unit {
14047 type ParamSpec = glib::ParamSpecEnum;
14048 type SetValue = Self;
14049 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14050
14051 fn param_spec_builder() -> Self::BuilderFn {
14052 Self::ParamSpec::builder_with_default
14053 }
14054}
14055
14056impl glib::value::ValueType for Unit {
14057 type Type = Self;
14058}
14059
14060unsafe impl<'a> glib::value::FromValue<'a> for Unit {
14061 type Checker = glib::value::GenericValueTypeChecker<Self>;
14062
14063 #[inline]
14064 unsafe fn from_value(value: &'a glib::Value) -> Self {
14065 skip_assert_initialized!();
14066 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14067 }
14068}
14069
14070impl ToValue for Unit {
14071 #[inline]
14072 fn to_value(&self) -> glib::Value {
14073 let mut value = glib::Value::for_value_type::<Self>();
14074 unsafe {
14075 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14076 }
14077 value
14078 }
14079
14080 #[inline]
14081 fn value_type(&self) -> glib::Type {
14082 Self::static_type()
14083 }
14084}
14085
14086impl From<Unit> for glib::Value {
14087 #[inline]
14088 fn from(v: Unit) -> Self {
14089 skip_assert_initialized!();
14090 ToValue::to_value(&v)
14091 }
14092}
14093
14094#[cfg(feature = "v4_20")]
14097#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14098#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14099#[non_exhaustive]
14100#[doc(alias = "GtkWindowGravity")]
14101pub enum WindowGravity {
14102 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_LEFT")]
14104 TopLeft,
14105 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP")]
14107 Top,
14108 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_RIGHT")]
14110 TopRight,
14111 #[doc(alias = "GTK_WINDOW_GRAVITY_LEFT")]
14113 Left,
14114 #[doc(alias = "GTK_WINDOW_GRAVITY_CENTER")]
14116 Center,
14117 #[doc(alias = "GTK_WINDOW_GRAVITY_RIGHT")]
14119 Right,
14120 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_LEFT")]
14122 BottomLeft,
14123 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM")]
14125 Bottom,
14126 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_RIGHT")]
14128 BottomRight,
14129 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_START")]
14132 TopStart,
14133 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_END")]
14136 TopEnd,
14137 #[doc(alias = "GTK_WINDOW_GRAVITY_START")]
14140 Start,
14141 #[doc(alias = "GTK_WINDOW_GRAVITY_END")]
14144 End,
14145 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_START")]
14148 BottomStart,
14149 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_END")]
14152 BottomEnd,
14153 #[doc(hidden)]
14154 __Unknown(i32),
14155}
14156
14157#[cfg(feature = "v4_20")]
14158#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14159#[doc(hidden)]
14160impl IntoGlib for WindowGravity {
14161 type GlibType = ffi::GtkWindowGravity;
14162
14163 fn into_glib(self) -> ffi::GtkWindowGravity {
14164 match self {
14165 Self::TopLeft => ffi::GTK_WINDOW_GRAVITY_TOP_LEFT,
14166 Self::Top => ffi::GTK_WINDOW_GRAVITY_TOP,
14167 Self::TopRight => ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT,
14168 Self::Left => ffi::GTK_WINDOW_GRAVITY_LEFT,
14169 Self::Center => ffi::GTK_WINDOW_GRAVITY_CENTER,
14170 Self::Right => ffi::GTK_WINDOW_GRAVITY_RIGHT,
14171 Self::BottomLeft => ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT,
14172 Self::Bottom => ffi::GTK_WINDOW_GRAVITY_BOTTOM,
14173 Self::BottomRight => ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT,
14174 Self::TopStart => ffi::GTK_WINDOW_GRAVITY_TOP_START,
14175 Self::TopEnd => ffi::GTK_WINDOW_GRAVITY_TOP_END,
14176 Self::Start => ffi::GTK_WINDOW_GRAVITY_START,
14177 Self::End => ffi::GTK_WINDOW_GRAVITY_END,
14178 Self::BottomStart => ffi::GTK_WINDOW_GRAVITY_BOTTOM_START,
14179 Self::BottomEnd => ffi::GTK_WINDOW_GRAVITY_BOTTOM_END,
14180 Self::__Unknown(value) => value,
14181 }
14182 }
14183}
14184
14185#[cfg(feature = "v4_20")]
14186#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14187#[doc(hidden)]
14188impl FromGlib<ffi::GtkWindowGravity> for WindowGravity {
14189 unsafe fn from_glib(value: ffi::GtkWindowGravity) -> Self {
14190 skip_assert_initialized!();
14191
14192 match value {
14193 ffi::GTK_WINDOW_GRAVITY_TOP_LEFT => Self::TopLeft,
14194 ffi::GTK_WINDOW_GRAVITY_TOP => Self::Top,
14195 ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT => Self::TopRight,
14196 ffi::GTK_WINDOW_GRAVITY_LEFT => Self::Left,
14197 ffi::GTK_WINDOW_GRAVITY_CENTER => Self::Center,
14198 ffi::GTK_WINDOW_GRAVITY_RIGHT => Self::Right,
14199 ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT => Self::BottomLeft,
14200 ffi::GTK_WINDOW_GRAVITY_BOTTOM => Self::Bottom,
14201 ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT => Self::BottomRight,
14202 ffi::GTK_WINDOW_GRAVITY_TOP_START => Self::TopStart,
14203 ffi::GTK_WINDOW_GRAVITY_TOP_END => Self::TopEnd,
14204 ffi::GTK_WINDOW_GRAVITY_START => Self::Start,
14205 ffi::GTK_WINDOW_GRAVITY_END => Self::End,
14206 ffi::GTK_WINDOW_GRAVITY_BOTTOM_START => Self::BottomStart,
14207 ffi::GTK_WINDOW_GRAVITY_BOTTOM_END => Self::BottomEnd,
14208 value => Self::__Unknown(value),
14209 }
14210 }
14211}
14212
14213#[cfg(feature = "v4_20")]
14214#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14215impl StaticType for WindowGravity {
14216 #[inline]
14217 #[doc(alias = "gtk_window_gravity_get_type")]
14218 fn static_type() -> glib::Type {
14219 unsafe { from_glib(ffi::gtk_window_gravity_get_type()) }
14220 }
14221}
14222
14223#[cfg(feature = "v4_20")]
14224#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14225impl glib::HasParamSpec for WindowGravity {
14226 type ParamSpec = glib::ParamSpecEnum;
14227 type SetValue = Self;
14228 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14229
14230 fn param_spec_builder() -> Self::BuilderFn {
14231 Self::ParamSpec::builder_with_default
14232 }
14233}
14234
14235#[cfg(feature = "v4_20")]
14236#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14237impl glib::value::ValueType for WindowGravity {
14238 type Type = Self;
14239}
14240
14241#[cfg(feature = "v4_20")]
14242#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14243unsafe impl<'a> glib::value::FromValue<'a> for WindowGravity {
14244 type Checker = glib::value::GenericValueTypeChecker<Self>;
14245
14246 #[inline]
14247 unsafe fn from_value(value: &'a glib::Value) -> Self {
14248 skip_assert_initialized!();
14249 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14250 }
14251}
14252
14253#[cfg(feature = "v4_20")]
14254#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14255impl ToValue for WindowGravity {
14256 #[inline]
14257 fn to_value(&self) -> glib::Value {
14258 let mut value = glib::Value::for_value_type::<Self>();
14259 unsafe {
14260 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14261 }
14262 value
14263 }
14264
14265 #[inline]
14266 fn value_type(&self) -> glib::Type {
14267 Self::static_type()
14268 }
14269}
14270
14271#[cfg(feature = "v4_20")]
14272#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14273impl From<WindowGravity> for glib::Value {
14274 #[inline]
14275 fn from(v: WindowGravity) -> Self {
14276 skip_assert_initialized!();
14277 ToValue::to_value(&v)
14278 }
14279}
14280
14281#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14283#[non_exhaustive]
14284#[doc(alias = "GtkWrapMode")]
14285pub enum WrapMode {
14286 #[doc(alias = "GTK_WRAP_NONE")]
14288 None,
14289 #[doc(alias = "GTK_WRAP_CHAR")]
14293 Char,
14294 #[doc(alias = "GTK_WRAP_WORD")]
14296 Word,
14297 #[doc(alias = "GTK_WRAP_WORD_CHAR")]
14300 WordChar,
14301 #[doc(hidden)]
14302 __Unknown(i32),
14303}
14304
14305#[doc(hidden)]
14306impl IntoGlib for WrapMode {
14307 type GlibType = ffi::GtkWrapMode;
14308
14309 #[inline]
14310 fn into_glib(self) -> ffi::GtkWrapMode {
14311 match self {
14312 Self::None => ffi::GTK_WRAP_NONE,
14313 Self::Char => ffi::GTK_WRAP_CHAR,
14314 Self::Word => ffi::GTK_WRAP_WORD,
14315 Self::WordChar => ffi::GTK_WRAP_WORD_CHAR,
14316 Self::__Unknown(value) => value,
14317 }
14318 }
14319}
14320
14321#[doc(hidden)]
14322impl FromGlib<ffi::GtkWrapMode> for WrapMode {
14323 #[inline]
14324 unsafe fn from_glib(value: ffi::GtkWrapMode) -> Self {
14325 skip_assert_initialized!();
14326
14327 match value {
14328 ffi::GTK_WRAP_NONE => Self::None,
14329 ffi::GTK_WRAP_CHAR => Self::Char,
14330 ffi::GTK_WRAP_WORD => Self::Word,
14331 ffi::GTK_WRAP_WORD_CHAR => Self::WordChar,
14332 value => Self::__Unknown(value),
14333 }
14334 }
14335}
14336
14337impl StaticType for WrapMode {
14338 #[inline]
14339 #[doc(alias = "gtk_wrap_mode_get_type")]
14340 fn static_type() -> glib::Type {
14341 unsafe { from_glib(ffi::gtk_wrap_mode_get_type()) }
14342 }
14343}
14344
14345impl glib::HasParamSpec for WrapMode {
14346 type ParamSpec = glib::ParamSpecEnum;
14347 type SetValue = Self;
14348 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14349
14350 fn param_spec_builder() -> Self::BuilderFn {
14351 Self::ParamSpec::builder_with_default
14352 }
14353}
14354
14355impl glib::value::ValueType for WrapMode {
14356 type Type = Self;
14357}
14358
14359unsafe impl<'a> glib::value::FromValue<'a> for WrapMode {
14360 type Checker = glib::value::GenericValueTypeChecker<Self>;
14361
14362 #[inline]
14363 unsafe fn from_value(value: &'a glib::Value) -> Self {
14364 skip_assert_initialized!();
14365 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14366 }
14367}
14368
14369impl ToValue for WrapMode {
14370 #[inline]
14371 fn to_value(&self) -> glib::Value {
14372 let mut value = glib::Value::for_value_type::<Self>();
14373 unsafe {
14374 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14375 }
14376 value
14377 }
14378
14379 #[inline]
14380 fn value_type(&self) -> glib::Type {
14381 Self::static_type()
14382 }
14383}
14384
14385impl From<WrapMode> for glib::Value {
14386 #[inline]
14387 fn from(v: WrapMode) -> Self {
14388 skip_assert_initialized!();
14389 ToValue::to_value(&v)
14390 }
14391}