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_NUM_PROPERTIES")]
4778 NumProperties,
4779 #[doc(hidden)]
4780 __Unknown(i32),
4781}
4782
4783#[doc(hidden)]
4784impl IntoGlib for EditableProperties {
4785 type GlibType = ffi::GtkEditableProperties;
4786
4787 #[inline]
4788 fn into_glib(self) -> ffi::GtkEditableProperties {
4789 match self {
4790 Self::PropText => ffi::GTK_EDITABLE_PROP_TEXT,
4791 Self::PropCursorPosition => ffi::GTK_EDITABLE_PROP_CURSOR_POSITION,
4792 Self::PropSelectionBound => ffi::GTK_EDITABLE_PROP_SELECTION_BOUND,
4793 Self::PropEditable => ffi::GTK_EDITABLE_PROP_EDITABLE,
4794 Self::PropWidthChars => ffi::GTK_EDITABLE_PROP_WIDTH_CHARS,
4795 Self::PropMaxWidthChars => ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS,
4796 Self::PropXalign => ffi::GTK_EDITABLE_PROP_XALIGN,
4797 Self::PropEnableUndo => ffi::GTK_EDITABLE_PROP_ENABLE_UNDO,
4798 Self::NumProperties => ffi::GTK_EDITABLE_NUM_PROPERTIES,
4799 Self::__Unknown(value) => value,
4800 }
4801 }
4802}
4803
4804#[doc(hidden)]
4805impl FromGlib<ffi::GtkEditableProperties> for EditableProperties {
4806 #[inline]
4807 unsafe fn from_glib(value: ffi::GtkEditableProperties) -> Self {
4808 skip_assert_initialized!();
4809
4810 match value {
4811 ffi::GTK_EDITABLE_PROP_TEXT => Self::PropText,
4812 ffi::GTK_EDITABLE_PROP_CURSOR_POSITION => Self::PropCursorPosition,
4813 ffi::GTK_EDITABLE_PROP_SELECTION_BOUND => Self::PropSelectionBound,
4814 ffi::GTK_EDITABLE_PROP_EDITABLE => Self::PropEditable,
4815 ffi::GTK_EDITABLE_PROP_WIDTH_CHARS => Self::PropWidthChars,
4816 ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS => Self::PropMaxWidthChars,
4817 ffi::GTK_EDITABLE_PROP_XALIGN => Self::PropXalign,
4818 ffi::GTK_EDITABLE_PROP_ENABLE_UNDO => Self::PropEnableUndo,
4819 ffi::GTK_EDITABLE_NUM_PROPERTIES => Self::NumProperties,
4820 value => Self::__Unknown(value),
4821 }
4822 }
4823}
4824
4825impl StaticType for EditableProperties {
4826 #[inline]
4827 #[doc(alias = "gtk_editable_properties_get_type")]
4828 fn static_type() -> glib::Type {
4829 unsafe { from_glib(ffi::gtk_editable_properties_get_type()) }
4830 }
4831}
4832
4833impl glib::HasParamSpec for EditableProperties {
4834 type ParamSpec = glib::ParamSpecEnum;
4835 type SetValue = Self;
4836 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4837
4838 fn param_spec_builder() -> Self::BuilderFn {
4839 Self::ParamSpec::builder_with_default
4840 }
4841}
4842
4843impl glib::value::ValueType for EditableProperties {
4844 type Type = Self;
4845}
4846
4847unsafe impl<'a> glib::value::FromValue<'a> for EditableProperties {
4848 type Checker = glib::value::GenericValueTypeChecker<Self>;
4849
4850 #[inline]
4851 unsafe fn from_value(value: &'a glib::Value) -> Self {
4852 skip_assert_initialized!();
4853 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4854 }
4855}
4856
4857impl ToValue for EditableProperties {
4858 #[inline]
4859 fn to_value(&self) -> glib::Value {
4860 let mut value = glib::Value::for_value_type::<Self>();
4861 unsafe {
4862 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4863 }
4864 value
4865 }
4866
4867 #[inline]
4868 fn value_type(&self) -> glib::Type {
4869 Self::static_type()
4870 }
4871}
4872
4873impl From<EditableProperties> for glib::Value {
4874 #[inline]
4875 fn from(v: EditableProperties) -> Self {
4876 skip_assert_initialized!();
4877 ToValue::to_value(&v)
4878 }
4879}
4880
4881#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4883#[non_exhaustive]
4884#[doc(alias = "GtkEntryIconPosition")]
4885pub enum EntryIconPosition {
4886 #[doc(alias = "GTK_ENTRY_ICON_PRIMARY")]
4888 Primary,
4889 #[doc(alias = "GTK_ENTRY_ICON_SECONDARY")]
4891 Secondary,
4892 #[doc(hidden)]
4893 __Unknown(i32),
4894}
4895
4896#[doc(hidden)]
4897impl IntoGlib for EntryIconPosition {
4898 type GlibType = ffi::GtkEntryIconPosition;
4899
4900 #[inline]
4901 fn into_glib(self) -> ffi::GtkEntryIconPosition {
4902 match self {
4903 Self::Primary => ffi::GTK_ENTRY_ICON_PRIMARY,
4904 Self::Secondary => ffi::GTK_ENTRY_ICON_SECONDARY,
4905 Self::__Unknown(value) => value,
4906 }
4907 }
4908}
4909
4910#[doc(hidden)]
4911impl FromGlib<ffi::GtkEntryIconPosition> for EntryIconPosition {
4912 #[inline]
4913 unsafe fn from_glib(value: ffi::GtkEntryIconPosition) -> Self {
4914 skip_assert_initialized!();
4915
4916 match value {
4917 ffi::GTK_ENTRY_ICON_PRIMARY => Self::Primary,
4918 ffi::GTK_ENTRY_ICON_SECONDARY => Self::Secondary,
4919 value => Self::__Unknown(value),
4920 }
4921 }
4922}
4923
4924impl StaticType for EntryIconPosition {
4925 #[inline]
4926 #[doc(alias = "gtk_entry_icon_position_get_type")]
4927 fn static_type() -> glib::Type {
4928 unsafe { from_glib(ffi::gtk_entry_icon_position_get_type()) }
4929 }
4930}
4931
4932impl glib::HasParamSpec for EntryIconPosition {
4933 type ParamSpec = glib::ParamSpecEnum;
4934 type SetValue = Self;
4935 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4936
4937 fn param_spec_builder() -> Self::BuilderFn {
4938 Self::ParamSpec::builder_with_default
4939 }
4940}
4941
4942impl glib::value::ValueType for EntryIconPosition {
4943 type Type = Self;
4944}
4945
4946unsafe impl<'a> glib::value::FromValue<'a> for EntryIconPosition {
4947 type Checker = glib::value::GenericValueTypeChecker<Self>;
4948
4949 #[inline]
4950 unsafe fn from_value(value: &'a glib::Value) -> Self {
4951 skip_assert_initialized!();
4952 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4953 }
4954}
4955
4956impl ToValue for EntryIconPosition {
4957 #[inline]
4958 fn to_value(&self) -> glib::Value {
4959 let mut value = glib::Value::for_value_type::<Self>();
4960 unsafe {
4961 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4962 }
4963 value
4964 }
4965
4966 #[inline]
4967 fn value_type(&self) -> glib::Type {
4968 Self::static_type()
4969 }
4970}
4971
4972impl From<EntryIconPosition> for glib::Value {
4973 #[inline]
4974 fn from(v: EntryIconPosition) -> Self {
4975 skip_assert_initialized!();
4976 ToValue::to_value(&v)
4977 }
4978}
4979
4980#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4982#[non_exhaustive]
4983#[doc(alias = "GtkEventSequenceState")]
4984pub enum EventSequenceState {
4985 #[doc(alias = "GTK_EVENT_SEQUENCE_NONE")]
4987 None,
4988 #[doc(alias = "GTK_EVENT_SEQUENCE_CLAIMED")]
4990 Claimed,
4991 #[doc(alias = "GTK_EVENT_SEQUENCE_DENIED")]
4993 Denied,
4994 #[doc(hidden)]
4995 __Unknown(i32),
4996}
4997
4998#[doc(hidden)]
4999impl IntoGlib for EventSequenceState {
5000 type GlibType = ffi::GtkEventSequenceState;
5001
5002 #[inline]
5003 fn into_glib(self) -> ffi::GtkEventSequenceState {
5004 match self {
5005 Self::None => ffi::GTK_EVENT_SEQUENCE_NONE,
5006 Self::Claimed => ffi::GTK_EVENT_SEQUENCE_CLAIMED,
5007 Self::Denied => ffi::GTK_EVENT_SEQUENCE_DENIED,
5008 Self::__Unknown(value) => value,
5009 }
5010 }
5011}
5012
5013#[doc(hidden)]
5014impl FromGlib<ffi::GtkEventSequenceState> for EventSequenceState {
5015 #[inline]
5016 unsafe fn from_glib(value: ffi::GtkEventSequenceState) -> Self {
5017 skip_assert_initialized!();
5018
5019 match value {
5020 ffi::GTK_EVENT_SEQUENCE_NONE => Self::None,
5021 ffi::GTK_EVENT_SEQUENCE_CLAIMED => Self::Claimed,
5022 ffi::GTK_EVENT_SEQUENCE_DENIED => Self::Denied,
5023 value => Self::__Unknown(value),
5024 }
5025 }
5026}
5027
5028impl StaticType for EventSequenceState {
5029 #[inline]
5030 #[doc(alias = "gtk_event_sequence_state_get_type")]
5031 fn static_type() -> glib::Type {
5032 unsafe { from_glib(ffi::gtk_event_sequence_state_get_type()) }
5033 }
5034}
5035
5036impl glib::HasParamSpec for EventSequenceState {
5037 type ParamSpec = glib::ParamSpecEnum;
5038 type SetValue = Self;
5039 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5040
5041 fn param_spec_builder() -> Self::BuilderFn {
5042 Self::ParamSpec::builder_with_default
5043 }
5044}
5045
5046impl glib::value::ValueType for EventSequenceState {
5047 type Type = Self;
5048}
5049
5050unsafe impl<'a> glib::value::FromValue<'a> for EventSequenceState {
5051 type Checker = glib::value::GenericValueTypeChecker<Self>;
5052
5053 #[inline]
5054 unsafe fn from_value(value: &'a glib::Value) -> Self {
5055 skip_assert_initialized!();
5056 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5057 }
5058}
5059
5060impl ToValue for EventSequenceState {
5061 #[inline]
5062 fn to_value(&self) -> glib::Value {
5063 let mut value = glib::Value::for_value_type::<Self>();
5064 unsafe {
5065 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5066 }
5067 value
5068 }
5069
5070 #[inline]
5071 fn value_type(&self) -> glib::Type {
5072 Self::static_type()
5073 }
5074}
5075
5076impl From<EventSequenceState> for glib::Value {
5077 #[inline]
5078 fn from(v: EventSequenceState) -> Self {
5079 skip_assert_initialized!();
5080 ToValue::to_value(&v)
5081 }
5082}
5083
5084#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5087#[non_exhaustive]
5088#[doc(alias = "GtkFileChooserAction")]
5089pub enum FileChooserAction {
5090 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_OPEN")]
5093 Open,
5094 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SAVE")]
5098 Save,
5099 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER")]
5103 SelectFolder,
5104 #[doc(hidden)]
5105 __Unknown(i32),
5106}
5107
5108#[doc(hidden)]
5109impl IntoGlib for FileChooserAction {
5110 type GlibType = ffi::GtkFileChooserAction;
5111
5112 #[inline]
5113 fn into_glib(self) -> ffi::GtkFileChooserAction {
5114 match self {
5115 Self::Open => ffi::GTK_FILE_CHOOSER_ACTION_OPEN,
5116 Self::Save => ffi::GTK_FILE_CHOOSER_ACTION_SAVE,
5117 Self::SelectFolder => ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
5118 Self::__Unknown(value) => value,
5119 }
5120 }
5121}
5122
5123#[doc(hidden)]
5124impl FromGlib<ffi::GtkFileChooserAction> for FileChooserAction {
5125 #[inline]
5126 unsafe fn from_glib(value: ffi::GtkFileChooserAction) -> Self {
5127 skip_assert_initialized!();
5128
5129 match value {
5130 ffi::GTK_FILE_CHOOSER_ACTION_OPEN => Self::Open,
5131 ffi::GTK_FILE_CHOOSER_ACTION_SAVE => Self::Save,
5132 ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER => Self::SelectFolder,
5133 value => Self::__Unknown(value),
5134 }
5135 }
5136}
5137
5138impl StaticType for FileChooserAction {
5139 #[inline]
5140 #[doc(alias = "gtk_file_chooser_action_get_type")]
5141 fn static_type() -> glib::Type {
5142 unsafe { from_glib(ffi::gtk_file_chooser_action_get_type()) }
5143 }
5144}
5145
5146impl glib::HasParamSpec for FileChooserAction {
5147 type ParamSpec = glib::ParamSpecEnum;
5148 type SetValue = Self;
5149 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5150
5151 fn param_spec_builder() -> Self::BuilderFn {
5152 Self::ParamSpec::builder_with_default
5153 }
5154}
5155
5156impl glib::value::ValueType for FileChooserAction {
5157 type Type = Self;
5158}
5159
5160unsafe impl<'a> glib::value::FromValue<'a> for FileChooserAction {
5161 type Checker = glib::value::GenericValueTypeChecker<Self>;
5162
5163 #[inline]
5164 unsafe fn from_value(value: &'a glib::Value) -> Self {
5165 skip_assert_initialized!();
5166 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5167 }
5168}
5169
5170impl ToValue for FileChooserAction {
5171 #[inline]
5172 fn to_value(&self) -> glib::Value {
5173 let mut value = glib::Value::for_value_type::<Self>();
5174 unsafe {
5175 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5176 }
5177 value
5178 }
5179
5180 #[inline]
5181 fn value_type(&self) -> glib::Type {
5182 Self::static_type()
5183 }
5184}
5185
5186impl From<FileChooserAction> for glib::Value {
5187 #[inline]
5188 fn from(v: FileChooserAction) -> Self {
5189 skip_assert_initialized!();
5190 ToValue::to_value(&v)
5191 }
5192}
5193
5194#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
5201#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5202#[non_exhaustive]
5203#[doc(alias = "GtkFileChooserError")]
5204pub enum FileChooserError {
5205 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_NONEXISTENT")]
5207 Nonexistent,
5208 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_BAD_FILENAME")]
5210 BadFilename,
5211 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS")]
5214 AlreadyExists,
5215 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME")]
5218 IncompleteHostname,
5219 #[doc(hidden)]
5220 __Unknown(i32),
5221}
5222
5223#[allow(deprecated)]
5224#[doc(hidden)]
5225impl IntoGlib for FileChooserError {
5226 type GlibType = ffi::GtkFileChooserError;
5227
5228 #[inline]
5229 fn into_glib(self) -> ffi::GtkFileChooserError {
5230 match self {
5231 Self::Nonexistent => ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT,
5232 Self::BadFilename => ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME,
5233 Self::AlreadyExists => ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS,
5234 Self::IncompleteHostname => ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME,
5235 Self::__Unknown(value) => value,
5236 }
5237 }
5238}
5239
5240#[allow(deprecated)]
5241#[doc(hidden)]
5242impl FromGlib<ffi::GtkFileChooserError> for FileChooserError {
5243 #[inline]
5244 unsafe fn from_glib(value: ffi::GtkFileChooserError) -> Self {
5245 skip_assert_initialized!();
5246
5247 match value {
5248 ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT => Self::Nonexistent,
5249 ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME => Self::BadFilename,
5250 ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS => Self::AlreadyExists,
5251 ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME => Self::IncompleteHostname,
5252 value => Self::__Unknown(value),
5253 }
5254 }
5255}
5256
5257#[allow(deprecated)]
5258impl glib::error::ErrorDomain for FileChooserError {
5259 #[inline]
5260 fn domain() -> glib::Quark {
5261 skip_assert_initialized!();
5262
5263 unsafe { from_glib(ffi::gtk_file_chooser_error_quark()) }
5264 }
5265
5266 #[inline]
5267 fn code(self) -> i32 {
5268 self.into_glib()
5269 }
5270
5271 #[inline]
5272 #[allow(clippy::match_single_binding)]
5273 fn from(code: i32) -> Option<Self> {
5274 skip_assert_initialized!();
5275 match unsafe { from_glib(code) } {
5276 value => Some(value),
5277 }
5278 }
5279}
5280
5281#[allow(deprecated)]
5282impl StaticType for FileChooserError {
5283 #[inline]
5284 #[doc(alias = "gtk_file_chooser_error_get_type")]
5285 fn static_type() -> glib::Type {
5286 unsafe { from_glib(ffi::gtk_file_chooser_error_get_type()) }
5287 }
5288}
5289
5290#[allow(deprecated)]
5291impl glib::HasParamSpec for FileChooserError {
5292 type ParamSpec = glib::ParamSpecEnum;
5293 type SetValue = Self;
5294 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5295
5296 fn param_spec_builder() -> Self::BuilderFn {
5297 Self::ParamSpec::builder_with_default
5298 }
5299}
5300
5301#[allow(deprecated)]
5302impl glib::value::ValueType for FileChooserError {
5303 type Type = Self;
5304}
5305
5306#[allow(deprecated)]
5307unsafe impl<'a> glib::value::FromValue<'a> for FileChooserError {
5308 type Checker = glib::value::GenericValueTypeChecker<Self>;
5309
5310 #[inline]
5311 unsafe fn from_value(value: &'a glib::Value) -> Self {
5312 skip_assert_initialized!();
5313 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5314 }
5315}
5316
5317#[allow(deprecated)]
5318impl ToValue for FileChooserError {
5319 #[inline]
5320 fn to_value(&self) -> glib::Value {
5321 let mut value = glib::Value::for_value_type::<Self>();
5322 unsafe {
5323 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5324 }
5325 value
5326 }
5327
5328 #[inline]
5329 fn value_type(&self) -> glib::Type {
5330 Self::static_type()
5331 }
5332}
5333
5334#[allow(deprecated)]
5335impl From<FileChooserError> for glib::Value {
5336 #[inline]
5337 fn from(v: FileChooserError) -> Self {
5338 skip_assert_initialized!();
5339 ToValue::to_value(&v)
5340 }
5341}
5342
5343#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5352#[non_exhaustive]
5353#[doc(alias = "GtkFilterChange")]
5354pub enum FilterChange {
5355 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT")]
5358 Different,
5359 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT")]
5363 LessStrict,
5364 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT")]
5368 MoreStrict,
5369 #[cfg(feature = "v4_20")]
5374 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5375 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT_REWATCH")]
5376 DifferentRewatch,
5377 #[cfg(feature = "v4_20")]
5382 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5383 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT_REWATCH")]
5384 LessStrictRewatch,
5385 #[cfg(feature = "v4_20")]
5390 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5391 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT_REWATCH")]
5392 MoreStrictRewatch,
5393 #[doc(hidden)]
5394 __Unknown(i32),
5395}
5396
5397#[doc(hidden)]
5398impl IntoGlib for FilterChange {
5399 type GlibType = ffi::GtkFilterChange;
5400
5401 #[inline]
5402 fn into_glib(self) -> ffi::GtkFilterChange {
5403 match self {
5404 Self::Different => ffi::GTK_FILTER_CHANGE_DIFFERENT,
5405 Self::LessStrict => ffi::GTK_FILTER_CHANGE_LESS_STRICT,
5406 Self::MoreStrict => ffi::GTK_FILTER_CHANGE_MORE_STRICT,
5407 #[cfg(feature = "v4_20")]
5408 Self::DifferentRewatch => ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH,
5409 #[cfg(feature = "v4_20")]
5410 Self::LessStrictRewatch => ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH,
5411 #[cfg(feature = "v4_20")]
5412 Self::MoreStrictRewatch => ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH,
5413 Self::__Unknown(value) => value,
5414 }
5415 }
5416}
5417
5418#[doc(hidden)]
5419impl FromGlib<ffi::GtkFilterChange> for FilterChange {
5420 #[inline]
5421 unsafe fn from_glib(value: ffi::GtkFilterChange) -> Self {
5422 skip_assert_initialized!();
5423
5424 match value {
5425 ffi::GTK_FILTER_CHANGE_DIFFERENT => Self::Different,
5426 ffi::GTK_FILTER_CHANGE_LESS_STRICT => Self::LessStrict,
5427 ffi::GTK_FILTER_CHANGE_MORE_STRICT => Self::MoreStrict,
5428 #[cfg(feature = "v4_20")]
5429 ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH => Self::DifferentRewatch,
5430 #[cfg(feature = "v4_20")]
5431 ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH => Self::LessStrictRewatch,
5432 #[cfg(feature = "v4_20")]
5433 ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH => Self::MoreStrictRewatch,
5434 value => Self::__Unknown(value),
5435 }
5436 }
5437}
5438
5439impl StaticType for FilterChange {
5440 #[inline]
5441 #[doc(alias = "gtk_filter_change_get_type")]
5442 fn static_type() -> glib::Type {
5443 unsafe { from_glib(ffi::gtk_filter_change_get_type()) }
5444 }
5445}
5446
5447impl glib::HasParamSpec for FilterChange {
5448 type ParamSpec = glib::ParamSpecEnum;
5449 type SetValue = Self;
5450 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5451
5452 fn param_spec_builder() -> Self::BuilderFn {
5453 Self::ParamSpec::builder_with_default
5454 }
5455}
5456
5457impl glib::value::ValueType for FilterChange {
5458 type Type = Self;
5459}
5460
5461unsafe impl<'a> glib::value::FromValue<'a> for FilterChange {
5462 type Checker = glib::value::GenericValueTypeChecker<Self>;
5463
5464 #[inline]
5465 unsafe fn from_value(value: &'a glib::Value) -> Self {
5466 skip_assert_initialized!();
5467 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5468 }
5469}
5470
5471impl ToValue for FilterChange {
5472 #[inline]
5473 fn to_value(&self) -> glib::Value {
5474 let mut value = glib::Value::for_value_type::<Self>();
5475 unsafe {
5476 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5477 }
5478 value
5479 }
5480
5481 #[inline]
5482 fn value_type(&self) -> glib::Type {
5483 Self::static_type()
5484 }
5485}
5486
5487impl From<FilterChange> for glib::Value {
5488 #[inline]
5489 fn from(v: FilterChange) -> Self {
5490 skip_assert_initialized!();
5491 ToValue::to_value(&v)
5492 }
5493}
5494
5495#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5501#[non_exhaustive]
5502#[doc(alias = "GtkFilterMatch")]
5503pub enum FilterMatch {
5504 #[doc(alias = "GTK_FILTER_MATCH_SOME")]
5507 Some,
5508 #[doc(alias = "GTK_FILTER_MATCH_NONE")]
5511 None,
5512 #[doc(alias = "GTK_FILTER_MATCH_ALL")]
5515 All,
5516 #[doc(hidden)]
5517 __Unknown(i32),
5518}
5519
5520#[doc(hidden)]
5521impl IntoGlib for FilterMatch {
5522 type GlibType = ffi::GtkFilterMatch;
5523
5524 #[inline]
5525 fn into_glib(self) -> ffi::GtkFilterMatch {
5526 match self {
5527 Self::Some => ffi::GTK_FILTER_MATCH_SOME,
5528 Self::None => ffi::GTK_FILTER_MATCH_NONE,
5529 Self::All => ffi::GTK_FILTER_MATCH_ALL,
5530 Self::__Unknown(value) => value,
5531 }
5532 }
5533}
5534
5535#[doc(hidden)]
5536impl FromGlib<ffi::GtkFilterMatch> for FilterMatch {
5537 #[inline]
5538 unsafe fn from_glib(value: ffi::GtkFilterMatch) -> Self {
5539 skip_assert_initialized!();
5540
5541 match value {
5542 ffi::GTK_FILTER_MATCH_SOME => Self::Some,
5543 ffi::GTK_FILTER_MATCH_NONE => Self::None,
5544 ffi::GTK_FILTER_MATCH_ALL => Self::All,
5545 value => Self::__Unknown(value),
5546 }
5547 }
5548}
5549
5550impl StaticType for FilterMatch {
5551 #[inline]
5552 #[doc(alias = "gtk_filter_match_get_type")]
5553 fn static_type() -> glib::Type {
5554 unsafe { from_glib(ffi::gtk_filter_match_get_type()) }
5555 }
5556}
5557
5558impl glib::HasParamSpec for FilterMatch {
5559 type ParamSpec = glib::ParamSpecEnum;
5560 type SetValue = Self;
5561 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5562
5563 fn param_spec_builder() -> Self::BuilderFn {
5564 Self::ParamSpec::builder_with_default
5565 }
5566}
5567
5568impl glib::value::ValueType for FilterMatch {
5569 type Type = Self;
5570}
5571
5572unsafe impl<'a> glib::value::FromValue<'a> for FilterMatch {
5573 type Checker = glib::value::GenericValueTypeChecker<Self>;
5574
5575 #[inline]
5576 unsafe fn from_value(value: &'a glib::Value) -> Self {
5577 skip_assert_initialized!();
5578 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5579 }
5580}
5581
5582impl ToValue for FilterMatch {
5583 #[inline]
5584 fn to_value(&self) -> glib::Value {
5585 let mut value = glib::Value::for_value_type::<Self>();
5586 unsafe {
5587 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5588 }
5589 value
5590 }
5591
5592 #[inline]
5593 fn value_type(&self) -> glib::Type {
5594 Self::static_type()
5595 }
5596}
5597
5598impl From<FilterMatch> for glib::Value {
5599 #[inline]
5600 fn from(v: FilterMatch) -> Self {
5601 skip_assert_initialized!();
5602 ToValue::to_value(&v)
5603 }
5604}
5605
5606#[cfg(feature = "v4_10")]
5612#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5613#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5614#[non_exhaustive]
5615#[doc(alias = "GtkFontLevel")]
5616pub enum FontLevel {
5617 #[doc(alias = "GTK_FONT_LEVEL_FAMILY")]
5619 Family,
5620 #[doc(alias = "GTK_FONT_LEVEL_FACE")]
5622 Face,
5623 #[doc(alias = "GTK_FONT_LEVEL_FONT")]
5625 Font,
5626 #[doc(alias = "GTK_FONT_LEVEL_FEATURES")]
5628 Features,
5629 #[doc(hidden)]
5630 __Unknown(i32),
5631}
5632
5633#[cfg(feature = "v4_10")]
5634#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5635#[doc(hidden)]
5636impl IntoGlib for FontLevel {
5637 type GlibType = ffi::GtkFontLevel;
5638
5639 #[inline]
5640 fn into_glib(self) -> ffi::GtkFontLevel {
5641 match self {
5642 Self::Family => ffi::GTK_FONT_LEVEL_FAMILY,
5643 Self::Face => ffi::GTK_FONT_LEVEL_FACE,
5644 Self::Font => ffi::GTK_FONT_LEVEL_FONT,
5645 Self::Features => ffi::GTK_FONT_LEVEL_FEATURES,
5646 Self::__Unknown(value) => value,
5647 }
5648 }
5649}
5650
5651#[cfg(feature = "v4_10")]
5652#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5653#[doc(hidden)]
5654impl FromGlib<ffi::GtkFontLevel> for FontLevel {
5655 #[inline]
5656 unsafe fn from_glib(value: ffi::GtkFontLevel) -> Self {
5657 skip_assert_initialized!();
5658
5659 match value {
5660 ffi::GTK_FONT_LEVEL_FAMILY => Self::Family,
5661 ffi::GTK_FONT_LEVEL_FACE => Self::Face,
5662 ffi::GTK_FONT_LEVEL_FONT => Self::Font,
5663 ffi::GTK_FONT_LEVEL_FEATURES => Self::Features,
5664 value => Self::__Unknown(value),
5665 }
5666 }
5667}
5668
5669#[cfg(feature = "v4_10")]
5670#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5671impl StaticType for FontLevel {
5672 #[inline]
5673 #[doc(alias = "gtk_font_level_get_type")]
5674 fn static_type() -> glib::Type {
5675 unsafe { from_glib(ffi::gtk_font_level_get_type()) }
5676 }
5677}
5678
5679#[cfg(feature = "v4_10")]
5680#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5681impl glib::HasParamSpec for FontLevel {
5682 type ParamSpec = glib::ParamSpecEnum;
5683 type SetValue = Self;
5684 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5685
5686 fn param_spec_builder() -> Self::BuilderFn {
5687 Self::ParamSpec::builder_with_default
5688 }
5689}
5690
5691#[cfg(feature = "v4_10")]
5692#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5693impl glib::value::ValueType for FontLevel {
5694 type Type = Self;
5695}
5696
5697#[cfg(feature = "v4_10")]
5698#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5699unsafe impl<'a> glib::value::FromValue<'a> for FontLevel {
5700 type Checker = glib::value::GenericValueTypeChecker<Self>;
5701
5702 #[inline]
5703 unsafe fn from_value(value: &'a glib::Value) -> Self {
5704 skip_assert_initialized!();
5705 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5706 }
5707}
5708
5709#[cfg(feature = "v4_10")]
5710#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5711impl ToValue for FontLevel {
5712 #[inline]
5713 fn to_value(&self) -> glib::Value {
5714 let mut value = glib::Value::for_value_type::<Self>();
5715 unsafe {
5716 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5717 }
5718 value
5719 }
5720
5721 #[inline]
5722 fn value_type(&self) -> glib::Type {
5723 Self::static_type()
5724 }
5725}
5726
5727#[cfg(feature = "v4_10")]
5728#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5729impl From<FontLevel> for glib::Value {
5730 #[inline]
5731 fn from(v: FontLevel) -> Self {
5732 skip_assert_initialized!();
5733 ToValue::to_value(&v)
5734 }
5735}
5736
5737#[cfg(feature = "v4_16")]
5740#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5741#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5742#[non_exhaustive]
5743#[doc(alias = "GtkFontRendering")]
5744pub enum FontRendering {
5745 #[doc(alias = "GTK_FONT_RENDERING_AUTOMATIC")]
5748 Automatic,
5749 #[doc(alias = "GTK_FONT_RENDERING_MANUAL")]
5752 Manual,
5753 #[doc(hidden)]
5754 __Unknown(i32),
5755}
5756
5757#[cfg(feature = "v4_16")]
5758#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5759#[doc(hidden)]
5760impl IntoGlib for FontRendering {
5761 type GlibType = ffi::GtkFontRendering;
5762
5763 #[inline]
5764 fn into_glib(self) -> ffi::GtkFontRendering {
5765 match self {
5766 Self::Automatic => ffi::GTK_FONT_RENDERING_AUTOMATIC,
5767 Self::Manual => ffi::GTK_FONT_RENDERING_MANUAL,
5768 Self::__Unknown(value) => value,
5769 }
5770 }
5771}
5772
5773#[cfg(feature = "v4_16")]
5774#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5775#[doc(hidden)]
5776impl FromGlib<ffi::GtkFontRendering> for FontRendering {
5777 #[inline]
5778 unsafe fn from_glib(value: ffi::GtkFontRendering) -> Self {
5779 skip_assert_initialized!();
5780
5781 match value {
5782 ffi::GTK_FONT_RENDERING_AUTOMATIC => Self::Automatic,
5783 ffi::GTK_FONT_RENDERING_MANUAL => Self::Manual,
5784 value => Self::__Unknown(value),
5785 }
5786 }
5787}
5788
5789#[cfg(feature = "v4_16")]
5790#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5791impl StaticType for FontRendering {
5792 #[inline]
5793 #[doc(alias = "gtk_font_rendering_get_type")]
5794 fn static_type() -> glib::Type {
5795 unsafe { from_glib(ffi::gtk_font_rendering_get_type()) }
5796 }
5797}
5798
5799#[cfg(feature = "v4_16")]
5800#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5801impl glib::HasParamSpec for FontRendering {
5802 type ParamSpec = glib::ParamSpecEnum;
5803 type SetValue = Self;
5804 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5805
5806 fn param_spec_builder() -> Self::BuilderFn {
5807 Self::ParamSpec::builder_with_default
5808 }
5809}
5810
5811#[cfg(feature = "v4_16")]
5812#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5813impl glib::value::ValueType for FontRendering {
5814 type Type = Self;
5815}
5816
5817#[cfg(feature = "v4_16")]
5818#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5819unsafe impl<'a> glib::value::FromValue<'a> for FontRendering {
5820 type Checker = glib::value::GenericValueTypeChecker<Self>;
5821
5822 #[inline]
5823 unsafe fn from_value(value: &'a glib::Value) -> Self {
5824 skip_assert_initialized!();
5825 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5826 }
5827}
5828
5829#[cfg(feature = "v4_16")]
5830#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5831impl ToValue for FontRendering {
5832 #[inline]
5833 fn to_value(&self) -> glib::Value {
5834 let mut value = glib::Value::for_value_type::<Self>();
5835 unsafe {
5836 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5837 }
5838 value
5839 }
5840
5841 #[inline]
5842 fn value_type(&self) -> glib::Type {
5843 Self::static_type()
5844 }
5845}
5846
5847#[cfg(feature = "v4_16")]
5848#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5849impl From<FontRendering> for glib::Value {
5850 #[inline]
5851 fn from(v: FontRendering) -> Self {
5852 skip_assert_initialized!();
5853 ToValue::to_value(&v)
5854 }
5855}
5856
5857#[cfg(feature = "v4_14")]
5859#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5860#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5861#[non_exhaustive]
5862#[doc(alias = "GtkGraphicsOffloadEnabled")]
5863pub enum GraphicsOffloadEnabled {
5864 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_ENABLED")]
5866 Enabled,
5867 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_DISABLED")]
5869 Disabled,
5870 #[doc(hidden)]
5871 __Unknown(i32),
5872}
5873
5874#[cfg(feature = "v4_14")]
5875#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5876#[doc(hidden)]
5877impl IntoGlib for GraphicsOffloadEnabled {
5878 type GlibType = ffi::GtkGraphicsOffloadEnabled;
5879
5880 #[inline]
5881 fn into_glib(self) -> ffi::GtkGraphicsOffloadEnabled {
5882 match self {
5883 Self::Enabled => ffi::GTK_GRAPHICS_OFFLOAD_ENABLED,
5884 Self::Disabled => ffi::GTK_GRAPHICS_OFFLOAD_DISABLED,
5885 Self::__Unknown(value) => value,
5886 }
5887 }
5888}
5889
5890#[cfg(feature = "v4_14")]
5891#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5892#[doc(hidden)]
5893impl FromGlib<ffi::GtkGraphicsOffloadEnabled> for GraphicsOffloadEnabled {
5894 #[inline]
5895 unsafe fn from_glib(value: ffi::GtkGraphicsOffloadEnabled) -> Self {
5896 skip_assert_initialized!();
5897
5898 match value {
5899 ffi::GTK_GRAPHICS_OFFLOAD_ENABLED => Self::Enabled,
5900 ffi::GTK_GRAPHICS_OFFLOAD_DISABLED => Self::Disabled,
5901 value => Self::__Unknown(value),
5902 }
5903 }
5904}
5905
5906#[cfg(feature = "v4_14")]
5907#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5908impl StaticType for GraphicsOffloadEnabled {
5909 #[inline]
5910 #[doc(alias = "gtk_graphics_offload_enabled_get_type")]
5911 fn static_type() -> glib::Type {
5912 unsafe { from_glib(ffi::gtk_graphics_offload_enabled_get_type()) }
5913 }
5914}
5915
5916#[cfg(feature = "v4_14")]
5917#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5918impl glib::HasParamSpec for GraphicsOffloadEnabled {
5919 type ParamSpec = glib::ParamSpecEnum;
5920 type SetValue = Self;
5921 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5922
5923 fn param_spec_builder() -> Self::BuilderFn {
5924 Self::ParamSpec::builder_with_default
5925 }
5926}
5927
5928#[cfg(feature = "v4_14")]
5929#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5930impl glib::value::ValueType for GraphicsOffloadEnabled {
5931 type Type = Self;
5932}
5933
5934#[cfg(feature = "v4_14")]
5935#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5936unsafe impl<'a> glib::value::FromValue<'a> for GraphicsOffloadEnabled {
5937 type Checker = glib::value::GenericValueTypeChecker<Self>;
5938
5939 #[inline]
5940 unsafe fn from_value(value: &'a glib::Value) -> Self {
5941 skip_assert_initialized!();
5942 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5943 }
5944}
5945
5946#[cfg(feature = "v4_14")]
5947#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5948impl ToValue for GraphicsOffloadEnabled {
5949 #[inline]
5950 fn to_value(&self) -> glib::Value {
5951 let mut value = glib::Value::for_value_type::<Self>();
5952 unsafe {
5953 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5954 }
5955 value
5956 }
5957
5958 #[inline]
5959 fn value_type(&self) -> glib::Type {
5960 Self::static_type()
5961 }
5962}
5963
5964#[cfg(feature = "v4_14")]
5965#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5966impl From<GraphicsOffloadEnabled> for glib::Value {
5967 #[inline]
5968 fn from(v: GraphicsOffloadEnabled) -> Self {
5969 skip_assert_initialized!();
5970 ToValue::to_value(&v)
5971 }
5972}
5973
5974#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5984#[non_exhaustive]
5985#[doc(alias = "GtkIconSize")]
5986pub enum IconSize {
5987 #[doc(alias = "GTK_ICON_SIZE_INHERIT")]
5989 Inherit,
5990 #[doc(alias = "GTK_ICON_SIZE_NORMAL")]
5992 Normal,
5993 #[doc(alias = "GTK_ICON_SIZE_LARGE")]
5995 Large,
5996 #[doc(hidden)]
5997 __Unknown(i32),
5998}
5999
6000#[doc(hidden)]
6001impl IntoGlib for IconSize {
6002 type GlibType = ffi::GtkIconSize;
6003
6004 #[inline]
6005 fn into_glib(self) -> ffi::GtkIconSize {
6006 match self {
6007 Self::Inherit => ffi::GTK_ICON_SIZE_INHERIT,
6008 Self::Normal => ffi::GTK_ICON_SIZE_NORMAL,
6009 Self::Large => ffi::GTK_ICON_SIZE_LARGE,
6010 Self::__Unknown(value) => value,
6011 }
6012 }
6013}
6014
6015#[doc(hidden)]
6016impl FromGlib<ffi::GtkIconSize> for IconSize {
6017 #[inline]
6018 unsafe fn from_glib(value: ffi::GtkIconSize) -> Self {
6019 skip_assert_initialized!();
6020
6021 match value {
6022 ffi::GTK_ICON_SIZE_INHERIT => Self::Inherit,
6023 ffi::GTK_ICON_SIZE_NORMAL => Self::Normal,
6024 ffi::GTK_ICON_SIZE_LARGE => Self::Large,
6025 value => Self::__Unknown(value),
6026 }
6027 }
6028}
6029
6030impl StaticType for IconSize {
6031 #[inline]
6032 #[doc(alias = "gtk_icon_size_get_type")]
6033 fn static_type() -> glib::Type {
6034 unsafe { from_glib(ffi::gtk_icon_size_get_type()) }
6035 }
6036}
6037
6038impl glib::HasParamSpec for IconSize {
6039 type ParamSpec = glib::ParamSpecEnum;
6040 type SetValue = Self;
6041 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6042
6043 fn param_spec_builder() -> Self::BuilderFn {
6044 Self::ParamSpec::builder_with_default
6045 }
6046}
6047
6048impl glib::value::ValueType for IconSize {
6049 type Type = Self;
6050}
6051
6052unsafe impl<'a> glib::value::FromValue<'a> for IconSize {
6053 type Checker = glib::value::GenericValueTypeChecker<Self>;
6054
6055 #[inline]
6056 unsafe fn from_value(value: &'a glib::Value) -> Self {
6057 skip_assert_initialized!();
6058 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6059 }
6060}
6061
6062impl ToValue for IconSize {
6063 #[inline]
6064 fn to_value(&self) -> glib::Value {
6065 let mut value = glib::Value::for_value_type::<Self>();
6066 unsafe {
6067 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6068 }
6069 value
6070 }
6071
6072 #[inline]
6073 fn value_type(&self) -> glib::Type {
6074 Self::static_type()
6075 }
6076}
6077
6078impl From<IconSize> for glib::Value {
6079 #[inline]
6080 fn from(v: IconSize) -> Self {
6081 skip_assert_initialized!();
6082 ToValue::to_value(&v)
6083 }
6084}
6085
6086#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6088#[non_exhaustive]
6089#[doc(alias = "GtkIconThemeError")]
6090pub enum IconThemeError {
6091 #[doc(alias = "GTK_ICON_THEME_NOT_FOUND")]
6093 NotFound,
6094 #[doc(alias = "GTK_ICON_THEME_FAILED")]
6096 Failed,
6097 #[doc(hidden)]
6098 __Unknown(i32),
6099}
6100
6101#[doc(hidden)]
6102impl IntoGlib for IconThemeError {
6103 type GlibType = ffi::GtkIconThemeError;
6104
6105 #[inline]
6106 fn into_glib(self) -> ffi::GtkIconThemeError {
6107 match self {
6108 Self::NotFound => ffi::GTK_ICON_THEME_NOT_FOUND,
6109 Self::Failed => ffi::GTK_ICON_THEME_FAILED,
6110 Self::__Unknown(value) => value,
6111 }
6112 }
6113}
6114
6115#[doc(hidden)]
6116impl FromGlib<ffi::GtkIconThemeError> for IconThemeError {
6117 #[inline]
6118 unsafe fn from_glib(value: ffi::GtkIconThemeError) -> Self {
6119 skip_assert_initialized!();
6120
6121 match value {
6122 ffi::GTK_ICON_THEME_NOT_FOUND => Self::NotFound,
6123 ffi::GTK_ICON_THEME_FAILED => Self::Failed,
6124 value => Self::__Unknown(value),
6125 }
6126 }
6127}
6128
6129impl glib::error::ErrorDomain for IconThemeError {
6130 #[inline]
6131 fn domain() -> glib::Quark {
6132 skip_assert_initialized!();
6133
6134 unsafe { from_glib(ffi::gtk_icon_theme_error_quark()) }
6135 }
6136
6137 #[inline]
6138 fn code(self) -> i32 {
6139 self.into_glib()
6140 }
6141
6142 #[inline]
6143 #[allow(clippy::match_single_binding)]
6144 fn from(code: i32) -> Option<Self> {
6145 skip_assert_initialized!();
6146 match unsafe { from_glib(code) } {
6147 Self::__Unknown(_) => Some(Self::Failed),
6148 value => Some(value),
6149 }
6150 }
6151}
6152
6153impl StaticType for IconThemeError {
6154 #[inline]
6155 #[doc(alias = "gtk_icon_theme_error_get_type")]
6156 fn static_type() -> glib::Type {
6157 unsafe { from_glib(ffi::gtk_icon_theme_error_get_type()) }
6158 }
6159}
6160
6161impl glib::HasParamSpec for IconThemeError {
6162 type ParamSpec = glib::ParamSpecEnum;
6163 type SetValue = Self;
6164 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6165
6166 fn param_spec_builder() -> Self::BuilderFn {
6167 Self::ParamSpec::builder_with_default
6168 }
6169}
6170
6171impl glib::value::ValueType for IconThemeError {
6172 type Type = Self;
6173}
6174
6175unsafe impl<'a> glib::value::FromValue<'a> for IconThemeError {
6176 type Checker = glib::value::GenericValueTypeChecker<Self>;
6177
6178 #[inline]
6179 unsafe fn from_value(value: &'a glib::Value) -> Self {
6180 skip_assert_initialized!();
6181 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6182 }
6183}
6184
6185impl ToValue for IconThemeError {
6186 #[inline]
6187 fn to_value(&self) -> glib::Value {
6188 let mut value = glib::Value::for_value_type::<Self>();
6189 unsafe {
6190 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6191 }
6192 value
6193 }
6194
6195 #[inline]
6196 fn value_type(&self) -> glib::Type {
6197 Self::static_type()
6198 }
6199}
6200
6201impl From<IconThemeError> for glib::Value {
6202 #[inline]
6203 fn from(v: IconThemeError) -> Self {
6204 skip_assert_initialized!();
6205 ToValue::to_value(&v)
6206 }
6207}
6208
6209#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
6215#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6216#[non_exhaustive]
6217#[doc(alias = "GtkIconViewDropPosition")]
6218pub enum IconViewDropPosition {
6219 #[doc(alias = "GTK_ICON_VIEW_NO_DROP")]
6221 NoDrop,
6222 #[doc(alias = "GTK_ICON_VIEW_DROP_INTO")]
6224 DropInto,
6225 #[doc(alias = "GTK_ICON_VIEW_DROP_LEFT")]
6227 DropLeft,
6228 #[doc(alias = "GTK_ICON_VIEW_DROP_RIGHT")]
6230 DropRight,
6231 #[doc(alias = "GTK_ICON_VIEW_DROP_ABOVE")]
6233 DropAbove,
6234 #[doc(alias = "GTK_ICON_VIEW_DROP_BELOW")]
6236 DropBelow,
6237 #[doc(hidden)]
6238 __Unknown(i32),
6239}
6240
6241#[allow(deprecated)]
6242#[doc(hidden)]
6243impl IntoGlib for IconViewDropPosition {
6244 type GlibType = ffi::GtkIconViewDropPosition;
6245
6246 #[inline]
6247 fn into_glib(self) -> ffi::GtkIconViewDropPosition {
6248 match self {
6249 Self::NoDrop => ffi::GTK_ICON_VIEW_NO_DROP,
6250 Self::DropInto => ffi::GTK_ICON_VIEW_DROP_INTO,
6251 Self::DropLeft => ffi::GTK_ICON_VIEW_DROP_LEFT,
6252 Self::DropRight => ffi::GTK_ICON_VIEW_DROP_RIGHT,
6253 Self::DropAbove => ffi::GTK_ICON_VIEW_DROP_ABOVE,
6254 Self::DropBelow => ffi::GTK_ICON_VIEW_DROP_BELOW,
6255 Self::__Unknown(value) => value,
6256 }
6257 }
6258}
6259
6260#[allow(deprecated)]
6261#[doc(hidden)]
6262impl FromGlib<ffi::GtkIconViewDropPosition> for IconViewDropPosition {
6263 #[inline]
6264 unsafe fn from_glib(value: ffi::GtkIconViewDropPosition) -> Self {
6265 skip_assert_initialized!();
6266
6267 match value {
6268 ffi::GTK_ICON_VIEW_NO_DROP => Self::NoDrop,
6269 ffi::GTK_ICON_VIEW_DROP_INTO => Self::DropInto,
6270 ffi::GTK_ICON_VIEW_DROP_LEFT => Self::DropLeft,
6271 ffi::GTK_ICON_VIEW_DROP_RIGHT => Self::DropRight,
6272 ffi::GTK_ICON_VIEW_DROP_ABOVE => Self::DropAbove,
6273 ffi::GTK_ICON_VIEW_DROP_BELOW => Self::DropBelow,
6274 value => Self::__Unknown(value),
6275 }
6276 }
6277}
6278
6279#[allow(deprecated)]
6280impl StaticType for IconViewDropPosition {
6281 #[inline]
6282 #[doc(alias = "gtk_icon_view_drop_position_get_type")]
6283 fn static_type() -> glib::Type {
6284 unsafe { from_glib(ffi::gtk_icon_view_drop_position_get_type()) }
6285 }
6286}
6287
6288#[allow(deprecated)]
6289impl glib::HasParamSpec for IconViewDropPosition {
6290 type ParamSpec = glib::ParamSpecEnum;
6291 type SetValue = Self;
6292 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6293
6294 fn param_spec_builder() -> Self::BuilderFn {
6295 Self::ParamSpec::builder_with_default
6296 }
6297}
6298
6299#[allow(deprecated)]
6300impl glib::value::ValueType for IconViewDropPosition {
6301 type Type = Self;
6302}
6303
6304#[allow(deprecated)]
6305unsafe impl<'a> glib::value::FromValue<'a> for IconViewDropPosition {
6306 type Checker = glib::value::GenericValueTypeChecker<Self>;
6307
6308 #[inline]
6309 unsafe fn from_value(value: &'a glib::Value) -> Self {
6310 skip_assert_initialized!();
6311 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6312 }
6313}
6314
6315#[allow(deprecated)]
6316impl ToValue for IconViewDropPosition {
6317 #[inline]
6318 fn to_value(&self) -> glib::Value {
6319 let mut value = glib::Value::for_value_type::<Self>();
6320 unsafe {
6321 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6322 }
6323 value
6324 }
6325
6326 #[inline]
6327 fn value_type(&self) -> glib::Type {
6328 Self::static_type()
6329 }
6330}
6331
6332#[allow(deprecated)]
6333impl From<IconViewDropPosition> for glib::Value {
6334 #[inline]
6335 fn from(v: IconViewDropPosition) -> Self {
6336 skip_assert_initialized!();
6337 ToValue::to_value(&v)
6338 }
6339}
6340
6341#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6350#[non_exhaustive]
6351#[doc(alias = "GtkImageType")]
6352pub enum ImageType {
6353 #[doc(alias = "GTK_IMAGE_EMPTY")]
6355 Empty,
6356 #[doc(alias = "GTK_IMAGE_ICON_NAME")]
6358 IconName,
6359 #[doc(alias = "GTK_IMAGE_GICON")]
6361 Gicon,
6362 #[doc(alias = "GTK_IMAGE_PAINTABLE")]
6364 Paintable,
6365 #[doc(hidden)]
6366 __Unknown(i32),
6367}
6368
6369#[doc(hidden)]
6370impl IntoGlib for ImageType {
6371 type GlibType = ffi::GtkImageType;
6372
6373 #[inline]
6374 fn into_glib(self) -> ffi::GtkImageType {
6375 match self {
6376 Self::Empty => ffi::GTK_IMAGE_EMPTY,
6377 Self::IconName => ffi::GTK_IMAGE_ICON_NAME,
6378 Self::Gicon => ffi::GTK_IMAGE_GICON,
6379 Self::Paintable => ffi::GTK_IMAGE_PAINTABLE,
6380 Self::__Unknown(value) => value,
6381 }
6382 }
6383}
6384
6385#[doc(hidden)]
6386impl FromGlib<ffi::GtkImageType> for ImageType {
6387 #[inline]
6388 unsafe fn from_glib(value: ffi::GtkImageType) -> Self {
6389 skip_assert_initialized!();
6390
6391 match value {
6392 ffi::GTK_IMAGE_EMPTY => Self::Empty,
6393 ffi::GTK_IMAGE_ICON_NAME => Self::IconName,
6394 ffi::GTK_IMAGE_GICON => Self::Gicon,
6395 ffi::GTK_IMAGE_PAINTABLE => Self::Paintable,
6396 value => Self::__Unknown(value),
6397 }
6398 }
6399}
6400
6401impl StaticType for ImageType {
6402 #[inline]
6403 #[doc(alias = "gtk_image_type_get_type")]
6404 fn static_type() -> glib::Type {
6405 unsafe { from_glib(ffi::gtk_image_type_get_type()) }
6406 }
6407}
6408
6409impl glib::HasParamSpec for ImageType {
6410 type ParamSpec = glib::ParamSpecEnum;
6411 type SetValue = Self;
6412 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6413
6414 fn param_spec_builder() -> Self::BuilderFn {
6415 Self::ParamSpec::builder_with_default
6416 }
6417}
6418
6419impl glib::value::ValueType for ImageType {
6420 type Type = Self;
6421}
6422
6423unsafe impl<'a> glib::value::FromValue<'a> for ImageType {
6424 type Checker = glib::value::GenericValueTypeChecker<Self>;
6425
6426 #[inline]
6427 unsafe fn from_value(value: &'a glib::Value) -> Self {
6428 skip_assert_initialized!();
6429 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6430 }
6431}
6432
6433impl ToValue for ImageType {
6434 #[inline]
6435 fn to_value(&self) -> glib::Value {
6436 let mut value = glib::Value::for_value_type::<Self>();
6437 unsafe {
6438 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6439 }
6440 value
6441 }
6442
6443 #[inline]
6444 fn value_type(&self) -> glib::Type {
6445 Self::static_type()
6446 }
6447}
6448
6449impl From<ImageType> for glib::Value {
6450 #[inline]
6451 fn from(v: ImageType) -> Self {
6452 skip_assert_initialized!();
6453 ToValue::to_value(&v)
6454 }
6455}
6456
6457#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6477#[non_exhaustive]
6478#[doc(alias = "GtkInputPurpose")]
6479pub enum InputPurpose {
6480 #[doc(alias = "GTK_INPUT_PURPOSE_FREE_FORM")]
6482 FreeForm,
6483 #[doc(alias = "GTK_INPUT_PURPOSE_ALPHA")]
6485 Alpha,
6486 #[doc(alias = "GTK_INPUT_PURPOSE_DIGITS")]
6488 Digits,
6489 #[doc(alias = "GTK_INPUT_PURPOSE_NUMBER")]
6491 Number,
6492 #[doc(alias = "GTK_INPUT_PURPOSE_PHONE")]
6494 Phone,
6495 #[doc(alias = "GTK_INPUT_PURPOSE_URL")]
6497 Url,
6498 #[doc(alias = "GTK_INPUT_PURPOSE_EMAIL")]
6500 Email,
6501 #[doc(alias = "GTK_INPUT_PURPOSE_NAME")]
6503 Name,
6504 #[doc(alias = "GTK_INPUT_PURPOSE_PASSWORD")]
6506 Password,
6507 #[doc(alias = "GTK_INPUT_PURPOSE_PIN")]
6509 Pin,
6510 #[doc(alias = "GTK_INPUT_PURPOSE_TERMINAL")]
6512 Terminal,
6513 #[doc(hidden)]
6514 __Unknown(i32),
6515}
6516
6517#[doc(hidden)]
6518impl IntoGlib for InputPurpose {
6519 type GlibType = ffi::GtkInputPurpose;
6520
6521 #[inline]
6522 fn into_glib(self) -> ffi::GtkInputPurpose {
6523 match self {
6524 Self::FreeForm => ffi::GTK_INPUT_PURPOSE_FREE_FORM,
6525 Self::Alpha => ffi::GTK_INPUT_PURPOSE_ALPHA,
6526 Self::Digits => ffi::GTK_INPUT_PURPOSE_DIGITS,
6527 Self::Number => ffi::GTK_INPUT_PURPOSE_NUMBER,
6528 Self::Phone => ffi::GTK_INPUT_PURPOSE_PHONE,
6529 Self::Url => ffi::GTK_INPUT_PURPOSE_URL,
6530 Self::Email => ffi::GTK_INPUT_PURPOSE_EMAIL,
6531 Self::Name => ffi::GTK_INPUT_PURPOSE_NAME,
6532 Self::Password => ffi::GTK_INPUT_PURPOSE_PASSWORD,
6533 Self::Pin => ffi::GTK_INPUT_PURPOSE_PIN,
6534 Self::Terminal => ffi::GTK_INPUT_PURPOSE_TERMINAL,
6535 Self::__Unknown(value) => value,
6536 }
6537 }
6538}
6539
6540#[doc(hidden)]
6541impl FromGlib<ffi::GtkInputPurpose> for InputPurpose {
6542 #[inline]
6543 unsafe fn from_glib(value: ffi::GtkInputPurpose) -> Self {
6544 skip_assert_initialized!();
6545
6546 match value {
6547 ffi::GTK_INPUT_PURPOSE_FREE_FORM => Self::FreeForm,
6548 ffi::GTK_INPUT_PURPOSE_ALPHA => Self::Alpha,
6549 ffi::GTK_INPUT_PURPOSE_DIGITS => Self::Digits,
6550 ffi::GTK_INPUT_PURPOSE_NUMBER => Self::Number,
6551 ffi::GTK_INPUT_PURPOSE_PHONE => Self::Phone,
6552 ffi::GTK_INPUT_PURPOSE_URL => Self::Url,
6553 ffi::GTK_INPUT_PURPOSE_EMAIL => Self::Email,
6554 ffi::GTK_INPUT_PURPOSE_NAME => Self::Name,
6555 ffi::GTK_INPUT_PURPOSE_PASSWORD => Self::Password,
6556 ffi::GTK_INPUT_PURPOSE_PIN => Self::Pin,
6557 ffi::GTK_INPUT_PURPOSE_TERMINAL => Self::Terminal,
6558 value => Self::__Unknown(value),
6559 }
6560 }
6561}
6562
6563impl StaticType for InputPurpose {
6564 #[inline]
6565 #[doc(alias = "gtk_input_purpose_get_type")]
6566 fn static_type() -> glib::Type {
6567 unsafe { from_glib(ffi::gtk_input_purpose_get_type()) }
6568 }
6569}
6570
6571impl glib::HasParamSpec for InputPurpose {
6572 type ParamSpec = glib::ParamSpecEnum;
6573 type SetValue = Self;
6574 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6575
6576 fn param_spec_builder() -> Self::BuilderFn {
6577 Self::ParamSpec::builder_with_default
6578 }
6579}
6580
6581impl glib::value::ValueType for InputPurpose {
6582 type Type = Self;
6583}
6584
6585unsafe impl<'a> glib::value::FromValue<'a> for InputPurpose {
6586 type Checker = glib::value::GenericValueTypeChecker<Self>;
6587
6588 #[inline]
6589 unsafe fn from_value(value: &'a glib::Value) -> Self {
6590 skip_assert_initialized!();
6591 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6592 }
6593}
6594
6595impl ToValue for InputPurpose {
6596 #[inline]
6597 fn to_value(&self) -> glib::Value {
6598 let mut value = glib::Value::for_value_type::<Self>();
6599 unsafe {
6600 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6601 }
6602 value
6603 }
6604
6605 #[inline]
6606 fn value_type(&self) -> glib::Type {
6607 Self::static_type()
6608 }
6609}
6610
6611impl From<InputPurpose> for glib::Value {
6612 #[inline]
6613 fn from(v: InputPurpose) -> Self {
6614 skip_assert_initialized!();
6615 ToValue::to_value(&v)
6616 }
6617}
6618
6619#[cfg(feature = "v4_8")]
6622#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6623#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6624#[non_exhaustive]
6625#[doc(alias = "GtkInscriptionOverflow")]
6626pub enum InscriptionOverflow {
6627 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_CLIP")]
6629 Clip,
6630 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START")]
6632 EllipsizeStart,
6633 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE")]
6635 EllipsizeMiddle,
6636 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END")]
6638 EllipsizeEnd,
6639 #[doc(hidden)]
6640 __Unknown(i32),
6641}
6642
6643#[cfg(feature = "v4_8")]
6644#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6645#[doc(hidden)]
6646impl IntoGlib for InscriptionOverflow {
6647 type GlibType = ffi::GtkInscriptionOverflow;
6648
6649 #[inline]
6650 fn into_glib(self) -> ffi::GtkInscriptionOverflow {
6651 match self {
6652 Self::Clip => ffi::GTK_INSCRIPTION_OVERFLOW_CLIP,
6653 Self::EllipsizeStart => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START,
6654 Self::EllipsizeMiddle => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE,
6655 Self::EllipsizeEnd => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END,
6656 Self::__Unknown(value) => value,
6657 }
6658 }
6659}
6660
6661#[cfg(feature = "v4_8")]
6662#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6663#[doc(hidden)]
6664impl FromGlib<ffi::GtkInscriptionOverflow> for InscriptionOverflow {
6665 #[inline]
6666 unsafe fn from_glib(value: ffi::GtkInscriptionOverflow) -> Self {
6667 skip_assert_initialized!();
6668
6669 match value {
6670 ffi::GTK_INSCRIPTION_OVERFLOW_CLIP => Self::Clip,
6671 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START => Self::EllipsizeStart,
6672 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE => Self::EllipsizeMiddle,
6673 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END => Self::EllipsizeEnd,
6674 value => Self::__Unknown(value),
6675 }
6676 }
6677}
6678
6679#[cfg(feature = "v4_8")]
6680#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6681impl StaticType for InscriptionOverflow {
6682 #[inline]
6683 #[doc(alias = "gtk_inscription_overflow_get_type")]
6684 fn static_type() -> glib::Type {
6685 unsafe { from_glib(ffi::gtk_inscription_overflow_get_type()) }
6686 }
6687}
6688
6689#[cfg(feature = "v4_8")]
6690#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6691impl glib::HasParamSpec for InscriptionOverflow {
6692 type ParamSpec = glib::ParamSpecEnum;
6693 type SetValue = Self;
6694 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6695
6696 fn param_spec_builder() -> Self::BuilderFn {
6697 Self::ParamSpec::builder_with_default
6698 }
6699}
6700
6701#[cfg(feature = "v4_8")]
6702#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6703impl glib::value::ValueType for InscriptionOverflow {
6704 type Type = Self;
6705}
6706
6707#[cfg(feature = "v4_8")]
6708#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6709unsafe impl<'a> glib::value::FromValue<'a> for InscriptionOverflow {
6710 type Checker = glib::value::GenericValueTypeChecker<Self>;
6711
6712 #[inline]
6713 unsafe fn from_value(value: &'a glib::Value) -> Self {
6714 skip_assert_initialized!();
6715 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6716 }
6717}
6718
6719#[cfg(feature = "v4_8")]
6720#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6721impl ToValue for InscriptionOverflow {
6722 #[inline]
6723 fn to_value(&self) -> glib::Value {
6724 let mut value = glib::Value::for_value_type::<Self>();
6725 unsafe {
6726 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6727 }
6728 value
6729 }
6730
6731 #[inline]
6732 fn value_type(&self) -> glib::Type {
6733 Self::static_type()
6734 }
6735}
6736
6737#[cfg(feature = "v4_8")]
6738#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6739impl From<InscriptionOverflow> for glib::Value {
6740 #[inline]
6741 fn from(v: InscriptionOverflow) -> Self {
6742 skip_assert_initialized!();
6743 ToValue::to_value(&v)
6744 }
6745}
6746
6747#[cfg(feature = "v4_20")]
6756#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6757#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6758#[non_exhaustive]
6759#[doc(alias = "GtkInterfaceColorScheme")]
6760pub enum InterfaceColorScheme {
6761 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED")]
6763 Unsupported,
6764 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DEFAULT")]
6766 Default,
6767 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DARK")]
6769 Dark,
6770 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_LIGHT")]
6772 Light,
6773 #[doc(hidden)]
6774 __Unknown(i32),
6775}
6776
6777#[cfg(feature = "v4_20")]
6778#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6779#[doc(hidden)]
6780impl IntoGlib for InterfaceColorScheme {
6781 type GlibType = ffi::GtkInterfaceColorScheme;
6782
6783 #[inline]
6784 fn into_glib(self) -> ffi::GtkInterfaceColorScheme {
6785 match self {
6786 Self::Unsupported => ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED,
6787 Self::Default => ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT,
6788 Self::Dark => ffi::GTK_INTERFACE_COLOR_SCHEME_DARK,
6789 Self::Light => ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT,
6790 Self::__Unknown(value) => value,
6791 }
6792 }
6793}
6794
6795#[cfg(feature = "v4_20")]
6796#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6797#[doc(hidden)]
6798impl FromGlib<ffi::GtkInterfaceColorScheme> for InterfaceColorScheme {
6799 #[inline]
6800 unsafe fn from_glib(value: ffi::GtkInterfaceColorScheme) -> Self {
6801 skip_assert_initialized!();
6802
6803 match value {
6804 ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED => Self::Unsupported,
6805 ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT => Self::Default,
6806 ffi::GTK_INTERFACE_COLOR_SCHEME_DARK => Self::Dark,
6807 ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT => Self::Light,
6808 value => Self::__Unknown(value),
6809 }
6810 }
6811}
6812
6813#[cfg(feature = "v4_20")]
6814#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6815impl StaticType for InterfaceColorScheme {
6816 #[inline]
6817 #[doc(alias = "gtk_interface_color_scheme_get_type")]
6818 fn static_type() -> glib::Type {
6819 unsafe { from_glib(ffi::gtk_interface_color_scheme_get_type()) }
6820 }
6821}
6822
6823#[cfg(feature = "v4_20")]
6824#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6825impl glib::HasParamSpec for InterfaceColorScheme {
6826 type ParamSpec = glib::ParamSpecEnum;
6827 type SetValue = Self;
6828 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6829
6830 fn param_spec_builder() -> Self::BuilderFn {
6831 Self::ParamSpec::builder_with_default
6832 }
6833}
6834
6835#[cfg(feature = "v4_20")]
6836#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6837impl glib::value::ValueType for InterfaceColorScheme {
6838 type Type = Self;
6839}
6840
6841#[cfg(feature = "v4_20")]
6842#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6843unsafe impl<'a> glib::value::FromValue<'a> for InterfaceColorScheme {
6844 type Checker = glib::value::GenericValueTypeChecker<Self>;
6845
6846 #[inline]
6847 unsafe fn from_value(value: &'a glib::Value) -> Self {
6848 skip_assert_initialized!();
6849 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6850 }
6851}
6852
6853#[cfg(feature = "v4_20")]
6854#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6855impl ToValue for InterfaceColorScheme {
6856 #[inline]
6857 fn to_value(&self) -> glib::Value {
6858 let mut value = glib::Value::for_value_type::<Self>();
6859 unsafe {
6860 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6861 }
6862 value
6863 }
6864
6865 #[inline]
6866 fn value_type(&self) -> glib::Type {
6867 Self::static_type()
6868 }
6869}
6870
6871#[cfg(feature = "v4_20")]
6872#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6873impl From<InterfaceColorScheme> for glib::Value {
6874 #[inline]
6875 fn from(v: InterfaceColorScheme) -> Self {
6876 skip_assert_initialized!();
6877 ToValue::to_value(&v)
6878 }
6879}
6880
6881#[cfg(feature = "v4_20")]
6890#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6891#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6892#[non_exhaustive]
6893#[doc(alias = "GtkInterfaceContrast")]
6894pub enum InterfaceContrast {
6895 #[doc(alias = "GTK_INTERFACE_CONTRAST_UNSUPPORTED")]
6897 Unsupported,
6898 #[doc(alias = "GTK_INTERFACE_CONTRAST_NO_PREFERENCE")]
6900 NoPreference,
6901 #[doc(alias = "GTK_INTERFACE_CONTRAST_MORE")]
6903 More,
6904 #[doc(alias = "GTK_INTERFACE_CONTRAST_LESS")]
6906 Less,
6907 #[doc(hidden)]
6908 __Unknown(i32),
6909}
6910
6911#[cfg(feature = "v4_20")]
6912#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6913#[doc(hidden)]
6914impl IntoGlib for InterfaceContrast {
6915 type GlibType = ffi::GtkInterfaceContrast;
6916
6917 #[inline]
6918 fn into_glib(self) -> ffi::GtkInterfaceContrast {
6919 match self {
6920 Self::Unsupported => ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED,
6921 Self::NoPreference => ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE,
6922 Self::More => ffi::GTK_INTERFACE_CONTRAST_MORE,
6923 Self::Less => ffi::GTK_INTERFACE_CONTRAST_LESS,
6924 Self::__Unknown(value) => value,
6925 }
6926 }
6927}
6928
6929#[cfg(feature = "v4_20")]
6930#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6931#[doc(hidden)]
6932impl FromGlib<ffi::GtkInterfaceContrast> for InterfaceContrast {
6933 #[inline]
6934 unsafe fn from_glib(value: ffi::GtkInterfaceContrast) -> Self {
6935 skip_assert_initialized!();
6936
6937 match value {
6938 ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED => Self::Unsupported,
6939 ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE => Self::NoPreference,
6940 ffi::GTK_INTERFACE_CONTRAST_MORE => Self::More,
6941 ffi::GTK_INTERFACE_CONTRAST_LESS => Self::Less,
6942 value => Self::__Unknown(value),
6943 }
6944 }
6945}
6946
6947#[cfg(feature = "v4_20")]
6948#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6949impl StaticType for InterfaceContrast {
6950 #[inline]
6951 #[doc(alias = "gtk_interface_contrast_get_type")]
6952 fn static_type() -> glib::Type {
6953 unsafe { from_glib(ffi::gtk_interface_contrast_get_type()) }
6954 }
6955}
6956
6957#[cfg(feature = "v4_20")]
6958#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6959impl glib::HasParamSpec for InterfaceContrast {
6960 type ParamSpec = glib::ParamSpecEnum;
6961 type SetValue = Self;
6962 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6963
6964 fn param_spec_builder() -> Self::BuilderFn {
6965 Self::ParamSpec::builder_with_default
6966 }
6967}
6968
6969#[cfg(feature = "v4_20")]
6970#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6971impl glib::value::ValueType for InterfaceContrast {
6972 type Type = Self;
6973}
6974
6975#[cfg(feature = "v4_20")]
6976#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6977unsafe impl<'a> glib::value::FromValue<'a> for InterfaceContrast {
6978 type Checker = glib::value::GenericValueTypeChecker<Self>;
6979
6980 #[inline]
6981 unsafe fn from_value(value: &'a glib::Value) -> Self {
6982 skip_assert_initialized!();
6983 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6984 }
6985}
6986
6987#[cfg(feature = "v4_20")]
6988#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6989impl ToValue for InterfaceContrast {
6990 #[inline]
6991 fn to_value(&self) -> glib::Value {
6992 let mut value = glib::Value::for_value_type::<Self>();
6993 unsafe {
6994 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6995 }
6996 value
6997 }
6998
6999 #[inline]
7000 fn value_type(&self) -> glib::Type {
7001 Self::static_type()
7002 }
7003}
7004
7005#[cfg(feature = "v4_20")]
7006#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
7007impl From<InterfaceContrast> for glib::Value {
7008 #[inline]
7009 fn from(v: InterfaceContrast) -> Self {
7010 skip_assert_initialized!();
7011 ToValue::to_value(&v)
7012 }
7013}
7014
7015#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7017#[non_exhaustive]
7018#[doc(alias = "GtkJustification")]
7019pub enum Justification {
7020 #[doc(alias = "GTK_JUSTIFY_LEFT")]
7022 Left,
7023 #[doc(alias = "GTK_JUSTIFY_RIGHT")]
7025 Right,
7026 #[doc(alias = "GTK_JUSTIFY_CENTER")]
7028 Center,
7029 #[doc(alias = "GTK_JUSTIFY_FILL")]
7031 Fill,
7032 #[doc(hidden)]
7033 __Unknown(i32),
7034}
7035
7036#[doc(hidden)]
7037impl IntoGlib for Justification {
7038 type GlibType = ffi::GtkJustification;
7039
7040 #[inline]
7041 fn into_glib(self) -> ffi::GtkJustification {
7042 match self {
7043 Self::Left => ffi::GTK_JUSTIFY_LEFT,
7044 Self::Right => ffi::GTK_JUSTIFY_RIGHT,
7045 Self::Center => ffi::GTK_JUSTIFY_CENTER,
7046 Self::Fill => ffi::GTK_JUSTIFY_FILL,
7047 Self::__Unknown(value) => value,
7048 }
7049 }
7050}
7051
7052#[doc(hidden)]
7053impl FromGlib<ffi::GtkJustification> for Justification {
7054 #[inline]
7055 unsafe fn from_glib(value: ffi::GtkJustification) -> Self {
7056 skip_assert_initialized!();
7057
7058 match value {
7059 ffi::GTK_JUSTIFY_LEFT => Self::Left,
7060 ffi::GTK_JUSTIFY_RIGHT => Self::Right,
7061 ffi::GTK_JUSTIFY_CENTER => Self::Center,
7062 ffi::GTK_JUSTIFY_FILL => Self::Fill,
7063 value => Self::__Unknown(value),
7064 }
7065 }
7066}
7067
7068impl StaticType for Justification {
7069 #[inline]
7070 #[doc(alias = "gtk_justification_get_type")]
7071 fn static_type() -> glib::Type {
7072 unsafe { from_glib(ffi::gtk_justification_get_type()) }
7073 }
7074}
7075
7076impl glib::HasParamSpec for Justification {
7077 type ParamSpec = glib::ParamSpecEnum;
7078 type SetValue = Self;
7079 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7080
7081 fn param_spec_builder() -> Self::BuilderFn {
7082 Self::ParamSpec::builder_with_default
7083 }
7084}
7085
7086impl glib::value::ValueType for Justification {
7087 type Type = Self;
7088}
7089
7090unsafe impl<'a> glib::value::FromValue<'a> for Justification {
7091 type Checker = glib::value::GenericValueTypeChecker<Self>;
7092
7093 #[inline]
7094 unsafe fn from_value(value: &'a glib::Value) -> Self {
7095 skip_assert_initialized!();
7096 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7097 }
7098}
7099
7100impl ToValue for Justification {
7101 #[inline]
7102 fn to_value(&self) -> glib::Value {
7103 let mut value = glib::Value::for_value_type::<Self>();
7104 unsafe {
7105 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7106 }
7107 value
7108 }
7109
7110 #[inline]
7111 fn value_type(&self) -> glib::Type {
7112 Self::static_type()
7113 }
7114}
7115
7116impl From<Justification> for glib::Value {
7117 #[inline]
7118 fn from(v: Justification) -> Self {
7119 skip_assert_initialized!();
7120 ToValue::to_value(&v)
7121 }
7122}
7123
7124#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7129#[non_exhaustive]
7130#[doc(alias = "GtkLevelBarMode")]
7131pub enum LevelBarMode {
7132 #[doc(alias = "GTK_LEVEL_BAR_MODE_CONTINUOUS")]
7134 Continuous,
7135 #[doc(alias = "GTK_LEVEL_BAR_MODE_DISCRETE")]
7137 Discrete,
7138 #[doc(hidden)]
7139 __Unknown(i32),
7140}
7141
7142#[doc(hidden)]
7143impl IntoGlib for LevelBarMode {
7144 type GlibType = ffi::GtkLevelBarMode;
7145
7146 #[inline]
7147 fn into_glib(self) -> ffi::GtkLevelBarMode {
7148 match self {
7149 Self::Continuous => ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS,
7150 Self::Discrete => ffi::GTK_LEVEL_BAR_MODE_DISCRETE,
7151 Self::__Unknown(value) => value,
7152 }
7153 }
7154}
7155
7156#[doc(hidden)]
7157impl FromGlib<ffi::GtkLevelBarMode> for LevelBarMode {
7158 #[inline]
7159 unsafe fn from_glib(value: ffi::GtkLevelBarMode) -> Self {
7160 skip_assert_initialized!();
7161
7162 match value {
7163 ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS => Self::Continuous,
7164 ffi::GTK_LEVEL_BAR_MODE_DISCRETE => Self::Discrete,
7165 value => Self::__Unknown(value),
7166 }
7167 }
7168}
7169
7170impl StaticType for LevelBarMode {
7171 #[inline]
7172 #[doc(alias = "gtk_level_bar_mode_get_type")]
7173 fn static_type() -> glib::Type {
7174 unsafe { from_glib(ffi::gtk_level_bar_mode_get_type()) }
7175 }
7176}
7177
7178impl glib::HasParamSpec for LevelBarMode {
7179 type ParamSpec = glib::ParamSpecEnum;
7180 type SetValue = Self;
7181 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7182
7183 fn param_spec_builder() -> Self::BuilderFn {
7184 Self::ParamSpec::builder_with_default
7185 }
7186}
7187
7188impl glib::value::ValueType for LevelBarMode {
7189 type Type = Self;
7190}
7191
7192unsafe impl<'a> glib::value::FromValue<'a> for LevelBarMode {
7193 type Checker = glib::value::GenericValueTypeChecker<Self>;
7194
7195 #[inline]
7196 unsafe fn from_value(value: &'a glib::Value) -> Self {
7197 skip_assert_initialized!();
7198 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7199 }
7200}
7201
7202impl ToValue for LevelBarMode {
7203 #[inline]
7204 fn to_value(&self) -> glib::Value {
7205 let mut value = glib::Value::for_value_type::<Self>();
7206 unsafe {
7207 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7208 }
7209 value
7210 }
7211
7212 #[inline]
7213 fn value_type(&self) -> glib::Type {
7214 Self::static_type()
7215 }
7216}
7217
7218impl From<LevelBarMode> for glib::Value {
7219 #[inline]
7220 fn from(v: LevelBarMode) -> Self {
7221 skip_assert_initialized!();
7222 ToValue::to_value(&v)
7223 }
7224}
7225
7226#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7230#[non_exhaustive]
7231#[doc(alias = "GtkLicense")]
7232pub enum License {
7233 #[doc(alias = "GTK_LICENSE_UNKNOWN")]
7235 Unknown,
7236 #[doc(alias = "GTK_LICENSE_CUSTOM")]
7239 Custom,
7240 #[doc(alias = "GTK_LICENSE_GPL_2_0")]
7242 Gpl20,
7243 #[doc(alias = "GTK_LICENSE_GPL_3_0")]
7245 Gpl30,
7246 #[doc(alias = "GTK_LICENSE_LGPL_2_1")]
7248 Lgpl21,
7249 #[doc(alias = "GTK_LICENSE_LGPL_3_0")]
7251 Lgpl30,
7252 #[doc(alias = "GTK_LICENSE_BSD")]
7254 Bsd,
7255 #[doc(alias = "GTK_LICENSE_MIT_X11")]
7257 MitX11,
7258 #[doc(alias = "GTK_LICENSE_ARTISTIC")]
7260 Artistic,
7261 #[doc(alias = "GTK_LICENSE_GPL_2_0_ONLY")]
7263 Gpl20Only,
7264 #[doc(alias = "GTK_LICENSE_GPL_3_0_ONLY")]
7266 Gpl30Only,
7267 #[doc(alias = "GTK_LICENSE_LGPL_2_1_ONLY")]
7269 Lgpl21Only,
7270 #[doc(alias = "GTK_LICENSE_LGPL_3_0_ONLY")]
7272 Lgpl30Only,
7273 #[doc(alias = "GTK_LICENSE_AGPL_3_0")]
7275 Agpl30,
7276 #[doc(alias = "GTK_LICENSE_AGPL_3_0_ONLY")]
7278 Agpl30Only,
7279 #[doc(alias = "GTK_LICENSE_BSD_3")]
7281 Bsd3,
7282 #[doc(alias = "GTK_LICENSE_APACHE_2_0")]
7284 Apache20,
7285 #[doc(alias = "GTK_LICENSE_MPL_2_0")]
7287 Mpl20,
7288 #[cfg(feature = "v4_14")]
7290 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
7291 #[doc(alias = "GTK_LICENSE_0BSD")]
7292 _0bsd,
7293 #[doc(hidden)]
7294 __Unknown(i32),
7295}
7296
7297#[doc(hidden)]
7298impl IntoGlib for License {
7299 type GlibType = ffi::GtkLicense;
7300
7301 fn into_glib(self) -> ffi::GtkLicense {
7302 match self {
7303 Self::Unknown => ffi::GTK_LICENSE_UNKNOWN,
7304 Self::Custom => ffi::GTK_LICENSE_CUSTOM,
7305 Self::Gpl20 => ffi::GTK_LICENSE_GPL_2_0,
7306 Self::Gpl30 => ffi::GTK_LICENSE_GPL_3_0,
7307 Self::Lgpl21 => ffi::GTK_LICENSE_LGPL_2_1,
7308 Self::Lgpl30 => ffi::GTK_LICENSE_LGPL_3_0,
7309 Self::Bsd => ffi::GTK_LICENSE_BSD,
7310 Self::MitX11 => ffi::GTK_LICENSE_MIT_X11,
7311 Self::Artistic => ffi::GTK_LICENSE_ARTISTIC,
7312 Self::Gpl20Only => ffi::GTK_LICENSE_GPL_2_0_ONLY,
7313 Self::Gpl30Only => ffi::GTK_LICENSE_GPL_3_0_ONLY,
7314 Self::Lgpl21Only => ffi::GTK_LICENSE_LGPL_2_1_ONLY,
7315 Self::Lgpl30Only => ffi::GTK_LICENSE_LGPL_3_0_ONLY,
7316 Self::Agpl30 => ffi::GTK_LICENSE_AGPL_3_0,
7317 Self::Agpl30Only => ffi::GTK_LICENSE_AGPL_3_0_ONLY,
7318 Self::Bsd3 => ffi::GTK_LICENSE_BSD_3,
7319 Self::Apache20 => ffi::GTK_LICENSE_APACHE_2_0,
7320 Self::Mpl20 => ffi::GTK_LICENSE_MPL_2_0,
7321 #[cfg(feature = "v4_14")]
7322 Self::_0bsd => ffi::GTK_LICENSE_0BSD,
7323 Self::__Unknown(value) => value,
7324 }
7325 }
7326}
7327
7328#[doc(hidden)]
7329impl FromGlib<ffi::GtkLicense> for License {
7330 unsafe fn from_glib(value: ffi::GtkLicense) -> Self {
7331 skip_assert_initialized!();
7332
7333 match value {
7334 ffi::GTK_LICENSE_UNKNOWN => Self::Unknown,
7335 ffi::GTK_LICENSE_CUSTOM => Self::Custom,
7336 ffi::GTK_LICENSE_GPL_2_0 => Self::Gpl20,
7337 ffi::GTK_LICENSE_GPL_3_0 => Self::Gpl30,
7338 ffi::GTK_LICENSE_LGPL_2_1 => Self::Lgpl21,
7339 ffi::GTK_LICENSE_LGPL_3_0 => Self::Lgpl30,
7340 ffi::GTK_LICENSE_BSD => Self::Bsd,
7341 ffi::GTK_LICENSE_MIT_X11 => Self::MitX11,
7342 ffi::GTK_LICENSE_ARTISTIC => Self::Artistic,
7343 ffi::GTK_LICENSE_GPL_2_0_ONLY => Self::Gpl20Only,
7344 ffi::GTK_LICENSE_GPL_3_0_ONLY => Self::Gpl30Only,
7345 ffi::GTK_LICENSE_LGPL_2_1_ONLY => Self::Lgpl21Only,
7346 ffi::GTK_LICENSE_LGPL_3_0_ONLY => Self::Lgpl30Only,
7347 ffi::GTK_LICENSE_AGPL_3_0 => Self::Agpl30,
7348 ffi::GTK_LICENSE_AGPL_3_0_ONLY => Self::Agpl30Only,
7349 ffi::GTK_LICENSE_BSD_3 => Self::Bsd3,
7350 ffi::GTK_LICENSE_APACHE_2_0 => Self::Apache20,
7351 ffi::GTK_LICENSE_MPL_2_0 => Self::Mpl20,
7352 #[cfg(feature = "v4_14")]
7353 ffi::GTK_LICENSE_0BSD => Self::_0bsd,
7354 value => Self::__Unknown(value),
7355 }
7356 }
7357}
7358
7359impl StaticType for License {
7360 #[inline]
7361 #[doc(alias = "gtk_license_get_type")]
7362 fn static_type() -> glib::Type {
7363 unsafe { from_glib(ffi::gtk_license_get_type()) }
7364 }
7365}
7366
7367impl glib::HasParamSpec for License {
7368 type ParamSpec = glib::ParamSpecEnum;
7369 type SetValue = Self;
7370 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7371
7372 fn param_spec_builder() -> Self::BuilderFn {
7373 Self::ParamSpec::builder_with_default
7374 }
7375}
7376
7377impl glib::value::ValueType for License {
7378 type Type = Self;
7379}
7380
7381unsafe impl<'a> glib::value::FromValue<'a> for License {
7382 type Checker = glib::value::GenericValueTypeChecker<Self>;
7383
7384 #[inline]
7385 unsafe fn from_value(value: &'a glib::Value) -> Self {
7386 skip_assert_initialized!();
7387 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7388 }
7389}
7390
7391impl ToValue for License {
7392 #[inline]
7393 fn to_value(&self) -> glib::Value {
7394 let mut value = glib::Value::for_value_type::<Self>();
7395 unsafe {
7396 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7397 }
7398 value
7399 }
7400
7401 #[inline]
7402 fn value_type(&self) -> glib::Type {
7403 Self::static_type()
7404 }
7405}
7406
7407impl From<License> for glib::Value {
7408 #[inline]
7409 fn from(v: License) -> Self {
7410 skip_assert_initialized!();
7411 ToValue::to_value(&v)
7412 }
7413}
7414
7415#[cfg(feature = "v4_12")]
7419#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7420#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7421#[non_exhaustive]
7422#[doc(alias = "GtkListTabBehavior")]
7423pub enum ListTabBehavior {
7424 #[doc(alias = "GTK_LIST_TAB_ALL")]
7426 All,
7427 #[doc(alias = "GTK_LIST_TAB_ITEM")]
7431 Item,
7432 #[doc(alias = "GTK_LIST_TAB_CELL")]
7438 Cell,
7439 #[doc(hidden)]
7440 __Unknown(i32),
7441}
7442
7443#[cfg(feature = "v4_12")]
7444#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7445#[doc(hidden)]
7446impl IntoGlib for ListTabBehavior {
7447 type GlibType = ffi::GtkListTabBehavior;
7448
7449 #[inline]
7450 fn into_glib(self) -> ffi::GtkListTabBehavior {
7451 match self {
7452 Self::All => ffi::GTK_LIST_TAB_ALL,
7453 Self::Item => ffi::GTK_LIST_TAB_ITEM,
7454 Self::Cell => ffi::GTK_LIST_TAB_CELL,
7455 Self::__Unknown(value) => value,
7456 }
7457 }
7458}
7459
7460#[cfg(feature = "v4_12")]
7461#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7462#[doc(hidden)]
7463impl FromGlib<ffi::GtkListTabBehavior> for ListTabBehavior {
7464 #[inline]
7465 unsafe fn from_glib(value: ffi::GtkListTabBehavior) -> Self {
7466 skip_assert_initialized!();
7467
7468 match value {
7469 ffi::GTK_LIST_TAB_ALL => Self::All,
7470 ffi::GTK_LIST_TAB_ITEM => Self::Item,
7471 ffi::GTK_LIST_TAB_CELL => Self::Cell,
7472 value => Self::__Unknown(value),
7473 }
7474 }
7475}
7476
7477#[cfg(feature = "v4_12")]
7478#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7479impl StaticType for ListTabBehavior {
7480 #[inline]
7481 #[doc(alias = "gtk_list_tab_behavior_get_type")]
7482 fn static_type() -> glib::Type {
7483 unsafe { from_glib(ffi::gtk_list_tab_behavior_get_type()) }
7484 }
7485}
7486
7487#[cfg(feature = "v4_12")]
7488#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7489impl glib::HasParamSpec for ListTabBehavior {
7490 type ParamSpec = glib::ParamSpecEnum;
7491 type SetValue = Self;
7492 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7493
7494 fn param_spec_builder() -> Self::BuilderFn {
7495 Self::ParamSpec::builder_with_default
7496 }
7497}
7498
7499#[cfg(feature = "v4_12")]
7500#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7501impl glib::value::ValueType for ListTabBehavior {
7502 type Type = Self;
7503}
7504
7505#[cfg(feature = "v4_12")]
7506#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7507unsafe impl<'a> glib::value::FromValue<'a> for ListTabBehavior {
7508 type Checker = glib::value::GenericValueTypeChecker<Self>;
7509
7510 #[inline]
7511 unsafe fn from_value(value: &'a glib::Value) -> Self {
7512 skip_assert_initialized!();
7513 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7514 }
7515}
7516
7517#[cfg(feature = "v4_12")]
7518#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7519impl ToValue for ListTabBehavior {
7520 #[inline]
7521 fn to_value(&self) -> glib::Value {
7522 let mut value = glib::Value::for_value_type::<Self>();
7523 unsafe {
7524 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7525 }
7526 value
7527 }
7528
7529 #[inline]
7530 fn value_type(&self) -> glib::Type {
7531 Self::static_type()
7532 }
7533}
7534
7535#[cfg(feature = "v4_12")]
7536#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7537impl From<ListTabBehavior> for glib::Value {
7538 #[inline]
7539 fn from(v: ListTabBehavior) -> Self {
7540 skip_assert_initialized!();
7541 ToValue::to_value(&v)
7542 }
7543}
7544
7545#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7547#[non_exhaustive]
7548#[doc(alias = "GtkMessageType")]
7549pub enum MessageType {
7550 #[doc(alias = "GTK_MESSAGE_INFO")]
7552 Info,
7553 #[doc(alias = "GTK_MESSAGE_WARNING")]
7555 Warning,
7556 #[doc(alias = "GTK_MESSAGE_QUESTION")]
7558 Question,
7559 #[doc(alias = "GTK_MESSAGE_ERROR")]
7561 Error,
7562 #[doc(alias = "GTK_MESSAGE_OTHER")]
7564 Other,
7565 #[doc(hidden)]
7566 __Unknown(i32),
7567}
7568
7569#[doc(hidden)]
7570impl IntoGlib for MessageType {
7571 type GlibType = ffi::GtkMessageType;
7572
7573 #[inline]
7574 fn into_glib(self) -> ffi::GtkMessageType {
7575 match self {
7576 Self::Info => ffi::GTK_MESSAGE_INFO,
7577 Self::Warning => ffi::GTK_MESSAGE_WARNING,
7578 Self::Question => ffi::GTK_MESSAGE_QUESTION,
7579 Self::Error => ffi::GTK_MESSAGE_ERROR,
7580 Self::Other => ffi::GTK_MESSAGE_OTHER,
7581 Self::__Unknown(value) => value,
7582 }
7583 }
7584}
7585
7586#[doc(hidden)]
7587impl FromGlib<ffi::GtkMessageType> for MessageType {
7588 #[inline]
7589 unsafe fn from_glib(value: ffi::GtkMessageType) -> Self {
7590 skip_assert_initialized!();
7591
7592 match value {
7593 ffi::GTK_MESSAGE_INFO => Self::Info,
7594 ffi::GTK_MESSAGE_WARNING => Self::Warning,
7595 ffi::GTK_MESSAGE_QUESTION => Self::Question,
7596 ffi::GTK_MESSAGE_ERROR => Self::Error,
7597 ffi::GTK_MESSAGE_OTHER => Self::Other,
7598 value => Self::__Unknown(value),
7599 }
7600 }
7601}
7602
7603impl StaticType for MessageType {
7604 #[inline]
7605 #[doc(alias = "gtk_message_type_get_type")]
7606 fn static_type() -> glib::Type {
7607 unsafe { from_glib(ffi::gtk_message_type_get_type()) }
7608 }
7609}
7610
7611impl glib::HasParamSpec for MessageType {
7612 type ParamSpec = glib::ParamSpecEnum;
7613 type SetValue = Self;
7614 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7615
7616 fn param_spec_builder() -> Self::BuilderFn {
7617 Self::ParamSpec::builder_with_default
7618 }
7619}
7620
7621impl glib::value::ValueType for MessageType {
7622 type Type = Self;
7623}
7624
7625unsafe impl<'a> glib::value::FromValue<'a> for MessageType {
7626 type Checker = glib::value::GenericValueTypeChecker<Self>;
7627
7628 #[inline]
7629 unsafe fn from_value(value: &'a glib::Value) -> Self {
7630 skip_assert_initialized!();
7631 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7632 }
7633}
7634
7635impl ToValue for MessageType {
7636 #[inline]
7637 fn to_value(&self) -> glib::Value {
7638 let mut value = glib::Value::for_value_type::<Self>();
7639 unsafe {
7640 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7641 }
7642 value
7643 }
7644
7645 #[inline]
7646 fn value_type(&self) -> glib::Type {
7647 Self::static_type()
7648 }
7649}
7650
7651impl From<MessageType> for glib::Value {
7652 #[inline]
7653 fn from(v: MessageType) -> Self {
7654 skip_assert_initialized!();
7655 ToValue::to_value(&v)
7656 }
7657}
7658
7659#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7662#[non_exhaustive]
7663#[doc(alias = "GtkMovementStep")]
7664pub enum MovementStep {
7665 #[doc(alias = "GTK_MOVEMENT_LOGICAL_POSITIONS")]
7667 LogicalPositions,
7668 #[doc(alias = "GTK_MOVEMENT_VISUAL_POSITIONS")]
7670 VisualPositions,
7671 #[doc(alias = "GTK_MOVEMENT_WORDS")]
7673 Words,
7674 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINES")]
7676 DisplayLines,
7677 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINE_ENDS")]
7679 DisplayLineEnds,
7680 #[doc(alias = "GTK_MOVEMENT_PARAGRAPHS")]
7682 Paragraphs,
7683 #[doc(alias = "GTK_MOVEMENT_PARAGRAPH_ENDS")]
7685 ParagraphEnds,
7686 #[doc(alias = "GTK_MOVEMENT_PAGES")]
7688 Pages,
7689 #[doc(alias = "GTK_MOVEMENT_BUFFER_ENDS")]
7691 BufferEnds,
7692 #[doc(alias = "GTK_MOVEMENT_HORIZONTAL_PAGES")]
7694 HorizontalPages,
7695 #[doc(hidden)]
7696 __Unknown(i32),
7697}
7698
7699#[doc(hidden)]
7700impl IntoGlib for MovementStep {
7701 type GlibType = ffi::GtkMovementStep;
7702
7703 #[inline]
7704 fn into_glib(self) -> ffi::GtkMovementStep {
7705 match self {
7706 Self::LogicalPositions => ffi::GTK_MOVEMENT_LOGICAL_POSITIONS,
7707 Self::VisualPositions => ffi::GTK_MOVEMENT_VISUAL_POSITIONS,
7708 Self::Words => ffi::GTK_MOVEMENT_WORDS,
7709 Self::DisplayLines => ffi::GTK_MOVEMENT_DISPLAY_LINES,
7710 Self::DisplayLineEnds => ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS,
7711 Self::Paragraphs => ffi::GTK_MOVEMENT_PARAGRAPHS,
7712 Self::ParagraphEnds => ffi::GTK_MOVEMENT_PARAGRAPH_ENDS,
7713 Self::Pages => ffi::GTK_MOVEMENT_PAGES,
7714 Self::BufferEnds => ffi::GTK_MOVEMENT_BUFFER_ENDS,
7715 Self::HorizontalPages => ffi::GTK_MOVEMENT_HORIZONTAL_PAGES,
7716 Self::__Unknown(value) => value,
7717 }
7718 }
7719}
7720
7721#[doc(hidden)]
7722impl FromGlib<ffi::GtkMovementStep> for MovementStep {
7723 #[inline]
7724 unsafe fn from_glib(value: ffi::GtkMovementStep) -> Self {
7725 skip_assert_initialized!();
7726
7727 match value {
7728 ffi::GTK_MOVEMENT_LOGICAL_POSITIONS => Self::LogicalPositions,
7729 ffi::GTK_MOVEMENT_VISUAL_POSITIONS => Self::VisualPositions,
7730 ffi::GTK_MOVEMENT_WORDS => Self::Words,
7731 ffi::GTK_MOVEMENT_DISPLAY_LINES => Self::DisplayLines,
7732 ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS => Self::DisplayLineEnds,
7733 ffi::GTK_MOVEMENT_PARAGRAPHS => Self::Paragraphs,
7734 ffi::GTK_MOVEMENT_PARAGRAPH_ENDS => Self::ParagraphEnds,
7735 ffi::GTK_MOVEMENT_PAGES => Self::Pages,
7736 ffi::GTK_MOVEMENT_BUFFER_ENDS => Self::BufferEnds,
7737 ffi::GTK_MOVEMENT_HORIZONTAL_PAGES => Self::HorizontalPages,
7738 value => Self::__Unknown(value),
7739 }
7740 }
7741}
7742
7743impl StaticType for MovementStep {
7744 #[inline]
7745 #[doc(alias = "gtk_movement_step_get_type")]
7746 fn static_type() -> glib::Type {
7747 unsafe { from_glib(ffi::gtk_movement_step_get_type()) }
7748 }
7749}
7750
7751impl glib::HasParamSpec for MovementStep {
7752 type ParamSpec = glib::ParamSpecEnum;
7753 type SetValue = Self;
7754 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7755
7756 fn param_spec_builder() -> Self::BuilderFn {
7757 Self::ParamSpec::builder_with_default
7758 }
7759}
7760
7761impl glib::value::ValueType for MovementStep {
7762 type Type = Self;
7763}
7764
7765unsafe impl<'a> glib::value::FromValue<'a> for MovementStep {
7766 type Checker = glib::value::GenericValueTypeChecker<Self>;
7767
7768 #[inline]
7769 unsafe fn from_value(value: &'a glib::Value) -> Self {
7770 skip_assert_initialized!();
7771 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7772 }
7773}
7774
7775impl ToValue for MovementStep {
7776 #[inline]
7777 fn to_value(&self) -> glib::Value {
7778 let mut value = glib::Value::for_value_type::<Self>();
7779 unsafe {
7780 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7781 }
7782 value
7783 }
7784
7785 #[inline]
7786 fn value_type(&self) -> glib::Type {
7787 Self::static_type()
7788 }
7789}
7790
7791impl From<MovementStep> for glib::Value {
7792 #[inline]
7793 fn from(v: MovementStep) -> Self {
7794 skip_assert_initialized!();
7795 ToValue::to_value(&v)
7796 }
7797}
7798
7799#[cfg(feature = "v4_6")]
7804#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7805#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7806#[non_exhaustive]
7807#[doc(alias = "GtkNaturalWrapMode")]
7808pub enum NaturalWrapMode {
7809 #[doc(alias = "GTK_NATURAL_WRAP_INHERIT")]
7812 Inherit,
7813 #[doc(alias = "GTK_NATURAL_WRAP_NONE")]
7817 None,
7818 #[doc(alias = "GTK_NATURAL_WRAP_WORD")]
7822 Word,
7823 #[doc(hidden)]
7824 __Unknown(i32),
7825}
7826
7827#[cfg(feature = "v4_6")]
7828#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7829#[doc(hidden)]
7830impl IntoGlib for NaturalWrapMode {
7831 type GlibType = ffi::GtkNaturalWrapMode;
7832
7833 #[inline]
7834 fn into_glib(self) -> ffi::GtkNaturalWrapMode {
7835 match self {
7836 Self::Inherit => ffi::GTK_NATURAL_WRAP_INHERIT,
7837 Self::None => ffi::GTK_NATURAL_WRAP_NONE,
7838 Self::Word => ffi::GTK_NATURAL_WRAP_WORD,
7839 Self::__Unknown(value) => value,
7840 }
7841 }
7842}
7843
7844#[cfg(feature = "v4_6")]
7845#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7846#[doc(hidden)]
7847impl FromGlib<ffi::GtkNaturalWrapMode> for NaturalWrapMode {
7848 #[inline]
7849 unsafe fn from_glib(value: ffi::GtkNaturalWrapMode) -> Self {
7850 skip_assert_initialized!();
7851
7852 match value {
7853 ffi::GTK_NATURAL_WRAP_INHERIT => Self::Inherit,
7854 ffi::GTK_NATURAL_WRAP_NONE => Self::None,
7855 ffi::GTK_NATURAL_WRAP_WORD => Self::Word,
7856 value => Self::__Unknown(value),
7857 }
7858 }
7859}
7860
7861#[cfg(feature = "v4_6")]
7862#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7863impl StaticType for NaturalWrapMode {
7864 #[inline]
7865 #[doc(alias = "gtk_natural_wrap_mode_get_type")]
7866 fn static_type() -> glib::Type {
7867 unsafe { from_glib(ffi::gtk_natural_wrap_mode_get_type()) }
7868 }
7869}
7870
7871#[cfg(feature = "v4_6")]
7872#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7873impl glib::HasParamSpec for NaturalWrapMode {
7874 type ParamSpec = glib::ParamSpecEnum;
7875 type SetValue = Self;
7876 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7877
7878 fn param_spec_builder() -> Self::BuilderFn {
7879 Self::ParamSpec::builder_with_default
7880 }
7881}
7882
7883#[cfg(feature = "v4_6")]
7884#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7885impl glib::value::ValueType for NaturalWrapMode {
7886 type Type = Self;
7887}
7888
7889#[cfg(feature = "v4_6")]
7890#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7891unsafe impl<'a> glib::value::FromValue<'a> for NaturalWrapMode {
7892 type Checker = glib::value::GenericValueTypeChecker<Self>;
7893
7894 #[inline]
7895 unsafe fn from_value(value: &'a glib::Value) -> Self {
7896 skip_assert_initialized!();
7897 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7898 }
7899}
7900
7901#[cfg(feature = "v4_6")]
7902#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7903impl ToValue for NaturalWrapMode {
7904 #[inline]
7905 fn to_value(&self) -> glib::Value {
7906 let mut value = glib::Value::for_value_type::<Self>();
7907 unsafe {
7908 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7909 }
7910 value
7911 }
7912
7913 #[inline]
7914 fn value_type(&self) -> glib::Type {
7915 Self::static_type()
7916 }
7917}
7918
7919#[cfg(feature = "v4_6")]
7920#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7921impl From<NaturalWrapMode> for glib::Value {
7922 #[inline]
7923 fn from(v: NaturalWrapMode) -> Self {
7924 skip_assert_initialized!();
7925 ToValue::to_value(&v)
7926 }
7927}
7928
7929#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7931#[non_exhaustive]
7932#[doc(alias = "GtkNotebookTab")]
7933pub enum NotebookTab {
7934 #[doc(alias = "GTK_NOTEBOOK_TAB_FIRST")]
7936 First,
7937 #[doc(alias = "GTK_NOTEBOOK_TAB_LAST")]
7939 Last,
7940 #[doc(hidden)]
7941 __Unknown(i32),
7942}
7943
7944#[doc(hidden)]
7945impl IntoGlib for NotebookTab {
7946 type GlibType = ffi::GtkNotebookTab;
7947
7948 #[inline]
7949 fn into_glib(self) -> ffi::GtkNotebookTab {
7950 match self {
7951 Self::First => ffi::GTK_NOTEBOOK_TAB_FIRST,
7952 Self::Last => ffi::GTK_NOTEBOOK_TAB_LAST,
7953 Self::__Unknown(value) => value,
7954 }
7955 }
7956}
7957
7958#[doc(hidden)]
7959impl FromGlib<ffi::GtkNotebookTab> for NotebookTab {
7960 #[inline]
7961 unsafe fn from_glib(value: ffi::GtkNotebookTab) -> Self {
7962 skip_assert_initialized!();
7963
7964 match value {
7965 ffi::GTK_NOTEBOOK_TAB_FIRST => Self::First,
7966 ffi::GTK_NOTEBOOK_TAB_LAST => Self::Last,
7967 value => Self::__Unknown(value),
7968 }
7969 }
7970}
7971
7972impl StaticType for NotebookTab {
7973 #[inline]
7974 #[doc(alias = "gtk_notebook_tab_get_type")]
7975 fn static_type() -> glib::Type {
7976 unsafe { from_glib(ffi::gtk_notebook_tab_get_type()) }
7977 }
7978}
7979
7980impl glib::HasParamSpec for NotebookTab {
7981 type ParamSpec = glib::ParamSpecEnum;
7982 type SetValue = Self;
7983 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7984
7985 fn param_spec_builder() -> Self::BuilderFn {
7986 Self::ParamSpec::builder_with_default
7987 }
7988}
7989
7990impl glib::value::ValueType for NotebookTab {
7991 type Type = Self;
7992}
7993
7994unsafe impl<'a> glib::value::FromValue<'a> for NotebookTab {
7995 type Checker = glib::value::GenericValueTypeChecker<Self>;
7996
7997 #[inline]
7998 unsafe fn from_value(value: &'a glib::Value) -> Self {
7999 skip_assert_initialized!();
8000 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8001 }
8002}
8003
8004impl ToValue for NotebookTab {
8005 #[inline]
8006 fn to_value(&self) -> glib::Value {
8007 let mut value = glib::Value::for_value_type::<Self>();
8008 unsafe {
8009 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8010 }
8011 value
8012 }
8013
8014 #[inline]
8015 fn value_type(&self) -> glib::Type {
8016 Self::static_type()
8017 }
8018}
8019
8020impl From<NotebookTab> for glib::Value {
8021 #[inline]
8022 fn from(v: NotebookTab) -> Self {
8023 skip_assert_initialized!();
8024 ToValue::to_value(&v)
8025 }
8026}
8027
8028#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8031#[non_exhaustive]
8032#[doc(alias = "GtkNumberUpLayout")]
8033pub enum NumberUpLayout {
8034 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM")]
8036 Lrtb,
8037 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP")]
8039 Lrbt,
8040 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM")]
8042 Rltb,
8043 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP")]
8045 Rlbt,
8046 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT")]
8048 Tblr,
8049 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT")]
8051 Tbrl,
8052 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT")]
8054 Btlr,
8055 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT")]
8057 Btrl,
8058 #[doc(hidden)]
8059 __Unknown(i32),
8060}
8061
8062#[doc(hidden)]
8063impl IntoGlib for NumberUpLayout {
8064 type GlibType = ffi::GtkNumberUpLayout;
8065
8066 #[inline]
8067 fn into_glib(self) -> ffi::GtkNumberUpLayout {
8068 match self {
8069 Self::Lrtb => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM,
8070 Self::Lrbt => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP,
8071 Self::Rltb => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM,
8072 Self::Rlbt => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP,
8073 Self::Tblr => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT,
8074 Self::Tbrl => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT,
8075 Self::Btlr => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT,
8076 Self::Btrl => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT,
8077 Self::__Unknown(value) => value,
8078 }
8079 }
8080}
8081
8082#[doc(hidden)]
8083impl FromGlib<ffi::GtkNumberUpLayout> for NumberUpLayout {
8084 #[inline]
8085 unsafe fn from_glib(value: ffi::GtkNumberUpLayout) -> Self {
8086 skip_assert_initialized!();
8087
8088 match value {
8089 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM => Self::Lrtb,
8090 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP => Self::Lrbt,
8091 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM => Self::Rltb,
8092 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP => Self::Rlbt,
8093 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT => Self::Tblr,
8094 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT => Self::Tbrl,
8095 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT => Self::Btlr,
8096 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT => Self::Btrl,
8097 value => Self::__Unknown(value),
8098 }
8099 }
8100}
8101
8102impl StaticType for NumberUpLayout {
8103 #[inline]
8104 #[doc(alias = "gtk_number_up_layout_get_type")]
8105 fn static_type() -> glib::Type {
8106 unsafe { from_glib(ffi::gtk_number_up_layout_get_type()) }
8107 }
8108}
8109
8110impl glib::HasParamSpec for NumberUpLayout {
8111 type ParamSpec = glib::ParamSpecEnum;
8112 type SetValue = Self;
8113 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8114
8115 fn param_spec_builder() -> Self::BuilderFn {
8116 Self::ParamSpec::builder_with_default
8117 }
8118}
8119
8120impl glib::value::ValueType for NumberUpLayout {
8121 type Type = Self;
8122}
8123
8124unsafe impl<'a> glib::value::FromValue<'a> for NumberUpLayout {
8125 type Checker = glib::value::GenericValueTypeChecker<Self>;
8126
8127 #[inline]
8128 unsafe fn from_value(value: &'a glib::Value) -> Self {
8129 skip_assert_initialized!();
8130 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8131 }
8132}
8133
8134impl ToValue for NumberUpLayout {
8135 #[inline]
8136 fn to_value(&self) -> glib::Value {
8137 let mut value = glib::Value::for_value_type::<Self>();
8138 unsafe {
8139 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8140 }
8141 value
8142 }
8143
8144 #[inline]
8145 fn value_type(&self) -> glib::Type {
8146 Self::static_type()
8147 }
8148}
8149
8150impl From<NumberUpLayout> for glib::Value {
8151 #[inline]
8152 fn from(v: NumberUpLayout) -> Self {
8153 skip_assert_initialized!();
8154 ToValue::to_value(&v)
8155 }
8156}
8157
8158#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8165#[non_exhaustive]
8166#[doc(alias = "GtkOrdering")]
8167pub enum Ordering {
8168 #[doc(alias = "GTK_ORDERING_SMALLER")]
8170 Smaller,
8171 #[doc(alias = "GTK_ORDERING_EQUAL")]
8173 Equal,
8174 #[doc(alias = "GTK_ORDERING_LARGER")]
8176 Larger,
8177 #[doc(hidden)]
8178 __Unknown(i32),
8179}
8180
8181#[doc(hidden)]
8182impl IntoGlib for Ordering {
8183 type GlibType = ffi::GtkOrdering;
8184
8185 #[inline]
8186 fn into_glib(self) -> ffi::GtkOrdering {
8187 match self {
8188 Self::Smaller => ffi::GTK_ORDERING_SMALLER,
8189 Self::Equal => ffi::GTK_ORDERING_EQUAL,
8190 Self::Larger => ffi::GTK_ORDERING_LARGER,
8191 Self::__Unknown(value) => value,
8192 }
8193 }
8194}
8195
8196#[doc(hidden)]
8197impl FromGlib<ffi::GtkOrdering> for Ordering {
8198 #[inline]
8199 unsafe fn from_glib(value: ffi::GtkOrdering) -> Self {
8200 skip_assert_initialized!();
8201
8202 match value {
8203 ffi::GTK_ORDERING_SMALLER => Self::Smaller,
8204 ffi::GTK_ORDERING_EQUAL => Self::Equal,
8205 ffi::GTK_ORDERING_LARGER => Self::Larger,
8206 value => Self::__Unknown(value),
8207 }
8208 }
8209}
8210
8211impl StaticType for Ordering {
8212 #[inline]
8213 #[doc(alias = "gtk_ordering_get_type")]
8214 fn static_type() -> glib::Type {
8215 unsafe { from_glib(ffi::gtk_ordering_get_type()) }
8216 }
8217}
8218
8219impl glib::HasParamSpec for Ordering {
8220 type ParamSpec = glib::ParamSpecEnum;
8221 type SetValue = Self;
8222 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8223
8224 fn param_spec_builder() -> Self::BuilderFn {
8225 Self::ParamSpec::builder_with_default
8226 }
8227}
8228
8229impl glib::value::ValueType for Ordering {
8230 type Type = Self;
8231}
8232
8233unsafe impl<'a> glib::value::FromValue<'a> for Ordering {
8234 type Checker = glib::value::GenericValueTypeChecker<Self>;
8235
8236 #[inline]
8237 unsafe fn from_value(value: &'a glib::Value) -> Self {
8238 skip_assert_initialized!();
8239 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8240 }
8241}
8242
8243impl ToValue for Ordering {
8244 #[inline]
8245 fn to_value(&self) -> glib::Value {
8246 let mut value = glib::Value::for_value_type::<Self>();
8247 unsafe {
8248 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8249 }
8250 value
8251 }
8252
8253 #[inline]
8254 fn value_type(&self) -> glib::Type {
8255 Self::static_type()
8256 }
8257}
8258
8259impl From<Ordering> for glib::Value {
8260 #[inline]
8261 fn from(v: Ordering) -> Self {
8262 skip_assert_initialized!();
8263 ToValue::to_value(&v)
8264 }
8265}
8266
8267#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8271#[non_exhaustive]
8272#[doc(alias = "GtkOrientation")]
8273pub enum Orientation {
8274 #[doc(alias = "GTK_ORIENTATION_HORIZONTAL")]
8276 Horizontal,
8277 #[doc(alias = "GTK_ORIENTATION_VERTICAL")]
8279 Vertical,
8280 #[doc(hidden)]
8281 __Unknown(i32),
8282}
8283
8284#[doc(hidden)]
8285impl IntoGlib for Orientation {
8286 type GlibType = ffi::GtkOrientation;
8287
8288 #[inline]
8289 fn into_glib(self) -> ffi::GtkOrientation {
8290 match self {
8291 Self::Horizontal => ffi::GTK_ORIENTATION_HORIZONTAL,
8292 Self::Vertical => ffi::GTK_ORIENTATION_VERTICAL,
8293 Self::__Unknown(value) => value,
8294 }
8295 }
8296}
8297
8298#[doc(hidden)]
8299impl FromGlib<ffi::GtkOrientation> for Orientation {
8300 #[inline]
8301 unsafe fn from_glib(value: ffi::GtkOrientation) -> Self {
8302 skip_assert_initialized!();
8303
8304 match value {
8305 ffi::GTK_ORIENTATION_HORIZONTAL => Self::Horizontal,
8306 ffi::GTK_ORIENTATION_VERTICAL => Self::Vertical,
8307 value => Self::__Unknown(value),
8308 }
8309 }
8310}
8311
8312impl StaticType for Orientation {
8313 #[inline]
8314 #[doc(alias = "gtk_orientation_get_type")]
8315 fn static_type() -> glib::Type {
8316 unsafe { from_glib(ffi::gtk_orientation_get_type()) }
8317 }
8318}
8319
8320impl glib::HasParamSpec for Orientation {
8321 type ParamSpec = glib::ParamSpecEnum;
8322 type SetValue = Self;
8323 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8324
8325 fn param_spec_builder() -> Self::BuilderFn {
8326 Self::ParamSpec::builder_with_default
8327 }
8328}
8329
8330impl glib::value::ValueType for Orientation {
8331 type Type = Self;
8332}
8333
8334unsafe impl<'a> glib::value::FromValue<'a> for Orientation {
8335 type Checker = glib::value::GenericValueTypeChecker<Self>;
8336
8337 #[inline]
8338 unsafe fn from_value(value: &'a glib::Value) -> Self {
8339 skip_assert_initialized!();
8340 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8341 }
8342}
8343
8344impl ToValue for Orientation {
8345 #[inline]
8346 fn to_value(&self) -> glib::Value {
8347 let mut value = glib::Value::for_value_type::<Self>();
8348 unsafe {
8349 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8350 }
8351 value
8352 }
8353
8354 #[inline]
8355 fn value_type(&self) -> glib::Type {
8356 Self::static_type()
8357 }
8358}
8359
8360impl From<Orientation> for glib::Value {
8361 #[inline]
8362 fn from(v: Orientation) -> Self {
8363 skip_assert_initialized!();
8364 ToValue::to_value(&v)
8365 }
8366}
8367
8368#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8374#[non_exhaustive]
8375#[doc(alias = "GtkOverflow")]
8376pub enum Overflow {
8377 #[doc(alias = "GTK_OVERFLOW_VISIBLE")]
8380 Visible,
8381 #[doc(alias = "GTK_OVERFLOW_HIDDEN")]
8384 Hidden,
8385 #[doc(hidden)]
8386 __Unknown(i32),
8387}
8388
8389#[doc(hidden)]
8390impl IntoGlib for Overflow {
8391 type GlibType = ffi::GtkOverflow;
8392
8393 #[inline]
8394 fn into_glib(self) -> ffi::GtkOverflow {
8395 match self {
8396 Self::Visible => ffi::GTK_OVERFLOW_VISIBLE,
8397 Self::Hidden => ffi::GTK_OVERFLOW_HIDDEN,
8398 Self::__Unknown(value) => value,
8399 }
8400 }
8401}
8402
8403#[doc(hidden)]
8404impl FromGlib<ffi::GtkOverflow> for Overflow {
8405 #[inline]
8406 unsafe fn from_glib(value: ffi::GtkOverflow) -> Self {
8407 skip_assert_initialized!();
8408
8409 match value {
8410 ffi::GTK_OVERFLOW_VISIBLE => Self::Visible,
8411 ffi::GTK_OVERFLOW_HIDDEN => Self::Hidden,
8412 value => Self::__Unknown(value),
8413 }
8414 }
8415}
8416
8417impl StaticType for Overflow {
8418 #[inline]
8419 #[doc(alias = "gtk_overflow_get_type")]
8420 fn static_type() -> glib::Type {
8421 unsafe { from_glib(ffi::gtk_overflow_get_type()) }
8422 }
8423}
8424
8425impl glib::HasParamSpec for Overflow {
8426 type ParamSpec = glib::ParamSpecEnum;
8427 type SetValue = Self;
8428 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8429
8430 fn param_spec_builder() -> Self::BuilderFn {
8431 Self::ParamSpec::builder_with_default
8432 }
8433}
8434
8435impl glib::value::ValueType for Overflow {
8436 type Type = Self;
8437}
8438
8439unsafe impl<'a> glib::value::FromValue<'a> for Overflow {
8440 type Checker = glib::value::GenericValueTypeChecker<Self>;
8441
8442 #[inline]
8443 unsafe fn from_value(value: &'a glib::Value) -> Self {
8444 skip_assert_initialized!();
8445 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8446 }
8447}
8448
8449impl ToValue for Overflow {
8450 #[inline]
8451 fn to_value(&self) -> glib::Value {
8452 let mut value = glib::Value::for_value_type::<Self>();
8453 unsafe {
8454 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8455 }
8456 value
8457 }
8458
8459 #[inline]
8460 fn value_type(&self) -> glib::Type {
8461 Self::static_type()
8462 }
8463}
8464
8465impl From<Overflow> for glib::Value {
8466 #[inline]
8467 fn from(v: Overflow) -> Self {
8468 skip_assert_initialized!();
8469 ToValue::to_value(&v)
8470 }
8471}
8472
8473#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8477#[non_exhaustive]
8478#[doc(alias = "GtkPackType")]
8479pub enum PackType {
8480 #[doc(alias = "GTK_PACK_START")]
8482 Start,
8483 #[doc(alias = "GTK_PACK_END")]
8485 End,
8486 #[doc(hidden)]
8487 __Unknown(i32),
8488}
8489
8490#[doc(hidden)]
8491impl IntoGlib for PackType {
8492 type GlibType = ffi::GtkPackType;
8493
8494 #[inline]
8495 fn into_glib(self) -> ffi::GtkPackType {
8496 match self {
8497 Self::Start => ffi::GTK_PACK_START,
8498 Self::End => ffi::GTK_PACK_END,
8499 Self::__Unknown(value) => value,
8500 }
8501 }
8502}
8503
8504#[doc(hidden)]
8505impl FromGlib<ffi::GtkPackType> for PackType {
8506 #[inline]
8507 unsafe fn from_glib(value: ffi::GtkPackType) -> Self {
8508 skip_assert_initialized!();
8509
8510 match value {
8511 ffi::GTK_PACK_START => Self::Start,
8512 ffi::GTK_PACK_END => Self::End,
8513 value => Self::__Unknown(value),
8514 }
8515 }
8516}
8517
8518impl StaticType for PackType {
8519 #[inline]
8520 #[doc(alias = "gtk_pack_type_get_type")]
8521 fn static_type() -> glib::Type {
8522 unsafe { from_glib(ffi::gtk_pack_type_get_type()) }
8523 }
8524}
8525
8526impl glib::HasParamSpec for PackType {
8527 type ParamSpec = glib::ParamSpecEnum;
8528 type SetValue = Self;
8529 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8530
8531 fn param_spec_builder() -> Self::BuilderFn {
8532 Self::ParamSpec::builder_with_default
8533 }
8534}
8535
8536impl glib::value::ValueType for PackType {
8537 type Type = Self;
8538}
8539
8540unsafe impl<'a> glib::value::FromValue<'a> for PackType {
8541 type Checker = glib::value::GenericValueTypeChecker<Self>;
8542
8543 #[inline]
8544 unsafe fn from_value(value: &'a glib::Value) -> Self {
8545 skip_assert_initialized!();
8546 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8547 }
8548}
8549
8550impl ToValue for PackType {
8551 #[inline]
8552 fn to_value(&self) -> glib::Value {
8553 let mut value = glib::Value::for_value_type::<Self>();
8554 unsafe {
8555 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8556 }
8557 value
8558 }
8559
8560 #[inline]
8561 fn value_type(&self) -> glib::Type {
8562 Self::static_type()
8563 }
8564}
8565
8566impl From<PackType> for glib::Value {
8567 #[inline]
8568 fn from(v: PackType) -> Self {
8569 skip_assert_initialized!();
8570 ToValue::to_value(&v)
8571 }
8572}
8573
8574#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8576#[non_exhaustive]
8577#[doc(alias = "GtkPadActionType")]
8578pub enum PadActionType {
8579 #[doc(alias = "GTK_PAD_ACTION_BUTTON")]
8581 Button,
8582 #[doc(alias = "GTK_PAD_ACTION_RING")]
8584 Ring,
8585 #[doc(alias = "GTK_PAD_ACTION_STRIP")]
8587 Strip,
8588 #[doc(alias = "GTK_PAD_ACTION_DIAL")]
8590 Dial,
8591 #[doc(hidden)]
8592 __Unknown(i32),
8593}
8594
8595#[doc(hidden)]
8596impl IntoGlib for PadActionType {
8597 type GlibType = ffi::GtkPadActionType;
8598
8599 #[inline]
8600 fn into_glib(self) -> ffi::GtkPadActionType {
8601 match self {
8602 Self::Button => ffi::GTK_PAD_ACTION_BUTTON,
8603 Self::Ring => ffi::GTK_PAD_ACTION_RING,
8604 Self::Strip => ffi::GTK_PAD_ACTION_STRIP,
8605 Self::Dial => ffi::GTK_PAD_ACTION_DIAL,
8606 Self::__Unknown(value) => value,
8607 }
8608 }
8609}
8610
8611#[doc(hidden)]
8612impl FromGlib<ffi::GtkPadActionType> for PadActionType {
8613 #[inline]
8614 unsafe fn from_glib(value: ffi::GtkPadActionType) -> Self {
8615 skip_assert_initialized!();
8616
8617 match value {
8618 ffi::GTK_PAD_ACTION_BUTTON => Self::Button,
8619 ffi::GTK_PAD_ACTION_RING => Self::Ring,
8620 ffi::GTK_PAD_ACTION_STRIP => Self::Strip,
8621 ffi::GTK_PAD_ACTION_DIAL => Self::Dial,
8622 value => Self::__Unknown(value),
8623 }
8624 }
8625}
8626
8627impl StaticType for PadActionType {
8628 #[inline]
8629 #[doc(alias = "gtk_pad_action_type_get_type")]
8630 fn static_type() -> glib::Type {
8631 unsafe { from_glib(ffi::gtk_pad_action_type_get_type()) }
8632 }
8633}
8634
8635impl glib::HasParamSpec for PadActionType {
8636 type ParamSpec = glib::ParamSpecEnum;
8637 type SetValue = Self;
8638 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8639
8640 fn param_spec_builder() -> Self::BuilderFn {
8641 Self::ParamSpec::builder_with_default
8642 }
8643}
8644
8645impl glib::value::ValueType for PadActionType {
8646 type Type = Self;
8647}
8648
8649unsafe impl<'a> glib::value::FromValue<'a> for PadActionType {
8650 type Checker = glib::value::GenericValueTypeChecker<Self>;
8651
8652 #[inline]
8653 unsafe fn from_value(value: &'a glib::Value) -> Self {
8654 skip_assert_initialized!();
8655 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8656 }
8657}
8658
8659impl ToValue for PadActionType {
8660 #[inline]
8661 fn to_value(&self) -> glib::Value {
8662 let mut value = glib::Value::for_value_type::<Self>();
8663 unsafe {
8664 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8665 }
8666 value
8667 }
8668
8669 #[inline]
8670 fn value_type(&self) -> glib::Type {
8671 Self::static_type()
8672 }
8673}
8674
8675impl From<PadActionType> for glib::Value {
8676 #[inline]
8677 fn from(v: PadActionType) -> Self {
8678 skip_assert_initialized!();
8679 ToValue::to_value(&v)
8680 }
8681}
8682
8683#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8685#[non_exhaustive]
8686#[doc(alias = "GtkPageOrientation")]
8687pub enum PageOrientation {
8688 #[doc(alias = "GTK_PAGE_ORIENTATION_PORTRAIT")]
8690 Portrait,
8691 #[doc(alias = "GTK_PAGE_ORIENTATION_LANDSCAPE")]
8693 Landscape,
8694 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT")]
8696 ReversePortrait,
8697 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE")]
8699 ReverseLandscape,
8700 #[doc(hidden)]
8701 __Unknown(i32),
8702}
8703
8704#[doc(hidden)]
8705impl IntoGlib for PageOrientation {
8706 type GlibType = ffi::GtkPageOrientation;
8707
8708 #[inline]
8709 fn into_glib(self) -> ffi::GtkPageOrientation {
8710 match self {
8711 Self::Portrait => ffi::GTK_PAGE_ORIENTATION_PORTRAIT,
8712 Self::Landscape => ffi::GTK_PAGE_ORIENTATION_LANDSCAPE,
8713 Self::ReversePortrait => ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT,
8714 Self::ReverseLandscape => ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE,
8715 Self::__Unknown(value) => value,
8716 }
8717 }
8718}
8719
8720#[doc(hidden)]
8721impl FromGlib<ffi::GtkPageOrientation> for PageOrientation {
8722 #[inline]
8723 unsafe fn from_glib(value: ffi::GtkPageOrientation) -> Self {
8724 skip_assert_initialized!();
8725
8726 match value {
8727 ffi::GTK_PAGE_ORIENTATION_PORTRAIT => Self::Portrait,
8728 ffi::GTK_PAGE_ORIENTATION_LANDSCAPE => Self::Landscape,
8729 ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT => Self::ReversePortrait,
8730 ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE => Self::ReverseLandscape,
8731 value => Self::__Unknown(value),
8732 }
8733 }
8734}
8735
8736impl StaticType for PageOrientation {
8737 #[inline]
8738 #[doc(alias = "gtk_page_orientation_get_type")]
8739 fn static_type() -> glib::Type {
8740 unsafe { from_glib(ffi::gtk_page_orientation_get_type()) }
8741 }
8742}
8743
8744impl glib::HasParamSpec for PageOrientation {
8745 type ParamSpec = glib::ParamSpecEnum;
8746 type SetValue = Self;
8747 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8748
8749 fn param_spec_builder() -> Self::BuilderFn {
8750 Self::ParamSpec::builder_with_default
8751 }
8752}
8753
8754impl glib::value::ValueType for PageOrientation {
8755 type Type = Self;
8756}
8757
8758unsafe impl<'a> glib::value::FromValue<'a> for PageOrientation {
8759 type Checker = glib::value::GenericValueTypeChecker<Self>;
8760
8761 #[inline]
8762 unsafe fn from_value(value: &'a glib::Value) -> Self {
8763 skip_assert_initialized!();
8764 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8765 }
8766}
8767
8768impl ToValue for PageOrientation {
8769 #[inline]
8770 fn to_value(&self) -> glib::Value {
8771 let mut value = glib::Value::for_value_type::<Self>();
8772 unsafe {
8773 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8774 }
8775 value
8776 }
8777
8778 #[inline]
8779 fn value_type(&self) -> glib::Type {
8780 Self::static_type()
8781 }
8782}
8783
8784impl From<PageOrientation> for glib::Value {
8785 #[inline]
8786 fn from(v: PageOrientation) -> Self {
8787 skip_assert_initialized!();
8788 ToValue::to_value(&v)
8789 }
8790}
8791
8792#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8794#[non_exhaustive]
8795#[doc(alias = "GtkPageSet")]
8796pub enum PageSet {
8797 #[doc(alias = "GTK_PAGE_SET_ALL")]
8799 All,
8800 #[doc(alias = "GTK_PAGE_SET_EVEN")]
8802 Even,
8803 #[doc(alias = "GTK_PAGE_SET_ODD")]
8805 Odd,
8806 #[doc(hidden)]
8807 __Unknown(i32),
8808}
8809
8810#[doc(hidden)]
8811impl IntoGlib for PageSet {
8812 type GlibType = ffi::GtkPageSet;
8813
8814 #[inline]
8815 fn into_glib(self) -> ffi::GtkPageSet {
8816 match self {
8817 Self::All => ffi::GTK_PAGE_SET_ALL,
8818 Self::Even => ffi::GTK_PAGE_SET_EVEN,
8819 Self::Odd => ffi::GTK_PAGE_SET_ODD,
8820 Self::__Unknown(value) => value,
8821 }
8822 }
8823}
8824
8825#[doc(hidden)]
8826impl FromGlib<ffi::GtkPageSet> for PageSet {
8827 #[inline]
8828 unsafe fn from_glib(value: ffi::GtkPageSet) -> Self {
8829 skip_assert_initialized!();
8830
8831 match value {
8832 ffi::GTK_PAGE_SET_ALL => Self::All,
8833 ffi::GTK_PAGE_SET_EVEN => Self::Even,
8834 ffi::GTK_PAGE_SET_ODD => Self::Odd,
8835 value => Self::__Unknown(value),
8836 }
8837 }
8838}
8839
8840impl StaticType for PageSet {
8841 #[inline]
8842 #[doc(alias = "gtk_page_set_get_type")]
8843 fn static_type() -> glib::Type {
8844 unsafe { from_glib(ffi::gtk_page_set_get_type()) }
8845 }
8846}
8847
8848impl glib::HasParamSpec for PageSet {
8849 type ParamSpec = glib::ParamSpecEnum;
8850 type SetValue = Self;
8851 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8852
8853 fn param_spec_builder() -> Self::BuilderFn {
8854 Self::ParamSpec::builder_with_default
8855 }
8856}
8857
8858impl glib::value::ValueType for PageSet {
8859 type Type = Self;
8860}
8861
8862unsafe impl<'a> glib::value::FromValue<'a> for PageSet {
8863 type Checker = glib::value::GenericValueTypeChecker<Self>;
8864
8865 #[inline]
8866 unsafe fn from_value(value: &'a glib::Value) -> Self {
8867 skip_assert_initialized!();
8868 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8869 }
8870}
8871
8872impl ToValue for PageSet {
8873 #[inline]
8874 fn to_value(&self) -> glib::Value {
8875 let mut value = glib::Value::for_value_type::<Self>();
8876 unsafe {
8877 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8878 }
8879 value
8880 }
8881
8882 #[inline]
8883 fn value_type(&self) -> glib::Type {
8884 Self::static_type()
8885 }
8886}
8887
8888impl From<PageSet> for glib::Value {
8889 #[inline]
8890 fn from(v: PageSet) -> Self {
8891 skip_assert_initialized!();
8892 ToValue::to_value(&v)
8893 }
8894}
8895
8896#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8898#[non_exhaustive]
8899#[doc(alias = "GtkPanDirection")]
8900pub enum PanDirection {
8901 #[doc(alias = "GTK_PAN_DIRECTION_LEFT")]
8903 Left,
8904 #[doc(alias = "GTK_PAN_DIRECTION_RIGHT")]
8906 Right,
8907 #[doc(alias = "GTK_PAN_DIRECTION_UP")]
8909 Up,
8910 #[doc(alias = "GTK_PAN_DIRECTION_DOWN")]
8912 Down,
8913 #[doc(hidden)]
8914 __Unknown(i32),
8915}
8916
8917#[doc(hidden)]
8918impl IntoGlib for PanDirection {
8919 type GlibType = ffi::GtkPanDirection;
8920
8921 #[inline]
8922 fn into_glib(self) -> ffi::GtkPanDirection {
8923 match self {
8924 Self::Left => ffi::GTK_PAN_DIRECTION_LEFT,
8925 Self::Right => ffi::GTK_PAN_DIRECTION_RIGHT,
8926 Self::Up => ffi::GTK_PAN_DIRECTION_UP,
8927 Self::Down => ffi::GTK_PAN_DIRECTION_DOWN,
8928 Self::__Unknown(value) => value,
8929 }
8930 }
8931}
8932
8933#[doc(hidden)]
8934impl FromGlib<ffi::GtkPanDirection> for PanDirection {
8935 #[inline]
8936 unsafe fn from_glib(value: ffi::GtkPanDirection) -> Self {
8937 skip_assert_initialized!();
8938
8939 match value {
8940 ffi::GTK_PAN_DIRECTION_LEFT => Self::Left,
8941 ffi::GTK_PAN_DIRECTION_RIGHT => Self::Right,
8942 ffi::GTK_PAN_DIRECTION_UP => Self::Up,
8943 ffi::GTK_PAN_DIRECTION_DOWN => Self::Down,
8944 value => Self::__Unknown(value),
8945 }
8946 }
8947}
8948
8949impl StaticType for PanDirection {
8950 #[inline]
8951 #[doc(alias = "gtk_pan_direction_get_type")]
8952 fn static_type() -> glib::Type {
8953 unsafe { from_glib(ffi::gtk_pan_direction_get_type()) }
8954 }
8955}
8956
8957impl glib::HasParamSpec for PanDirection {
8958 type ParamSpec = glib::ParamSpecEnum;
8959 type SetValue = Self;
8960 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8961
8962 fn param_spec_builder() -> Self::BuilderFn {
8963 Self::ParamSpec::builder_with_default
8964 }
8965}
8966
8967impl glib::value::ValueType for PanDirection {
8968 type Type = Self;
8969}
8970
8971unsafe impl<'a> glib::value::FromValue<'a> for PanDirection {
8972 type Checker = glib::value::GenericValueTypeChecker<Self>;
8973
8974 #[inline]
8975 unsafe fn from_value(value: &'a glib::Value) -> Self {
8976 skip_assert_initialized!();
8977 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8978 }
8979}
8980
8981impl ToValue for PanDirection {
8982 #[inline]
8983 fn to_value(&self) -> glib::Value {
8984 let mut value = glib::Value::for_value_type::<Self>();
8985 unsafe {
8986 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8987 }
8988 value
8989 }
8990
8991 #[inline]
8992 fn value_type(&self) -> glib::Type {
8993 Self::static_type()
8994 }
8995}
8996
8997impl From<PanDirection> for glib::Value {
8998 #[inline]
8999 fn from(v: PanDirection) -> Self {
9000 skip_assert_initialized!();
9001 ToValue::to_value(&v)
9002 }
9003}
9004
9005#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9008#[non_exhaustive]
9009#[doc(alias = "GtkPolicyType")]
9010pub enum PolicyType {
9011 #[doc(alias = "GTK_POLICY_ALWAYS")]
9014 Always,
9015 #[doc(alias = "GTK_POLICY_AUTOMATIC")]
9018 Automatic,
9019 #[doc(alias = "GTK_POLICY_NEVER")]
9022 Never,
9023 #[doc(alias = "GTK_POLICY_EXTERNAL")]
9027 External,
9028 #[doc(hidden)]
9029 __Unknown(i32),
9030}
9031
9032#[doc(hidden)]
9033impl IntoGlib for PolicyType {
9034 type GlibType = ffi::GtkPolicyType;
9035
9036 #[inline]
9037 fn into_glib(self) -> ffi::GtkPolicyType {
9038 match self {
9039 Self::Always => ffi::GTK_POLICY_ALWAYS,
9040 Self::Automatic => ffi::GTK_POLICY_AUTOMATIC,
9041 Self::Never => ffi::GTK_POLICY_NEVER,
9042 Self::External => ffi::GTK_POLICY_EXTERNAL,
9043 Self::__Unknown(value) => value,
9044 }
9045 }
9046}
9047
9048#[doc(hidden)]
9049impl FromGlib<ffi::GtkPolicyType> for PolicyType {
9050 #[inline]
9051 unsafe fn from_glib(value: ffi::GtkPolicyType) -> Self {
9052 skip_assert_initialized!();
9053
9054 match value {
9055 ffi::GTK_POLICY_ALWAYS => Self::Always,
9056 ffi::GTK_POLICY_AUTOMATIC => Self::Automatic,
9057 ffi::GTK_POLICY_NEVER => Self::Never,
9058 ffi::GTK_POLICY_EXTERNAL => Self::External,
9059 value => Self::__Unknown(value),
9060 }
9061 }
9062}
9063
9064impl StaticType for PolicyType {
9065 #[inline]
9066 #[doc(alias = "gtk_policy_type_get_type")]
9067 fn static_type() -> glib::Type {
9068 unsafe { from_glib(ffi::gtk_policy_type_get_type()) }
9069 }
9070}
9071
9072impl glib::HasParamSpec for PolicyType {
9073 type ParamSpec = glib::ParamSpecEnum;
9074 type SetValue = Self;
9075 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9076
9077 fn param_spec_builder() -> Self::BuilderFn {
9078 Self::ParamSpec::builder_with_default
9079 }
9080}
9081
9082impl glib::value::ValueType for PolicyType {
9083 type Type = Self;
9084}
9085
9086unsafe impl<'a> glib::value::FromValue<'a> for PolicyType {
9087 type Checker = glib::value::GenericValueTypeChecker<Self>;
9088
9089 #[inline]
9090 unsafe fn from_value(value: &'a glib::Value) -> Self {
9091 skip_assert_initialized!();
9092 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9093 }
9094}
9095
9096impl ToValue for PolicyType {
9097 #[inline]
9098 fn to_value(&self) -> glib::Value {
9099 let mut value = glib::Value::for_value_type::<Self>();
9100 unsafe {
9101 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9102 }
9103 value
9104 }
9105
9106 #[inline]
9107 fn value_type(&self) -> glib::Type {
9108 Self::static_type()
9109 }
9110}
9111
9112impl From<PolicyType> for glib::Value {
9113 #[inline]
9114 fn from(v: PolicyType) -> Self {
9115 skip_assert_initialized!();
9116 ToValue::to_value(&v)
9117 }
9118}
9119
9120#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9125#[non_exhaustive]
9126#[doc(alias = "GtkPositionType")]
9127pub enum PositionType {
9128 #[doc(alias = "GTK_POS_LEFT")]
9130 Left,
9131 #[doc(alias = "GTK_POS_RIGHT")]
9133 Right,
9134 #[doc(alias = "GTK_POS_TOP")]
9136 Top,
9137 #[doc(alias = "GTK_POS_BOTTOM")]
9139 Bottom,
9140 #[doc(hidden)]
9141 __Unknown(i32),
9142}
9143
9144#[doc(hidden)]
9145impl IntoGlib for PositionType {
9146 type GlibType = ffi::GtkPositionType;
9147
9148 #[inline]
9149 fn into_glib(self) -> ffi::GtkPositionType {
9150 match self {
9151 Self::Left => ffi::GTK_POS_LEFT,
9152 Self::Right => ffi::GTK_POS_RIGHT,
9153 Self::Top => ffi::GTK_POS_TOP,
9154 Self::Bottom => ffi::GTK_POS_BOTTOM,
9155 Self::__Unknown(value) => value,
9156 }
9157 }
9158}
9159
9160#[doc(hidden)]
9161impl FromGlib<ffi::GtkPositionType> for PositionType {
9162 #[inline]
9163 unsafe fn from_glib(value: ffi::GtkPositionType) -> Self {
9164 skip_assert_initialized!();
9165
9166 match value {
9167 ffi::GTK_POS_LEFT => Self::Left,
9168 ffi::GTK_POS_RIGHT => Self::Right,
9169 ffi::GTK_POS_TOP => Self::Top,
9170 ffi::GTK_POS_BOTTOM => Self::Bottom,
9171 value => Self::__Unknown(value),
9172 }
9173 }
9174}
9175
9176impl StaticType for PositionType {
9177 #[inline]
9178 #[doc(alias = "gtk_position_type_get_type")]
9179 fn static_type() -> glib::Type {
9180 unsafe { from_glib(ffi::gtk_position_type_get_type()) }
9181 }
9182}
9183
9184impl glib::HasParamSpec for PositionType {
9185 type ParamSpec = glib::ParamSpecEnum;
9186 type SetValue = Self;
9187 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9188
9189 fn param_spec_builder() -> Self::BuilderFn {
9190 Self::ParamSpec::builder_with_default
9191 }
9192}
9193
9194impl glib::value::ValueType for PositionType {
9195 type Type = Self;
9196}
9197
9198unsafe impl<'a> glib::value::FromValue<'a> for PositionType {
9199 type Checker = glib::value::GenericValueTypeChecker<Self>;
9200
9201 #[inline]
9202 unsafe fn from_value(value: &'a glib::Value) -> Self {
9203 skip_assert_initialized!();
9204 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9205 }
9206}
9207
9208impl ToValue for PositionType {
9209 #[inline]
9210 fn to_value(&self) -> glib::Value {
9211 let mut value = glib::Value::for_value_type::<Self>();
9212 unsafe {
9213 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9214 }
9215 value
9216 }
9217
9218 #[inline]
9219 fn value_type(&self) -> glib::Type {
9220 Self::static_type()
9221 }
9222}
9223
9224impl From<PositionType> for glib::Value {
9225 #[inline]
9226 fn from(v: PositionType) -> Self {
9227 skip_assert_initialized!();
9228 ToValue::to_value(&v)
9229 }
9230}
9231
9232#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9234#[non_exhaustive]
9235#[doc(alias = "GtkPrintDuplex")]
9236pub enum PrintDuplex {
9237 #[doc(alias = "GTK_PRINT_DUPLEX_SIMPLEX")]
9239 Simplex,
9240 #[doc(alias = "GTK_PRINT_DUPLEX_HORIZONTAL")]
9242 Horizontal,
9243 #[doc(alias = "GTK_PRINT_DUPLEX_VERTICAL")]
9245 Vertical,
9246 #[doc(hidden)]
9247 __Unknown(i32),
9248}
9249
9250#[doc(hidden)]
9251impl IntoGlib for PrintDuplex {
9252 type GlibType = ffi::GtkPrintDuplex;
9253
9254 #[inline]
9255 fn into_glib(self) -> ffi::GtkPrintDuplex {
9256 match self {
9257 Self::Simplex => ffi::GTK_PRINT_DUPLEX_SIMPLEX,
9258 Self::Horizontal => ffi::GTK_PRINT_DUPLEX_HORIZONTAL,
9259 Self::Vertical => ffi::GTK_PRINT_DUPLEX_VERTICAL,
9260 Self::__Unknown(value) => value,
9261 }
9262 }
9263}
9264
9265#[doc(hidden)]
9266impl FromGlib<ffi::GtkPrintDuplex> for PrintDuplex {
9267 #[inline]
9268 unsafe fn from_glib(value: ffi::GtkPrintDuplex) -> Self {
9269 skip_assert_initialized!();
9270
9271 match value {
9272 ffi::GTK_PRINT_DUPLEX_SIMPLEX => Self::Simplex,
9273 ffi::GTK_PRINT_DUPLEX_HORIZONTAL => Self::Horizontal,
9274 ffi::GTK_PRINT_DUPLEX_VERTICAL => Self::Vertical,
9275 value => Self::__Unknown(value),
9276 }
9277 }
9278}
9279
9280impl StaticType for PrintDuplex {
9281 #[inline]
9282 #[doc(alias = "gtk_print_duplex_get_type")]
9283 fn static_type() -> glib::Type {
9284 unsafe { from_glib(ffi::gtk_print_duplex_get_type()) }
9285 }
9286}
9287
9288impl glib::HasParamSpec for PrintDuplex {
9289 type ParamSpec = glib::ParamSpecEnum;
9290 type SetValue = Self;
9291 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9292
9293 fn param_spec_builder() -> Self::BuilderFn {
9294 Self::ParamSpec::builder_with_default
9295 }
9296}
9297
9298impl glib::value::ValueType for PrintDuplex {
9299 type Type = Self;
9300}
9301
9302unsafe impl<'a> glib::value::FromValue<'a> for PrintDuplex {
9303 type Checker = glib::value::GenericValueTypeChecker<Self>;
9304
9305 #[inline]
9306 unsafe fn from_value(value: &'a glib::Value) -> Self {
9307 skip_assert_initialized!();
9308 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9309 }
9310}
9311
9312impl ToValue for PrintDuplex {
9313 #[inline]
9314 fn to_value(&self) -> glib::Value {
9315 let mut value = glib::Value::for_value_type::<Self>();
9316 unsafe {
9317 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9318 }
9319 value
9320 }
9321
9322 #[inline]
9323 fn value_type(&self) -> glib::Type {
9324 Self::static_type()
9325 }
9326}
9327
9328impl From<PrintDuplex> for glib::Value {
9329 #[inline]
9330 fn from(v: PrintDuplex) -> Self {
9331 skip_assert_initialized!();
9332 ToValue::to_value(&v)
9333 }
9334}
9335
9336#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9339#[non_exhaustive]
9340#[doc(alias = "GtkPrintError")]
9341pub enum PrintError {
9342 #[doc(alias = "GTK_PRINT_ERROR_GENERAL")]
9344 General,
9345 #[doc(alias = "GTK_PRINT_ERROR_INTERNAL_ERROR")]
9347 InternalError,
9348 #[doc(alias = "GTK_PRINT_ERROR_NOMEM")]
9350 Nomem,
9351 #[doc(alias = "GTK_PRINT_ERROR_INVALID_FILE")]
9354 InvalidFile,
9355 #[doc(hidden)]
9356 __Unknown(i32),
9357}
9358
9359#[doc(hidden)]
9360impl IntoGlib for PrintError {
9361 type GlibType = ffi::GtkPrintError;
9362
9363 #[inline]
9364 fn into_glib(self) -> ffi::GtkPrintError {
9365 match self {
9366 Self::General => ffi::GTK_PRINT_ERROR_GENERAL,
9367 Self::InternalError => ffi::GTK_PRINT_ERROR_INTERNAL_ERROR,
9368 Self::Nomem => ffi::GTK_PRINT_ERROR_NOMEM,
9369 Self::InvalidFile => ffi::GTK_PRINT_ERROR_INVALID_FILE,
9370 Self::__Unknown(value) => value,
9371 }
9372 }
9373}
9374
9375#[doc(hidden)]
9376impl FromGlib<ffi::GtkPrintError> for PrintError {
9377 #[inline]
9378 unsafe fn from_glib(value: ffi::GtkPrintError) -> Self {
9379 skip_assert_initialized!();
9380
9381 match value {
9382 ffi::GTK_PRINT_ERROR_GENERAL => Self::General,
9383 ffi::GTK_PRINT_ERROR_INTERNAL_ERROR => Self::InternalError,
9384 ffi::GTK_PRINT_ERROR_NOMEM => Self::Nomem,
9385 ffi::GTK_PRINT_ERROR_INVALID_FILE => Self::InvalidFile,
9386 value => Self::__Unknown(value),
9387 }
9388 }
9389}
9390
9391impl glib::error::ErrorDomain for PrintError {
9392 #[inline]
9393 fn domain() -> glib::Quark {
9394 skip_assert_initialized!();
9395
9396 unsafe { from_glib(ffi::gtk_print_error_quark()) }
9397 }
9398
9399 #[inline]
9400 fn code(self) -> i32 {
9401 self.into_glib()
9402 }
9403
9404 #[inline]
9405 #[allow(clippy::match_single_binding)]
9406 fn from(code: i32) -> Option<Self> {
9407 skip_assert_initialized!();
9408 match unsafe { from_glib(code) } {
9409 value => Some(value),
9410 }
9411 }
9412}
9413
9414impl StaticType for PrintError {
9415 #[inline]
9416 #[doc(alias = "gtk_print_error_get_type")]
9417 fn static_type() -> glib::Type {
9418 unsafe { from_glib(ffi::gtk_print_error_get_type()) }
9419 }
9420}
9421
9422impl glib::HasParamSpec for PrintError {
9423 type ParamSpec = glib::ParamSpecEnum;
9424 type SetValue = Self;
9425 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9426
9427 fn param_spec_builder() -> Self::BuilderFn {
9428 Self::ParamSpec::builder_with_default
9429 }
9430}
9431
9432impl glib::value::ValueType for PrintError {
9433 type Type = Self;
9434}
9435
9436unsafe impl<'a> glib::value::FromValue<'a> for PrintError {
9437 type Checker = glib::value::GenericValueTypeChecker<Self>;
9438
9439 #[inline]
9440 unsafe fn from_value(value: &'a glib::Value) -> Self {
9441 skip_assert_initialized!();
9442 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9443 }
9444}
9445
9446impl ToValue for PrintError {
9447 #[inline]
9448 fn to_value(&self) -> glib::Value {
9449 let mut value = glib::Value::for_value_type::<Self>();
9450 unsafe {
9451 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9452 }
9453 value
9454 }
9455
9456 #[inline]
9457 fn value_type(&self) -> glib::Type {
9458 Self::static_type()
9459 }
9460}
9461
9462impl From<PrintError> for glib::Value {
9463 #[inline]
9464 fn from(v: PrintError) -> Self {
9465 skip_assert_initialized!();
9466 ToValue::to_value(&v)
9467 }
9468}
9469
9470#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9474#[non_exhaustive]
9475#[doc(alias = "GtkPrintOperationAction")]
9476pub enum PrintOperationAction {
9477 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG")]
9479 PrintDialog,
9480 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT")]
9484 Print,
9485 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PREVIEW")]
9487 Preview,
9488 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_EXPORT")]
9491 Export,
9492 #[doc(hidden)]
9493 __Unknown(i32),
9494}
9495
9496#[doc(hidden)]
9497impl IntoGlib for PrintOperationAction {
9498 type GlibType = ffi::GtkPrintOperationAction;
9499
9500 #[inline]
9501 fn into_glib(self) -> ffi::GtkPrintOperationAction {
9502 match self {
9503 Self::PrintDialog => ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
9504 Self::Print => ffi::GTK_PRINT_OPERATION_ACTION_PRINT,
9505 Self::Preview => ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW,
9506 Self::Export => ffi::GTK_PRINT_OPERATION_ACTION_EXPORT,
9507 Self::__Unknown(value) => value,
9508 }
9509 }
9510}
9511
9512#[doc(hidden)]
9513impl FromGlib<ffi::GtkPrintOperationAction> for PrintOperationAction {
9514 #[inline]
9515 unsafe fn from_glib(value: ffi::GtkPrintOperationAction) -> Self {
9516 skip_assert_initialized!();
9517
9518 match value {
9519 ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG => Self::PrintDialog,
9520 ffi::GTK_PRINT_OPERATION_ACTION_PRINT => Self::Print,
9521 ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW => Self::Preview,
9522 ffi::GTK_PRINT_OPERATION_ACTION_EXPORT => Self::Export,
9523 value => Self::__Unknown(value),
9524 }
9525 }
9526}
9527
9528impl StaticType for PrintOperationAction {
9529 #[inline]
9530 #[doc(alias = "gtk_print_operation_action_get_type")]
9531 fn static_type() -> glib::Type {
9532 unsafe { from_glib(ffi::gtk_print_operation_action_get_type()) }
9533 }
9534}
9535
9536impl glib::HasParamSpec for PrintOperationAction {
9537 type ParamSpec = glib::ParamSpecEnum;
9538 type SetValue = Self;
9539 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9540
9541 fn param_spec_builder() -> Self::BuilderFn {
9542 Self::ParamSpec::builder_with_default
9543 }
9544}
9545
9546impl glib::value::ValueType for PrintOperationAction {
9547 type Type = Self;
9548}
9549
9550unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationAction {
9551 type Checker = glib::value::GenericValueTypeChecker<Self>;
9552
9553 #[inline]
9554 unsafe fn from_value(value: &'a glib::Value) -> Self {
9555 skip_assert_initialized!();
9556 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9557 }
9558}
9559
9560impl ToValue for PrintOperationAction {
9561 #[inline]
9562 fn to_value(&self) -> glib::Value {
9563 let mut value = glib::Value::for_value_type::<Self>();
9564 unsafe {
9565 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9566 }
9567 value
9568 }
9569
9570 #[inline]
9571 fn value_type(&self) -> glib::Type {
9572 Self::static_type()
9573 }
9574}
9575
9576impl From<PrintOperationAction> for glib::Value {
9577 #[inline]
9578 fn from(v: PrintOperationAction) -> Self {
9579 skip_assert_initialized!();
9580 ToValue::to_value(&v)
9581 }
9582}
9583
9584#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9588#[non_exhaustive]
9589#[doc(alias = "GtkPrintOperationResult")]
9590pub enum PrintOperationResult {
9591 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_ERROR")]
9593 Error,
9594 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_APPLY")]
9596 Apply,
9597 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_CANCEL")]
9600 Cancel,
9601 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_IN_PROGRESS")]
9604 InProgress,
9605 #[doc(hidden)]
9606 __Unknown(i32),
9607}
9608
9609#[doc(hidden)]
9610impl IntoGlib for PrintOperationResult {
9611 type GlibType = ffi::GtkPrintOperationResult;
9612
9613 #[inline]
9614 fn into_glib(self) -> ffi::GtkPrintOperationResult {
9615 match self {
9616 Self::Error => ffi::GTK_PRINT_OPERATION_RESULT_ERROR,
9617 Self::Apply => ffi::GTK_PRINT_OPERATION_RESULT_APPLY,
9618 Self::Cancel => ffi::GTK_PRINT_OPERATION_RESULT_CANCEL,
9619 Self::InProgress => ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS,
9620 Self::__Unknown(value) => value,
9621 }
9622 }
9623}
9624
9625#[doc(hidden)]
9626impl FromGlib<ffi::GtkPrintOperationResult> for PrintOperationResult {
9627 #[inline]
9628 unsafe fn from_glib(value: ffi::GtkPrintOperationResult) -> Self {
9629 skip_assert_initialized!();
9630
9631 match value {
9632 ffi::GTK_PRINT_OPERATION_RESULT_ERROR => Self::Error,
9633 ffi::GTK_PRINT_OPERATION_RESULT_APPLY => Self::Apply,
9634 ffi::GTK_PRINT_OPERATION_RESULT_CANCEL => Self::Cancel,
9635 ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS => Self::InProgress,
9636 value => Self::__Unknown(value),
9637 }
9638 }
9639}
9640
9641impl StaticType for PrintOperationResult {
9642 #[inline]
9643 #[doc(alias = "gtk_print_operation_result_get_type")]
9644 fn static_type() -> glib::Type {
9645 unsafe { from_glib(ffi::gtk_print_operation_result_get_type()) }
9646 }
9647}
9648
9649impl glib::HasParamSpec for PrintOperationResult {
9650 type ParamSpec = glib::ParamSpecEnum;
9651 type SetValue = Self;
9652 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9653
9654 fn param_spec_builder() -> Self::BuilderFn {
9655 Self::ParamSpec::builder_with_default
9656 }
9657}
9658
9659impl glib::value::ValueType for PrintOperationResult {
9660 type Type = Self;
9661}
9662
9663unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationResult {
9664 type Checker = glib::value::GenericValueTypeChecker<Self>;
9665
9666 #[inline]
9667 unsafe fn from_value(value: &'a glib::Value) -> Self {
9668 skip_assert_initialized!();
9669 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9670 }
9671}
9672
9673impl ToValue for PrintOperationResult {
9674 #[inline]
9675 fn to_value(&self) -> glib::Value {
9676 let mut value = glib::Value::for_value_type::<Self>();
9677 unsafe {
9678 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9679 }
9680 value
9681 }
9682
9683 #[inline]
9684 fn value_type(&self) -> glib::Type {
9685 Self::static_type()
9686 }
9687}
9688
9689impl From<PrintOperationResult> for glib::Value {
9690 #[inline]
9691 fn from(v: PrintOperationResult) -> Self {
9692 skip_assert_initialized!();
9693 ToValue::to_value(&v)
9694 }
9695}
9696
9697#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9699#[non_exhaustive]
9700#[doc(alias = "GtkPrintPages")]
9701pub enum PrintPages {
9702 #[doc(alias = "GTK_PRINT_PAGES_ALL")]
9704 All,
9705 #[doc(alias = "GTK_PRINT_PAGES_CURRENT")]
9707 Current,
9708 #[doc(alias = "GTK_PRINT_PAGES_RANGES")]
9710 Ranges,
9711 #[doc(alias = "GTK_PRINT_PAGES_SELECTION")]
9713 Selection,
9714 #[doc(hidden)]
9715 __Unknown(i32),
9716}
9717
9718#[doc(hidden)]
9719impl IntoGlib for PrintPages {
9720 type GlibType = ffi::GtkPrintPages;
9721
9722 #[inline]
9723 fn into_glib(self) -> ffi::GtkPrintPages {
9724 match self {
9725 Self::All => ffi::GTK_PRINT_PAGES_ALL,
9726 Self::Current => ffi::GTK_PRINT_PAGES_CURRENT,
9727 Self::Ranges => ffi::GTK_PRINT_PAGES_RANGES,
9728 Self::Selection => ffi::GTK_PRINT_PAGES_SELECTION,
9729 Self::__Unknown(value) => value,
9730 }
9731 }
9732}
9733
9734#[doc(hidden)]
9735impl FromGlib<ffi::GtkPrintPages> for PrintPages {
9736 #[inline]
9737 unsafe fn from_glib(value: ffi::GtkPrintPages) -> Self {
9738 skip_assert_initialized!();
9739
9740 match value {
9741 ffi::GTK_PRINT_PAGES_ALL => Self::All,
9742 ffi::GTK_PRINT_PAGES_CURRENT => Self::Current,
9743 ffi::GTK_PRINT_PAGES_RANGES => Self::Ranges,
9744 ffi::GTK_PRINT_PAGES_SELECTION => Self::Selection,
9745 value => Self::__Unknown(value),
9746 }
9747 }
9748}
9749
9750impl StaticType for PrintPages {
9751 #[inline]
9752 #[doc(alias = "gtk_print_pages_get_type")]
9753 fn static_type() -> glib::Type {
9754 unsafe { from_glib(ffi::gtk_print_pages_get_type()) }
9755 }
9756}
9757
9758impl glib::HasParamSpec for PrintPages {
9759 type ParamSpec = glib::ParamSpecEnum;
9760 type SetValue = Self;
9761 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9762
9763 fn param_spec_builder() -> Self::BuilderFn {
9764 Self::ParamSpec::builder_with_default
9765 }
9766}
9767
9768impl glib::value::ValueType for PrintPages {
9769 type Type = Self;
9770}
9771
9772unsafe impl<'a> glib::value::FromValue<'a> for PrintPages {
9773 type Checker = glib::value::GenericValueTypeChecker<Self>;
9774
9775 #[inline]
9776 unsafe fn from_value(value: &'a glib::Value) -> Self {
9777 skip_assert_initialized!();
9778 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9779 }
9780}
9781
9782impl ToValue for PrintPages {
9783 #[inline]
9784 fn to_value(&self) -> glib::Value {
9785 let mut value = glib::Value::for_value_type::<Self>();
9786 unsafe {
9787 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9788 }
9789 value
9790 }
9791
9792 #[inline]
9793 fn value_type(&self) -> glib::Type {
9794 Self::static_type()
9795 }
9796}
9797
9798impl From<PrintPages> for glib::Value {
9799 #[inline]
9800 fn from(v: PrintPages) -> Self {
9801 skip_assert_initialized!();
9802 ToValue::to_value(&v)
9803 }
9804}
9805
9806#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9808#[non_exhaustive]
9809#[doc(alias = "GtkPrintQuality")]
9810pub enum PrintQuality {
9811 #[doc(alias = "GTK_PRINT_QUALITY_LOW")]
9813 Low,
9814 #[doc(alias = "GTK_PRINT_QUALITY_NORMAL")]
9816 Normal,
9817 #[doc(alias = "GTK_PRINT_QUALITY_HIGH")]
9819 High,
9820 #[doc(alias = "GTK_PRINT_QUALITY_DRAFT")]
9822 Draft,
9823 #[doc(hidden)]
9824 __Unknown(i32),
9825}
9826
9827#[doc(hidden)]
9828impl IntoGlib for PrintQuality {
9829 type GlibType = ffi::GtkPrintQuality;
9830
9831 #[inline]
9832 fn into_glib(self) -> ffi::GtkPrintQuality {
9833 match self {
9834 Self::Low => ffi::GTK_PRINT_QUALITY_LOW,
9835 Self::Normal => ffi::GTK_PRINT_QUALITY_NORMAL,
9836 Self::High => ffi::GTK_PRINT_QUALITY_HIGH,
9837 Self::Draft => ffi::GTK_PRINT_QUALITY_DRAFT,
9838 Self::__Unknown(value) => value,
9839 }
9840 }
9841}
9842
9843#[doc(hidden)]
9844impl FromGlib<ffi::GtkPrintQuality> for PrintQuality {
9845 #[inline]
9846 unsafe fn from_glib(value: ffi::GtkPrintQuality) -> Self {
9847 skip_assert_initialized!();
9848
9849 match value {
9850 ffi::GTK_PRINT_QUALITY_LOW => Self::Low,
9851 ffi::GTK_PRINT_QUALITY_NORMAL => Self::Normal,
9852 ffi::GTK_PRINT_QUALITY_HIGH => Self::High,
9853 ffi::GTK_PRINT_QUALITY_DRAFT => Self::Draft,
9854 value => Self::__Unknown(value),
9855 }
9856 }
9857}
9858
9859impl StaticType for PrintQuality {
9860 #[inline]
9861 #[doc(alias = "gtk_print_quality_get_type")]
9862 fn static_type() -> glib::Type {
9863 unsafe { from_glib(ffi::gtk_print_quality_get_type()) }
9864 }
9865}
9866
9867impl glib::HasParamSpec for PrintQuality {
9868 type ParamSpec = glib::ParamSpecEnum;
9869 type SetValue = Self;
9870 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9871
9872 fn param_spec_builder() -> Self::BuilderFn {
9873 Self::ParamSpec::builder_with_default
9874 }
9875}
9876
9877impl glib::value::ValueType for PrintQuality {
9878 type Type = Self;
9879}
9880
9881unsafe impl<'a> glib::value::FromValue<'a> for PrintQuality {
9882 type Checker = glib::value::GenericValueTypeChecker<Self>;
9883
9884 #[inline]
9885 unsafe fn from_value(value: &'a glib::Value) -> Self {
9886 skip_assert_initialized!();
9887 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9888 }
9889}
9890
9891impl ToValue for PrintQuality {
9892 #[inline]
9893 fn to_value(&self) -> glib::Value {
9894 let mut value = glib::Value::for_value_type::<Self>();
9895 unsafe {
9896 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9897 }
9898 value
9899 }
9900
9901 #[inline]
9902 fn value_type(&self) -> glib::Type {
9903 Self::static_type()
9904 }
9905}
9906
9907impl From<PrintQuality> for glib::Value {
9908 #[inline]
9909 fn from(v: PrintQuality) -> Self {
9910 skip_assert_initialized!();
9911 ToValue::to_value(&v)
9912 }
9913}
9914
9915#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9918#[non_exhaustive]
9919#[doc(alias = "GtkPrintStatus")]
9920pub enum PrintStatus {
9921 #[doc(alias = "GTK_PRINT_STATUS_INITIAL")]
9924 Initial,
9925 #[doc(alias = "GTK_PRINT_STATUS_PREPARING")]
9928 Preparing,
9929 #[doc(alias = "GTK_PRINT_STATUS_GENERATING_DATA")]
9932 GeneratingData,
9933 #[doc(alias = "GTK_PRINT_STATUS_SENDING_DATA")]
9936 SendingData,
9937 #[doc(alias = "GTK_PRINT_STATUS_PENDING")]
9940 Pending,
9941 #[doc(alias = "GTK_PRINT_STATUS_PENDING_ISSUE")]
9944 PendingIssue,
9945 #[doc(alias = "GTK_PRINT_STATUS_PRINTING")]
9947 Printing,
9948 #[doc(alias = "GTK_PRINT_STATUS_FINISHED")]
9950 Finished,
9951 #[doc(alias = "GTK_PRINT_STATUS_FINISHED_ABORTED")]
9953 FinishedAborted,
9954 #[doc(hidden)]
9955 __Unknown(i32),
9956}
9957
9958#[doc(hidden)]
9959impl IntoGlib for PrintStatus {
9960 type GlibType = ffi::GtkPrintStatus;
9961
9962 #[inline]
9963 fn into_glib(self) -> ffi::GtkPrintStatus {
9964 match self {
9965 Self::Initial => ffi::GTK_PRINT_STATUS_INITIAL,
9966 Self::Preparing => ffi::GTK_PRINT_STATUS_PREPARING,
9967 Self::GeneratingData => ffi::GTK_PRINT_STATUS_GENERATING_DATA,
9968 Self::SendingData => ffi::GTK_PRINT_STATUS_SENDING_DATA,
9969 Self::Pending => ffi::GTK_PRINT_STATUS_PENDING,
9970 Self::PendingIssue => ffi::GTK_PRINT_STATUS_PENDING_ISSUE,
9971 Self::Printing => ffi::GTK_PRINT_STATUS_PRINTING,
9972 Self::Finished => ffi::GTK_PRINT_STATUS_FINISHED,
9973 Self::FinishedAborted => ffi::GTK_PRINT_STATUS_FINISHED_ABORTED,
9974 Self::__Unknown(value) => value,
9975 }
9976 }
9977}
9978
9979#[doc(hidden)]
9980impl FromGlib<ffi::GtkPrintStatus> for PrintStatus {
9981 #[inline]
9982 unsafe fn from_glib(value: ffi::GtkPrintStatus) -> Self {
9983 skip_assert_initialized!();
9984
9985 match value {
9986 ffi::GTK_PRINT_STATUS_INITIAL => Self::Initial,
9987 ffi::GTK_PRINT_STATUS_PREPARING => Self::Preparing,
9988 ffi::GTK_PRINT_STATUS_GENERATING_DATA => Self::GeneratingData,
9989 ffi::GTK_PRINT_STATUS_SENDING_DATA => Self::SendingData,
9990 ffi::GTK_PRINT_STATUS_PENDING => Self::Pending,
9991 ffi::GTK_PRINT_STATUS_PENDING_ISSUE => Self::PendingIssue,
9992 ffi::GTK_PRINT_STATUS_PRINTING => Self::Printing,
9993 ffi::GTK_PRINT_STATUS_FINISHED => Self::Finished,
9994 ffi::GTK_PRINT_STATUS_FINISHED_ABORTED => Self::FinishedAborted,
9995 value => Self::__Unknown(value),
9996 }
9997 }
9998}
9999
10000impl StaticType for PrintStatus {
10001 #[inline]
10002 #[doc(alias = "gtk_print_status_get_type")]
10003 fn static_type() -> glib::Type {
10004 unsafe { from_glib(ffi::gtk_print_status_get_type()) }
10005 }
10006}
10007
10008impl glib::HasParamSpec for PrintStatus {
10009 type ParamSpec = glib::ParamSpecEnum;
10010 type SetValue = Self;
10011 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10012
10013 fn param_spec_builder() -> Self::BuilderFn {
10014 Self::ParamSpec::builder_with_default
10015 }
10016}
10017
10018impl glib::value::ValueType for PrintStatus {
10019 type Type = Self;
10020}
10021
10022unsafe impl<'a> glib::value::FromValue<'a> for PrintStatus {
10023 type Checker = glib::value::GenericValueTypeChecker<Self>;
10024
10025 #[inline]
10026 unsafe fn from_value(value: &'a glib::Value) -> Self {
10027 skip_assert_initialized!();
10028 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10029 }
10030}
10031
10032impl ToValue for PrintStatus {
10033 #[inline]
10034 fn to_value(&self) -> glib::Value {
10035 let mut value = glib::Value::for_value_type::<Self>();
10036 unsafe {
10037 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10038 }
10039 value
10040 }
10041
10042 #[inline]
10043 fn value_type(&self) -> glib::Type {
10044 Self::static_type()
10045 }
10046}
10047
10048impl From<PrintStatus> for glib::Value {
10049 #[inline]
10050 fn from(v: PrintStatus) -> Self {
10051 skip_assert_initialized!();
10052 ToValue::to_value(&v)
10053 }
10054}
10055
10056#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10059#[non_exhaustive]
10060#[doc(alias = "GtkPropagationLimit")]
10061pub enum PropagationLimit {
10062 #[doc(alias = "GTK_LIMIT_NONE")]
10065 None,
10066 #[doc(alias = "GTK_LIMIT_SAME_NATIVE")]
10071 SameNative,
10072 #[doc(hidden)]
10073 __Unknown(i32),
10074}
10075
10076#[doc(hidden)]
10077impl IntoGlib for PropagationLimit {
10078 type GlibType = ffi::GtkPropagationLimit;
10079
10080 #[inline]
10081 fn into_glib(self) -> ffi::GtkPropagationLimit {
10082 match self {
10083 Self::None => ffi::GTK_LIMIT_NONE,
10084 Self::SameNative => ffi::GTK_LIMIT_SAME_NATIVE,
10085 Self::__Unknown(value) => value,
10086 }
10087 }
10088}
10089
10090#[doc(hidden)]
10091impl FromGlib<ffi::GtkPropagationLimit> for PropagationLimit {
10092 #[inline]
10093 unsafe fn from_glib(value: ffi::GtkPropagationLimit) -> Self {
10094 skip_assert_initialized!();
10095
10096 match value {
10097 ffi::GTK_LIMIT_NONE => Self::None,
10098 ffi::GTK_LIMIT_SAME_NATIVE => Self::SameNative,
10099 value => Self::__Unknown(value),
10100 }
10101 }
10102}
10103
10104impl StaticType for PropagationLimit {
10105 #[inline]
10106 #[doc(alias = "gtk_propagation_limit_get_type")]
10107 fn static_type() -> glib::Type {
10108 unsafe { from_glib(ffi::gtk_propagation_limit_get_type()) }
10109 }
10110}
10111
10112impl glib::HasParamSpec for PropagationLimit {
10113 type ParamSpec = glib::ParamSpecEnum;
10114 type SetValue = Self;
10115 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10116
10117 fn param_spec_builder() -> Self::BuilderFn {
10118 Self::ParamSpec::builder_with_default
10119 }
10120}
10121
10122impl glib::value::ValueType for PropagationLimit {
10123 type Type = Self;
10124}
10125
10126unsafe impl<'a> glib::value::FromValue<'a> for PropagationLimit {
10127 type Checker = glib::value::GenericValueTypeChecker<Self>;
10128
10129 #[inline]
10130 unsafe fn from_value(value: &'a glib::Value) -> Self {
10131 skip_assert_initialized!();
10132 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10133 }
10134}
10135
10136impl ToValue for PropagationLimit {
10137 #[inline]
10138 fn to_value(&self) -> glib::Value {
10139 let mut value = glib::Value::for_value_type::<Self>();
10140 unsafe {
10141 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10142 }
10143 value
10144 }
10145
10146 #[inline]
10147 fn value_type(&self) -> glib::Type {
10148 Self::static_type()
10149 }
10150}
10151
10152impl From<PropagationLimit> for glib::Value {
10153 #[inline]
10154 fn from(v: PropagationLimit) -> Self {
10155 skip_assert_initialized!();
10156 ToValue::to_value(&v)
10157 }
10158}
10159
10160#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10162#[non_exhaustive]
10163#[doc(alias = "GtkPropagationPhase")]
10164pub enum PropagationPhase {
10165 #[doc(alias = "GTK_PHASE_NONE")]
10167 None,
10168 #[doc(alias = "GTK_PHASE_CAPTURE")]
10173 Capture,
10174 #[doc(alias = "GTK_PHASE_BUBBLE")]
10178 Bubble,
10179 #[doc(alias = "GTK_PHASE_TARGET")]
10183 Target,
10184 #[doc(hidden)]
10185 __Unknown(i32),
10186}
10187
10188#[doc(hidden)]
10189impl IntoGlib for PropagationPhase {
10190 type GlibType = ffi::GtkPropagationPhase;
10191
10192 #[inline]
10193 fn into_glib(self) -> ffi::GtkPropagationPhase {
10194 match self {
10195 Self::None => ffi::GTK_PHASE_NONE,
10196 Self::Capture => ffi::GTK_PHASE_CAPTURE,
10197 Self::Bubble => ffi::GTK_PHASE_BUBBLE,
10198 Self::Target => ffi::GTK_PHASE_TARGET,
10199 Self::__Unknown(value) => value,
10200 }
10201 }
10202}
10203
10204#[doc(hidden)]
10205impl FromGlib<ffi::GtkPropagationPhase> for PropagationPhase {
10206 #[inline]
10207 unsafe fn from_glib(value: ffi::GtkPropagationPhase) -> Self {
10208 skip_assert_initialized!();
10209
10210 match value {
10211 ffi::GTK_PHASE_NONE => Self::None,
10212 ffi::GTK_PHASE_CAPTURE => Self::Capture,
10213 ffi::GTK_PHASE_BUBBLE => Self::Bubble,
10214 ffi::GTK_PHASE_TARGET => Self::Target,
10215 value => Self::__Unknown(value),
10216 }
10217 }
10218}
10219
10220impl StaticType for PropagationPhase {
10221 #[inline]
10222 #[doc(alias = "gtk_propagation_phase_get_type")]
10223 fn static_type() -> glib::Type {
10224 unsafe { from_glib(ffi::gtk_propagation_phase_get_type()) }
10225 }
10226}
10227
10228impl glib::HasParamSpec for PropagationPhase {
10229 type ParamSpec = glib::ParamSpecEnum;
10230 type SetValue = Self;
10231 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10232
10233 fn param_spec_builder() -> Self::BuilderFn {
10234 Self::ParamSpec::builder_with_default
10235 }
10236}
10237
10238impl glib::value::ValueType for PropagationPhase {
10239 type Type = Self;
10240}
10241
10242unsafe impl<'a> glib::value::FromValue<'a> for PropagationPhase {
10243 type Checker = glib::value::GenericValueTypeChecker<Self>;
10244
10245 #[inline]
10246 unsafe fn from_value(value: &'a glib::Value) -> Self {
10247 skip_assert_initialized!();
10248 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10249 }
10250}
10251
10252impl ToValue for PropagationPhase {
10253 #[inline]
10254 fn to_value(&self) -> glib::Value {
10255 let mut value = glib::Value::for_value_type::<Self>();
10256 unsafe {
10257 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10258 }
10259 value
10260 }
10261
10262 #[inline]
10263 fn value_type(&self) -> glib::Type {
10264 Self::static_type()
10265 }
10266}
10267
10268impl From<PropagationPhase> for glib::Value {
10269 #[inline]
10270 fn from(v: PropagationPhase) -> Self {
10271 skip_assert_initialized!();
10272 ToValue::to_value(&v)
10273 }
10274}
10275
10276#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10278#[non_exhaustive]
10279#[doc(alias = "GtkRecentManagerError")]
10280pub enum RecentManagerError {
10281 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_FOUND")]
10284 NotFound,
10285 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_URI")]
10287 InvalidUri,
10288 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING")]
10291 InvalidEncoding,
10292 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED")]
10295 NotRegistered,
10296 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_READ")]
10299 Read,
10300 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_WRITE")]
10303 Write,
10304 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_UNKNOWN")]
10306 Unknown,
10307 #[doc(hidden)]
10308 __Unknown(i32),
10309}
10310
10311#[doc(hidden)]
10312impl IntoGlib for RecentManagerError {
10313 type GlibType = ffi::GtkRecentManagerError;
10314
10315 #[inline]
10316 fn into_glib(self) -> ffi::GtkRecentManagerError {
10317 match self {
10318 Self::NotFound => ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND,
10319 Self::InvalidUri => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI,
10320 Self::InvalidEncoding => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING,
10321 Self::NotRegistered => ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED,
10322 Self::Read => ffi::GTK_RECENT_MANAGER_ERROR_READ,
10323 Self::Write => ffi::GTK_RECENT_MANAGER_ERROR_WRITE,
10324 Self::Unknown => ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN,
10325 Self::__Unknown(value) => value,
10326 }
10327 }
10328}
10329
10330#[doc(hidden)]
10331impl FromGlib<ffi::GtkRecentManagerError> for RecentManagerError {
10332 #[inline]
10333 unsafe fn from_glib(value: ffi::GtkRecentManagerError) -> Self {
10334 skip_assert_initialized!();
10335
10336 match value {
10337 ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND => Self::NotFound,
10338 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI => Self::InvalidUri,
10339 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING => Self::InvalidEncoding,
10340 ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED => Self::NotRegistered,
10341 ffi::GTK_RECENT_MANAGER_ERROR_READ => Self::Read,
10342 ffi::GTK_RECENT_MANAGER_ERROR_WRITE => Self::Write,
10343 ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN => Self::Unknown,
10344 value => Self::__Unknown(value),
10345 }
10346 }
10347}
10348
10349impl glib::error::ErrorDomain for RecentManagerError {
10350 #[inline]
10351 fn domain() -> glib::Quark {
10352 skip_assert_initialized!();
10353
10354 unsafe { from_glib(ffi::gtk_recent_manager_error_quark()) }
10355 }
10356
10357 #[inline]
10358 fn code(self) -> i32 {
10359 self.into_glib()
10360 }
10361
10362 #[inline]
10363 #[allow(clippy::match_single_binding)]
10364 fn from(code: i32) -> Option<Self> {
10365 skip_assert_initialized!();
10366 match unsafe { from_glib(code) } {
10367 value => Some(value),
10368 }
10369 }
10370}
10371
10372impl StaticType for RecentManagerError {
10373 #[inline]
10374 #[doc(alias = "gtk_recent_manager_error_get_type")]
10375 fn static_type() -> glib::Type {
10376 unsafe { from_glib(ffi::gtk_recent_manager_error_get_type()) }
10377 }
10378}
10379
10380impl glib::HasParamSpec for RecentManagerError {
10381 type ParamSpec = glib::ParamSpecEnum;
10382 type SetValue = Self;
10383 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10384
10385 fn param_spec_builder() -> Self::BuilderFn {
10386 Self::ParamSpec::builder_with_default
10387 }
10388}
10389
10390impl glib::value::ValueType for RecentManagerError {
10391 type Type = Self;
10392}
10393
10394unsafe impl<'a> glib::value::FromValue<'a> for RecentManagerError {
10395 type Checker = glib::value::GenericValueTypeChecker<Self>;
10396
10397 #[inline]
10398 unsafe fn from_value(value: &'a glib::Value) -> Self {
10399 skip_assert_initialized!();
10400 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10401 }
10402}
10403
10404impl ToValue for RecentManagerError {
10405 #[inline]
10406 fn to_value(&self) -> glib::Value {
10407 let mut value = glib::Value::for_value_type::<Self>();
10408 unsafe {
10409 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10410 }
10411 value
10412 }
10413
10414 #[inline]
10415 fn value_type(&self) -> glib::Type {
10416 Self::static_type()
10417 }
10418}
10419
10420impl From<RecentManagerError> for glib::Value {
10421 #[inline]
10422 fn from(v: RecentManagerError) -> Self {
10423 skip_assert_initialized!();
10424 ToValue::to_value(&v)
10425 }
10426}
10427
10428#[cfg(feature = "v4_22")]
10434#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10435#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10436#[non_exhaustive]
10437#[doc(alias = "GtkReducedMotion")]
10438pub enum ReducedMotion {
10439 #[doc(alias = "GTK_REDUCED_MOTION_NO_PREFERENCE")]
10441 NoPreference,
10442 #[doc(alias = "GTK_REDUCED_MOTION_REDUCE")]
10447 Reduce,
10448 #[doc(hidden)]
10449 __Unknown(i32),
10450}
10451
10452#[cfg(feature = "v4_22")]
10453#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10454#[doc(hidden)]
10455impl IntoGlib for ReducedMotion {
10456 type GlibType = ffi::GtkReducedMotion;
10457
10458 #[inline]
10459 fn into_glib(self) -> ffi::GtkReducedMotion {
10460 match self {
10461 Self::NoPreference => ffi::GTK_REDUCED_MOTION_NO_PREFERENCE,
10462 Self::Reduce => ffi::GTK_REDUCED_MOTION_REDUCE,
10463 Self::__Unknown(value) => value,
10464 }
10465 }
10466}
10467
10468#[cfg(feature = "v4_22")]
10469#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10470#[doc(hidden)]
10471impl FromGlib<ffi::GtkReducedMotion> for ReducedMotion {
10472 #[inline]
10473 unsafe fn from_glib(value: ffi::GtkReducedMotion) -> Self {
10474 skip_assert_initialized!();
10475
10476 match value {
10477 ffi::GTK_REDUCED_MOTION_NO_PREFERENCE => Self::NoPreference,
10478 ffi::GTK_REDUCED_MOTION_REDUCE => Self::Reduce,
10479 value => Self::__Unknown(value),
10480 }
10481 }
10482}
10483
10484#[cfg(feature = "v4_22")]
10485#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10486impl StaticType for ReducedMotion {
10487 #[inline]
10488 #[doc(alias = "gtk_reduced_motion_get_type")]
10489 fn static_type() -> glib::Type {
10490 unsafe { from_glib(ffi::gtk_reduced_motion_get_type()) }
10491 }
10492}
10493
10494#[cfg(feature = "v4_22")]
10495#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10496impl glib::HasParamSpec for ReducedMotion {
10497 type ParamSpec = glib::ParamSpecEnum;
10498 type SetValue = Self;
10499 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10500
10501 fn param_spec_builder() -> Self::BuilderFn {
10502 Self::ParamSpec::builder_with_default
10503 }
10504}
10505
10506#[cfg(feature = "v4_22")]
10507#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10508impl glib::value::ValueType for ReducedMotion {
10509 type Type = Self;
10510}
10511
10512#[cfg(feature = "v4_22")]
10513#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10514unsafe impl<'a> glib::value::FromValue<'a> for ReducedMotion {
10515 type Checker = glib::value::GenericValueTypeChecker<Self>;
10516
10517 #[inline]
10518 unsafe fn from_value(value: &'a glib::Value) -> Self {
10519 skip_assert_initialized!();
10520 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10521 }
10522}
10523
10524#[cfg(feature = "v4_22")]
10525#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10526impl ToValue for ReducedMotion {
10527 #[inline]
10528 fn to_value(&self) -> glib::Value {
10529 let mut value = glib::Value::for_value_type::<Self>();
10530 unsafe {
10531 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10532 }
10533 value
10534 }
10535
10536 #[inline]
10537 fn value_type(&self) -> glib::Type {
10538 Self::static_type()
10539 }
10540}
10541
10542#[cfg(feature = "v4_22")]
10543#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10544impl From<ReducedMotion> for glib::Value {
10545 #[inline]
10546 fn from(v: ReducedMotion) -> Self {
10547 skip_assert_initialized!();
10548 ToValue::to_value(&v)
10549 }
10550}
10551
10552#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10555#[non_exhaustive]
10556#[doc(alias = "GtkRevealerTransitionType")]
10557pub enum RevealerTransitionType {
10558 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_NONE")]
10560 None,
10561 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_CROSSFADE")]
10563 Crossfade,
10564 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT")]
10566 SlideRight,
10567 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT")]
10569 SlideLeft,
10570 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP")]
10572 SlideUp,
10573 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN")]
10575 SlideDown,
10576 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT")]
10578 SwingRight,
10579 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT")]
10581 SwingLeft,
10582 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_UP")]
10584 SwingUp,
10585 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN")]
10587 SwingDown,
10588 #[cfg(feature = "v4_22")]
10591 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10592 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT")]
10593 FadeSlideRight,
10594 #[cfg(feature = "v4_22")]
10597 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10598 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT")]
10599 FadeSlideLeft,
10600 #[cfg(feature = "v4_22")]
10603 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10604 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP")]
10605 FadeSlideUp,
10606 #[cfg(feature = "v4_22")]
10609 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10610 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN")]
10611 FadeSlideDown,
10612 #[doc(hidden)]
10613 __Unknown(i32),
10614}
10615
10616#[doc(hidden)]
10617impl IntoGlib for RevealerTransitionType {
10618 type GlibType = ffi::GtkRevealerTransitionType;
10619
10620 fn into_glib(self) -> ffi::GtkRevealerTransitionType {
10621 match self {
10622 Self::None => ffi::GTK_REVEALER_TRANSITION_TYPE_NONE,
10623 Self::Crossfade => ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE,
10624 Self::SlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT,
10625 Self::SlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT,
10626 Self::SlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP,
10627 Self::SlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN,
10628 Self::SwingRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT,
10629 Self::SwingLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT,
10630 Self::SwingUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP,
10631 Self::SwingDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN,
10632 #[cfg(feature = "v4_22")]
10633 Self::FadeSlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT,
10634 #[cfg(feature = "v4_22")]
10635 Self::FadeSlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT,
10636 #[cfg(feature = "v4_22")]
10637 Self::FadeSlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP,
10638 #[cfg(feature = "v4_22")]
10639 Self::FadeSlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN,
10640 Self::__Unknown(value) => value,
10641 }
10642 }
10643}
10644
10645#[doc(hidden)]
10646impl FromGlib<ffi::GtkRevealerTransitionType> for RevealerTransitionType {
10647 unsafe fn from_glib(value: ffi::GtkRevealerTransitionType) -> Self {
10648 skip_assert_initialized!();
10649
10650 match value {
10651 ffi::GTK_REVEALER_TRANSITION_TYPE_NONE => Self::None,
10652 ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
10653 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
10654 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
10655 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
10656 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
10657 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT => Self::SwingRight,
10658 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT => Self::SwingLeft,
10659 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP => Self::SwingUp,
10660 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN => Self::SwingDown,
10661 #[cfg(feature = "v4_22")]
10662 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT => Self::FadeSlideRight,
10663 #[cfg(feature = "v4_22")]
10664 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT => Self::FadeSlideLeft,
10665 #[cfg(feature = "v4_22")]
10666 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP => Self::FadeSlideUp,
10667 #[cfg(feature = "v4_22")]
10668 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN => Self::FadeSlideDown,
10669 value => Self::__Unknown(value),
10670 }
10671 }
10672}
10673
10674impl StaticType for RevealerTransitionType {
10675 #[inline]
10676 #[doc(alias = "gtk_revealer_transition_type_get_type")]
10677 fn static_type() -> glib::Type {
10678 unsafe { from_glib(ffi::gtk_revealer_transition_type_get_type()) }
10679 }
10680}
10681
10682impl glib::HasParamSpec for RevealerTransitionType {
10683 type ParamSpec = glib::ParamSpecEnum;
10684 type SetValue = Self;
10685 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10686
10687 fn param_spec_builder() -> Self::BuilderFn {
10688 Self::ParamSpec::builder_with_default
10689 }
10690}
10691
10692impl glib::value::ValueType for RevealerTransitionType {
10693 type Type = Self;
10694}
10695
10696unsafe impl<'a> glib::value::FromValue<'a> for RevealerTransitionType {
10697 type Checker = glib::value::GenericValueTypeChecker<Self>;
10698
10699 #[inline]
10700 unsafe fn from_value(value: &'a glib::Value) -> Self {
10701 skip_assert_initialized!();
10702 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10703 }
10704}
10705
10706impl ToValue for RevealerTransitionType {
10707 #[inline]
10708 fn to_value(&self) -> glib::Value {
10709 let mut value = glib::Value::for_value_type::<Self>();
10710 unsafe {
10711 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10712 }
10713 value
10714 }
10715
10716 #[inline]
10717 fn value_type(&self) -> glib::Type {
10718 Self::static_type()
10719 }
10720}
10721
10722impl From<RevealerTransitionType> for glib::Value {
10723 #[inline]
10724 fn from(v: RevealerTransitionType) -> Self {
10725 skip_assert_initialized!();
10726 ToValue::to_value(&v)
10727 }
10728}
10729
10730#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10732#[non_exhaustive]
10733#[doc(alias = "GtkScrollStep")]
10734pub enum ScrollStep {
10735 #[doc(alias = "GTK_SCROLL_STEPS")]
10737 Steps,
10738 #[doc(alias = "GTK_SCROLL_PAGES")]
10740 Pages,
10741 #[doc(alias = "GTK_SCROLL_ENDS")]
10743 Ends,
10744 #[doc(alias = "GTK_SCROLL_HORIZONTAL_STEPS")]
10746 HorizontalSteps,
10747 #[doc(alias = "GTK_SCROLL_HORIZONTAL_PAGES")]
10749 HorizontalPages,
10750 #[doc(alias = "GTK_SCROLL_HORIZONTAL_ENDS")]
10752 HorizontalEnds,
10753 #[doc(hidden)]
10754 __Unknown(i32),
10755}
10756
10757#[doc(hidden)]
10758impl IntoGlib for ScrollStep {
10759 type GlibType = ffi::GtkScrollStep;
10760
10761 #[inline]
10762 fn into_glib(self) -> ffi::GtkScrollStep {
10763 match self {
10764 Self::Steps => ffi::GTK_SCROLL_STEPS,
10765 Self::Pages => ffi::GTK_SCROLL_PAGES,
10766 Self::Ends => ffi::GTK_SCROLL_ENDS,
10767 Self::HorizontalSteps => ffi::GTK_SCROLL_HORIZONTAL_STEPS,
10768 Self::HorizontalPages => ffi::GTK_SCROLL_HORIZONTAL_PAGES,
10769 Self::HorizontalEnds => ffi::GTK_SCROLL_HORIZONTAL_ENDS,
10770 Self::__Unknown(value) => value,
10771 }
10772 }
10773}
10774
10775#[doc(hidden)]
10776impl FromGlib<ffi::GtkScrollStep> for ScrollStep {
10777 #[inline]
10778 unsafe fn from_glib(value: ffi::GtkScrollStep) -> Self {
10779 skip_assert_initialized!();
10780
10781 match value {
10782 ffi::GTK_SCROLL_STEPS => Self::Steps,
10783 ffi::GTK_SCROLL_PAGES => Self::Pages,
10784 ffi::GTK_SCROLL_ENDS => Self::Ends,
10785 ffi::GTK_SCROLL_HORIZONTAL_STEPS => Self::HorizontalSteps,
10786 ffi::GTK_SCROLL_HORIZONTAL_PAGES => Self::HorizontalPages,
10787 ffi::GTK_SCROLL_HORIZONTAL_ENDS => Self::HorizontalEnds,
10788 value => Self::__Unknown(value),
10789 }
10790 }
10791}
10792
10793impl StaticType for ScrollStep {
10794 #[inline]
10795 #[doc(alias = "gtk_scroll_step_get_type")]
10796 fn static_type() -> glib::Type {
10797 unsafe { from_glib(ffi::gtk_scroll_step_get_type()) }
10798 }
10799}
10800
10801impl glib::HasParamSpec for ScrollStep {
10802 type ParamSpec = glib::ParamSpecEnum;
10803 type SetValue = Self;
10804 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10805
10806 fn param_spec_builder() -> Self::BuilderFn {
10807 Self::ParamSpec::builder_with_default
10808 }
10809}
10810
10811impl glib::value::ValueType for ScrollStep {
10812 type Type = Self;
10813}
10814
10815unsafe impl<'a> glib::value::FromValue<'a> for ScrollStep {
10816 type Checker = glib::value::GenericValueTypeChecker<Self>;
10817
10818 #[inline]
10819 unsafe fn from_value(value: &'a glib::Value) -> Self {
10820 skip_assert_initialized!();
10821 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10822 }
10823}
10824
10825impl ToValue for ScrollStep {
10826 #[inline]
10827 fn to_value(&self) -> glib::Value {
10828 let mut value = glib::Value::for_value_type::<Self>();
10829 unsafe {
10830 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10831 }
10832 value
10833 }
10834
10835 #[inline]
10836 fn value_type(&self) -> glib::Type {
10837 Self::static_type()
10838 }
10839}
10840
10841impl From<ScrollStep> for glib::Value {
10842 #[inline]
10843 fn from(v: ScrollStep) -> Self {
10844 skip_assert_initialized!();
10845 ToValue::to_value(&v)
10846 }
10847}
10848
10849#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10851#[non_exhaustive]
10852#[doc(alias = "GtkScrollType")]
10853pub enum ScrollType {
10854 #[doc(alias = "GTK_SCROLL_NONE")]
10856 None,
10857 #[doc(alias = "GTK_SCROLL_JUMP")]
10859 Jump,
10860 #[doc(alias = "GTK_SCROLL_STEP_BACKWARD")]
10862 StepBackward,
10863 #[doc(alias = "GTK_SCROLL_STEP_FORWARD")]
10865 StepForward,
10866 #[doc(alias = "GTK_SCROLL_PAGE_BACKWARD")]
10868 PageBackward,
10869 #[doc(alias = "GTK_SCROLL_PAGE_FORWARD")]
10871 PageForward,
10872 #[doc(alias = "GTK_SCROLL_STEP_UP")]
10874 StepUp,
10875 #[doc(alias = "GTK_SCROLL_STEP_DOWN")]
10877 StepDown,
10878 #[doc(alias = "GTK_SCROLL_PAGE_UP")]
10880 PageUp,
10881 #[doc(alias = "GTK_SCROLL_PAGE_DOWN")]
10883 PageDown,
10884 #[doc(alias = "GTK_SCROLL_STEP_LEFT")]
10886 StepLeft,
10887 #[doc(alias = "GTK_SCROLL_STEP_RIGHT")]
10889 StepRight,
10890 #[doc(alias = "GTK_SCROLL_PAGE_LEFT")]
10892 PageLeft,
10893 #[doc(alias = "GTK_SCROLL_PAGE_RIGHT")]
10895 PageRight,
10896 #[doc(alias = "GTK_SCROLL_START")]
10898 Start,
10899 #[doc(alias = "GTK_SCROLL_END")]
10901 End,
10902 #[doc(hidden)]
10903 __Unknown(i32),
10904}
10905
10906#[doc(hidden)]
10907impl IntoGlib for ScrollType {
10908 type GlibType = ffi::GtkScrollType;
10909
10910 fn into_glib(self) -> ffi::GtkScrollType {
10911 match self {
10912 Self::None => ffi::GTK_SCROLL_NONE,
10913 Self::Jump => ffi::GTK_SCROLL_JUMP,
10914 Self::StepBackward => ffi::GTK_SCROLL_STEP_BACKWARD,
10915 Self::StepForward => ffi::GTK_SCROLL_STEP_FORWARD,
10916 Self::PageBackward => ffi::GTK_SCROLL_PAGE_BACKWARD,
10917 Self::PageForward => ffi::GTK_SCROLL_PAGE_FORWARD,
10918 Self::StepUp => ffi::GTK_SCROLL_STEP_UP,
10919 Self::StepDown => ffi::GTK_SCROLL_STEP_DOWN,
10920 Self::PageUp => ffi::GTK_SCROLL_PAGE_UP,
10921 Self::PageDown => ffi::GTK_SCROLL_PAGE_DOWN,
10922 Self::StepLeft => ffi::GTK_SCROLL_STEP_LEFT,
10923 Self::StepRight => ffi::GTK_SCROLL_STEP_RIGHT,
10924 Self::PageLeft => ffi::GTK_SCROLL_PAGE_LEFT,
10925 Self::PageRight => ffi::GTK_SCROLL_PAGE_RIGHT,
10926 Self::Start => ffi::GTK_SCROLL_START,
10927 Self::End => ffi::GTK_SCROLL_END,
10928 Self::__Unknown(value) => value,
10929 }
10930 }
10931}
10932
10933#[doc(hidden)]
10934impl FromGlib<ffi::GtkScrollType> for ScrollType {
10935 unsafe fn from_glib(value: ffi::GtkScrollType) -> Self {
10936 skip_assert_initialized!();
10937
10938 match value {
10939 ffi::GTK_SCROLL_NONE => Self::None,
10940 ffi::GTK_SCROLL_JUMP => Self::Jump,
10941 ffi::GTK_SCROLL_STEP_BACKWARD => Self::StepBackward,
10942 ffi::GTK_SCROLL_STEP_FORWARD => Self::StepForward,
10943 ffi::GTK_SCROLL_PAGE_BACKWARD => Self::PageBackward,
10944 ffi::GTK_SCROLL_PAGE_FORWARD => Self::PageForward,
10945 ffi::GTK_SCROLL_STEP_UP => Self::StepUp,
10946 ffi::GTK_SCROLL_STEP_DOWN => Self::StepDown,
10947 ffi::GTK_SCROLL_PAGE_UP => Self::PageUp,
10948 ffi::GTK_SCROLL_PAGE_DOWN => Self::PageDown,
10949 ffi::GTK_SCROLL_STEP_LEFT => Self::StepLeft,
10950 ffi::GTK_SCROLL_STEP_RIGHT => Self::StepRight,
10951 ffi::GTK_SCROLL_PAGE_LEFT => Self::PageLeft,
10952 ffi::GTK_SCROLL_PAGE_RIGHT => Self::PageRight,
10953 ffi::GTK_SCROLL_START => Self::Start,
10954 ffi::GTK_SCROLL_END => Self::End,
10955 value => Self::__Unknown(value),
10956 }
10957 }
10958}
10959
10960impl StaticType for ScrollType {
10961 #[inline]
10962 #[doc(alias = "gtk_scroll_type_get_type")]
10963 fn static_type() -> glib::Type {
10964 unsafe { from_glib(ffi::gtk_scroll_type_get_type()) }
10965 }
10966}
10967
10968impl glib::HasParamSpec for ScrollType {
10969 type ParamSpec = glib::ParamSpecEnum;
10970 type SetValue = Self;
10971 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10972
10973 fn param_spec_builder() -> Self::BuilderFn {
10974 Self::ParamSpec::builder_with_default
10975 }
10976}
10977
10978impl glib::value::ValueType for ScrollType {
10979 type Type = Self;
10980}
10981
10982unsafe impl<'a> glib::value::FromValue<'a> for ScrollType {
10983 type Checker = glib::value::GenericValueTypeChecker<Self>;
10984
10985 #[inline]
10986 unsafe fn from_value(value: &'a glib::Value) -> Self {
10987 skip_assert_initialized!();
10988 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10989 }
10990}
10991
10992impl ToValue for ScrollType {
10993 #[inline]
10994 fn to_value(&self) -> glib::Value {
10995 let mut value = glib::Value::for_value_type::<Self>();
10996 unsafe {
10997 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10998 }
10999 value
11000 }
11001
11002 #[inline]
11003 fn value_type(&self) -> glib::Type {
11004 Self::static_type()
11005 }
11006}
11007
11008impl From<ScrollType> for glib::Value {
11009 #[inline]
11010 fn from(v: ScrollType) -> Self {
11011 skip_assert_initialized!();
11012 ToValue::to_value(&v)
11013 }
11014}
11015
11016#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11019#[non_exhaustive]
11020#[doc(alias = "GtkScrollablePolicy")]
11021pub enum ScrollablePolicy {
11022 #[doc(alias = "GTK_SCROLL_MINIMUM")]
11024 Minimum,
11025 #[doc(alias = "GTK_SCROLL_NATURAL")]
11027 Natural,
11028 #[doc(hidden)]
11029 __Unknown(i32),
11030}
11031
11032#[doc(hidden)]
11033impl IntoGlib for ScrollablePolicy {
11034 type GlibType = ffi::GtkScrollablePolicy;
11035
11036 #[inline]
11037 fn into_glib(self) -> ffi::GtkScrollablePolicy {
11038 match self {
11039 Self::Minimum => ffi::GTK_SCROLL_MINIMUM,
11040 Self::Natural => ffi::GTK_SCROLL_NATURAL,
11041 Self::__Unknown(value) => value,
11042 }
11043 }
11044}
11045
11046#[doc(hidden)]
11047impl FromGlib<ffi::GtkScrollablePolicy> for ScrollablePolicy {
11048 #[inline]
11049 unsafe fn from_glib(value: ffi::GtkScrollablePolicy) -> Self {
11050 skip_assert_initialized!();
11051
11052 match value {
11053 ffi::GTK_SCROLL_MINIMUM => Self::Minimum,
11054 ffi::GTK_SCROLL_NATURAL => Self::Natural,
11055 value => Self::__Unknown(value),
11056 }
11057 }
11058}
11059
11060impl StaticType for ScrollablePolicy {
11061 #[inline]
11062 #[doc(alias = "gtk_scrollable_policy_get_type")]
11063 fn static_type() -> glib::Type {
11064 unsafe { from_glib(ffi::gtk_scrollable_policy_get_type()) }
11065 }
11066}
11067
11068impl glib::HasParamSpec for ScrollablePolicy {
11069 type ParamSpec = glib::ParamSpecEnum;
11070 type SetValue = Self;
11071 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11072
11073 fn param_spec_builder() -> Self::BuilderFn {
11074 Self::ParamSpec::builder_with_default
11075 }
11076}
11077
11078impl glib::value::ValueType for ScrollablePolicy {
11079 type Type = Self;
11080}
11081
11082unsafe impl<'a> glib::value::FromValue<'a> for ScrollablePolicy {
11083 type Checker = glib::value::GenericValueTypeChecker<Self>;
11084
11085 #[inline]
11086 unsafe fn from_value(value: &'a glib::Value) -> Self {
11087 skip_assert_initialized!();
11088 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11089 }
11090}
11091
11092impl ToValue for ScrollablePolicy {
11093 #[inline]
11094 fn to_value(&self) -> glib::Value {
11095 let mut value = glib::Value::for_value_type::<Self>();
11096 unsafe {
11097 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11098 }
11099 value
11100 }
11101
11102 #[inline]
11103 fn value_type(&self) -> glib::Type {
11104 Self::static_type()
11105 }
11106}
11107
11108impl From<ScrollablePolicy> for glib::Value {
11109 #[inline]
11110 fn from(v: ScrollablePolicy) -> Self {
11111 skip_assert_initialized!();
11112 ToValue::to_value(&v)
11113 }
11114}
11115
11116#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11118#[non_exhaustive]
11119#[doc(alias = "GtkSelectionMode")]
11120pub enum SelectionMode {
11121 #[doc(alias = "GTK_SELECTION_NONE")]
11123 None,
11124 #[doc(alias = "GTK_SELECTION_SINGLE")]
11126 Single,
11127 #[doc(alias = "GTK_SELECTION_BROWSE")]
11134 Browse,
11135 #[doc(alias = "GTK_SELECTION_MULTIPLE")]
11140 Multiple,
11141 #[doc(hidden)]
11142 __Unknown(i32),
11143}
11144
11145#[doc(hidden)]
11146impl IntoGlib for SelectionMode {
11147 type GlibType = ffi::GtkSelectionMode;
11148
11149 #[inline]
11150 fn into_glib(self) -> ffi::GtkSelectionMode {
11151 match self {
11152 Self::None => ffi::GTK_SELECTION_NONE,
11153 Self::Single => ffi::GTK_SELECTION_SINGLE,
11154 Self::Browse => ffi::GTK_SELECTION_BROWSE,
11155 Self::Multiple => ffi::GTK_SELECTION_MULTIPLE,
11156 Self::__Unknown(value) => value,
11157 }
11158 }
11159}
11160
11161#[doc(hidden)]
11162impl FromGlib<ffi::GtkSelectionMode> for SelectionMode {
11163 #[inline]
11164 unsafe fn from_glib(value: ffi::GtkSelectionMode) -> Self {
11165 skip_assert_initialized!();
11166
11167 match value {
11168 ffi::GTK_SELECTION_NONE => Self::None,
11169 ffi::GTK_SELECTION_SINGLE => Self::Single,
11170 ffi::GTK_SELECTION_BROWSE => Self::Browse,
11171 ffi::GTK_SELECTION_MULTIPLE => Self::Multiple,
11172 value => Self::__Unknown(value),
11173 }
11174 }
11175}
11176
11177impl StaticType for SelectionMode {
11178 #[inline]
11179 #[doc(alias = "gtk_selection_mode_get_type")]
11180 fn static_type() -> glib::Type {
11181 unsafe { from_glib(ffi::gtk_selection_mode_get_type()) }
11182 }
11183}
11184
11185impl glib::HasParamSpec for SelectionMode {
11186 type ParamSpec = glib::ParamSpecEnum;
11187 type SetValue = Self;
11188 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11189
11190 fn param_spec_builder() -> Self::BuilderFn {
11191 Self::ParamSpec::builder_with_default
11192 }
11193}
11194
11195impl glib::value::ValueType for SelectionMode {
11196 type Type = Self;
11197}
11198
11199unsafe impl<'a> glib::value::FromValue<'a> for SelectionMode {
11200 type Checker = glib::value::GenericValueTypeChecker<Self>;
11201
11202 #[inline]
11203 unsafe fn from_value(value: &'a glib::Value) -> Self {
11204 skip_assert_initialized!();
11205 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11206 }
11207}
11208
11209impl ToValue for SelectionMode {
11210 #[inline]
11211 fn to_value(&self) -> glib::Value {
11212 let mut value = glib::Value::for_value_type::<Self>();
11213 unsafe {
11214 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11215 }
11216 value
11217 }
11218
11219 #[inline]
11220 fn value_type(&self) -> glib::Type {
11221 Self::static_type()
11222 }
11223}
11224
11225impl From<SelectionMode> for glib::Value {
11226 #[inline]
11227 fn from(v: SelectionMode) -> Self {
11228 skip_assert_initialized!();
11229 ToValue::to_value(&v)
11230 }
11231}
11232
11233#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11236#[non_exhaustive]
11237#[doc(alias = "GtkSensitivityType")]
11238pub enum SensitivityType {
11239 #[doc(alias = "GTK_SENSITIVITY_AUTO")]
11242 Auto,
11243 #[doc(alias = "GTK_SENSITIVITY_ON")]
11245 On,
11246 #[doc(alias = "GTK_SENSITIVITY_OFF")]
11248 Off,
11249 #[doc(hidden)]
11250 __Unknown(i32),
11251}
11252
11253#[doc(hidden)]
11254impl IntoGlib for SensitivityType {
11255 type GlibType = ffi::GtkSensitivityType;
11256
11257 #[inline]
11258 fn into_glib(self) -> ffi::GtkSensitivityType {
11259 match self {
11260 Self::Auto => ffi::GTK_SENSITIVITY_AUTO,
11261 Self::On => ffi::GTK_SENSITIVITY_ON,
11262 Self::Off => ffi::GTK_SENSITIVITY_OFF,
11263 Self::__Unknown(value) => value,
11264 }
11265 }
11266}
11267
11268#[doc(hidden)]
11269impl FromGlib<ffi::GtkSensitivityType> for SensitivityType {
11270 #[inline]
11271 unsafe fn from_glib(value: ffi::GtkSensitivityType) -> Self {
11272 skip_assert_initialized!();
11273
11274 match value {
11275 ffi::GTK_SENSITIVITY_AUTO => Self::Auto,
11276 ffi::GTK_SENSITIVITY_ON => Self::On,
11277 ffi::GTK_SENSITIVITY_OFF => Self::Off,
11278 value => Self::__Unknown(value),
11279 }
11280 }
11281}
11282
11283impl StaticType for SensitivityType {
11284 #[inline]
11285 #[doc(alias = "gtk_sensitivity_type_get_type")]
11286 fn static_type() -> glib::Type {
11287 unsafe { from_glib(ffi::gtk_sensitivity_type_get_type()) }
11288 }
11289}
11290
11291impl glib::HasParamSpec for SensitivityType {
11292 type ParamSpec = glib::ParamSpecEnum;
11293 type SetValue = Self;
11294 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11295
11296 fn param_spec_builder() -> Self::BuilderFn {
11297 Self::ParamSpec::builder_with_default
11298 }
11299}
11300
11301impl glib::value::ValueType for SensitivityType {
11302 type Type = Self;
11303}
11304
11305unsafe impl<'a> glib::value::FromValue<'a> for SensitivityType {
11306 type Checker = glib::value::GenericValueTypeChecker<Self>;
11307
11308 #[inline]
11309 unsafe fn from_value(value: &'a glib::Value) -> Self {
11310 skip_assert_initialized!();
11311 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11312 }
11313}
11314
11315impl ToValue for SensitivityType {
11316 #[inline]
11317 fn to_value(&self) -> glib::Value {
11318 let mut value = glib::Value::for_value_type::<Self>();
11319 unsafe {
11320 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11321 }
11322 value
11323 }
11324
11325 #[inline]
11326 fn value_type(&self) -> glib::Type {
11327 Self::static_type()
11328 }
11329}
11330
11331impl From<SensitivityType> for glib::Value {
11332 #[inline]
11333 fn from(v: SensitivityType) -> Self {
11334 skip_assert_initialized!();
11335 ToValue::to_value(&v)
11336 }
11337}
11338
11339#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11342#[non_exhaustive]
11343#[doc(alias = "GtkShortcutScope")]
11344pub enum ShortcutScope {
11345 #[doc(alias = "GTK_SHORTCUT_SCOPE_LOCAL")]
11348 Local,
11349 #[doc(alias = "GTK_SHORTCUT_SCOPE_MANAGED")]
11352 Managed,
11353 #[doc(alias = "GTK_SHORTCUT_SCOPE_GLOBAL")]
11356 Global,
11357 #[doc(hidden)]
11358 __Unknown(i32),
11359}
11360
11361#[doc(hidden)]
11362impl IntoGlib for ShortcutScope {
11363 type GlibType = ffi::GtkShortcutScope;
11364
11365 #[inline]
11366 fn into_glib(self) -> ffi::GtkShortcutScope {
11367 match self {
11368 Self::Local => ffi::GTK_SHORTCUT_SCOPE_LOCAL,
11369 Self::Managed => ffi::GTK_SHORTCUT_SCOPE_MANAGED,
11370 Self::Global => ffi::GTK_SHORTCUT_SCOPE_GLOBAL,
11371 Self::__Unknown(value) => value,
11372 }
11373 }
11374}
11375
11376#[doc(hidden)]
11377impl FromGlib<ffi::GtkShortcutScope> for ShortcutScope {
11378 #[inline]
11379 unsafe fn from_glib(value: ffi::GtkShortcutScope) -> Self {
11380 skip_assert_initialized!();
11381
11382 match value {
11383 ffi::GTK_SHORTCUT_SCOPE_LOCAL => Self::Local,
11384 ffi::GTK_SHORTCUT_SCOPE_MANAGED => Self::Managed,
11385 ffi::GTK_SHORTCUT_SCOPE_GLOBAL => Self::Global,
11386 value => Self::__Unknown(value),
11387 }
11388 }
11389}
11390
11391impl StaticType for ShortcutScope {
11392 #[inline]
11393 #[doc(alias = "gtk_shortcut_scope_get_type")]
11394 fn static_type() -> glib::Type {
11395 unsafe { from_glib(ffi::gtk_shortcut_scope_get_type()) }
11396 }
11397}
11398
11399impl glib::HasParamSpec for ShortcutScope {
11400 type ParamSpec = glib::ParamSpecEnum;
11401 type SetValue = Self;
11402 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11403
11404 fn param_spec_builder() -> Self::BuilderFn {
11405 Self::ParamSpec::builder_with_default
11406 }
11407}
11408
11409impl glib::value::ValueType for ShortcutScope {
11410 type Type = Self;
11411}
11412
11413unsafe impl<'a> glib::value::FromValue<'a> for ShortcutScope {
11414 type Checker = glib::value::GenericValueTypeChecker<Self>;
11415
11416 #[inline]
11417 unsafe fn from_value(value: &'a glib::Value) -> Self {
11418 skip_assert_initialized!();
11419 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11420 }
11421}
11422
11423impl ToValue for ShortcutScope {
11424 #[inline]
11425 fn to_value(&self) -> glib::Value {
11426 let mut value = glib::Value::for_value_type::<Self>();
11427 unsafe {
11428 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11429 }
11430 value
11431 }
11432
11433 #[inline]
11434 fn value_type(&self) -> glib::Type {
11435 Self::static_type()
11436 }
11437}
11438
11439impl From<ShortcutScope> for glib::Value {
11440 #[inline]
11441 fn from(v: ShortcutScope) -> Self {
11442 skip_assert_initialized!();
11443 ToValue::to_value(&v)
11444 }
11445}
11446
11447#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11451#[non_exhaustive]
11452#[doc(alias = "GtkShortcutType")]
11453pub enum ShortcutType {
11454 #[doc(alias = "GTK_SHORTCUT_ACCELERATOR")]
11457 Accelerator,
11458 #[doc(alias = "GTK_SHORTCUT_GESTURE_PINCH")]
11460 GesturePinch,
11461 #[doc(alias = "GTK_SHORTCUT_GESTURE_STRETCH")]
11463 GestureStretch,
11464 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE")]
11466 GestureRotateClockwise,
11467 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE")]
11469 GestureRotateCounterclockwise,
11470 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT")]
11472 GestureTwoFingerSwipeLeft,
11473 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT")]
11475 GestureTwoFingerSwipeRight,
11476 #[doc(alias = "GTK_SHORTCUT_GESTURE")]
11479 Gesture,
11480 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_LEFT")]
11482 GestureSwipeLeft,
11483 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_RIGHT")]
11485 GestureSwipeRight,
11486 #[doc(hidden)]
11487 __Unknown(i32),
11488}
11489
11490#[doc(hidden)]
11491impl IntoGlib for ShortcutType {
11492 type GlibType = ffi::GtkShortcutType;
11493
11494 #[inline]
11495 fn into_glib(self) -> ffi::GtkShortcutType {
11496 match self {
11497 Self::Accelerator => ffi::GTK_SHORTCUT_ACCELERATOR,
11498 Self::GesturePinch => ffi::GTK_SHORTCUT_GESTURE_PINCH,
11499 Self::GestureStretch => ffi::GTK_SHORTCUT_GESTURE_STRETCH,
11500 Self::GestureRotateClockwise => ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE,
11501 Self::GestureRotateCounterclockwise => {
11502 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE
11503 }
11504 Self::GestureTwoFingerSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT,
11505 Self::GestureTwoFingerSwipeRight => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT,
11506 Self::Gesture => ffi::GTK_SHORTCUT_GESTURE,
11507 Self::GestureSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT,
11508 Self::GestureSwipeRight => ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT,
11509 Self::__Unknown(value) => value,
11510 }
11511 }
11512}
11513
11514#[doc(hidden)]
11515impl FromGlib<ffi::GtkShortcutType> for ShortcutType {
11516 #[inline]
11517 unsafe fn from_glib(value: ffi::GtkShortcutType) -> Self {
11518 skip_assert_initialized!();
11519
11520 match value {
11521 ffi::GTK_SHORTCUT_ACCELERATOR => Self::Accelerator,
11522 ffi::GTK_SHORTCUT_GESTURE_PINCH => Self::GesturePinch,
11523 ffi::GTK_SHORTCUT_GESTURE_STRETCH => Self::GestureStretch,
11524 ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE => Self::GestureRotateClockwise,
11525 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE => {
11526 Self::GestureRotateCounterclockwise
11527 }
11528 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT => Self::GestureTwoFingerSwipeLeft,
11529 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT => Self::GestureTwoFingerSwipeRight,
11530 ffi::GTK_SHORTCUT_GESTURE => Self::Gesture,
11531 ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT => Self::GestureSwipeLeft,
11532 ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT => Self::GestureSwipeRight,
11533 value => Self::__Unknown(value),
11534 }
11535 }
11536}
11537
11538impl StaticType for ShortcutType {
11539 #[inline]
11540 #[doc(alias = "gtk_shortcut_type_get_type")]
11541 fn static_type() -> glib::Type {
11542 unsafe { from_glib(ffi::gtk_shortcut_type_get_type()) }
11543 }
11544}
11545
11546impl glib::HasParamSpec for ShortcutType {
11547 type ParamSpec = glib::ParamSpecEnum;
11548 type SetValue = Self;
11549 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11550
11551 fn param_spec_builder() -> Self::BuilderFn {
11552 Self::ParamSpec::builder_with_default
11553 }
11554}
11555
11556impl glib::value::ValueType for ShortcutType {
11557 type Type = Self;
11558}
11559
11560unsafe impl<'a> glib::value::FromValue<'a> for ShortcutType {
11561 type Checker = glib::value::GenericValueTypeChecker<Self>;
11562
11563 #[inline]
11564 unsafe fn from_value(value: &'a glib::Value) -> Self {
11565 skip_assert_initialized!();
11566 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11567 }
11568}
11569
11570impl ToValue for ShortcutType {
11571 #[inline]
11572 fn to_value(&self) -> glib::Value {
11573 let mut value = glib::Value::for_value_type::<Self>();
11574 unsafe {
11575 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11576 }
11577 value
11578 }
11579
11580 #[inline]
11581 fn value_type(&self) -> glib::Type {
11582 Self::static_type()
11583 }
11584}
11585
11586impl From<ShortcutType> for glib::Value {
11587 #[inline]
11588 fn from(v: ShortcutType) -> Self {
11589 skip_assert_initialized!();
11590 ToValue::to_value(&v)
11591 }
11592}
11593
11594#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11597#[non_exhaustive]
11598#[doc(alias = "GtkSizeGroupMode")]
11599pub enum SizeGroupMode {
11600 #[doc(alias = "GTK_SIZE_GROUP_NONE")]
11602 None,
11603 #[doc(alias = "GTK_SIZE_GROUP_HORIZONTAL")]
11605 Horizontal,
11606 #[doc(alias = "GTK_SIZE_GROUP_VERTICAL")]
11608 Vertical,
11609 #[doc(alias = "GTK_SIZE_GROUP_BOTH")]
11611 Both,
11612 #[doc(hidden)]
11613 __Unknown(i32),
11614}
11615
11616#[doc(hidden)]
11617impl IntoGlib for SizeGroupMode {
11618 type GlibType = ffi::GtkSizeGroupMode;
11619
11620 #[inline]
11621 fn into_glib(self) -> ffi::GtkSizeGroupMode {
11622 match self {
11623 Self::None => ffi::GTK_SIZE_GROUP_NONE,
11624 Self::Horizontal => ffi::GTK_SIZE_GROUP_HORIZONTAL,
11625 Self::Vertical => ffi::GTK_SIZE_GROUP_VERTICAL,
11626 Self::Both => ffi::GTK_SIZE_GROUP_BOTH,
11627 Self::__Unknown(value) => value,
11628 }
11629 }
11630}
11631
11632#[doc(hidden)]
11633impl FromGlib<ffi::GtkSizeGroupMode> for SizeGroupMode {
11634 #[inline]
11635 unsafe fn from_glib(value: ffi::GtkSizeGroupMode) -> Self {
11636 skip_assert_initialized!();
11637
11638 match value {
11639 ffi::GTK_SIZE_GROUP_NONE => Self::None,
11640 ffi::GTK_SIZE_GROUP_HORIZONTAL => Self::Horizontal,
11641 ffi::GTK_SIZE_GROUP_VERTICAL => Self::Vertical,
11642 ffi::GTK_SIZE_GROUP_BOTH => Self::Both,
11643 value => Self::__Unknown(value),
11644 }
11645 }
11646}
11647
11648impl StaticType for SizeGroupMode {
11649 #[inline]
11650 #[doc(alias = "gtk_size_group_mode_get_type")]
11651 fn static_type() -> glib::Type {
11652 unsafe { from_glib(ffi::gtk_size_group_mode_get_type()) }
11653 }
11654}
11655
11656impl glib::HasParamSpec for SizeGroupMode {
11657 type ParamSpec = glib::ParamSpecEnum;
11658 type SetValue = Self;
11659 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11660
11661 fn param_spec_builder() -> Self::BuilderFn {
11662 Self::ParamSpec::builder_with_default
11663 }
11664}
11665
11666impl glib::value::ValueType for SizeGroupMode {
11667 type Type = Self;
11668}
11669
11670unsafe impl<'a> glib::value::FromValue<'a> for SizeGroupMode {
11671 type Checker = glib::value::GenericValueTypeChecker<Self>;
11672
11673 #[inline]
11674 unsafe fn from_value(value: &'a glib::Value) -> Self {
11675 skip_assert_initialized!();
11676 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11677 }
11678}
11679
11680impl ToValue for SizeGroupMode {
11681 #[inline]
11682 fn to_value(&self) -> glib::Value {
11683 let mut value = glib::Value::for_value_type::<Self>();
11684 unsafe {
11685 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11686 }
11687 value
11688 }
11689
11690 #[inline]
11691 fn value_type(&self) -> glib::Type {
11692 Self::static_type()
11693 }
11694}
11695
11696impl From<SizeGroupMode> for glib::Value {
11697 #[inline]
11698 fn from(v: SizeGroupMode) -> Self {
11699 skip_assert_initialized!();
11700 ToValue::to_value(&v)
11701 }
11702}
11703
11704#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11707#[non_exhaustive]
11708#[doc(alias = "GtkSizeRequestMode")]
11709pub enum SizeRequestMode {
11710 #[doc(alias = "GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH")]
11712 HeightForWidth,
11713 #[doc(alias = "GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT")]
11715 WidthForHeight,
11716 #[doc(alias = "GTK_SIZE_REQUEST_CONSTANT_SIZE")]
11718 ConstantSize,
11719 #[doc(hidden)]
11720 __Unknown(i32),
11721}
11722
11723#[doc(hidden)]
11724impl IntoGlib for SizeRequestMode {
11725 type GlibType = ffi::GtkSizeRequestMode;
11726
11727 #[inline]
11728 fn into_glib(self) -> ffi::GtkSizeRequestMode {
11729 match self {
11730 Self::HeightForWidth => ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH,
11731 Self::WidthForHeight => ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT,
11732 Self::ConstantSize => ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE,
11733 Self::__Unknown(value) => value,
11734 }
11735 }
11736}
11737
11738#[doc(hidden)]
11739impl FromGlib<ffi::GtkSizeRequestMode> for SizeRequestMode {
11740 #[inline]
11741 unsafe fn from_glib(value: ffi::GtkSizeRequestMode) -> Self {
11742 skip_assert_initialized!();
11743
11744 match value {
11745 ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH => Self::HeightForWidth,
11746 ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT => Self::WidthForHeight,
11747 ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE => Self::ConstantSize,
11748 value => Self::__Unknown(value),
11749 }
11750 }
11751}
11752
11753impl StaticType for SizeRequestMode {
11754 #[inline]
11755 #[doc(alias = "gtk_size_request_mode_get_type")]
11756 fn static_type() -> glib::Type {
11757 unsafe { from_glib(ffi::gtk_size_request_mode_get_type()) }
11758 }
11759}
11760
11761impl glib::HasParamSpec for SizeRequestMode {
11762 type ParamSpec = glib::ParamSpecEnum;
11763 type SetValue = Self;
11764 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11765
11766 fn param_spec_builder() -> Self::BuilderFn {
11767 Self::ParamSpec::builder_with_default
11768 }
11769}
11770
11771impl glib::value::ValueType for SizeRequestMode {
11772 type Type = Self;
11773}
11774
11775unsafe impl<'a> glib::value::FromValue<'a> for SizeRequestMode {
11776 type Checker = glib::value::GenericValueTypeChecker<Self>;
11777
11778 #[inline]
11779 unsafe fn from_value(value: &'a glib::Value) -> Self {
11780 skip_assert_initialized!();
11781 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11782 }
11783}
11784
11785impl ToValue for SizeRequestMode {
11786 #[inline]
11787 fn to_value(&self) -> glib::Value {
11788 let mut value = glib::Value::for_value_type::<Self>();
11789 unsafe {
11790 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11791 }
11792 value
11793 }
11794
11795 #[inline]
11796 fn value_type(&self) -> glib::Type {
11797 Self::static_type()
11798 }
11799}
11800
11801impl From<SizeRequestMode> for glib::Value {
11802 #[inline]
11803 fn from(v: SizeRequestMode) -> Self {
11804 skip_assert_initialized!();
11805 ToValue::to_value(&v)
11806 }
11807}
11808
11809#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11811#[non_exhaustive]
11812#[doc(alias = "GtkSortType")]
11813pub enum SortType {
11814 #[doc(alias = "GTK_SORT_ASCENDING")]
11816 Ascending,
11817 #[doc(alias = "GTK_SORT_DESCENDING")]
11819 Descending,
11820 #[doc(hidden)]
11821 __Unknown(i32),
11822}
11823
11824#[doc(hidden)]
11825impl IntoGlib for SortType {
11826 type GlibType = ffi::GtkSortType;
11827
11828 #[inline]
11829 fn into_glib(self) -> ffi::GtkSortType {
11830 match self {
11831 Self::Ascending => ffi::GTK_SORT_ASCENDING,
11832 Self::Descending => ffi::GTK_SORT_DESCENDING,
11833 Self::__Unknown(value) => value,
11834 }
11835 }
11836}
11837
11838#[doc(hidden)]
11839impl FromGlib<ffi::GtkSortType> for SortType {
11840 #[inline]
11841 unsafe fn from_glib(value: ffi::GtkSortType) -> Self {
11842 skip_assert_initialized!();
11843
11844 match value {
11845 ffi::GTK_SORT_ASCENDING => Self::Ascending,
11846 ffi::GTK_SORT_DESCENDING => Self::Descending,
11847 value => Self::__Unknown(value),
11848 }
11849 }
11850}
11851
11852impl StaticType for SortType {
11853 #[inline]
11854 #[doc(alias = "gtk_sort_type_get_type")]
11855 fn static_type() -> glib::Type {
11856 unsafe { from_glib(ffi::gtk_sort_type_get_type()) }
11857 }
11858}
11859
11860impl glib::HasParamSpec for SortType {
11861 type ParamSpec = glib::ParamSpecEnum;
11862 type SetValue = Self;
11863 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11864
11865 fn param_spec_builder() -> Self::BuilderFn {
11866 Self::ParamSpec::builder_with_default
11867 }
11868}
11869
11870impl glib::value::ValueType for SortType {
11871 type Type = Self;
11872}
11873
11874unsafe impl<'a> glib::value::FromValue<'a> for SortType {
11875 type Checker = glib::value::GenericValueTypeChecker<Self>;
11876
11877 #[inline]
11878 unsafe fn from_value(value: &'a glib::Value) -> Self {
11879 skip_assert_initialized!();
11880 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11881 }
11882}
11883
11884impl ToValue for SortType {
11885 #[inline]
11886 fn to_value(&self) -> glib::Value {
11887 let mut value = glib::Value::for_value_type::<Self>();
11888 unsafe {
11889 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11890 }
11891 value
11892 }
11893
11894 #[inline]
11895 fn value_type(&self) -> glib::Type {
11896 Self::static_type()
11897 }
11898}
11899
11900impl From<SortType> for glib::Value {
11901 #[inline]
11902 fn from(v: SortType) -> Self {
11903 skip_assert_initialized!();
11904 ToValue::to_value(&v)
11905 }
11906}
11907
11908#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11911#[non_exhaustive]
11912#[doc(alias = "GtkSorterChange")]
11913pub enum SorterChange {
11914 #[doc(alias = "GTK_SORTER_CHANGE_DIFFERENT")]
11917 Different,
11918 #[doc(alias = "GTK_SORTER_CHANGE_INVERTED")]
11922 Inverted,
11923 #[doc(alias = "GTK_SORTER_CHANGE_LESS_STRICT")]
11926 LessStrict,
11927 #[doc(alias = "GTK_SORTER_CHANGE_MORE_STRICT")]
11930 MoreStrict,
11931 #[doc(hidden)]
11932 __Unknown(i32),
11933}
11934
11935#[doc(hidden)]
11936impl IntoGlib for SorterChange {
11937 type GlibType = ffi::GtkSorterChange;
11938
11939 #[inline]
11940 fn into_glib(self) -> ffi::GtkSorterChange {
11941 match self {
11942 Self::Different => ffi::GTK_SORTER_CHANGE_DIFFERENT,
11943 Self::Inverted => ffi::GTK_SORTER_CHANGE_INVERTED,
11944 Self::LessStrict => ffi::GTK_SORTER_CHANGE_LESS_STRICT,
11945 Self::MoreStrict => ffi::GTK_SORTER_CHANGE_MORE_STRICT,
11946 Self::__Unknown(value) => value,
11947 }
11948 }
11949}
11950
11951#[doc(hidden)]
11952impl FromGlib<ffi::GtkSorterChange> for SorterChange {
11953 #[inline]
11954 unsafe fn from_glib(value: ffi::GtkSorterChange) -> Self {
11955 skip_assert_initialized!();
11956
11957 match value {
11958 ffi::GTK_SORTER_CHANGE_DIFFERENT => Self::Different,
11959 ffi::GTK_SORTER_CHANGE_INVERTED => Self::Inverted,
11960 ffi::GTK_SORTER_CHANGE_LESS_STRICT => Self::LessStrict,
11961 ffi::GTK_SORTER_CHANGE_MORE_STRICT => Self::MoreStrict,
11962 value => Self::__Unknown(value),
11963 }
11964 }
11965}
11966
11967impl StaticType for SorterChange {
11968 #[inline]
11969 #[doc(alias = "gtk_sorter_change_get_type")]
11970 fn static_type() -> glib::Type {
11971 unsafe { from_glib(ffi::gtk_sorter_change_get_type()) }
11972 }
11973}
11974
11975impl glib::HasParamSpec for SorterChange {
11976 type ParamSpec = glib::ParamSpecEnum;
11977 type SetValue = Self;
11978 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11979
11980 fn param_spec_builder() -> Self::BuilderFn {
11981 Self::ParamSpec::builder_with_default
11982 }
11983}
11984
11985impl glib::value::ValueType for SorterChange {
11986 type Type = Self;
11987}
11988
11989unsafe impl<'a> glib::value::FromValue<'a> for SorterChange {
11990 type Checker = glib::value::GenericValueTypeChecker<Self>;
11991
11992 #[inline]
11993 unsafe fn from_value(value: &'a glib::Value) -> Self {
11994 skip_assert_initialized!();
11995 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11996 }
11997}
11998
11999impl ToValue for SorterChange {
12000 #[inline]
12001 fn to_value(&self) -> glib::Value {
12002 let mut value = glib::Value::for_value_type::<Self>();
12003 unsafe {
12004 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12005 }
12006 value
12007 }
12008
12009 #[inline]
12010 fn value_type(&self) -> glib::Type {
12011 Self::static_type()
12012 }
12013}
12014
12015impl From<SorterChange> for glib::Value {
12016 #[inline]
12017 fn from(v: SorterChange) -> Self {
12018 skip_assert_initialized!();
12019 ToValue::to_value(&v)
12020 }
12021}
12022
12023#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12025#[non_exhaustive]
12026#[doc(alias = "GtkSorterOrder")]
12027pub enum SorterOrder {
12028 #[doc(alias = "GTK_SORTER_ORDER_PARTIAL")]
12030 Partial,
12031 #[doc(alias = "GTK_SORTER_ORDER_NONE")]
12034 None,
12035 #[doc(alias = "GTK_SORTER_ORDER_TOTAL")]
12039 Total,
12040 #[doc(hidden)]
12041 __Unknown(i32),
12042}
12043
12044#[doc(hidden)]
12045impl IntoGlib for SorterOrder {
12046 type GlibType = ffi::GtkSorterOrder;
12047
12048 #[inline]
12049 fn into_glib(self) -> ffi::GtkSorterOrder {
12050 match self {
12051 Self::Partial => ffi::GTK_SORTER_ORDER_PARTIAL,
12052 Self::None => ffi::GTK_SORTER_ORDER_NONE,
12053 Self::Total => ffi::GTK_SORTER_ORDER_TOTAL,
12054 Self::__Unknown(value) => value,
12055 }
12056 }
12057}
12058
12059#[doc(hidden)]
12060impl FromGlib<ffi::GtkSorterOrder> for SorterOrder {
12061 #[inline]
12062 unsafe fn from_glib(value: ffi::GtkSorterOrder) -> Self {
12063 skip_assert_initialized!();
12064
12065 match value {
12066 ffi::GTK_SORTER_ORDER_PARTIAL => Self::Partial,
12067 ffi::GTK_SORTER_ORDER_NONE => Self::None,
12068 ffi::GTK_SORTER_ORDER_TOTAL => Self::Total,
12069 value => Self::__Unknown(value),
12070 }
12071 }
12072}
12073
12074impl StaticType for SorterOrder {
12075 #[inline]
12076 #[doc(alias = "gtk_sorter_order_get_type")]
12077 fn static_type() -> glib::Type {
12078 unsafe { from_glib(ffi::gtk_sorter_order_get_type()) }
12079 }
12080}
12081
12082impl glib::HasParamSpec for SorterOrder {
12083 type ParamSpec = glib::ParamSpecEnum;
12084 type SetValue = Self;
12085 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12086
12087 fn param_spec_builder() -> Self::BuilderFn {
12088 Self::ParamSpec::builder_with_default
12089 }
12090}
12091
12092impl glib::value::ValueType for SorterOrder {
12093 type Type = Self;
12094}
12095
12096unsafe impl<'a> glib::value::FromValue<'a> for SorterOrder {
12097 type Checker = glib::value::GenericValueTypeChecker<Self>;
12098
12099 #[inline]
12100 unsafe fn from_value(value: &'a glib::Value) -> Self {
12101 skip_assert_initialized!();
12102 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12103 }
12104}
12105
12106impl ToValue for SorterOrder {
12107 #[inline]
12108 fn to_value(&self) -> glib::Value {
12109 let mut value = glib::Value::for_value_type::<Self>();
12110 unsafe {
12111 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12112 }
12113 value
12114 }
12115
12116 #[inline]
12117 fn value_type(&self) -> glib::Type {
12118 Self::static_type()
12119 }
12120}
12121
12122impl From<SorterOrder> for glib::Value {
12123 #[inline]
12124 fn from(v: SorterOrder) -> Self {
12125 skip_assert_initialized!();
12126 ToValue::to_value(&v)
12127 }
12128}
12129
12130#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12135#[non_exhaustive]
12136#[doc(alias = "GtkSpinButtonUpdatePolicy")]
12137pub enum SpinButtonUpdatePolicy {
12138 #[doc(alias = "GTK_UPDATE_ALWAYS")]
12141 Always,
12142 #[doc(alias = "GTK_UPDATE_IF_VALID")]
12146 IfValid,
12147 #[doc(hidden)]
12148 __Unknown(i32),
12149}
12150
12151#[doc(hidden)]
12152impl IntoGlib for SpinButtonUpdatePolicy {
12153 type GlibType = ffi::GtkSpinButtonUpdatePolicy;
12154
12155 #[inline]
12156 fn into_glib(self) -> ffi::GtkSpinButtonUpdatePolicy {
12157 match self {
12158 Self::Always => ffi::GTK_UPDATE_ALWAYS,
12159 Self::IfValid => ffi::GTK_UPDATE_IF_VALID,
12160 Self::__Unknown(value) => value,
12161 }
12162 }
12163}
12164
12165#[doc(hidden)]
12166impl FromGlib<ffi::GtkSpinButtonUpdatePolicy> for SpinButtonUpdatePolicy {
12167 #[inline]
12168 unsafe fn from_glib(value: ffi::GtkSpinButtonUpdatePolicy) -> Self {
12169 skip_assert_initialized!();
12170
12171 match value {
12172 ffi::GTK_UPDATE_ALWAYS => Self::Always,
12173 ffi::GTK_UPDATE_IF_VALID => Self::IfValid,
12174 value => Self::__Unknown(value),
12175 }
12176 }
12177}
12178
12179impl StaticType for SpinButtonUpdatePolicy {
12180 #[inline]
12181 #[doc(alias = "gtk_spin_button_update_policy_get_type")]
12182 fn static_type() -> glib::Type {
12183 unsafe { from_glib(ffi::gtk_spin_button_update_policy_get_type()) }
12184 }
12185}
12186
12187impl glib::HasParamSpec for SpinButtonUpdatePolicy {
12188 type ParamSpec = glib::ParamSpecEnum;
12189 type SetValue = Self;
12190 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12191
12192 fn param_spec_builder() -> Self::BuilderFn {
12193 Self::ParamSpec::builder_with_default
12194 }
12195}
12196
12197impl glib::value::ValueType for SpinButtonUpdatePolicy {
12198 type Type = Self;
12199}
12200
12201unsafe impl<'a> glib::value::FromValue<'a> for SpinButtonUpdatePolicy {
12202 type Checker = glib::value::GenericValueTypeChecker<Self>;
12203
12204 #[inline]
12205 unsafe fn from_value(value: &'a glib::Value) -> Self {
12206 skip_assert_initialized!();
12207 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12208 }
12209}
12210
12211impl ToValue for SpinButtonUpdatePolicy {
12212 #[inline]
12213 fn to_value(&self) -> glib::Value {
12214 let mut value = glib::Value::for_value_type::<Self>();
12215 unsafe {
12216 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12217 }
12218 value
12219 }
12220
12221 #[inline]
12222 fn value_type(&self) -> glib::Type {
12223 Self::static_type()
12224 }
12225}
12226
12227impl From<SpinButtonUpdatePolicy> for glib::Value {
12228 #[inline]
12229 fn from(v: SpinButtonUpdatePolicy) -> Self {
12230 skip_assert_initialized!();
12231 ToValue::to_value(&v)
12232 }
12233}
12234
12235#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12238#[non_exhaustive]
12239#[doc(alias = "GtkSpinType")]
12240pub enum SpinType {
12241 #[doc(alias = "GTK_SPIN_STEP_FORWARD")]
12243 StepForward,
12244 #[doc(alias = "GTK_SPIN_STEP_BACKWARD")]
12246 StepBackward,
12247 #[doc(alias = "GTK_SPIN_PAGE_FORWARD")]
12249 PageForward,
12250 #[doc(alias = "GTK_SPIN_PAGE_BACKWARD")]
12252 PageBackward,
12253 #[doc(alias = "GTK_SPIN_HOME")]
12255 Home,
12256 #[doc(alias = "GTK_SPIN_END")]
12258 End,
12259 #[doc(alias = "GTK_SPIN_USER_DEFINED")]
12261 UserDefined,
12262 #[doc(hidden)]
12263 __Unknown(i32),
12264}
12265
12266#[doc(hidden)]
12267impl IntoGlib for SpinType {
12268 type GlibType = ffi::GtkSpinType;
12269
12270 #[inline]
12271 fn into_glib(self) -> ffi::GtkSpinType {
12272 match self {
12273 Self::StepForward => ffi::GTK_SPIN_STEP_FORWARD,
12274 Self::StepBackward => ffi::GTK_SPIN_STEP_BACKWARD,
12275 Self::PageForward => ffi::GTK_SPIN_PAGE_FORWARD,
12276 Self::PageBackward => ffi::GTK_SPIN_PAGE_BACKWARD,
12277 Self::Home => ffi::GTK_SPIN_HOME,
12278 Self::End => ffi::GTK_SPIN_END,
12279 Self::UserDefined => ffi::GTK_SPIN_USER_DEFINED,
12280 Self::__Unknown(value) => value,
12281 }
12282 }
12283}
12284
12285#[doc(hidden)]
12286impl FromGlib<ffi::GtkSpinType> for SpinType {
12287 #[inline]
12288 unsafe fn from_glib(value: ffi::GtkSpinType) -> Self {
12289 skip_assert_initialized!();
12290
12291 match value {
12292 ffi::GTK_SPIN_STEP_FORWARD => Self::StepForward,
12293 ffi::GTK_SPIN_STEP_BACKWARD => Self::StepBackward,
12294 ffi::GTK_SPIN_PAGE_FORWARD => Self::PageForward,
12295 ffi::GTK_SPIN_PAGE_BACKWARD => Self::PageBackward,
12296 ffi::GTK_SPIN_HOME => Self::Home,
12297 ffi::GTK_SPIN_END => Self::End,
12298 ffi::GTK_SPIN_USER_DEFINED => Self::UserDefined,
12299 value => Self::__Unknown(value),
12300 }
12301 }
12302}
12303
12304impl StaticType for SpinType {
12305 #[inline]
12306 #[doc(alias = "gtk_spin_type_get_type")]
12307 fn static_type() -> glib::Type {
12308 unsafe { from_glib(ffi::gtk_spin_type_get_type()) }
12309 }
12310}
12311
12312impl glib::HasParamSpec for SpinType {
12313 type ParamSpec = glib::ParamSpecEnum;
12314 type SetValue = Self;
12315 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12316
12317 fn param_spec_builder() -> Self::BuilderFn {
12318 Self::ParamSpec::builder_with_default
12319 }
12320}
12321
12322impl glib::value::ValueType for SpinType {
12323 type Type = Self;
12324}
12325
12326unsafe impl<'a> glib::value::FromValue<'a> for SpinType {
12327 type Checker = glib::value::GenericValueTypeChecker<Self>;
12328
12329 #[inline]
12330 unsafe fn from_value(value: &'a glib::Value) -> Self {
12331 skip_assert_initialized!();
12332 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12333 }
12334}
12335
12336impl ToValue for SpinType {
12337 #[inline]
12338 fn to_value(&self) -> glib::Value {
12339 let mut value = glib::Value::for_value_type::<Self>();
12340 unsafe {
12341 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12342 }
12343 value
12344 }
12345
12346 #[inline]
12347 fn value_type(&self) -> glib::Type {
12348 Self::static_type()
12349 }
12350}
12351
12352impl From<SpinType> for glib::Value {
12353 #[inline]
12354 fn from(v: SpinType) -> Self {
12355 skip_assert_initialized!();
12356 ToValue::to_value(&v)
12357 }
12358}
12359
12360#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12364#[non_exhaustive]
12365#[doc(alias = "GtkStackTransitionType")]
12366pub enum StackTransitionType {
12367 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_NONE")]
12369 None,
12370 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_CROSSFADE")]
12372 Crossfade,
12373 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT")]
12375 SlideRight,
12376 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT")]
12378 SlideLeft,
12379 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP")]
12381 SlideUp,
12382 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN")]
12384 SlideDown,
12385 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT")]
12387 SlideLeftRight,
12388 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN")]
12390 SlideUpDown,
12391 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP")]
12393 OverUp,
12394 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN")]
12396 OverDown,
12397 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT")]
12399 OverLeft,
12400 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT")]
12402 OverRight,
12403 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_UP")]
12405 UnderUp,
12406 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_DOWN")]
12408 UnderDown,
12409 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_LEFT")]
12411 UnderLeft,
12412 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT")]
12414 UnderRight,
12415 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN")]
12417 OverUpDown,
12418 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP")]
12420 OverDownUp,
12421 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT")]
12423 OverLeftRight,
12424 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT")]
12426 OverRightLeft,
12427 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT")]
12429 RotateLeft,
12430 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT")]
12432 RotateRight,
12433 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT")]
12435 RotateLeftRight,
12436 #[doc(hidden)]
12437 __Unknown(i32),
12438}
12439
12440#[doc(hidden)]
12441impl IntoGlib for StackTransitionType {
12442 type GlibType = ffi::GtkStackTransitionType;
12443
12444 fn into_glib(self) -> ffi::GtkStackTransitionType {
12445 match self {
12446 Self::None => ffi::GTK_STACK_TRANSITION_TYPE_NONE,
12447 Self::Crossfade => ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE,
12448 Self::SlideRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT,
12449 Self::SlideLeft => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT,
12450 Self::SlideUp => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP,
12451 Self::SlideDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN,
12452 Self::SlideLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT,
12453 Self::SlideUpDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN,
12454 Self::OverUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP,
12455 Self::OverDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN,
12456 Self::OverLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT,
12457 Self::OverRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT,
12458 Self::UnderUp => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP,
12459 Self::UnderDown => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN,
12460 Self::UnderLeft => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT,
12461 Self::UnderRight => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT,
12462 Self::OverUpDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN,
12463 Self::OverDownUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP,
12464 Self::OverLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT,
12465 Self::OverRightLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT,
12466 Self::RotateLeft => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT,
12467 Self::RotateRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT,
12468 Self::RotateLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT,
12469 Self::__Unknown(value) => value,
12470 }
12471 }
12472}
12473
12474#[doc(hidden)]
12475impl FromGlib<ffi::GtkStackTransitionType> for StackTransitionType {
12476 unsafe fn from_glib(value: ffi::GtkStackTransitionType) -> Self {
12477 skip_assert_initialized!();
12478
12479 match value {
12480 ffi::GTK_STACK_TRANSITION_TYPE_NONE => Self::None,
12481 ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
12482 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
12483 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
12484 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
12485 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
12486 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT => Self::SlideLeftRight,
12487 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN => Self::SlideUpDown,
12488 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP => Self::OverUp,
12489 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN => Self::OverDown,
12490 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT => Self::OverLeft,
12491 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT => Self::OverRight,
12492 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP => Self::UnderUp,
12493 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN => Self::UnderDown,
12494 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT => Self::UnderLeft,
12495 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT => Self::UnderRight,
12496 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN => Self::OverUpDown,
12497 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP => Self::OverDownUp,
12498 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT => Self::OverLeftRight,
12499 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT => Self::OverRightLeft,
12500 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT => Self::RotateLeft,
12501 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT => Self::RotateRight,
12502 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT => Self::RotateLeftRight,
12503 value => Self::__Unknown(value),
12504 }
12505 }
12506}
12507
12508impl StaticType for StackTransitionType {
12509 #[inline]
12510 #[doc(alias = "gtk_stack_transition_type_get_type")]
12511 fn static_type() -> glib::Type {
12512 unsafe { from_glib(ffi::gtk_stack_transition_type_get_type()) }
12513 }
12514}
12515
12516impl glib::HasParamSpec for StackTransitionType {
12517 type ParamSpec = glib::ParamSpecEnum;
12518 type SetValue = Self;
12519 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12520
12521 fn param_spec_builder() -> Self::BuilderFn {
12522 Self::ParamSpec::builder_with_default
12523 }
12524}
12525
12526impl glib::value::ValueType for StackTransitionType {
12527 type Type = Self;
12528}
12529
12530unsafe impl<'a> glib::value::FromValue<'a> for StackTransitionType {
12531 type Checker = glib::value::GenericValueTypeChecker<Self>;
12532
12533 #[inline]
12534 unsafe fn from_value(value: &'a glib::Value) -> Self {
12535 skip_assert_initialized!();
12536 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12537 }
12538}
12539
12540impl ToValue for StackTransitionType {
12541 #[inline]
12542 fn to_value(&self) -> glib::Value {
12543 let mut value = glib::Value::for_value_type::<Self>();
12544 unsafe {
12545 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12546 }
12547 value
12548 }
12549
12550 #[inline]
12551 fn value_type(&self) -> glib::Type {
12552 Self::static_type()
12553 }
12554}
12555
12556impl From<StackTransitionType> for glib::Value {
12557 #[inline]
12558 fn from(v: StackTransitionType) -> Self {
12559 skip_assert_initialized!();
12560 ToValue::to_value(&v)
12561 }
12562}
12563
12564#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12566#[non_exhaustive]
12567#[doc(alias = "GtkStringFilterMatchMode")]
12568pub enum StringFilterMatchMode {
12569 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_EXACT")]
12572 Exact,
12573 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_SUBSTRING")]
12576 Substring,
12577 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_PREFIX")]
12580 Prefix,
12581 #[doc(hidden)]
12582 __Unknown(i32),
12583}
12584
12585#[doc(hidden)]
12586impl IntoGlib for StringFilterMatchMode {
12587 type GlibType = ffi::GtkStringFilterMatchMode;
12588
12589 #[inline]
12590 fn into_glib(self) -> ffi::GtkStringFilterMatchMode {
12591 match self {
12592 Self::Exact => ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT,
12593 Self::Substring => ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING,
12594 Self::Prefix => ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX,
12595 Self::__Unknown(value) => value,
12596 }
12597 }
12598}
12599
12600#[doc(hidden)]
12601impl FromGlib<ffi::GtkStringFilterMatchMode> for StringFilterMatchMode {
12602 #[inline]
12603 unsafe fn from_glib(value: ffi::GtkStringFilterMatchMode) -> Self {
12604 skip_assert_initialized!();
12605
12606 match value {
12607 ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT => Self::Exact,
12608 ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING => Self::Substring,
12609 ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX => Self::Prefix,
12610 value => Self::__Unknown(value),
12611 }
12612 }
12613}
12614
12615impl StaticType for StringFilterMatchMode {
12616 #[inline]
12617 #[doc(alias = "gtk_string_filter_match_mode_get_type")]
12618 fn static_type() -> glib::Type {
12619 unsafe { from_glib(ffi::gtk_string_filter_match_mode_get_type()) }
12620 }
12621}
12622
12623impl glib::HasParamSpec for StringFilterMatchMode {
12624 type ParamSpec = glib::ParamSpecEnum;
12625 type SetValue = Self;
12626 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12627
12628 fn param_spec_builder() -> Self::BuilderFn {
12629 Self::ParamSpec::builder_with_default
12630 }
12631}
12632
12633impl glib::value::ValueType for StringFilterMatchMode {
12634 type Type = Self;
12635}
12636
12637unsafe impl<'a> glib::value::FromValue<'a> for StringFilterMatchMode {
12638 type Checker = glib::value::GenericValueTypeChecker<Self>;
12639
12640 #[inline]
12641 unsafe fn from_value(value: &'a glib::Value) -> Self {
12642 skip_assert_initialized!();
12643 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12644 }
12645}
12646
12647impl ToValue for StringFilterMatchMode {
12648 #[inline]
12649 fn to_value(&self) -> glib::Value {
12650 let mut value = glib::Value::for_value_type::<Self>();
12651 unsafe {
12652 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12653 }
12654 value
12655 }
12656
12657 #[inline]
12658 fn value_type(&self) -> glib::Type {
12659 Self::static_type()
12660 }
12661}
12662
12663impl From<StringFilterMatchMode> for glib::Value {
12664 #[inline]
12665 fn from(v: StringFilterMatchMode) -> Self {
12666 skip_assert_initialized!();
12667 ToValue::to_value(&v)
12668 }
12669}
12670
12671#[cfg(feature = "v4_22")]
12674#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12675#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12676#[non_exhaustive]
12677#[doc(alias = "GtkSvgError")]
12678pub enum SvgError {
12679 #[doc(alias = "GTK_SVG_ERROR_INVALID_SYNTAX")]
12682 InvalidSyntax,
12683 #[doc(alias = "GTK_SVG_ERROR_INVALID_ELEMENT")]
12687 InvalidElement,
12688 #[doc(alias = "GTK_SVG_ERROR_INVALID_ATTRIBUTE")]
12692 InvalidAttribute,
12693 #[doc(alias = "GTK_SVG_ERROR_MISSING_ATTRIBUTE")]
12695 MissingAttribute,
12696 #[doc(alias = "GTK_SVG_ERROR_INVALID_REFERENCE")]
12699 InvalidReference,
12700 #[doc(alias = "GTK_SVG_ERROR_FAILED_UPDATE")]
12702 FailedUpdate,
12703 #[doc(alias = "GTK_SVG_ERROR_FAILED_RENDERING")]
12706 FailedRendering,
12707 #[doc(hidden)]
12708 __Unknown(i32),
12709}
12710
12711#[cfg(feature = "v4_22")]
12712#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12713impl SvgError {
12714 #[doc(alias = "gtk_svg_error_get_attribute")]
12715 #[doc(alias = "get_attribute")]
12716 pub fn attribute(error: &glib::Error) -> Option<glib::GString> {
12717 assert_initialized_main_thread!();
12718 unsafe { from_glib_none(ffi::gtk_svg_error_get_attribute(error.to_glib_none().0)) }
12719 }
12720
12721 #[doc(alias = "gtk_svg_error_get_element")]
12722 #[doc(alias = "get_element")]
12723 pub fn element(error: &glib::Error) -> Option<glib::GString> {
12724 assert_initialized_main_thread!();
12725 unsafe { from_glib_none(ffi::gtk_svg_error_get_element(error.to_glib_none().0)) }
12726 }
12727
12728 #[doc(alias = "gtk_svg_error_quark")]
12741 pub fn quark() -> glib::Quark {
12742 assert_initialized_main_thread!();
12743 unsafe { from_glib(ffi::gtk_svg_error_quark()) }
12744 }
12745}
12746
12747#[cfg(feature = "v4_22")]
12748#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12749#[doc(hidden)]
12750impl IntoGlib for SvgError {
12751 type GlibType = ffi::GtkSvgError;
12752
12753 #[inline]
12754 fn into_glib(self) -> ffi::GtkSvgError {
12755 match self {
12756 Self::InvalidSyntax => ffi::GTK_SVG_ERROR_INVALID_SYNTAX,
12757 Self::InvalidElement => ffi::GTK_SVG_ERROR_INVALID_ELEMENT,
12758 Self::InvalidAttribute => ffi::GTK_SVG_ERROR_INVALID_ATTRIBUTE,
12759 Self::MissingAttribute => ffi::GTK_SVG_ERROR_MISSING_ATTRIBUTE,
12760 Self::InvalidReference => ffi::GTK_SVG_ERROR_INVALID_REFERENCE,
12761 Self::FailedUpdate => ffi::GTK_SVG_ERROR_FAILED_UPDATE,
12762 Self::FailedRendering => ffi::GTK_SVG_ERROR_FAILED_RENDERING,
12763 Self::__Unknown(value) => value,
12764 }
12765 }
12766}
12767
12768#[cfg(feature = "v4_22")]
12769#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12770#[doc(hidden)]
12771impl FromGlib<ffi::GtkSvgError> for SvgError {
12772 #[inline]
12773 unsafe fn from_glib(value: ffi::GtkSvgError) -> Self {
12774 skip_assert_initialized!();
12775
12776 match value {
12777 ffi::GTK_SVG_ERROR_INVALID_SYNTAX => Self::InvalidSyntax,
12778 ffi::GTK_SVG_ERROR_INVALID_ELEMENT => Self::InvalidElement,
12779 ffi::GTK_SVG_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
12780 ffi::GTK_SVG_ERROR_MISSING_ATTRIBUTE => Self::MissingAttribute,
12781 ffi::GTK_SVG_ERROR_INVALID_REFERENCE => Self::InvalidReference,
12782 ffi::GTK_SVG_ERROR_FAILED_UPDATE => Self::FailedUpdate,
12783 ffi::GTK_SVG_ERROR_FAILED_RENDERING => Self::FailedRendering,
12784 value => Self::__Unknown(value),
12785 }
12786 }
12787}
12788
12789#[cfg(feature = "v4_22")]
12790#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12791impl glib::error::ErrorDomain for SvgError {
12792 #[inline]
12793 fn domain() -> glib::Quark {
12794 skip_assert_initialized!();
12795
12796 static QUARK: ::std::sync::OnceLock<glib::ffi::GQuark> = ::std::sync::OnceLock::new();
12797 let quark = *QUARK.get_or_init(|| unsafe {
12798 glib::ffi::g_quark_from_static_string(c"GtkSvgError".as_ptr())
12799 });
12800 unsafe { from_glib(quark) }
12801 }
12802
12803 #[inline]
12804 fn code(self) -> i32 {
12805 self.into_glib()
12806 }
12807
12808 #[inline]
12809 #[allow(clippy::match_single_binding)]
12810 fn from(code: i32) -> Option<Self> {
12811 skip_assert_initialized!();
12812 match unsafe { from_glib(code) } {
12813 value => Some(value),
12814 }
12815 }
12816}
12817
12818#[cfg(feature = "v4_22")]
12819#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12820impl StaticType for SvgError {
12821 #[inline]
12822 #[doc(alias = "gtk_svg_error_get_type")]
12823 fn static_type() -> glib::Type {
12824 unsafe { from_glib(ffi::gtk_svg_error_get_type()) }
12825 }
12826}
12827
12828#[cfg(feature = "v4_22")]
12829#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12830impl glib::HasParamSpec for SvgError {
12831 type ParamSpec = glib::ParamSpecEnum;
12832 type SetValue = Self;
12833 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12834
12835 fn param_spec_builder() -> Self::BuilderFn {
12836 Self::ParamSpec::builder_with_default
12837 }
12838}
12839
12840#[cfg(feature = "v4_22")]
12841#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12842impl glib::value::ValueType for SvgError {
12843 type Type = Self;
12844}
12845
12846#[cfg(feature = "v4_22")]
12847#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12848unsafe impl<'a> glib::value::FromValue<'a> for SvgError {
12849 type Checker = glib::value::GenericValueTypeChecker<Self>;
12850
12851 #[inline]
12852 unsafe fn from_value(value: &'a glib::Value) -> Self {
12853 skip_assert_initialized!();
12854 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12855 }
12856}
12857
12858#[cfg(feature = "v4_22")]
12859#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12860impl ToValue for SvgError {
12861 #[inline]
12862 fn to_value(&self) -> glib::Value {
12863 let mut value = glib::Value::for_value_type::<Self>();
12864 unsafe {
12865 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12866 }
12867 value
12868 }
12869
12870 #[inline]
12871 fn value_type(&self) -> glib::Type {
12872 Self::static_type()
12873 }
12874}
12875
12876#[cfg(feature = "v4_22")]
12877#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12878impl From<SvgError> for glib::Value {
12879 #[inline]
12880 fn from(v: SvgError) -> Self {
12881 skip_assert_initialized!();
12882 ToValue::to_value(&v)
12883 }
12884}
12885
12886#[cfg(feature = "v4_6")]
12891#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12892#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12893#[non_exhaustive]
12894#[doc(alias = "GtkSymbolicColor")]
12895pub enum SymbolicColor {
12896 #[doc(alias = "GTK_SYMBOLIC_COLOR_FOREGROUND")]
12898 Foreground,
12899 #[doc(alias = "GTK_SYMBOLIC_COLOR_ERROR")]
12901 Error,
12902 #[doc(alias = "GTK_SYMBOLIC_COLOR_WARNING")]
12904 Warning,
12905 #[doc(alias = "GTK_SYMBOLIC_COLOR_SUCCESS")]
12907 Success,
12908 #[cfg(feature = "v4_22")]
12910 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12911 #[doc(alias = "GTK_SYMBOLIC_COLOR_ACCENT")]
12912 Accent,
12913 #[doc(hidden)]
12914 __Unknown(i32),
12915}
12916
12917#[cfg(feature = "v4_6")]
12918#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12919#[doc(hidden)]
12920impl IntoGlib for SymbolicColor {
12921 type GlibType = ffi::GtkSymbolicColor;
12922
12923 #[inline]
12924 fn into_glib(self) -> ffi::GtkSymbolicColor {
12925 match self {
12926 Self::Foreground => ffi::GTK_SYMBOLIC_COLOR_FOREGROUND,
12927 Self::Error => ffi::GTK_SYMBOLIC_COLOR_ERROR,
12928 Self::Warning => ffi::GTK_SYMBOLIC_COLOR_WARNING,
12929 Self::Success => ffi::GTK_SYMBOLIC_COLOR_SUCCESS,
12930 #[cfg(feature = "v4_22")]
12931 Self::Accent => ffi::GTK_SYMBOLIC_COLOR_ACCENT,
12932 Self::__Unknown(value) => value,
12933 }
12934 }
12935}
12936
12937#[cfg(feature = "v4_6")]
12938#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12939#[doc(hidden)]
12940impl FromGlib<ffi::GtkSymbolicColor> for SymbolicColor {
12941 #[inline]
12942 unsafe fn from_glib(value: ffi::GtkSymbolicColor) -> Self {
12943 skip_assert_initialized!();
12944
12945 match value {
12946 ffi::GTK_SYMBOLIC_COLOR_FOREGROUND => Self::Foreground,
12947 ffi::GTK_SYMBOLIC_COLOR_ERROR => Self::Error,
12948 ffi::GTK_SYMBOLIC_COLOR_WARNING => Self::Warning,
12949 ffi::GTK_SYMBOLIC_COLOR_SUCCESS => Self::Success,
12950 #[cfg(feature = "v4_22")]
12951 ffi::GTK_SYMBOLIC_COLOR_ACCENT => Self::Accent,
12952 value => Self::__Unknown(value),
12953 }
12954 }
12955}
12956
12957#[cfg(feature = "v4_6")]
12958#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12959impl StaticType for SymbolicColor {
12960 #[inline]
12961 #[doc(alias = "gtk_symbolic_color_get_type")]
12962 fn static_type() -> glib::Type {
12963 unsafe { from_glib(ffi::gtk_symbolic_color_get_type()) }
12964 }
12965}
12966
12967#[cfg(feature = "v4_6")]
12968#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12969impl glib::HasParamSpec for SymbolicColor {
12970 type ParamSpec = glib::ParamSpecEnum;
12971 type SetValue = Self;
12972 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12973
12974 fn param_spec_builder() -> Self::BuilderFn {
12975 Self::ParamSpec::builder_with_default
12976 }
12977}
12978
12979#[cfg(feature = "v4_6")]
12980#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12981impl glib::value::ValueType for SymbolicColor {
12982 type Type = Self;
12983}
12984
12985#[cfg(feature = "v4_6")]
12986#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12987unsafe impl<'a> glib::value::FromValue<'a> for SymbolicColor {
12988 type Checker = glib::value::GenericValueTypeChecker<Self>;
12989
12990 #[inline]
12991 unsafe fn from_value(value: &'a glib::Value) -> Self {
12992 skip_assert_initialized!();
12993 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12994 }
12995}
12996
12997#[cfg(feature = "v4_6")]
12998#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
12999impl ToValue for SymbolicColor {
13000 #[inline]
13001 fn to_value(&self) -> glib::Value {
13002 let mut value = glib::Value::for_value_type::<Self>();
13003 unsafe {
13004 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13005 }
13006 value
13007 }
13008
13009 #[inline]
13010 fn value_type(&self) -> glib::Type {
13011 Self::static_type()
13012 }
13013}
13014
13015#[cfg(feature = "v4_6")]
13016#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13017impl From<SymbolicColor> for glib::Value {
13018 #[inline]
13019 fn from(v: SymbolicColor) -> Self {
13020 skip_assert_initialized!();
13021 ToValue::to_value(&v)
13022 }
13023}
13024
13025#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13035#[non_exhaustive]
13036#[doc(alias = "GtkSystemSetting")]
13037pub enum SystemSetting {
13038 #[doc(alias = "GTK_SYSTEM_SETTING_DPI")]
13040 Dpi,
13041 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_NAME")]
13043 FontName,
13044 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_CONFIG")]
13052 FontConfig,
13053 #[doc(alias = "GTK_SYSTEM_SETTING_DISPLAY")]
13055 Display,
13056 #[doc(alias = "GTK_SYSTEM_SETTING_ICON_THEME")]
13059 IconTheme,
13060 #[doc(hidden)]
13061 __Unknown(i32),
13062}
13063
13064#[doc(hidden)]
13065impl IntoGlib for SystemSetting {
13066 type GlibType = ffi::GtkSystemSetting;
13067
13068 #[inline]
13069 fn into_glib(self) -> ffi::GtkSystemSetting {
13070 match self {
13071 Self::Dpi => ffi::GTK_SYSTEM_SETTING_DPI,
13072 Self::FontName => ffi::GTK_SYSTEM_SETTING_FONT_NAME,
13073 Self::FontConfig => ffi::GTK_SYSTEM_SETTING_FONT_CONFIG,
13074 Self::Display => ffi::GTK_SYSTEM_SETTING_DISPLAY,
13075 Self::IconTheme => ffi::GTK_SYSTEM_SETTING_ICON_THEME,
13076 Self::__Unknown(value) => value,
13077 }
13078 }
13079}
13080
13081#[doc(hidden)]
13082impl FromGlib<ffi::GtkSystemSetting> for SystemSetting {
13083 #[inline]
13084 unsafe fn from_glib(value: ffi::GtkSystemSetting) -> Self {
13085 skip_assert_initialized!();
13086
13087 match value {
13088 ffi::GTK_SYSTEM_SETTING_DPI => Self::Dpi,
13089 ffi::GTK_SYSTEM_SETTING_FONT_NAME => Self::FontName,
13090 ffi::GTK_SYSTEM_SETTING_FONT_CONFIG => Self::FontConfig,
13091 ffi::GTK_SYSTEM_SETTING_DISPLAY => Self::Display,
13092 ffi::GTK_SYSTEM_SETTING_ICON_THEME => Self::IconTheme,
13093 value => Self::__Unknown(value),
13094 }
13095 }
13096}
13097
13098impl StaticType for SystemSetting {
13099 #[inline]
13100 #[doc(alias = "gtk_system_setting_get_type")]
13101 fn static_type() -> glib::Type {
13102 unsafe { from_glib(ffi::gtk_system_setting_get_type()) }
13103 }
13104}
13105
13106impl glib::HasParamSpec for SystemSetting {
13107 type ParamSpec = glib::ParamSpecEnum;
13108 type SetValue = Self;
13109 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13110
13111 fn param_spec_builder() -> Self::BuilderFn {
13112 Self::ParamSpec::builder_with_default
13113 }
13114}
13115
13116impl glib::value::ValueType for SystemSetting {
13117 type Type = Self;
13118}
13119
13120unsafe impl<'a> glib::value::FromValue<'a> for SystemSetting {
13121 type Checker = glib::value::GenericValueTypeChecker<Self>;
13122
13123 #[inline]
13124 unsafe fn from_value(value: &'a glib::Value) -> Self {
13125 skip_assert_initialized!();
13126 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13127 }
13128}
13129
13130impl ToValue for SystemSetting {
13131 #[inline]
13132 fn to_value(&self) -> glib::Value {
13133 let mut value = glib::Value::for_value_type::<Self>();
13134 unsafe {
13135 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13136 }
13137 value
13138 }
13139
13140 #[inline]
13141 fn value_type(&self) -> glib::Type {
13142 Self::static_type()
13143 }
13144}
13145
13146impl From<SystemSetting> for glib::Value {
13147 #[inline]
13148 fn from(v: SystemSetting) -> Self {
13149 skip_assert_initialized!();
13150 ToValue::to_value(&v)
13151 }
13152}
13153
13154#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13156#[non_exhaustive]
13157#[doc(alias = "GtkTextDirection")]
13158pub enum TextDirection {
13159 #[doc(alias = "GTK_TEXT_DIR_NONE")]
13161 None,
13162 #[doc(alias = "GTK_TEXT_DIR_LTR")]
13164 Ltr,
13165 #[doc(alias = "GTK_TEXT_DIR_RTL")]
13167 Rtl,
13168 #[doc(hidden)]
13169 __Unknown(i32),
13170}
13171
13172#[doc(hidden)]
13173impl IntoGlib for TextDirection {
13174 type GlibType = ffi::GtkTextDirection;
13175
13176 #[inline]
13177 fn into_glib(self) -> ffi::GtkTextDirection {
13178 match self {
13179 Self::None => ffi::GTK_TEXT_DIR_NONE,
13180 Self::Ltr => ffi::GTK_TEXT_DIR_LTR,
13181 Self::Rtl => ffi::GTK_TEXT_DIR_RTL,
13182 Self::__Unknown(value) => value,
13183 }
13184 }
13185}
13186
13187#[doc(hidden)]
13188impl FromGlib<ffi::GtkTextDirection> for TextDirection {
13189 #[inline]
13190 unsafe fn from_glib(value: ffi::GtkTextDirection) -> Self {
13191 skip_assert_initialized!();
13192
13193 match value {
13194 ffi::GTK_TEXT_DIR_NONE => Self::None,
13195 ffi::GTK_TEXT_DIR_LTR => Self::Ltr,
13196 ffi::GTK_TEXT_DIR_RTL => Self::Rtl,
13197 value => Self::__Unknown(value),
13198 }
13199 }
13200}
13201
13202impl StaticType for TextDirection {
13203 #[inline]
13204 #[doc(alias = "gtk_text_direction_get_type")]
13205 fn static_type() -> glib::Type {
13206 unsafe { from_glib(ffi::gtk_text_direction_get_type()) }
13207 }
13208}
13209
13210impl glib::HasParamSpec for TextDirection {
13211 type ParamSpec = glib::ParamSpecEnum;
13212 type SetValue = Self;
13213 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13214
13215 fn param_spec_builder() -> Self::BuilderFn {
13216 Self::ParamSpec::builder_with_default
13217 }
13218}
13219
13220impl glib::value::ValueType for TextDirection {
13221 type Type = Self;
13222}
13223
13224unsafe impl<'a> glib::value::FromValue<'a> for TextDirection {
13225 type Checker = glib::value::GenericValueTypeChecker<Self>;
13226
13227 #[inline]
13228 unsafe fn from_value(value: &'a glib::Value) -> Self {
13229 skip_assert_initialized!();
13230 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13231 }
13232}
13233
13234impl ToValue for TextDirection {
13235 #[inline]
13236 fn to_value(&self) -> glib::Value {
13237 let mut value = glib::Value::for_value_type::<Self>();
13238 unsafe {
13239 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13240 }
13241 value
13242 }
13243
13244 #[inline]
13245 fn value_type(&self) -> glib::Type {
13246 Self::static_type()
13247 }
13248}
13249
13250impl From<TextDirection> for glib::Value {
13251 #[inline]
13252 fn from(v: TextDirection) -> Self {
13253 skip_assert_initialized!();
13254 ToValue::to_value(&v)
13255 }
13256}
13257
13258#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13261#[non_exhaustive]
13262#[doc(alias = "GtkTextExtendSelection")]
13263pub enum TextExtendSelection {
13264 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_WORD")]
13267 Word,
13268 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_LINE")]
13271 Line,
13272 #[doc(hidden)]
13273 __Unknown(i32),
13274}
13275
13276#[doc(hidden)]
13277impl IntoGlib for TextExtendSelection {
13278 type GlibType = ffi::GtkTextExtendSelection;
13279
13280 #[inline]
13281 fn into_glib(self) -> ffi::GtkTextExtendSelection {
13282 match self {
13283 Self::Word => ffi::GTK_TEXT_EXTEND_SELECTION_WORD,
13284 Self::Line => ffi::GTK_TEXT_EXTEND_SELECTION_LINE,
13285 Self::__Unknown(value) => value,
13286 }
13287 }
13288}
13289
13290#[doc(hidden)]
13291impl FromGlib<ffi::GtkTextExtendSelection> for TextExtendSelection {
13292 #[inline]
13293 unsafe fn from_glib(value: ffi::GtkTextExtendSelection) -> Self {
13294 skip_assert_initialized!();
13295
13296 match value {
13297 ffi::GTK_TEXT_EXTEND_SELECTION_WORD => Self::Word,
13298 ffi::GTK_TEXT_EXTEND_SELECTION_LINE => Self::Line,
13299 value => Self::__Unknown(value),
13300 }
13301 }
13302}
13303
13304impl StaticType for TextExtendSelection {
13305 #[inline]
13306 #[doc(alias = "gtk_text_extend_selection_get_type")]
13307 fn static_type() -> glib::Type {
13308 unsafe { from_glib(ffi::gtk_text_extend_selection_get_type()) }
13309 }
13310}
13311
13312impl glib::HasParamSpec for TextExtendSelection {
13313 type ParamSpec = glib::ParamSpecEnum;
13314 type SetValue = Self;
13315 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13316
13317 fn param_spec_builder() -> Self::BuilderFn {
13318 Self::ParamSpec::builder_with_default
13319 }
13320}
13321
13322impl glib::value::ValueType for TextExtendSelection {
13323 type Type = Self;
13324}
13325
13326unsafe impl<'a> glib::value::FromValue<'a> for TextExtendSelection {
13327 type Checker = glib::value::GenericValueTypeChecker<Self>;
13328
13329 #[inline]
13330 unsafe fn from_value(value: &'a glib::Value) -> Self {
13331 skip_assert_initialized!();
13332 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13333 }
13334}
13335
13336impl ToValue for TextExtendSelection {
13337 #[inline]
13338 fn to_value(&self) -> glib::Value {
13339 let mut value = glib::Value::for_value_type::<Self>();
13340 unsafe {
13341 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13342 }
13343 value
13344 }
13345
13346 #[inline]
13347 fn value_type(&self) -> glib::Type {
13348 Self::static_type()
13349 }
13350}
13351
13352impl From<TextExtendSelection> for glib::Value {
13353 #[inline]
13354 fn from(v: TextExtendSelection) -> Self {
13355 skip_assert_initialized!();
13356 ToValue::to_value(&v)
13357 }
13358}
13359
13360#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13363#[non_exhaustive]
13364#[doc(alias = "GtkTextViewLayer")]
13365pub enum TextViewLayer {
13366 #[doc(alias = "GTK_TEXT_VIEW_LAYER_BELOW_TEXT")]
13368 BelowText,
13369 #[doc(alias = "GTK_TEXT_VIEW_LAYER_ABOVE_TEXT")]
13371 AboveText,
13372 #[doc(hidden)]
13373 __Unknown(i32),
13374}
13375
13376#[doc(hidden)]
13377impl IntoGlib for TextViewLayer {
13378 type GlibType = ffi::GtkTextViewLayer;
13379
13380 #[inline]
13381 fn into_glib(self) -> ffi::GtkTextViewLayer {
13382 match self {
13383 Self::BelowText => ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT,
13384 Self::AboveText => ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT,
13385 Self::__Unknown(value) => value,
13386 }
13387 }
13388}
13389
13390#[doc(hidden)]
13391impl FromGlib<ffi::GtkTextViewLayer> for TextViewLayer {
13392 #[inline]
13393 unsafe fn from_glib(value: ffi::GtkTextViewLayer) -> Self {
13394 skip_assert_initialized!();
13395
13396 match value {
13397 ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT => Self::BelowText,
13398 ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT => Self::AboveText,
13399 value => Self::__Unknown(value),
13400 }
13401 }
13402}
13403
13404impl StaticType for TextViewLayer {
13405 #[inline]
13406 #[doc(alias = "gtk_text_view_layer_get_type")]
13407 fn static_type() -> glib::Type {
13408 unsafe { from_glib(ffi::gtk_text_view_layer_get_type()) }
13409 }
13410}
13411
13412impl glib::HasParamSpec for TextViewLayer {
13413 type ParamSpec = glib::ParamSpecEnum;
13414 type SetValue = Self;
13415 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13416
13417 fn param_spec_builder() -> Self::BuilderFn {
13418 Self::ParamSpec::builder_with_default
13419 }
13420}
13421
13422impl glib::value::ValueType for TextViewLayer {
13423 type Type = Self;
13424}
13425
13426unsafe impl<'a> glib::value::FromValue<'a> for TextViewLayer {
13427 type Checker = glib::value::GenericValueTypeChecker<Self>;
13428
13429 #[inline]
13430 unsafe fn from_value(value: &'a glib::Value) -> Self {
13431 skip_assert_initialized!();
13432 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13433 }
13434}
13435
13436impl ToValue for TextViewLayer {
13437 #[inline]
13438 fn to_value(&self) -> glib::Value {
13439 let mut value = glib::Value::for_value_type::<Self>();
13440 unsafe {
13441 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13442 }
13443 value
13444 }
13445
13446 #[inline]
13447 fn value_type(&self) -> glib::Type {
13448 Self::static_type()
13449 }
13450}
13451
13452impl From<TextViewLayer> for glib::Value {
13453 #[inline]
13454 fn from(v: TextViewLayer) -> Self {
13455 skip_assert_initialized!();
13456 ToValue::to_value(&v)
13457 }
13458}
13459
13460#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13462#[non_exhaustive]
13463#[doc(alias = "GtkTextWindowType")]
13464pub enum TextWindowType {
13465 #[doc(alias = "GTK_TEXT_WINDOW_WIDGET")]
13467 Widget,
13468 #[doc(alias = "GTK_TEXT_WINDOW_TEXT")]
13470 Text,
13471 #[doc(alias = "GTK_TEXT_WINDOW_LEFT")]
13473 Left,
13474 #[doc(alias = "GTK_TEXT_WINDOW_RIGHT")]
13476 Right,
13477 #[doc(alias = "GTK_TEXT_WINDOW_TOP")]
13479 Top,
13480 #[doc(alias = "GTK_TEXT_WINDOW_BOTTOM")]
13482 Bottom,
13483 #[doc(hidden)]
13484 __Unknown(i32),
13485}
13486
13487#[doc(hidden)]
13488impl IntoGlib for TextWindowType {
13489 type GlibType = ffi::GtkTextWindowType;
13490
13491 #[inline]
13492 fn into_glib(self) -> ffi::GtkTextWindowType {
13493 match self {
13494 Self::Widget => ffi::GTK_TEXT_WINDOW_WIDGET,
13495 Self::Text => ffi::GTK_TEXT_WINDOW_TEXT,
13496 Self::Left => ffi::GTK_TEXT_WINDOW_LEFT,
13497 Self::Right => ffi::GTK_TEXT_WINDOW_RIGHT,
13498 Self::Top => ffi::GTK_TEXT_WINDOW_TOP,
13499 Self::Bottom => ffi::GTK_TEXT_WINDOW_BOTTOM,
13500 Self::__Unknown(value) => value,
13501 }
13502 }
13503}
13504
13505#[doc(hidden)]
13506impl FromGlib<ffi::GtkTextWindowType> for TextWindowType {
13507 #[inline]
13508 unsafe fn from_glib(value: ffi::GtkTextWindowType) -> Self {
13509 skip_assert_initialized!();
13510
13511 match value {
13512 ffi::GTK_TEXT_WINDOW_WIDGET => Self::Widget,
13513 ffi::GTK_TEXT_WINDOW_TEXT => Self::Text,
13514 ffi::GTK_TEXT_WINDOW_LEFT => Self::Left,
13515 ffi::GTK_TEXT_WINDOW_RIGHT => Self::Right,
13516 ffi::GTK_TEXT_WINDOW_TOP => Self::Top,
13517 ffi::GTK_TEXT_WINDOW_BOTTOM => Self::Bottom,
13518 value => Self::__Unknown(value),
13519 }
13520 }
13521}
13522
13523impl StaticType for TextWindowType {
13524 #[inline]
13525 #[doc(alias = "gtk_text_window_type_get_type")]
13526 fn static_type() -> glib::Type {
13527 unsafe { from_glib(ffi::gtk_text_window_type_get_type()) }
13528 }
13529}
13530
13531impl glib::HasParamSpec for TextWindowType {
13532 type ParamSpec = glib::ParamSpecEnum;
13533 type SetValue = Self;
13534 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13535
13536 fn param_spec_builder() -> Self::BuilderFn {
13537 Self::ParamSpec::builder_with_default
13538 }
13539}
13540
13541impl glib::value::ValueType for TextWindowType {
13542 type Type = Self;
13543}
13544
13545unsafe impl<'a> glib::value::FromValue<'a> for TextWindowType {
13546 type Checker = glib::value::GenericValueTypeChecker<Self>;
13547
13548 #[inline]
13549 unsafe fn from_value(value: &'a glib::Value) -> Self {
13550 skip_assert_initialized!();
13551 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13552 }
13553}
13554
13555impl ToValue for TextWindowType {
13556 #[inline]
13557 fn to_value(&self) -> glib::Value {
13558 let mut value = glib::Value::for_value_type::<Self>();
13559 unsafe {
13560 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13561 }
13562 value
13563 }
13564
13565 #[inline]
13566 fn value_type(&self) -> glib::Type {
13567 Self::static_type()
13568 }
13569}
13570
13571impl From<TextWindowType> for glib::Value {
13572 #[inline]
13573 fn from(v: TextWindowType) -> Self {
13574 skip_assert_initialized!();
13575 ToValue::to_value(&v)
13576 }
13577}
13578
13579#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13587#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13588#[non_exhaustive]
13589#[doc(alias = "GtkTreeViewColumnSizing")]
13590pub enum TreeViewColumnSizing {
13591 #[doc(alias = "GTK_TREE_VIEW_COLUMN_GROW_ONLY")]
13593 GrowOnly,
13594 #[doc(alias = "GTK_TREE_VIEW_COLUMN_AUTOSIZE")]
13596 Autosize,
13597 #[doc(alias = "GTK_TREE_VIEW_COLUMN_FIXED")]
13599 Fixed,
13600 #[doc(hidden)]
13601 __Unknown(i32),
13602}
13603
13604#[allow(deprecated)]
13605#[doc(hidden)]
13606impl IntoGlib for TreeViewColumnSizing {
13607 type GlibType = ffi::GtkTreeViewColumnSizing;
13608
13609 #[inline]
13610 fn into_glib(self) -> ffi::GtkTreeViewColumnSizing {
13611 match self {
13612 Self::GrowOnly => ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY,
13613 Self::Autosize => ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE,
13614 Self::Fixed => ffi::GTK_TREE_VIEW_COLUMN_FIXED,
13615 Self::__Unknown(value) => value,
13616 }
13617 }
13618}
13619
13620#[allow(deprecated)]
13621#[doc(hidden)]
13622impl FromGlib<ffi::GtkTreeViewColumnSizing> for TreeViewColumnSizing {
13623 #[inline]
13624 unsafe fn from_glib(value: ffi::GtkTreeViewColumnSizing) -> Self {
13625 skip_assert_initialized!();
13626
13627 match value {
13628 ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY => Self::GrowOnly,
13629 ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE => Self::Autosize,
13630 ffi::GTK_TREE_VIEW_COLUMN_FIXED => Self::Fixed,
13631 value => Self::__Unknown(value),
13632 }
13633 }
13634}
13635
13636#[allow(deprecated)]
13637impl StaticType for TreeViewColumnSizing {
13638 #[inline]
13639 #[doc(alias = "gtk_tree_view_column_sizing_get_type")]
13640 fn static_type() -> glib::Type {
13641 unsafe { from_glib(ffi::gtk_tree_view_column_sizing_get_type()) }
13642 }
13643}
13644
13645#[allow(deprecated)]
13646impl glib::HasParamSpec for TreeViewColumnSizing {
13647 type ParamSpec = glib::ParamSpecEnum;
13648 type SetValue = Self;
13649 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13650
13651 fn param_spec_builder() -> Self::BuilderFn {
13652 Self::ParamSpec::builder_with_default
13653 }
13654}
13655
13656#[allow(deprecated)]
13657impl glib::value::ValueType for TreeViewColumnSizing {
13658 type Type = Self;
13659}
13660
13661#[allow(deprecated)]
13662unsafe impl<'a> glib::value::FromValue<'a> for TreeViewColumnSizing {
13663 type Checker = glib::value::GenericValueTypeChecker<Self>;
13664
13665 #[inline]
13666 unsafe fn from_value(value: &'a glib::Value) -> Self {
13667 skip_assert_initialized!();
13668 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13669 }
13670}
13671
13672#[allow(deprecated)]
13673impl ToValue for TreeViewColumnSizing {
13674 #[inline]
13675 fn to_value(&self) -> glib::Value {
13676 let mut value = glib::Value::for_value_type::<Self>();
13677 unsafe {
13678 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13679 }
13680 value
13681 }
13682
13683 #[inline]
13684 fn value_type(&self) -> glib::Type {
13685 Self::static_type()
13686 }
13687}
13688
13689#[allow(deprecated)]
13690impl From<TreeViewColumnSizing> for glib::Value {
13691 #[inline]
13692 fn from(v: TreeViewColumnSizing) -> Self {
13693 skip_assert_initialized!();
13694 ToValue::to_value(&v)
13695 }
13696}
13697
13698#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13704#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13705#[non_exhaustive]
13706#[doc(alias = "GtkTreeViewDropPosition")]
13707pub enum TreeViewDropPosition {
13708 #[doc(alias = "GTK_TREE_VIEW_DROP_BEFORE")]
13710 Before,
13711 #[doc(alias = "GTK_TREE_VIEW_DROP_AFTER")]
13713 After,
13714 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_BEFORE")]
13716 IntoOrBefore,
13717 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_AFTER")]
13719 IntoOrAfter,
13720 #[doc(hidden)]
13721 __Unknown(i32),
13722}
13723
13724#[allow(deprecated)]
13725#[doc(hidden)]
13726impl IntoGlib for TreeViewDropPosition {
13727 type GlibType = ffi::GtkTreeViewDropPosition;
13728
13729 #[inline]
13730 fn into_glib(self) -> ffi::GtkTreeViewDropPosition {
13731 match self {
13732 Self::Before => ffi::GTK_TREE_VIEW_DROP_BEFORE,
13733 Self::After => ffi::GTK_TREE_VIEW_DROP_AFTER,
13734 Self::IntoOrBefore => ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE,
13735 Self::IntoOrAfter => ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER,
13736 Self::__Unknown(value) => value,
13737 }
13738 }
13739}
13740
13741#[allow(deprecated)]
13742#[doc(hidden)]
13743impl FromGlib<ffi::GtkTreeViewDropPosition> for TreeViewDropPosition {
13744 #[inline]
13745 unsafe fn from_glib(value: ffi::GtkTreeViewDropPosition) -> Self {
13746 skip_assert_initialized!();
13747
13748 match value {
13749 ffi::GTK_TREE_VIEW_DROP_BEFORE => Self::Before,
13750 ffi::GTK_TREE_VIEW_DROP_AFTER => Self::After,
13751 ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE => Self::IntoOrBefore,
13752 ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER => Self::IntoOrAfter,
13753 value => Self::__Unknown(value),
13754 }
13755 }
13756}
13757
13758#[allow(deprecated)]
13759impl StaticType for TreeViewDropPosition {
13760 #[inline]
13761 #[doc(alias = "gtk_tree_view_drop_position_get_type")]
13762 fn static_type() -> glib::Type {
13763 unsafe { from_glib(ffi::gtk_tree_view_drop_position_get_type()) }
13764 }
13765}
13766
13767#[allow(deprecated)]
13768impl glib::HasParamSpec for TreeViewDropPosition {
13769 type ParamSpec = glib::ParamSpecEnum;
13770 type SetValue = Self;
13771 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13772
13773 fn param_spec_builder() -> Self::BuilderFn {
13774 Self::ParamSpec::builder_with_default
13775 }
13776}
13777
13778#[allow(deprecated)]
13779impl glib::value::ValueType for TreeViewDropPosition {
13780 type Type = Self;
13781}
13782
13783#[allow(deprecated)]
13784unsafe impl<'a> glib::value::FromValue<'a> for TreeViewDropPosition {
13785 type Checker = glib::value::GenericValueTypeChecker<Self>;
13786
13787 #[inline]
13788 unsafe fn from_value(value: &'a glib::Value) -> Self {
13789 skip_assert_initialized!();
13790 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13791 }
13792}
13793
13794#[allow(deprecated)]
13795impl ToValue for TreeViewDropPosition {
13796 #[inline]
13797 fn to_value(&self) -> glib::Value {
13798 let mut value = glib::Value::for_value_type::<Self>();
13799 unsafe {
13800 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13801 }
13802 value
13803 }
13804
13805 #[inline]
13806 fn value_type(&self) -> glib::Type {
13807 Self::static_type()
13808 }
13809}
13810
13811#[allow(deprecated)]
13812impl From<TreeViewDropPosition> for glib::Value {
13813 #[inline]
13814 fn from(v: TreeViewDropPosition) -> Self {
13815 skip_assert_initialized!();
13816 ToValue::to_value(&v)
13817 }
13818}
13819
13820#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13826#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13827#[non_exhaustive]
13828#[doc(alias = "GtkTreeViewGridLines")]
13829pub enum TreeViewGridLines {
13830 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_NONE")]
13832 None,
13833 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_HORIZONTAL")]
13835 Horizontal,
13836 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_VERTICAL")]
13838 Vertical,
13839 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_BOTH")]
13841 Both,
13842 #[doc(hidden)]
13843 __Unknown(i32),
13844}
13845
13846#[allow(deprecated)]
13847#[doc(hidden)]
13848impl IntoGlib for TreeViewGridLines {
13849 type GlibType = ffi::GtkTreeViewGridLines;
13850
13851 #[inline]
13852 fn into_glib(self) -> ffi::GtkTreeViewGridLines {
13853 match self {
13854 Self::None => ffi::GTK_TREE_VIEW_GRID_LINES_NONE,
13855 Self::Horizontal => ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL,
13856 Self::Vertical => ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL,
13857 Self::Both => ffi::GTK_TREE_VIEW_GRID_LINES_BOTH,
13858 Self::__Unknown(value) => value,
13859 }
13860 }
13861}
13862
13863#[allow(deprecated)]
13864#[doc(hidden)]
13865impl FromGlib<ffi::GtkTreeViewGridLines> for TreeViewGridLines {
13866 #[inline]
13867 unsafe fn from_glib(value: ffi::GtkTreeViewGridLines) -> Self {
13868 skip_assert_initialized!();
13869
13870 match value {
13871 ffi::GTK_TREE_VIEW_GRID_LINES_NONE => Self::None,
13872 ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL => Self::Horizontal,
13873 ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL => Self::Vertical,
13874 ffi::GTK_TREE_VIEW_GRID_LINES_BOTH => Self::Both,
13875 value => Self::__Unknown(value),
13876 }
13877 }
13878}
13879
13880#[allow(deprecated)]
13881impl StaticType for TreeViewGridLines {
13882 #[inline]
13883 #[doc(alias = "gtk_tree_view_grid_lines_get_type")]
13884 fn static_type() -> glib::Type {
13885 unsafe { from_glib(ffi::gtk_tree_view_grid_lines_get_type()) }
13886 }
13887}
13888
13889#[allow(deprecated)]
13890impl glib::HasParamSpec for TreeViewGridLines {
13891 type ParamSpec = glib::ParamSpecEnum;
13892 type SetValue = Self;
13893 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13894
13895 fn param_spec_builder() -> Self::BuilderFn {
13896 Self::ParamSpec::builder_with_default
13897 }
13898}
13899
13900#[allow(deprecated)]
13901impl glib::value::ValueType for TreeViewGridLines {
13902 type Type = Self;
13903}
13904
13905#[allow(deprecated)]
13906unsafe impl<'a> glib::value::FromValue<'a> for TreeViewGridLines {
13907 type Checker = glib::value::GenericValueTypeChecker<Self>;
13908
13909 #[inline]
13910 unsafe fn from_value(value: &'a glib::Value) -> Self {
13911 skip_assert_initialized!();
13912 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13913 }
13914}
13915
13916#[allow(deprecated)]
13917impl ToValue for TreeViewGridLines {
13918 #[inline]
13919 fn to_value(&self) -> glib::Value {
13920 let mut value = glib::Value::for_value_type::<Self>();
13921 unsafe {
13922 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13923 }
13924 value
13925 }
13926
13927 #[inline]
13928 fn value_type(&self) -> glib::Type {
13929 Self::static_type()
13930 }
13931}
13932
13933#[allow(deprecated)]
13934impl From<TreeViewGridLines> for glib::Value {
13935 #[inline]
13936 fn from(v: TreeViewGridLines) -> Self {
13937 skip_assert_initialized!();
13938 ToValue::to_value(&v)
13939 }
13940}
13941
13942#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13944#[non_exhaustive]
13945#[doc(alias = "GtkUnit")]
13946pub enum Unit {
13947 #[doc(alias = "GTK_UNIT_NONE")]
13949 None,
13950 #[doc(alias = "GTK_UNIT_POINTS")]
13952 Points,
13953 #[doc(alias = "GTK_UNIT_INCH")]
13955 Inch,
13956 #[doc(alias = "GTK_UNIT_MM")]
13958 Mm,
13959 #[doc(hidden)]
13960 __Unknown(i32),
13961}
13962
13963#[doc(hidden)]
13964impl IntoGlib for Unit {
13965 type GlibType = ffi::GtkUnit;
13966
13967 #[inline]
13968 fn into_glib(self) -> ffi::GtkUnit {
13969 match self {
13970 Self::None => ffi::GTK_UNIT_NONE,
13971 Self::Points => ffi::GTK_UNIT_POINTS,
13972 Self::Inch => ffi::GTK_UNIT_INCH,
13973 Self::Mm => ffi::GTK_UNIT_MM,
13974 Self::__Unknown(value) => value,
13975 }
13976 }
13977}
13978
13979#[doc(hidden)]
13980impl FromGlib<ffi::GtkUnit> for Unit {
13981 #[inline]
13982 unsafe fn from_glib(value: ffi::GtkUnit) -> Self {
13983 skip_assert_initialized!();
13984
13985 match value {
13986 ffi::GTK_UNIT_NONE => Self::None,
13987 ffi::GTK_UNIT_POINTS => Self::Points,
13988 ffi::GTK_UNIT_INCH => Self::Inch,
13989 ffi::GTK_UNIT_MM => Self::Mm,
13990 value => Self::__Unknown(value),
13991 }
13992 }
13993}
13994
13995impl StaticType for Unit {
13996 #[inline]
13997 #[doc(alias = "gtk_unit_get_type")]
13998 fn static_type() -> glib::Type {
13999 unsafe { from_glib(ffi::gtk_unit_get_type()) }
14000 }
14001}
14002
14003impl glib::HasParamSpec for Unit {
14004 type ParamSpec = glib::ParamSpecEnum;
14005 type SetValue = Self;
14006 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14007
14008 fn param_spec_builder() -> Self::BuilderFn {
14009 Self::ParamSpec::builder_with_default
14010 }
14011}
14012
14013impl glib::value::ValueType for Unit {
14014 type Type = Self;
14015}
14016
14017unsafe impl<'a> glib::value::FromValue<'a> for Unit {
14018 type Checker = glib::value::GenericValueTypeChecker<Self>;
14019
14020 #[inline]
14021 unsafe fn from_value(value: &'a glib::Value) -> Self {
14022 skip_assert_initialized!();
14023 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14024 }
14025}
14026
14027impl ToValue for Unit {
14028 #[inline]
14029 fn to_value(&self) -> glib::Value {
14030 let mut value = glib::Value::for_value_type::<Self>();
14031 unsafe {
14032 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14033 }
14034 value
14035 }
14036
14037 #[inline]
14038 fn value_type(&self) -> glib::Type {
14039 Self::static_type()
14040 }
14041}
14042
14043impl From<Unit> for glib::Value {
14044 #[inline]
14045 fn from(v: Unit) -> Self {
14046 skip_assert_initialized!();
14047 ToValue::to_value(&v)
14048 }
14049}
14050
14051#[cfg(feature = "v4_20")]
14054#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14055#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14056#[non_exhaustive]
14057#[doc(alias = "GtkWindowGravity")]
14058pub enum WindowGravity {
14059 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_LEFT")]
14061 TopLeft,
14062 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP")]
14064 Top,
14065 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_RIGHT")]
14067 TopRight,
14068 #[doc(alias = "GTK_WINDOW_GRAVITY_LEFT")]
14070 Left,
14071 #[doc(alias = "GTK_WINDOW_GRAVITY_CENTER")]
14073 Center,
14074 #[doc(alias = "GTK_WINDOW_GRAVITY_RIGHT")]
14076 Right,
14077 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_LEFT")]
14079 BottomLeft,
14080 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM")]
14082 Bottom,
14083 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_RIGHT")]
14085 BottomRight,
14086 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_START")]
14089 TopStart,
14090 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_END")]
14093 TopEnd,
14094 #[doc(alias = "GTK_WINDOW_GRAVITY_START")]
14097 Start,
14098 #[doc(alias = "GTK_WINDOW_GRAVITY_END")]
14101 End,
14102 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_START")]
14105 BottomStart,
14106 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_END")]
14109 BottomEnd,
14110 #[doc(hidden)]
14111 __Unknown(i32),
14112}
14113
14114#[cfg(feature = "v4_20")]
14115#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14116#[doc(hidden)]
14117impl IntoGlib for WindowGravity {
14118 type GlibType = ffi::GtkWindowGravity;
14119
14120 fn into_glib(self) -> ffi::GtkWindowGravity {
14121 match self {
14122 Self::TopLeft => ffi::GTK_WINDOW_GRAVITY_TOP_LEFT,
14123 Self::Top => ffi::GTK_WINDOW_GRAVITY_TOP,
14124 Self::TopRight => ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT,
14125 Self::Left => ffi::GTK_WINDOW_GRAVITY_LEFT,
14126 Self::Center => ffi::GTK_WINDOW_GRAVITY_CENTER,
14127 Self::Right => ffi::GTK_WINDOW_GRAVITY_RIGHT,
14128 Self::BottomLeft => ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT,
14129 Self::Bottom => ffi::GTK_WINDOW_GRAVITY_BOTTOM,
14130 Self::BottomRight => ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT,
14131 Self::TopStart => ffi::GTK_WINDOW_GRAVITY_TOP_START,
14132 Self::TopEnd => ffi::GTK_WINDOW_GRAVITY_TOP_END,
14133 Self::Start => ffi::GTK_WINDOW_GRAVITY_START,
14134 Self::End => ffi::GTK_WINDOW_GRAVITY_END,
14135 Self::BottomStart => ffi::GTK_WINDOW_GRAVITY_BOTTOM_START,
14136 Self::BottomEnd => ffi::GTK_WINDOW_GRAVITY_BOTTOM_END,
14137 Self::__Unknown(value) => value,
14138 }
14139 }
14140}
14141
14142#[cfg(feature = "v4_20")]
14143#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14144#[doc(hidden)]
14145impl FromGlib<ffi::GtkWindowGravity> for WindowGravity {
14146 unsafe fn from_glib(value: ffi::GtkWindowGravity) -> Self {
14147 skip_assert_initialized!();
14148
14149 match value {
14150 ffi::GTK_WINDOW_GRAVITY_TOP_LEFT => Self::TopLeft,
14151 ffi::GTK_WINDOW_GRAVITY_TOP => Self::Top,
14152 ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT => Self::TopRight,
14153 ffi::GTK_WINDOW_GRAVITY_LEFT => Self::Left,
14154 ffi::GTK_WINDOW_GRAVITY_CENTER => Self::Center,
14155 ffi::GTK_WINDOW_GRAVITY_RIGHT => Self::Right,
14156 ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT => Self::BottomLeft,
14157 ffi::GTK_WINDOW_GRAVITY_BOTTOM => Self::Bottom,
14158 ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT => Self::BottomRight,
14159 ffi::GTK_WINDOW_GRAVITY_TOP_START => Self::TopStart,
14160 ffi::GTK_WINDOW_GRAVITY_TOP_END => Self::TopEnd,
14161 ffi::GTK_WINDOW_GRAVITY_START => Self::Start,
14162 ffi::GTK_WINDOW_GRAVITY_END => Self::End,
14163 ffi::GTK_WINDOW_GRAVITY_BOTTOM_START => Self::BottomStart,
14164 ffi::GTK_WINDOW_GRAVITY_BOTTOM_END => Self::BottomEnd,
14165 value => Self::__Unknown(value),
14166 }
14167 }
14168}
14169
14170#[cfg(feature = "v4_20")]
14171#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14172impl StaticType for WindowGravity {
14173 #[inline]
14174 #[doc(alias = "gtk_window_gravity_get_type")]
14175 fn static_type() -> glib::Type {
14176 unsafe { from_glib(ffi::gtk_window_gravity_get_type()) }
14177 }
14178}
14179
14180#[cfg(feature = "v4_20")]
14181#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14182impl glib::HasParamSpec for WindowGravity {
14183 type ParamSpec = glib::ParamSpecEnum;
14184 type SetValue = Self;
14185 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14186
14187 fn param_spec_builder() -> Self::BuilderFn {
14188 Self::ParamSpec::builder_with_default
14189 }
14190}
14191
14192#[cfg(feature = "v4_20")]
14193#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14194impl glib::value::ValueType for WindowGravity {
14195 type Type = Self;
14196}
14197
14198#[cfg(feature = "v4_20")]
14199#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14200unsafe impl<'a> glib::value::FromValue<'a> for WindowGravity {
14201 type Checker = glib::value::GenericValueTypeChecker<Self>;
14202
14203 #[inline]
14204 unsafe fn from_value(value: &'a glib::Value) -> Self {
14205 skip_assert_initialized!();
14206 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14207 }
14208}
14209
14210#[cfg(feature = "v4_20")]
14211#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14212impl ToValue for WindowGravity {
14213 #[inline]
14214 fn to_value(&self) -> glib::Value {
14215 let mut value = glib::Value::for_value_type::<Self>();
14216 unsafe {
14217 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14218 }
14219 value
14220 }
14221
14222 #[inline]
14223 fn value_type(&self) -> glib::Type {
14224 Self::static_type()
14225 }
14226}
14227
14228#[cfg(feature = "v4_20")]
14229#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14230impl From<WindowGravity> for glib::Value {
14231 #[inline]
14232 fn from(v: WindowGravity) -> Self {
14233 skip_assert_initialized!();
14234 ToValue::to_value(&v)
14235 }
14236}
14237
14238#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14240#[non_exhaustive]
14241#[doc(alias = "GtkWrapMode")]
14242pub enum WrapMode {
14243 #[doc(alias = "GTK_WRAP_NONE")]
14245 None,
14246 #[doc(alias = "GTK_WRAP_CHAR")]
14250 Char,
14251 #[doc(alias = "GTK_WRAP_WORD")]
14253 Word,
14254 #[doc(alias = "GTK_WRAP_WORD_CHAR")]
14257 WordChar,
14258 #[doc(hidden)]
14259 __Unknown(i32),
14260}
14261
14262#[doc(hidden)]
14263impl IntoGlib for WrapMode {
14264 type GlibType = ffi::GtkWrapMode;
14265
14266 #[inline]
14267 fn into_glib(self) -> ffi::GtkWrapMode {
14268 match self {
14269 Self::None => ffi::GTK_WRAP_NONE,
14270 Self::Char => ffi::GTK_WRAP_CHAR,
14271 Self::Word => ffi::GTK_WRAP_WORD,
14272 Self::WordChar => ffi::GTK_WRAP_WORD_CHAR,
14273 Self::__Unknown(value) => value,
14274 }
14275 }
14276}
14277
14278#[doc(hidden)]
14279impl FromGlib<ffi::GtkWrapMode> for WrapMode {
14280 #[inline]
14281 unsafe fn from_glib(value: ffi::GtkWrapMode) -> Self {
14282 skip_assert_initialized!();
14283
14284 match value {
14285 ffi::GTK_WRAP_NONE => Self::None,
14286 ffi::GTK_WRAP_CHAR => Self::Char,
14287 ffi::GTK_WRAP_WORD => Self::Word,
14288 ffi::GTK_WRAP_WORD_CHAR => Self::WordChar,
14289 value => Self::__Unknown(value),
14290 }
14291 }
14292}
14293
14294impl StaticType for WrapMode {
14295 #[inline]
14296 #[doc(alias = "gtk_wrap_mode_get_type")]
14297 fn static_type() -> glib::Type {
14298 unsafe { from_glib(ffi::gtk_wrap_mode_get_type()) }
14299 }
14300}
14301
14302impl glib::HasParamSpec for WrapMode {
14303 type ParamSpec = glib::ParamSpecEnum;
14304 type SetValue = Self;
14305 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14306
14307 fn param_spec_builder() -> Self::BuilderFn {
14308 Self::ParamSpec::builder_with_default
14309 }
14310}
14311
14312impl glib::value::ValueType for WrapMode {
14313 type Type = Self;
14314}
14315
14316unsafe impl<'a> glib::value::FromValue<'a> for WrapMode {
14317 type Checker = glib::value::GenericValueTypeChecker<Self>;
14318
14319 #[inline]
14320 unsafe fn from_value(value: &'a glib::Value) -> Self {
14321 skip_assert_initialized!();
14322 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14323 }
14324}
14325
14326impl ToValue for WrapMode {
14327 #[inline]
14328 fn to_value(&self) -> glib::Value {
14329 let mut value = glib::Value::for_value_type::<Self>();
14330 unsafe {
14331 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14332 }
14333 value
14334 }
14335
14336 #[inline]
14337 fn value_type(&self) -> glib::Type {
14338 Self::static_type()
14339 }
14340}
14341
14342impl From<WrapMode> for glib::Value {
14343 #[inline]
14344 fn from(v: WrapMode) -> Self {
14345 skip_assert_initialized!();
14346 ToValue::to_value(&v)
14347 }
14348}