1use crate::ffi;
6use glib::{prelude::*, translate::*};
7
8#[cfg(feature = "v4_14")]
10#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12#[non_exhaustive]
13#[doc(alias = "GtkAccessibleAnnouncementPriority")]
14pub enum AccessibleAnnouncementPriority {
15 #[doc(alias = "GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW")]
18 Low,
19 #[doc(alias = "GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM")]
23 Medium,
24 #[doc(alias = "GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH")]
31 High,
32 #[doc(hidden)]
33 __Unknown(i32),
34}
35
36#[cfg(feature = "v4_14")]
37#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
38#[doc(hidden)]
39impl IntoGlib for AccessibleAnnouncementPriority {
40 type GlibType = ffi::GtkAccessibleAnnouncementPriority;
41
42 #[inline]
43 fn into_glib(self) -> ffi::GtkAccessibleAnnouncementPriority {
44 match self {
45 Self::Low => ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW,
46 Self::Medium => ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM,
47 Self::High => ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH,
48 Self::__Unknown(value) => value,
49 }
50 }
51}
52
53#[cfg(feature = "v4_14")]
54#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
55#[doc(hidden)]
56impl FromGlib<ffi::GtkAccessibleAnnouncementPriority> for AccessibleAnnouncementPriority {
57 #[inline]
58 unsafe fn from_glib(value: ffi::GtkAccessibleAnnouncementPriority) -> Self {
59 skip_assert_initialized!();
60
61 match value {
62 ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW => Self::Low,
63 ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM => Self::Medium,
64 ffi::GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH => Self::High,
65 value => Self::__Unknown(value),
66 }
67 }
68}
69
70#[cfg(feature = "v4_14")]
71#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
72impl StaticType for AccessibleAnnouncementPriority {
73 #[inline]
74 #[doc(alias = "gtk_accessible_announcement_priority_get_type")]
75 fn static_type() -> glib::Type {
76 unsafe { from_glib(ffi::gtk_accessible_announcement_priority_get_type()) }
77 }
78}
79
80#[cfg(feature = "v4_14")]
81#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
82impl glib::HasParamSpec for AccessibleAnnouncementPriority {
83 type ParamSpec = glib::ParamSpecEnum;
84 type SetValue = Self;
85 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
86
87 fn param_spec_builder() -> Self::BuilderFn {
88 Self::ParamSpec::builder_with_default
89 }
90}
91
92#[cfg(feature = "v4_14")]
93#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
94impl glib::value::ValueType for AccessibleAnnouncementPriority {
95 type Type = Self;
96}
97
98#[cfg(feature = "v4_14")]
99#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
100unsafe impl<'a> glib::value::FromValue<'a> for AccessibleAnnouncementPriority {
101 type Checker = glib::value::GenericValueTypeChecker<Self>;
102
103 #[inline]
104 unsafe fn from_value(value: &'a glib::Value) -> Self {
105 skip_assert_initialized!();
106 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
107 }
108}
109
110#[cfg(feature = "v4_14")]
111#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
112impl ToValue for AccessibleAnnouncementPriority {
113 #[inline]
114 fn to_value(&self) -> glib::Value {
115 let mut value = glib::Value::for_value_type::<Self>();
116 unsafe {
117 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
118 }
119 value
120 }
121
122 #[inline]
123 fn value_type(&self) -> glib::Type {
124 Self::static_type()
125 }
126}
127
128#[cfg(feature = "v4_14")]
129#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
130impl From<AccessibleAnnouncementPriority> for glib::Value {
131 #[inline]
132 fn from(v: AccessibleAnnouncementPriority) -> Self {
133 skip_assert_initialized!();
134 ToValue::to_value(&v)
135 }
136}
137
138#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
141#[non_exhaustive]
142#[doc(alias = "GtkAccessibleAutocomplete")]
143pub enum AccessibleAutocomplete {
144 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_NONE")]
146 None,
147 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE")]
151 Inline,
152 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_LIST")]
156 List,
157 #[doc(alias = "GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH")]
163 Both,
164 #[doc(hidden)]
165 __Unknown(i32),
166}
167
168#[doc(hidden)]
169impl IntoGlib for AccessibleAutocomplete {
170 type GlibType = ffi::GtkAccessibleAutocomplete;
171
172 #[inline]
173 fn into_glib(self) -> ffi::GtkAccessibleAutocomplete {
174 match self {
175 Self::None => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_NONE,
176 Self::Inline => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE,
177 Self::List => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_LIST,
178 Self::Both => ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH,
179 Self::__Unknown(value) => value,
180 }
181 }
182}
183
184#[doc(hidden)]
185impl FromGlib<ffi::GtkAccessibleAutocomplete> for AccessibleAutocomplete {
186 #[inline]
187 unsafe fn from_glib(value: ffi::GtkAccessibleAutocomplete) -> Self {
188 skip_assert_initialized!();
189
190 match value {
191 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_NONE => Self::None,
192 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE => Self::Inline,
193 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_LIST => Self::List,
194 ffi::GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH => Self::Both,
195 value => Self::__Unknown(value),
196 }
197 }
198}
199
200impl StaticType for AccessibleAutocomplete {
201 #[inline]
202 #[doc(alias = "gtk_accessible_autocomplete_get_type")]
203 fn static_type() -> glib::Type {
204 unsafe { from_glib(ffi::gtk_accessible_autocomplete_get_type()) }
205 }
206}
207
208impl glib::HasParamSpec for AccessibleAutocomplete {
209 type ParamSpec = glib::ParamSpecEnum;
210 type SetValue = Self;
211 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
212
213 fn param_spec_builder() -> Self::BuilderFn {
214 Self::ParamSpec::builder_with_default
215 }
216}
217
218impl glib::value::ValueType for AccessibleAutocomplete {
219 type Type = Self;
220}
221
222unsafe impl<'a> glib::value::FromValue<'a> for AccessibleAutocomplete {
223 type Checker = glib::value::GenericValueTypeChecker<Self>;
224
225 #[inline]
226 unsafe fn from_value(value: &'a glib::Value) -> Self {
227 skip_assert_initialized!();
228 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
229 }
230}
231
232impl ToValue for AccessibleAutocomplete {
233 #[inline]
234 fn to_value(&self) -> glib::Value {
235 let mut value = glib::Value::for_value_type::<Self>();
236 unsafe {
237 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
238 }
239 value
240 }
241
242 #[inline]
243 fn value_type(&self) -> glib::Type {
244 Self::static_type()
245 }
246}
247
248impl From<AccessibleAutocomplete> for glib::Value {
249 #[inline]
250 fn from(v: AccessibleAutocomplete) -> Self {
251 skip_assert_initialized!();
252 ToValue::to_value(&v)
253 }
254}
255
256#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
263#[non_exhaustive]
264#[doc(alias = "GtkAccessibleInvalidState")]
265pub enum AccessibleInvalidState {
266 #[doc(alias = "GTK_ACCESSIBLE_INVALID_FALSE")]
268 False,
269 #[doc(alias = "GTK_ACCESSIBLE_INVALID_TRUE")]
271 True,
272 #[doc(alias = "GTK_ACCESSIBLE_INVALID_GRAMMAR")]
274 Grammar,
275 #[doc(alias = "GTK_ACCESSIBLE_INVALID_SPELLING")]
277 Spelling,
278 #[doc(hidden)]
279 __Unknown(i32),
280}
281
282#[doc(hidden)]
283impl IntoGlib for AccessibleInvalidState {
284 type GlibType = ffi::GtkAccessibleInvalidState;
285
286 #[inline]
287 fn into_glib(self) -> ffi::GtkAccessibleInvalidState {
288 match self {
289 Self::False => ffi::GTK_ACCESSIBLE_INVALID_FALSE,
290 Self::True => ffi::GTK_ACCESSIBLE_INVALID_TRUE,
291 Self::Grammar => ffi::GTK_ACCESSIBLE_INVALID_GRAMMAR,
292 Self::Spelling => ffi::GTK_ACCESSIBLE_INVALID_SPELLING,
293 Self::__Unknown(value) => value,
294 }
295 }
296}
297
298#[doc(hidden)]
299impl FromGlib<ffi::GtkAccessibleInvalidState> for AccessibleInvalidState {
300 #[inline]
301 unsafe fn from_glib(value: ffi::GtkAccessibleInvalidState) -> Self {
302 skip_assert_initialized!();
303
304 match value {
305 ffi::GTK_ACCESSIBLE_INVALID_FALSE => Self::False,
306 ffi::GTK_ACCESSIBLE_INVALID_TRUE => Self::True,
307 ffi::GTK_ACCESSIBLE_INVALID_GRAMMAR => Self::Grammar,
308 ffi::GTK_ACCESSIBLE_INVALID_SPELLING => Self::Spelling,
309 value => Self::__Unknown(value),
310 }
311 }
312}
313
314impl StaticType for AccessibleInvalidState {
315 #[inline]
316 #[doc(alias = "gtk_accessible_invalid_state_get_type")]
317 fn static_type() -> glib::Type {
318 unsafe { from_glib(ffi::gtk_accessible_invalid_state_get_type()) }
319 }
320}
321
322impl glib::HasParamSpec for AccessibleInvalidState {
323 type ParamSpec = glib::ParamSpecEnum;
324 type SetValue = Self;
325 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
326
327 fn param_spec_builder() -> Self::BuilderFn {
328 Self::ParamSpec::builder_with_default
329 }
330}
331
332impl glib::value::ValueType for AccessibleInvalidState {
333 type Type = Self;
334}
335
336unsafe impl<'a> glib::value::FromValue<'a> for AccessibleInvalidState {
337 type Checker = glib::value::GenericValueTypeChecker<Self>;
338
339 #[inline]
340 unsafe fn from_value(value: &'a glib::Value) -> Self {
341 skip_assert_initialized!();
342 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
343 }
344}
345
346impl ToValue for AccessibleInvalidState {
347 #[inline]
348 fn to_value(&self) -> glib::Value {
349 let mut value = glib::Value::for_value_type::<Self>();
350 unsafe {
351 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
352 }
353 value
354 }
355
356 #[inline]
357 fn value_type(&self) -> glib::Type {
358 Self::static_type()
359 }
360}
361
362impl From<AccessibleInvalidState> for glib::Value {
363 #[inline]
364 fn from(v: AccessibleInvalidState) -> Self {
365 skip_assert_initialized!();
366 ToValue::to_value(&v)
367 }
368}
369
370#[cfg(feature = "v4_10")]
373#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
374#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
375#[non_exhaustive]
376#[doc(alias = "GtkAccessiblePlatformState")]
377pub enum AccessiblePlatformState {
378 #[doc(alias = "GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE")]
380 Focusable,
381 #[doc(alias = "GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED")]
383 Focused,
384 #[doc(alias = "GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE")]
386 Active,
387 #[doc(hidden)]
388 __Unknown(i32),
389}
390
391#[cfg(feature = "v4_10")]
392#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
393#[doc(hidden)]
394impl IntoGlib for AccessiblePlatformState {
395 type GlibType = ffi::GtkAccessiblePlatformState;
396
397 #[inline]
398 fn into_glib(self) -> ffi::GtkAccessiblePlatformState {
399 match self {
400 Self::Focusable => ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE,
401 Self::Focused => ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED,
402 Self::Active => ffi::GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE,
403 Self::__Unknown(value) => value,
404 }
405 }
406}
407
408#[cfg(feature = "v4_10")]
409#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
410#[doc(hidden)]
411impl FromGlib<ffi::GtkAccessiblePlatformState> for AccessiblePlatformState {
412 #[inline]
413 unsafe fn from_glib(value: ffi::GtkAccessiblePlatformState) -> Self {
414 skip_assert_initialized!();
415
416 match value {
417 ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE => Self::Focusable,
418 ffi::GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED => Self::Focused,
419 ffi::GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE => Self::Active,
420 value => Self::__Unknown(value),
421 }
422 }
423}
424
425#[cfg(feature = "v4_10")]
426#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
427impl StaticType for AccessiblePlatformState {
428 #[inline]
429 #[doc(alias = "gtk_accessible_platform_state_get_type")]
430 fn static_type() -> glib::Type {
431 unsafe { from_glib(ffi::gtk_accessible_platform_state_get_type()) }
432 }
433}
434
435#[cfg(feature = "v4_10")]
436#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
437impl glib::HasParamSpec for AccessiblePlatformState {
438 type ParamSpec = glib::ParamSpecEnum;
439 type SetValue = Self;
440 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
441
442 fn param_spec_builder() -> Self::BuilderFn {
443 Self::ParamSpec::builder_with_default
444 }
445}
446
447#[cfg(feature = "v4_10")]
448#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
449impl glib::value::ValueType for AccessiblePlatformState {
450 type Type = Self;
451}
452
453#[cfg(feature = "v4_10")]
454#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
455unsafe impl<'a> glib::value::FromValue<'a> for AccessiblePlatformState {
456 type Checker = glib::value::GenericValueTypeChecker<Self>;
457
458 #[inline]
459 unsafe fn from_value(value: &'a glib::Value) -> Self {
460 skip_assert_initialized!();
461 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
462 }
463}
464
465#[cfg(feature = "v4_10")]
466#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
467impl ToValue for AccessiblePlatformState {
468 #[inline]
469 fn to_value(&self) -> glib::Value {
470 let mut value = glib::Value::for_value_type::<Self>();
471 unsafe {
472 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
473 }
474 value
475 }
476
477 #[inline]
478 fn value_type(&self) -> glib::Type {
479 Self::static_type()
480 }
481}
482
483#[cfg(feature = "v4_10")]
484#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
485impl From<AccessiblePlatformState> for glib::Value {
486 #[inline]
487 fn from(v: AccessiblePlatformState) -> Self {
488 skip_assert_initialized!();
489 ToValue::to_value(&v)
490 }
491}
492
493#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
495#[non_exhaustive]
496#[doc(alias = "GtkAccessibleProperty")]
497pub enum AccessibleProperty {
498 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE")]
503 Autocomplete,
504 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_DESCRIPTION")]
507 Description,
508 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_HAS_POPUP")]
514 HasPopup,
515 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS")]
528 KeyShortcuts,
529 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_LABEL")]
532 Label,
533 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_LEVEL")]
536 Level,
537 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_MODAL")]
540 Modal,
541 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_MULTI_LINE")]
544 MultiLine,
545 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE")]
549 MultiSelectable,
550 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_ORIENTATION")]
554 Orientation,
555 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER")]
560 Placeholder,
561 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_READ_ONLY")]
564 ReadOnly,
565 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_REQUIRED")]
568 Required,
569 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION")]
572 RoleDescription,
573 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_SORT")]
576 Sort,
577 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_MAX")]
580 ValueMax,
581 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_MIN")]
584 ValueMin,
585 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_NOW")]
588 ValueNow,
589 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT")]
592 ValueText,
593 #[cfg(feature = "v4_16")]
596 #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
597 #[doc(alias = "GTK_ACCESSIBLE_PROPERTY_HELP_TEXT")]
598 HelpText,
599 #[doc(hidden)]
600 __Unknown(i32),
601}
602
603impl AccessibleProperty {
604 #[doc(alias = "gtk_accessible_property_init_value")]
605 pub fn init_value(self, value: &mut glib::Value) {
606 assert_initialized_main_thread!();
607 unsafe {
608 ffi::gtk_accessible_property_init_value(self.into_glib(), value.to_glib_none_mut().0);
609 }
610 }
611}
612
613#[doc(hidden)]
614impl IntoGlib for AccessibleProperty {
615 type GlibType = ffi::GtkAccessibleProperty;
616
617 fn into_glib(self) -> ffi::GtkAccessibleProperty {
618 match self {
619 Self::Autocomplete => ffi::GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE,
620 Self::Description => ffi::GTK_ACCESSIBLE_PROPERTY_DESCRIPTION,
621 Self::HasPopup => ffi::GTK_ACCESSIBLE_PROPERTY_HAS_POPUP,
622 Self::KeyShortcuts => ffi::GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS,
623 Self::Label => ffi::GTK_ACCESSIBLE_PROPERTY_LABEL,
624 Self::Level => ffi::GTK_ACCESSIBLE_PROPERTY_LEVEL,
625 Self::Modal => ffi::GTK_ACCESSIBLE_PROPERTY_MODAL,
626 Self::MultiLine => ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_LINE,
627 Self::MultiSelectable => ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE,
628 Self::Orientation => ffi::GTK_ACCESSIBLE_PROPERTY_ORIENTATION,
629 Self::Placeholder => ffi::GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER,
630 Self::ReadOnly => ffi::GTK_ACCESSIBLE_PROPERTY_READ_ONLY,
631 Self::Required => ffi::GTK_ACCESSIBLE_PROPERTY_REQUIRED,
632 Self::RoleDescription => ffi::GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION,
633 Self::Sort => ffi::GTK_ACCESSIBLE_PROPERTY_SORT,
634 Self::ValueMax => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MAX,
635 Self::ValueMin => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MIN,
636 Self::ValueNow => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_NOW,
637 Self::ValueText => ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT,
638 #[cfg(feature = "v4_16")]
639 Self::HelpText => ffi::GTK_ACCESSIBLE_PROPERTY_HELP_TEXT,
640 Self::__Unknown(value) => value,
641 }
642 }
643}
644
645#[doc(hidden)]
646impl FromGlib<ffi::GtkAccessibleProperty> for AccessibleProperty {
647 unsafe fn from_glib(value: ffi::GtkAccessibleProperty) -> Self {
648 skip_assert_initialized!();
649
650 match value {
651 ffi::GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE => Self::Autocomplete,
652 ffi::GTK_ACCESSIBLE_PROPERTY_DESCRIPTION => Self::Description,
653 ffi::GTK_ACCESSIBLE_PROPERTY_HAS_POPUP => Self::HasPopup,
654 ffi::GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS => Self::KeyShortcuts,
655 ffi::GTK_ACCESSIBLE_PROPERTY_LABEL => Self::Label,
656 ffi::GTK_ACCESSIBLE_PROPERTY_LEVEL => Self::Level,
657 ffi::GTK_ACCESSIBLE_PROPERTY_MODAL => Self::Modal,
658 ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_LINE => Self::MultiLine,
659 ffi::GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE => Self::MultiSelectable,
660 ffi::GTK_ACCESSIBLE_PROPERTY_ORIENTATION => Self::Orientation,
661 ffi::GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER => Self::Placeholder,
662 ffi::GTK_ACCESSIBLE_PROPERTY_READ_ONLY => Self::ReadOnly,
663 ffi::GTK_ACCESSIBLE_PROPERTY_REQUIRED => Self::Required,
664 ffi::GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION => Self::RoleDescription,
665 ffi::GTK_ACCESSIBLE_PROPERTY_SORT => Self::Sort,
666 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MAX => Self::ValueMax,
667 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_MIN => Self::ValueMin,
668 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_NOW => Self::ValueNow,
669 ffi::GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT => Self::ValueText,
670 #[cfg(feature = "v4_16")]
671 ffi::GTK_ACCESSIBLE_PROPERTY_HELP_TEXT => Self::HelpText,
672 value => Self::__Unknown(value),
673 }
674 }
675}
676
677impl StaticType for AccessibleProperty {
678 #[inline]
679 #[doc(alias = "gtk_accessible_property_get_type")]
680 fn static_type() -> glib::Type {
681 unsafe { from_glib(ffi::gtk_accessible_property_get_type()) }
682 }
683}
684
685impl glib::HasParamSpec for AccessibleProperty {
686 type ParamSpec = glib::ParamSpecEnum;
687 type SetValue = Self;
688 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
689
690 fn param_spec_builder() -> Self::BuilderFn {
691 Self::ParamSpec::builder_with_default
692 }
693}
694
695impl glib::value::ValueType for AccessibleProperty {
696 type Type = Self;
697}
698
699unsafe impl<'a> glib::value::FromValue<'a> for AccessibleProperty {
700 type Checker = glib::value::GenericValueTypeChecker<Self>;
701
702 #[inline]
703 unsafe fn from_value(value: &'a glib::Value) -> Self {
704 skip_assert_initialized!();
705 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
706 }
707}
708
709impl ToValue for AccessibleProperty {
710 #[inline]
711 fn to_value(&self) -> glib::Value {
712 let mut value = glib::Value::for_value_type::<Self>();
713 unsafe {
714 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
715 }
716 value
717 }
718
719 #[inline]
720 fn value_type(&self) -> glib::Type {
721 Self::static_type()
722 }
723}
724
725impl From<AccessibleProperty> for glib::Value {
726 #[inline]
727 fn from(v: AccessibleProperty) -> Self {
728 skip_assert_initialized!();
729 ToValue::to_value(&v)
730 }
731}
732
733#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
738#[non_exhaustive]
739#[doc(alias = "GtkAccessibleRelation")]
740pub enum AccessibleRelation {
741 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT")]
745 ActiveDescendant,
746 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_COUNT")]
749 ColCount,
750 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_INDEX")]
754 ColIndex,
755 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT")]
758 ColIndexText,
759 #[doc(alias = "GTK_ACCESSIBLE_RELATION_COL_SPAN")]
762 ColSpan,
763 #[doc(alias = "GTK_ACCESSIBLE_RELATION_CONTROLS")]
766 Controls,
767 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DESCRIBED_BY")]
770 DescribedBy,
771 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DETAILS")]
774 Details,
775 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE")]
778 ErrorMessage,
779 #[doc(alias = "GTK_ACCESSIBLE_RELATION_FLOW_TO")]
784 FlowTo,
785 #[doc(alias = "GTK_ACCESSIBLE_RELATION_LABELLED_BY")]
788 LabelledBy,
789 #[doc(alias = "GTK_ACCESSIBLE_RELATION_OWNS")]
794 Owns,
795 #[doc(alias = "GTK_ACCESSIBLE_RELATION_POS_IN_SET")]
798 PosInSet,
799 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_COUNT")]
802 RowCount,
803 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_INDEX")]
807 RowIndex,
808 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT")]
811 RowIndexText,
812 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ROW_SPAN")]
815 RowSpan,
816 #[doc(alias = "GTK_ACCESSIBLE_RELATION_SET_SIZE")]
819 SetSize,
820 #[cfg(feature = "v4_18")]
825 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
826 #[doc(alias = "GTK_ACCESSIBLE_RELATION_LABEL_FOR")]
827 LabelFor,
828 #[cfg(feature = "v4_18")]
833 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
834 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR")]
835 DescriptionFor,
836 #[cfg(feature = "v4_18")]
841 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
842 #[doc(alias = "GTK_ACCESSIBLE_RELATION_CONTROLLED_BY")]
843 ControlledBy,
844 #[cfg(feature = "v4_18")]
849 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
850 #[doc(alias = "GTK_ACCESSIBLE_RELATION_DETAILS_FOR")]
851 DetailsFor,
852 #[cfg(feature = "v4_18")]
857 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
858 #[doc(alias = "GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR")]
859 ErrorMessageFor,
860 #[cfg(feature = "v4_18")]
867 #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
868 #[doc(alias = "GTK_ACCESSIBLE_RELATION_FLOW_FROM")]
869 FlowFrom,
870 #[doc(hidden)]
871 __Unknown(i32),
872}
873
874impl AccessibleRelation {
875 #[doc(alias = "gtk_accessible_relation_init_value")]
876 pub fn init_value(self, value: &mut glib::Value) {
877 assert_initialized_main_thread!();
878 unsafe {
879 ffi::gtk_accessible_relation_init_value(self.into_glib(), value.to_glib_none_mut().0);
880 }
881 }
882}
883
884#[doc(hidden)]
885impl IntoGlib for AccessibleRelation {
886 type GlibType = ffi::GtkAccessibleRelation;
887
888 fn into_glib(self) -> ffi::GtkAccessibleRelation {
889 match self {
890 Self::ActiveDescendant => ffi::GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT,
891 Self::ColCount => ffi::GTK_ACCESSIBLE_RELATION_COL_COUNT,
892 Self::ColIndex => ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX,
893 Self::ColIndexText => ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT,
894 Self::ColSpan => ffi::GTK_ACCESSIBLE_RELATION_COL_SPAN,
895 Self::Controls => ffi::GTK_ACCESSIBLE_RELATION_CONTROLS,
896 Self::DescribedBy => ffi::GTK_ACCESSIBLE_RELATION_DESCRIBED_BY,
897 Self::Details => ffi::GTK_ACCESSIBLE_RELATION_DETAILS,
898 Self::ErrorMessage => ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE,
899 Self::FlowTo => ffi::GTK_ACCESSIBLE_RELATION_FLOW_TO,
900 Self::LabelledBy => ffi::GTK_ACCESSIBLE_RELATION_LABELLED_BY,
901 Self::Owns => ffi::GTK_ACCESSIBLE_RELATION_OWNS,
902 Self::PosInSet => ffi::GTK_ACCESSIBLE_RELATION_POS_IN_SET,
903 Self::RowCount => ffi::GTK_ACCESSIBLE_RELATION_ROW_COUNT,
904 Self::RowIndex => ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX,
905 Self::RowIndexText => ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT,
906 Self::RowSpan => ffi::GTK_ACCESSIBLE_RELATION_ROW_SPAN,
907 Self::SetSize => ffi::GTK_ACCESSIBLE_RELATION_SET_SIZE,
908 #[cfg(feature = "v4_18")]
909 Self::LabelFor => ffi::GTK_ACCESSIBLE_RELATION_LABEL_FOR,
910 #[cfg(feature = "v4_18")]
911 Self::DescriptionFor => ffi::GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR,
912 #[cfg(feature = "v4_18")]
913 Self::ControlledBy => ffi::GTK_ACCESSIBLE_RELATION_CONTROLLED_BY,
914 #[cfg(feature = "v4_18")]
915 Self::DetailsFor => ffi::GTK_ACCESSIBLE_RELATION_DETAILS_FOR,
916 #[cfg(feature = "v4_18")]
917 Self::ErrorMessageFor => ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR,
918 #[cfg(feature = "v4_18")]
919 Self::FlowFrom => ffi::GTK_ACCESSIBLE_RELATION_FLOW_FROM,
920 Self::__Unknown(value) => value,
921 }
922 }
923}
924
925#[doc(hidden)]
926impl FromGlib<ffi::GtkAccessibleRelation> for AccessibleRelation {
927 unsafe fn from_glib(value: ffi::GtkAccessibleRelation) -> Self {
928 skip_assert_initialized!();
929
930 match value {
931 ffi::GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT => Self::ActiveDescendant,
932 ffi::GTK_ACCESSIBLE_RELATION_COL_COUNT => Self::ColCount,
933 ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX => Self::ColIndex,
934 ffi::GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT => Self::ColIndexText,
935 ffi::GTK_ACCESSIBLE_RELATION_COL_SPAN => Self::ColSpan,
936 ffi::GTK_ACCESSIBLE_RELATION_CONTROLS => Self::Controls,
937 ffi::GTK_ACCESSIBLE_RELATION_DESCRIBED_BY => Self::DescribedBy,
938 ffi::GTK_ACCESSIBLE_RELATION_DETAILS => Self::Details,
939 ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE => Self::ErrorMessage,
940 ffi::GTK_ACCESSIBLE_RELATION_FLOW_TO => Self::FlowTo,
941 ffi::GTK_ACCESSIBLE_RELATION_LABELLED_BY => Self::LabelledBy,
942 ffi::GTK_ACCESSIBLE_RELATION_OWNS => Self::Owns,
943 ffi::GTK_ACCESSIBLE_RELATION_POS_IN_SET => Self::PosInSet,
944 ffi::GTK_ACCESSIBLE_RELATION_ROW_COUNT => Self::RowCount,
945 ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX => Self::RowIndex,
946 ffi::GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT => Self::RowIndexText,
947 ffi::GTK_ACCESSIBLE_RELATION_ROW_SPAN => Self::RowSpan,
948 ffi::GTK_ACCESSIBLE_RELATION_SET_SIZE => Self::SetSize,
949 #[cfg(feature = "v4_18")]
950 ffi::GTK_ACCESSIBLE_RELATION_LABEL_FOR => Self::LabelFor,
951 #[cfg(feature = "v4_18")]
952 ffi::GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR => Self::DescriptionFor,
953 #[cfg(feature = "v4_18")]
954 ffi::GTK_ACCESSIBLE_RELATION_CONTROLLED_BY => Self::ControlledBy,
955 #[cfg(feature = "v4_18")]
956 ffi::GTK_ACCESSIBLE_RELATION_DETAILS_FOR => Self::DetailsFor,
957 #[cfg(feature = "v4_18")]
958 ffi::GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR => Self::ErrorMessageFor,
959 #[cfg(feature = "v4_18")]
960 ffi::GTK_ACCESSIBLE_RELATION_FLOW_FROM => Self::FlowFrom,
961 value => Self::__Unknown(value),
962 }
963 }
964}
965
966impl StaticType for AccessibleRelation {
967 #[inline]
968 #[doc(alias = "gtk_accessible_relation_get_type")]
969 fn static_type() -> glib::Type {
970 unsafe { from_glib(ffi::gtk_accessible_relation_get_type()) }
971 }
972}
973
974impl glib::HasParamSpec for AccessibleRelation {
975 type ParamSpec = glib::ParamSpecEnum;
976 type SetValue = Self;
977 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
978
979 fn param_spec_builder() -> Self::BuilderFn {
980 Self::ParamSpec::builder_with_default
981 }
982}
983
984impl glib::value::ValueType for AccessibleRelation {
985 type Type = Self;
986}
987
988unsafe impl<'a> glib::value::FromValue<'a> for AccessibleRelation {
989 type Checker = glib::value::GenericValueTypeChecker<Self>;
990
991 #[inline]
992 unsafe fn from_value(value: &'a glib::Value) -> Self {
993 skip_assert_initialized!();
994 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
995 }
996}
997
998impl ToValue for AccessibleRelation {
999 #[inline]
1000 fn to_value(&self) -> glib::Value {
1001 let mut value = glib::Value::for_value_type::<Self>();
1002 unsafe {
1003 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1004 }
1005 value
1006 }
1007
1008 #[inline]
1009 fn value_type(&self) -> glib::Type {
1010 Self::static_type()
1011 }
1012}
1013
1014impl From<AccessibleRelation> for glib::Value {
1015 #[inline]
1016 fn from(v: AccessibleRelation) -> Self {
1017 skip_assert_initialized!();
1018 ToValue::to_value(&v)
1019 }
1020}
1021
1022#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1027#[non_exhaustive]
1028#[doc(alias = "GtkAccessibleRole")]
1029pub enum AccessibleRole {
1030 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ALERT")]
1033 Alert,
1034 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ALERT_DIALOG")]
1037 AlertDialog,
1038 #[doc(alias = "GTK_ACCESSIBLE_ROLE_BANNER")]
1040 Banner,
1041 #[doc(alias = "GTK_ACCESSIBLE_ROLE_BUTTON")]
1044 Button,
1045 #[doc(alias = "GTK_ACCESSIBLE_ROLE_CAPTION")]
1047 Caption,
1048 #[doc(alias = "GTK_ACCESSIBLE_ROLE_CELL")]
1050 Cell,
1051 #[doc(alias = "GTK_ACCESSIBLE_ROLE_CHECKBOX")]
1054 Checkbox,
1055 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COLUMN_HEADER")]
1057 ColumnHeader,
1058 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMBO_BOX")]
1062 ComboBox,
1063 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMMAND")]
1065 Command,
1066 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMPOSITE")]
1068 Composite,
1069 #[doc(alias = "GTK_ACCESSIBLE_ROLE_DIALOG")]
1073 Dialog,
1074 #[doc(alias = "GTK_ACCESSIBLE_ROLE_DOCUMENT")]
1077 Document,
1078 #[doc(alias = "GTK_ACCESSIBLE_ROLE_FEED")]
1080 Feed,
1081 #[doc(alias = "GTK_ACCESSIBLE_ROLE_FORM")]
1083 Form,
1084 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GENERIC")]
1087 Generic,
1088 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GRID")]
1090 Grid,
1091 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GRID_CELL")]
1093 GridCell,
1094 #[doc(alias = "GTK_ACCESSIBLE_ROLE_GROUP")]
1097 Group,
1098 #[doc(alias = "GTK_ACCESSIBLE_ROLE_HEADING")]
1100 Heading,
1101 #[doc(alias = "GTK_ACCESSIBLE_ROLE_IMG")]
1103 Img,
1104 #[doc(alias = "GTK_ACCESSIBLE_ROLE_INPUT")]
1106 Input,
1107 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LABEL")]
1109 Label,
1110 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LANDMARK")]
1112 Landmark,
1113 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LEGEND")]
1115 Legend,
1116 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LINK")]
1118 Link,
1119 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LIST")]
1121 List,
1122 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LIST_BOX")]
1124 ListBox,
1125 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LIST_ITEM")]
1127 ListItem,
1128 #[doc(alias = "GTK_ACCESSIBLE_ROLE_LOG")]
1130 Log,
1131 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MAIN")]
1133 Main,
1134 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MARQUEE")]
1136 Marquee,
1137 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MATH")]
1139 Math,
1140 #[doc(alias = "GTK_ACCESSIBLE_ROLE_METER")]
1142 Meter,
1143 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU")]
1145 Menu,
1146 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_BAR")]
1148 MenuBar,
1149 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_ITEM")]
1151 MenuItem,
1152 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX")]
1154 MenuItemCheckbox,
1155 #[doc(alias = "GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO")]
1157 MenuItemRadio,
1158 #[doc(alias = "GTK_ACCESSIBLE_ROLE_NAVIGATION")]
1160 Navigation,
1161 #[doc(alias = "GTK_ACCESSIBLE_ROLE_NONE")]
1164 None,
1165 #[doc(alias = "GTK_ACCESSIBLE_ROLE_NOTE")]
1167 Note,
1168 #[doc(alias = "GTK_ACCESSIBLE_ROLE_OPTION")]
1170 Option,
1171 #[doc(alias = "GTK_ACCESSIBLE_ROLE_PRESENTATION")]
1174 Presentation,
1175 #[doc(alias = "GTK_ACCESSIBLE_ROLE_PROGRESS_BAR")]
1178 ProgressBar,
1179 #[doc(alias = "GTK_ACCESSIBLE_ROLE_RADIO")]
1182 Radio,
1183 #[doc(alias = "GTK_ACCESSIBLE_ROLE_RADIO_GROUP")]
1185 RadioGroup,
1186 #[doc(alias = "GTK_ACCESSIBLE_ROLE_RANGE")]
1188 Range,
1189 #[doc(alias = "GTK_ACCESSIBLE_ROLE_REGION")]
1191 Region,
1192 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ROW")]
1194 Row,
1195 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ROW_GROUP")]
1197 RowGroup,
1198 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ROW_HEADER")]
1200 RowHeader,
1201 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SCROLLBAR")]
1205 Scrollbar,
1206 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SEARCH")]
1208 Search,
1209 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SEARCH_BOX")]
1212 SearchBox,
1213 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SECTION")]
1215 Section,
1216 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SECTION_HEAD")]
1218 SectionHead,
1219 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SELECT")]
1221 Select,
1222 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SEPARATOR")]
1225 Separator,
1226 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SLIDER")]
1229 Slider,
1230 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SPIN_BUTTON")]
1233 SpinButton,
1234 #[doc(alias = "GTK_ACCESSIBLE_ROLE_STATUS")]
1236 Status,
1237 #[doc(alias = "GTK_ACCESSIBLE_ROLE_STRUCTURE")]
1239 Structure,
1240 #[doc(alias = "GTK_ACCESSIBLE_ROLE_SWITCH")]
1243 Switch,
1244 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TAB")]
1246 Tab,
1247 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TABLE")]
1249 Table,
1250 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TAB_LIST")]
1252 TabList,
1253 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TAB_PANEL")]
1255 TabPanel,
1256 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TEXT_BOX")]
1259 TextBox,
1260 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TIME")]
1262 Time,
1263 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TIMER")]
1265 Timer,
1266 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TOOLBAR")]
1268 Toolbar,
1269 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TOOLTIP")]
1271 Tooltip,
1272 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TREE")]
1274 Tree,
1275 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TREE_GRID")]
1277 TreeGrid,
1278 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TREE_ITEM")]
1280 TreeItem,
1281 #[doc(alias = "GTK_ACCESSIBLE_ROLE_WIDGET")]
1284 Widget,
1285 #[doc(alias = "GTK_ACCESSIBLE_ROLE_WINDOW")]
1287 Window,
1288 #[cfg(feature = "v4_10")]
1291 #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
1292 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON")]
1293 ToggleButton,
1294 #[cfg(feature = "v4_12")]
1298 #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
1299 #[doc(alias = "GTK_ACCESSIBLE_ROLE_APPLICATION")]
1300 Application,
1301 #[cfg(feature = "v4_14")]
1303 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1304 #[doc(alias = "GTK_ACCESSIBLE_ROLE_PARAGRAPH")]
1305 Paragraph,
1306 #[cfg(feature = "v4_14")]
1308 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1309 #[doc(alias = "GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE")]
1310 BlockQuote,
1311 #[cfg(feature = "v4_14")]
1314 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1315 #[doc(alias = "GTK_ACCESSIBLE_ROLE_ARTICLE")]
1316 Article,
1317 #[cfg(feature = "v4_14")]
1319 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1320 #[doc(alias = "GTK_ACCESSIBLE_ROLE_COMMENT")]
1321 Comment,
1322 #[cfg(feature = "v4_14")]
1324 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1325 #[doc(alias = "GTK_ACCESSIBLE_ROLE_TERMINAL")]
1326 Terminal,
1327 #[doc(hidden)]
1328 __Unknown(i32),
1329}
1330
1331#[doc(hidden)]
1332impl IntoGlib for AccessibleRole {
1333 type GlibType = ffi::GtkAccessibleRole;
1334
1335 fn into_glib(self) -> ffi::GtkAccessibleRole {
1336 match self {
1337 Self::Alert => ffi::GTK_ACCESSIBLE_ROLE_ALERT,
1338 Self::AlertDialog => ffi::GTK_ACCESSIBLE_ROLE_ALERT_DIALOG,
1339 Self::Banner => ffi::GTK_ACCESSIBLE_ROLE_BANNER,
1340 Self::Button => ffi::GTK_ACCESSIBLE_ROLE_BUTTON,
1341 Self::Caption => ffi::GTK_ACCESSIBLE_ROLE_CAPTION,
1342 Self::Cell => ffi::GTK_ACCESSIBLE_ROLE_CELL,
1343 Self::Checkbox => ffi::GTK_ACCESSIBLE_ROLE_CHECKBOX,
1344 Self::ColumnHeader => ffi::GTK_ACCESSIBLE_ROLE_COLUMN_HEADER,
1345 Self::ComboBox => ffi::GTK_ACCESSIBLE_ROLE_COMBO_BOX,
1346 Self::Command => ffi::GTK_ACCESSIBLE_ROLE_COMMAND,
1347 Self::Composite => ffi::GTK_ACCESSIBLE_ROLE_COMPOSITE,
1348 Self::Dialog => ffi::GTK_ACCESSIBLE_ROLE_DIALOG,
1349 Self::Document => ffi::GTK_ACCESSIBLE_ROLE_DOCUMENT,
1350 Self::Feed => ffi::GTK_ACCESSIBLE_ROLE_FEED,
1351 Self::Form => ffi::GTK_ACCESSIBLE_ROLE_FORM,
1352 Self::Generic => ffi::GTK_ACCESSIBLE_ROLE_GENERIC,
1353 Self::Grid => ffi::GTK_ACCESSIBLE_ROLE_GRID,
1354 Self::GridCell => ffi::GTK_ACCESSIBLE_ROLE_GRID_CELL,
1355 Self::Group => ffi::GTK_ACCESSIBLE_ROLE_GROUP,
1356 Self::Heading => ffi::GTK_ACCESSIBLE_ROLE_HEADING,
1357 Self::Img => ffi::GTK_ACCESSIBLE_ROLE_IMG,
1358 Self::Input => ffi::GTK_ACCESSIBLE_ROLE_INPUT,
1359 Self::Label => ffi::GTK_ACCESSIBLE_ROLE_LABEL,
1360 Self::Landmark => ffi::GTK_ACCESSIBLE_ROLE_LANDMARK,
1361 Self::Legend => ffi::GTK_ACCESSIBLE_ROLE_LEGEND,
1362 Self::Link => ffi::GTK_ACCESSIBLE_ROLE_LINK,
1363 Self::List => ffi::GTK_ACCESSIBLE_ROLE_LIST,
1364 Self::ListBox => ffi::GTK_ACCESSIBLE_ROLE_LIST_BOX,
1365 Self::ListItem => ffi::GTK_ACCESSIBLE_ROLE_LIST_ITEM,
1366 Self::Log => ffi::GTK_ACCESSIBLE_ROLE_LOG,
1367 Self::Main => ffi::GTK_ACCESSIBLE_ROLE_MAIN,
1368 Self::Marquee => ffi::GTK_ACCESSIBLE_ROLE_MARQUEE,
1369 Self::Math => ffi::GTK_ACCESSIBLE_ROLE_MATH,
1370 Self::Meter => ffi::GTK_ACCESSIBLE_ROLE_METER,
1371 Self::Menu => ffi::GTK_ACCESSIBLE_ROLE_MENU,
1372 Self::MenuBar => ffi::GTK_ACCESSIBLE_ROLE_MENU_BAR,
1373 Self::MenuItem => ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM,
1374 Self::MenuItemCheckbox => ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX,
1375 Self::MenuItemRadio => ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO,
1376 Self::Navigation => ffi::GTK_ACCESSIBLE_ROLE_NAVIGATION,
1377 Self::None => ffi::GTK_ACCESSIBLE_ROLE_NONE,
1378 Self::Note => ffi::GTK_ACCESSIBLE_ROLE_NOTE,
1379 Self::Option => ffi::GTK_ACCESSIBLE_ROLE_OPTION,
1380 Self::Presentation => ffi::GTK_ACCESSIBLE_ROLE_PRESENTATION,
1381 Self::ProgressBar => ffi::GTK_ACCESSIBLE_ROLE_PROGRESS_BAR,
1382 Self::Radio => ffi::GTK_ACCESSIBLE_ROLE_RADIO,
1383 Self::RadioGroup => ffi::GTK_ACCESSIBLE_ROLE_RADIO_GROUP,
1384 Self::Range => ffi::GTK_ACCESSIBLE_ROLE_RANGE,
1385 Self::Region => ffi::GTK_ACCESSIBLE_ROLE_REGION,
1386 Self::Row => ffi::GTK_ACCESSIBLE_ROLE_ROW,
1387 Self::RowGroup => ffi::GTK_ACCESSIBLE_ROLE_ROW_GROUP,
1388 Self::RowHeader => ffi::GTK_ACCESSIBLE_ROLE_ROW_HEADER,
1389 Self::Scrollbar => ffi::GTK_ACCESSIBLE_ROLE_SCROLLBAR,
1390 Self::Search => ffi::GTK_ACCESSIBLE_ROLE_SEARCH,
1391 Self::SearchBox => ffi::GTK_ACCESSIBLE_ROLE_SEARCH_BOX,
1392 Self::Section => ffi::GTK_ACCESSIBLE_ROLE_SECTION,
1393 Self::SectionHead => ffi::GTK_ACCESSIBLE_ROLE_SECTION_HEAD,
1394 Self::Select => ffi::GTK_ACCESSIBLE_ROLE_SELECT,
1395 Self::Separator => ffi::GTK_ACCESSIBLE_ROLE_SEPARATOR,
1396 Self::Slider => ffi::GTK_ACCESSIBLE_ROLE_SLIDER,
1397 Self::SpinButton => ffi::GTK_ACCESSIBLE_ROLE_SPIN_BUTTON,
1398 Self::Status => ffi::GTK_ACCESSIBLE_ROLE_STATUS,
1399 Self::Structure => ffi::GTK_ACCESSIBLE_ROLE_STRUCTURE,
1400 Self::Switch => ffi::GTK_ACCESSIBLE_ROLE_SWITCH,
1401 Self::Tab => ffi::GTK_ACCESSIBLE_ROLE_TAB,
1402 Self::Table => ffi::GTK_ACCESSIBLE_ROLE_TABLE,
1403 Self::TabList => ffi::GTK_ACCESSIBLE_ROLE_TAB_LIST,
1404 Self::TabPanel => ffi::GTK_ACCESSIBLE_ROLE_TAB_PANEL,
1405 Self::TextBox => ffi::GTK_ACCESSIBLE_ROLE_TEXT_BOX,
1406 Self::Time => ffi::GTK_ACCESSIBLE_ROLE_TIME,
1407 Self::Timer => ffi::GTK_ACCESSIBLE_ROLE_TIMER,
1408 Self::Toolbar => ffi::GTK_ACCESSIBLE_ROLE_TOOLBAR,
1409 Self::Tooltip => ffi::GTK_ACCESSIBLE_ROLE_TOOLTIP,
1410 Self::Tree => ffi::GTK_ACCESSIBLE_ROLE_TREE,
1411 Self::TreeGrid => ffi::GTK_ACCESSIBLE_ROLE_TREE_GRID,
1412 Self::TreeItem => ffi::GTK_ACCESSIBLE_ROLE_TREE_ITEM,
1413 Self::Widget => ffi::GTK_ACCESSIBLE_ROLE_WIDGET,
1414 Self::Window => ffi::GTK_ACCESSIBLE_ROLE_WINDOW,
1415 #[cfg(feature = "v4_10")]
1416 Self::ToggleButton => ffi::GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON,
1417 #[cfg(feature = "v4_12")]
1418 Self::Application => ffi::GTK_ACCESSIBLE_ROLE_APPLICATION,
1419 #[cfg(feature = "v4_14")]
1420 Self::Paragraph => ffi::GTK_ACCESSIBLE_ROLE_PARAGRAPH,
1421 #[cfg(feature = "v4_14")]
1422 Self::BlockQuote => ffi::GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE,
1423 #[cfg(feature = "v4_14")]
1424 Self::Article => ffi::GTK_ACCESSIBLE_ROLE_ARTICLE,
1425 #[cfg(feature = "v4_14")]
1426 Self::Comment => ffi::GTK_ACCESSIBLE_ROLE_COMMENT,
1427 #[cfg(feature = "v4_14")]
1428 Self::Terminal => ffi::GTK_ACCESSIBLE_ROLE_TERMINAL,
1429 Self::__Unknown(value) => value,
1430 }
1431 }
1432}
1433
1434#[doc(hidden)]
1435impl FromGlib<ffi::GtkAccessibleRole> for AccessibleRole {
1436 unsafe fn from_glib(value: ffi::GtkAccessibleRole) -> Self {
1437 skip_assert_initialized!();
1438
1439 match value {
1440 ffi::GTK_ACCESSIBLE_ROLE_ALERT => Self::Alert,
1441 ffi::GTK_ACCESSIBLE_ROLE_ALERT_DIALOG => Self::AlertDialog,
1442 ffi::GTK_ACCESSIBLE_ROLE_BANNER => Self::Banner,
1443 ffi::GTK_ACCESSIBLE_ROLE_BUTTON => Self::Button,
1444 ffi::GTK_ACCESSIBLE_ROLE_CAPTION => Self::Caption,
1445 ffi::GTK_ACCESSIBLE_ROLE_CELL => Self::Cell,
1446 ffi::GTK_ACCESSIBLE_ROLE_CHECKBOX => Self::Checkbox,
1447 ffi::GTK_ACCESSIBLE_ROLE_COLUMN_HEADER => Self::ColumnHeader,
1448 ffi::GTK_ACCESSIBLE_ROLE_COMBO_BOX => Self::ComboBox,
1449 ffi::GTK_ACCESSIBLE_ROLE_COMMAND => Self::Command,
1450 ffi::GTK_ACCESSIBLE_ROLE_COMPOSITE => Self::Composite,
1451 ffi::GTK_ACCESSIBLE_ROLE_DIALOG => Self::Dialog,
1452 ffi::GTK_ACCESSIBLE_ROLE_DOCUMENT => Self::Document,
1453 ffi::GTK_ACCESSIBLE_ROLE_FEED => Self::Feed,
1454 ffi::GTK_ACCESSIBLE_ROLE_FORM => Self::Form,
1455 ffi::GTK_ACCESSIBLE_ROLE_GENERIC => Self::Generic,
1456 ffi::GTK_ACCESSIBLE_ROLE_GRID => Self::Grid,
1457 ffi::GTK_ACCESSIBLE_ROLE_GRID_CELL => Self::GridCell,
1458 ffi::GTK_ACCESSIBLE_ROLE_GROUP => Self::Group,
1459 ffi::GTK_ACCESSIBLE_ROLE_HEADING => Self::Heading,
1460 ffi::GTK_ACCESSIBLE_ROLE_IMG => Self::Img,
1461 ffi::GTK_ACCESSIBLE_ROLE_INPUT => Self::Input,
1462 ffi::GTK_ACCESSIBLE_ROLE_LABEL => Self::Label,
1463 ffi::GTK_ACCESSIBLE_ROLE_LANDMARK => Self::Landmark,
1464 ffi::GTK_ACCESSIBLE_ROLE_LEGEND => Self::Legend,
1465 ffi::GTK_ACCESSIBLE_ROLE_LINK => Self::Link,
1466 ffi::GTK_ACCESSIBLE_ROLE_LIST => Self::List,
1467 ffi::GTK_ACCESSIBLE_ROLE_LIST_BOX => Self::ListBox,
1468 ffi::GTK_ACCESSIBLE_ROLE_LIST_ITEM => Self::ListItem,
1469 ffi::GTK_ACCESSIBLE_ROLE_LOG => Self::Log,
1470 ffi::GTK_ACCESSIBLE_ROLE_MAIN => Self::Main,
1471 ffi::GTK_ACCESSIBLE_ROLE_MARQUEE => Self::Marquee,
1472 ffi::GTK_ACCESSIBLE_ROLE_MATH => Self::Math,
1473 ffi::GTK_ACCESSIBLE_ROLE_METER => Self::Meter,
1474 ffi::GTK_ACCESSIBLE_ROLE_MENU => Self::Menu,
1475 ffi::GTK_ACCESSIBLE_ROLE_MENU_BAR => Self::MenuBar,
1476 ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM => Self::MenuItem,
1477 ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX => Self::MenuItemCheckbox,
1478 ffi::GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO => Self::MenuItemRadio,
1479 ffi::GTK_ACCESSIBLE_ROLE_NAVIGATION => Self::Navigation,
1480 ffi::GTK_ACCESSIBLE_ROLE_NONE => Self::None,
1481 ffi::GTK_ACCESSIBLE_ROLE_NOTE => Self::Note,
1482 ffi::GTK_ACCESSIBLE_ROLE_OPTION => Self::Option,
1483 ffi::GTK_ACCESSIBLE_ROLE_PRESENTATION => Self::Presentation,
1484 ffi::GTK_ACCESSIBLE_ROLE_PROGRESS_BAR => Self::ProgressBar,
1485 ffi::GTK_ACCESSIBLE_ROLE_RADIO => Self::Radio,
1486 ffi::GTK_ACCESSIBLE_ROLE_RADIO_GROUP => Self::RadioGroup,
1487 ffi::GTK_ACCESSIBLE_ROLE_RANGE => Self::Range,
1488 ffi::GTK_ACCESSIBLE_ROLE_REGION => Self::Region,
1489 ffi::GTK_ACCESSIBLE_ROLE_ROW => Self::Row,
1490 ffi::GTK_ACCESSIBLE_ROLE_ROW_GROUP => Self::RowGroup,
1491 ffi::GTK_ACCESSIBLE_ROLE_ROW_HEADER => Self::RowHeader,
1492 ffi::GTK_ACCESSIBLE_ROLE_SCROLLBAR => Self::Scrollbar,
1493 ffi::GTK_ACCESSIBLE_ROLE_SEARCH => Self::Search,
1494 ffi::GTK_ACCESSIBLE_ROLE_SEARCH_BOX => Self::SearchBox,
1495 ffi::GTK_ACCESSIBLE_ROLE_SECTION => Self::Section,
1496 ffi::GTK_ACCESSIBLE_ROLE_SECTION_HEAD => Self::SectionHead,
1497 ffi::GTK_ACCESSIBLE_ROLE_SELECT => Self::Select,
1498 ffi::GTK_ACCESSIBLE_ROLE_SEPARATOR => Self::Separator,
1499 ffi::GTK_ACCESSIBLE_ROLE_SLIDER => Self::Slider,
1500 ffi::GTK_ACCESSIBLE_ROLE_SPIN_BUTTON => Self::SpinButton,
1501 ffi::GTK_ACCESSIBLE_ROLE_STATUS => Self::Status,
1502 ffi::GTK_ACCESSIBLE_ROLE_STRUCTURE => Self::Structure,
1503 ffi::GTK_ACCESSIBLE_ROLE_SWITCH => Self::Switch,
1504 ffi::GTK_ACCESSIBLE_ROLE_TAB => Self::Tab,
1505 ffi::GTK_ACCESSIBLE_ROLE_TABLE => Self::Table,
1506 ffi::GTK_ACCESSIBLE_ROLE_TAB_LIST => Self::TabList,
1507 ffi::GTK_ACCESSIBLE_ROLE_TAB_PANEL => Self::TabPanel,
1508 ffi::GTK_ACCESSIBLE_ROLE_TEXT_BOX => Self::TextBox,
1509 ffi::GTK_ACCESSIBLE_ROLE_TIME => Self::Time,
1510 ffi::GTK_ACCESSIBLE_ROLE_TIMER => Self::Timer,
1511 ffi::GTK_ACCESSIBLE_ROLE_TOOLBAR => Self::Toolbar,
1512 ffi::GTK_ACCESSIBLE_ROLE_TOOLTIP => Self::Tooltip,
1513 ffi::GTK_ACCESSIBLE_ROLE_TREE => Self::Tree,
1514 ffi::GTK_ACCESSIBLE_ROLE_TREE_GRID => Self::TreeGrid,
1515 ffi::GTK_ACCESSIBLE_ROLE_TREE_ITEM => Self::TreeItem,
1516 ffi::GTK_ACCESSIBLE_ROLE_WIDGET => Self::Widget,
1517 ffi::GTK_ACCESSIBLE_ROLE_WINDOW => Self::Window,
1518 #[cfg(feature = "v4_10")]
1519 ffi::GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON => Self::ToggleButton,
1520 #[cfg(feature = "v4_12")]
1521 ffi::GTK_ACCESSIBLE_ROLE_APPLICATION => Self::Application,
1522 #[cfg(feature = "v4_14")]
1523 ffi::GTK_ACCESSIBLE_ROLE_PARAGRAPH => Self::Paragraph,
1524 #[cfg(feature = "v4_14")]
1525 ffi::GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE => Self::BlockQuote,
1526 #[cfg(feature = "v4_14")]
1527 ffi::GTK_ACCESSIBLE_ROLE_ARTICLE => Self::Article,
1528 #[cfg(feature = "v4_14")]
1529 ffi::GTK_ACCESSIBLE_ROLE_COMMENT => Self::Comment,
1530 #[cfg(feature = "v4_14")]
1531 ffi::GTK_ACCESSIBLE_ROLE_TERMINAL => Self::Terminal,
1532 value => Self::__Unknown(value),
1533 }
1534 }
1535}
1536
1537impl StaticType for AccessibleRole {
1538 #[inline]
1539 #[doc(alias = "gtk_accessible_role_get_type")]
1540 fn static_type() -> glib::Type {
1541 unsafe { from_glib(ffi::gtk_accessible_role_get_type()) }
1542 }
1543}
1544
1545impl glib::HasParamSpec for AccessibleRole {
1546 type ParamSpec = glib::ParamSpecEnum;
1547 type SetValue = Self;
1548 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1549
1550 fn param_spec_builder() -> Self::BuilderFn {
1551 Self::ParamSpec::builder_with_default
1552 }
1553}
1554
1555impl glib::value::ValueType for AccessibleRole {
1556 type Type = Self;
1557}
1558
1559unsafe impl<'a> glib::value::FromValue<'a> for AccessibleRole {
1560 type Checker = glib::value::GenericValueTypeChecker<Self>;
1561
1562 #[inline]
1563 unsafe fn from_value(value: &'a glib::Value) -> Self {
1564 skip_assert_initialized!();
1565 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
1566 }
1567}
1568
1569impl ToValue for AccessibleRole {
1570 #[inline]
1571 fn to_value(&self) -> glib::Value {
1572 let mut value = glib::Value::for_value_type::<Self>();
1573 unsafe {
1574 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1575 }
1576 value
1577 }
1578
1579 #[inline]
1580 fn value_type(&self) -> glib::Type {
1581 Self::static_type()
1582 }
1583}
1584
1585impl From<AccessibleRole> for glib::Value {
1586 #[inline]
1587 fn from(v: AccessibleRole) -> Self {
1588 skip_assert_initialized!();
1589 ToValue::to_value(&v)
1590 }
1591}
1592
1593#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1596#[non_exhaustive]
1597#[doc(alias = "GtkAccessibleSort")]
1598pub enum AccessibleSort {
1599 #[doc(alias = "GTK_ACCESSIBLE_SORT_NONE")]
1601 None,
1602 #[doc(alias = "GTK_ACCESSIBLE_SORT_ASCENDING")]
1604 Ascending,
1605 #[doc(alias = "GTK_ACCESSIBLE_SORT_DESCENDING")]
1607 Descending,
1608 #[doc(alias = "GTK_ACCESSIBLE_SORT_OTHER")]
1611 Other,
1612 #[doc(hidden)]
1613 __Unknown(i32),
1614}
1615
1616#[doc(hidden)]
1617impl IntoGlib for AccessibleSort {
1618 type GlibType = ffi::GtkAccessibleSort;
1619
1620 #[inline]
1621 fn into_glib(self) -> ffi::GtkAccessibleSort {
1622 match self {
1623 Self::None => ffi::GTK_ACCESSIBLE_SORT_NONE,
1624 Self::Ascending => ffi::GTK_ACCESSIBLE_SORT_ASCENDING,
1625 Self::Descending => ffi::GTK_ACCESSIBLE_SORT_DESCENDING,
1626 Self::Other => ffi::GTK_ACCESSIBLE_SORT_OTHER,
1627 Self::__Unknown(value) => value,
1628 }
1629 }
1630}
1631
1632#[doc(hidden)]
1633impl FromGlib<ffi::GtkAccessibleSort> for AccessibleSort {
1634 #[inline]
1635 unsafe fn from_glib(value: ffi::GtkAccessibleSort) -> Self {
1636 skip_assert_initialized!();
1637
1638 match value {
1639 ffi::GTK_ACCESSIBLE_SORT_NONE => Self::None,
1640 ffi::GTK_ACCESSIBLE_SORT_ASCENDING => Self::Ascending,
1641 ffi::GTK_ACCESSIBLE_SORT_DESCENDING => Self::Descending,
1642 ffi::GTK_ACCESSIBLE_SORT_OTHER => Self::Other,
1643 value => Self::__Unknown(value),
1644 }
1645 }
1646}
1647
1648impl StaticType for AccessibleSort {
1649 #[inline]
1650 #[doc(alias = "gtk_accessible_sort_get_type")]
1651 fn static_type() -> glib::Type {
1652 unsafe { from_glib(ffi::gtk_accessible_sort_get_type()) }
1653 }
1654}
1655
1656impl glib::HasParamSpec for AccessibleSort {
1657 type ParamSpec = glib::ParamSpecEnum;
1658 type SetValue = Self;
1659 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1660
1661 fn param_spec_builder() -> Self::BuilderFn {
1662 Self::ParamSpec::builder_with_default
1663 }
1664}
1665
1666impl glib::value::ValueType for AccessibleSort {
1667 type Type = Self;
1668}
1669
1670unsafe impl<'a> glib::value::FromValue<'a> for AccessibleSort {
1671 type Checker = glib::value::GenericValueTypeChecker<Self>;
1672
1673 #[inline]
1674 unsafe fn from_value(value: &'a glib::Value) -> Self {
1675 skip_assert_initialized!();
1676 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
1677 }
1678}
1679
1680impl ToValue for AccessibleSort {
1681 #[inline]
1682 fn to_value(&self) -> glib::Value {
1683 let mut value = glib::Value::for_value_type::<Self>();
1684 unsafe {
1685 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1686 }
1687 value
1688 }
1689
1690 #[inline]
1691 fn value_type(&self) -> glib::Type {
1692 Self::static_type()
1693 }
1694}
1695
1696impl From<AccessibleSort> for glib::Value {
1697 #[inline]
1698 fn from(v: AccessibleSort) -> Self {
1699 skip_assert_initialized!();
1700 ToValue::to_value(&v)
1701 }
1702}
1703
1704#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1706#[non_exhaustive]
1707#[doc(alias = "GtkAccessibleState")]
1708pub enum AccessibleState {
1709 #[doc(alias = "GTK_ACCESSIBLE_STATE_BUSY")]
1711 Busy,
1712 #[doc(alias = "GTK_ACCESSIBLE_STATE_CHECKED")]
1715 Checked,
1716 #[doc(alias = "GTK_ACCESSIBLE_STATE_DISABLED")]
1720 Disabled,
1721 #[doc(alias = "GTK_ACCESSIBLE_STATE_EXPANDED")]
1725 Expanded,
1726 #[doc(alias = "GTK_ACCESSIBLE_STATE_HIDDEN")]
1732 Hidden,
1733 #[doc(alias = "GTK_ACCESSIBLE_STATE_INVALID")]
1736 Invalid,
1737 #[doc(alias = "GTK_ACCESSIBLE_STATE_PRESSED")]
1741 Pressed,
1742 #[doc(alias = "GTK_ACCESSIBLE_STATE_SELECTED")]
1745 Selected,
1746 #[cfg(feature = "v4_12")]
1749 #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
1750 #[doc(alias = "GTK_ACCESSIBLE_STATE_VISITED")]
1751 Visited,
1752 #[doc(hidden)]
1753 __Unknown(i32),
1754}
1755
1756impl AccessibleState {
1757 #[doc(alias = "gtk_accessible_state_init_value")]
1758 pub fn init_value(self, value: &mut glib::Value) {
1759 assert_initialized_main_thread!();
1760 unsafe {
1761 ffi::gtk_accessible_state_init_value(self.into_glib(), value.to_glib_none_mut().0);
1762 }
1763 }
1764}
1765
1766#[doc(hidden)]
1767impl IntoGlib for AccessibleState {
1768 type GlibType = ffi::GtkAccessibleState;
1769
1770 #[inline]
1771 fn into_glib(self) -> ffi::GtkAccessibleState {
1772 match self {
1773 Self::Busy => ffi::GTK_ACCESSIBLE_STATE_BUSY,
1774 Self::Checked => ffi::GTK_ACCESSIBLE_STATE_CHECKED,
1775 Self::Disabled => ffi::GTK_ACCESSIBLE_STATE_DISABLED,
1776 Self::Expanded => ffi::GTK_ACCESSIBLE_STATE_EXPANDED,
1777 Self::Hidden => ffi::GTK_ACCESSIBLE_STATE_HIDDEN,
1778 Self::Invalid => ffi::GTK_ACCESSIBLE_STATE_INVALID,
1779 Self::Pressed => ffi::GTK_ACCESSIBLE_STATE_PRESSED,
1780 Self::Selected => ffi::GTK_ACCESSIBLE_STATE_SELECTED,
1781 #[cfg(feature = "v4_12")]
1782 Self::Visited => ffi::GTK_ACCESSIBLE_STATE_VISITED,
1783 Self::__Unknown(value) => value,
1784 }
1785 }
1786}
1787
1788#[doc(hidden)]
1789impl FromGlib<ffi::GtkAccessibleState> for AccessibleState {
1790 #[inline]
1791 unsafe fn from_glib(value: ffi::GtkAccessibleState) -> Self {
1792 skip_assert_initialized!();
1793
1794 match value {
1795 ffi::GTK_ACCESSIBLE_STATE_BUSY => Self::Busy,
1796 ffi::GTK_ACCESSIBLE_STATE_CHECKED => Self::Checked,
1797 ffi::GTK_ACCESSIBLE_STATE_DISABLED => Self::Disabled,
1798 ffi::GTK_ACCESSIBLE_STATE_EXPANDED => Self::Expanded,
1799 ffi::GTK_ACCESSIBLE_STATE_HIDDEN => Self::Hidden,
1800 ffi::GTK_ACCESSIBLE_STATE_INVALID => Self::Invalid,
1801 ffi::GTK_ACCESSIBLE_STATE_PRESSED => Self::Pressed,
1802 ffi::GTK_ACCESSIBLE_STATE_SELECTED => Self::Selected,
1803 #[cfg(feature = "v4_12")]
1804 ffi::GTK_ACCESSIBLE_STATE_VISITED => Self::Visited,
1805 value => Self::__Unknown(value),
1806 }
1807 }
1808}
1809
1810impl StaticType for AccessibleState {
1811 #[inline]
1812 #[doc(alias = "gtk_accessible_state_get_type")]
1813 fn static_type() -> glib::Type {
1814 unsafe { from_glib(ffi::gtk_accessible_state_get_type()) }
1815 }
1816}
1817
1818impl glib::HasParamSpec for AccessibleState {
1819 type ParamSpec = glib::ParamSpecEnum;
1820 type SetValue = Self;
1821 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1822
1823 fn param_spec_builder() -> Self::BuilderFn {
1824 Self::ParamSpec::builder_with_default
1825 }
1826}
1827
1828impl glib::value::ValueType for AccessibleState {
1829 type Type = Self;
1830}
1831
1832unsafe impl<'a> glib::value::FromValue<'a> for AccessibleState {
1833 type Checker = glib::value::GenericValueTypeChecker<Self>;
1834
1835 #[inline]
1836 unsafe fn from_value(value: &'a glib::Value) -> Self {
1837 skip_assert_initialized!();
1838 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
1839 }
1840}
1841
1842impl ToValue for AccessibleState {
1843 #[inline]
1844 fn to_value(&self) -> glib::Value {
1845 let mut value = glib::Value::for_value_type::<Self>();
1846 unsafe {
1847 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1848 }
1849 value
1850 }
1851
1852 #[inline]
1853 fn value_type(&self) -> glib::Type {
1854 Self::static_type()
1855 }
1856}
1857
1858impl From<AccessibleState> for glib::Value {
1859 #[inline]
1860 fn from(v: AccessibleState) -> Self {
1861 skip_assert_initialized!();
1862 ToValue::to_value(&v)
1863 }
1864}
1865
1866#[cfg(feature = "v4_14")]
1868#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1869#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1870#[non_exhaustive]
1871#[doc(alias = "GtkAccessibleTextContentChange")]
1872pub enum AccessibleTextContentChange {
1873 #[doc(alias = "GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT")]
1876 Insert,
1877 #[doc(alias = "GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE")]
1880 Remove,
1881 #[doc(hidden)]
1882 __Unknown(i32),
1883}
1884
1885#[cfg(feature = "v4_14")]
1886#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1887#[doc(hidden)]
1888impl IntoGlib for AccessibleTextContentChange {
1889 type GlibType = ffi::GtkAccessibleTextContentChange;
1890
1891 #[inline]
1892 fn into_glib(self) -> ffi::GtkAccessibleTextContentChange {
1893 match self {
1894 Self::Insert => ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT,
1895 Self::Remove => ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE,
1896 Self::__Unknown(value) => value,
1897 }
1898 }
1899}
1900
1901#[cfg(feature = "v4_14")]
1902#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1903#[doc(hidden)]
1904impl FromGlib<ffi::GtkAccessibleTextContentChange> for AccessibleTextContentChange {
1905 #[inline]
1906 unsafe fn from_glib(value: ffi::GtkAccessibleTextContentChange) -> Self {
1907 skip_assert_initialized!();
1908
1909 match value {
1910 ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT => Self::Insert,
1911 ffi::GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE => Self::Remove,
1912 value => Self::__Unknown(value),
1913 }
1914 }
1915}
1916
1917#[cfg(feature = "v4_14")]
1918#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1919impl StaticType for AccessibleTextContentChange {
1920 #[inline]
1921 #[doc(alias = "gtk_accessible_text_content_change_get_type")]
1922 fn static_type() -> glib::Type {
1923 unsafe { from_glib(ffi::gtk_accessible_text_content_change_get_type()) }
1924 }
1925}
1926
1927#[cfg(feature = "v4_14")]
1928#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1929impl glib::HasParamSpec for AccessibleTextContentChange {
1930 type ParamSpec = glib::ParamSpecEnum;
1931 type SetValue = Self;
1932 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
1933
1934 fn param_spec_builder() -> Self::BuilderFn {
1935 Self::ParamSpec::builder_with_default
1936 }
1937}
1938
1939#[cfg(feature = "v4_14")]
1940#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1941impl glib::value::ValueType for AccessibleTextContentChange {
1942 type Type = Self;
1943}
1944
1945#[cfg(feature = "v4_14")]
1946#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1947unsafe impl<'a> glib::value::FromValue<'a> for AccessibleTextContentChange {
1948 type Checker = glib::value::GenericValueTypeChecker<Self>;
1949
1950 #[inline]
1951 unsafe fn from_value(value: &'a glib::Value) -> Self {
1952 skip_assert_initialized!();
1953 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
1954 }
1955}
1956
1957#[cfg(feature = "v4_14")]
1958#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1959impl ToValue for AccessibleTextContentChange {
1960 #[inline]
1961 fn to_value(&self) -> glib::Value {
1962 let mut value = glib::Value::for_value_type::<Self>();
1963 unsafe {
1964 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
1965 }
1966 value
1967 }
1968
1969 #[inline]
1970 fn value_type(&self) -> glib::Type {
1971 Self::static_type()
1972 }
1973}
1974
1975#[cfg(feature = "v4_14")]
1976#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1977impl From<AccessibleTextContentChange> for glib::Value {
1978 #[inline]
1979 fn from(v: AccessibleTextContentChange) -> Self {
1980 skip_assert_initialized!();
1981 ToValue::to_value(&v)
1982 }
1983}
1984
1985#[cfg(feature = "v4_14")]
1988#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1989#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
1990#[non_exhaustive]
1991#[doc(alias = "GtkAccessibleTextGranularity")]
1992pub enum AccessibleTextGranularity {
1993 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER")]
1996 Character,
1997 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD")]
2001 Word,
2002 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE")]
2006 Sentence,
2007 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE")]
2011 Line,
2012 #[doc(alias = "GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH")]
2016 Paragraph,
2017 #[doc(hidden)]
2018 __Unknown(i32),
2019}
2020
2021#[cfg(feature = "v4_14")]
2022#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2023#[doc(hidden)]
2024impl IntoGlib for AccessibleTextGranularity {
2025 type GlibType = ffi::GtkAccessibleTextGranularity;
2026
2027 #[inline]
2028 fn into_glib(self) -> ffi::GtkAccessibleTextGranularity {
2029 match self {
2030 Self::Character => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER,
2031 Self::Word => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD,
2032 Self::Sentence => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE,
2033 Self::Line => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE,
2034 Self::Paragraph => ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH,
2035 Self::__Unknown(value) => value,
2036 }
2037 }
2038}
2039
2040#[cfg(feature = "v4_14")]
2041#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2042#[doc(hidden)]
2043impl FromGlib<ffi::GtkAccessibleTextGranularity> for AccessibleTextGranularity {
2044 #[inline]
2045 unsafe fn from_glib(value: ffi::GtkAccessibleTextGranularity) -> Self {
2046 skip_assert_initialized!();
2047
2048 match value {
2049 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER => Self::Character,
2050 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD => Self::Word,
2051 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE => Self::Sentence,
2052 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE => Self::Line,
2053 ffi::GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH => Self::Paragraph,
2054 value => Self::__Unknown(value),
2055 }
2056 }
2057}
2058
2059#[cfg(feature = "v4_14")]
2060#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2061impl StaticType for AccessibleTextGranularity {
2062 #[inline]
2063 #[doc(alias = "gtk_accessible_text_granularity_get_type")]
2064 fn static_type() -> glib::Type {
2065 unsafe { from_glib(ffi::gtk_accessible_text_granularity_get_type()) }
2066 }
2067}
2068
2069#[cfg(feature = "v4_14")]
2070#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2071impl glib::HasParamSpec for AccessibleTextGranularity {
2072 type ParamSpec = glib::ParamSpecEnum;
2073 type SetValue = Self;
2074 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2075
2076 fn param_spec_builder() -> Self::BuilderFn {
2077 Self::ParamSpec::builder_with_default
2078 }
2079}
2080
2081#[cfg(feature = "v4_14")]
2082#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2083impl glib::value::ValueType for AccessibleTextGranularity {
2084 type Type = Self;
2085}
2086
2087#[cfg(feature = "v4_14")]
2088#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2089unsafe impl<'a> glib::value::FromValue<'a> for AccessibleTextGranularity {
2090 type Checker = glib::value::GenericValueTypeChecker<Self>;
2091
2092 #[inline]
2093 unsafe fn from_value(value: &'a glib::Value) -> Self {
2094 skip_assert_initialized!();
2095 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
2096 }
2097}
2098
2099#[cfg(feature = "v4_14")]
2100#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2101impl ToValue for AccessibleTextGranularity {
2102 #[inline]
2103 fn to_value(&self) -> glib::Value {
2104 let mut value = glib::Value::for_value_type::<Self>();
2105 unsafe {
2106 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2107 }
2108 value
2109 }
2110
2111 #[inline]
2112 fn value_type(&self) -> glib::Type {
2113 Self::static_type()
2114 }
2115}
2116
2117#[cfg(feature = "v4_14")]
2118#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
2119impl From<AccessibleTextGranularity> for glib::Value {
2120 #[inline]
2121 fn from(v: AccessibleTextGranularity) -> Self {
2122 skip_assert_initialized!();
2123 ToValue::to_value(&v)
2124 }
2125}
2126
2127#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2134#[non_exhaustive]
2135#[doc(alias = "GtkAccessibleTristate")]
2136pub enum AccessibleTristate {
2137 #[doc(alias = "GTK_ACCESSIBLE_TRISTATE_FALSE")]
2139 False,
2140 #[doc(alias = "GTK_ACCESSIBLE_TRISTATE_TRUE")]
2142 True,
2143 #[doc(alias = "GTK_ACCESSIBLE_TRISTATE_MIXED")]
2145 Mixed,
2146 #[doc(hidden)]
2147 __Unknown(i32),
2148}
2149
2150#[doc(hidden)]
2151impl IntoGlib for AccessibleTristate {
2152 type GlibType = ffi::GtkAccessibleTristate;
2153
2154 #[inline]
2155 fn into_glib(self) -> ffi::GtkAccessibleTristate {
2156 match self {
2157 Self::False => ffi::GTK_ACCESSIBLE_TRISTATE_FALSE,
2158 Self::True => ffi::GTK_ACCESSIBLE_TRISTATE_TRUE,
2159 Self::Mixed => ffi::GTK_ACCESSIBLE_TRISTATE_MIXED,
2160 Self::__Unknown(value) => value,
2161 }
2162 }
2163}
2164
2165#[doc(hidden)]
2166impl FromGlib<ffi::GtkAccessibleTristate> for AccessibleTristate {
2167 #[inline]
2168 unsafe fn from_glib(value: ffi::GtkAccessibleTristate) -> Self {
2169 skip_assert_initialized!();
2170
2171 match value {
2172 ffi::GTK_ACCESSIBLE_TRISTATE_FALSE => Self::False,
2173 ffi::GTK_ACCESSIBLE_TRISTATE_TRUE => Self::True,
2174 ffi::GTK_ACCESSIBLE_TRISTATE_MIXED => Self::Mixed,
2175 value => Self::__Unknown(value),
2176 }
2177 }
2178}
2179
2180impl StaticType for AccessibleTristate {
2181 #[inline]
2182 #[doc(alias = "gtk_accessible_tristate_get_type")]
2183 fn static_type() -> glib::Type {
2184 unsafe { from_glib(ffi::gtk_accessible_tristate_get_type()) }
2185 }
2186}
2187
2188impl glib::HasParamSpec for AccessibleTristate {
2189 type ParamSpec = glib::ParamSpecEnum;
2190 type SetValue = Self;
2191 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2192
2193 fn param_spec_builder() -> Self::BuilderFn {
2194 Self::ParamSpec::builder_with_default
2195 }
2196}
2197
2198impl glib::value::ValueType for AccessibleTristate {
2199 type Type = Self;
2200}
2201
2202unsafe impl<'a> glib::value::FromValue<'a> for AccessibleTristate {
2203 type Checker = glib::value::GenericValueTypeChecker<Self>;
2204
2205 #[inline]
2206 unsafe fn from_value(value: &'a glib::Value) -> Self {
2207 skip_assert_initialized!();
2208 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
2209 }
2210}
2211
2212impl ToValue for AccessibleTristate {
2213 #[inline]
2214 fn to_value(&self) -> glib::Value {
2215 let mut value = glib::Value::for_value_type::<Self>();
2216 unsafe {
2217 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2218 }
2219 value
2220 }
2221
2222 #[inline]
2223 fn value_type(&self) -> glib::Type {
2224 Self::static_type()
2225 }
2226}
2227
2228impl From<AccessibleTristate> for glib::Value {
2229 #[inline]
2230 fn from(v: AccessibleTristate) -> Self {
2231 skip_assert_initialized!();
2232 ToValue::to_value(&v)
2233 }
2234}
2235
2236#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2238#[non_exhaustive]
2239#[doc(alias = "GtkArrowType")]
2240pub enum ArrowType {
2241 #[doc(alias = "GTK_ARROW_UP")]
2243 Up,
2244 #[doc(alias = "GTK_ARROW_DOWN")]
2246 Down,
2247 #[doc(alias = "GTK_ARROW_LEFT")]
2249 Left,
2250 #[doc(alias = "GTK_ARROW_RIGHT")]
2252 Right,
2253 #[doc(alias = "GTK_ARROW_NONE")]
2255 None,
2256 #[doc(hidden)]
2257 __Unknown(i32),
2258}
2259
2260#[doc(hidden)]
2261impl IntoGlib for ArrowType {
2262 type GlibType = ffi::GtkArrowType;
2263
2264 #[inline]
2265 fn into_glib(self) -> ffi::GtkArrowType {
2266 match self {
2267 Self::Up => ffi::GTK_ARROW_UP,
2268 Self::Down => ffi::GTK_ARROW_DOWN,
2269 Self::Left => ffi::GTK_ARROW_LEFT,
2270 Self::Right => ffi::GTK_ARROW_RIGHT,
2271 Self::None => ffi::GTK_ARROW_NONE,
2272 Self::__Unknown(value) => value,
2273 }
2274 }
2275}
2276
2277#[doc(hidden)]
2278impl FromGlib<ffi::GtkArrowType> for ArrowType {
2279 #[inline]
2280 unsafe fn from_glib(value: ffi::GtkArrowType) -> Self {
2281 skip_assert_initialized!();
2282
2283 match value {
2284 ffi::GTK_ARROW_UP => Self::Up,
2285 ffi::GTK_ARROW_DOWN => Self::Down,
2286 ffi::GTK_ARROW_LEFT => Self::Left,
2287 ffi::GTK_ARROW_RIGHT => Self::Right,
2288 ffi::GTK_ARROW_NONE => Self::None,
2289 value => Self::__Unknown(value),
2290 }
2291 }
2292}
2293
2294impl StaticType for ArrowType {
2295 #[inline]
2296 #[doc(alias = "gtk_arrow_type_get_type")]
2297 fn static_type() -> glib::Type {
2298 unsafe { from_glib(ffi::gtk_arrow_type_get_type()) }
2299 }
2300}
2301
2302impl glib::HasParamSpec for ArrowType {
2303 type ParamSpec = glib::ParamSpecEnum;
2304 type SetValue = Self;
2305 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2306
2307 fn param_spec_builder() -> Self::BuilderFn {
2308 Self::ParamSpec::builder_with_default
2309 }
2310}
2311
2312impl glib::value::ValueType for ArrowType {
2313 type Type = Self;
2314}
2315
2316unsafe impl<'a> glib::value::FromValue<'a> for ArrowType {
2317 type Checker = glib::value::GenericValueTypeChecker<Self>;
2318
2319 #[inline]
2320 unsafe fn from_value(value: &'a glib::Value) -> Self {
2321 skip_assert_initialized!();
2322 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
2323 }
2324}
2325
2326impl ToValue for ArrowType {
2327 #[inline]
2328 fn to_value(&self) -> glib::Value {
2329 let mut value = glib::Value::for_value_type::<Self>();
2330 unsafe {
2331 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2332 }
2333 value
2334 }
2335
2336 #[inline]
2337 fn value_type(&self) -> glib::Type {
2338 Self::static_type()
2339 }
2340}
2341
2342impl From<ArrowType> for glib::Value {
2343 #[inline]
2344 fn from(v: ArrowType) -> Self {
2345 skip_assert_initialized!();
2346 ToValue::to_value(&v)
2347 }
2348}
2349
2350#[cfg_attr(feature = "v4_10", deprecated = "Since 4.10")]
2365#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2366#[non_exhaustive]
2367#[doc(alias = "GtkAssistantPageType")]
2368pub enum AssistantPageType {
2369 #[doc(alias = "GTK_ASSISTANT_PAGE_CONTENT")]
2372 Content,
2373 #[doc(alias = "GTK_ASSISTANT_PAGE_INTRO")]
2377 Intro,
2378 #[doc(alias = "GTK_ASSISTANT_PAGE_CONFIRM")]
2381 Confirm,
2382 #[doc(alias = "GTK_ASSISTANT_PAGE_SUMMARY")]
2385 Summary,
2386 #[doc(alias = "GTK_ASSISTANT_PAGE_PROGRESS")]
2390 Progress,
2391 #[doc(alias = "GTK_ASSISTANT_PAGE_CUSTOM")]
2395 Custom,
2396 #[doc(hidden)]
2397 __Unknown(i32),
2398}
2399
2400#[allow(deprecated)]
2401#[doc(hidden)]
2402impl IntoGlib for AssistantPageType {
2403 type GlibType = ffi::GtkAssistantPageType;
2404
2405 #[inline]
2406 fn into_glib(self) -> ffi::GtkAssistantPageType {
2407 match self {
2408 Self::Content => ffi::GTK_ASSISTANT_PAGE_CONTENT,
2409 Self::Intro => ffi::GTK_ASSISTANT_PAGE_INTRO,
2410 Self::Confirm => ffi::GTK_ASSISTANT_PAGE_CONFIRM,
2411 Self::Summary => ffi::GTK_ASSISTANT_PAGE_SUMMARY,
2412 Self::Progress => ffi::GTK_ASSISTANT_PAGE_PROGRESS,
2413 Self::Custom => ffi::GTK_ASSISTANT_PAGE_CUSTOM,
2414 Self::__Unknown(value) => value,
2415 }
2416 }
2417}
2418
2419#[allow(deprecated)]
2420#[doc(hidden)]
2421impl FromGlib<ffi::GtkAssistantPageType> for AssistantPageType {
2422 #[inline]
2423 unsafe fn from_glib(value: ffi::GtkAssistantPageType) -> Self {
2424 skip_assert_initialized!();
2425
2426 match value {
2427 ffi::GTK_ASSISTANT_PAGE_CONTENT => Self::Content,
2428 ffi::GTK_ASSISTANT_PAGE_INTRO => Self::Intro,
2429 ffi::GTK_ASSISTANT_PAGE_CONFIRM => Self::Confirm,
2430 ffi::GTK_ASSISTANT_PAGE_SUMMARY => Self::Summary,
2431 ffi::GTK_ASSISTANT_PAGE_PROGRESS => Self::Progress,
2432 ffi::GTK_ASSISTANT_PAGE_CUSTOM => Self::Custom,
2433 value => Self::__Unknown(value),
2434 }
2435 }
2436}
2437
2438#[allow(deprecated)]
2439impl StaticType for AssistantPageType {
2440 #[inline]
2441 #[doc(alias = "gtk_assistant_page_type_get_type")]
2442 fn static_type() -> glib::Type {
2443 unsafe { from_glib(ffi::gtk_assistant_page_type_get_type()) }
2444 }
2445}
2446
2447#[allow(deprecated)]
2448impl glib::HasParamSpec for AssistantPageType {
2449 type ParamSpec = glib::ParamSpecEnum;
2450 type SetValue = Self;
2451 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2452
2453 fn param_spec_builder() -> Self::BuilderFn {
2454 Self::ParamSpec::builder_with_default
2455 }
2456}
2457
2458#[allow(deprecated)]
2459impl glib::value::ValueType for AssistantPageType {
2460 type Type = Self;
2461}
2462
2463#[allow(deprecated)]
2464unsafe impl<'a> glib::value::FromValue<'a> for AssistantPageType {
2465 type Checker = glib::value::GenericValueTypeChecker<Self>;
2466
2467 #[inline]
2468 unsafe fn from_value(value: &'a glib::Value) -> Self {
2469 skip_assert_initialized!();
2470 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
2471 }
2472}
2473
2474#[allow(deprecated)]
2475impl ToValue for AssistantPageType {
2476 #[inline]
2477 fn to_value(&self) -> glib::Value {
2478 let mut value = glib::Value::for_value_type::<Self>();
2479 unsafe {
2480 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2481 }
2482 value
2483 }
2484
2485 #[inline]
2486 fn value_type(&self) -> glib::Type {
2487 Self::static_type()
2488 }
2489}
2490
2491#[allow(deprecated)]
2492impl From<AssistantPageType> for glib::Value {
2493 #[inline]
2494 fn from(v: AssistantPageType) -> Self {
2495 skip_assert_initialized!();
2496 ToValue::to_value(&v)
2497 }
2498}
2499
2500#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2509#[non_exhaustive]
2510#[doc(alias = "GtkBaselinePosition")]
2511pub enum BaselinePosition {
2512 #[doc(alias = "GTK_BASELINE_POSITION_TOP")]
2514 Top,
2515 #[doc(alias = "GTK_BASELINE_POSITION_CENTER")]
2517 Center,
2518 #[doc(alias = "GTK_BASELINE_POSITION_BOTTOM")]
2520 Bottom,
2521 #[doc(hidden)]
2522 __Unknown(i32),
2523}
2524
2525#[doc(hidden)]
2526impl IntoGlib for BaselinePosition {
2527 type GlibType = ffi::GtkBaselinePosition;
2528
2529 #[inline]
2530 fn into_glib(self) -> ffi::GtkBaselinePosition {
2531 match self {
2532 Self::Top => ffi::GTK_BASELINE_POSITION_TOP,
2533 Self::Center => ffi::GTK_BASELINE_POSITION_CENTER,
2534 Self::Bottom => ffi::GTK_BASELINE_POSITION_BOTTOM,
2535 Self::__Unknown(value) => value,
2536 }
2537 }
2538}
2539
2540#[doc(hidden)]
2541impl FromGlib<ffi::GtkBaselinePosition> for BaselinePosition {
2542 #[inline]
2543 unsafe fn from_glib(value: ffi::GtkBaselinePosition) -> Self {
2544 skip_assert_initialized!();
2545
2546 match value {
2547 ffi::GTK_BASELINE_POSITION_TOP => Self::Top,
2548 ffi::GTK_BASELINE_POSITION_CENTER => Self::Center,
2549 ffi::GTK_BASELINE_POSITION_BOTTOM => Self::Bottom,
2550 value => Self::__Unknown(value),
2551 }
2552 }
2553}
2554
2555impl StaticType for BaselinePosition {
2556 #[inline]
2557 #[doc(alias = "gtk_baseline_position_get_type")]
2558 fn static_type() -> glib::Type {
2559 unsafe { from_glib(ffi::gtk_baseline_position_get_type()) }
2560 }
2561}
2562
2563impl glib::HasParamSpec for BaselinePosition {
2564 type ParamSpec = glib::ParamSpecEnum;
2565 type SetValue = Self;
2566 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2567
2568 fn param_spec_builder() -> Self::BuilderFn {
2569 Self::ParamSpec::builder_with_default
2570 }
2571}
2572
2573impl glib::value::ValueType for BaselinePosition {
2574 type Type = Self;
2575}
2576
2577unsafe impl<'a> glib::value::FromValue<'a> for BaselinePosition {
2578 type Checker = glib::value::GenericValueTypeChecker<Self>;
2579
2580 #[inline]
2581 unsafe fn from_value(value: &'a glib::Value) -> Self {
2582 skip_assert_initialized!();
2583 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
2584 }
2585}
2586
2587impl ToValue for BaselinePosition {
2588 #[inline]
2589 fn to_value(&self) -> glib::Value {
2590 let mut value = glib::Value::for_value_type::<Self>();
2591 unsafe {
2592 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2593 }
2594 value
2595 }
2596
2597 #[inline]
2598 fn value_type(&self) -> glib::Type {
2599 Self::static_type()
2600 }
2601}
2602
2603impl From<BaselinePosition> for glib::Value {
2604 #[inline]
2605 fn from(v: BaselinePosition) -> Self {
2606 skip_assert_initialized!();
2607 ToValue::to_value(&v)
2608 }
2609}
2610
2611#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2613#[non_exhaustive]
2614#[doc(alias = "GtkBorderStyle")]
2615pub enum BorderStyle {
2616 #[doc(alias = "GTK_BORDER_STYLE_NONE")]
2618 None,
2619 #[doc(alias = "GTK_BORDER_STYLE_HIDDEN")]
2621 Hidden,
2622 #[doc(alias = "GTK_BORDER_STYLE_SOLID")]
2624 Solid,
2625 #[doc(alias = "GTK_BORDER_STYLE_INSET")]
2627 Inset,
2628 #[doc(alias = "GTK_BORDER_STYLE_OUTSET")]
2630 Outset,
2631 #[doc(alias = "GTK_BORDER_STYLE_DOTTED")]
2633 Dotted,
2634 #[doc(alias = "GTK_BORDER_STYLE_DASHED")]
2636 Dashed,
2637 #[doc(alias = "GTK_BORDER_STYLE_DOUBLE")]
2639 Double,
2640 #[doc(alias = "GTK_BORDER_STYLE_GROOVE")]
2642 Groove,
2643 #[doc(alias = "GTK_BORDER_STYLE_RIDGE")]
2645 Ridge,
2646 #[doc(hidden)]
2647 __Unknown(i32),
2648}
2649
2650#[doc(hidden)]
2651impl IntoGlib for BorderStyle {
2652 type GlibType = ffi::GtkBorderStyle;
2653
2654 #[inline]
2655 fn into_glib(self) -> ffi::GtkBorderStyle {
2656 match self {
2657 Self::None => ffi::GTK_BORDER_STYLE_NONE,
2658 Self::Hidden => ffi::GTK_BORDER_STYLE_HIDDEN,
2659 Self::Solid => ffi::GTK_BORDER_STYLE_SOLID,
2660 Self::Inset => ffi::GTK_BORDER_STYLE_INSET,
2661 Self::Outset => ffi::GTK_BORDER_STYLE_OUTSET,
2662 Self::Dotted => ffi::GTK_BORDER_STYLE_DOTTED,
2663 Self::Dashed => ffi::GTK_BORDER_STYLE_DASHED,
2664 Self::Double => ffi::GTK_BORDER_STYLE_DOUBLE,
2665 Self::Groove => ffi::GTK_BORDER_STYLE_GROOVE,
2666 Self::Ridge => ffi::GTK_BORDER_STYLE_RIDGE,
2667 Self::__Unknown(value) => value,
2668 }
2669 }
2670}
2671
2672#[doc(hidden)]
2673impl FromGlib<ffi::GtkBorderStyle> for BorderStyle {
2674 #[inline]
2675 unsafe fn from_glib(value: ffi::GtkBorderStyle) -> Self {
2676 skip_assert_initialized!();
2677
2678 match value {
2679 ffi::GTK_BORDER_STYLE_NONE => Self::None,
2680 ffi::GTK_BORDER_STYLE_HIDDEN => Self::Hidden,
2681 ffi::GTK_BORDER_STYLE_SOLID => Self::Solid,
2682 ffi::GTK_BORDER_STYLE_INSET => Self::Inset,
2683 ffi::GTK_BORDER_STYLE_OUTSET => Self::Outset,
2684 ffi::GTK_BORDER_STYLE_DOTTED => Self::Dotted,
2685 ffi::GTK_BORDER_STYLE_DASHED => Self::Dashed,
2686 ffi::GTK_BORDER_STYLE_DOUBLE => Self::Double,
2687 ffi::GTK_BORDER_STYLE_GROOVE => Self::Groove,
2688 ffi::GTK_BORDER_STYLE_RIDGE => Self::Ridge,
2689 value => Self::__Unknown(value),
2690 }
2691 }
2692}
2693
2694impl StaticType for BorderStyle {
2695 #[inline]
2696 #[doc(alias = "gtk_border_style_get_type")]
2697 fn static_type() -> glib::Type {
2698 unsafe { from_glib(ffi::gtk_border_style_get_type()) }
2699 }
2700}
2701
2702impl glib::HasParamSpec for BorderStyle {
2703 type ParamSpec = glib::ParamSpecEnum;
2704 type SetValue = Self;
2705 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2706
2707 fn param_spec_builder() -> Self::BuilderFn {
2708 Self::ParamSpec::builder_with_default
2709 }
2710}
2711
2712impl glib::value::ValueType for BorderStyle {
2713 type Type = Self;
2714}
2715
2716unsafe impl<'a> glib::value::FromValue<'a> for BorderStyle {
2717 type Checker = glib::value::GenericValueTypeChecker<Self>;
2718
2719 #[inline]
2720 unsafe fn from_value(value: &'a glib::Value) -> Self {
2721 skip_assert_initialized!();
2722 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
2723 }
2724}
2725
2726impl ToValue for BorderStyle {
2727 #[inline]
2728 fn to_value(&self) -> glib::Value {
2729 let mut value = glib::Value::for_value_type::<Self>();
2730 unsafe {
2731 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2732 }
2733 value
2734 }
2735
2736 #[inline]
2737 fn value_type(&self) -> glib::Type {
2738 Self::static_type()
2739 }
2740}
2741
2742impl From<BorderStyle> for glib::Value {
2743 #[inline]
2744 fn from(v: BorderStyle) -> Self {
2745 skip_assert_initialized!();
2746 ToValue::to_value(&v)
2747 }
2748}
2749
2750#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2753#[non_exhaustive]
2754#[doc(alias = "GtkBuilderError")]
2755pub enum BuilderError {
2756 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION")]
2759 InvalidTypeFunction,
2760 #[doc(alias = "GTK_BUILDER_ERROR_UNHANDLED_TAG")]
2763 UnhandledTag,
2764 #[doc(alias = "GTK_BUILDER_ERROR_MISSING_ATTRIBUTE")]
2767 MissingAttribute,
2768 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_ATTRIBUTE")]
2771 InvalidAttribute,
2772 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_TAG")]
2775 InvalidTag,
2776 #[doc(alias = "GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE")]
2779 MissingPropertyValue,
2780 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_VALUE")]
2783 InvalidValue,
2784 #[doc(alias = "GTK_BUILDER_ERROR_VERSION_MISMATCH")]
2787 VersionMismatch,
2788 #[doc(alias = "GTK_BUILDER_ERROR_DUPLICATE_ID")]
2790 DuplicateId,
2791 #[doc(alias = "GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED")]
2794 ObjectTypeRefused,
2795 #[doc(alias = "GTK_BUILDER_ERROR_TEMPLATE_MISMATCH")]
2797 TemplateMismatch,
2798 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_PROPERTY")]
2800 InvalidProperty,
2801 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_SIGNAL")]
2803 InvalidSignal,
2804 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_ID")]
2806 InvalidId,
2807 #[doc(alias = "GTK_BUILDER_ERROR_INVALID_FUNCTION")]
2811 InvalidFunction,
2812 #[doc(hidden)]
2813 __Unknown(i32),
2814}
2815
2816#[doc(hidden)]
2817impl IntoGlib for BuilderError {
2818 type GlibType = ffi::GtkBuilderError;
2819
2820 fn into_glib(self) -> ffi::GtkBuilderError {
2821 match self {
2822 Self::InvalidTypeFunction => ffi::GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION,
2823 Self::UnhandledTag => ffi::GTK_BUILDER_ERROR_UNHANDLED_TAG,
2824 Self::MissingAttribute => ffi::GTK_BUILDER_ERROR_MISSING_ATTRIBUTE,
2825 Self::InvalidAttribute => ffi::GTK_BUILDER_ERROR_INVALID_ATTRIBUTE,
2826 Self::InvalidTag => ffi::GTK_BUILDER_ERROR_INVALID_TAG,
2827 Self::MissingPropertyValue => ffi::GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE,
2828 Self::InvalidValue => ffi::GTK_BUILDER_ERROR_INVALID_VALUE,
2829 Self::VersionMismatch => ffi::GTK_BUILDER_ERROR_VERSION_MISMATCH,
2830 Self::DuplicateId => ffi::GTK_BUILDER_ERROR_DUPLICATE_ID,
2831 Self::ObjectTypeRefused => ffi::GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED,
2832 Self::TemplateMismatch => ffi::GTK_BUILDER_ERROR_TEMPLATE_MISMATCH,
2833 Self::InvalidProperty => ffi::GTK_BUILDER_ERROR_INVALID_PROPERTY,
2834 Self::InvalidSignal => ffi::GTK_BUILDER_ERROR_INVALID_SIGNAL,
2835 Self::InvalidId => ffi::GTK_BUILDER_ERROR_INVALID_ID,
2836 Self::InvalidFunction => ffi::GTK_BUILDER_ERROR_INVALID_FUNCTION,
2837 Self::__Unknown(value) => value,
2838 }
2839 }
2840}
2841
2842#[doc(hidden)]
2843impl FromGlib<ffi::GtkBuilderError> for BuilderError {
2844 unsafe fn from_glib(value: ffi::GtkBuilderError) -> Self {
2845 skip_assert_initialized!();
2846
2847 match value {
2848 ffi::GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION => Self::InvalidTypeFunction,
2849 ffi::GTK_BUILDER_ERROR_UNHANDLED_TAG => Self::UnhandledTag,
2850 ffi::GTK_BUILDER_ERROR_MISSING_ATTRIBUTE => Self::MissingAttribute,
2851 ffi::GTK_BUILDER_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
2852 ffi::GTK_BUILDER_ERROR_INVALID_TAG => Self::InvalidTag,
2853 ffi::GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE => Self::MissingPropertyValue,
2854 ffi::GTK_BUILDER_ERROR_INVALID_VALUE => Self::InvalidValue,
2855 ffi::GTK_BUILDER_ERROR_VERSION_MISMATCH => Self::VersionMismatch,
2856 ffi::GTK_BUILDER_ERROR_DUPLICATE_ID => Self::DuplicateId,
2857 ffi::GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED => Self::ObjectTypeRefused,
2858 ffi::GTK_BUILDER_ERROR_TEMPLATE_MISMATCH => Self::TemplateMismatch,
2859 ffi::GTK_BUILDER_ERROR_INVALID_PROPERTY => Self::InvalidProperty,
2860 ffi::GTK_BUILDER_ERROR_INVALID_SIGNAL => Self::InvalidSignal,
2861 ffi::GTK_BUILDER_ERROR_INVALID_ID => Self::InvalidId,
2862 ffi::GTK_BUILDER_ERROR_INVALID_FUNCTION => Self::InvalidFunction,
2863 value => Self::__Unknown(value),
2864 }
2865 }
2866}
2867
2868impl glib::error::ErrorDomain for BuilderError {
2869 #[inline]
2870 fn domain() -> glib::Quark {
2871 skip_assert_initialized!();
2872
2873 unsafe { from_glib(ffi::gtk_builder_error_quark()) }
2874 }
2875
2876 #[inline]
2877 fn code(self) -> i32 {
2878 self.into_glib()
2879 }
2880
2881 #[inline]
2882 #[allow(clippy::match_single_binding)]
2883 fn from(code: i32) -> Option<Self> {
2884 skip_assert_initialized!();
2885 match unsafe { from_glib(code) } {
2886 value => Some(value),
2887 }
2888 }
2889}
2890
2891impl StaticType for BuilderError {
2892 #[inline]
2893 #[doc(alias = "gtk_builder_error_get_type")]
2894 fn static_type() -> glib::Type {
2895 unsafe { from_glib(ffi::gtk_builder_error_get_type()) }
2896 }
2897}
2898
2899impl glib::HasParamSpec for BuilderError {
2900 type ParamSpec = glib::ParamSpecEnum;
2901 type SetValue = Self;
2902 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
2903
2904 fn param_spec_builder() -> Self::BuilderFn {
2905 Self::ParamSpec::builder_with_default
2906 }
2907}
2908
2909impl glib::value::ValueType for BuilderError {
2910 type Type = Self;
2911}
2912
2913unsafe impl<'a> glib::value::FromValue<'a> for BuilderError {
2914 type Checker = glib::value::GenericValueTypeChecker<Self>;
2915
2916 #[inline]
2917 unsafe fn from_value(value: &'a glib::Value) -> Self {
2918 skip_assert_initialized!();
2919 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
2920 }
2921}
2922
2923impl ToValue for BuilderError {
2924 #[inline]
2925 fn to_value(&self) -> glib::Value {
2926 let mut value = glib::Value::for_value_type::<Self>();
2927 unsafe {
2928 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
2929 }
2930 value
2931 }
2932
2933 #[inline]
2934 fn value_type(&self) -> glib::Type {
2935 Self::static_type()
2936 }
2937}
2938
2939impl From<BuilderError> for glib::Value {
2940 #[inline]
2941 fn from(v: BuilderError) -> Self {
2942 skip_assert_initialized!();
2943 ToValue::to_value(&v)
2944 }
2945}
2946
2947#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
2956#[non_exhaustive]
2957#[doc(alias = "GtkButtonsType")]
2958pub enum ButtonsType {
2959 #[doc(alias = "GTK_BUTTONS_NONE")]
2961 None,
2962 #[doc(alias = "GTK_BUTTONS_OK")]
2964 Ok,
2965 #[doc(alias = "GTK_BUTTONS_CLOSE")]
2967 Close,
2968 #[doc(alias = "GTK_BUTTONS_CANCEL")]
2970 Cancel,
2971 #[doc(alias = "GTK_BUTTONS_YES_NO")]
2973 YesNo,
2974 #[doc(alias = "GTK_BUTTONS_OK_CANCEL")]
2976 OkCancel,
2977 #[doc(hidden)]
2978 __Unknown(i32),
2979}
2980
2981#[doc(hidden)]
2982impl IntoGlib for ButtonsType {
2983 type GlibType = ffi::GtkButtonsType;
2984
2985 #[inline]
2986 fn into_glib(self) -> ffi::GtkButtonsType {
2987 match self {
2988 Self::None => ffi::GTK_BUTTONS_NONE,
2989 Self::Ok => ffi::GTK_BUTTONS_OK,
2990 Self::Close => ffi::GTK_BUTTONS_CLOSE,
2991 Self::Cancel => ffi::GTK_BUTTONS_CANCEL,
2992 Self::YesNo => ffi::GTK_BUTTONS_YES_NO,
2993 Self::OkCancel => ffi::GTK_BUTTONS_OK_CANCEL,
2994 Self::__Unknown(value) => value,
2995 }
2996 }
2997}
2998
2999#[doc(hidden)]
3000impl FromGlib<ffi::GtkButtonsType> for ButtonsType {
3001 #[inline]
3002 unsafe fn from_glib(value: ffi::GtkButtonsType) -> Self {
3003 skip_assert_initialized!();
3004
3005 match value {
3006 ffi::GTK_BUTTONS_NONE => Self::None,
3007 ffi::GTK_BUTTONS_OK => Self::Ok,
3008 ffi::GTK_BUTTONS_CLOSE => Self::Close,
3009 ffi::GTK_BUTTONS_CANCEL => Self::Cancel,
3010 ffi::GTK_BUTTONS_YES_NO => Self::YesNo,
3011 ffi::GTK_BUTTONS_OK_CANCEL => Self::OkCancel,
3012 value => Self::__Unknown(value),
3013 }
3014 }
3015}
3016
3017impl StaticType for ButtonsType {
3018 #[inline]
3019 #[doc(alias = "gtk_buttons_type_get_type")]
3020 fn static_type() -> glib::Type {
3021 unsafe { from_glib(ffi::gtk_buttons_type_get_type()) }
3022 }
3023}
3024
3025impl glib::HasParamSpec for ButtonsType {
3026 type ParamSpec = glib::ParamSpecEnum;
3027 type SetValue = Self;
3028 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3029
3030 fn param_spec_builder() -> Self::BuilderFn {
3031 Self::ParamSpec::builder_with_default
3032 }
3033}
3034
3035impl glib::value::ValueType for ButtonsType {
3036 type Type = Self;
3037}
3038
3039unsafe impl<'a> glib::value::FromValue<'a> for ButtonsType {
3040 type Checker = glib::value::GenericValueTypeChecker<Self>;
3041
3042 #[inline]
3043 unsafe fn from_value(value: &'a glib::Value) -> Self {
3044 skip_assert_initialized!();
3045 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3046 }
3047}
3048
3049impl ToValue for ButtonsType {
3050 #[inline]
3051 fn to_value(&self) -> glib::Value {
3052 let mut value = glib::Value::for_value_type::<Self>();
3053 unsafe {
3054 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3055 }
3056 value
3057 }
3058
3059 #[inline]
3060 fn value_type(&self) -> glib::Type {
3061 Self::static_type()
3062 }
3063}
3064
3065impl From<ButtonsType> for glib::Value {
3066 #[inline]
3067 fn from(v: ButtonsType) -> Self {
3068 skip_assert_initialized!();
3069 ToValue::to_value(&v)
3070 }
3071}
3072
3073#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
3079#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3080#[non_exhaustive]
3081#[doc(alias = "GtkCellRendererAccelMode")]
3082pub enum CellRendererAccelMode {
3083 #[doc(alias = "GTK_CELL_RENDERER_ACCEL_MODE_GTK")]
3085 Gtk,
3086 #[doc(alias = "GTK_CELL_RENDERER_ACCEL_MODE_OTHER")]
3088 Other,
3089 #[doc(hidden)]
3090 __Unknown(i32),
3091}
3092
3093#[allow(deprecated)]
3094#[doc(hidden)]
3095impl IntoGlib for CellRendererAccelMode {
3096 type GlibType = ffi::GtkCellRendererAccelMode;
3097
3098 #[inline]
3099 fn into_glib(self) -> ffi::GtkCellRendererAccelMode {
3100 match self {
3101 Self::Gtk => ffi::GTK_CELL_RENDERER_ACCEL_MODE_GTK,
3102 Self::Other => ffi::GTK_CELL_RENDERER_ACCEL_MODE_OTHER,
3103 Self::__Unknown(value) => value,
3104 }
3105 }
3106}
3107
3108#[allow(deprecated)]
3109#[doc(hidden)]
3110impl FromGlib<ffi::GtkCellRendererAccelMode> for CellRendererAccelMode {
3111 #[inline]
3112 unsafe fn from_glib(value: ffi::GtkCellRendererAccelMode) -> Self {
3113 skip_assert_initialized!();
3114
3115 match value {
3116 ffi::GTK_CELL_RENDERER_ACCEL_MODE_GTK => Self::Gtk,
3117 ffi::GTK_CELL_RENDERER_ACCEL_MODE_OTHER => Self::Other,
3118 value => Self::__Unknown(value),
3119 }
3120 }
3121}
3122
3123#[allow(deprecated)]
3124impl StaticType for CellRendererAccelMode {
3125 #[inline]
3126 #[doc(alias = "gtk_cell_renderer_accel_mode_get_type")]
3127 fn static_type() -> glib::Type {
3128 unsafe { from_glib(ffi::gtk_cell_renderer_accel_mode_get_type()) }
3129 }
3130}
3131
3132#[allow(deprecated)]
3133impl glib::HasParamSpec for CellRendererAccelMode {
3134 type ParamSpec = glib::ParamSpecEnum;
3135 type SetValue = Self;
3136 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3137
3138 fn param_spec_builder() -> Self::BuilderFn {
3139 Self::ParamSpec::builder_with_default
3140 }
3141}
3142
3143#[allow(deprecated)]
3144impl glib::value::ValueType for CellRendererAccelMode {
3145 type Type = Self;
3146}
3147
3148#[allow(deprecated)]
3149unsafe impl<'a> glib::value::FromValue<'a> for CellRendererAccelMode {
3150 type Checker = glib::value::GenericValueTypeChecker<Self>;
3151
3152 #[inline]
3153 unsafe fn from_value(value: &'a glib::Value) -> Self {
3154 skip_assert_initialized!();
3155 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3156 }
3157}
3158
3159#[allow(deprecated)]
3160impl ToValue for CellRendererAccelMode {
3161 #[inline]
3162 fn to_value(&self) -> glib::Value {
3163 let mut value = glib::Value::for_value_type::<Self>();
3164 unsafe {
3165 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3166 }
3167 value
3168 }
3169
3170 #[inline]
3171 fn value_type(&self) -> glib::Type {
3172 Self::static_type()
3173 }
3174}
3175
3176#[allow(deprecated)]
3177impl From<CellRendererAccelMode> for glib::Value {
3178 #[inline]
3179 fn from(v: CellRendererAccelMode) -> Self {
3180 skip_assert_initialized!();
3181 ToValue::to_value(&v)
3182 }
3183}
3184
3185#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
3191#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3192#[non_exhaustive]
3193#[doc(alias = "GtkCellRendererMode")]
3194pub enum CellRendererMode {
3195 #[doc(alias = "GTK_CELL_RENDERER_MODE_INERT")]
3200 Inert,
3201 #[doc(alias = "GTK_CELL_RENDERER_MODE_ACTIVATABLE")]
3203 Activatable,
3204 #[doc(alias = "GTK_CELL_RENDERER_MODE_EDITABLE")]
3206 Editable,
3207 #[doc(hidden)]
3208 __Unknown(i32),
3209}
3210
3211#[allow(deprecated)]
3212#[doc(hidden)]
3213impl IntoGlib for CellRendererMode {
3214 type GlibType = ffi::GtkCellRendererMode;
3215
3216 #[inline]
3217 fn into_glib(self) -> ffi::GtkCellRendererMode {
3218 match self {
3219 Self::Inert => ffi::GTK_CELL_RENDERER_MODE_INERT,
3220 Self::Activatable => ffi::GTK_CELL_RENDERER_MODE_ACTIVATABLE,
3221 Self::Editable => ffi::GTK_CELL_RENDERER_MODE_EDITABLE,
3222 Self::__Unknown(value) => value,
3223 }
3224 }
3225}
3226
3227#[allow(deprecated)]
3228#[doc(hidden)]
3229impl FromGlib<ffi::GtkCellRendererMode> for CellRendererMode {
3230 #[inline]
3231 unsafe fn from_glib(value: ffi::GtkCellRendererMode) -> Self {
3232 skip_assert_initialized!();
3233
3234 match value {
3235 ffi::GTK_CELL_RENDERER_MODE_INERT => Self::Inert,
3236 ffi::GTK_CELL_RENDERER_MODE_ACTIVATABLE => Self::Activatable,
3237 ffi::GTK_CELL_RENDERER_MODE_EDITABLE => Self::Editable,
3238 value => Self::__Unknown(value),
3239 }
3240 }
3241}
3242
3243#[allow(deprecated)]
3244impl StaticType for CellRendererMode {
3245 #[inline]
3246 #[doc(alias = "gtk_cell_renderer_mode_get_type")]
3247 fn static_type() -> glib::Type {
3248 unsafe { from_glib(ffi::gtk_cell_renderer_mode_get_type()) }
3249 }
3250}
3251
3252#[allow(deprecated)]
3253impl glib::HasParamSpec for CellRendererMode {
3254 type ParamSpec = glib::ParamSpecEnum;
3255 type SetValue = Self;
3256 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3257
3258 fn param_spec_builder() -> Self::BuilderFn {
3259 Self::ParamSpec::builder_with_default
3260 }
3261}
3262
3263#[allow(deprecated)]
3264impl glib::value::ValueType for CellRendererMode {
3265 type Type = Self;
3266}
3267
3268#[allow(deprecated)]
3269unsafe impl<'a> glib::value::FromValue<'a> for CellRendererMode {
3270 type Checker = glib::value::GenericValueTypeChecker<Self>;
3271
3272 #[inline]
3273 unsafe fn from_value(value: &'a glib::Value) -> Self {
3274 skip_assert_initialized!();
3275 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3276 }
3277}
3278
3279#[allow(deprecated)]
3280impl ToValue for CellRendererMode {
3281 #[inline]
3282 fn to_value(&self) -> glib::Value {
3283 let mut value = glib::Value::for_value_type::<Self>();
3284 unsafe {
3285 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3286 }
3287 value
3288 }
3289
3290 #[inline]
3291 fn value_type(&self) -> glib::Type {
3292 Self::static_type()
3293 }
3294}
3295
3296#[allow(deprecated)]
3297impl From<CellRendererMode> for glib::Value {
3298 #[inline]
3299 fn from(v: CellRendererMode) -> Self {
3300 skip_assert_initialized!();
3301 ToValue::to_value(&v)
3302 }
3303}
3304
3305#[cfg(feature = "v4_10")]
3311#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3312#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3313#[non_exhaustive]
3314#[doc(alias = "GtkCollation")]
3315pub enum Collation {
3316 #[doc(alias = "GTK_COLLATION_NONE")]
3318 None,
3319 #[doc(alias = "GTK_COLLATION_UNICODE")]
3321 Unicode,
3322 #[doc(alias = "GTK_COLLATION_FILENAME")]
3324 Filename,
3325 #[doc(hidden)]
3326 __Unknown(i32),
3327}
3328
3329#[cfg(feature = "v4_10")]
3330#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3331#[doc(hidden)]
3332impl IntoGlib for Collation {
3333 type GlibType = ffi::GtkCollation;
3334
3335 #[inline]
3336 fn into_glib(self) -> ffi::GtkCollation {
3337 match self {
3338 Self::None => ffi::GTK_COLLATION_NONE,
3339 Self::Unicode => ffi::GTK_COLLATION_UNICODE,
3340 Self::Filename => ffi::GTK_COLLATION_FILENAME,
3341 Self::__Unknown(value) => value,
3342 }
3343 }
3344}
3345
3346#[cfg(feature = "v4_10")]
3347#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3348#[doc(hidden)]
3349impl FromGlib<ffi::GtkCollation> for Collation {
3350 #[inline]
3351 unsafe fn from_glib(value: ffi::GtkCollation) -> Self {
3352 skip_assert_initialized!();
3353
3354 match value {
3355 ffi::GTK_COLLATION_NONE => Self::None,
3356 ffi::GTK_COLLATION_UNICODE => Self::Unicode,
3357 ffi::GTK_COLLATION_FILENAME => Self::Filename,
3358 value => Self::__Unknown(value),
3359 }
3360 }
3361}
3362
3363#[cfg(feature = "v4_10")]
3364#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3365impl StaticType for Collation {
3366 #[inline]
3367 #[doc(alias = "gtk_collation_get_type")]
3368 fn static_type() -> glib::Type {
3369 unsafe { from_glib(ffi::gtk_collation_get_type()) }
3370 }
3371}
3372
3373#[cfg(feature = "v4_10")]
3374#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3375impl glib::HasParamSpec for Collation {
3376 type ParamSpec = glib::ParamSpecEnum;
3377 type SetValue = Self;
3378 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3379
3380 fn param_spec_builder() -> Self::BuilderFn {
3381 Self::ParamSpec::builder_with_default
3382 }
3383}
3384
3385#[cfg(feature = "v4_10")]
3386#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3387impl glib::value::ValueType for Collation {
3388 type Type = Self;
3389}
3390
3391#[cfg(feature = "v4_10")]
3392#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3393unsafe impl<'a> glib::value::FromValue<'a> for Collation {
3394 type Checker = glib::value::GenericValueTypeChecker<Self>;
3395
3396 #[inline]
3397 unsafe fn from_value(value: &'a glib::Value) -> Self {
3398 skip_assert_initialized!();
3399 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3400 }
3401}
3402
3403#[cfg(feature = "v4_10")]
3404#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3405impl ToValue for Collation {
3406 #[inline]
3407 fn to_value(&self) -> glib::Value {
3408 let mut value = glib::Value::for_value_type::<Self>();
3409 unsafe {
3410 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3411 }
3412 value
3413 }
3414
3415 #[inline]
3416 fn value_type(&self) -> glib::Type {
3417 Self::static_type()
3418 }
3419}
3420
3421#[cfg(feature = "v4_10")]
3422#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
3423impl From<Collation> for glib::Value {
3424 #[inline]
3425 fn from(v: Collation) -> Self {
3426 skip_assert_initialized!();
3427 ToValue::to_value(&v)
3428 }
3429}
3430
3431#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3433#[non_exhaustive]
3434#[doc(alias = "GtkConstraintAttribute")]
3435pub enum ConstraintAttribute {
3436 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_NONE")]
3439 None,
3440 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_LEFT")]
3443 Left,
3444 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_RIGHT")]
3447 Right,
3448 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_TOP")]
3450 Top,
3451 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_BOTTOM")]
3453 Bottom,
3454 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_START")]
3458 Start,
3459 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_END")]
3463 End,
3464 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_WIDTH")]
3466 Width,
3467 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_HEIGHT")]
3469 Height,
3470 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_CENTER_X")]
3473 CenterX,
3474 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y")]
3477 CenterY,
3478 #[doc(alias = "GTK_CONSTRAINT_ATTRIBUTE_BASELINE")]
3480 Baseline,
3481 #[doc(hidden)]
3482 __Unknown(i32),
3483}
3484
3485#[doc(hidden)]
3486impl IntoGlib for ConstraintAttribute {
3487 type GlibType = ffi::GtkConstraintAttribute;
3488
3489 #[inline]
3490 fn into_glib(self) -> ffi::GtkConstraintAttribute {
3491 match self {
3492 Self::None => ffi::GTK_CONSTRAINT_ATTRIBUTE_NONE,
3493 Self::Left => ffi::GTK_CONSTRAINT_ATTRIBUTE_LEFT,
3494 Self::Right => ffi::GTK_CONSTRAINT_ATTRIBUTE_RIGHT,
3495 Self::Top => ffi::GTK_CONSTRAINT_ATTRIBUTE_TOP,
3496 Self::Bottom => ffi::GTK_CONSTRAINT_ATTRIBUTE_BOTTOM,
3497 Self::Start => ffi::GTK_CONSTRAINT_ATTRIBUTE_START,
3498 Self::End => ffi::GTK_CONSTRAINT_ATTRIBUTE_END,
3499 Self::Width => ffi::GTK_CONSTRAINT_ATTRIBUTE_WIDTH,
3500 Self::Height => ffi::GTK_CONSTRAINT_ATTRIBUTE_HEIGHT,
3501 Self::CenterX => ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_X,
3502 Self::CenterY => ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y,
3503 Self::Baseline => ffi::GTK_CONSTRAINT_ATTRIBUTE_BASELINE,
3504 Self::__Unknown(value) => value,
3505 }
3506 }
3507}
3508
3509#[doc(hidden)]
3510impl FromGlib<ffi::GtkConstraintAttribute> for ConstraintAttribute {
3511 #[inline]
3512 unsafe fn from_glib(value: ffi::GtkConstraintAttribute) -> Self {
3513 skip_assert_initialized!();
3514
3515 match value {
3516 ffi::GTK_CONSTRAINT_ATTRIBUTE_NONE => Self::None,
3517 ffi::GTK_CONSTRAINT_ATTRIBUTE_LEFT => Self::Left,
3518 ffi::GTK_CONSTRAINT_ATTRIBUTE_RIGHT => Self::Right,
3519 ffi::GTK_CONSTRAINT_ATTRIBUTE_TOP => Self::Top,
3520 ffi::GTK_CONSTRAINT_ATTRIBUTE_BOTTOM => Self::Bottom,
3521 ffi::GTK_CONSTRAINT_ATTRIBUTE_START => Self::Start,
3522 ffi::GTK_CONSTRAINT_ATTRIBUTE_END => Self::End,
3523 ffi::GTK_CONSTRAINT_ATTRIBUTE_WIDTH => Self::Width,
3524 ffi::GTK_CONSTRAINT_ATTRIBUTE_HEIGHT => Self::Height,
3525 ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_X => Self::CenterX,
3526 ffi::GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y => Self::CenterY,
3527 ffi::GTK_CONSTRAINT_ATTRIBUTE_BASELINE => Self::Baseline,
3528 value => Self::__Unknown(value),
3529 }
3530 }
3531}
3532
3533impl StaticType for ConstraintAttribute {
3534 #[inline]
3535 #[doc(alias = "gtk_constraint_attribute_get_type")]
3536 fn static_type() -> glib::Type {
3537 unsafe { from_glib(ffi::gtk_constraint_attribute_get_type()) }
3538 }
3539}
3540
3541impl glib::HasParamSpec for ConstraintAttribute {
3542 type ParamSpec = glib::ParamSpecEnum;
3543 type SetValue = Self;
3544 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3545
3546 fn param_spec_builder() -> Self::BuilderFn {
3547 Self::ParamSpec::builder_with_default
3548 }
3549}
3550
3551impl glib::value::ValueType for ConstraintAttribute {
3552 type Type = Self;
3553}
3554
3555unsafe impl<'a> glib::value::FromValue<'a> for ConstraintAttribute {
3556 type Checker = glib::value::GenericValueTypeChecker<Self>;
3557
3558 #[inline]
3559 unsafe fn from_value(value: &'a glib::Value) -> Self {
3560 skip_assert_initialized!();
3561 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3562 }
3563}
3564
3565impl ToValue for ConstraintAttribute {
3566 #[inline]
3567 fn to_value(&self) -> glib::Value {
3568 let mut value = glib::Value::for_value_type::<Self>();
3569 unsafe {
3570 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3571 }
3572 value
3573 }
3574
3575 #[inline]
3576 fn value_type(&self) -> glib::Type {
3577 Self::static_type()
3578 }
3579}
3580
3581impl From<ConstraintAttribute> for glib::Value {
3582 #[inline]
3583 fn from(v: ConstraintAttribute) -> Self {
3584 skip_assert_initialized!();
3585 ToValue::to_value(&v)
3586 }
3587}
3588
3589#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3591#[non_exhaustive]
3592#[doc(alias = "GtkConstraintRelation")]
3593pub enum ConstraintRelation {
3594 #[doc(alias = "GTK_CONSTRAINT_RELATION_LE")]
3596 Le,
3597 #[doc(alias = "GTK_CONSTRAINT_RELATION_EQ")]
3599 Eq,
3600 #[doc(alias = "GTK_CONSTRAINT_RELATION_GE")]
3602 Ge,
3603 #[doc(hidden)]
3604 __Unknown(i32),
3605}
3606
3607#[doc(hidden)]
3608impl IntoGlib for ConstraintRelation {
3609 type GlibType = ffi::GtkConstraintRelation;
3610
3611 #[inline]
3612 fn into_glib(self) -> ffi::GtkConstraintRelation {
3613 match self {
3614 Self::Le => ffi::GTK_CONSTRAINT_RELATION_LE,
3615 Self::Eq => ffi::GTK_CONSTRAINT_RELATION_EQ,
3616 Self::Ge => ffi::GTK_CONSTRAINT_RELATION_GE,
3617 Self::__Unknown(value) => value,
3618 }
3619 }
3620}
3621
3622#[doc(hidden)]
3623impl FromGlib<ffi::GtkConstraintRelation> for ConstraintRelation {
3624 #[inline]
3625 unsafe fn from_glib(value: ffi::GtkConstraintRelation) -> Self {
3626 skip_assert_initialized!();
3627
3628 match value {
3629 ffi::GTK_CONSTRAINT_RELATION_LE => Self::Le,
3630 ffi::GTK_CONSTRAINT_RELATION_EQ => Self::Eq,
3631 ffi::GTK_CONSTRAINT_RELATION_GE => Self::Ge,
3632 value => Self::__Unknown(value),
3633 }
3634 }
3635}
3636
3637impl StaticType for ConstraintRelation {
3638 #[inline]
3639 #[doc(alias = "gtk_constraint_relation_get_type")]
3640 fn static_type() -> glib::Type {
3641 unsafe { from_glib(ffi::gtk_constraint_relation_get_type()) }
3642 }
3643}
3644
3645impl glib::HasParamSpec for ConstraintRelation {
3646 type ParamSpec = glib::ParamSpecEnum;
3647 type SetValue = Self;
3648 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3649
3650 fn param_spec_builder() -> Self::BuilderFn {
3651 Self::ParamSpec::builder_with_default
3652 }
3653}
3654
3655impl glib::value::ValueType for ConstraintRelation {
3656 type Type = Self;
3657}
3658
3659unsafe impl<'a> glib::value::FromValue<'a> for ConstraintRelation {
3660 type Checker = glib::value::GenericValueTypeChecker<Self>;
3661
3662 #[inline]
3663 unsafe fn from_value(value: &'a glib::Value) -> Self {
3664 skip_assert_initialized!();
3665 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3666 }
3667}
3668
3669impl ToValue for ConstraintRelation {
3670 #[inline]
3671 fn to_value(&self) -> glib::Value {
3672 let mut value = glib::Value::for_value_type::<Self>();
3673 unsafe {
3674 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3675 }
3676 value
3677 }
3678
3679 #[inline]
3680 fn value_type(&self) -> glib::Type {
3681 Self::static_type()
3682 }
3683}
3684
3685impl From<ConstraintRelation> for glib::Value {
3686 #[inline]
3687 fn from(v: ConstraintRelation) -> Self {
3688 skip_assert_initialized!();
3689 ToValue::to_value(&v)
3690 }
3691}
3692
3693#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3698#[non_exhaustive]
3699#[doc(alias = "GtkConstraintStrength")]
3700pub enum ConstraintStrength {
3701 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_REQUIRED")]
3703 Required,
3704 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_STRONG")]
3706 Strong,
3707 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_MEDIUM")]
3709 Medium,
3710 #[doc(alias = "GTK_CONSTRAINT_STRENGTH_WEAK")]
3712 Weak,
3713 #[doc(hidden)]
3714 __Unknown(i32),
3715}
3716
3717#[doc(hidden)]
3718impl IntoGlib for ConstraintStrength {
3719 type GlibType = ffi::GtkConstraintStrength;
3720
3721 #[inline]
3722 fn into_glib(self) -> ffi::GtkConstraintStrength {
3723 match self {
3724 Self::Required => ffi::GTK_CONSTRAINT_STRENGTH_REQUIRED,
3725 Self::Strong => ffi::GTK_CONSTRAINT_STRENGTH_STRONG,
3726 Self::Medium => ffi::GTK_CONSTRAINT_STRENGTH_MEDIUM,
3727 Self::Weak => ffi::GTK_CONSTRAINT_STRENGTH_WEAK,
3728 Self::__Unknown(value) => value,
3729 }
3730 }
3731}
3732
3733#[doc(hidden)]
3734impl FromGlib<ffi::GtkConstraintStrength> for ConstraintStrength {
3735 #[inline]
3736 unsafe fn from_glib(value: ffi::GtkConstraintStrength) -> Self {
3737 skip_assert_initialized!();
3738
3739 match value {
3740 ffi::GTK_CONSTRAINT_STRENGTH_REQUIRED => Self::Required,
3741 ffi::GTK_CONSTRAINT_STRENGTH_STRONG => Self::Strong,
3742 ffi::GTK_CONSTRAINT_STRENGTH_MEDIUM => Self::Medium,
3743 ffi::GTK_CONSTRAINT_STRENGTH_WEAK => Self::Weak,
3744 value => Self::__Unknown(value),
3745 }
3746 }
3747}
3748
3749impl StaticType for ConstraintStrength {
3750 #[inline]
3751 #[doc(alias = "gtk_constraint_strength_get_type")]
3752 fn static_type() -> glib::Type {
3753 unsafe { from_glib(ffi::gtk_constraint_strength_get_type()) }
3754 }
3755}
3756
3757impl glib::HasParamSpec for ConstraintStrength {
3758 type ParamSpec = glib::ParamSpecEnum;
3759 type SetValue = Self;
3760 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3761
3762 fn param_spec_builder() -> Self::BuilderFn {
3763 Self::ParamSpec::builder_with_default
3764 }
3765}
3766
3767impl glib::value::ValueType for ConstraintStrength {
3768 type Type = Self;
3769}
3770
3771unsafe impl<'a> glib::value::FromValue<'a> for ConstraintStrength {
3772 type Checker = glib::value::GenericValueTypeChecker<Self>;
3773
3774 #[inline]
3775 unsafe fn from_value(value: &'a glib::Value) -> Self {
3776 skip_assert_initialized!();
3777 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3778 }
3779}
3780
3781impl ToValue for ConstraintStrength {
3782 #[inline]
3783 fn to_value(&self) -> glib::Value {
3784 let mut value = glib::Value::for_value_type::<Self>();
3785 unsafe {
3786 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3787 }
3788 value
3789 }
3790
3791 #[inline]
3792 fn value_type(&self) -> glib::Type {
3793 Self::static_type()
3794 }
3795}
3796
3797impl From<ConstraintStrength> for glib::Value {
3798 #[inline]
3799 fn from(v: ConstraintStrength) -> Self {
3800 skip_assert_initialized!();
3801 ToValue::to_value(&v)
3802 }
3803}
3804
3805#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3807#[non_exhaustive]
3808#[doc(alias = "GtkConstraintVflParserError")]
3809pub enum ConstraintVflParserError {
3810 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL")]
3812 InvalidSymbol,
3813 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE")]
3815 InvalidAttribute,
3816 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW")]
3818 InvalidView,
3819 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC")]
3821 InvalidMetric,
3822 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY")]
3824 InvalidPriority,
3825 #[doc(alias = "GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION")]
3827 InvalidRelation,
3828 #[doc(hidden)]
3829 __Unknown(i32),
3830}
3831
3832#[doc(hidden)]
3833impl IntoGlib for ConstraintVflParserError {
3834 type GlibType = ffi::GtkConstraintVflParserError;
3835
3836 #[inline]
3837 fn into_glib(self) -> ffi::GtkConstraintVflParserError {
3838 match self {
3839 Self::InvalidSymbol => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL,
3840 Self::InvalidAttribute => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE,
3841 Self::InvalidView => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW,
3842 Self::InvalidMetric => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC,
3843 Self::InvalidPriority => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY,
3844 Self::InvalidRelation => ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION,
3845 Self::__Unknown(value) => value,
3846 }
3847 }
3848}
3849
3850#[doc(hidden)]
3851impl FromGlib<ffi::GtkConstraintVflParserError> for ConstraintVflParserError {
3852 #[inline]
3853 unsafe fn from_glib(value: ffi::GtkConstraintVflParserError) -> Self {
3854 skip_assert_initialized!();
3855
3856 match value {
3857 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL => Self::InvalidSymbol,
3858 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
3859 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW => Self::InvalidView,
3860 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC => Self::InvalidMetric,
3861 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY => Self::InvalidPriority,
3862 ffi::GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION => Self::InvalidRelation,
3863 value => Self::__Unknown(value),
3864 }
3865 }
3866}
3867
3868impl glib::error::ErrorDomain for ConstraintVflParserError {
3869 #[inline]
3870 fn domain() -> glib::Quark {
3871 skip_assert_initialized!();
3872
3873 unsafe { from_glib(ffi::gtk_constraint_vfl_parser_error_quark()) }
3874 }
3875
3876 #[inline]
3877 fn code(self) -> i32 {
3878 self.into_glib()
3879 }
3880
3881 #[inline]
3882 #[allow(clippy::match_single_binding)]
3883 fn from(code: i32) -> Option<Self> {
3884 skip_assert_initialized!();
3885 match unsafe { from_glib(code) } {
3886 value => Some(value),
3887 }
3888 }
3889}
3890
3891impl StaticType for ConstraintVflParserError {
3892 #[inline]
3893 #[doc(alias = "gtk_constraint_vfl_parser_error_get_type")]
3894 fn static_type() -> glib::Type {
3895 unsafe { from_glib(ffi::gtk_constraint_vfl_parser_error_get_type()) }
3896 }
3897}
3898
3899impl glib::HasParamSpec for ConstraintVflParserError {
3900 type ParamSpec = glib::ParamSpecEnum;
3901 type SetValue = Self;
3902 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
3903
3904 fn param_spec_builder() -> Self::BuilderFn {
3905 Self::ParamSpec::builder_with_default
3906 }
3907}
3908
3909impl glib::value::ValueType for ConstraintVflParserError {
3910 type Type = Self;
3911}
3912
3913unsafe impl<'a> glib::value::FromValue<'a> for ConstraintVflParserError {
3914 type Checker = glib::value::GenericValueTypeChecker<Self>;
3915
3916 #[inline]
3917 unsafe fn from_value(value: &'a glib::Value) -> Self {
3918 skip_assert_initialized!();
3919 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
3920 }
3921}
3922
3923impl ToValue for ConstraintVflParserError {
3924 #[inline]
3925 fn to_value(&self) -> glib::Value {
3926 let mut value = glib::Value::for_value_type::<Self>();
3927 unsafe {
3928 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
3929 }
3930 value
3931 }
3932
3933 #[inline]
3934 fn value_type(&self) -> glib::Type {
3935 Self::static_type()
3936 }
3937}
3938
3939impl From<ConstraintVflParserError> for glib::Value {
3940 #[inline]
3941 fn from(v: ConstraintVflParserError) -> Self {
3942 skip_assert_initialized!();
3943 ToValue::to_value(&v)
3944 }
3945}
3946
3947#[cfg(feature = "v4_8")]
3949#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
3950#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
3951#[non_exhaustive]
3952#[doc(alias = "GtkContentFit")]
3953pub enum ContentFit {
3954 #[doc(alias = "GTK_CONTENT_FIT_FILL")]
3959 Fill,
3960 #[doc(alias = "GTK_CONTENT_FIT_CONTAIN")]
3965 Contain,
3966 #[doc(alias = "GTK_CONTENT_FIT_COVER")]
3971 Cover,
3972 #[doc(alias = "GTK_CONTENT_FIT_SCALE_DOWN")]
3975 ScaleDown,
3976 #[doc(hidden)]
3977 __Unknown(i32),
3978}
3979
3980#[cfg(feature = "v4_8")]
3981#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
3982#[doc(hidden)]
3983impl IntoGlib for ContentFit {
3984 type GlibType = ffi::GtkContentFit;
3985
3986 #[inline]
3987 fn into_glib(self) -> ffi::GtkContentFit {
3988 match self {
3989 Self::Fill => ffi::GTK_CONTENT_FIT_FILL,
3990 Self::Contain => ffi::GTK_CONTENT_FIT_CONTAIN,
3991 Self::Cover => ffi::GTK_CONTENT_FIT_COVER,
3992 Self::ScaleDown => ffi::GTK_CONTENT_FIT_SCALE_DOWN,
3993 Self::__Unknown(value) => value,
3994 }
3995 }
3996}
3997
3998#[cfg(feature = "v4_8")]
3999#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4000#[doc(hidden)]
4001impl FromGlib<ffi::GtkContentFit> for ContentFit {
4002 #[inline]
4003 unsafe fn from_glib(value: ffi::GtkContentFit) -> Self {
4004 skip_assert_initialized!();
4005
4006 match value {
4007 ffi::GTK_CONTENT_FIT_FILL => Self::Fill,
4008 ffi::GTK_CONTENT_FIT_CONTAIN => Self::Contain,
4009 ffi::GTK_CONTENT_FIT_COVER => Self::Cover,
4010 ffi::GTK_CONTENT_FIT_SCALE_DOWN => Self::ScaleDown,
4011 value => Self::__Unknown(value),
4012 }
4013 }
4014}
4015
4016#[cfg(feature = "v4_8")]
4017#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4018impl StaticType for ContentFit {
4019 #[inline]
4020 #[doc(alias = "gtk_content_fit_get_type")]
4021 fn static_type() -> glib::Type {
4022 unsafe { from_glib(ffi::gtk_content_fit_get_type()) }
4023 }
4024}
4025
4026#[cfg(feature = "v4_8")]
4027#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4028impl glib::HasParamSpec for ContentFit {
4029 type ParamSpec = glib::ParamSpecEnum;
4030 type SetValue = Self;
4031 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4032
4033 fn param_spec_builder() -> Self::BuilderFn {
4034 Self::ParamSpec::builder_with_default
4035 }
4036}
4037
4038#[cfg(feature = "v4_8")]
4039#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4040impl glib::value::ValueType for ContentFit {
4041 type Type = Self;
4042}
4043
4044#[cfg(feature = "v4_8")]
4045#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4046unsafe impl<'a> glib::value::FromValue<'a> for ContentFit {
4047 type Checker = glib::value::GenericValueTypeChecker<Self>;
4048
4049 #[inline]
4050 unsafe fn from_value(value: &'a glib::Value) -> Self {
4051 skip_assert_initialized!();
4052 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4053 }
4054}
4055
4056#[cfg(feature = "v4_8")]
4057#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4058impl ToValue for ContentFit {
4059 #[inline]
4060 fn to_value(&self) -> glib::Value {
4061 let mut value = glib::Value::for_value_type::<Self>();
4062 unsafe {
4063 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4064 }
4065 value
4066 }
4067
4068 #[inline]
4069 fn value_type(&self) -> glib::Type {
4070 Self::static_type()
4071 }
4072}
4073
4074#[cfg(feature = "v4_8")]
4075#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
4076impl From<ContentFit> for glib::Value {
4077 #[inline]
4078 fn from(v: ContentFit) -> Self {
4079 skip_assert_initialized!();
4080 ToValue::to_value(&v)
4081 }
4082}
4083
4084#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4089#[non_exhaustive]
4090#[doc(alias = "GtkCornerType")]
4091pub enum CornerType {
4092 #[doc(alias = "GTK_CORNER_TOP_LEFT")]
4095 TopLeft,
4096 #[doc(alias = "GTK_CORNER_BOTTOM_LEFT")]
4099 BottomLeft,
4100 #[doc(alias = "GTK_CORNER_TOP_RIGHT")]
4103 TopRight,
4104 #[doc(alias = "GTK_CORNER_BOTTOM_RIGHT")]
4107 BottomRight,
4108 #[doc(hidden)]
4109 __Unknown(i32),
4110}
4111
4112#[doc(hidden)]
4113impl IntoGlib for CornerType {
4114 type GlibType = ffi::GtkCornerType;
4115
4116 #[inline]
4117 fn into_glib(self) -> ffi::GtkCornerType {
4118 match self {
4119 Self::TopLeft => ffi::GTK_CORNER_TOP_LEFT,
4120 Self::BottomLeft => ffi::GTK_CORNER_BOTTOM_LEFT,
4121 Self::TopRight => ffi::GTK_CORNER_TOP_RIGHT,
4122 Self::BottomRight => ffi::GTK_CORNER_BOTTOM_RIGHT,
4123 Self::__Unknown(value) => value,
4124 }
4125 }
4126}
4127
4128#[doc(hidden)]
4129impl FromGlib<ffi::GtkCornerType> for CornerType {
4130 #[inline]
4131 unsafe fn from_glib(value: ffi::GtkCornerType) -> Self {
4132 skip_assert_initialized!();
4133
4134 match value {
4135 ffi::GTK_CORNER_TOP_LEFT => Self::TopLeft,
4136 ffi::GTK_CORNER_BOTTOM_LEFT => Self::BottomLeft,
4137 ffi::GTK_CORNER_TOP_RIGHT => Self::TopRight,
4138 ffi::GTK_CORNER_BOTTOM_RIGHT => Self::BottomRight,
4139 value => Self::__Unknown(value),
4140 }
4141 }
4142}
4143
4144impl StaticType for CornerType {
4145 #[inline]
4146 #[doc(alias = "gtk_corner_type_get_type")]
4147 fn static_type() -> glib::Type {
4148 unsafe { from_glib(ffi::gtk_corner_type_get_type()) }
4149 }
4150}
4151
4152impl glib::HasParamSpec for CornerType {
4153 type ParamSpec = glib::ParamSpecEnum;
4154 type SetValue = Self;
4155 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4156
4157 fn param_spec_builder() -> Self::BuilderFn {
4158 Self::ParamSpec::builder_with_default
4159 }
4160}
4161
4162impl glib::value::ValueType for CornerType {
4163 type Type = Self;
4164}
4165
4166unsafe impl<'a> glib::value::FromValue<'a> for CornerType {
4167 type Checker = glib::value::GenericValueTypeChecker<Self>;
4168
4169 #[inline]
4170 unsafe fn from_value(value: &'a glib::Value) -> Self {
4171 skip_assert_initialized!();
4172 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4173 }
4174}
4175
4176impl ToValue for CornerType {
4177 #[inline]
4178 fn to_value(&self) -> glib::Value {
4179 let mut value = glib::Value::for_value_type::<Self>();
4180 unsafe {
4181 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4182 }
4183 value
4184 }
4185
4186 #[inline]
4187 fn value_type(&self) -> glib::Type {
4188 Self::static_type()
4189 }
4190}
4191
4192impl From<CornerType> for glib::Value {
4193 #[inline]
4194 fn from(v: CornerType) -> Self {
4195 skip_assert_initialized!();
4196 ToValue::to_value(&v)
4197 }
4198}
4199
4200#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4205#[non_exhaustive]
4206#[doc(alias = "GtkCssParserError")]
4207pub enum CssParserError {
4208 #[doc(alias = "GTK_CSS_PARSER_ERROR_FAILED")]
4210 Failed,
4211 #[doc(alias = "GTK_CSS_PARSER_ERROR_SYNTAX")]
4213 Syntax,
4214 #[doc(alias = "GTK_CSS_PARSER_ERROR_IMPORT")]
4216 Import,
4217 #[doc(alias = "GTK_CSS_PARSER_ERROR_NAME")]
4219 Name,
4220 #[doc(alias = "GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE")]
4222 UnknownValue,
4223 #[doc(hidden)]
4224 __Unknown(i32),
4225}
4226
4227#[doc(hidden)]
4228impl IntoGlib for CssParserError {
4229 type GlibType = ffi::GtkCssParserError;
4230
4231 #[inline]
4232 fn into_glib(self) -> ffi::GtkCssParserError {
4233 match self {
4234 Self::Failed => ffi::GTK_CSS_PARSER_ERROR_FAILED,
4235 Self::Syntax => ffi::GTK_CSS_PARSER_ERROR_SYNTAX,
4236 Self::Import => ffi::GTK_CSS_PARSER_ERROR_IMPORT,
4237 Self::Name => ffi::GTK_CSS_PARSER_ERROR_NAME,
4238 Self::UnknownValue => ffi::GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE,
4239 Self::__Unknown(value) => value,
4240 }
4241 }
4242}
4243
4244#[doc(hidden)]
4245impl FromGlib<ffi::GtkCssParserError> for CssParserError {
4246 #[inline]
4247 unsafe fn from_glib(value: ffi::GtkCssParserError) -> Self {
4248 skip_assert_initialized!();
4249
4250 match value {
4251 ffi::GTK_CSS_PARSER_ERROR_FAILED => Self::Failed,
4252 ffi::GTK_CSS_PARSER_ERROR_SYNTAX => Self::Syntax,
4253 ffi::GTK_CSS_PARSER_ERROR_IMPORT => Self::Import,
4254 ffi::GTK_CSS_PARSER_ERROR_NAME => Self::Name,
4255 ffi::GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE => Self::UnknownValue,
4256 value => Self::__Unknown(value),
4257 }
4258 }
4259}
4260
4261impl glib::error::ErrorDomain for CssParserError {
4262 #[inline]
4263 fn domain() -> glib::Quark {
4264 skip_assert_initialized!();
4265
4266 unsafe { from_glib(ffi::gtk_css_parser_error_quark()) }
4267 }
4268
4269 #[inline]
4270 fn code(self) -> i32 {
4271 self.into_glib()
4272 }
4273
4274 #[inline]
4275 #[allow(clippy::match_single_binding)]
4276 fn from(code: i32) -> Option<Self> {
4277 skip_assert_initialized!();
4278 match unsafe { from_glib(code) } {
4279 Self::__Unknown(_) => Some(Self::Failed),
4280 value => Some(value),
4281 }
4282 }
4283}
4284
4285#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4290#[non_exhaustive]
4291#[doc(alias = "GtkCssParserWarning")]
4292pub enum CssParserWarning {
4293 #[doc(alias = "GTK_CSS_PARSER_WARNING_DEPRECATED")]
4296 Deprecated,
4297 #[doc(alias = "GTK_CSS_PARSER_WARNING_SYNTAX")]
4300 Syntax,
4301 #[doc(alias = "GTK_CSS_PARSER_WARNING_UNIMPLEMENTED")]
4303 Unimplemented,
4304 #[doc(hidden)]
4305 __Unknown(i32),
4306}
4307
4308#[doc(hidden)]
4309impl IntoGlib for CssParserWarning {
4310 type GlibType = ffi::GtkCssParserWarning;
4311
4312 #[inline]
4313 fn into_glib(self) -> ffi::GtkCssParserWarning {
4314 match self {
4315 Self::Deprecated => ffi::GTK_CSS_PARSER_WARNING_DEPRECATED,
4316 Self::Syntax => ffi::GTK_CSS_PARSER_WARNING_SYNTAX,
4317 Self::Unimplemented => ffi::GTK_CSS_PARSER_WARNING_UNIMPLEMENTED,
4318 Self::__Unknown(value) => value,
4319 }
4320 }
4321}
4322
4323#[doc(hidden)]
4324impl FromGlib<ffi::GtkCssParserWarning> for CssParserWarning {
4325 #[inline]
4326 unsafe fn from_glib(value: ffi::GtkCssParserWarning) -> Self {
4327 skip_assert_initialized!();
4328
4329 match value {
4330 ffi::GTK_CSS_PARSER_WARNING_DEPRECATED => Self::Deprecated,
4331 ffi::GTK_CSS_PARSER_WARNING_SYNTAX => Self::Syntax,
4332 ffi::GTK_CSS_PARSER_WARNING_UNIMPLEMENTED => Self::Unimplemented,
4333 value => Self::__Unknown(value),
4334 }
4335 }
4336}
4337
4338#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4340#[non_exhaustive]
4341#[doc(alias = "GtkDeleteType")]
4342pub enum DeleteType {
4343 #[doc(alias = "GTK_DELETE_CHARS")]
4345 Chars,
4346 #[doc(alias = "GTK_DELETE_WORD_ENDS")]
4349 WordEnds,
4350 #[doc(alias = "GTK_DELETE_WORDS")]
4352 Words,
4353 #[doc(alias = "GTK_DELETE_DISPLAY_LINES")]
4358 DisplayLines,
4359 #[doc(alias = "GTK_DELETE_DISPLAY_LINE_ENDS")]
4362 DisplayLineEnds,
4363 #[doc(alias = "GTK_DELETE_PARAGRAPH_ENDS")]
4366 ParagraphEnds,
4367 #[doc(alias = "GTK_DELETE_PARAGRAPHS")]
4369 Paragraphs,
4370 #[doc(alias = "GTK_DELETE_WHITESPACE")]
4372 Whitespace,
4373 #[doc(hidden)]
4374 __Unknown(i32),
4375}
4376
4377#[doc(hidden)]
4378impl IntoGlib for DeleteType {
4379 type GlibType = ffi::GtkDeleteType;
4380
4381 #[inline]
4382 fn into_glib(self) -> ffi::GtkDeleteType {
4383 match self {
4384 Self::Chars => ffi::GTK_DELETE_CHARS,
4385 Self::WordEnds => ffi::GTK_DELETE_WORD_ENDS,
4386 Self::Words => ffi::GTK_DELETE_WORDS,
4387 Self::DisplayLines => ffi::GTK_DELETE_DISPLAY_LINES,
4388 Self::DisplayLineEnds => ffi::GTK_DELETE_DISPLAY_LINE_ENDS,
4389 Self::ParagraphEnds => ffi::GTK_DELETE_PARAGRAPH_ENDS,
4390 Self::Paragraphs => ffi::GTK_DELETE_PARAGRAPHS,
4391 Self::Whitespace => ffi::GTK_DELETE_WHITESPACE,
4392 Self::__Unknown(value) => value,
4393 }
4394 }
4395}
4396
4397#[doc(hidden)]
4398impl FromGlib<ffi::GtkDeleteType> for DeleteType {
4399 #[inline]
4400 unsafe fn from_glib(value: ffi::GtkDeleteType) -> Self {
4401 skip_assert_initialized!();
4402
4403 match value {
4404 ffi::GTK_DELETE_CHARS => Self::Chars,
4405 ffi::GTK_DELETE_WORD_ENDS => Self::WordEnds,
4406 ffi::GTK_DELETE_WORDS => Self::Words,
4407 ffi::GTK_DELETE_DISPLAY_LINES => Self::DisplayLines,
4408 ffi::GTK_DELETE_DISPLAY_LINE_ENDS => Self::DisplayLineEnds,
4409 ffi::GTK_DELETE_PARAGRAPH_ENDS => Self::ParagraphEnds,
4410 ffi::GTK_DELETE_PARAGRAPHS => Self::Paragraphs,
4411 ffi::GTK_DELETE_WHITESPACE => Self::Whitespace,
4412 value => Self::__Unknown(value),
4413 }
4414 }
4415}
4416
4417impl StaticType for DeleteType {
4418 #[inline]
4419 #[doc(alias = "gtk_delete_type_get_type")]
4420 fn static_type() -> glib::Type {
4421 unsafe { from_glib(ffi::gtk_delete_type_get_type()) }
4422 }
4423}
4424
4425impl glib::HasParamSpec for DeleteType {
4426 type ParamSpec = glib::ParamSpecEnum;
4427 type SetValue = Self;
4428 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4429
4430 fn param_spec_builder() -> Self::BuilderFn {
4431 Self::ParamSpec::builder_with_default
4432 }
4433}
4434
4435impl glib::value::ValueType for DeleteType {
4436 type Type = Self;
4437}
4438
4439unsafe impl<'a> glib::value::FromValue<'a> for DeleteType {
4440 type Checker = glib::value::GenericValueTypeChecker<Self>;
4441
4442 #[inline]
4443 unsafe fn from_value(value: &'a glib::Value) -> Self {
4444 skip_assert_initialized!();
4445 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4446 }
4447}
4448
4449impl ToValue for DeleteType {
4450 #[inline]
4451 fn to_value(&self) -> glib::Value {
4452 let mut value = glib::Value::for_value_type::<Self>();
4453 unsafe {
4454 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4455 }
4456 value
4457 }
4458
4459 #[inline]
4460 fn value_type(&self) -> glib::Type {
4461 Self::static_type()
4462 }
4463}
4464
4465impl From<DeleteType> for glib::Value {
4466 #[inline]
4467 fn from(v: DeleteType) -> Self {
4468 skip_assert_initialized!();
4469 ToValue::to_value(&v)
4470 }
4471}
4472
4473#[cfg(feature = "v4_10")]
4476#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4477#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4478#[non_exhaustive]
4479#[doc(alias = "GtkDialogError")]
4480pub enum DialogError {
4481 #[doc(alias = "GTK_DIALOG_ERROR_FAILED")]
4484 Failed,
4485 #[doc(alias = "GTK_DIALOG_ERROR_CANCELLED")]
4488 Cancelled,
4489 #[doc(alias = "GTK_DIALOG_ERROR_DISMISSED")]
4492 Dismissed,
4493 #[doc(hidden)]
4494 __Unknown(i32),
4495}
4496
4497#[cfg(feature = "v4_10")]
4498#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4499#[doc(hidden)]
4500impl IntoGlib for DialogError {
4501 type GlibType = ffi::GtkDialogError;
4502
4503 #[inline]
4504 fn into_glib(self) -> ffi::GtkDialogError {
4505 match self {
4506 Self::Failed => ffi::GTK_DIALOG_ERROR_FAILED,
4507 Self::Cancelled => ffi::GTK_DIALOG_ERROR_CANCELLED,
4508 Self::Dismissed => ffi::GTK_DIALOG_ERROR_DISMISSED,
4509 Self::__Unknown(value) => value,
4510 }
4511 }
4512}
4513
4514#[cfg(feature = "v4_10")]
4515#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4516#[doc(hidden)]
4517impl FromGlib<ffi::GtkDialogError> for DialogError {
4518 #[inline]
4519 unsafe fn from_glib(value: ffi::GtkDialogError) -> Self {
4520 skip_assert_initialized!();
4521
4522 match value {
4523 ffi::GTK_DIALOG_ERROR_FAILED => Self::Failed,
4524 ffi::GTK_DIALOG_ERROR_CANCELLED => Self::Cancelled,
4525 ffi::GTK_DIALOG_ERROR_DISMISSED => Self::Dismissed,
4526 value => Self::__Unknown(value),
4527 }
4528 }
4529}
4530
4531#[cfg(feature = "v4_10")]
4532#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4533impl glib::error::ErrorDomain for DialogError {
4534 #[inline]
4535 fn domain() -> glib::Quark {
4536 skip_assert_initialized!();
4537
4538 unsafe { from_glib(ffi::gtk_dialog_error_quark()) }
4539 }
4540
4541 #[inline]
4542 fn code(self) -> i32 {
4543 self.into_glib()
4544 }
4545
4546 #[inline]
4547 #[allow(clippy::match_single_binding)]
4548 fn from(code: i32) -> Option<Self> {
4549 skip_assert_initialized!();
4550 match unsafe { from_glib(code) } {
4551 Self::__Unknown(_) => Some(Self::Failed),
4552 value => Some(value),
4553 }
4554 }
4555}
4556
4557#[cfg(feature = "v4_10")]
4558#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4559impl StaticType for DialogError {
4560 #[inline]
4561 #[doc(alias = "gtk_dialog_error_get_type")]
4562 fn static_type() -> glib::Type {
4563 unsafe { from_glib(ffi::gtk_dialog_error_get_type()) }
4564 }
4565}
4566
4567#[cfg(feature = "v4_10")]
4568#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4569impl glib::HasParamSpec for DialogError {
4570 type ParamSpec = glib::ParamSpecEnum;
4571 type SetValue = Self;
4572 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4573
4574 fn param_spec_builder() -> Self::BuilderFn {
4575 Self::ParamSpec::builder_with_default
4576 }
4577}
4578
4579#[cfg(feature = "v4_10")]
4580#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4581impl glib::value::ValueType for DialogError {
4582 type Type = Self;
4583}
4584
4585#[cfg(feature = "v4_10")]
4586#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4587unsafe impl<'a> glib::value::FromValue<'a> for DialogError {
4588 type Checker = glib::value::GenericValueTypeChecker<Self>;
4589
4590 #[inline]
4591 unsafe fn from_value(value: &'a glib::Value) -> Self {
4592 skip_assert_initialized!();
4593 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4594 }
4595}
4596
4597#[cfg(feature = "v4_10")]
4598#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4599impl ToValue for DialogError {
4600 #[inline]
4601 fn to_value(&self) -> glib::Value {
4602 let mut value = glib::Value::for_value_type::<Self>();
4603 unsafe {
4604 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4605 }
4606 value
4607 }
4608
4609 #[inline]
4610 fn value_type(&self) -> glib::Type {
4611 Self::static_type()
4612 }
4613}
4614
4615#[cfg(feature = "v4_10")]
4616#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
4617impl From<DialogError> for glib::Value {
4618 #[inline]
4619 fn from(v: DialogError) -> Self {
4620 skip_assert_initialized!();
4621 ToValue::to_value(&v)
4622 }
4623}
4624
4625#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4627#[non_exhaustive]
4628#[doc(alias = "GtkDirectionType")]
4629pub enum DirectionType {
4630 #[doc(alias = "GTK_DIR_TAB_FORWARD")]
4632 TabForward,
4633 #[doc(alias = "GTK_DIR_TAB_BACKWARD")]
4635 TabBackward,
4636 #[doc(alias = "GTK_DIR_UP")]
4638 Up,
4639 #[doc(alias = "GTK_DIR_DOWN")]
4641 Down,
4642 #[doc(alias = "GTK_DIR_LEFT")]
4644 Left,
4645 #[doc(alias = "GTK_DIR_RIGHT")]
4647 Right,
4648 #[doc(hidden)]
4649 __Unknown(i32),
4650}
4651
4652#[doc(hidden)]
4653impl IntoGlib for DirectionType {
4654 type GlibType = ffi::GtkDirectionType;
4655
4656 #[inline]
4657 fn into_glib(self) -> ffi::GtkDirectionType {
4658 match self {
4659 Self::TabForward => ffi::GTK_DIR_TAB_FORWARD,
4660 Self::TabBackward => ffi::GTK_DIR_TAB_BACKWARD,
4661 Self::Up => ffi::GTK_DIR_UP,
4662 Self::Down => ffi::GTK_DIR_DOWN,
4663 Self::Left => ffi::GTK_DIR_LEFT,
4664 Self::Right => ffi::GTK_DIR_RIGHT,
4665 Self::__Unknown(value) => value,
4666 }
4667 }
4668}
4669
4670#[doc(hidden)]
4671impl FromGlib<ffi::GtkDirectionType> for DirectionType {
4672 #[inline]
4673 unsafe fn from_glib(value: ffi::GtkDirectionType) -> Self {
4674 skip_assert_initialized!();
4675
4676 match value {
4677 ffi::GTK_DIR_TAB_FORWARD => Self::TabForward,
4678 ffi::GTK_DIR_TAB_BACKWARD => Self::TabBackward,
4679 ffi::GTK_DIR_UP => Self::Up,
4680 ffi::GTK_DIR_DOWN => Self::Down,
4681 ffi::GTK_DIR_LEFT => Self::Left,
4682 ffi::GTK_DIR_RIGHT => Self::Right,
4683 value => Self::__Unknown(value),
4684 }
4685 }
4686}
4687
4688impl StaticType for DirectionType {
4689 #[inline]
4690 #[doc(alias = "gtk_direction_type_get_type")]
4691 fn static_type() -> glib::Type {
4692 unsafe { from_glib(ffi::gtk_direction_type_get_type()) }
4693 }
4694}
4695
4696impl glib::HasParamSpec for DirectionType {
4697 type ParamSpec = glib::ParamSpecEnum;
4698 type SetValue = Self;
4699 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4700
4701 fn param_spec_builder() -> Self::BuilderFn {
4702 Self::ParamSpec::builder_with_default
4703 }
4704}
4705
4706impl glib::value::ValueType for DirectionType {
4707 type Type = Self;
4708}
4709
4710unsafe impl<'a> glib::value::FromValue<'a> for DirectionType {
4711 type Checker = glib::value::GenericValueTypeChecker<Self>;
4712
4713 #[inline]
4714 unsafe fn from_value(value: &'a glib::Value) -> Self {
4715 skip_assert_initialized!();
4716 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4717 }
4718}
4719
4720impl ToValue for DirectionType {
4721 #[inline]
4722 fn to_value(&self) -> glib::Value {
4723 let mut value = glib::Value::for_value_type::<Self>();
4724 unsafe {
4725 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4726 }
4727 value
4728 }
4729
4730 #[inline]
4731 fn value_type(&self) -> glib::Type {
4732 Self::static_type()
4733 }
4734}
4735
4736impl From<DirectionType> for glib::Value {
4737 #[inline]
4738 fn from(v: DirectionType) -> Self {
4739 skip_assert_initialized!();
4740 ToValue::to_value(&v)
4741 }
4742}
4743
4744#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4749#[non_exhaustive]
4750#[doc(alias = "GtkEditableProperties")]
4751pub enum EditableProperties {
4752 #[doc(alias = "GTK_EDITABLE_PROP_TEXT")]
4754 PropText,
4755 #[doc(alias = "GTK_EDITABLE_PROP_CURSOR_POSITION")]
4757 PropCursorPosition,
4758 #[doc(alias = "GTK_EDITABLE_PROP_SELECTION_BOUND")]
4760 PropSelectionBound,
4761 #[doc(alias = "GTK_EDITABLE_PROP_EDITABLE")]
4763 PropEditable,
4764 #[doc(alias = "GTK_EDITABLE_PROP_WIDTH_CHARS")]
4766 PropWidthChars,
4767 #[doc(alias = "GTK_EDITABLE_PROP_MAX_WIDTH_CHARS")]
4769 PropMaxWidthChars,
4770 #[doc(alias = "GTK_EDITABLE_PROP_XALIGN")]
4772 PropXalign,
4773 #[doc(alias = "GTK_EDITABLE_PROP_ENABLE_UNDO")]
4775 PropEnableUndo,
4776 #[doc(alias = "GTK_EDITABLE_PROP_COMPLETE_TEXT")]
4778 PropCompleteText,
4779 #[doc(alias = "GTK_EDITABLE_NUM_PROPERTIES")]
4781 NumProperties,
4782 #[doc(hidden)]
4783 __Unknown(i32),
4784}
4785
4786#[doc(hidden)]
4787impl IntoGlib for EditableProperties {
4788 type GlibType = ffi::GtkEditableProperties;
4789
4790 #[inline]
4791 fn into_glib(self) -> ffi::GtkEditableProperties {
4792 match self {
4793 Self::PropText => ffi::GTK_EDITABLE_PROP_TEXT,
4794 Self::PropCursorPosition => ffi::GTK_EDITABLE_PROP_CURSOR_POSITION,
4795 Self::PropSelectionBound => ffi::GTK_EDITABLE_PROP_SELECTION_BOUND,
4796 Self::PropEditable => ffi::GTK_EDITABLE_PROP_EDITABLE,
4797 Self::PropWidthChars => ffi::GTK_EDITABLE_PROP_WIDTH_CHARS,
4798 Self::PropMaxWidthChars => ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS,
4799 Self::PropXalign => ffi::GTK_EDITABLE_PROP_XALIGN,
4800 Self::PropEnableUndo => ffi::GTK_EDITABLE_PROP_ENABLE_UNDO,
4801 Self::PropCompleteText => ffi::GTK_EDITABLE_PROP_COMPLETE_TEXT,
4802 Self::NumProperties => ffi::GTK_EDITABLE_NUM_PROPERTIES,
4803 Self::__Unknown(value) => value,
4804 }
4805 }
4806}
4807
4808#[doc(hidden)]
4809impl FromGlib<ffi::GtkEditableProperties> for EditableProperties {
4810 #[inline]
4811 unsafe fn from_glib(value: ffi::GtkEditableProperties) -> Self {
4812 skip_assert_initialized!();
4813
4814 match value {
4815 ffi::GTK_EDITABLE_PROP_TEXT => Self::PropText,
4816 ffi::GTK_EDITABLE_PROP_CURSOR_POSITION => Self::PropCursorPosition,
4817 ffi::GTK_EDITABLE_PROP_SELECTION_BOUND => Self::PropSelectionBound,
4818 ffi::GTK_EDITABLE_PROP_EDITABLE => Self::PropEditable,
4819 ffi::GTK_EDITABLE_PROP_WIDTH_CHARS => Self::PropWidthChars,
4820 ffi::GTK_EDITABLE_PROP_MAX_WIDTH_CHARS => Self::PropMaxWidthChars,
4821 ffi::GTK_EDITABLE_PROP_XALIGN => Self::PropXalign,
4822 ffi::GTK_EDITABLE_PROP_ENABLE_UNDO => Self::PropEnableUndo,
4823 ffi::GTK_EDITABLE_PROP_COMPLETE_TEXT => Self::PropCompleteText,
4824 ffi::GTK_EDITABLE_NUM_PROPERTIES => Self::NumProperties,
4825 value => Self::__Unknown(value),
4826 }
4827 }
4828}
4829
4830impl StaticType for EditableProperties {
4831 #[inline]
4832 #[doc(alias = "gtk_editable_properties_get_type")]
4833 fn static_type() -> glib::Type {
4834 unsafe { from_glib(ffi::gtk_editable_properties_get_type()) }
4835 }
4836}
4837
4838impl glib::HasParamSpec for EditableProperties {
4839 type ParamSpec = glib::ParamSpecEnum;
4840 type SetValue = Self;
4841 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4842
4843 fn param_spec_builder() -> Self::BuilderFn {
4844 Self::ParamSpec::builder_with_default
4845 }
4846}
4847
4848impl glib::value::ValueType for EditableProperties {
4849 type Type = Self;
4850}
4851
4852unsafe impl<'a> glib::value::FromValue<'a> for EditableProperties {
4853 type Checker = glib::value::GenericValueTypeChecker<Self>;
4854
4855 #[inline]
4856 unsafe fn from_value(value: &'a glib::Value) -> Self {
4857 skip_assert_initialized!();
4858 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4859 }
4860}
4861
4862impl ToValue for EditableProperties {
4863 #[inline]
4864 fn to_value(&self) -> glib::Value {
4865 let mut value = glib::Value::for_value_type::<Self>();
4866 unsafe {
4867 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4868 }
4869 value
4870 }
4871
4872 #[inline]
4873 fn value_type(&self) -> glib::Type {
4874 Self::static_type()
4875 }
4876}
4877
4878impl From<EditableProperties> for glib::Value {
4879 #[inline]
4880 fn from(v: EditableProperties) -> Self {
4881 skip_assert_initialized!();
4882 ToValue::to_value(&v)
4883 }
4884}
4885
4886#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4888#[non_exhaustive]
4889#[doc(alias = "GtkEntryIconPosition")]
4890pub enum EntryIconPosition {
4891 #[doc(alias = "GTK_ENTRY_ICON_PRIMARY")]
4893 Primary,
4894 #[doc(alias = "GTK_ENTRY_ICON_SECONDARY")]
4896 Secondary,
4897 #[doc(hidden)]
4898 __Unknown(i32),
4899}
4900
4901#[doc(hidden)]
4902impl IntoGlib for EntryIconPosition {
4903 type GlibType = ffi::GtkEntryIconPosition;
4904
4905 #[inline]
4906 fn into_glib(self) -> ffi::GtkEntryIconPosition {
4907 match self {
4908 Self::Primary => ffi::GTK_ENTRY_ICON_PRIMARY,
4909 Self::Secondary => ffi::GTK_ENTRY_ICON_SECONDARY,
4910 Self::__Unknown(value) => value,
4911 }
4912 }
4913}
4914
4915#[doc(hidden)]
4916impl FromGlib<ffi::GtkEntryIconPosition> for EntryIconPosition {
4917 #[inline]
4918 unsafe fn from_glib(value: ffi::GtkEntryIconPosition) -> Self {
4919 skip_assert_initialized!();
4920
4921 match value {
4922 ffi::GTK_ENTRY_ICON_PRIMARY => Self::Primary,
4923 ffi::GTK_ENTRY_ICON_SECONDARY => Self::Secondary,
4924 value => Self::__Unknown(value),
4925 }
4926 }
4927}
4928
4929impl StaticType for EntryIconPosition {
4930 #[inline]
4931 #[doc(alias = "gtk_entry_icon_position_get_type")]
4932 fn static_type() -> glib::Type {
4933 unsafe { from_glib(ffi::gtk_entry_icon_position_get_type()) }
4934 }
4935}
4936
4937impl glib::HasParamSpec for EntryIconPosition {
4938 type ParamSpec = glib::ParamSpecEnum;
4939 type SetValue = Self;
4940 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
4941
4942 fn param_spec_builder() -> Self::BuilderFn {
4943 Self::ParamSpec::builder_with_default
4944 }
4945}
4946
4947impl glib::value::ValueType for EntryIconPosition {
4948 type Type = Self;
4949}
4950
4951unsafe impl<'a> glib::value::FromValue<'a> for EntryIconPosition {
4952 type Checker = glib::value::GenericValueTypeChecker<Self>;
4953
4954 #[inline]
4955 unsafe fn from_value(value: &'a glib::Value) -> Self {
4956 skip_assert_initialized!();
4957 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
4958 }
4959}
4960
4961impl ToValue for EntryIconPosition {
4962 #[inline]
4963 fn to_value(&self) -> glib::Value {
4964 let mut value = glib::Value::for_value_type::<Self>();
4965 unsafe {
4966 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
4967 }
4968 value
4969 }
4970
4971 #[inline]
4972 fn value_type(&self) -> glib::Type {
4973 Self::static_type()
4974 }
4975}
4976
4977impl From<EntryIconPosition> for glib::Value {
4978 #[inline]
4979 fn from(v: EntryIconPosition) -> Self {
4980 skip_assert_initialized!();
4981 ToValue::to_value(&v)
4982 }
4983}
4984
4985#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
4987#[non_exhaustive]
4988#[doc(alias = "GtkEventSequenceState")]
4989pub enum EventSequenceState {
4990 #[doc(alias = "GTK_EVENT_SEQUENCE_NONE")]
4992 None,
4993 #[doc(alias = "GTK_EVENT_SEQUENCE_CLAIMED")]
4995 Claimed,
4996 #[doc(alias = "GTK_EVENT_SEQUENCE_DENIED")]
4998 Denied,
4999 #[doc(hidden)]
5000 __Unknown(i32),
5001}
5002
5003#[doc(hidden)]
5004impl IntoGlib for EventSequenceState {
5005 type GlibType = ffi::GtkEventSequenceState;
5006
5007 #[inline]
5008 fn into_glib(self) -> ffi::GtkEventSequenceState {
5009 match self {
5010 Self::None => ffi::GTK_EVENT_SEQUENCE_NONE,
5011 Self::Claimed => ffi::GTK_EVENT_SEQUENCE_CLAIMED,
5012 Self::Denied => ffi::GTK_EVENT_SEQUENCE_DENIED,
5013 Self::__Unknown(value) => value,
5014 }
5015 }
5016}
5017
5018#[doc(hidden)]
5019impl FromGlib<ffi::GtkEventSequenceState> for EventSequenceState {
5020 #[inline]
5021 unsafe fn from_glib(value: ffi::GtkEventSequenceState) -> Self {
5022 skip_assert_initialized!();
5023
5024 match value {
5025 ffi::GTK_EVENT_SEQUENCE_NONE => Self::None,
5026 ffi::GTK_EVENT_SEQUENCE_CLAIMED => Self::Claimed,
5027 ffi::GTK_EVENT_SEQUENCE_DENIED => Self::Denied,
5028 value => Self::__Unknown(value),
5029 }
5030 }
5031}
5032
5033impl StaticType for EventSequenceState {
5034 #[inline]
5035 #[doc(alias = "gtk_event_sequence_state_get_type")]
5036 fn static_type() -> glib::Type {
5037 unsafe { from_glib(ffi::gtk_event_sequence_state_get_type()) }
5038 }
5039}
5040
5041impl glib::HasParamSpec for EventSequenceState {
5042 type ParamSpec = glib::ParamSpecEnum;
5043 type SetValue = Self;
5044 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5045
5046 fn param_spec_builder() -> Self::BuilderFn {
5047 Self::ParamSpec::builder_with_default
5048 }
5049}
5050
5051impl glib::value::ValueType for EventSequenceState {
5052 type Type = Self;
5053}
5054
5055unsafe impl<'a> glib::value::FromValue<'a> for EventSequenceState {
5056 type Checker = glib::value::GenericValueTypeChecker<Self>;
5057
5058 #[inline]
5059 unsafe fn from_value(value: &'a glib::Value) -> Self {
5060 skip_assert_initialized!();
5061 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5062 }
5063}
5064
5065impl ToValue for EventSequenceState {
5066 #[inline]
5067 fn to_value(&self) -> glib::Value {
5068 let mut value = glib::Value::for_value_type::<Self>();
5069 unsafe {
5070 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5071 }
5072 value
5073 }
5074
5075 #[inline]
5076 fn value_type(&self) -> glib::Type {
5077 Self::static_type()
5078 }
5079}
5080
5081impl From<EventSequenceState> for glib::Value {
5082 #[inline]
5083 fn from(v: EventSequenceState) -> Self {
5084 skip_assert_initialized!();
5085 ToValue::to_value(&v)
5086 }
5087}
5088
5089#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5092#[non_exhaustive]
5093#[doc(alias = "GtkFileChooserAction")]
5094pub enum FileChooserAction {
5095 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_OPEN")]
5098 Open,
5099 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SAVE")]
5103 Save,
5104 #[doc(alias = "GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER")]
5108 SelectFolder,
5109 #[doc(hidden)]
5110 __Unknown(i32),
5111}
5112
5113#[doc(hidden)]
5114impl IntoGlib for FileChooserAction {
5115 type GlibType = ffi::GtkFileChooserAction;
5116
5117 #[inline]
5118 fn into_glib(self) -> ffi::GtkFileChooserAction {
5119 match self {
5120 Self::Open => ffi::GTK_FILE_CHOOSER_ACTION_OPEN,
5121 Self::Save => ffi::GTK_FILE_CHOOSER_ACTION_SAVE,
5122 Self::SelectFolder => ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
5123 Self::__Unknown(value) => value,
5124 }
5125 }
5126}
5127
5128#[doc(hidden)]
5129impl FromGlib<ffi::GtkFileChooserAction> for FileChooserAction {
5130 #[inline]
5131 unsafe fn from_glib(value: ffi::GtkFileChooserAction) -> Self {
5132 skip_assert_initialized!();
5133
5134 match value {
5135 ffi::GTK_FILE_CHOOSER_ACTION_OPEN => Self::Open,
5136 ffi::GTK_FILE_CHOOSER_ACTION_SAVE => Self::Save,
5137 ffi::GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER => Self::SelectFolder,
5138 value => Self::__Unknown(value),
5139 }
5140 }
5141}
5142
5143impl StaticType for FileChooserAction {
5144 #[inline]
5145 #[doc(alias = "gtk_file_chooser_action_get_type")]
5146 fn static_type() -> glib::Type {
5147 unsafe { from_glib(ffi::gtk_file_chooser_action_get_type()) }
5148 }
5149}
5150
5151impl glib::HasParamSpec for FileChooserAction {
5152 type ParamSpec = glib::ParamSpecEnum;
5153 type SetValue = Self;
5154 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5155
5156 fn param_spec_builder() -> Self::BuilderFn {
5157 Self::ParamSpec::builder_with_default
5158 }
5159}
5160
5161impl glib::value::ValueType for FileChooserAction {
5162 type Type = Self;
5163}
5164
5165unsafe impl<'a> glib::value::FromValue<'a> for FileChooserAction {
5166 type Checker = glib::value::GenericValueTypeChecker<Self>;
5167
5168 #[inline]
5169 unsafe fn from_value(value: &'a glib::Value) -> Self {
5170 skip_assert_initialized!();
5171 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5172 }
5173}
5174
5175impl ToValue for FileChooserAction {
5176 #[inline]
5177 fn to_value(&self) -> glib::Value {
5178 let mut value = glib::Value::for_value_type::<Self>();
5179 unsafe {
5180 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5181 }
5182 value
5183 }
5184
5185 #[inline]
5186 fn value_type(&self) -> glib::Type {
5187 Self::static_type()
5188 }
5189}
5190
5191impl From<FileChooserAction> for glib::Value {
5192 #[inline]
5193 fn from(v: FileChooserAction) -> Self {
5194 skip_assert_initialized!();
5195 ToValue::to_value(&v)
5196 }
5197}
5198
5199#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
5206#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5207#[non_exhaustive]
5208#[doc(alias = "GtkFileChooserError")]
5209pub enum FileChooserError {
5210 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_NONEXISTENT")]
5212 Nonexistent,
5213 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_BAD_FILENAME")]
5215 BadFilename,
5216 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS")]
5219 AlreadyExists,
5220 #[doc(alias = "GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME")]
5223 IncompleteHostname,
5224 #[doc(hidden)]
5225 __Unknown(i32),
5226}
5227
5228#[allow(deprecated)]
5229#[doc(hidden)]
5230impl IntoGlib for FileChooserError {
5231 type GlibType = ffi::GtkFileChooserError;
5232
5233 #[inline]
5234 fn into_glib(self) -> ffi::GtkFileChooserError {
5235 match self {
5236 Self::Nonexistent => ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT,
5237 Self::BadFilename => ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME,
5238 Self::AlreadyExists => ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS,
5239 Self::IncompleteHostname => ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME,
5240 Self::__Unknown(value) => value,
5241 }
5242 }
5243}
5244
5245#[allow(deprecated)]
5246#[doc(hidden)]
5247impl FromGlib<ffi::GtkFileChooserError> for FileChooserError {
5248 #[inline]
5249 unsafe fn from_glib(value: ffi::GtkFileChooserError) -> Self {
5250 skip_assert_initialized!();
5251
5252 match value {
5253 ffi::GTK_FILE_CHOOSER_ERROR_NONEXISTENT => Self::Nonexistent,
5254 ffi::GTK_FILE_CHOOSER_ERROR_BAD_FILENAME => Self::BadFilename,
5255 ffi::GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS => Self::AlreadyExists,
5256 ffi::GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME => Self::IncompleteHostname,
5257 value => Self::__Unknown(value),
5258 }
5259 }
5260}
5261
5262#[allow(deprecated)]
5263impl glib::error::ErrorDomain for FileChooserError {
5264 #[inline]
5265 fn domain() -> glib::Quark {
5266 skip_assert_initialized!();
5267
5268 unsafe { from_glib(ffi::gtk_file_chooser_error_quark()) }
5269 }
5270
5271 #[inline]
5272 fn code(self) -> i32 {
5273 self.into_glib()
5274 }
5275
5276 #[inline]
5277 #[allow(clippy::match_single_binding)]
5278 fn from(code: i32) -> Option<Self> {
5279 skip_assert_initialized!();
5280 match unsafe { from_glib(code) } {
5281 value => Some(value),
5282 }
5283 }
5284}
5285
5286#[allow(deprecated)]
5287impl StaticType for FileChooserError {
5288 #[inline]
5289 #[doc(alias = "gtk_file_chooser_error_get_type")]
5290 fn static_type() -> glib::Type {
5291 unsafe { from_glib(ffi::gtk_file_chooser_error_get_type()) }
5292 }
5293}
5294
5295#[allow(deprecated)]
5296impl glib::HasParamSpec for FileChooserError {
5297 type ParamSpec = glib::ParamSpecEnum;
5298 type SetValue = Self;
5299 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5300
5301 fn param_spec_builder() -> Self::BuilderFn {
5302 Self::ParamSpec::builder_with_default
5303 }
5304}
5305
5306#[allow(deprecated)]
5307impl glib::value::ValueType for FileChooserError {
5308 type Type = Self;
5309}
5310
5311#[allow(deprecated)]
5312unsafe impl<'a> glib::value::FromValue<'a> for FileChooserError {
5313 type Checker = glib::value::GenericValueTypeChecker<Self>;
5314
5315 #[inline]
5316 unsafe fn from_value(value: &'a glib::Value) -> Self {
5317 skip_assert_initialized!();
5318 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5319 }
5320}
5321
5322#[allow(deprecated)]
5323impl ToValue for FileChooserError {
5324 #[inline]
5325 fn to_value(&self) -> glib::Value {
5326 let mut value = glib::Value::for_value_type::<Self>();
5327 unsafe {
5328 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5329 }
5330 value
5331 }
5332
5333 #[inline]
5334 fn value_type(&self) -> glib::Type {
5335 Self::static_type()
5336 }
5337}
5338
5339#[allow(deprecated)]
5340impl From<FileChooserError> for glib::Value {
5341 #[inline]
5342 fn from(v: FileChooserError) -> Self {
5343 skip_assert_initialized!();
5344 ToValue::to_value(&v)
5345 }
5346}
5347
5348#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5357#[non_exhaustive]
5358#[doc(alias = "GtkFilterChange")]
5359pub enum FilterChange {
5360 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT")]
5363 Different,
5364 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT")]
5368 LessStrict,
5369 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT")]
5373 MoreStrict,
5374 #[cfg(feature = "v4_20")]
5379 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5380 #[doc(alias = "GTK_FILTER_CHANGE_DIFFERENT_REWATCH")]
5381 DifferentRewatch,
5382 #[cfg(feature = "v4_20")]
5387 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5388 #[doc(alias = "GTK_FILTER_CHANGE_LESS_STRICT_REWATCH")]
5389 LessStrictRewatch,
5390 #[cfg(feature = "v4_20")]
5395 #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
5396 #[doc(alias = "GTK_FILTER_CHANGE_MORE_STRICT_REWATCH")]
5397 MoreStrictRewatch,
5398 #[doc(hidden)]
5399 __Unknown(i32),
5400}
5401
5402#[doc(hidden)]
5403impl IntoGlib for FilterChange {
5404 type GlibType = ffi::GtkFilterChange;
5405
5406 #[inline]
5407 fn into_glib(self) -> ffi::GtkFilterChange {
5408 match self {
5409 Self::Different => ffi::GTK_FILTER_CHANGE_DIFFERENT,
5410 Self::LessStrict => ffi::GTK_FILTER_CHANGE_LESS_STRICT,
5411 Self::MoreStrict => ffi::GTK_FILTER_CHANGE_MORE_STRICT,
5412 #[cfg(feature = "v4_20")]
5413 Self::DifferentRewatch => ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH,
5414 #[cfg(feature = "v4_20")]
5415 Self::LessStrictRewatch => ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH,
5416 #[cfg(feature = "v4_20")]
5417 Self::MoreStrictRewatch => ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH,
5418 Self::__Unknown(value) => value,
5419 }
5420 }
5421}
5422
5423#[doc(hidden)]
5424impl FromGlib<ffi::GtkFilterChange> for FilterChange {
5425 #[inline]
5426 unsafe fn from_glib(value: ffi::GtkFilterChange) -> Self {
5427 skip_assert_initialized!();
5428
5429 match value {
5430 ffi::GTK_FILTER_CHANGE_DIFFERENT => Self::Different,
5431 ffi::GTK_FILTER_CHANGE_LESS_STRICT => Self::LessStrict,
5432 ffi::GTK_FILTER_CHANGE_MORE_STRICT => Self::MoreStrict,
5433 #[cfg(feature = "v4_20")]
5434 ffi::GTK_FILTER_CHANGE_DIFFERENT_REWATCH => Self::DifferentRewatch,
5435 #[cfg(feature = "v4_20")]
5436 ffi::GTK_FILTER_CHANGE_LESS_STRICT_REWATCH => Self::LessStrictRewatch,
5437 #[cfg(feature = "v4_20")]
5438 ffi::GTK_FILTER_CHANGE_MORE_STRICT_REWATCH => Self::MoreStrictRewatch,
5439 value => Self::__Unknown(value),
5440 }
5441 }
5442}
5443
5444impl StaticType for FilterChange {
5445 #[inline]
5446 #[doc(alias = "gtk_filter_change_get_type")]
5447 fn static_type() -> glib::Type {
5448 unsafe { from_glib(ffi::gtk_filter_change_get_type()) }
5449 }
5450}
5451
5452impl glib::HasParamSpec for FilterChange {
5453 type ParamSpec = glib::ParamSpecEnum;
5454 type SetValue = Self;
5455 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5456
5457 fn param_spec_builder() -> Self::BuilderFn {
5458 Self::ParamSpec::builder_with_default
5459 }
5460}
5461
5462impl glib::value::ValueType for FilterChange {
5463 type Type = Self;
5464}
5465
5466unsafe impl<'a> glib::value::FromValue<'a> for FilterChange {
5467 type Checker = glib::value::GenericValueTypeChecker<Self>;
5468
5469 #[inline]
5470 unsafe fn from_value(value: &'a glib::Value) -> Self {
5471 skip_assert_initialized!();
5472 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5473 }
5474}
5475
5476impl ToValue for FilterChange {
5477 #[inline]
5478 fn to_value(&self) -> glib::Value {
5479 let mut value = glib::Value::for_value_type::<Self>();
5480 unsafe {
5481 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5482 }
5483 value
5484 }
5485
5486 #[inline]
5487 fn value_type(&self) -> glib::Type {
5488 Self::static_type()
5489 }
5490}
5491
5492impl From<FilterChange> for glib::Value {
5493 #[inline]
5494 fn from(v: FilterChange) -> Self {
5495 skip_assert_initialized!();
5496 ToValue::to_value(&v)
5497 }
5498}
5499
5500#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5506#[non_exhaustive]
5507#[doc(alias = "GtkFilterMatch")]
5508pub enum FilterMatch {
5509 #[doc(alias = "GTK_FILTER_MATCH_SOME")]
5512 Some,
5513 #[doc(alias = "GTK_FILTER_MATCH_NONE")]
5516 None,
5517 #[doc(alias = "GTK_FILTER_MATCH_ALL")]
5520 All,
5521 #[doc(hidden)]
5522 __Unknown(i32),
5523}
5524
5525#[doc(hidden)]
5526impl IntoGlib for FilterMatch {
5527 type GlibType = ffi::GtkFilterMatch;
5528
5529 #[inline]
5530 fn into_glib(self) -> ffi::GtkFilterMatch {
5531 match self {
5532 Self::Some => ffi::GTK_FILTER_MATCH_SOME,
5533 Self::None => ffi::GTK_FILTER_MATCH_NONE,
5534 Self::All => ffi::GTK_FILTER_MATCH_ALL,
5535 Self::__Unknown(value) => value,
5536 }
5537 }
5538}
5539
5540#[doc(hidden)]
5541impl FromGlib<ffi::GtkFilterMatch> for FilterMatch {
5542 #[inline]
5543 unsafe fn from_glib(value: ffi::GtkFilterMatch) -> Self {
5544 skip_assert_initialized!();
5545
5546 match value {
5547 ffi::GTK_FILTER_MATCH_SOME => Self::Some,
5548 ffi::GTK_FILTER_MATCH_NONE => Self::None,
5549 ffi::GTK_FILTER_MATCH_ALL => Self::All,
5550 value => Self::__Unknown(value),
5551 }
5552 }
5553}
5554
5555impl StaticType for FilterMatch {
5556 #[inline]
5557 #[doc(alias = "gtk_filter_match_get_type")]
5558 fn static_type() -> glib::Type {
5559 unsafe { from_glib(ffi::gtk_filter_match_get_type()) }
5560 }
5561}
5562
5563impl glib::HasParamSpec for FilterMatch {
5564 type ParamSpec = glib::ParamSpecEnum;
5565 type SetValue = Self;
5566 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5567
5568 fn param_spec_builder() -> Self::BuilderFn {
5569 Self::ParamSpec::builder_with_default
5570 }
5571}
5572
5573impl glib::value::ValueType for FilterMatch {
5574 type Type = Self;
5575}
5576
5577unsafe impl<'a> glib::value::FromValue<'a> for FilterMatch {
5578 type Checker = glib::value::GenericValueTypeChecker<Self>;
5579
5580 #[inline]
5581 unsafe fn from_value(value: &'a glib::Value) -> Self {
5582 skip_assert_initialized!();
5583 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5584 }
5585}
5586
5587impl ToValue for FilterMatch {
5588 #[inline]
5589 fn to_value(&self) -> glib::Value {
5590 let mut value = glib::Value::for_value_type::<Self>();
5591 unsafe {
5592 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5593 }
5594 value
5595 }
5596
5597 #[inline]
5598 fn value_type(&self) -> glib::Type {
5599 Self::static_type()
5600 }
5601}
5602
5603impl From<FilterMatch> for glib::Value {
5604 #[inline]
5605 fn from(v: FilterMatch) -> Self {
5606 skip_assert_initialized!();
5607 ToValue::to_value(&v)
5608 }
5609}
5610
5611#[cfg(feature = "v4_10")]
5617#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5618#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5619#[non_exhaustive]
5620#[doc(alias = "GtkFontLevel")]
5621pub enum FontLevel {
5622 #[doc(alias = "GTK_FONT_LEVEL_FAMILY")]
5624 Family,
5625 #[doc(alias = "GTK_FONT_LEVEL_FACE")]
5627 Face,
5628 #[doc(alias = "GTK_FONT_LEVEL_FONT")]
5630 Font,
5631 #[doc(alias = "GTK_FONT_LEVEL_FEATURES")]
5633 Features,
5634 #[doc(hidden)]
5635 __Unknown(i32),
5636}
5637
5638#[cfg(feature = "v4_10")]
5639#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5640#[doc(hidden)]
5641impl IntoGlib for FontLevel {
5642 type GlibType = ffi::GtkFontLevel;
5643
5644 #[inline]
5645 fn into_glib(self) -> ffi::GtkFontLevel {
5646 match self {
5647 Self::Family => ffi::GTK_FONT_LEVEL_FAMILY,
5648 Self::Face => ffi::GTK_FONT_LEVEL_FACE,
5649 Self::Font => ffi::GTK_FONT_LEVEL_FONT,
5650 Self::Features => ffi::GTK_FONT_LEVEL_FEATURES,
5651 Self::__Unknown(value) => value,
5652 }
5653 }
5654}
5655
5656#[cfg(feature = "v4_10")]
5657#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5658#[doc(hidden)]
5659impl FromGlib<ffi::GtkFontLevel> for FontLevel {
5660 #[inline]
5661 unsafe fn from_glib(value: ffi::GtkFontLevel) -> Self {
5662 skip_assert_initialized!();
5663
5664 match value {
5665 ffi::GTK_FONT_LEVEL_FAMILY => Self::Family,
5666 ffi::GTK_FONT_LEVEL_FACE => Self::Face,
5667 ffi::GTK_FONT_LEVEL_FONT => Self::Font,
5668 ffi::GTK_FONT_LEVEL_FEATURES => Self::Features,
5669 value => Self::__Unknown(value),
5670 }
5671 }
5672}
5673
5674#[cfg(feature = "v4_10")]
5675#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5676impl StaticType for FontLevel {
5677 #[inline]
5678 #[doc(alias = "gtk_font_level_get_type")]
5679 fn static_type() -> glib::Type {
5680 unsafe { from_glib(ffi::gtk_font_level_get_type()) }
5681 }
5682}
5683
5684#[cfg(feature = "v4_10")]
5685#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5686impl glib::HasParamSpec for FontLevel {
5687 type ParamSpec = glib::ParamSpecEnum;
5688 type SetValue = Self;
5689 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5690
5691 fn param_spec_builder() -> Self::BuilderFn {
5692 Self::ParamSpec::builder_with_default
5693 }
5694}
5695
5696#[cfg(feature = "v4_10")]
5697#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5698impl glib::value::ValueType for FontLevel {
5699 type Type = Self;
5700}
5701
5702#[cfg(feature = "v4_10")]
5703#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5704unsafe impl<'a> glib::value::FromValue<'a> for FontLevel {
5705 type Checker = glib::value::GenericValueTypeChecker<Self>;
5706
5707 #[inline]
5708 unsafe fn from_value(value: &'a glib::Value) -> Self {
5709 skip_assert_initialized!();
5710 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5711 }
5712}
5713
5714#[cfg(feature = "v4_10")]
5715#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5716impl ToValue for FontLevel {
5717 #[inline]
5718 fn to_value(&self) -> glib::Value {
5719 let mut value = glib::Value::for_value_type::<Self>();
5720 unsafe {
5721 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5722 }
5723 value
5724 }
5725
5726 #[inline]
5727 fn value_type(&self) -> glib::Type {
5728 Self::static_type()
5729 }
5730}
5731
5732#[cfg(feature = "v4_10")]
5733#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
5734impl From<FontLevel> for glib::Value {
5735 #[inline]
5736 fn from(v: FontLevel) -> Self {
5737 skip_assert_initialized!();
5738 ToValue::to_value(&v)
5739 }
5740}
5741
5742#[cfg(feature = "v4_16")]
5745#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5746#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5747#[non_exhaustive]
5748#[doc(alias = "GtkFontRendering")]
5749pub enum FontRendering {
5750 #[doc(alias = "GTK_FONT_RENDERING_AUTOMATIC")]
5753 Automatic,
5754 #[doc(alias = "GTK_FONT_RENDERING_MANUAL")]
5757 Manual,
5758 #[doc(hidden)]
5759 __Unknown(i32),
5760}
5761
5762#[cfg(feature = "v4_16")]
5763#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5764#[doc(hidden)]
5765impl IntoGlib for FontRendering {
5766 type GlibType = ffi::GtkFontRendering;
5767
5768 #[inline]
5769 fn into_glib(self) -> ffi::GtkFontRendering {
5770 match self {
5771 Self::Automatic => ffi::GTK_FONT_RENDERING_AUTOMATIC,
5772 Self::Manual => ffi::GTK_FONT_RENDERING_MANUAL,
5773 Self::__Unknown(value) => value,
5774 }
5775 }
5776}
5777
5778#[cfg(feature = "v4_16")]
5779#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5780#[doc(hidden)]
5781impl FromGlib<ffi::GtkFontRendering> for FontRendering {
5782 #[inline]
5783 unsafe fn from_glib(value: ffi::GtkFontRendering) -> Self {
5784 skip_assert_initialized!();
5785
5786 match value {
5787 ffi::GTK_FONT_RENDERING_AUTOMATIC => Self::Automatic,
5788 ffi::GTK_FONT_RENDERING_MANUAL => Self::Manual,
5789 value => Self::__Unknown(value),
5790 }
5791 }
5792}
5793
5794#[cfg(feature = "v4_16")]
5795#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5796impl StaticType for FontRendering {
5797 #[inline]
5798 #[doc(alias = "gtk_font_rendering_get_type")]
5799 fn static_type() -> glib::Type {
5800 unsafe { from_glib(ffi::gtk_font_rendering_get_type()) }
5801 }
5802}
5803
5804#[cfg(feature = "v4_16")]
5805#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5806impl glib::HasParamSpec for FontRendering {
5807 type ParamSpec = glib::ParamSpecEnum;
5808 type SetValue = Self;
5809 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5810
5811 fn param_spec_builder() -> Self::BuilderFn {
5812 Self::ParamSpec::builder_with_default
5813 }
5814}
5815
5816#[cfg(feature = "v4_16")]
5817#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5818impl glib::value::ValueType for FontRendering {
5819 type Type = Self;
5820}
5821
5822#[cfg(feature = "v4_16")]
5823#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5824unsafe impl<'a> glib::value::FromValue<'a> for FontRendering {
5825 type Checker = glib::value::GenericValueTypeChecker<Self>;
5826
5827 #[inline]
5828 unsafe fn from_value(value: &'a glib::Value) -> Self {
5829 skip_assert_initialized!();
5830 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5831 }
5832}
5833
5834#[cfg(feature = "v4_16")]
5835#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5836impl ToValue for FontRendering {
5837 #[inline]
5838 fn to_value(&self) -> glib::Value {
5839 let mut value = glib::Value::for_value_type::<Self>();
5840 unsafe {
5841 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5842 }
5843 value
5844 }
5845
5846 #[inline]
5847 fn value_type(&self) -> glib::Type {
5848 Self::static_type()
5849 }
5850}
5851
5852#[cfg(feature = "v4_16")]
5853#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
5854impl From<FontRendering> for glib::Value {
5855 #[inline]
5856 fn from(v: FontRendering) -> Self {
5857 skip_assert_initialized!();
5858 ToValue::to_value(&v)
5859 }
5860}
5861
5862#[cfg(feature = "v4_14")]
5864#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5865#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5866#[non_exhaustive]
5867#[doc(alias = "GtkGraphicsOffloadEnabled")]
5868pub enum GraphicsOffloadEnabled {
5869 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_ENABLED")]
5871 Enabled,
5872 #[doc(alias = "GTK_GRAPHICS_OFFLOAD_DISABLED")]
5874 Disabled,
5875 #[doc(hidden)]
5876 __Unknown(i32),
5877}
5878
5879#[cfg(feature = "v4_14")]
5880#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5881#[doc(hidden)]
5882impl IntoGlib for GraphicsOffloadEnabled {
5883 type GlibType = ffi::GtkGraphicsOffloadEnabled;
5884
5885 #[inline]
5886 fn into_glib(self) -> ffi::GtkGraphicsOffloadEnabled {
5887 match self {
5888 Self::Enabled => ffi::GTK_GRAPHICS_OFFLOAD_ENABLED,
5889 Self::Disabled => ffi::GTK_GRAPHICS_OFFLOAD_DISABLED,
5890 Self::__Unknown(value) => value,
5891 }
5892 }
5893}
5894
5895#[cfg(feature = "v4_14")]
5896#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5897#[doc(hidden)]
5898impl FromGlib<ffi::GtkGraphicsOffloadEnabled> for GraphicsOffloadEnabled {
5899 #[inline]
5900 unsafe fn from_glib(value: ffi::GtkGraphicsOffloadEnabled) -> Self {
5901 skip_assert_initialized!();
5902
5903 match value {
5904 ffi::GTK_GRAPHICS_OFFLOAD_ENABLED => Self::Enabled,
5905 ffi::GTK_GRAPHICS_OFFLOAD_DISABLED => Self::Disabled,
5906 value => Self::__Unknown(value),
5907 }
5908 }
5909}
5910
5911#[cfg(feature = "v4_14")]
5912#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5913impl StaticType for GraphicsOffloadEnabled {
5914 #[inline]
5915 #[doc(alias = "gtk_graphics_offload_enabled_get_type")]
5916 fn static_type() -> glib::Type {
5917 unsafe { from_glib(ffi::gtk_graphics_offload_enabled_get_type()) }
5918 }
5919}
5920
5921#[cfg(feature = "v4_14")]
5922#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5923impl glib::HasParamSpec for GraphicsOffloadEnabled {
5924 type ParamSpec = glib::ParamSpecEnum;
5925 type SetValue = Self;
5926 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
5927
5928 fn param_spec_builder() -> Self::BuilderFn {
5929 Self::ParamSpec::builder_with_default
5930 }
5931}
5932
5933#[cfg(feature = "v4_14")]
5934#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5935impl glib::value::ValueType for GraphicsOffloadEnabled {
5936 type Type = Self;
5937}
5938
5939#[cfg(feature = "v4_14")]
5940#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5941unsafe impl<'a> glib::value::FromValue<'a> for GraphicsOffloadEnabled {
5942 type Checker = glib::value::GenericValueTypeChecker<Self>;
5943
5944 #[inline]
5945 unsafe fn from_value(value: &'a glib::Value) -> Self {
5946 skip_assert_initialized!();
5947 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
5948 }
5949}
5950
5951#[cfg(feature = "v4_14")]
5952#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5953impl ToValue for GraphicsOffloadEnabled {
5954 #[inline]
5955 fn to_value(&self) -> glib::Value {
5956 let mut value = glib::Value::for_value_type::<Self>();
5957 unsafe {
5958 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
5959 }
5960 value
5961 }
5962
5963 #[inline]
5964 fn value_type(&self) -> glib::Type {
5965 Self::static_type()
5966 }
5967}
5968
5969#[cfg(feature = "v4_14")]
5970#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
5971impl From<GraphicsOffloadEnabled> for glib::Value {
5972 #[inline]
5973 fn from(v: GraphicsOffloadEnabled) -> Self {
5974 skip_assert_initialized!();
5975 ToValue::to_value(&v)
5976 }
5977}
5978
5979#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
5989#[non_exhaustive]
5990#[doc(alias = "GtkIconSize")]
5991pub enum IconSize {
5992 #[doc(alias = "GTK_ICON_SIZE_INHERIT")]
5994 Inherit,
5995 #[doc(alias = "GTK_ICON_SIZE_NORMAL")]
5997 Normal,
5998 #[doc(alias = "GTK_ICON_SIZE_LARGE")]
6000 Large,
6001 #[doc(hidden)]
6002 __Unknown(i32),
6003}
6004
6005#[doc(hidden)]
6006impl IntoGlib for IconSize {
6007 type GlibType = ffi::GtkIconSize;
6008
6009 #[inline]
6010 fn into_glib(self) -> ffi::GtkIconSize {
6011 match self {
6012 Self::Inherit => ffi::GTK_ICON_SIZE_INHERIT,
6013 Self::Normal => ffi::GTK_ICON_SIZE_NORMAL,
6014 Self::Large => ffi::GTK_ICON_SIZE_LARGE,
6015 Self::__Unknown(value) => value,
6016 }
6017 }
6018}
6019
6020#[doc(hidden)]
6021impl FromGlib<ffi::GtkIconSize> for IconSize {
6022 #[inline]
6023 unsafe fn from_glib(value: ffi::GtkIconSize) -> Self {
6024 skip_assert_initialized!();
6025
6026 match value {
6027 ffi::GTK_ICON_SIZE_INHERIT => Self::Inherit,
6028 ffi::GTK_ICON_SIZE_NORMAL => Self::Normal,
6029 ffi::GTK_ICON_SIZE_LARGE => Self::Large,
6030 value => Self::__Unknown(value),
6031 }
6032 }
6033}
6034
6035impl StaticType for IconSize {
6036 #[inline]
6037 #[doc(alias = "gtk_icon_size_get_type")]
6038 fn static_type() -> glib::Type {
6039 unsafe { from_glib(ffi::gtk_icon_size_get_type()) }
6040 }
6041}
6042
6043impl glib::HasParamSpec for IconSize {
6044 type ParamSpec = glib::ParamSpecEnum;
6045 type SetValue = Self;
6046 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6047
6048 fn param_spec_builder() -> Self::BuilderFn {
6049 Self::ParamSpec::builder_with_default
6050 }
6051}
6052
6053impl glib::value::ValueType for IconSize {
6054 type Type = Self;
6055}
6056
6057unsafe impl<'a> glib::value::FromValue<'a> for IconSize {
6058 type Checker = glib::value::GenericValueTypeChecker<Self>;
6059
6060 #[inline]
6061 unsafe fn from_value(value: &'a glib::Value) -> Self {
6062 skip_assert_initialized!();
6063 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6064 }
6065}
6066
6067impl ToValue for IconSize {
6068 #[inline]
6069 fn to_value(&self) -> glib::Value {
6070 let mut value = glib::Value::for_value_type::<Self>();
6071 unsafe {
6072 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6073 }
6074 value
6075 }
6076
6077 #[inline]
6078 fn value_type(&self) -> glib::Type {
6079 Self::static_type()
6080 }
6081}
6082
6083impl From<IconSize> for glib::Value {
6084 #[inline]
6085 fn from(v: IconSize) -> Self {
6086 skip_assert_initialized!();
6087 ToValue::to_value(&v)
6088 }
6089}
6090
6091#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6093#[non_exhaustive]
6094#[doc(alias = "GtkIconThemeError")]
6095pub enum IconThemeError {
6096 #[doc(alias = "GTK_ICON_THEME_NOT_FOUND")]
6098 NotFound,
6099 #[doc(alias = "GTK_ICON_THEME_FAILED")]
6101 Failed,
6102 #[doc(hidden)]
6103 __Unknown(i32),
6104}
6105
6106#[doc(hidden)]
6107impl IntoGlib for IconThemeError {
6108 type GlibType = ffi::GtkIconThemeError;
6109
6110 #[inline]
6111 fn into_glib(self) -> ffi::GtkIconThemeError {
6112 match self {
6113 Self::NotFound => ffi::GTK_ICON_THEME_NOT_FOUND,
6114 Self::Failed => ffi::GTK_ICON_THEME_FAILED,
6115 Self::__Unknown(value) => value,
6116 }
6117 }
6118}
6119
6120#[doc(hidden)]
6121impl FromGlib<ffi::GtkIconThemeError> for IconThemeError {
6122 #[inline]
6123 unsafe fn from_glib(value: ffi::GtkIconThemeError) -> Self {
6124 skip_assert_initialized!();
6125
6126 match value {
6127 ffi::GTK_ICON_THEME_NOT_FOUND => Self::NotFound,
6128 ffi::GTK_ICON_THEME_FAILED => Self::Failed,
6129 value => Self::__Unknown(value),
6130 }
6131 }
6132}
6133
6134impl glib::error::ErrorDomain for IconThemeError {
6135 #[inline]
6136 fn domain() -> glib::Quark {
6137 skip_assert_initialized!();
6138
6139 unsafe { from_glib(ffi::gtk_icon_theme_error_quark()) }
6140 }
6141
6142 #[inline]
6143 fn code(self) -> i32 {
6144 self.into_glib()
6145 }
6146
6147 #[inline]
6148 #[allow(clippy::match_single_binding)]
6149 fn from(code: i32) -> Option<Self> {
6150 skip_assert_initialized!();
6151 match unsafe { from_glib(code) } {
6152 Self::__Unknown(_) => Some(Self::Failed),
6153 value => Some(value),
6154 }
6155 }
6156}
6157
6158impl StaticType for IconThemeError {
6159 #[inline]
6160 #[doc(alias = "gtk_icon_theme_error_get_type")]
6161 fn static_type() -> glib::Type {
6162 unsafe { from_glib(ffi::gtk_icon_theme_error_get_type()) }
6163 }
6164}
6165
6166impl glib::HasParamSpec for IconThemeError {
6167 type ParamSpec = glib::ParamSpecEnum;
6168 type SetValue = Self;
6169 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6170
6171 fn param_spec_builder() -> Self::BuilderFn {
6172 Self::ParamSpec::builder_with_default
6173 }
6174}
6175
6176impl glib::value::ValueType for IconThemeError {
6177 type Type = Self;
6178}
6179
6180unsafe impl<'a> glib::value::FromValue<'a> for IconThemeError {
6181 type Checker = glib::value::GenericValueTypeChecker<Self>;
6182
6183 #[inline]
6184 unsafe fn from_value(value: &'a glib::Value) -> Self {
6185 skip_assert_initialized!();
6186 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6187 }
6188}
6189
6190impl ToValue for IconThemeError {
6191 #[inline]
6192 fn to_value(&self) -> glib::Value {
6193 let mut value = glib::Value::for_value_type::<Self>();
6194 unsafe {
6195 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6196 }
6197 value
6198 }
6199
6200 #[inline]
6201 fn value_type(&self) -> glib::Type {
6202 Self::static_type()
6203 }
6204}
6205
6206impl From<IconThemeError> for glib::Value {
6207 #[inline]
6208 fn from(v: IconThemeError) -> Self {
6209 skip_assert_initialized!();
6210 ToValue::to_value(&v)
6211 }
6212}
6213
6214#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
6220#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6221#[non_exhaustive]
6222#[doc(alias = "GtkIconViewDropPosition")]
6223pub enum IconViewDropPosition {
6224 #[doc(alias = "GTK_ICON_VIEW_NO_DROP")]
6226 NoDrop,
6227 #[doc(alias = "GTK_ICON_VIEW_DROP_INTO")]
6229 DropInto,
6230 #[doc(alias = "GTK_ICON_VIEW_DROP_LEFT")]
6232 DropLeft,
6233 #[doc(alias = "GTK_ICON_VIEW_DROP_RIGHT")]
6235 DropRight,
6236 #[doc(alias = "GTK_ICON_VIEW_DROP_ABOVE")]
6238 DropAbove,
6239 #[doc(alias = "GTK_ICON_VIEW_DROP_BELOW")]
6241 DropBelow,
6242 #[doc(hidden)]
6243 __Unknown(i32),
6244}
6245
6246#[allow(deprecated)]
6247#[doc(hidden)]
6248impl IntoGlib for IconViewDropPosition {
6249 type GlibType = ffi::GtkIconViewDropPosition;
6250
6251 #[inline]
6252 fn into_glib(self) -> ffi::GtkIconViewDropPosition {
6253 match self {
6254 Self::NoDrop => ffi::GTK_ICON_VIEW_NO_DROP,
6255 Self::DropInto => ffi::GTK_ICON_VIEW_DROP_INTO,
6256 Self::DropLeft => ffi::GTK_ICON_VIEW_DROP_LEFT,
6257 Self::DropRight => ffi::GTK_ICON_VIEW_DROP_RIGHT,
6258 Self::DropAbove => ffi::GTK_ICON_VIEW_DROP_ABOVE,
6259 Self::DropBelow => ffi::GTK_ICON_VIEW_DROP_BELOW,
6260 Self::__Unknown(value) => value,
6261 }
6262 }
6263}
6264
6265#[allow(deprecated)]
6266#[doc(hidden)]
6267impl FromGlib<ffi::GtkIconViewDropPosition> for IconViewDropPosition {
6268 #[inline]
6269 unsafe fn from_glib(value: ffi::GtkIconViewDropPosition) -> Self {
6270 skip_assert_initialized!();
6271
6272 match value {
6273 ffi::GTK_ICON_VIEW_NO_DROP => Self::NoDrop,
6274 ffi::GTK_ICON_VIEW_DROP_INTO => Self::DropInto,
6275 ffi::GTK_ICON_VIEW_DROP_LEFT => Self::DropLeft,
6276 ffi::GTK_ICON_VIEW_DROP_RIGHT => Self::DropRight,
6277 ffi::GTK_ICON_VIEW_DROP_ABOVE => Self::DropAbove,
6278 ffi::GTK_ICON_VIEW_DROP_BELOW => Self::DropBelow,
6279 value => Self::__Unknown(value),
6280 }
6281 }
6282}
6283
6284#[allow(deprecated)]
6285impl StaticType for IconViewDropPosition {
6286 #[inline]
6287 #[doc(alias = "gtk_icon_view_drop_position_get_type")]
6288 fn static_type() -> glib::Type {
6289 unsafe { from_glib(ffi::gtk_icon_view_drop_position_get_type()) }
6290 }
6291}
6292
6293#[allow(deprecated)]
6294impl glib::HasParamSpec for IconViewDropPosition {
6295 type ParamSpec = glib::ParamSpecEnum;
6296 type SetValue = Self;
6297 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6298
6299 fn param_spec_builder() -> Self::BuilderFn {
6300 Self::ParamSpec::builder_with_default
6301 }
6302}
6303
6304#[allow(deprecated)]
6305impl glib::value::ValueType for IconViewDropPosition {
6306 type Type = Self;
6307}
6308
6309#[allow(deprecated)]
6310unsafe impl<'a> glib::value::FromValue<'a> for IconViewDropPosition {
6311 type Checker = glib::value::GenericValueTypeChecker<Self>;
6312
6313 #[inline]
6314 unsafe fn from_value(value: &'a glib::Value) -> Self {
6315 skip_assert_initialized!();
6316 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6317 }
6318}
6319
6320#[allow(deprecated)]
6321impl ToValue for IconViewDropPosition {
6322 #[inline]
6323 fn to_value(&self) -> glib::Value {
6324 let mut value = glib::Value::for_value_type::<Self>();
6325 unsafe {
6326 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6327 }
6328 value
6329 }
6330
6331 #[inline]
6332 fn value_type(&self) -> glib::Type {
6333 Self::static_type()
6334 }
6335}
6336
6337#[allow(deprecated)]
6338impl From<IconViewDropPosition> for glib::Value {
6339 #[inline]
6340 fn from(v: IconViewDropPosition) -> Self {
6341 skip_assert_initialized!();
6342 ToValue::to_value(&v)
6343 }
6344}
6345
6346#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6355#[non_exhaustive]
6356#[doc(alias = "GtkImageType")]
6357pub enum ImageType {
6358 #[doc(alias = "GTK_IMAGE_EMPTY")]
6360 Empty,
6361 #[doc(alias = "GTK_IMAGE_ICON_NAME")]
6363 IconName,
6364 #[doc(alias = "GTK_IMAGE_GICON")]
6366 Gicon,
6367 #[doc(alias = "GTK_IMAGE_PAINTABLE")]
6369 Paintable,
6370 #[doc(hidden)]
6371 __Unknown(i32),
6372}
6373
6374#[doc(hidden)]
6375impl IntoGlib for ImageType {
6376 type GlibType = ffi::GtkImageType;
6377
6378 #[inline]
6379 fn into_glib(self) -> ffi::GtkImageType {
6380 match self {
6381 Self::Empty => ffi::GTK_IMAGE_EMPTY,
6382 Self::IconName => ffi::GTK_IMAGE_ICON_NAME,
6383 Self::Gicon => ffi::GTK_IMAGE_GICON,
6384 Self::Paintable => ffi::GTK_IMAGE_PAINTABLE,
6385 Self::__Unknown(value) => value,
6386 }
6387 }
6388}
6389
6390#[doc(hidden)]
6391impl FromGlib<ffi::GtkImageType> for ImageType {
6392 #[inline]
6393 unsafe fn from_glib(value: ffi::GtkImageType) -> Self {
6394 skip_assert_initialized!();
6395
6396 match value {
6397 ffi::GTK_IMAGE_EMPTY => Self::Empty,
6398 ffi::GTK_IMAGE_ICON_NAME => Self::IconName,
6399 ffi::GTK_IMAGE_GICON => Self::Gicon,
6400 ffi::GTK_IMAGE_PAINTABLE => Self::Paintable,
6401 value => Self::__Unknown(value),
6402 }
6403 }
6404}
6405
6406impl StaticType for ImageType {
6407 #[inline]
6408 #[doc(alias = "gtk_image_type_get_type")]
6409 fn static_type() -> glib::Type {
6410 unsafe { from_glib(ffi::gtk_image_type_get_type()) }
6411 }
6412}
6413
6414impl glib::HasParamSpec for ImageType {
6415 type ParamSpec = glib::ParamSpecEnum;
6416 type SetValue = Self;
6417 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6418
6419 fn param_spec_builder() -> Self::BuilderFn {
6420 Self::ParamSpec::builder_with_default
6421 }
6422}
6423
6424impl glib::value::ValueType for ImageType {
6425 type Type = Self;
6426}
6427
6428unsafe impl<'a> glib::value::FromValue<'a> for ImageType {
6429 type Checker = glib::value::GenericValueTypeChecker<Self>;
6430
6431 #[inline]
6432 unsafe fn from_value(value: &'a glib::Value) -> Self {
6433 skip_assert_initialized!();
6434 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6435 }
6436}
6437
6438impl ToValue for ImageType {
6439 #[inline]
6440 fn to_value(&self) -> glib::Value {
6441 let mut value = glib::Value::for_value_type::<Self>();
6442 unsafe {
6443 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6444 }
6445 value
6446 }
6447
6448 #[inline]
6449 fn value_type(&self) -> glib::Type {
6450 Self::static_type()
6451 }
6452}
6453
6454impl From<ImageType> for glib::Value {
6455 #[inline]
6456 fn from(v: ImageType) -> Self {
6457 skip_assert_initialized!();
6458 ToValue::to_value(&v)
6459 }
6460}
6461
6462#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6482#[non_exhaustive]
6483#[doc(alias = "GtkInputPurpose")]
6484pub enum InputPurpose {
6485 #[doc(alias = "GTK_INPUT_PURPOSE_FREE_FORM")]
6487 FreeForm,
6488 #[doc(alias = "GTK_INPUT_PURPOSE_ALPHA")]
6490 Alpha,
6491 #[doc(alias = "GTK_INPUT_PURPOSE_DIGITS")]
6493 Digits,
6494 #[doc(alias = "GTK_INPUT_PURPOSE_NUMBER")]
6496 Number,
6497 #[doc(alias = "GTK_INPUT_PURPOSE_PHONE")]
6499 Phone,
6500 #[doc(alias = "GTK_INPUT_PURPOSE_URL")]
6502 Url,
6503 #[doc(alias = "GTK_INPUT_PURPOSE_EMAIL")]
6505 Email,
6506 #[doc(alias = "GTK_INPUT_PURPOSE_NAME")]
6508 Name,
6509 #[doc(alias = "GTK_INPUT_PURPOSE_PASSWORD")]
6511 Password,
6512 #[doc(alias = "GTK_INPUT_PURPOSE_PIN")]
6514 Pin,
6515 #[doc(alias = "GTK_INPUT_PURPOSE_TERMINAL")]
6517 Terminal,
6518 #[doc(hidden)]
6519 __Unknown(i32),
6520}
6521
6522#[doc(hidden)]
6523impl IntoGlib for InputPurpose {
6524 type GlibType = ffi::GtkInputPurpose;
6525
6526 #[inline]
6527 fn into_glib(self) -> ffi::GtkInputPurpose {
6528 match self {
6529 Self::FreeForm => ffi::GTK_INPUT_PURPOSE_FREE_FORM,
6530 Self::Alpha => ffi::GTK_INPUT_PURPOSE_ALPHA,
6531 Self::Digits => ffi::GTK_INPUT_PURPOSE_DIGITS,
6532 Self::Number => ffi::GTK_INPUT_PURPOSE_NUMBER,
6533 Self::Phone => ffi::GTK_INPUT_PURPOSE_PHONE,
6534 Self::Url => ffi::GTK_INPUT_PURPOSE_URL,
6535 Self::Email => ffi::GTK_INPUT_PURPOSE_EMAIL,
6536 Self::Name => ffi::GTK_INPUT_PURPOSE_NAME,
6537 Self::Password => ffi::GTK_INPUT_PURPOSE_PASSWORD,
6538 Self::Pin => ffi::GTK_INPUT_PURPOSE_PIN,
6539 Self::Terminal => ffi::GTK_INPUT_PURPOSE_TERMINAL,
6540 Self::__Unknown(value) => value,
6541 }
6542 }
6543}
6544
6545#[doc(hidden)]
6546impl FromGlib<ffi::GtkInputPurpose> for InputPurpose {
6547 #[inline]
6548 unsafe fn from_glib(value: ffi::GtkInputPurpose) -> Self {
6549 skip_assert_initialized!();
6550
6551 match value {
6552 ffi::GTK_INPUT_PURPOSE_FREE_FORM => Self::FreeForm,
6553 ffi::GTK_INPUT_PURPOSE_ALPHA => Self::Alpha,
6554 ffi::GTK_INPUT_PURPOSE_DIGITS => Self::Digits,
6555 ffi::GTK_INPUT_PURPOSE_NUMBER => Self::Number,
6556 ffi::GTK_INPUT_PURPOSE_PHONE => Self::Phone,
6557 ffi::GTK_INPUT_PURPOSE_URL => Self::Url,
6558 ffi::GTK_INPUT_PURPOSE_EMAIL => Self::Email,
6559 ffi::GTK_INPUT_PURPOSE_NAME => Self::Name,
6560 ffi::GTK_INPUT_PURPOSE_PASSWORD => Self::Password,
6561 ffi::GTK_INPUT_PURPOSE_PIN => Self::Pin,
6562 ffi::GTK_INPUT_PURPOSE_TERMINAL => Self::Terminal,
6563 value => Self::__Unknown(value),
6564 }
6565 }
6566}
6567
6568impl StaticType for InputPurpose {
6569 #[inline]
6570 #[doc(alias = "gtk_input_purpose_get_type")]
6571 fn static_type() -> glib::Type {
6572 unsafe { from_glib(ffi::gtk_input_purpose_get_type()) }
6573 }
6574}
6575
6576impl glib::HasParamSpec for InputPurpose {
6577 type ParamSpec = glib::ParamSpecEnum;
6578 type SetValue = Self;
6579 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6580
6581 fn param_spec_builder() -> Self::BuilderFn {
6582 Self::ParamSpec::builder_with_default
6583 }
6584}
6585
6586impl glib::value::ValueType for InputPurpose {
6587 type Type = Self;
6588}
6589
6590unsafe impl<'a> glib::value::FromValue<'a> for InputPurpose {
6591 type Checker = glib::value::GenericValueTypeChecker<Self>;
6592
6593 #[inline]
6594 unsafe fn from_value(value: &'a glib::Value) -> Self {
6595 skip_assert_initialized!();
6596 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6597 }
6598}
6599
6600impl ToValue for InputPurpose {
6601 #[inline]
6602 fn to_value(&self) -> glib::Value {
6603 let mut value = glib::Value::for_value_type::<Self>();
6604 unsafe {
6605 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6606 }
6607 value
6608 }
6609
6610 #[inline]
6611 fn value_type(&self) -> glib::Type {
6612 Self::static_type()
6613 }
6614}
6615
6616impl From<InputPurpose> for glib::Value {
6617 #[inline]
6618 fn from(v: InputPurpose) -> Self {
6619 skip_assert_initialized!();
6620 ToValue::to_value(&v)
6621 }
6622}
6623
6624#[cfg(feature = "v4_8")]
6627#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6628#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6629#[non_exhaustive]
6630#[doc(alias = "GtkInscriptionOverflow")]
6631pub enum InscriptionOverflow {
6632 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_CLIP")]
6634 Clip,
6635 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START")]
6637 EllipsizeStart,
6638 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE")]
6640 EllipsizeMiddle,
6641 #[doc(alias = "GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END")]
6643 EllipsizeEnd,
6644 #[doc(hidden)]
6645 __Unknown(i32),
6646}
6647
6648#[cfg(feature = "v4_8")]
6649#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6650#[doc(hidden)]
6651impl IntoGlib for InscriptionOverflow {
6652 type GlibType = ffi::GtkInscriptionOverflow;
6653
6654 #[inline]
6655 fn into_glib(self) -> ffi::GtkInscriptionOverflow {
6656 match self {
6657 Self::Clip => ffi::GTK_INSCRIPTION_OVERFLOW_CLIP,
6658 Self::EllipsizeStart => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START,
6659 Self::EllipsizeMiddle => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE,
6660 Self::EllipsizeEnd => ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END,
6661 Self::__Unknown(value) => value,
6662 }
6663 }
6664}
6665
6666#[cfg(feature = "v4_8")]
6667#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6668#[doc(hidden)]
6669impl FromGlib<ffi::GtkInscriptionOverflow> for InscriptionOverflow {
6670 #[inline]
6671 unsafe fn from_glib(value: ffi::GtkInscriptionOverflow) -> Self {
6672 skip_assert_initialized!();
6673
6674 match value {
6675 ffi::GTK_INSCRIPTION_OVERFLOW_CLIP => Self::Clip,
6676 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START => Self::EllipsizeStart,
6677 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE => Self::EllipsizeMiddle,
6678 ffi::GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END => Self::EllipsizeEnd,
6679 value => Self::__Unknown(value),
6680 }
6681 }
6682}
6683
6684#[cfg(feature = "v4_8")]
6685#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6686impl StaticType for InscriptionOverflow {
6687 #[inline]
6688 #[doc(alias = "gtk_inscription_overflow_get_type")]
6689 fn static_type() -> glib::Type {
6690 unsafe { from_glib(ffi::gtk_inscription_overflow_get_type()) }
6691 }
6692}
6693
6694#[cfg(feature = "v4_8")]
6695#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6696impl glib::HasParamSpec for InscriptionOverflow {
6697 type ParamSpec = glib::ParamSpecEnum;
6698 type SetValue = Self;
6699 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6700
6701 fn param_spec_builder() -> Self::BuilderFn {
6702 Self::ParamSpec::builder_with_default
6703 }
6704}
6705
6706#[cfg(feature = "v4_8")]
6707#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6708impl glib::value::ValueType for InscriptionOverflow {
6709 type Type = Self;
6710}
6711
6712#[cfg(feature = "v4_8")]
6713#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6714unsafe impl<'a> glib::value::FromValue<'a> for InscriptionOverflow {
6715 type Checker = glib::value::GenericValueTypeChecker<Self>;
6716
6717 #[inline]
6718 unsafe fn from_value(value: &'a glib::Value) -> Self {
6719 skip_assert_initialized!();
6720 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6721 }
6722}
6723
6724#[cfg(feature = "v4_8")]
6725#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6726impl ToValue for InscriptionOverflow {
6727 #[inline]
6728 fn to_value(&self) -> glib::Value {
6729 let mut value = glib::Value::for_value_type::<Self>();
6730 unsafe {
6731 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6732 }
6733 value
6734 }
6735
6736 #[inline]
6737 fn value_type(&self) -> glib::Type {
6738 Self::static_type()
6739 }
6740}
6741
6742#[cfg(feature = "v4_8")]
6743#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
6744impl From<InscriptionOverflow> for glib::Value {
6745 #[inline]
6746 fn from(v: InscriptionOverflow) -> Self {
6747 skip_assert_initialized!();
6748 ToValue::to_value(&v)
6749 }
6750}
6751
6752#[cfg(feature = "v4_20")]
6761#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6762#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6763#[non_exhaustive]
6764#[doc(alias = "GtkInterfaceColorScheme")]
6765pub enum InterfaceColorScheme {
6766 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED")]
6768 Unsupported,
6769 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DEFAULT")]
6771 Default,
6772 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_DARK")]
6774 Dark,
6775 #[doc(alias = "GTK_INTERFACE_COLOR_SCHEME_LIGHT")]
6777 Light,
6778 #[doc(hidden)]
6779 __Unknown(i32),
6780}
6781
6782#[cfg(feature = "v4_20")]
6783#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6784#[doc(hidden)]
6785impl IntoGlib for InterfaceColorScheme {
6786 type GlibType = ffi::GtkInterfaceColorScheme;
6787
6788 #[inline]
6789 fn into_glib(self) -> ffi::GtkInterfaceColorScheme {
6790 match self {
6791 Self::Unsupported => ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED,
6792 Self::Default => ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT,
6793 Self::Dark => ffi::GTK_INTERFACE_COLOR_SCHEME_DARK,
6794 Self::Light => ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT,
6795 Self::__Unknown(value) => value,
6796 }
6797 }
6798}
6799
6800#[cfg(feature = "v4_20")]
6801#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6802#[doc(hidden)]
6803impl FromGlib<ffi::GtkInterfaceColorScheme> for InterfaceColorScheme {
6804 #[inline]
6805 unsafe fn from_glib(value: ffi::GtkInterfaceColorScheme) -> Self {
6806 skip_assert_initialized!();
6807
6808 match value {
6809 ffi::GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED => Self::Unsupported,
6810 ffi::GTK_INTERFACE_COLOR_SCHEME_DEFAULT => Self::Default,
6811 ffi::GTK_INTERFACE_COLOR_SCHEME_DARK => Self::Dark,
6812 ffi::GTK_INTERFACE_COLOR_SCHEME_LIGHT => Self::Light,
6813 value => Self::__Unknown(value),
6814 }
6815 }
6816}
6817
6818#[cfg(feature = "v4_20")]
6819#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6820impl StaticType for InterfaceColorScheme {
6821 #[inline]
6822 #[doc(alias = "gtk_interface_color_scheme_get_type")]
6823 fn static_type() -> glib::Type {
6824 unsafe { from_glib(ffi::gtk_interface_color_scheme_get_type()) }
6825 }
6826}
6827
6828#[cfg(feature = "v4_20")]
6829#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6830impl glib::HasParamSpec for InterfaceColorScheme {
6831 type ParamSpec = glib::ParamSpecEnum;
6832 type SetValue = Self;
6833 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6834
6835 fn param_spec_builder() -> Self::BuilderFn {
6836 Self::ParamSpec::builder_with_default
6837 }
6838}
6839
6840#[cfg(feature = "v4_20")]
6841#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6842impl glib::value::ValueType for InterfaceColorScheme {
6843 type Type = Self;
6844}
6845
6846#[cfg(feature = "v4_20")]
6847#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6848unsafe impl<'a> glib::value::FromValue<'a> for InterfaceColorScheme {
6849 type Checker = glib::value::GenericValueTypeChecker<Self>;
6850
6851 #[inline]
6852 unsafe fn from_value(value: &'a glib::Value) -> Self {
6853 skip_assert_initialized!();
6854 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6855 }
6856}
6857
6858#[cfg(feature = "v4_20")]
6859#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6860impl ToValue for InterfaceColorScheme {
6861 #[inline]
6862 fn to_value(&self) -> glib::Value {
6863 let mut value = glib::Value::for_value_type::<Self>();
6864 unsafe {
6865 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
6866 }
6867 value
6868 }
6869
6870 #[inline]
6871 fn value_type(&self) -> glib::Type {
6872 Self::static_type()
6873 }
6874}
6875
6876#[cfg(feature = "v4_20")]
6877#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6878impl From<InterfaceColorScheme> for glib::Value {
6879 #[inline]
6880 fn from(v: InterfaceColorScheme) -> Self {
6881 skip_assert_initialized!();
6882 ToValue::to_value(&v)
6883 }
6884}
6885
6886#[cfg(feature = "v4_20")]
6895#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6896#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
6897#[non_exhaustive]
6898#[doc(alias = "GtkInterfaceContrast")]
6899pub enum InterfaceContrast {
6900 #[doc(alias = "GTK_INTERFACE_CONTRAST_UNSUPPORTED")]
6902 Unsupported,
6903 #[doc(alias = "GTK_INTERFACE_CONTRAST_NO_PREFERENCE")]
6905 NoPreference,
6906 #[doc(alias = "GTK_INTERFACE_CONTRAST_MORE")]
6908 More,
6909 #[doc(alias = "GTK_INTERFACE_CONTRAST_LESS")]
6911 Less,
6912 #[doc(hidden)]
6913 __Unknown(i32),
6914}
6915
6916#[cfg(feature = "v4_20")]
6917#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6918#[doc(hidden)]
6919impl IntoGlib for InterfaceContrast {
6920 type GlibType = ffi::GtkInterfaceContrast;
6921
6922 #[inline]
6923 fn into_glib(self) -> ffi::GtkInterfaceContrast {
6924 match self {
6925 Self::Unsupported => ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED,
6926 Self::NoPreference => ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE,
6927 Self::More => ffi::GTK_INTERFACE_CONTRAST_MORE,
6928 Self::Less => ffi::GTK_INTERFACE_CONTRAST_LESS,
6929 Self::__Unknown(value) => value,
6930 }
6931 }
6932}
6933
6934#[cfg(feature = "v4_20")]
6935#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6936#[doc(hidden)]
6937impl FromGlib<ffi::GtkInterfaceContrast> for InterfaceContrast {
6938 #[inline]
6939 unsafe fn from_glib(value: ffi::GtkInterfaceContrast) -> Self {
6940 skip_assert_initialized!();
6941
6942 match value {
6943 ffi::GTK_INTERFACE_CONTRAST_UNSUPPORTED => Self::Unsupported,
6944 ffi::GTK_INTERFACE_CONTRAST_NO_PREFERENCE => Self::NoPreference,
6945 ffi::GTK_INTERFACE_CONTRAST_MORE => Self::More,
6946 ffi::GTK_INTERFACE_CONTRAST_LESS => Self::Less,
6947 value => Self::__Unknown(value),
6948 }
6949 }
6950}
6951
6952#[cfg(feature = "v4_20")]
6953#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6954impl StaticType for InterfaceContrast {
6955 #[inline]
6956 #[doc(alias = "gtk_interface_contrast_get_type")]
6957 fn static_type() -> glib::Type {
6958 unsafe { from_glib(ffi::gtk_interface_contrast_get_type()) }
6959 }
6960}
6961
6962#[cfg(feature = "v4_20")]
6963#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6964impl glib::HasParamSpec for InterfaceContrast {
6965 type ParamSpec = glib::ParamSpecEnum;
6966 type SetValue = Self;
6967 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
6968
6969 fn param_spec_builder() -> Self::BuilderFn {
6970 Self::ParamSpec::builder_with_default
6971 }
6972}
6973
6974#[cfg(feature = "v4_20")]
6975#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6976impl glib::value::ValueType for InterfaceContrast {
6977 type Type = Self;
6978}
6979
6980#[cfg(feature = "v4_20")]
6981#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6982unsafe impl<'a> glib::value::FromValue<'a> for InterfaceContrast {
6983 type Checker = glib::value::GenericValueTypeChecker<Self>;
6984
6985 #[inline]
6986 unsafe fn from_value(value: &'a glib::Value) -> Self {
6987 skip_assert_initialized!();
6988 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
6989 }
6990}
6991
6992#[cfg(feature = "v4_20")]
6993#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
6994impl ToValue for InterfaceContrast {
6995 #[inline]
6996 fn to_value(&self) -> glib::Value {
6997 let mut value = glib::Value::for_value_type::<Self>();
6998 unsafe {
6999 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7000 }
7001 value
7002 }
7003
7004 #[inline]
7005 fn value_type(&self) -> glib::Type {
7006 Self::static_type()
7007 }
7008}
7009
7010#[cfg(feature = "v4_20")]
7011#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
7012impl From<InterfaceContrast> for glib::Value {
7013 #[inline]
7014 fn from(v: InterfaceContrast) -> Self {
7015 skip_assert_initialized!();
7016 ToValue::to_value(&v)
7017 }
7018}
7019
7020#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7022#[non_exhaustive]
7023#[doc(alias = "GtkJustification")]
7024pub enum Justification {
7025 #[doc(alias = "GTK_JUSTIFY_LEFT")]
7027 Left,
7028 #[doc(alias = "GTK_JUSTIFY_RIGHT")]
7030 Right,
7031 #[doc(alias = "GTK_JUSTIFY_CENTER")]
7033 Center,
7034 #[doc(alias = "GTK_JUSTIFY_FILL")]
7036 Fill,
7037 #[doc(hidden)]
7038 __Unknown(i32),
7039}
7040
7041#[doc(hidden)]
7042impl IntoGlib for Justification {
7043 type GlibType = ffi::GtkJustification;
7044
7045 #[inline]
7046 fn into_glib(self) -> ffi::GtkJustification {
7047 match self {
7048 Self::Left => ffi::GTK_JUSTIFY_LEFT,
7049 Self::Right => ffi::GTK_JUSTIFY_RIGHT,
7050 Self::Center => ffi::GTK_JUSTIFY_CENTER,
7051 Self::Fill => ffi::GTK_JUSTIFY_FILL,
7052 Self::__Unknown(value) => value,
7053 }
7054 }
7055}
7056
7057#[doc(hidden)]
7058impl FromGlib<ffi::GtkJustification> for Justification {
7059 #[inline]
7060 unsafe fn from_glib(value: ffi::GtkJustification) -> Self {
7061 skip_assert_initialized!();
7062
7063 match value {
7064 ffi::GTK_JUSTIFY_LEFT => Self::Left,
7065 ffi::GTK_JUSTIFY_RIGHT => Self::Right,
7066 ffi::GTK_JUSTIFY_CENTER => Self::Center,
7067 ffi::GTK_JUSTIFY_FILL => Self::Fill,
7068 value => Self::__Unknown(value),
7069 }
7070 }
7071}
7072
7073impl StaticType for Justification {
7074 #[inline]
7075 #[doc(alias = "gtk_justification_get_type")]
7076 fn static_type() -> glib::Type {
7077 unsafe { from_glib(ffi::gtk_justification_get_type()) }
7078 }
7079}
7080
7081impl glib::HasParamSpec for Justification {
7082 type ParamSpec = glib::ParamSpecEnum;
7083 type SetValue = Self;
7084 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7085
7086 fn param_spec_builder() -> Self::BuilderFn {
7087 Self::ParamSpec::builder_with_default
7088 }
7089}
7090
7091impl glib::value::ValueType for Justification {
7092 type Type = Self;
7093}
7094
7095unsafe impl<'a> glib::value::FromValue<'a> for Justification {
7096 type Checker = glib::value::GenericValueTypeChecker<Self>;
7097
7098 #[inline]
7099 unsafe fn from_value(value: &'a glib::Value) -> Self {
7100 skip_assert_initialized!();
7101 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7102 }
7103}
7104
7105impl ToValue for Justification {
7106 #[inline]
7107 fn to_value(&self) -> glib::Value {
7108 let mut value = glib::Value::for_value_type::<Self>();
7109 unsafe {
7110 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7111 }
7112 value
7113 }
7114
7115 #[inline]
7116 fn value_type(&self) -> glib::Type {
7117 Self::static_type()
7118 }
7119}
7120
7121impl From<Justification> for glib::Value {
7122 #[inline]
7123 fn from(v: Justification) -> Self {
7124 skip_assert_initialized!();
7125 ToValue::to_value(&v)
7126 }
7127}
7128
7129#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7134#[non_exhaustive]
7135#[doc(alias = "GtkLevelBarMode")]
7136pub enum LevelBarMode {
7137 #[doc(alias = "GTK_LEVEL_BAR_MODE_CONTINUOUS")]
7139 Continuous,
7140 #[doc(alias = "GTK_LEVEL_BAR_MODE_DISCRETE")]
7142 Discrete,
7143 #[doc(hidden)]
7144 __Unknown(i32),
7145}
7146
7147#[doc(hidden)]
7148impl IntoGlib for LevelBarMode {
7149 type GlibType = ffi::GtkLevelBarMode;
7150
7151 #[inline]
7152 fn into_glib(self) -> ffi::GtkLevelBarMode {
7153 match self {
7154 Self::Continuous => ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS,
7155 Self::Discrete => ffi::GTK_LEVEL_BAR_MODE_DISCRETE,
7156 Self::__Unknown(value) => value,
7157 }
7158 }
7159}
7160
7161#[doc(hidden)]
7162impl FromGlib<ffi::GtkLevelBarMode> for LevelBarMode {
7163 #[inline]
7164 unsafe fn from_glib(value: ffi::GtkLevelBarMode) -> Self {
7165 skip_assert_initialized!();
7166
7167 match value {
7168 ffi::GTK_LEVEL_BAR_MODE_CONTINUOUS => Self::Continuous,
7169 ffi::GTK_LEVEL_BAR_MODE_DISCRETE => Self::Discrete,
7170 value => Self::__Unknown(value),
7171 }
7172 }
7173}
7174
7175impl StaticType for LevelBarMode {
7176 #[inline]
7177 #[doc(alias = "gtk_level_bar_mode_get_type")]
7178 fn static_type() -> glib::Type {
7179 unsafe { from_glib(ffi::gtk_level_bar_mode_get_type()) }
7180 }
7181}
7182
7183impl glib::HasParamSpec for LevelBarMode {
7184 type ParamSpec = glib::ParamSpecEnum;
7185 type SetValue = Self;
7186 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7187
7188 fn param_spec_builder() -> Self::BuilderFn {
7189 Self::ParamSpec::builder_with_default
7190 }
7191}
7192
7193impl glib::value::ValueType for LevelBarMode {
7194 type Type = Self;
7195}
7196
7197unsafe impl<'a> glib::value::FromValue<'a> for LevelBarMode {
7198 type Checker = glib::value::GenericValueTypeChecker<Self>;
7199
7200 #[inline]
7201 unsafe fn from_value(value: &'a glib::Value) -> Self {
7202 skip_assert_initialized!();
7203 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7204 }
7205}
7206
7207impl ToValue for LevelBarMode {
7208 #[inline]
7209 fn to_value(&self) -> glib::Value {
7210 let mut value = glib::Value::for_value_type::<Self>();
7211 unsafe {
7212 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7213 }
7214 value
7215 }
7216
7217 #[inline]
7218 fn value_type(&self) -> glib::Type {
7219 Self::static_type()
7220 }
7221}
7222
7223impl From<LevelBarMode> for glib::Value {
7224 #[inline]
7225 fn from(v: LevelBarMode) -> Self {
7226 skip_assert_initialized!();
7227 ToValue::to_value(&v)
7228 }
7229}
7230
7231#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7235#[non_exhaustive]
7236#[doc(alias = "GtkLicense")]
7237pub enum License {
7238 #[doc(alias = "GTK_LICENSE_UNKNOWN")]
7240 Unknown,
7241 #[doc(alias = "GTK_LICENSE_CUSTOM")]
7244 Custom,
7245 #[doc(alias = "GTK_LICENSE_GPL_2_0")]
7247 Gpl20,
7248 #[doc(alias = "GTK_LICENSE_GPL_3_0")]
7250 Gpl30,
7251 #[doc(alias = "GTK_LICENSE_LGPL_2_1")]
7253 Lgpl21,
7254 #[doc(alias = "GTK_LICENSE_LGPL_3_0")]
7256 Lgpl30,
7257 #[doc(alias = "GTK_LICENSE_BSD")]
7259 Bsd,
7260 #[doc(alias = "GTK_LICENSE_MIT_X11")]
7262 MitX11,
7263 #[doc(alias = "GTK_LICENSE_ARTISTIC")]
7265 Artistic,
7266 #[doc(alias = "GTK_LICENSE_GPL_2_0_ONLY")]
7268 Gpl20Only,
7269 #[doc(alias = "GTK_LICENSE_GPL_3_0_ONLY")]
7271 Gpl30Only,
7272 #[doc(alias = "GTK_LICENSE_LGPL_2_1_ONLY")]
7274 Lgpl21Only,
7275 #[doc(alias = "GTK_LICENSE_LGPL_3_0_ONLY")]
7277 Lgpl30Only,
7278 #[doc(alias = "GTK_LICENSE_AGPL_3_0")]
7280 Agpl30,
7281 #[doc(alias = "GTK_LICENSE_AGPL_3_0_ONLY")]
7283 Agpl30Only,
7284 #[doc(alias = "GTK_LICENSE_BSD_3")]
7286 Bsd3,
7287 #[doc(alias = "GTK_LICENSE_APACHE_2_0")]
7289 Apache20,
7290 #[doc(alias = "GTK_LICENSE_MPL_2_0")]
7292 Mpl20,
7293 #[cfg(feature = "v4_14")]
7295 #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
7296 #[doc(alias = "GTK_LICENSE_0BSD")]
7297 _0bsd,
7298 #[doc(hidden)]
7299 __Unknown(i32),
7300}
7301
7302#[doc(hidden)]
7303impl IntoGlib for License {
7304 type GlibType = ffi::GtkLicense;
7305
7306 fn into_glib(self) -> ffi::GtkLicense {
7307 match self {
7308 Self::Unknown => ffi::GTK_LICENSE_UNKNOWN,
7309 Self::Custom => ffi::GTK_LICENSE_CUSTOM,
7310 Self::Gpl20 => ffi::GTK_LICENSE_GPL_2_0,
7311 Self::Gpl30 => ffi::GTK_LICENSE_GPL_3_0,
7312 Self::Lgpl21 => ffi::GTK_LICENSE_LGPL_2_1,
7313 Self::Lgpl30 => ffi::GTK_LICENSE_LGPL_3_0,
7314 Self::Bsd => ffi::GTK_LICENSE_BSD,
7315 Self::MitX11 => ffi::GTK_LICENSE_MIT_X11,
7316 Self::Artistic => ffi::GTK_LICENSE_ARTISTIC,
7317 Self::Gpl20Only => ffi::GTK_LICENSE_GPL_2_0_ONLY,
7318 Self::Gpl30Only => ffi::GTK_LICENSE_GPL_3_0_ONLY,
7319 Self::Lgpl21Only => ffi::GTK_LICENSE_LGPL_2_1_ONLY,
7320 Self::Lgpl30Only => ffi::GTK_LICENSE_LGPL_3_0_ONLY,
7321 Self::Agpl30 => ffi::GTK_LICENSE_AGPL_3_0,
7322 Self::Agpl30Only => ffi::GTK_LICENSE_AGPL_3_0_ONLY,
7323 Self::Bsd3 => ffi::GTK_LICENSE_BSD_3,
7324 Self::Apache20 => ffi::GTK_LICENSE_APACHE_2_0,
7325 Self::Mpl20 => ffi::GTK_LICENSE_MPL_2_0,
7326 #[cfg(feature = "v4_14")]
7327 Self::_0bsd => ffi::GTK_LICENSE_0BSD,
7328 Self::__Unknown(value) => value,
7329 }
7330 }
7331}
7332
7333#[doc(hidden)]
7334impl FromGlib<ffi::GtkLicense> for License {
7335 unsafe fn from_glib(value: ffi::GtkLicense) -> Self {
7336 skip_assert_initialized!();
7337
7338 match value {
7339 ffi::GTK_LICENSE_UNKNOWN => Self::Unknown,
7340 ffi::GTK_LICENSE_CUSTOM => Self::Custom,
7341 ffi::GTK_LICENSE_GPL_2_0 => Self::Gpl20,
7342 ffi::GTK_LICENSE_GPL_3_0 => Self::Gpl30,
7343 ffi::GTK_LICENSE_LGPL_2_1 => Self::Lgpl21,
7344 ffi::GTK_LICENSE_LGPL_3_0 => Self::Lgpl30,
7345 ffi::GTK_LICENSE_BSD => Self::Bsd,
7346 ffi::GTK_LICENSE_MIT_X11 => Self::MitX11,
7347 ffi::GTK_LICENSE_ARTISTIC => Self::Artistic,
7348 ffi::GTK_LICENSE_GPL_2_0_ONLY => Self::Gpl20Only,
7349 ffi::GTK_LICENSE_GPL_3_0_ONLY => Self::Gpl30Only,
7350 ffi::GTK_LICENSE_LGPL_2_1_ONLY => Self::Lgpl21Only,
7351 ffi::GTK_LICENSE_LGPL_3_0_ONLY => Self::Lgpl30Only,
7352 ffi::GTK_LICENSE_AGPL_3_0 => Self::Agpl30,
7353 ffi::GTK_LICENSE_AGPL_3_0_ONLY => Self::Agpl30Only,
7354 ffi::GTK_LICENSE_BSD_3 => Self::Bsd3,
7355 ffi::GTK_LICENSE_APACHE_2_0 => Self::Apache20,
7356 ffi::GTK_LICENSE_MPL_2_0 => Self::Mpl20,
7357 #[cfg(feature = "v4_14")]
7358 ffi::GTK_LICENSE_0BSD => Self::_0bsd,
7359 value => Self::__Unknown(value),
7360 }
7361 }
7362}
7363
7364impl StaticType for License {
7365 #[inline]
7366 #[doc(alias = "gtk_license_get_type")]
7367 fn static_type() -> glib::Type {
7368 unsafe { from_glib(ffi::gtk_license_get_type()) }
7369 }
7370}
7371
7372impl glib::HasParamSpec for License {
7373 type ParamSpec = glib::ParamSpecEnum;
7374 type SetValue = Self;
7375 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7376
7377 fn param_spec_builder() -> Self::BuilderFn {
7378 Self::ParamSpec::builder_with_default
7379 }
7380}
7381
7382impl glib::value::ValueType for License {
7383 type Type = Self;
7384}
7385
7386unsafe impl<'a> glib::value::FromValue<'a> for License {
7387 type Checker = glib::value::GenericValueTypeChecker<Self>;
7388
7389 #[inline]
7390 unsafe fn from_value(value: &'a glib::Value) -> Self {
7391 skip_assert_initialized!();
7392 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7393 }
7394}
7395
7396impl ToValue for License {
7397 #[inline]
7398 fn to_value(&self) -> glib::Value {
7399 let mut value = glib::Value::for_value_type::<Self>();
7400 unsafe {
7401 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7402 }
7403 value
7404 }
7405
7406 #[inline]
7407 fn value_type(&self) -> glib::Type {
7408 Self::static_type()
7409 }
7410}
7411
7412impl From<License> for glib::Value {
7413 #[inline]
7414 fn from(v: License) -> Self {
7415 skip_assert_initialized!();
7416 ToValue::to_value(&v)
7417 }
7418}
7419
7420#[cfg(feature = "v4_12")]
7424#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7425#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7426#[non_exhaustive]
7427#[doc(alias = "GtkListTabBehavior")]
7428pub enum ListTabBehavior {
7429 #[doc(alias = "GTK_LIST_TAB_ALL")]
7431 All,
7432 #[doc(alias = "GTK_LIST_TAB_ITEM")]
7436 Item,
7437 #[doc(alias = "GTK_LIST_TAB_CELL")]
7443 Cell,
7444 #[doc(hidden)]
7445 __Unknown(i32),
7446}
7447
7448#[cfg(feature = "v4_12")]
7449#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7450#[doc(hidden)]
7451impl IntoGlib for ListTabBehavior {
7452 type GlibType = ffi::GtkListTabBehavior;
7453
7454 #[inline]
7455 fn into_glib(self) -> ffi::GtkListTabBehavior {
7456 match self {
7457 Self::All => ffi::GTK_LIST_TAB_ALL,
7458 Self::Item => ffi::GTK_LIST_TAB_ITEM,
7459 Self::Cell => ffi::GTK_LIST_TAB_CELL,
7460 Self::__Unknown(value) => value,
7461 }
7462 }
7463}
7464
7465#[cfg(feature = "v4_12")]
7466#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7467#[doc(hidden)]
7468impl FromGlib<ffi::GtkListTabBehavior> for ListTabBehavior {
7469 #[inline]
7470 unsafe fn from_glib(value: ffi::GtkListTabBehavior) -> Self {
7471 skip_assert_initialized!();
7472
7473 match value {
7474 ffi::GTK_LIST_TAB_ALL => Self::All,
7475 ffi::GTK_LIST_TAB_ITEM => Self::Item,
7476 ffi::GTK_LIST_TAB_CELL => Self::Cell,
7477 value => Self::__Unknown(value),
7478 }
7479 }
7480}
7481
7482#[cfg(feature = "v4_12")]
7483#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7484impl StaticType for ListTabBehavior {
7485 #[inline]
7486 #[doc(alias = "gtk_list_tab_behavior_get_type")]
7487 fn static_type() -> glib::Type {
7488 unsafe { from_glib(ffi::gtk_list_tab_behavior_get_type()) }
7489 }
7490}
7491
7492#[cfg(feature = "v4_12")]
7493#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7494impl glib::HasParamSpec for ListTabBehavior {
7495 type ParamSpec = glib::ParamSpecEnum;
7496 type SetValue = Self;
7497 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7498
7499 fn param_spec_builder() -> Self::BuilderFn {
7500 Self::ParamSpec::builder_with_default
7501 }
7502}
7503
7504#[cfg(feature = "v4_12")]
7505#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7506impl glib::value::ValueType for ListTabBehavior {
7507 type Type = Self;
7508}
7509
7510#[cfg(feature = "v4_12")]
7511#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7512unsafe impl<'a> glib::value::FromValue<'a> for ListTabBehavior {
7513 type Checker = glib::value::GenericValueTypeChecker<Self>;
7514
7515 #[inline]
7516 unsafe fn from_value(value: &'a glib::Value) -> Self {
7517 skip_assert_initialized!();
7518 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7519 }
7520}
7521
7522#[cfg(feature = "v4_12")]
7523#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7524impl ToValue for ListTabBehavior {
7525 #[inline]
7526 fn to_value(&self) -> glib::Value {
7527 let mut value = glib::Value::for_value_type::<Self>();
7528 unsafe {
7529 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7530 }
7531 value
7532 }
7533
7534 #[inline]
7535 fn value_type(&self) -> glib::Type {
7536 Self::static_type()
7537 }
7538}
7539
7540#[cfg(feature = "v4_12")]
7541#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
7542impl From<ListTabBehavior> for glib::Value {
7543 #[inline]
7544 fn from(v: ListTabBehavior) -> Self {
7545 skip_assert_initialized!();
7546 ToValue::to_value(&v)
7547 }
7548}
7549
7550#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7552#[non_exhaustive]
7553#[doc(alias = "GtkMessageType")]
7554pub enum MessageType {
7555 #[doc(alias = "GTK_MESSAGE_INFO")]
7557 Info,
7558 #[doc(alias = "GTK_MESSAGE_WARNING")]
7560 Warning,
7561 #[doc(alias = "GTK_MESSAGE_QUESTION")]
7563 Question,
7564 #[doc(alias = "GTK_MESSAGE_ERROR")]
7566 Error,
7567 #[doc(alias = "GTK_MESSAGE_OTHER")]
7569 Other,
7570 #[doc(hidden)]
7571 __Unknown(i32),
7572}
7573
7574#[doc(hidden)]
7575impl IntoGlib for MessageType {
7576 type GlibType = ffi::GtkMessageType;
7577
7578 #[inline]
7579 fn into_glib(self) -> ffi::GtkMessageType {
7580 match self {
7581 Self::Info => ffi::GTK_MESSAGE_INFO,
7582 Self::Warning => ffi::GTK_MESSAGE_WARNING,
7583 Self::Question => ffi::GTK_MESSAGE_QUESTION,
7584 Self::Error => ffi::GTK_MESSAGE_ERROR,
7585 Self::Other => ffi::GTK_MESSAGE_OTHER,
7586 Self::__Unknown(value) => value,
7587 }
7588 }
7589}
7590
7591#[doc(hidden)]
7592impl FromGlib<ffi::GtkMessageType> for MessageType {
7593 #[inline]
7594 unsafe fn from_glib(value: ffi::GtkMessageType) -> Self {
7595 skip_assert_initialized!();
7596
7597 match value {
7598 ffi::GTK_MESSAGE_INFO => Self::Info,
7599 ffi::GTK_MESSAGE_WARNING => Self::Warning,
7600 ffi::GTK_MESSAGE_QUESTION => Self::Question,
7601 ffi::GTK_MESSAGE_ERROR => Self::Error,
7602 ffi::GTK_MESSAGE_OTHER => Self::Other,
7603 value => Self::__Unknown(value),
7604 }
7605 }
7606}
7607
7608impl StaticType for MessageType {
7609 #[inline]
7610 #[doc(alias = "gtk_message_type_get_type")]
7611 fn static_type() -> glib::Type {
7612 unsafe { from_glib(ffi::gtk_message_type_get_type()) }
7613 }
7614}
7615
7616impl glib::HasParamSpec for MessageType {
7617 type ParamSpec = glib::ParamSpecEnum;
7618 type SetValue = Self;
7619 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7620
7621 fn param_spec_builder() -> Self::BuilderFn {
7622 Self::ParamSpec::builder_with_default
7623 }
7624}
7625
7626impl glib::value::ValueType for MessageType {
7627 type Type = Self;
7628}
7629
7630unsafe impl<'a> glib::value::FromValue<'a> for MessageType {
7631 type Checker = glib::value::GenericValueTypeChecker<Self>;
7632
7633 #[inline]
7634 unsafe fn from_value(value: &'a glib::Value) -> Self {
7635 skip_assert_initialized!();
7636 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7637 }
7638}
7639
7640impl ToValue for MessageType {
7641 #[inline]
7642 fn to_value(&self) -> glib::Value {
7643 let mut value = glib::Value::for_value_type::<Self>();
7644 unsafe {
7645 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7646 }
7647 value
7648 }
7649
7650 #[inline]
7651 fn value_type(&self) -> glib::Type {
7652 Self::static_type()
7653 }
7654}
7655
7656impl From<MessageType> for glib::Value {
7657 #[inline]
7658 fn from(v: MessageType) -> Self {
7659 skip_assert_initialized!();
7660 ToValue::to_value(&v)
7661 }
7662}
7663
7664#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7667#[non_exhaustive]
7668#[doc(alias = "GtkMovementStep")]
7669pub enum MovementStep {
7670 #[doc(alias = "GTK_MOVEMENT_LOGICAL_POSITIONS")]
7672 LogicalPositions,
7673 #[doc(alias = "GTK_MOVEMENT_VISUAL_POSITIONS")]
7675 VisualPositions,
7676 #[doc(alias = "GTK_MOVEMENT_WORDS")]
7678 Words,
7679 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINES")]
7681 DisplayLines,
7682 #[doc(alias = "GTK_MOVEMENT_DISPLAY_LINE_ENDS")]
7684 DisplayLineEnds,
7685 #[doc(alias = "GTK_MOVEMENT_PARAGRAPHS")]
7687 Paragraphs,
7688 #[doc(alias = "GTK_MOVEMENT_PARAGRAPH_ENDS")]
7690 ParagraphEnds,
7691 #[doc(alias = "GTK_MOVEMENT_PAGES")]
7693 Pages,
7694 #[doc(alias = "GTK_MOVEMENT_BUFFER_ENDS")]
7696 BufferEnds,
7697 #[doc(alias = "GTK_MOVEMENT_HORIZONTAL_PAGES")]
7699 HorizontalPages,
7700 #[doc(hidden)]
7701 __Unknown(i32),
7702}
7703
7704#[doc(hidden)]
7705impl IntoGlib for MovementStep {
7706 type GlibType = ffi::GtkMovementStep;
7707
7708 #[inline]
7709 fn into_glib(self) -> ffi::GtkMovementStep {
7710 match self {
7711 Self::LogicalPositions => ffi::GTK_MOVEMENT_LOGICAL_POSITIONS,
7712 Self::VisualPositions => ffi::GTK_MOVEMENT_VISUAL_POSITIONS,
7713 Self::Words => ffi::GTK_MOVEMENT_WORDS,
7714 Self::DisplayLines => ffi::GTK_MOVEMENT_DISPLAY_LINES,
7715 Self::DisplayLineEnds => ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS,
7716 Self::Paragraphs => ffi::GTK_MOVEMENT_PARAGRAPHS,
7717 Self::ParagraphEnds => ffi::GTK_MOVEMENT_PARAGRAPH_ENDS,
7718 Self::Pages => ffi::GTK_MOVEMENT_PAGES,
7719 Self::BufferEnds => ffi::GTK_MOVEMENT_BUFFER_ENDS,
7720 Self::HorizontalPages => ffi::GTK_MOVEMENT_HORIZONTAL_PAGES,
7721 Self::__Unknown(value) => value,
7722 }
7723 }
7724}
7725
7726#[doc(hidden)]
7727impl FromGlib<ffi::GtkMovementStep> for MovementStep {
7728 #[inline]
7729 unsafe fn from_glib(value: ffi::GtkMovementStep) -> Self {
7730 skip_assert_initialized!();
7731
7732 match value {
7733 ffi::GTK_MOVEMENT_LOGICAL_POSITIONS => Self::LogicalPositions,
7734 ffi::GTK_MOVEMENT_VISUAL_POSITIONS => Self::VisualPositions,
7735 ffi::GTK_MOVEMENT_WORDS => Self::Words,
7736 ffi::GTK_MOVEMENT_DISPLAY_LINES => Self::DisplayLines,
7737 ffi::GTK_MOVEMENT_DISPLAY_LINE_ENDS => Self::DisplayLineEnds,
7738 ffi::GTK_MOVEMENT_PARAGRAPHS => Self::Paragraphs,
7739 ffi::GTK_MOVEMENT_PARAGRAPH_ENDS => Self::ParagraphEnds,
7740 ffi::GTK_MOVEMENT_PAGES => Self::Pages,
7741 ffi::GTK_MOVEMENT_BUFFER_ENDS => Self::BufferEnds,
7742 ffi::GTK_MOVEMENT_HORIZONTAL_PAGES => Self::HorizontalPages,
7743 value => Self::__Unknown(value),
7744 }
7745 }
7746}
7747
7748impl StaticType for MovementStep {
7749 #[inline]
7750 #[doc(alias = "gtk_movement_step_get_type")]
7751 fn static_type() -> glib::Type {
7752 unsafe { from_glib(ffi::gtk_movement_step_get_type()) }
7753 }
7754}
7755
7756impl glib::HasParamSpec for MovementStep {
7757 type ParamSpec = glib::ParamSpecEnum;
7758 type SetValue = Self;
7759 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7760
7761 fn param_spec_builder() -> Self::BuilderFn {
7762 Self::ParamSpec::builder_with_default
7763 }
7764}
7765
7766impl glib::value::ValueType for MovementStep {
7767 type Type = Self;
7768}
7769
7770unsafe impl<'a> glib::value::FromValue<'a> for MovementStep {
7771 type Checker = glib::value::GenericValueTypeChecker<Self>;
7772
7773 #[inline]
7774 unsafe fn from_value(value: &'a glib::Value) -> Self {
7775 skip_assert_initialized!();
7776 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7777 }
7778}
7779
7780impl ToValue for MovementStep {
7781 #[inline]
7782 fn to_value(&self) -> glib::Value {
7783 let mut value = glib::Value::for_value_type::<Self>();
7784 unsafe {
7785 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7786 }
7787 value
7788 }
7789
7790 #[inline]
7791 fn value_type(&self) -> glib::Type {
7792 Self::static_type()
7793 }
7794}
7795
7796impl From<MovementStep> for glib::Value {
7797 #[inline]
7798 fn from(v: MovementStep) -> Self {
7799 skip_assert_initialized!();
7800 ToValue::to_value(&v)
7801 }
7802}
7803
7804#[cfg(feature = "v4_6")]
7809#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7810#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7811#[non_exhaustive]
7812#[doc(alias = "GtkNaturalWrapMode")]
7813pub enum NaturalWrapMode {
7814 #[doc(alias = "GTK_NATURAL_WRAP_INHERIT")]
7817 Inherit,
7818 #[doc(alias = "GTK_NATURAL_WRAP_NONE")]
7822 None,
7823 #[doc(alias = "GTK_NATURAL_WRAP_WORD")]
7827 Word,
7828 #[doc(hidden)]
7829 __Unknown(i32),
7830}
7831
7832#[cfg(feature = "v4_6")]
7833#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7834#[doc(hidden)]
7835impl IntoGlib for NaturalWrapMode {
7836 type GlibType = ffi::GtkNaturalWrapMode;
7837
7838 #[inline]
7839 fn into_glib(self) -> ffi::GtkNaturalWrapMode {
7840 match self {
7841 Self::Inherit => ffi::GTK_NATURAL_WRAP_INHERIT,
7842 Self::None => ffi::GTK_NATURAL_WRAP_NONE,
7843 Self::Word => ffi::GTK_NATURAL_WRAP_WORD,
7844 Self::__Unknown(value) => value,
7845 }
7846 }
7847}
7848
7849#[cfg(feature = "v4_6")]
7850#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7851#[doc(hidden)]
7852impl FromGlib<ffi::GtkNaturalWrapMode> for NaturalWrapMode {
7853 #[inline]
7854 unsafe fn from_glib(value: ffi::GtkNaturalWrapMode) -> Self {
7855 skip_assert_initialized!();
7856
7857 match value {
7858 ffi::GTK_NATURAL_WRAP_INHERIT => Self::Inherit,
7859 ffi::GTK_NATURAL_WRAP_NONE => Self::None,
7860 ffi::GTK_NATURAL_WRAP_WORD => Self::Word,
7861 value => Self::__Unknown(value),
7862 }
7863 }
7864}
7865
7866#[cfg(feature = "v4_6")]
7867#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7868impl StaticType for NaturalWrapMode {
7869 #[inline]
7870 #[doc(alias = "gtk_natural_wrap_mode_get_type")]
7871 fn static_type() -> glib::Type {
7872 unsafe { from_glib(ffi::gtk_natural_wrap_mode_get_type()) }
7873 }
7874}
7875
7876#[cfg(feature = "v4_6")]
7877#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7878impl glib::HasParamSpec for NaturalWrapMode {
7879 type ParamSpec = glib::ParamSpecEnum;
7880 type SetValue = Self;
7881 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7882
7883 fn param_spec_builder() -> Self::BuilderFn {
7884 Self::ParamSpec::builder_with_default
7885 }
7886}
7887
7888#[cfg(feature = "v4_6")]
7889#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7890impl glib::value::ValueType for NaturalWrapMode {
7891 type Type = Self;
7892}
7893
7894#[cfg(feature = "v4_6")]
7895#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7896unsafe impl<'a> glib::value::FromValue<'a> for NaturalWrapMode {
7897 type Checker = glib::value::GenericValueTypeChecker<Self>;
7898
7899 #[inline]
7900 unsafe fn from_value(value: &'a glib::Value) -> Self {
7901 skip_assert_initialized!();
7902 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
7903 }
7904}
7905
7906#[cfg(feature = "v4_6")]
7907#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7908impl ToValue for NaturalWrapMode {
7909 #[inline]
7910 fn to_value(&self) -> glib::Value {
7911 let mut value = glib::Value::for_value_type::<Self>();
7912 unsafe {
7913 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
7914 }
7915 value
7916 }
7917
7918 #[inline]
7919 fn value_type(&self) -> glib::Type {
7920 Self::static_type()
7921 }
7922}
7923
7924#[cfg(feature = "v4_6")]
7925#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
7926impl From<NaturalWrapMode> for glib::Value {
7927 #[inline]
7928 fn from(v: NaturalWrapMode) -> Self {
7929 skip_assert_initialized!();
7930 ToValue::to_value(&v)
7931 }
7932}
7933
7934#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
7936#[non_exhaustive]
7937#[doc(alias = "GtkNotebookTab")]
7938pub enum NotebookTab {
7939 #[doc(alias = "GTK_NOTEBOOK_TAB_FIRST")]
7941 First,
7942 #[doc(alias = "GTK_NOTEBOOK_TAB_LAST")]
7944 Last,
7945 #[doc(hidden)]
7946 __Unknown(i32),
7947}
7948
7949#[doc(hidden)]
7950impl IntoGlib for NotebookTab {
7951 type GlibType = ffi::GtkNotebookTab;
7952
7953 #[inline]
7954 fn into_glib(self) -> ffi::GtkNotebookTab {
7955 match self {
7956 Self::First => ffi::GTK_NOTEBOOK_TAB_FIRST,
7957 Self::Last => ffi::GTK_NOTEBOOK_TAB_LAST,
7958 Self::__Unknown(value) => value,
7959 }
7960 }
7961}
7962
7963#[doc(hidden)]
7964impl FromGlib<ffi::GtkNotebookTab> for NotebookTab {
7965 #[inline]
7966 unsafe fn from_glib(value: ffi::GtkNotebookTab) -> Self {
7967 skip_assert_initialized!();
7968
7969 match value {
7970 ffi::GTK_NOTEBOOK_TAB_FIRST => Self::First,
7971 ffi::GTK_NOTEBOOK_TAB_LAST => Self::Last,
7972 value => Self::__Unknown(value),
7973 }
7974 }
7975}
7976
7977impl StaticType for NotebookTab {
7978 #[inline]
7979 #[doc(alias = "gtk_notebook_tab_get_type")]
7980 fn static_type() -> glib::Type {
7981 unsafe { from_glib(ffi::gtk_notebook_tab_get_type()) }
7982 }
7983}
7984
7985impl glib::HasParamSpec for NotebookTab {
7986 type ParamSpec = glib::ParamSpecEnum;
7987 type SetValue = Self;
7988 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
7989
7990 fn param_spec_builder() -> Self::BuilderFn {
7991 Self::ParamSpec::builder_with_default
7992 }
7993}
7994
7995impl glib::value::ValueType for NotebookTab {
7996 type Type = Self;
7997}
7998
7999unsafe impl<'a> glib::value::FromValue<'a> for NotebookTab {
8000 type Checker = glib::value::GenericValueTypeChecker<Self>;
8001
8002 #[inline]
8003 unsafe fn from_value(value: &'a glib::Value) -> Self {
8004 skip_assert_initialized!();
8005 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8006 }
8007}
8008
8009impl ToValue for NotebookTab {
8010 #[inline]
8011 fn to_value(&self) -> glib::Value {
8012 let mut value = glib::Value::for_value_type::<Self>();
8013 unsafe {
8014 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8015 }
8016 value
8017 }
8018
8019 #[inline]
8020 fn value_type(&self) -> glib::Type {
8021 Self::static_type()
8022 }
8023}
8024
8025impl From<NotebookTab> for glib::Value {
8026 #[inline]
8027 fn from(v: NotebookTab) -> Self {
8028 skip_assert_initialized!();
8029 ToValue::to_value(&v)
8030 }
8031}
8032
8033#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8036#[non_exhaustive]
8037#[doc(alias = "GtkNumberUpLayout")]
8038pub enum NumberUpLayout {
8039 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM")]
8041 Lrtb,
8042 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP")]
8044 Lrbt,
8045 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM")]
8047 Rltb,
8048 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP")]
8050 Rlbt,
8051 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT")]
8053 Tblr,
8054 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT")]
8056 Tbrl,
8057 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT")]
8059 Btlr,
8060 #[doc(alias = "GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT")]
8062 Btrl,
8063 #[doc(hidden)]
8064 __Unknown(i32),
8065}
8066
8067#[doc(hidden)]
8068impl IntoGlib for NumberUpLayout {
8069 type GlibType = ffi::GtkNumberUpLayout;
8070
8071 #[inline]
8072 fn into_glib(self) -> ffi::GtkNumberUpLayout {
8073 match self {
8074 Self::Lrtb => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM,
8075 Self::Lrbt => ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP,
8076 Self::Rltb => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM,
8077 Self::Rlbt => ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP,
8078 Self::Tblr => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT,
8079 Self::Tbrl => ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT,
8080 Self::Btlr => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT,
8081 Self::Btrl => ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT,
8082 Self::__Unknown(value) => value,
8083 }
8084 }
8085}
8086
8087#[doc(hidden)]
8088impl FromGlib<ffi::GtkNumberUpLayout> for NumberUpLayout {
8089 #[inline]
8090 unsafe fn from_glib(value: ffi::GtkNumberUpLayout) -> Self {
8091 skip_assert_initialized!();
8092
8093 match value {
8094 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM => Self::Lrtb,
8095 ffi::GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP => Self::Lrbt,
8096 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM => Self::Rltb,
8097 ffi::GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP => Self::Rlbt,
8098 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT => Self::Tblr,
8099 ffi::GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT => Self::Tbrl,
8100 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT => Self::Btlr,
8101 ffi::GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT => Self::Btrl,
8102 value => Self::__Unknown(value),
8103 }
8104 }
8105}
8106
8107impl StaticType for NumberUpLayout {
8108 #[inline]
8109 #[doc(alias = "gtk_number_up_layout_get_type")]
8110 fn static_type() -> glib::Type {
8111 unsafe { from_glib(ffi::gtk_number_up_layout_get_type()) }
8112 }
8113}
8114
8115impl glib::HasParamSpec for NumberUpLayout {
8116 type ParamSpec = glib::ParamSpecEnum;
8117 type SetValue = Self;
8118 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8119
8120 fn param_spec_builder() -> Self::BuilderFn {
8121 Self::ParamSpec::builder_with_default
8122 }
8123}
8124
8125impl glib::value::ValueType for NumberUpLayout {
8126 type Type = Self;
8127}
8128
8129unsafe impl<'a> glib::value::FromValue<'a> for NumberUpLayout {
8130 type Checker = glib::value::GenericValueTypeChecker<Self>;
8131
8132 #[inline]
8133 unsafe fn from_value(value: &'a glib::Value) -> Self {
8134 skip_assert_initialized!();
8135 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8136 }
8137}
8138
8139impl ToValue for NumberUpLayout {
8140 #[inline]
8141 fn to_value(&self) -> glib::Value {
8142 let mut value = glib::Value::for_value_type::<Self>();
8143 unsafe {
8144 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8145 }
8146 value
8147 }
8148
8149 #[inline]
8150 fn value_type(&self) -> glib::Type {
8151 Self::static_type()
8152 }
8153}
8154
8155impl From<NumberUpLayout> for glib::Value {
8156 #[inline]
8157 fn from(v: NumberUpLayout) -> Self {
8158 skip_assert_initialized!();
8159 ToValue::to_value(&v)
8160 }
8161}
8162
8163#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8170#[non_exhaustive]
8171#[doc(alias = "GtkOrdering")]
8172pub enum Ordering {
8173 #[doc(alias = "GTK_ORDERING_SMALLER")]
8175 Smaller,
8176 #[doc(alias = "GTK_ORDERING_EQUAL")]
8178 Equal,
8179 #[doc(alias = "GTK_ORDERING_LARGER")]
8181 Larger,
8182 #[doc(hidden)]
8183 __Unknown(i32),
8184}
8185
8186#[doc(hidden)]
8187impl IntoGlib for Ordering {
8188 type GlibType = ffi::GtkOrdering;
8189
8190 #[inline]
8191 fn into_glib(self) -> ffi::GtkOrdering {
8192 match self {
8193 Self::Smaller => ffi::GTK_ORDERING_SMALLER,
8194 Self::Equal => ffi::GTK_ORDERING_EQUAL,
8195 Self::Larger => ffi::GTK_ORDERING_LARGER,
8196 Self::__Unknown(value) => value,
8197 }
8198 }
8199}
8200
8201#[doc(hidden)]
8202impl FromGlib<ffi::GtkOrdering> for Ordering {
8203 #[inline]
8204 unsafe fn from_glib(value: ffi::GtkOrdering) -> Self {
8205 skip_assert_initialized!();
8206
8207 match value {
8208 ffi::GTK_ORDERING_SMALLER => Self::Smaller,
8209 ffi::GTK_ORDERING_EQUAL => Self::Equal,
8210 ffi::GTK_ORDERING_LARGER => Self::Larger,
8211 value => Self::__Unknown(value),
8212 }
8213 }
8214}
8215
8216impl StaticType for Ordering {
8217 #[inline]
8218 #[doc(alias = "gtk_ordering_get_type")]
8219 fn static_type() -> glib::Type {
8220 unsafe { from_glib(ffi::gtk_ordering_get_type()) }
8221 }
8222}
8223
8224impl glib::HasParamSpec for Ordering {
8225 type ParamSpec = glib::ParamSpecEnum;
8226 type SetValue = Self;
8227 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8228
8229 fn param_spec_builder() -> Self::BuilderFn {
8230 Self::ParamSpec::builder_with_default
8231 }
8232}
8233
8234impl glib::value::ValueType for Ordering {
8235 type Type = Self;
8236}
8237
8238unsafe impl<'a> glib::value::FromValue<'a> for Ordering {
8239 type Checker = glib::value::GenericValueTypeChecker<Self>;
8240
8241 #[inline]
8242 unsafe fn from_value(value: &'a glib::Value) -> Self {
8243 skip_assert_initialized!();
8244 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8245 }
8246}
8247
8248impl ToValue for Ordering {
8249 #[inline]
8250 fn to_value(&self) -> glib::Value {
8251 let mut value = glib::Value::for_value_type::<Self>();
8252 unsafe {
8253 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8254 }
8255 value
8256 }
8257
8258 #[inline]
8259 fn value_type(&self) -> glib::Type {
8260 Self::static_type()
8261 }
8262}
8263
8264impl From<Ordering> for glib::Value {
8265 #[inline]
8266 fn from(v: Ordering) -> Self {
8267 skip_assert_initialized!();
8268 ToValue::to_value(&v)
8269 }
8270}
8271
8272#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8276#[non_exhaustive]
8277#[doc(alias = "GtkOrientation")]
8278pub enum Orientation {
8279 #[doc(alias = "GTK_ORIENTATION_HORIZONTAL")]
8281 Horizontal,
8282 #[doc(alias = "GTK_ORIENTATION_VERTICAL")]
8284 Vertical,
8285 #[doc(hidden)]
8286 __Unknown(i32),
8287}
8288
8289#[doc(hidden)]
8290impl IntoGlib for Orientation {
8291 type GlibType = ffi::GtkOrientation;
8292
8293 #[inline]
8294 fn into_glib(self) -> ffi::GtkOrientation {
8295 match self {
8296 Self::Horizontal => ffi::GTK_ORIENTATION_HORIZONTAL,
8297 Self::Vertical => ffi::GTK_ORIENTATION_VERTICAL,
8298 Self::__Unknown(value) => value,
8299 }
8300 }
8301}
8302
8303#[doc(hidden)]
8304impl FromGlib<ffi::GtkOrientation> for Orientation {
8305 #[inline]
8306 unsafe fn from_glib(value: ffi::GtkOrientation) -> Self {
8307 skip_assert_initialized!();
8308
8309 match value {
8310 ffi::GTK_ORIENTATION_HORIZONTAL => Self::Horizontal,
8311 ffi::GTK_ORIENTATION_VERTICAL => Self::Vertical,
8312 value => Self::__Unknown(value),
8313 }
8314 }
8315}
8316
8317impl StaticType for Orientation {
8318 #[inline]
8319 #[doc(alias = "gtk_orientation_get_type")]
8320 fn static_type() -> glib::Type {
8321 unsafe { from_glib(ffi::gtk_orientation_get_type()) }
8322 }
8323}
8324
8325impl glib::HasParamSpec for Orientation {
8326 type ParamSpec = glib::ParamSpecEnum;
8327 type SetValue = Self;
8328 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8329
8330 fn param_spec_builder() -> Self::BuilderFn {
8331 Self::ParamSpec::builder_with_default
8332 }
8333}
8334
8335impl glib::value::ValueType for Orientation {
8336 type Type = Self;
8337}
8338
8339unsafe impl<'a> glib::value::FromValue<'a> for Orientation {
8340 type Checker = glib::value::GenericValueTypeChecker<Self>;
8341
8342 #[inline]
8343 unsafe fn from_value(value: &'a glib::Value) -> Self {
8344 skip_assert_initialized!();
8345 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8346 }
8347}
8348
8349impl ToValue for Orientation {
8350 #[inline]
8351 fn to_value(&self) -> glib::Value {
8352 let mut value = glib::Value::for_value_type::<Self>();
8353 unsafe {
8354 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8355 }
8356 value
8357 }
8358
8359 #[inline]
8360 fn value_type(&self) -> glib::Type {
8361 Self::static_type()
8362 }
8363}
8364
8365impl From<Orientation> for glib::Value {
8366 #[inline]
8367 fn from(v: Orientation) -> Self {
8368 skip_assert_initialized!();
8369 ToValue::to_value(&v)
8370 }
8371}
8372
8373#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8379#[non_exhaustive]
8380#[doc(alias = "GtkOverflow")]
8381pub enum Overflow {
8382 #[doc(alias = "GTK_OVERFLOW_VISIBLE")]
8385 Visible,
8386 #[doc(alias = "GTK_OVERFLOW_HIDDEN")]
8389 Hidden,
8390 #[doc(hidden)]
8391 __Unknown(i32),
8392}
8393
8394#[doc(hidden)]
8395impl IntoGlib for Overflow {
8396 type GlibType = ffi::GtkOverflow;
8397
8398 #[inline]
8399 fn into_glib(self) -> ffi::GtkOverflow {
8400 match self {
8401 Self::Visible => ffi::GTK_OVERFLOW_VISIBLE,
8402 Self::Hidden => ffi::GTK_OVERFLOW_HIDDEN,
8403 Self::__Unknown(value) => value,
8404 }
8405 }
8406}
8407
8408#[doc(hidden)]
8409impl FromGlib<ffi::GtkOverflow> for Overflow {
8410 #[inline]
8411 unsafe fn from_glib(value: ffi::GtkOverflow) -> Self {
8412 skip_assert_initialized!();
8413
8414 match value {
8415 ffi::GTK_OVERFLOW_VISIBLE => Self::Visible,
8416 ffi::GTK_OVERFLOW_HIDDEN => Self::Hidden,
8417 value => Self::__Unknown(value),
8418 }
8419 }
8420}
8421
8422impl StaticType for Overflow {
8423 #[inline]
8424 #[doc(alias = "gtk_overflow_get_type")]
8425 fn static_type() -> glib::Type {
8426 unsafe { from_glib(ffi::gtk_overflow_get_type()) }
8427 }
8428}
8429
8430impl glib::HasParamSpec for Overflow {
8431 type ParamSpec = glib::ParamSpecEnum;
8432 type SetValue = Self;
8433 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8434
8435 fn param_spec_builder() -> Self::BuilderFn {
8436 Self::ParamSpec::builder_with_default
8437 }
8438}
8439
8440impl glib::value::ValueType for Overflow {
8441 type Type = Self;
8442}
8443
8444unsafe impl<'a> glib::value::FromValue<'a> for Overflow {
8445 type Checker = glib::value::GenericValueTypeChecker<Self>;
8446
8447 #[inline]
8448 unsafe fn from_value(value: &'a glib::Value) -> Self {
8449 skip_assert_initialized!();
8450 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8451 }
8452}
8453
8454impl ToValue for Overflow {
8455 #[inline]
8456 fn to_value(&self) -> glib::Value {
8457 let mut value = glib::Value::for_value_type::<Self>();
8458 unsafe {
8459 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8460 }
8461 value
8462 }
8463
8464 #[inline]
8465 fn value_type(&self) -> glib::Type {
8466 Self::static_type()
8467 }
8468}
8469
8470impl From<Overflow> for glib::Value {
8471 #[inline]
8472 fn from(v: Overflow) -> Self {
8473 skip_assert_initialized!();
8474 ToValue::to_value(&v)
8475 }
8476}
8477
8478#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8482#[non_exhaustive]
8483#[doc(alias = "GtkPackType")]
8484pub enum PackType {
8485 #[doc(alias = "GTK_PACK_START")]
8487 Start,
8488 #[doc(alias = "GTK_PACK_END")]
8490 End,
8491 #[doc(hidden)]
8492 __Unknown(i32),
8493}
8494
8495#[doc(hidden)]
8496impl IntoGlib for PackType {
8497 type GlibType = ffi::GtkPackType;
8498
8499 #[inline]
8500 fn into_glib(self) -> ffi::GtkPackType {
8501 match self {
8502 Self::Start => ffi::GTK_PACK_START,
8503 Self::End => ffi::GTK_PACK_END,
8504 Self::__Unknown(value) => value,
8505 }
8506 }
8507}
8508
8509#[doc(hidden)]
8510impl FromGlib<ffi::GtkPackType> for PackType {
8511 #[inline]
8512 unsafe fn from_glib(value: ffi::GtkPackType) -> Self {
8513 skip_assert_initialized!();
8514
8515 match value {
8516 ffi::GTK_PACK_START => Self::Start,
8517 ffi::GTK_PACK_END => Self::End,
8518 value => Self::__Unknown(value),
8519 }
8520 }
8521}
8522
8523impl StaticType for PackType {
8524 #[inline]
8525 #[doc(alias = "gtk_pack_type_get_type")]
8526 fn static_type() -> glib::Type {
8527 unsafe { from_glib(ffi::gtk_pack_type_get_type()) }
8528 }
8529}
8530
8531impl glib::HasParamSpec for PackType {
8532 type ParamSpec = glib::ParamSpecEnum;
8533 type SetValue = Self;
8534 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8535
8536 fn param_spec_builder() -> Self::BuilderFn {
8537 Self::ParamSpec::builder_with_default
8538 }
8539}
8540
8541impl glib::value::ValueType for PackType {
8542 type Type = Self;
8543}
8544
8545unsafe impl<'a> glib::value::FromValue<'a> for PackType {
8546 type Checker = glib::value::GenericValueTypeChecker<Self>;
8547
8548 #[inline]
8549 unsafe fn from_value(value: &'a glib::Value) -> Self {
8550 skip_assert_initialized!();
8551 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8552 }
8553}
8554
8555impl ToValue for PackType {
8556 #[inline]
8557 fn to_value(&self) -> glib::Value {
8558 let mut value = glib::Value::for_value_type::<Self>();
8559 unsafe {
8560 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8561 }
8562 value
8563 }
8564
8565 #[inline]
8566 fn value_type(&self) -> glib::Type {
8567 Self::static_type()
8568 }
8569}
8570
8571impl From<PackType> for glib::Value {
8572 #[inline]
8573 fn from(v: PackType) -> Self {
8574 skip_assert_initialized!();
8575 ToValue::to_value(&v)
8576 }
8577}
8578
8579#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8581#[non_exhaustive]
8582#[doc(alias = "GtkPadActionType")]
8583pub enum PadActionType {
8584 #[doc(alias = "GTK_PAD_ACTION_BUTTON")]
8586 Button,
8587 #[doc(alias = "GTK_PAD_ACTION_RING")]
8589 Ring,
8590 #[doc(alias = "GTK_PAD_ACTION_STRIP")]
8592 Strip,
8593 #[doc(alias = "GTK_PAD_ACTION_DIAL")]
8595 Dial,
8596 #[doc(hidden)]
8597 __Unknown(i32),
8598}
8599
8600#[doc(hidden)]
8601impl IntoGlib for PadActionType {
8602 type GlibType = ffi::GtkPadActionType;
8603
8604 #[inline]
8605 fn into_glib(self) -> ffi::GtkPadActionType {
8606 match self {
8607 Self::Button => ffi::GTK_PAD_ACTION_BUTTON,
8608 Self::Ring => ffi::GTK_PAD_ACTION_RING,
8609 Self::Strip => ffi::GTK_PAD_ACTION_STRIP,
8610 Self::Dial => ffi::GTK_PAD_ACTION_DIAL,
8611 Self::__Unknown(value) => value,
8612 }
8613 }
8614}
8615
8616#[doc(hidden)]
8617impl FromGlib<ffi::GtkPadActionType> for PadActionType {
8618 #[inline]
8619 unsafe fn from_glib(value: ffi::GtkPadActionType) -> Self {
8620 skip_assert_initialized!();
8621
8622 match value {
8623 ffi::GTK_PAD_ACTION_BUTTON => Self::Button,
8624 ffi::GTK_PAD_ACTION_RING => Self::Ring,
8625 ffi::GTK_PAD_ACTION_STRIP => Self::Strip,
8626 ffi::GTK_PAD_ACTION_DIAL => Self::Dial,
8627 value => Self::__Unknown(value),
8628 }
8629 }
8630}
8631
8632impl StaticType for PadActionType {
8633 #[inline]
8634 #[doc(alias = "gtk_pad_action_type_get_type")]
8635 fn static_type() -> glib::Type {
8636 unsafe { from_glib(ffi::gtk_pad_action_type_get_type()) }
8637 }
8638}
8639
8640impl glib::HasParamSpec for PadActionType {
8641 type ParamSpec = glib::ParamSpecEnum;
8642 type SetValue = Self;
8643 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8644
8645 fn param_spec_builder() -> Self::BuilderFn {
8646 Self::ParamSpec::builder_with_default
8647 }
8648}
8649
8650impl glib::value::ValueType for PadActionType {
8651 type Type = Self;
8652}
8653
8654unsafe impl<'a> glib::value::FromValue<'a> for PadActionType {
8655 type Checker = glib::value::GenericValueTypeChecker<Self>;
8656
8657 #[inline]
8658 unsafe fn from_value(value: &'a glib::Value) -> Self {
8659 skip_assert_initialized!();
8660 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8661 }
8662}
8663
8664impl ToValue for PadActionType {
8665 #[inline]
8666 fn to_value(&self) -> glib::Value {
8667 let mut value = glib::Value::for_value_type::<Self>();
8668 unsafe {
8669 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8670 }
8671 value
8672 }
8673
8674 #[inline]
8675 fn value_type(&self) -> glib::Type {
8676 Self::static_type()
8677 }
8678}
8679
8680impl From<PadActionType> for glib::Value {
8681 #[inline]
8682 fn from(v: PadActionType) -> Self {
8683 skip_assert_initialized!();
8684 ToValue::to_value(&v)
8685 }
8686}
8687
8688#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8690#[non_exhaustive]
8691#[doc(alias = "GtkPageOrientation")]
8692pub enum PageOrientation {
8693 #[doc(alias = "GTK_PAGE_ORIENTATION_PORTRAIT")]
8695 Portrait,
8696 #[doc(alias = "GTK_PAGE_ORIENTATION_LANDSCAPE")]
8698 Landscape,
8699 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT")]
8701 ReversePortrait,
8702 #[doc(alias = "GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE")]
8704 ReverseLandscape,
8705 #[doc(hidden)]
8706 __Unknown(i32),
8707}
8708
8709#[doc(hidden)]
8710impl IntoGlib for PageOrientation {
8711 type GlibType = ffi::GtkPageOrientation;
8712
8713 #[inline]
8714 fn into_glib(self) -> ffi::GtkPageOrientation {
8715 match self {
8716 Self::Portrait => ffi::GTK_PAGE_ORIENTATION_PORTRAIT,
8717 Self::Landscape => ffi::GTK_PAGE_ORIENTATION_LANDSCAPE,
8718 Self::ReversePortrait => ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT,
8719 Self::ReverseLandscape => ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE,
8720 Self::__Unknown(value) => value,
8721 }
8722 }
8723}
8724
8725#[doc(hidden)]
8726impl FromGlib<ffi::GtkPageOrientation> for PageOrientation {
8727 #[inline]
8728 unsafe fn from_glib(value: ffi::GtkPageOrientation) -> Self {
8729 skip_assert_initialized!();
8730
8731 match value {
8732 ffi::GTK_PAGE_ORIENTATION_PORTRAIT => Self::Portrait,
8733 ffi::GTK_PAGE_ORIENTATION_LANDSCAPE => Self::Landscape,
8734 ffi::GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT => Self::ReversePortrait,
8735 ffi::GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE => Self::ReverseLandscape,
8736 value => Self::__Unknown(value),
8737 }
8738 }
8739}
8740
8741impl StaticType for PageOrientation {
8742 #[inline]
8743 #[doc(alias = "gtk_page_orientation_get_type")]
8744 fn static_type() -> glib::Type {
8745 unsafe { from_glib(ffi::gtk_page_orientation_get_type()) }
8746 }
8747}
8748
8749impl glib::HasParamSpec for PageOrientation {
8750 type ParamSpec = glib::ParamSpecEnum;
8751 type SetValue = Self;
8752 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8753
8754 fn param_spec_builder() -> Self::BuilderFn {
8755 Self::ParamSpec::builder_with_default
8756 }
8757}
8758
8759impl glib::value::ValueType for PageOrientation {
8760 type Type = Self;
8761}
8762
8763unsafe impl<'a> glib::value::FromValue<'a> for PageOrientation {
8764 type Checker = glib::value::GenericValueTypeChecker<Self>;
8765
8766 #[inline]
8767 unsafe fn from_value(value: &'a glib::Value) -> Self {
8768 skip_assert_initialized!();
8769 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8770 }
8771}
8772
8773impl ToValue for PageOrientation {
8774 #[inline]
8775 fn to_value(&self) -> glib::Value {
8776 let mut value = glib::Value::for_value_type::<Self>();
8777 unsafe {
8778 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8779 }
8780 value
8781 }
8782
8783 #[inline]
8784 fn value_type(&self) -> glib::Type {
8785 Self::static_type()
8786 }
8787}
8788
8789impl From<PageOrientation> for glib::Value {
8790 #[inline]
8791 fn from(v: PageOrientation) -> Self {
8792 skip_assert_initialized!();
8793 ToValue::to_value(&v)
8794 }
8795}
8796
8797#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8799#[non_exhaustive]
8800#[doc(alias = "GtkPageSet")]
8801pub enum PageSet {
8802 #[doc(alias = "GTK_PAGE_SET_ALL")]
8804 All,
8805 #[doc(alias = "GTK_PAGE_SET_EVEN")]
8807 Even,
8808 #[doc(alias = "GTK_PAGE_SET_ODD")]
8810 Odd,
8811 #[doc(hidden)]
8812 __Unknown(i32),
8813}
8814
8815#[doc(hidden)]
8816impl IntoGlib for PageSet {
8817 type GlibType = ffi::GtkPageSet;
8818
8819 #[inline]
8820 fn into_glib(self) -> ffi::GtkPageSet {
8821 match self {
8822 Self::All => ffi::GTK_PAGE_SET_ALL,
8823 Self::Even => ffi::GTK_PAGE_SET_EVEN,
8824 Self::Odd => ffi::GTK_PAGE_SET_ODD,
8825 Self::__Unknown(value) => value,
8826 }
8827 }
8828}
8829
8830#[doc(hidden)]
8831impl FromGlib<ffi::GtkPageSet> for PageSet {
8832 #[inline]
8833 unsafe fn from_glib(value: ffi::GtkPageSet) -> Self {
8834 skip_assert_initialized!();
8835
8836 match value {
8837 ffi::GTK_PAGE_SET_ALL => Self::All,
8838 ffi::GTK_PAGE_SET_EVEN => Self::Even,
8839 ffi::GTK_PAGE_SET_ODD => Self::Odd,
8840 value => Self::__Unknown(value),
8841 }
8842 }
8843}
8844
8845impl StaticType for PageSet {
8846 #[inline]
8847 #[doc(alias = "gtk_page_set_get_type")]
8848 fn static_type() -> glib::Type {
8849 unsafe { from_glib(ffi::gtk_page_set_get_type()) }
8850 }
8851}
8852
8853impl glib::HasParamSpec for PageSet {
8854 type ParamSpec = glib::ParamSpecEnum;
8855 type SetValue = Self;
8856 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8857
8858 fn param_spec_builder() -> Self::BuilderFn {
8859 Self::ParamSpec::builder_with_default
8860 }
8861}
8862
8863impl glib::value::ValueType for PageSet {
8864 type Type = Self;
8865}
8866
8867unsafe impl<'a> glib::value::FromValue<'a> for PageSet {
8868 type Checker = glib::value::GenericValueTypeChecker<Self>;
8869
8870 #[inline]
8871 unsafe fn from_value(value: &'a glib::Value) -> Self {
8872 skip_assert_initialized!();
8873 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8874 }
8875}
8876
8877impl ToValue for PageSet {
8878 #[inline]
8879 fn to_value(&self) -> glib::Value {
8880 let mut value = glib::Value::for_value_type::<Self>();
8881 unsafe {
8882 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8883 }
8884 value
8885 }
8886
8887 #[inline]
8888 fn value_type(&self) -> glib::Type {
8889 Self::static_type()
8890 }
8891}
8892
8893impl From<PageSet> for glib::Value {
8894 #[inline]
8895 fn from(v: PageSet) -> Self {
8896 skip_assert_initialized!();
8897 ToValue::to_value(&v)
8898 }
8899}
8900
8901#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
8903#[non_exhaustive]
8904#[doc(alias = "GtkPanDirection")]
8905pub enum PanDirection {
8906 #[doc(alias = "GTK_PAN_DIRECTION_LEFT")]
8908 Left,
8909 #[doc(alias = "GTK_PAN_DIRECTION_RIGHT")]
8911 Right,
8912 #[doc(alias = "GTK_PAN_DIRECTION_UP")]
8914 Up,
8915 #[doc(alias = "GTK_PAN_DIRECTION_DOWN")]
8917 Down,
8918 #[doc(hidden)]
8919 __Unknown(i32),
8920}
8921
8922#[doc(hidden)]
8923impl IntoGlib for PanDirection {
8924 type GlibType = ffi::GtkPanDirection;
8925
8926 #[inline]
8927 fn into_glib(self) -> ffi::GtkPanDirection {
8928 match self {
8929 Self::Left => ffi::GTK_PAN_DIRECTION_LEFT,
8930 Self::Right => ffi::GTK_PAN_DIRECTION_RIGHT,
8931 Self::Up => ffi::GTK_PAN_DIRECTION_UP,
8932 Self::Down => ffi::GTK_PAN_DIRECTION_DOWN,
8933 Self::__Unknown(value) => value,
8934 }
8935 }
8936}
8937
8938#[doc(hidden)]
8939impl FromGlib<ffi::GtkPanDirection> for PanDirection {
8940 #[inline]
8941 unsafe fn from_glib(value: ffi::GtkPanDirection) -> Self {
8942 skip_assert_initialized!();
8943
8944 match value {
8945 ffi::GTK_PAN_DIRECTION_LEFT => Self::Left,
8946 ffi::GTK_PAN_DIRECTION_RIGHT => Self::Right,
8947 ffi::GTK_PAN_DIRECTION_UP => Self::Up,
8948 ffi::GTK_PAN_DIRECTION_DOWN => Self::Down,
8949 value => Self::__Unknown(value),
8950 }
8951 }
8952}
8953
8954impl StaticType for PanDirection {
8955 #[inline]
8956 #[doc(alias = "gtk_pan_direction_get_type")]
8957 fn static_type() -> glib::Type {
8958 unsafe { from_glib(ffi::gtk_pan_direction_get_type()) }
8959 }
8960}
8961
8962impl glib::HasParamSpec for PanDirection {
8963 type ParamSpec = glib::ParamSpecEnum;
8964 type SetValue = Self;
8965 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
8966
8967 fn param_spec_builder() -> Self::BuilderFn {
8968 Self::ParamSpec::builder_with_default
8969 }
8970}
8971
8972impl glib::value::ValueType for PanDirection {
8973 type Type = Self;
8974}
8975
8976unsafe impl<'a> glib::value::FromValue<'a> for PanDirection {
8977 type Checker = glib::value::GenericValueTypeChecker<Self>;
8978
8979 #[inline]
8980 unsafe fn from_value(value: &'a glib::Value) -> Self {
8981 skip_assert_initialized!();
8982 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
8983 }
8984}
8985
8986impl ToValue for PanDirection {
8987 #[inline]
8988 fn to_value(&self) -> glib::Value {
8989 let mut value = glib::Value::for_value_type::<Self>();
8990 unsafe {
8991 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
8992 }
8993 value
8994 }
8995
8996 #[inline]
8997 fn value_type(&self) -> glib::Type {
8998 Self::static_type()
8999 }
9000}
9001
9002impl From<PanDirection> for glib::Value {
9003 #[inline]
9004 fn from(v: PanDirection) -> Self {
9005 skip_assert_initialized!();
9006 ToValue::to_value(&v)
9007 }
9008}
9009
9010#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9013#[non_exhaustive]
9014#[doc(alias = "GtkPolicyType")]
9015pub enum PolicyType {
9016 #[doc(alias = "GTK_POLICY_ALWAYS")]
9019 Always,
9020 #[doc(alias = "GTK_POLICY_AUTOMATIC")]
9023 Automatic,
9024 #[doc(alias = "GTK_POLICY_NEVER")]
9027 Never,
9028 #[doc(alias = "GTK_POLICY_EXTERNAL")]
9032 External,
9033 #[doc(hidden)]
9034 __Unknown(i32),
9035}
9036
9037#[doc(hidden)]
9038impl IntoGlib for PolicyType {
9039 type GlibType = ffi::GtkPolicyType;
9040
9041 #[inline]
9042 fn into_glib(self) -> ffi::GtkPolicyType {
9043 match self {
9044 Self::Always => ffi::GTK_POLICY_ALWAYS,
9045 Self::Automatic => ffi::GTK_POLICY_AUTOMATIC,
9046 Self::Never => ffi::GTK_POLICY_NEVER,
9047 Self::External => ffi::GTK_POLICY_EXTERNAL,
9048 Self::__Unknown(value) => value,
9049 }
9050 }
9051}
9052
9053#[doc(hidden)]
9054impl FromGlib<ffi::GtkPolicyType> for PolicyType {
9055 #[inline]
9056 unsafe fn from_glib(value: ffi::GtkPolicyType) -> Self {
9057 skip_assert_initialized!();
9058
9059 match value {
9060 ffi::GTK_POLICY_ALWAYS => Self::Always,
9061 ffi::GTK_POLICY_AUTOMATIC => Self::Automatic,
9062 ffi::GTK_POLICY_NEVER => Self::Never,
9063 ffi::GTK_POLICY_EXTERNAL => Self::External,
9064 value => Self::__Unknown(value),
9065 }
9066 }
9067}
9068
9069impl StaticType for PolicyType {
9070 #[inline]
9071 #[doc(alias = "gtk_policy_type_get_type")]
9072 fn static_type() -> glib::Type {
9073 unsafe { from_glib(ffi::gtk_policy_type_get_type()) }
9074 }
9075}
9076
9077impl glib::HasParamSpec for PolicyType {
9078 type ParamSpec = glib::ParamSpecEnum;
9079 type SetValue = Self;
9080 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9081
9082 fn param_spec_builder() -> Self::BuilderFn {
9083 Self::ParamSpec::builder_with_default
9084 }
9085}
9086
9087impl glib::value::ValueType for PolicyType {
9088 type Type = Self;
9089}
9090
9091unsafe impl<'a> glib::value::FromValue<'a> for PolicyType {
9092 type Checker = glib::value::GenericValueTypeChecker<Self>;
9093
9094 #[inline]
9095 unsafe fn from_value(value: &'a glib::Value) -> Self {
9096 skip_assert_initialized!();
9097 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9098 }
9099}
9100
9101impl ToValue for PolicyType {
9102 #[inline]
9103 fn to_value(&self) -> glib::Value {
9104 let mut value = glib::Value::for_value_type::<Self>();
9105 unsafe {
9106 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9107 }
9108 value
9109 }
9110
9111 #[inline]
9112 fn value_type(&self) -> glib::Type {
9113 Self::static_type()
9114 }
9115}
9116
9117impl From<PolicyType> for glib::Value {
9118 #[inline]
9119 fn from(v: PolicyType) -> Self {
9120 skip_assert_initialized!();
9121 ToValue::to_value(&v)
9122 }
9123}
9124
9125#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9130#[non_exhaustive]
9131#[doc(alias = "GtkPositionType")]
9132pub enum PositionType {
9133 #[doc(alias = "GTK_POS_LEFT")]
9135 Left,
9136 #[doc(alias = "GTK_POS_RIGHT")]
9138 Right,
9139 #[doc(alias = "GTK_POS_TOP")]
9141 Top,
9142 #[doc(alias = "GTK_POS_BOTTOM")]
9144 Bottom,
9145 #[doc(hidden)]
9146 __Unknown(i32),
9147}
9148
9149#[doc(hidden)]
9150impl IntoGlib for PositionType {
9151 type GlibType = ffi::GtkPositionType;
9152
9153 #[inline]
9154 fn into_glib(self) -> ffi::GtkPositionType {
9155 match self {
9156 Self::Left => ffi::GTK_POS_LEFT,
9157 Self::Right => ffi::GTK_POS_RIGHT,
9158 Self::Top => ffi::GTK_POS_TOP,
9159 Self::Bottom => ffi::GTK_POS_BOTTOM,
9160 Self::__Unknown(value) => value,
9161 }
9162 }
9163}
9164
9165#[doc(hidden)]
9166impl FromGlib<ffi::GtkPositionType> for PositionType {
9167 #[inline]
9168 unsafe fn from_glib(value: ffi::GtkPositionType) -> Self {
9169 skip_assert_initialized!();
9170
9171 match value {
9172 ffi::GTK_POS_LEFT => Self::Left,
9173 ffi::GTK_POS_RIGHT => Self::Right,
9174 ffi::GTK_POS_TOP => Self::Top,
9175 ffi::GTK_POS_BOTTOM => Self::Bottom,
9176 value => Self::__Unknown(value),
9177 }
9178 }
9179}
9180
9181impl StaticType for PositionType {
9182 #[inline]
9183 #[doc(alias = "gtk_position_type_get_type")]
9184 fn static_type() -> glib::Type {
9185 unsafe { from_glib(ffi::gtk_position_type_get_type()) }
9186 }
9187}
9188
9189impl glib::HasParamSpec for PositionType {
9190 type ParamSpec = glib::ParamSpecEnum;
9191 type SetValue = Self;
9192 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9193
9194 fn param_spec_builder() -> Self::BuilderFn {
9195 Self::ParamSpec::builder_with_default
9196 }
9197}
9198
9199impl glib::value::ValueType for PositionType {
9200 type Type = Self;
9201}
9202
9203unsafe impl<'a> glib::value::FromValue<'a> for PositionType {
9204 type Checker = glib::value::GenericValueTypeChecker<Self>;
9205
9206 #[inline]
9207 unsafe fn from_value(value: &'a glib::Value) -> Self {
9208 skip_assert_initialized!();
9209 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9210 }
9211}
9212
9213impl ToValue for PositionType {
9214 #[inline]
9215 fn to_value(&self) -> glib::Value {
9216 let mut value = glib::Value::for_value_type::<Self>();
9217 unsafe {
9218 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9219 }
9220 value
9221 }
9222
9223 #[inline]
9224 fn value_type(&self) -> glib::Type {
9225 Self::static_type()
9226 }
9227}
9228
9229impl From<PositionType> for glib::Value {
9230 #[inline]
9231 fn from(v: PositionType) -> Self {
9232 skip_assert_initialized!();
9233 ToValue::to_value(&v)
9234 }
9235}
9236
9237#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9239#[non_exhaustive]
9240#[doc(alias = "GtkPrintDuplex")]
9241pub enum PrintDuplex {
9242 #[doc(alias = "GTK_PRINT_DUPLEX_SIMPLEX")]
9244 Simplex,
9245 #[doc(alias = "GTK_PRINT_DUPLEX_HORIZONTAL")]
9247 Horizontal,
9248 #[doc(alias = "GTK_PRINT_DUPLEX_VERTICAL")]
9250 Vertical,
9251 #[doc(hidden)]
9252 __Unknown(i32),
9253}
9254
9255#[doc(hidden)]
9256impl IntoGlib for PrintDuplex {
9257 type GlibType = ffi::GtkPrintDuplex;
9258
9259 #[inline]
9260 fn into_glib(self) -> ffi::GtkPrintDuplex {
9261 match self {
9262 Self::Simplex => ffi::GTK_PRINT_DUPLEX_SIMPLEX,
9263 Self::Horizontal => ffi::GTK_PRINT_DUPLEX_HORIZONTAL,
9264 Self::Vertical => ffi::GTK_PRINT_DUPLEX_VERTICAL,
9265 Self::__Unknown(value) => value,
9266 }
9267 }
9268}
9269
9270#[doc(hidden)]
9271impl FromGlib<ffi::GtkPrintDuplex> for PrintDuplex {
9272 #[inline]
9273 unsafe fn from_glib(value: ffi::GtkPrintDuplex) -> Self {
9274 skip_assert_initialized!();
9275
9276 match value {
9277 ffi::GTK_PRINT_DUPLEX_SIMPLEX => Self::Simplex,
9278 ffi::GTK_PRINT_DUPLEX_HORIZONTAL => Self::Horizontal,
9279 ffi::GTK_PRINT_DUPLEX_VERTICAL => Self::Vertical,
9280 value => Self::__Unknown(value),
9281 }
9282 }
9283}
9284
9285impl StaticType for PrintDuplex {
9286 #[inline]
9287 #[doc(alias = "gtk_print_duplex_get_type")]
9288 fn static_type() -> glib::Type {
9289 unsafe { from_glib(ffi::gtk_print_duplex_get_type()) }
9290 }
9291}
9292
9293impl glib::HasParamSpec for PrintDuplex {
9294 type ParamSpec = glib::ParamSpecEnum;
9295 type SetValue = Self;
9296 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9297
9298 fn param_spec_builder() -> Self::BuilderFn {
9299 Self::ParamSpec::builder_with_default
9300 }
9301}
9302
9303impl glib::value::ValueType for PrintDuplex {
9304 type Type = Self;
9305}
9306
9307unsafe impl<'a> glib::value::FromValue<'a> for PrintDuplex {
9308 type Checker = glib::value::GenericValueTypeChecker<Self>;
9309
9310 #[inline]
9311 unsafe fn from_value(value: &'a glib::Value) -> Self {
9312 skip_assert_initialized!();
9313 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9314 }
9315}
9316
9317impl ToValue for PrintDuplex {
9318 #[inline]
9319 fn to_value(&self) -> glib::Value {
9320 let mut value = glib::Value::for_value_type::<Self>();
9321 unsafe {
9322 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9323 }
9324 value
9325 }
9326
9327 #[inline]
9328 fn value_type(&self) -> glib::Type {
9329 Self::static_type()
9330 }
9331}
9332
9333impl From<PrintDuplex> for glib::Value {
9334 #[inline]
9335 fn from(v: PrintDuplex) -> Self {
9336 skip_assert_initialized!();
9337 ToValue::to_value(&v)
9338 }
9339}
9340
9341#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9344#[non_exhaustive]
9345#[doc(alias = "GtkPrintError")]
9346pub enum PrintError {
9347 #[doc(alias = "GTK_PRINT_ERROR_GENERAL")]
9349 General,
9350 #[doc(alias = "GTK_PRINT_ERROR_INTERNAL_ERROR")]
9352 InternalError,
9353 #[doc(alias = "GTK_PRINT_ERROR_NOMEM")]
9355 Nomem,
9356 #[doc(alias = "GTK_PRINT_ERROR_INVALID_FILE")]
9359 InvalidFile,
9360 #[doc(hidden)]
9361 __Unknown(i32),
9362}
9363
9364#[doc(hidden)]
9365impl IntoGlib for PrintError {
9366 type GlibType = ffi::GtkPrintError;
9367
9368 #[inline]
9369 fn into_glib(self) -> ffi::GtkPrintError {
9370 match self {
9371 Self::General => ffi::GTK_PRINT_ERROR_GENERAL,
9372 Self::InternalError => ffi::GTK_PRINT_ERROR_INTERNAL_ERROR,
9373 Self::Nomem => ffi::GTK_PRINT_ERROR_NOMEM,
9374 Self::InvalidFile => ffi::GTK_PRINT_ERROR_INVALID_FILE,
9375 Self::__Unknown(value) => value,
9376 }
9377 }
9378}
9379
9380#[doc(hidden)]
9381impl FromGlib<ffi::GtkPrintError> for PrintError {
9382 #[inline]
9383 unsafe fn from_glib(value: ffi::GtkPrintError) -> Self {
9384 skip_assert_initialized!();
9385
9386 match value {
9387 ffi::GTK_PRINT_ERROR_GENERAL => Self::General,
9388 ffi::GTK_PRINT_ERROR_INTERNAL_ERROR => Self::InternalError,
9389 ffi::GTK_PRINT_ERROR_NOMEM => Self::Nomem,
9390 ffi::GTK_PRINT_ERROR_INVALID_FILE => Self::InvalidFile,
9391 value => Self::__Unknown(value),
9392 }
9393 }
9394}
9395
9396impl glib::error::ErrorDomain for PrintError {
9397 #[inline]
9398 fn domain() -> glib::Quark {
9399 skip_assert_initialized!();
9400
9401 unsafe { from_glib(ffi::gtk_print_error_quark()) }
9402 }
9403
9404 #[inline]
9405 fn code(self) -> i32 {
9406 self.into_glib()
9407 }
9408
9409 #[inline]
9410 #[allow(clippy::match_single_binding)]
9411 fn from(code: i32) -> Option<Self> {
9412 skip_assert_initialized!();
9413 match unsafe { from_glib(code) } {
9414 value => Some(value),
9415 }
9416 }
9417}
9418
9419impl StaticType for PrintError {
9420 #[inline]
9421 #[doc(alias = "gtk_print_error_get_type")]
9422 fn static_type() -> glib::Type {
9423 unsafe { from_glib(ffi::gtk_print_error_get_type()) }
9424 }
9425}
9426
9427impl glib::HasParamSpec for PrintError {
9428 type ParamSpec = glib::ParamSpecEnum;
9429 type SetValue = Self;
9430 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9431
9432 fn param_spec_builder() -> Self::BuilderFn {
9433 Self::ParamSpec::builder_with_default
9434 }
9435}
9436
9437impl glib::value::ValueType for PrintError {
9438 type Type = Self;
9439}
9440
9441unsafe impl<'a> glib::value::FromValue<'a> for PrintError {
9442 type Checker = glib::value::GenericValueTypeChecker<Self>;
9443
9444 #[inline]
9445 unsafe fn from_value(value: &'a glib::Value) -> Self {
9446 skip_assert_initialized!();
9447 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9448 }
9449}
9450
9451impl ToValue for PrintError {
9452 #[inline]
9453 fn to_value(&self) -> glib::Value {
9454 let mut value = glib::Value::for_value_type::<Self>();
9455 unsafe {
9456 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9457 }
9458 value
9459 }
9460
9461 #[inline]
9462 fn value_type(&self) -> glib::Type {
9463 Self::static_type()
9464 }
9465}
9466
9467impl From<PrintError> for glib::Value {
9468 #[inline]
9469 fn from(v: PrintError) -> Self {
9470 skip_assert_initialized!();
9471 ToValue::to_value(&v)
9472 }
9473}
9474
9475#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9479#[non_exhaustive]
9480#[doc(alias = "GtkPrintOperationAction")]
9481pub enum PrintOperationAction {
9482 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG")]
9484 PrintDialog,
9485 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PRINT")]
9489 Print,
9490 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_PREVIEW")]
9492 Preview,
9493 #[doc(alias = "GTK_PRINT_OPERATION_ACTION_EXPORT")]
9496 Export,
9497 #[doc(hidden)]
9498 __Unknown(i32),
9499}
9500
9501#[doc(hidden)]
9502impl IntoGlib for PrintOperationAction {
9503 type GlibType = ffi::GtkPrintOperationAction;
9504
9505 #[inline]
9506 fn into_glib(self) -> ffi::GtkPrintOperationAction {
9507 match self {
9508 Self::PrintDialog => ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
9509 Self::Print => ffi::GTK_PRINT_OPERATION_ACTION_PRINT,
9510 Self::Preview => ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW,
9511 Self::Export => ffi::GTK_PRINT_OPERATION_ACTION_EXPORT,
9512 Self::__Unknown(value) => value,
9513 }
9514 }
9515}
9516
9517#[doc(hidden)]
9518impl FromGlib<ffi::GtkPrintOperationAction> for PrintOperationAction {
9519 #[inline]
9520 unsafe fn from_glib(value: ffi::GtkPrintOperationAction) -> Self {
9521 skip_assert_initialized!();
9522
9523 match value {
9524 ffi::GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG => Self::PrintDialog,
9525 ffi::GTK_PRINT_OPERATION_ACTION_PRINT => Self::Print,
9526 ffi::GTK_PRINT_OPERATION_ACTION_PREVIEW => Self::Preview,
9527 ffi::GTK_PRINT_OPERATION_ACTION_EXPORT => Self::Export,
9528 value => Self::__Unknown(value),
9529 }
9530 }
9531}
9532
9533impl StaticType for PrintOperationAction {
9534 #[inline]
9535 #[doc(alias = "gtk_print_operation_action_get_type")]
9536 fn static_type() -> glib::Type {
9537 unsafe { from_glib(ffi::gtk_print_operation_action_get_type()) }
9538 }
9539}
9540
9541impl glib::HasParamSpec for PrintOperationAction {
9542 type ParamSpec = glib::ParamSpecEnum;
9543 type SetValue = Self;
9544 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9545
9546 fn param_spec_builder() -> Self::BuilderFn {
9547 Self::ParamSpec::builder_with_default
9548 }
9549}
9550
9551impl glib::value::ValueType for PrintOperationAction {
9552 type Type = Self;
9553}
9554
9555unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationAction {
9556 type Checker = glib::value::GenericValueTypeChecker<Self>;
9557
9558 #[inline]
9559 unsafe fn from_value(value: &'a glib::Value) -> Self {
9560 skip_assert_initialized!();
9561 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9562 }
9563}
9564
9565impl ToValue for PrintOperationAction {
9566 #[inline]
9567 fn to_value(&self) -> glib::Value {
9568 let mut value = glib::Value::for_value_type::<Self>();
9569 unsafe {
9570 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9571 }
9572 value
9573 }
9574
9575 #[inline]
9576 fn value_type(&self) -> glib::Type {
9577 Self::static_type()
9578 }
9579}
9580
9581impl From<PrintOperationAction> for glib::Value {
9582 #[inline]
9583 fn from(v: PrintOperationAction) -> Self {
9584 skip_assert_initialized!();
9585 ToValue::to_value(&v)
9586 }
9587}
9588
9589#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9593#[non_exhaustive]
9594#[doc(alias = "GtkPrintOperationResult")]
9595pub enum PrintOperationResult {
9596 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_ERROR")]
9598 Error,
9599 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_APPLY")]
9601 Apply,
9602 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_CANCEL")]
9605 Cancel,
9606 #[doc(alias = "GTK_PRINT_OPERATION_RESULT_IN_PROGRESS")]
9609 InProgress,
9610 #[doc(hidden)]
9611 __Unknown(i32),
9612}
9613
9614#[doc(hidden)]
9615impl IntoGlib for PrintOperationResult {
9616 type GlibType = ffi::GtkPrintOperationResult;
9617
9618 #[inline]
9619 fn into_glib(self) -> ffi::GtkPrintOperationResult {
9620 match self {
9621 Self::Error => ffi::GTK_PRINT_OPERATION_RESULT_ERROR,
9622 Self::Apply => ffi::GTK_PRINT_OPERATION_RESULT_APPLY,
9623 Self::Cancel => ffi::GTK_PRINT_OPERATION_RESULT_CANCEL,
9624 Self::InProgress => ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS,
9625 Self::__Unknown(value) => value,
9626 }
9627 }
9628}
9629
9630#[doc(hidden)]
9631impl FromGlib<ffi::GtkPrintOperationResult> for PrintOperationResult {
9632 #[inline]
9633 unsafe fn from_glib(value: ffi::GtkPrintOperationResult) -> Self {
9634 skip_assert_initialized!();
9635
9636 match value {
9637 ffi::GTK_PRINT_OPERATION_RESULT_ERROR => Self::Error,
9638 ffi::GTK_PRINT_OPERATION_RESULT_APPLY => Self::Apply,
9639 ffi::GTK_PRINT_OPERATION_RESULT_CANCEL => Self::Cancel,
9640 ffi::GTK_PRINT_OPERATION_RESULT_IN_PROGRESS => Self::InProgress,
9641 value => Self::__Unknown(value),
9642 }
9643 }
9644}
9645
9646impl StaticType for PrintOperationResult {
9647 #[inline]
9648 #[doc(alias = "gtk_print_operation_result_get_type")]
9649 fn static_type() -> glib::Type {
9650 unsafe { from_glib(ffi::gtk_print_operation_result_get_type()) }
9651 }
9652}
9653
9654impl glib::HasParamSpec for PrintOperationResult {
9655 type ParamSpec = glib::ParamSpecEnum;
9656 type SetValue = Self;
9657 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9658
9659 fn param_spec_builder() -> Self::BuilderFn {
9660 Self::ParamSpec::builder_with_default
9661 }
9662}
9663
9664impl glib::value::ValueType for PrintOperationResult {
9665 type Type = Self;
9666}
9667
9668unsafe impl<'a> glib::value::FromValue<'a> for PrintOperationResult {
9669 type Checker = glib::value::GenericValueTypeChecker<Self>;
9670
9671 #[inline]
9672 unsafe fn from_value(value: &'a glib::Value) -> Self {
9673 skip_assert_initialized!();
9674 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9675 }
9676}
9677
9678impl ToValue for PrintOperationResult {
9679 #[inline]
9680 fn to_value(&self) -> glib::Value {
9681 let mut value = glib::Value::for_value_type::<Self>();
9682 unsafe {
9683 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9684 }
9685 value
9686 }
9687
9688 #[inline]
9689 fn value_type(&self) -> glib::Type {
9690 Self::static_type()
9691 }
9692}
9693
9694impl From<PrintOperationResult> for glib::Value {
9695 #[inline]
9696 fn from(v: PrintOperationResult) -> Self {
9697 skip_assert_initialized!();
9698 ToValue::to_value(&v)
9699 }
9700}
9701
9702#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9704#[non_exhaustive]
9705#[doc(alias = "GtkPrintPages")]
9706pub enum PrintPages {
9707 #[doc(alias = "GTK_PRINT_PAGES_ALL")]
9709 All,
9710 #[doc(alias = "GTK_PRINT_PAGES_CURRENT")]
9712 Current,
9713 #[doc(alias = "GTK_PRINT_PAGES_RANGES")]
9715 Ranges,
9716 #[doc(alias = "GTK_PRINT_PAGES_SELECTION")]
9718 Selection,
9719 #[doc(hidden)]
9720 __Unknown(i32),
9721}
9722
9723#[doc(hidden)]
9724impl IntoGlib for PrintPages {
9725 type GlibType = ffi::GtkPrintPages;
9726
9727 #[inline]
9728 fn into_glib(self) -> ffi::GtkPrintPages {
9729 match self {
9730 Self::All => ffi::GTK_PRINT_PAGES_ALL,
9731 Self::Current => ffi::GTK_PRINT_PAGES_CURRENT,
9732 Self::Ranges => ffi::GTK_PRINT_PAGES_RANGES,
9733 Self::Selection => ffi::GTK_PRINT_PAGES_SELECTION,
9734 Self::__Unknown(value) => value,
9735 }
9736 }
9737}
9738
9739#[doc(hidden)]
9740impl FromGlib<ffi::GtkPrintPages> for PrintPages {
9741 #[inline]
9742 unsafe fn from_glib(value: ffi::GtkPrintPages) -> Self {
9743 skip_assert_initialized!();
9744
9745 match value {
9746 ffi::GTK_PRINT_PAGES_ALL => Self::All,
9747 ffi::GTK_PRINT_PAGES_CURRENT => Self::Current,
9748 ffi::GTK_PRINT_PAGES_RANGES => Self::Ranges,
9749 ffi::GTK_PRINT_PAGES_SELECTION => Self::Selection,
9750 value => Self::__Unknown(value),
9751 }
9752 }
9753}
9754
9755impl StaticType for PrintPages {
9756 #[inline]
9757 #[doc(alias = "gtk_print_pages_get_type")]
9758 fn static_type() -> glib::Type {
9759 unsafe { from_glib(ffi::gtk_print_pages_get_type()) }
9760 }
9761}
9762
9763impl glib::HasParamSpec for PrintPages {
9764 type ParamSpec = glib::ParamSpecEnum;
9765 type SetValue = Self;
9766 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9767
9768 fn param_spec_builder() -> Self::BuilderFn {
9769 Self::ParamSpec::builder_with_default
9770 }
9771}
9772
9773impl glib::value::ValueType for PrintPages {
9774 type Type = Self;
9775}
9776
9777unsafe impl<'a> glib::value::FromValue<'a> for PrintPages {
9778 type Checker = glib::value::GenericValueTypeChecker<Self>;
9779
9780 #[inline]
9781 unsafe fn from_value(value: &'a glib::Value) -> Self {
9782 skip_assert_initialized!();
9783 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9784 }
9785}
9786
9787impl ToValue for PrintPages {
9788 #[inline]
9789 fn to_value(&self) -> glib::Value {
9790 let mut value = glib::Value::for_value_type::<Self>();
9791 unsafe {
9792 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9793 }
9794 value
9795 }
9796
9797 #[inline]
9798 fn value_type(&self) -> glib::Type {
9799 Self::static_type()
9800 }
9801}
9802
9803impl From<PrintPages> for glib::Value {
9804 #[inline]
9805 fn from(v: PrintPages) -> Self {
9806 skip_assert_initialized!();
9807 ToValue::to_value(&v)
9808 }
9809}
9810
9811#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9813#[non_exhaustive]
9814#[doc(alias = "GtkPrintQuality")]
9815pub enum PrintQuality {
9816 #[doc(alias = "GTK_PRINT_QUALITY_LOW")]
9818 Low,
9819 #[doc(alias = "GTK_PRINT_QUALITY_NORMAL")]
9821 Normal,
9822 #[doc(alias = "GTK_PRINT_QUALITY_HIGH")]
9824 High,
9825 #[doc(alias = "GTK_PRINT_QUALITY_DRAFT")]
9827 Draft,
9828 #[doc(hidden)]
9829 __Unknown(i32),
9830}
9831
9832#[doc(hidden)]
9833impl IntoGlib for PrintQuality {
9834 type GlibType = ffi::GtkPrintQuality;
9835
9836 #[inline]
9837 fn into_glib(self) -> ffi::GtkPrintQuality {
9838 match self {
9839 Self::Low => ffi::GTK_PRINT_QUALITY_LOW,
9840 Self::Normal => ffi::GTK_PRINT_QUALITY_NORMAL,
9841 Self::High => ffi::GTK_PRINT_QUALITY_HIGH,
9842 Self::Draft => ffi::GTK_PRINT_QUALITY_DRAFT,
9843 Self::__Unknown(value) => value,
9844 }
9845 }
9846}
9847
9848#[doc(hidden)]
9849impl FromGlib<ffi::GtkPrintQuality> for PrintQuality {
9850 #[inline]
9851 unsafe fn from_glib(value: ffi::GtkPrintQuality) -> Self {
9852 skip_assert_initialized!();
9853
9854 match value {
9855 ffi::GTK_PRINT_QUALITY_LOW => Self::Low,
9856 ffi::GTK_PRINT_QUALITY_NORMAL => Self::Normal,
9857 ffi::GTK_PRINT_QUALITY_HIGH => Self::High,
9858 ffi::GTK_PRINT_QUALITY_DRAFT => Self::Draft,
9859 value => Self::__Unknown(value),
9860 }
9861 }
9862}
9863
9864impl StaticType for PrintQuality {
9865 #[inline]
9866 #[doc(alias = "gtk_print_quality_get_type")]
9867 fn static_type() -> glib::Type {
9868 unsafe { from_glib(ffi::gtk_print_quality_get_type()) }
9869 }
9870}
9871
9872impl glib::HasParamSpec for PrintQuality {
9873 type ParamSpec = glib::ParamSpecEnum;
9874 type SetValue = Self;
9875 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
9876
9877 fn param_spec_builder() -> Self::BuilderFn {
9878 Self::ParamSpec::builder_with_default
9879 }
9880}
9881
9882impl glib::value::ValueType for PrintQuality {
9883 type Type = Self;
9884}
9885
9886unsafe impl<'a> glib::value::FromValue<'a> for PrintQuality {
9887 type Checker = glib::value::GenericValueTypeChecker<Self>;
9888
9889 #[inline]
9890 unsafe fn from_value(value: &'a glib::Value) -> Self {
9891 skip_assert_initialized!();
9892 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
9893 }
9894}
9895
9896impl ToValue for PrintQuality {
9897 #[inline]
9898 fn to_value(&self) -> glib::Value {
9899 let mut value = glib::Value::for_value_type::<Self>();
9900 unsafe {
9901 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
9902 }
9903 value
9904 }
9905
9906 #[inline]
9907 fn value_type(&self) -> glib::Type {
9908 Self::static_type()
9909 }
9910}
9911
9912impl From<PrintQuality> for glib::Value {
9913 #[inline]
9914 fn from(v: PrintQuality) -> Self {
9915 skip_assert_initialized!();
9916 ToValue::to_value(&v)
9917 }
9918}
9919
9920#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
9923#[non_exhaustive]
9924#[doc(alias = "GtkPrintStatus")]
9925pub enum PrintStatus {
9926 #[doc(alias = "GTK_PRINT_STATUS_INITIAL")]
9929 Initial,
9930 #[doc(alias = "GTK_PRINT_STATUS_PREPARING")]
9933 Preparing,
9934 #[doc(alias = "GTK_PRINT_STATUS_GENERATING_DATA")]
9937 GeneratingData,
9938 #[doc(alias = "GTK_PRINT_STATUS_SENDING_DATA")]
9941 SendingData,
9942 #[doc(alias = "GTK_PRINT_STATUS_PENDING")]
9945 Pending,
9946 #[doc(alias = "GTK_PRINT_STATUS_PENDING_ISSUE")]
9949 PendingIssue,
9950 #[doc(alias = "GTK_PRINT_STATUS_PRINTING")]
9952 Printing,
9953 #[doc(alias = "GTK_PRINT_STATUS_FINISHED")]
9955 Finished,
9956 #[doc(alias = "GTK_PRINT_STATUS_FINISHED_ABORTED")]
9958 FinishedAborted,
9959 #[doc(hidden)]
9960 __Unknown(i32),
9961}
9962
9963#[doc(hidden)]
9964impl IntoGlib for PrintStatus {
9965 type GlibType = ffi::GtkPrintStatus;
9966
9967 #[inline]
9968 fn into_glib(self) -> ffi::GtkPrintStatus {
9969 match self {
9970 Self::Initial => ffi::GTK_PRINT_STATUS_INITIAL,
9971 Self::Preparing => ffi::GTK_PRINT_STATUS_PREPARING,
9972 Self::GeneratingData => ffi::GTK_PRINT_STATUS_GENERATING_DATA,
9973 Self::SendingData => ffi::GTK_PRINT_STATUS_SENDING_DATA,
9974 Self::Pending => ffi::GTK_PRINT_STATUS_PENDING,
9975 Self::PendingIssue => ffi::GTK_PRINT_STATUS_PENDING_ISSUE,
9976 Self::Printing => ffi::GTK_PRINT_STATUS_PRINTING,
9977 Self::Finished => ffi::GTK_PRINT_STATUS_FINISHED,
9978 Self::FinishedAborted => ffi::GTK_PRINT_STATUS_FINISHED_ABORTED,
9979 Self::__Unknown(value) => value,
9980 }
9981 }
9982}
9983
9984#[doc(hidden)]
9985impl FromGlib<ffi::GtkPrintStatus> for PrintStatus {
9986 #[inline]
9987 unsafe fn from_glib(value: ffi::GtkPrintStatus) -> Self {
9988 skip_assert_initialized!();
9989
9990 match value {
9991 ffi::GTK_PRINT_STATUS_INITIAL => Self::Initial,
9992 ffi::GTK_PRINT_STATUS_PREPARING => Self::Preparing,
9993 ffi::GTK_PRINT_STATUS_GENERATING_DATA => Self::GeneratingData,
9994 ffi::GTK_PRINT_STATUS_SENDING_DATA => Self::SendingData,
9995 ffi::GTK_PRINT_STATUS_PENDING => Self::Pending,
9996 ffi::GTK_PRINT_STATUS_PENDING_ISSUE => Self::PendingIssue,
9997 ffi::GTK_PRINT_STATUS_PRINTING => Self::Printing,
9998 ffi::GTK_PRINT_STATUS_FINISHED => Self::Finished,
9999 ffi::GTK_PRINT_STATUS_FINISHED_ABORTED => Self::FinishedAborted,
10000 value => Self::__Unknown(value),
10001 }
10002 }
10003}
10004
10005impl StaticType for PrintStatus {
10006 #[inline]
10007 #[doc(alias = "gtk_print_status_get_type")]
10008 fn static_type() -> glib::Type {
10009 unsafe { from_glib(ffi::gtk_print_status_get_type()) }
10010 }
10011}
10012
10013impl glib::HasParamSpec for PrintStatus {
10014 type ParamSpec = glib::ParamSpecEnum;
10015 type SetValue = Self;
10016 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10017
10018 fn param_spec_builder() -> Self::BuilderFn {
10019 Self::ParamSpec::builder_with_default
10020 }
10021}
10022
10023impl glib::value::ValueType for PrintStatus {
10024 type Type = Self;
10025}
10026
10027unsafe impl<'a> glib::value::FromValue<'a> for PrintStatus {
10028 type Checker = glib::value::GenericValueTypeChecker<Self>;
10029
10030 #[inline]
10031 unsafe fn from_value(value: &'a glib::Value) -> Self {
10032 skip_assert_initialized!();
10033 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10034 }
10035}
10036
10037impl ToValue for PrintStatus {
10038 #[inline]
10039 fn to_value(&self) -> glib::Value {
10040 let mut value = glib::Value::for_value_type::<Self>();
10041 unsafe {
10042 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10043 }
10044 value
10045 }
10046
10047 #[inline]
10048 fn value_type(&self) -> glib::Type {
10049 Self::static_type()
10050 }
10051}
10052
10053impl From<PrintStatus> for glib::Value {
10054 #[inline]
10055 fn from(v: PrintStatus) -> Self {
10056 skip_assert_initialized!();
10057 ToValue::to_value(&v)
10058 }
10059}
10060
10061#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10064#[non_exhaustive]
10065#[doc(alias = "GtkPropagationLimit")]
10066pub enum PropagationLimit {
10067 #[doc(alias = "GTK_LIMIT_NONE")]
10070 None,
10071 #[doc(alias = "GTK_LIMIT_SAME_NATIVE")]
10076 SameNative,
10077 #[doc(hidden)]
10078 __Unknown(i32),
10079}
10080
10081#[doc(hidden)]
10082impl IntoGlib for PropagationLimit {
10083 type GlibType = ffi::GtkPropagationLimit;
10084
10085 #[inline]
10086 fn into_glib(self) -> ffi::GtkPropagationLimit {
10087 match self {
10088 Self::None => ffi::GTK_LIMIT_NONE,
10089 Self::SameNative => ffi::GTK_LIMIT_SAME_NATIVE,
10090 Self::__Unknown(value) => value,
10091 }
10092 }
10093}
10094
10095#[doc(hidden)]
10096impl FromGlib<ffi::GtkPropagationLimit> for PropagationLimit {
10097 #[inline]
10098 unsafe fn from_glib(value: ffi::GtkPropagationLimit) -> Self {
10099 skip_assert_initialized!();
10100
10101 match value {
10102 ffi::GTK_LIMIT_NONE => Self::None,
10103 ffi::GTK_LIMIT_SAME_NATIVE => Self::SameNative,
10104 value => Self::__Unknown(value),
10105 }
10106 }
10107}
10108
10109impl StaticType for PropagationLimit {
10110 #[inline]
10111 #[doc(alias = "gtk_propagation_limit_get_type")]
10112 fn static_type() -> glib::Type {
10113 unsafe { from_glib(ffi::gtk_propagation_limit_get_type()) }
10114 }
10115}
10116
10117impl glib::HasParamSpec for PropagationLimit {
10118 type ParamSpec = glib::ParamSpecEnum;
10119 type SetValue = Self;
10120 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10121
10122 fn param_spec_builder() -> Self::BuilderFn {
10123 Self::ParamSpec::builder_with_default
10124 }
10125}
10126
10127impl glib::value::ValueType for PropagationLimit {
10128 type Type = Self;
10129}
10130
10131unsafe impl<'a> glib::value::FromValue<'a> for PropagationLimit {
10132 type Checker = glib::value::GenericValueTypeChecker<Self>;
10133
10134 #[inline]
10135 unsafe fn from_value(value: &'a glib::Value) -> Self {
10136 skip_assert_initialized!();
10137 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10138 }
10139}
10140
10141impl ToValue for PropagationLimit {
10142 #[inline]
10143 fn to_value(&self) -> glib::Value {
10144 let mut value = glib::Value::for_value_type::<Self>();
10145 unsafe {
10146 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10147 }
10148 value
10149 }
10150
10151 #[inline]
10152 fn value_type(&self) -> glib::Type {
10153 Self::static_type()
10154 }
10155}
10156
10157impl From<PropagationLimit> for glib::Value {
10158 #[inline]
10159 fn from(v: PropagationLimit) -> Self {
10160 skip_assert_initialized!();
10161 ToValue::to_value(&v)
10162 }
10163}
10164
10165#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10167#[non_exhaustive]
10168#[doc(alias = "GtkPropagationPhase")]
10169pub enum PropagationPhase {
10170 #[doc(alias = "GTK_PHASE_NONE")]
10172 None,
10173 #[doc(alias = "GTK_PHASE_CAPTURE")]
10178 Capture,
10179 #[doc(alias = "GTK_PHASE_BUBBLE")]
10183 Bubble,
10184 #[doc(alias = "GTK_PHASE_TARGET")]
10188 Target,
10189 #[doc(hidden)]
10190 __Unknown(i32),
10191}
10192
10193#[doc(hidden)]
10194impl IntoGlib for PropagationPhase {
10195 type GlibType = ffi::GtkPropagationPhase;
10196
10197 #[inline]
10198 fn into_glib(self) -> ffi::GtkPropagationPhase {
10199 match self {
10200 Self::None => ffi::GTK_PHASE_NONE,
10201 Self::Capture => ffi::GTK_PHASE_CAPTURE,
10202 Self::Bubble => ffi::GTK_PHASE_BUBBLE,
10203 Self::Target => ffi::GTK_PHASE_TARGET,
10204 Self::__Unknown(value) => value,
10205 }
10206 }
10207}
10208
10209#[doc(hidden)]
10210impl FromGlib<ffi::GtkPropagationPhase> for PropagationPhase {
10211 #[inline]
10212 unsafe fn from_glib(value: ffi::GtkPropagationPhase) -> Self {
10213 skip_assert_initialized!();
10214
10215 match value {
10216 ffi::GTK_PHASE_NONE => Self::None,
10217 ffi::GTK_PHASE_CAPTURE => Self::Capture,
10218 ffi::GTK_PHASE_BUBBLE => Self::Bubble,
10219 ffi::GTK_PHASE_TARGET => Self::Target,
10220 value => Self::__Unknown(value),
10221 }
10222 }
10223}
10224
10225impl StaticType for PropagationPhase {
10226 #[inline]
10227 #[doc(alias = "gtk_propagation_phase_get_type")]
10228 fn static_type() -> glib::Type {
10229 unsafe { from_glib(ffi::gtk_propagation_phase_get_type()) }
10230 }
10231}
10232
10233impl glib::HasParamSpec for PropagationPhase {
10234 type ParamSpec = glib::ParamSpecEnum;
10235 type SetValue = Self;
10236 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10237
10238 fn param_spec_builder() -> Self::BuilderFn {
10239 Self::ParamSpec::builder_with_default
10240 }
10241}
10242
10243impl glib::value::ValueType for PropagationPhase {
10244 type Type = Self;
10245}
10246
10247unsafe impl<'a> glib::value::FromValue<'a> for PropagationPhase {
10248 type Checker = glib::value::GenericValueTypeChecker<Self>;
10249
10250 #[inline]
10251 unsafe fn from_value(value: &'a glib::Value) -> Self {
10252 skip_assert_initialized!();
10253 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10254 }
10255}
10256
10257impl ToValue for PropagationPhase {
10258 #[inline]
10259 fn to_value(&self) -> glib::Value {
10260 let mut value = glib::Value::for_value_type::<Self>();
10261 unsafe {
10262 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10263 }
10264 value
10265 }
10266
10267 #[inline]
10268 fn value_type(&self) -> glib::Type {
10269 Self::static_type()
10270 }
10271}
10272
10273impl From<PropagationPhase> for glib::Value {
10274 #[inline]
10275 fn from(v: PropagationPhase) -> Self {
10276 skip_assert_initialized!();
10277 ToValue::to_value(&v)
10278 }
10279}
10280
10281#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10283#[non_exhaustive]
10284#[doc(alias = "GtkRecentManagerError")]
10285pub enum RecentManagerError {
10286 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_FOUND")]
10289 NotFound,
10290 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_URI")]
10292 InvalidUri,
10293 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING")]
10296 InvalidEncoding,
10297 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED")]
10300 NotRegistered,
10301 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_READ")]
10304 Read,
10305 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_WRITE")]
10308 Write,
10309 #[doc(alias = "GTK_RECENT_MANAGER_ERROR_UNKNOWN")]
10311 Unknown,
10312 #[doc(hidden)]
10313 __Unknown(i32),
10314}
10315
10316#[doc(hidden)]
10317impl IntoGlib for RecentManagerError {
10318 type GlibType = ffi::GtkRecentManagerError;
10319
10320 #[inline]
10321 fn into_glib(self) -> ffi::GtkRecentManagerError {
10322 match self {
10323 Self::NotFound => ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND,
10324 Self::InvalidUri => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI,
10325 Self::InvalidEncoding => ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING,
10326 Self::NotRegistered => ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED,
10327 Self::Read => ffi::GTK_RECENT_MANAGER_ERROR_READ,
10328 Self::Write => ffi::GTK_RECENT_MANAGER_ERROR_WRITE,
10329 Self::Unknown => ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN,
10330 Self::__Unknown(value) => value,
10331 }
10332 }
10333}
10334
10335#[doc(hidden)]
10336impl FromGlib<ffi::GtkRecentManagerError> for RecentManagerError {
10337 #[inline]
10338 unsafe fn from_glib(value: ffi::GtkRecentManagerError) -> Self {
10339 skip_assert_initialized!();
10340
10341 match value {
10342 ffi::GTK_RECENT_MANAGER_ERROR_NOT_FOUND => Self::NotFound,
10343 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_URI => Self::InvalidUri,
10344 ffi::GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING => Self::InvalidEncoding,
10345 ffi::GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED => Self::NotRegistered,
10346 ffi::GTK_RECENT_MANAGER_ERROR_READ => Self::Read,
10347 ffi::GTK_RECENT_MANAGER_ERROR_WRITE => Self::Write,
10348 ffi::GTK_RECENT_MANAGER_ERROR_UNKNOWN => Self::Unknown,
10349 value => Self::__Unknown(value),
10350 }
10351 }
10352}
10353
10354impl glib::error::ErrorDomain for RecentManagerError {
10355 #[inline]
10356 fn domain() -> glib::Quark {
10357 skip_assert_initialized!();
10358
10359 unsafe { from_glib(ffi::gtk_recent_manager_error_quark()) }
10360 }
10361
10362 #[inline]
10363 fn code(self) -> i32 {
10364 self.into_glib()
10365 }
10366
10367 #[inline]
10368 #[allow(clippy::match_single_binding)]
10369 fn from(code: i32) -> Option<Self> {
10370 skip_assert_initialized!();
10371 match unsafe { from_glib(code) } {
10372 value => Some(value),
10373 }
10374 }
10375}
10376
10377impl StaticType for RecentManagerError {
10378 #[inline]
10379 #[doc(alias = "gtk_recent_manager_error_get_type")]
10380 fn static_type() -> glib::Type {
10381 unsafe { from_glib(ffi::gtk_recent_manager_error_get_type()) }
10382 }
10383}
10384
10385impl glib::HasParamSpec for RecentManagerError {
10386 type ParamSpec = glib::ParamSpecEnum;
10387 type SetValue = Self;
10388 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10389
10390 fn param_spec_builder() -> Self::BuilderFn {
10391 Self::ParamSpec::builder_with_default
10392 }
10393}
10394
10395impl glib::value::ValueType for RecentManagerError {
10396 type Type = Self;
10397}
10398
10399unsafe impl<'a> glib::value::FromValue<'a> for RecentManagerError {
10400 type Checker = glib::value::GenericValueTypeChecker<Self>;
10401
10402 #[inline]
10403 unsafe fn from_value(value: &'a glib::Value) -> Self {
10404 skip_assert_initialized!();
10405 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10406 }
10407}
10408
10409impl ToValue for RecentManagerError {
10410 #[inline]
10411 fn to_value(&self) -> glib::Value {
10412 let mut value = glib::Value::for_value_type::<Self>();
10413 unsafe {
10414 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10415 }
10416 value
10417 }
10418
10419 #[inline]
10420 fn value_type(&self) -> glib::Type {
10421 Self::static_type()
10422 }
10423}
10424
10425impl From<RecentManagerError> for glib::Value {
10426 #[inline]
10427 fn from(v: RecentManagerError) -> Self {
10428 skip_assert_initialized!();
10429 ToValue::to_value(&v)
10430 }
10431}
10432
10433#[cfg(feature = "v4_22")]
10439#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10440#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10441#[non_exhaustive]
10442#[doc(alias = "GtkReducedMotion")]
10443pub enum ReducedMotion {
10444 #[doc(alias = "GTK_REDUCED_MOTION_NO_PREFERENCE")]
10446 NoPreference,
10447 #[doc(alias = "GTK_REDUCED_MOTION_REDUCE")]
10452 Reduce,
10453 #[doc(hidden)]
10454 __Unknown(i32),
10455}
10456
10457#[cfg(feature = "v4_22")]
10458#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10459#[doc(hidden)]
10460impl IntoGlib for ReducedMotion {
10461 type GlibType = ffi::GtkReducedMotion;
10462
10463 #[inline]
10464 fn into_glib(self) -> ffi::GtkReducedMotion {
10465 match self {
10466 Self::NoPreference => ffi::GTK_REDUCED_MOTION_NO_PREFERENCE,
10467 Self::Reduce => ffi::GTK_REDUCED_MOTION_REDUCE,
10468 Self::__Unknown(value) => value,
10469 }
10470 }
10471}
10472
10473#[cfg(feature = "v4_22")]
10474#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10475#[doc(hidden)]
10476impl FromGlib<ffi::GtkReducedMotion> for ReducedMotion {
10477 #[inline]
10478 unsafe fn from_glib(value: ffi::GtkReducedMotion) -> Self {
10479 skip_assert_initialized!();
10480
10481 match value {
10482 ffi::GTK_REDUCED_MOTION_NO_PREFERENCE => Self::NoPreference,
10483 ffi::GTK_REDUCED_MOTION_REDUCE => Self::Reduce,
10484 value => Self::__Unknown(value),
10485 }
10486 }
10487}
10488
10489#[cfg(feature = "v4_22")]
10490#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10491impl StaticType for ReducedMotion {
10492 #[inline]
10493 #[doc(alias = "gtk_reduced_motion_get_type")]
10494 fn static_type() -> glib::Type {
10495 unsafe { from_glib(ffi::gtk_reduced_motion_get_type()) }
10496 }
10497}
10498
10499#[cfg(feature = "v4_22")]
10500#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10501impl glib::HasParamSpec for ReducedMotion {
10502 type ParamSpec = glib::ParamSpecEnum;
10503 type SetValue = Self;
10504 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10505
10506 fn param_spec_builder() -> Self::BuilderFn {
10507 Self::ParamSpec::builder_with_default
10508 }
10509}
10510
10511#[cfg(feature = "v4_22")]
10512#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10513impl glib::value::ValueType for ReducedMotion {
10514 type Type = Self;
10515}
10516
10517#[cfg(feature = "v4_22")]
10518#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10519unsafe impl<'a> glib::value::FromValue<'a> for ReducedMotion {
10520 type Checker = glib::value::GenericValueTypeChecker<Self>;
10521
10522 #[inline]
10523 unsafe fn from_value(value: &'a glib::Value) -> Self {
10524 skip_assert_initialized!();
10525 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10526 }
10527}
10528
10529#[cfg(feature = "v4_22")]
10530#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10531impl ToValue for ReducedMotion {
10532 #[inline]
10533 fn to_value(&self) -> glib::Value {
10534 let mut value = glib::Value::for_value_type::<Self>();
10535 unsafe {
10536 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10537 }
10538 value
10539 }
10540
10541 #[inline]
10542 fn value_type(&self) -> glib::Type {
10543 Self::static_type()
10544 }
10545}
10546
10547#[cfg(feature = "v4_22")]
10548#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10549impl From<ReducedMotion> for glib::Value {
10550 #[inline]
10551 fn from(v: ReducedMotion) -> Self {
10552 skip_assert_initialized!();
10553 ToValue::to_value(&v)
10554 }
10555}
10556
10557#[cfg(feature = "v4_24")]
10561#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10562#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10563#[non_exhaustive]
10564#[doc(alias = "GtkRestoreReason")]
10565pub enum RestoreReason {
10566 #[doc(alias = "GTK_RESTORE_REASON_PRISTINE")]
10568 Pristine,
10569 #[doc(alias = "GTK_RESTORE_REASON_LAUNCH")]
10571 Launch,
10572 #[doc(alias = "GTK_RESTORE_REASON_RECOVER")]
10574 Recover,
10575 #[doc(alias = "GTK_RESTORE_REASON_RESTORE")]
10577 Restore,
10578 #[doc(hidden)]
10579 __Unknown(i32),
10580}
10581
10582#[cfg(feature = "v4_24")]
10583#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10584#[doc(hidden)]
10585impl IntoGlib for RestoreReason {
10586 type GlibType = ffi::GtkRestoreReason;
10587
10588 #[inline]
10589 fn into_glib(self) -> ffi::GtkRestoreReason {
10590 match self {
10591 Self::Pristine => ffi::GTK_RESTORE_REASON_PRISTINE,
10592 Self::Launch => ffi::GTK_RESTORE_REASON_LAUNCH,
10593 Self::Recover => ffi::GTK_RESTORE_REASON_RECOVER,
10594 Self::Restore => ffi::GTK_RESTORE_REASON_RESTORE,
10595 Self::__Unknown(value) => value,
10596 }
10597 }
10598}
10599
10600#[cfg(feature = "v4_24")]
10601#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10602#[doc(hidden)]
10603impl FromGlib<ffi::GtkRestoreReason> for RestoreReason {
10604 #[inline]
10605 unsafe fn from_glib(value: ffi::GtkRestoreReason) -> Self {
10606 skip_assert_initialized!();
10607
10608 match value {
10609 ffi::GTK_RESTORE_REASON_PRISTINE => Self::Pristine,
10610 ffi::GTK_RESTORE_REASON_LAUNCH => Self::Launch,
10611 ffi::GTK_RESTORE_REASON_RECOVER => Self::Recover,
10612 ffi::GTK_RESTORE_REASON_RESTORE => Self::Restore,
10613 value => Self::__Unknown(value),
10614 }
10615 }
10616}
10617
10618#[cfg(feature = "v4_24")]
10619#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10620impl StaticType for RestoreReason {
10621 #[inline]
10622 #[doc(alias = "gtk_restore_reason_get_type")]
10623 fn static_type() -> glib::Type {
10624 unsafe { from_glib(ffi::gtk_restore_reason_get_type()) }
10625 }
10626}
10627
10628#[cfg(feature = "v4_24")]
10629#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10630impl glib::HasParamSpec for RestoreReason {
10631 type ParamSpec = glib::ParamSpecEnum;
10632 type SetValue = Self;
10633 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10634
10635 fn param_spec_builder() -> Self::BuilderFn {
10636 Self::ParamSpec::builder_with_default
10637 }
10638}
10639
10640#[cfg(feature = "v4_24")]
10641#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10642impl glib::value::ValueType for RestoreReason {
10643 type Type = Self;
10644}
10645
10646#[cfg(feature = "v4_24")]
10647#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10648unsafe impl<'a> glib::value::FromValue<'a> for RestoreReason {
10649 type Checker = glib::value::GenericValueTypeChecker<Self>;
10650
10651 #[inline]
10652 unsafe fn from_value(value: &'a glib::Value) -> Self {
10653 skip_assert_initialized!();
10654 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10655 }
10656}
10657
10658#[cfg(feature = "v4_24")]
10659#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10660impl ToValue for RestoreReason {
10661 #[inline]
10662 fn to_value(&self) -> glib::Value {
10663 let mut value = glib::Value::for_value_type::<Self>();
10664 unsafe {
10665 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10666 }
10667 value
10668 }
10669
10670 #[inline]
10671 fn value_type(&self) -> glib::Type {
10672 Self::static_type()
10673 }
10674}
10675
10676#[cfg(feature = "v4_24")]
10677#[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
10678impl From<RestoreReason> for glib::Value {
10679 #[inline]
10680 fn from(v: RestoreReason) -> Self {
10681 skip_assert_initialized!();
10682 ToValue::to_value(&v)
10683 }
10684}
10685
10686#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10689#[non_exhaustive]
10690#[doc(alias = "GtkRevealerTransitionType")]
10691pub enum RevealerTransitionType {
10692 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_NONE")]
10694 None,
10695 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_CROSSFADE")]
10697 Crossfade,
10698 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT")]
10700 SlideRight,
10701 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT")]
10703 SlideLeft,
10704 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP")]
10706 SlideUp,
10707 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN")]
10709 SlideDown,
10710 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT")]
10712 SwingRight,
10713 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT")]
10715 SwingLeft,
10716 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_UP")]
10718 SwingUp,
10719 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN")]
10721 SwingDown,
10722 #[cfg(feature = "v4_22")]
10725 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10726 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT")]
10727 FadeSlideRight,
10728 #[cfg(feature = "v4_22")]
10731 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10732 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT")]
10733 FadeSlideLeft,
10734 #[cfg(feature = "v4_22")]
10737 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10738 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP")]
10739 FadeSlideUp,
10740 #[cfg(feature = "v4_22")]
10743 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10744 #[doc(alias = "GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN")]
10745 FadeSlideDown,
10746 #[doc(hidden)]
10747 __Unknown(i32),
10748}
10749
10750#[doc(hidden)]
10751impl IntoGlib for RevealerTransitionType {
10752 type GlibType = ffi::GtkRevealerTransitionType;
10753
10754 fn into_glib(self) -> ffi::GtkRevealerTransitionType {
10755 match self {
10756 Self::None => ffi::GTK_REVEALER_TRANSITION_TYPE_NONE,
10757 Self::Crossfade => ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE,
10758 Self::SlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT,
10759 Self::SlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT,
10760 Self::SlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP,
10761 Self::SlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN,
10762 Self::SwingRight => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT,
10763 Self::SwingLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT,
10764 Self::SwingUp => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP,
10765 Self::SwingDown => ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN,
10766 #[cfg(feature = "v4_22")]
10767 Self::FadeSlideRight => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT,
10768 #[cfg(feature = "v4_22")]
10769 Self::FadeSlideLeft => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT,
10770 #[cfg(feature = "v4_22")]
10771 Self::FadeSlideUp => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP,
10772 #[cfg(feature = "v4_22")]
10773 Self::FadeSlideDown => ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN,
10774 Self::__Unknown(value) => value,
10775 }
10776 }
10777}
10778
10779#[doc(hidden)]
10780impl FromGlib<ffi::GtkRevealerTransitionType> for RevealerTransitionType {
10781 unsafe fn from_glib(value: ffi::GtkRevealerTransitionType) -> Self {
10782 skip_assert_initialized!();
10783
10784 match value {
10785 ffi::GTK_REVEALER_TRANSITION_TYPE_NONE => Self::None,
10786 ffi::GTK_REVEALER_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
10787 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
10788 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
10789 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
10790 ffi::GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
10791 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT => Self::SwingRight,
10792 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT => Self::SwingLeft,
10793 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_UP => Self::SwingUp,
10794 ffi::GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN => Self::SwingDown,
10795 #[cfg(feature = "v4_22")]
10796 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT => Self::FadeSlideRight,
10797 #[cfg(feature = "v4_22")]
10798 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT => Self::FadeSlideLeft,
10799 #[cfg(feature = "v4_22")]
10800 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP => Self::FadeSlideUp,
10801 #[cfg(feature = "v4_22")]
10802 ffi::GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN => Self::FadeSlideDown,
10803 value => Self::__Unknown(value),
10804 }
10805 }
10806}
10807
10808impl StaticType for RevealerTransitionType {
10809 #[inline]
10810 #[doc(alias = "gtk_revealer_transition_type_get_type")]
10811 fn static_type() -> glib::Type {
10812 unsafe { from_glib(ffi::gtk_revealer_transition_type_get_type()) }
10813 }
10814}
10815
10816impl glib::HasParamSpec for RevealerTransitionType {
10817 type ParamSpec = glib::ParamSpecEnum;
10818 type SetValue = Self;
10819 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10820
10821 fn param_spec_builder() -> Self::BuilderFn {
10822 Self::ParamSpec::builder_with_default
10823 }
10824}
10825
10826impl glib::value::ValueType for RevealerTransitionType {
10827 type Type = Self;
10828}
10829
10830unsafe impl<'a> glib::value::FromValue<'a> for RevealerTransitionType {
10831 type Checker = glib::value::GenericValueTypeChecker<Self>;
10832
10833 #[inline]
10834 unsafe fn from_value(value: &'a glib::Value) -> Self {
10835 skip_assert_initialized!();
10836 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10837 }
10838}
10839
10840impl ToValue for RevealerTransitionType {
10841 #[inline]
10842 fn to_value(&self) -> glib::Value {
10843 let mut value = glib::Value::for_value_type::<Self>();
10844 unsafe {
10845 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10846 }
10847 value
10848 }
10849
10850 #[inline]
10851 fn value_type(&self) -> glib::Type {
10852 Self::static_type()
10853 }
10854}
10855
10856impl From<RevealerTransitionType> for glib::Value {
10857 #[inline]
10858 fn from(v: RevealerTransitionType) -> Self {
10859 skip_assert_initialized!();
10860 ToValue::to_value(&v)
10861 }
10862}
10863
10864#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10866#[non_exhaustive]
10867#[doc(alias = "GtkScrollStep")]
10868pub enum ScrollStep {
10869 #[doc(alias = "GTK_SCROLL_STEPS")]
10871 Steps,
10872 #[doc(alias = "GTK_SCROLL_PAGES")]
10874 Pages,
10875 #[doc(alias = "GTK_SCROLL_ENDS")]
10877 Ends,
10878 #[doc(alias = "GTK_SCROLL_HORIZONTAL_STEPS")]
10880 HorizontalSteps,
10881 #[doc(alias = "GTK_SCROLL_HORIZONTAL_PAGES")]
10883 HorizontalPages,
10884 #[doc(alias = "GTK_SCROLL_HORIZONTAL_ENDS")]
10886 HorizontalEnds,
10887 #[doc(hidden)]
10888 __Unknown(i32),
10889}
10890
10891#[doc(hidden)]
10892impl IntoGlib for ScrollStep {
10893 type GlibType = ffi::GtkScrollStep;
10894
10895 #[inline]
10896 fn into_glib(self) -> ffi::GtkScrollStep {
10897 match self {
10898 Self::Steps => ffi::GTK_SCROLL_STEPS,
10899 Self::Pages => ffi::GTK_SCROLL_PAGES,
10900 Self::Ends => ffi::GTK_SCROLL_ENDS,
10901 Self::HorizontalSteps => ffi::GTK_SCROLL_HORIZONTAL_STEPS,
10902 Self::HorizontalPages => ffi::GTK_SCROLL_HORIZONTAL_PAGES,
10903 Self::HorizontalEnds => ffi::GTK_SCROLL_HORIZONTAL_ENDS,
10904 Self::__Unknown(value) => value,
10905 }
10906 }
10907}
10908
10909#[doc(hidden)]
10910impl FromGlib<ffi::GtkScrollStep> for ScrollStep {
10911 #[inline]
10912 unsafe fn from_glib(value: ffi::GtkScrollStep) -> Self {
10913 skip_assert_initialized!();
10914
10915 match value {
10916 ffi::GTK_SCROLL_STEPS => Self::Steps,
10917 ffi::GTK_SCROLL_PAGES => Self::Pages,
10918 ffi::GTK_SCROLL_ENDS => Self::Ends,
10919 ffi::GTK_SCROLL_HORIZONTAL_STEPS => Self::HorizontalSteps,
10920 ffi::GTK_SCROLL_HORIZONTAL_PAGES => Self::HorizontalPages,
10921 ffi::GTK_SCROLL_HORIZONTAL_ENDS => Self::HorizontalEnds,
10922 value => Self::__Unknown(value),
10923 }
10924 }
10925}
10926
10927impl StaticType for ScrollStep {
10928 #[inline]
10929 #[doc(alias = "gtk_scroll_step_get_type")]
10930 fn static_type() -> glib::Type {
10931 unsafe { from_glib(ffi::gtk_scroll_step_get_type()) }
10932 }
10933}
10934
10935impl glib::HasParamSpec for ScrollStep {
10936 type ParamSpec = glib::ParamSpecEnum;
10937 type SetValue = Self;
10938 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
10939
10940 fn param_spec_builder() -> Self::BuilderFn {
10941 Self::ParamSpec::builder_with_default
10942 }
10943}
10944
10945impl glib::value::ValueType for ScrollStep {
10946 type Type = Self;
10947}
10948
10949unsafe impl<'a> glib::value::FromValue<'a> for ScrollStep {
10950 type Checker = glib::value::GenericValueTypeChecker<Self>;
10951
10952 #[inline]
10953 unsafe fn from_value(value: &'a glib::Value) -> Self {
10954 skip_assert_initialized!();
10955 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
10956 }
10957}
10958
10959impl ToValue for ScrollStep {
10960 #[inline]
10961 fn to_value(&self) -> glib::Value {
10962 let mut value = glib::Value::for_value_type::<Self>();
10963 unsafe {
10964 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
10965 }
10966 value
10967 }
10968
10969 #[inline]
10970 fn value_type(&self) -> glib::Type {
10971 Self::static_type()
10972 }
10973}
10974
10975impl From<ScrollStep> for glib::Value {
10976 #[inline]
10977 fn from(v: ScrollStep) -> Self {
10978 skip_assert_initialized!();
10979 ToValue::to_value(&v)
10980 }
10981}
10982
10983#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
10985#[non_exhaustive]
10986#[doc(alias = "GtkScrollType")]
10987pub enum ScrollType {
10988 #[doc(alias = "GTK_SCROLL_NONE")]
10990 None,
10991 #[doc(alias = "GTK_SCROLL_JUMP")]
10993 Jump,
10994 #[doc(alias = "GTK_SCROLL_STEP_BACKWARD")]
10996 StepBackward,
10997 #[doc(alias = "GTK_SCROLL_STEP_FORWARD")]
10999 StepForward,
11000 #[doc(alias = "GTK_SCROLL_PAGE_BACKWARD")]
11002 PageBackward,
11003 #[doc(alias = "GTK_SCROLL_PAGE_FORWARD")]
11005 PageForward,
11006 #[doc(alias = "GTK_SCROLL_STEP_UP")]
11008 StepUp,
11009 #[doc(alias = "GTK_SCROLL_STEP_DOWN")]
11011 StepDown,
11012 #[doc(alias = "GTK_SCROLL_PAGE_UP")]
11014 PageUp,
11015 #[doc(alias = "GTK_SCROLL_PAGE_DOWN")]
11017 PageDown,
11018 #[doc(alias = "GTK_SCROLL_STEP_LEFT")]
11020 StepLeft,
11021 #[doc(alias = "GTK_SCROLL_STEP_RIGHT")]
11023 StepRight,
11024 #[doc(alias = "GTK_SCROLL_PAGE_LEFT")]
11026 PageLeft,
11027 #[doc(alias = "GTK_SCROLL_PAGE_RIGHT")]
11029 PageRight,
11030 #[doc(alias = "GTK_SCROLL_START")]
11032 Start,
11033 #[doc(alias = "GTK_SCROLL_END")]
11035 End,
11036 #[doc(hidden)]
11037 __Unknown(i32),
11038}
11039
11040#[doc(hidden)]
11041impl IntoGlib for ScrollType {
11042 type GlibType = ffi::GtkScrollType;
11043
11044 fn into_glib(self) -> ffi::GtkScrollType {
11045 match self {
11046 Self::None => ffi::GTK_SCROLL_NONE,
11047 Self::Jump => ffi::GTK_SCROLL_JUMP,
11048 Self::StepBackward => ffi::GTK_SCROLL_STEP_BACKWARD,
11049 Self::StepForward => ffi::GTK_SCROLL_STEP_FORWARD,
11050 Self::PageBackward => ffi::GTK_SCROLL_PAGE_BACKWARD,
11051 Self::PageForward => ffi::GTK_SCROLL_PAGE_FORWARD,
11052 Self::StepUp => ffi::GTK_SCROLL_STEP_UP,
11053 Self::StepDown => ffi::GTK_SCROLL_STEP_DOWN,
11054 Self::PageUp => ffi::GTK_SCROLL_PAGE_UP,
11055 Self::PageDown => ffi::GTK_SCROLL_PAGE_DOWN,
11056 Self::StepLeft => ffi::GTK_SCROLL_STEP_LEFT,
11057 Self::StepRight => ffi::GTK_SCROLL_STEP_RIGHT,
11058 Self::PageLeft => ffi::GTK_SCROLL_PAGE_LEFT,
11059 Self::PageRight => ffi::GTK_SCROLL_PAGE_RIGHT,
11060 Self::Start => ffi::GTK_SCROLL_START,
11061 Self::End => ffi::GTK_SCROLL_END,
11062 Self::__Unknown(value) => value,
11063 }
11064 }
11065}
11066
11067#[doc(hidden)]
11068impl FromGlib<ffi::GtkScrollType> for ScrollType {
11069 unsafe fn from_glib(value: ffi::GtkScrollType) -> Self {
11070 skip_assert_initialized!();
11071
11072 match value {
11073 ffi::GTK_SCROLL_NONE => Self::None,
11074 ffi::GTK_SCROLL_JUMP => Self::Jump,
11075 ffi::GTK_SCROLL_STEP_BACKWARD => Self::StepBackward,
11076 ffi::GTK_SCROLL_STEP_FORWARD => Self::StepForward,
11077 ffi::GTK_SCROLL_PAGE_BACKWARD => Self::PageBackward,
11078 ffi::GTK_SCROLL_PAGE_FORWARD => Self::PageForward,
11079 ffi::GTK_SCROLL_STEP_UP => Self::StepUp,
11080 ffi::GTK_SCROLL_STEP_DOWN => Self::StepDown,
11081 ffi::GTK_SCROLL_PAGE_UP => Self::PageUp,
11082 ffi::GTK_SCROLL_PAGE_DOWN => Self::PageDown,
11083 ffi::GTK_SCROLL_STEP_LEFT => Self::StepLeft,
11084 ffi::GTK_SCROLL_STEP_RIGHT => Self::StepRight,
11085 ffi::GTK_SCROLL_PAGE_LEFT => Self::PageLeft,
11086 ffi::GTK_SCROLL_PAGE_RIGHT => Self::PageRight,
11087 ffi::GTK_SCROLL_START => Self::Start,
11088 ffi::GTK_SCROLL_END => Self::End,
11089 value => Self::__Unknown(value),
11090 }
11091 }
11092}
11093
11094impl StaticType for ScrollType {
11095 #[inline]
11096 #[doc(alias = "gtk_scroll_type_get_type")]
11097 fn static_type() -> glib::Type {
11098 unsafe { from_glib(ffi::gtk_scroll_type_get_type()) }
11099 }
11100}
11101
11102impl glib::HasParamSpec for ScrollType {
11103 type ParamSpec = glib::ParamSpecEnum;
11104 type SetValue = Self;
11105 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11106
11107 fn param_spec_builder() -> Self::BuilderFn {
11108 Self::ParamSpec::builder_with_default
11109 }
11110}
11111
11112impl glib::value::ValueType for ScrollType {
11113 type Type = Self;
11114}
11115
11116unsafe impl<'a> glib::value::FromValue<'a> for ScrollType {
11117 type Checker = glib::value::GenericValueTypeChecker<Self>;
11118
11119 #[inline]
11120 unsafe fn from_value(value: &'a glib::Value) -> Self {
11121 skip_assert_initialized!();
11122 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11123 }
11124}
11125
11126impl ToValue for ScrollType {
11127 #[inline]
11128 fn to_value(&self) -> glib::Value {
11129 let mut value = glib::Value::for_value_type::<Self>();
11130 unsafe {
11131 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11132 }
11133 value
11134 }
11135
11136 #[inline]
11137 fn value_type(&self) -> glib::Type {
11138 Self::static_type()
11139 }
11140}
11141
11142impl From<ScrollType> for glib::Value {
11143 #[inline]
11144 fn from(v: ScrollType) -> Self {
11145 skip_assert_initialized!();
11146 ToValue::to_value(&v)
11147 }
11148}
11149
11150#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11153#[non_exhaustive]
11154#[doc(alias = "GtkScrollablePolicy")]
11155pub enum ScrollablePolicy {
11156 #[doc(alias = "GTK_SCROLL_MINIMUM")]
11158 Minimum,
11159 #[doc(alias = "GTK_SCROLL_NATURAL")]
11161 Natural,
11162 #[doc(hidden)]
11163 __Unknown(i32),
11164}
11165
11166#[doc(hidden)]
11167impl IntoGlib for ScrollablePolicy {
11168 type GlibType = ffi::GtkScrollablePolicy;
11169
11170 #[inline]
11171 fn into_glib(self) -> ffi::GtkScrollablePolicy {
11172 match self {
11173 Self::Minimum => ffi::GTK_SCROLL_MINIMUM,
11174 Self::Natural => ffi::GTK_SCROLL_NATURAL,
11175 Self::__Unknown(value) => value,
11176 }
11177 }
11178}
11179
11180#[doc(hidden)]
11181impl FromGlib<ffi::GtkScrollablePolicy> for ScrollablePolicy {
11182 #[inline]
11183 unsafe fn from_glib(value: ffi::GtkScrollablePolicy) -> Self {
11184 skip_assert_initialized!();
11185
11186 match value {
11187 ffi::GTK_SCROLL_MINIMUM => Self::Minimum,
11188 ffi::GTK_SCROLL_NATURAL => Self::Natural,
11189 value => Self::__Unknown(value),
11190 }
11191 }
11192}
11193
11194impl StaticType for ScrollablePolicy {
11195 #[inline]
11196 #[doc(alias = "gtk_scrollable_policy_get_type")]
11197 fn static_type() -> glib::Type {
11198 unsafe { from_glib(ffi::gtk_scrollable_policy_get_type()) }
11199 }
11200}
11201
11202impl glib::HasParamSpec for ScrollablePolicy {
11203 type ParamSpec = glib::ParamSpecEnum;
11204 type SetValue = Self;
11205 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11206
11207 fn param_spec_builder() -> Self::BuilderFn {
11208 Self::ParamSpec::builder_with_default
11209 }
11210}
11211
11212impl glib::value::ValueType for ScrollablePolicy {
11213 type Type = Self;
11214}
11215
11216unsafe impl<'a> glib::value::FromValue<'a> for ScrollablePolicy {
11217 type Checker = glib::value::GenericValueTypeChecker<Self>;
11218
11219 #[inline]
11220 unsafe fn from_value(value: &'a glib::Value) -> Self {
11221 skip_assert_initialized!();
11222 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11223 }
11224}
11225
11226impl ToValue for ScrollablePolicy {
11227 #[inline]
11228 fn to_value(&self) -> glib::Value {
11229 let mut value = glib::Value::for_value_type::<Self>();
11230 unsafe {
11231 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11232 }
11233 value
11234 }
11235
11236 #[inline]
11237 fn value_type(&self) -> glib::Type {
11238 Self::static_type()
11239 }
11240}
11241
11242impl From<ScrollablePolicy> for glib::Value {
11243 #[inline]
11244 fn from(v: ScrollablePolicy) -> Self {
11245 skip_assert_initialized!();
11246 ToValue::to_value(&v)
11247 }
11248}
11249
11250#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11252#[non_exhaustive]
11253#[doc(alias = "GtkSelectionMode")]
11254pub enum SelectionMode {
11255 #[doc(alias = "GTK_SELECTION_NONE")]
11257 None,
11258 #[doc(alias = "GTK_SELECTION_SINGLE")]
11260 Single,
11261 #[doc(alias = "GTK_SELECTION_BROWSE")]
11268 Browse,
11269 #[doc(alias = "GTK_SELECTION_MULTIPLE")]
11274 Multiple,
11275 #[doc(hidden)]
11276 __Unknown(i32),
11277}
11278
11279#[doc(hidden)]
11280impl IntoGlib for SelectionMode {
11281 type GlibType = ffi::GtkSelectionMode;
11282
11283 #[inline]
11284 fn into_glib(self) -> ffi::GtkSelectionMode {
11285 match self {
11286 Self::None => ffi::GTK_SELECTION_NONE,
11287 Self::Single => ffi::GTK_SELECTION_SINGLE,
11288 Self::Browse => ffi::GTK_SELECTION_BROWSE,
11289 Self::Multiple => ffi::GTK_SELECTION_MULTIPLE,
11290 Self::__Unknown(value) => value,
11291 }
11292 }
11293}
11294
11295#[doc(hidden)]
11296impl FromGlib<ffi::GtkSelectionMode> for SelectionMode {
11297 #[inline]
11298 unsafe fn from_glib(value: ffi::GtkSelectionMode) -> Self {
11299 skip_assert_initialized!();
11300
11301 match value {
11302 ffi::GTK_SELECTION_NONE => Self::None,
11303 ffi::GTK_SELECTION_SINGLE => Self::Single,
11304 ffi::GTK_SELECTION_BROWSE => Self::Browse,
11305 ffi::GTK_SELECTION_MULTIPLE => Self::Multiple,
11306 value => Self::__Unknown(value),
11307 }
11308 }
11309}
11310
11311impl StaticType for SelectionMode {
11312 #[inline]
11313 #[doc(alias = "gtk_selection_mode_get_type")]
11314 fn static_type() -> glib::Type {
11315 unsafe { from_glib(ffi::gtk_selection_mode_get_type()) }
11316 }
11317}
11318
11319impl glib::HasParamSpec for SelectionMode {
11320 type ParamSpec = glib::ParamSpecEnum;
11321 type SetValue = Self;
11322 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11323
11324 fn param_spec_builder() -> Self::BuilderFn {
11325 Self::ParamSpec::builder_with_default
11326 }
11327}
11328
11329impl glib::value::ValueType for SelectionMode {
11330 type Type = Self;
11331}
11332
11333unsafe impl<'a> glib::value::FromValue<'a> for SelectionMode {
11334 type Checker = glib::value::GenericValueTypeChecker<Self>;
11335
11336 #[inline]
11337 unsafe fn from_value(value: &'a glib::Value) -> Self {
11338 skip_assert_initialized!();
11339 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11340 }
11341}
11342
11343impl ToValue for SelectionMode {
11344 #[inline]
11345 fn to_value(&self) -> glib::Value {
11346 let mut value = glib::Value::for_value_type::<Self>();
11347 unsafe {
11348 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11349 }
11350 value
11351 }
11352
11353 #[inline]
11354 fn value_type(&self) -> glib::Type {
11355 Self::static_type()
11356 }
11357}
11358
11359impl From<SelectionMode> for glib::Value {
11360 #[inline]
11361 fn from(v: SelectionMode) -> Self {
11362 skip_assert_initialized!();
11363 ToValue::to_value(&v)
11364 }
11365}
11366
11367#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11370#[non_exhaustive]
11371#[doc(alias = "GtkSensitivityType")]
11372pub enum SensitivityType {
11373 #[doc(alias = "GTK_SENSITIVITY_AUTO")]
11376 Auto,
11377 #[doc(alias = "GTK_SENSITIVITY_ON")]
11379 On,
11380 #[doc(alias = "GTK_SENSITIVITY_OFF")]
11382 Off,
11383 #[doc(hidden)]
11384 __Unknown(i32),
11385}
11386
11387#[doc(hidden)]
11388impl IntoGlib for SensitivityType {
11389 type GlibType = ffi::GtkSensitivityType;
11390
11391 #[inline]
11392 fn into_glib(self) -> ffi::GtkSensitivityType {
11393 match self {
11394 Self::Auto => ffi::GTK_SENSITIVITY_AUTO,
11395 Self::On => ffi::GTK_SENSITIVITY_ON,
11396 Self::Off => ffi::GTK_SENSITIVITY_OFF,
11397 Self::__Unknown(value) => value,
11398 }
11399 }
11400}
11401
11402#[doc(hidden)]
11403impl FromGlib<ffi::GtkSensitivityType> for SensitivityType {
11404 #[inline]
11405 unsafe fn from_glib(value: ffi::GtkSensitivityType) -> Self {
11406 skip_assert_initialized!();
11407
11408 match value {
11409 ffi::GTK_SENSITIVITY_AUTO => Self::Auto,
11410 ffi::GTK_SENSITIVITY_ON => Self::On,
11411 ffi::GTK_SENSITIVITY_OFF => Self::Off,
11412 value => Self::__Unknown(value),
11413 }
11414 }
11415}
11416
11417impl StaticType for SensitivityType {
11418 #[inline]
11419 #[doc(alias = "gtk_sensitivity_type_get_type")]
11420 fn static_type() -> glib::Type {
11421 unsafe { from_glib(ffi::gtk_sensitivity_type_get_type()) }
11422 }
11423}
11424
11425impl glib::HasParamSpec for SensitivityType {
11426 type ParamSpec = glib::ParamSpecEnum;
11427 type SetValue = Self;
11428 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11429
11430 fn param_spec_builder() -> Self::BuilderFn {
11431 Self::ParamSpec::builder_with_default
11432 }
11433}
11434
11435impl glib::value::ValueType for SensitivityType {
11436 type Type = Self;
11437}
11438
11439unsafe impl<'a> glib::value::FromValue<'a> for SensitivityType {
11440 type Checker = glib::value::GenericValueTypeChecker<Self>;
11441
11442 #[inline]
11443 unsafe fn from_value(value: &'a glib::Value) -> Self {
11444 skip_assert_initialized!();
11445 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11446 }
11447}
11448
11449impl ToValue for SensitivityType {
11450 #[inline]
11451 fn to_value(&self) -> glib::Value {
11452 let mut value = glib::Value::for_value_type::<Self>();
11453 unsafe {
11454 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11455 }
11456 value
11457 }
11458
11459 #[inline]
11460 fn value_type(&self) -> glib::Type {
11461 Self::static_type()
11462 }
11463}
11464
11465impl From<SensitivityType> for glib::Value {
11466 #[inline]
11467 fn from(v: SensitivityType) -> Self {
11468 skip_assert_initialized!();
11469 ToValue::to_value(&v)
11470 }
11471}
11472
11473#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11476#[non_exhaustive]
11477#[doc(alias = "GtkShortcutScope")]
11478pub enum ShortcutScope {
11479 #[doc(alias = "GTK_SHORTCUT_SCOPE_LOCAL")]
11482 Local,
11483 #[doc(alias = "GTK_SHORTCUT_SCOPE_MANAGED")]
11486 Managed,
11487 #[doc(alias = "GTK_SHORTCUT_SCOPE_GLOBAL")]
11490 Global,
11491 #[doc(hidden)]
11492 __Unknown(i32),
11493}
11494
11495#[doc(hidden)]
11496impl IntoGlib for ShortcutScope {
11497 type GlibType = ffi::GtkShortcutScope;
11498
11499 #[inline]
11500 fn into_glib(self) -> ffi::GtkShortcutScope {
11501 match self {
11502 Self::Local => ffi::GTK_SHORTCUT_SCOPE_LOCAL,
11503 Self::Managed => ffi::GTK_SHORTCUT_SCOPE_MANAGED,
11504 Self::Global => ffi::GTK_SHORTCUT_SCOPE_GLOBAL,
11505 Self::__Unknown(value) => value,
11506 }
11507 }
11508}
11509
11510#[doc(hidden)]
11511impl FromGlib<ffi::GtkShortcutScope> for ShortcutScope {
11512 #[inline]
11513 unsafe fn from_glib(value: ffi::GtkShortcutScope) -> Self {
11514 skip_assert_initialized!();
11515
11516 match value {
11517 ffi::GTK_SHORTCUT_SCOPE_LOCAL => Self::Local,
11518 ffi::GTK_SHORTCUT_SCOPE_MANAGED => Self::Managed,
11519 ffi::GTK_SHORTCUT_SCOPE_GLOBAL => Self::Global,
11520 value => Self::__Unknown(value),
11521 }
11522 }
11523}
11524
11525impl StaticType for ShortcutScope {
11526 #[inline]
11527 #[doc(alias = "gtk_shortcut_scope_get_type")]
11528 fn static_type() -> glib::Type {
11529 unsafe { from_glib(ffi::gtk_shortcut_scope_get_type()) }
11530 }
11531}
11532
11533impl glib::HasParamSpec for ShortcutScope {
11534 type ParamSpec = glib::ParamSpecEnum;
11535 type SetValue = Self;
11536 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11537
11538 fn param_spec_builder() -> Self::BuilderFn {
11539 Self::ParamSpec::builder_with_default
11540 }
11541}
11542
11543impl glib::value::ValueType for ShortcutScope {
11544 type Type = Self;
11545}
11546
11547unsafe impl<'a> glib::value::FromValue<'a> for ShortcutScope {
11548 type Checker = glib::value::GenericValueTypeChecker<Self>;
11549
11550 #[inline]
11551 unsafe fn from_value(value: &'a glib::Value) -> Self {
11552 skip_assert_initialized!();
11553 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11554 }
11555}
11556
11557impl ToValue for ShortcutScope {
11558 #[inline]
11559 fn to_value(&self) -> glib::Value {
11560 let mut value = glib::Value::for_value_type::<Self>();
11561 unsafe {
11562 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11563 }
11564 value
11565 }
11566
11567 #[inline]
11568 fn value_type(&self) -> glib::Type {
11569 Self::static_type()
11570 }
11571}
11572
11573impl From<ShortcutScope> for glib::Value {
11574 #[inline]
11575 fn from(v: ShortcutScope) -> Self {
11576 skip_assert_initialized!();
11577 ToValue::to_value(&v)
11578 }
11579}
11580
11581#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11585#[non_exhaustive]
11586#[doc(alias = "GtkShortcutType")]
11587pub enum ShortcutType {
11588 #[doc(alias = "GTK_SHORTCUT_ACCELERATOR")]
11591 Accelerator,
11592 #[doc(alias = "GTK_SHORTCUT_GESTURE_PINCH")]
11594 GesturePinch,
11595 #[doc(alias = "GTK_SHORTCUT_GESTURE_STRETCH")]
11597 GestureStretch,
11598 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE")]
11600 GestureRotateClockwise,
11601 #[doc(alias = "GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE")]
11603 GestureRotateCounterclockwise,
11604 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT")]
11606 GestureTwoFingerSwipeLeft,
11607 #[doc(alias = "GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT")]
11609 GestureTwoFingerSwipeRight,
11610 #[doc(alias = "GTK_SHORTCUT_GESTURE")]
11613 Gesture,
11614 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_LEFT")]
11616 GestureSwipeLeft,
11617 #[doc(alias = "GTK_SHORTCUT_GESTURE_SWIPE_RIGHT")]
11619 GestureSwipeRight,
11620 #[doc(hidden)]
11621 __Unknown(i32),
11622}
11623
11624#[doc(hidden)]
11625impl IntoGlib for ShortcutType {
11626 type GlibType = ffi::GtkShortcutType;
11627
11628 #[inline]
11629 fn into_glib(self) -> ffi::GtkShortcutType {
11630 match self {
11631 Self::Accelerator => ffi::GTK_SHORTCUT_ACCELERATOR,
11632 Self::GesturePinch => ffi::GTK_SHORTCUT_GESTURE_PINCH,
11633 Self::GestureStretch => ffi::GTK_SHORTCUT_GESTURE_STRETCH,
11634 Self::GestureRotateClockwise => ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE,
11635 Self::GestureRotateCounterclockwise => {
11636 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE
11637 }
11638 Self::GestureTwoFingerSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT,
11639 Self::GestureTwoFingerSwipeRight => ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT,
11640 Self::Gesture => ffi::GTK_SHORTCUT_GESTURE,
11641 Self::GestureSwipeLeft => ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT,
11642 Self::GestureSwipeRight => ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT,
11643 Self::__Unknown(value) => value,
11644 }
11645 }
11646}
11647
11648#[doc(hidden)]
11649impl FromGlib<ffi::GtkShortcutType> for ShortcutType {
11650 #[inline]
11651 unsafe fn from_glib(value: ffi::GtkShortcutType) -> Self {
11652 skip_assert_initialized!();
11653
11654 match value {
11655 ffi::GTK_SHORTCUT_ACCELERATOR => Self::Accelerator,
11656 ffi::GTK_SHORTCUT_GESTURE_PINCH => Self::GesturePinch,
11657 ffi::GTK_SHORTCUT_GESTURE_STRETCH => Self::GestureStretch,
11658 ffi::GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE => Self::GestureRotateClockwise,
11659 ffi::GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE => {
11660 Self::GestureRotateCounterclockwise
11661 }
11662 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT => Self::GestureTwoFingerSwipeLeft,
11663 ffi::GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT => Self::GestureTwoFingerSwipeRight,
11664 ffi::GTK_SHORTCUT_GESTURE => Self::Gesture,
11665 ffi::GTK_SHORTCUT_GESTURE_SWIPE_LEFT => Self::GestureSwipeLeft,
11666 ffi::GTK_SHORTCUT_GESTURE_SWIPE_RIGHT => Self::GestureSwipeRight,
11667 value => Self::__Unknown(value),
11668 }
11669 }
11670}
11671
11672impl StaticType for ShortcutType {
11673 #[inline]
11674 #[doc(alias = "gtk_shortcut_type_get_type")]
11675 fn static_type() -> glib::Type {
11676 unsafe { from_glib(ffi::gtk_shortcut_type_get_type()) }
11677 }
11678}
11679
11680impl glib::HasParamSpec for ShortcutType {
11681 type ParamSpec = glib::ParamSpecEnum;
11682 type SetValue = Self;
11683 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11684
11685 fn param_spec_builder() -> Self::BuilderFn {
11686 Self::ParamSpec::builder_with_default
11687 }
11688}
11689
11690impl glib::value::ValueType for ShortcutType {
11691 type Type = Self;
11692}
11693
11694unsafe impl<'a> glib::value::FromValue<'a> for ShortcutType {
11695 type Checker = glib::value::GenericValueTypeChecker<Self>;
11696
11697 #[inline]
11698 unsafe fn from_value(value: &'a glib::Value) -> Self {
11699 skip_assert_initialized!();
11700 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11701 }
11702}
11703
11704impl ToValue for ShortcutType {
11705 #[inline]
11706 fn to_value(&self) -> glib::Value {
11707 let mut value = glib::Value::for_value_type::<Self>();
11708 unsafe {
11709 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11710 }
11711 value
11712 }
11713
11714 #[inline]
11715 fn value_type(&self) -> glib::Type {
11716 Self::static_type()
11717 }
11718}
11719
11720impl From<ShortcutType> for glib::Value {
11721 #[inline]
11722 fn from(v: ShortcutType) -> Self {
11723 skip_assert_initialized!();
11724 ToValue::to_value(&v)
11725 }
11726}
11727
11728#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11731#[non_exhaustive]
11732#[doc(alias = "GtkSizeGroupMode")]
11733pub enum SizeGroupMode {
11734 #[doc(alias = "GTK_SIZE_GROUP_NONE")]
11736 None,
11737 #[doc(alias = "GTK_SIZE_GROUP_HORIZONTAL")]
11739 Horizontal,
11740 #[doc(alias = "GTK_SIZE_GROUP_VERTICAL")]
11742 Vertical,
11743 #[doc(alias = "GTK_SIZE_GROUP_BOTH")]
11745 Both,
11746 #[doc(hidden)]
11747 __Unknown(i32),
11748}
11749
11750#[doc(hidden)]
11751impl IntoGlib for SizeGroupMode {
11752 type GlibType = ffi::GtkSizeGroupMode;
11753
11754 #[inline]
11755 fn into_glib(self) -> ffi::GtkSizeGroupMode {
11756 match self {
11757 Self::None => ffi::GTK_SIZE_GROUP_NONE,
11758 Self::Horizontal => ffi::GTK_SIZE_GROUP_HORIZONTAL,
11759 Self::Vertical => ffi::GTK_SIZE_GROUP_VERTICAL,
11760 Self::Both => ffi::GTK_SIZE_GROUP_BOTH,
11761 Self::__Unknown(value) => value,
11762 }
11763 }
11764}
11765
11766#[doc(hidden)]
11767impl FromGlib<ffi::GtkSizeGroupMode> for SizeGroupMode {
11768 #[inline]
11769 unsafe fn from_glib(value: ffi::GtkSizeGroupMode) -> Self {
11770 skip_assert_initialized!();
11771
11772 match value {
11773 ffi::GTK_SIZE_GROUP_NONE => Self::None,
11774 ffi::GTK_SIZE_GROUP_HORIZONTAL => Self::Horizontal,
11775 ffi::GTK_SIZE_GROUP_VERTICAL => Self::Vertical,
11776 ffi::GTK_SIZE_GROUP_BOTH => Self::Both,
11777 value => Self::__Unknown(value),
11778 }
11779 }
11780}
11781
11782impl StaticType for SizeGroupMode {
11783 #[inline]
11784 #[doc(alias = "gtk_size_group_mode_get_type")]
11785 fn static_type() -> glib::Type {
11786 unsafe { from_glib(ffi::gtk_size_group_mode_get_type()) }
11787 }
11788}
11789
11790impl glib::HasParamSpec for SizeGroupMode {
11791 type ParamSpec = glib::ParamSpecEnum;
11792 type SetValue = Self;
11793 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11794
11795 fn param_spec_builder() -> Self::BuilderFn {
11796 Self::ParamSpec::builder_with_default
11797 }
11798}
11799
11800impl glib::value::ValueType for SizeGroupMode {
11801 type Type = Self;
11802}
11803
11804unsafe impl<'a> glib::value::FromValue<'a> for SizeGroupMode {
11805 type Checker = glib::value::GenericValueTypeChecker<Self>;
11806
11807 #[inline]
11808 unsafe fn from_value(value: &'a glib::Value) -> Self {
11809 skip_assert_initialized!();
11810 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11811 }
11812}
11813
11814impl ToValue for SizeGroupMode {
11815 #[inline]
11816 fn to_value(&self) -> glib::Value {
11817 let mut value = glib::Value::for_value_type::<Self>();
11818 unsafe {
11819 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11820 }
11821 value
11822 }
11823
11824 #[inline]
11825 fn value_type(&self) -> glib::Type {
11826 Self::static_type()
11827 }
11828}
11829
11830impl From<SizeGroupMode> for glib::Value {
11831 #[inline]
11832 fn from(v: SizeGroupMode) -> Self {
11833 skip_assert_initialized!();
11834 ToValue::to_value(&v)
11835 }
11836}
11837
11838#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11841#[non_exhaustive]
11842#[doc(alias = "GtkSizeRequestMode")]
11843pub enum SizeRequestMode {
11844 #[doc(alias = "GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH")]
11846 HeightForWidth,
11847 #[doc(alias = "GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT")]
11849 WidthForHeight,
11850 #[doc(alias = "GTK_SIZE_REQUEST_CONSTANT_SIZE")]
11852 ConstantSize,
11853 #[doc(hidden)]
11854 __Unknown(i32),
11855}
11856
11857#[doc(hidden)]
11858impl IntoGlib for SizeRequestMode {
11859 type GlibType = ffi::GtkSizeRequestMode;
11860
11861 #[inline]
11862 fn into_glib(self) -> ffi::GtkSizeRequestMode {
11863 match self {
11864 Self::HeightForWidth => ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH,
11865 Self::WidthForHeight => ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT,
11866 Self::ConstantSize => ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE,
11867 Self::__Unknown(value) => value,
11868 }
11869 }
11870}
11871
11872#[doc(hidden)]
11873impl FromGlib<ffi::GtkSizeRequestMode> for SizeRequestMode {
11874 #[inline]
11875 unsafe fn from_glib(value: ffi::GtkSizeRequestMode) -> Self {
11876 skip_assert_initialized!();
11877
11878 match value {
11879 ffi::GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH => Self::HeightForWidth,
11880 ffi::GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT => Self::WidthForHeight,
11881 ffi::GTK_SIZE_REQUEST_CONSTANT_SIZE => Self::ConstantSize,
11882 value => Self::__Unknown(value),
11883 }
11884 }
11885}
11886
11887impl StaticType for SizeRequestMode {
11888 #[inline]
11889 #[doc(alias = "gtk_size_request_mode_get_type")]
11890 fn static_type() -> glib::Type {
11891 unsafe { from_glib(ffi::gtk_size_request_mode_get_type()) }
11892 }
11893}
11894
11895impl glib::HasParamSpec for SizeRequestMode {
11896 type ParamSpec = glib::ParamSpecEnum;
11897 type SetValue = Self;
11898 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11899
11900 fn param_spec_builder() -> Self::BuilderFn {
11901 Self::ParamSpec::builder_with_default
11902 }
11903}
11904
11905impl glib::value::ValueType for SizeRequestMode {
11906 type Type = Self;
11907}
11908
11909unsafe impl<'a> glib::value::FromValue<'a> for SizeRequestMode {
11910 type Checker = glib::value::GenericValueTypeChecker<Self>;
11911
11912 #[inline]
11913 unsafe fn from_value(value: &'a glib::Value) -> Self {
11914 skip_assert_initialized!();
11915 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
11916 }
11917}
11918
11919impl ToValue for SizeRequestMode {
11920 #[inline]
11921 fn to_value(&self) -> glib::Value {
11922 let mut value = glib::Value::for_value_type::<Self>();
11923 unsafe {
11924 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
11925 }
11926 value
11927 }
11928
11929 #[inline]
11930 fn value_type(&self) -> glib::Type {
11931 Self::static_type()
11932 }
11933}
11934
11935impl From<SizeRequestMode> for glib::Value {
11936 #[inline]
11937 fn from(v: SizeRequestMode) -> Self {
11938 skip_assert_initialized!();
11939 ToValue::to_value(&v)
11940 }
11941}
11942
11943#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
11945#[non_exhaustive]
11946#[doc(alias = "GtkSortType")]
11947pub enum SortType {
11948 #[doc(alias = "GTK_SORT_ASCENDING")]
11950 Ascending,
11951 #[doc(alias = "GTK_SORT_DESCENDING")]
11953 Descending,
11954 #[doc(hidden)]
11955 __Unknown(i32),
11956}
11957
11958#[doc(hidden)]
11959impl IntoGlib for SortType {
11960 type GlibType = ffi::GtkSortType;
11961
11962 #[inline]
11963 fn into_glib(self) -> ffi::GtkSortType {
11964 match self {
11965 Self::Ascending => ffi::GTK_SORT_ASCENDING,
11966 Self::Descending => ffi::GTK_SORT_DESCENDING,
11967 Self::__Unknown(value) => value,
11968 }
11969 }
11970}
11971
11972#[doc(hidden)]
11973impl FromGlib<ffi::GtkSortType> for SortType {
11974 #[inline]
11975 unsafe fn from_glib(value: ffi::GtkSortType) -> Self {
11976 skip_assert_initialized!();
11977
11978 match value {
11979 ffi::GTK_SORT_ASCENDING => Self::Ascending,
11980 ffi::GTK_SORT_DESCENDING => Self::Descending,
11981 value => Self::__Unknown(value),
11982 }
11983 }
11984}
11985
11986impl StaticType for SortType {
11987 #[inline]
11988 #[doc(alias = "gtk_sort_type_get_type")]
11989 fn static_type() -> glib::Type {
11990 unsafe { from_glib(ffi::gtk_sort_type_get_type()) }
11991 }
11992}
11993
11994impl glib::HasParamSpec for SortType {
11995 type ParamSpec = glib::ParamSpecEnum;
11996 type SetValue = Self;
11997 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
11998
11999 fn param_spec_builder() -> Self::BuilderFn {
12000 Self::ParamSpec::builder_with_default
12001 }
12002}
12003
12004impl glib::value::ValueType for SortType {
12005 type Type = Self;
12006}
12007
12008unsafe impl<'a> glib::value::FromValue<'a> for SortType {
12009 type Checker = glib::value::GenericValueTypeChecker<Self>;
12010
12011 #[inline]
12012 unsafe fn from_value(value: &'a glib::Value) -> Self {
12013 skip_assert_initialized!();
12014 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12015 }
12016}
12017
12018impl ToValue for SortType {
12019 #[inline]
12020 fn to_value(&self) -> glib::Value {
12021 let mut value = glib::Value::for_value_type::<Self>();
12022 unsafe {
12023 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12024 }
12025 value
12026 }
12027
12028 #[inline]
12029 fn value_type(&self) -> glib::Type {
12030 Self::static_type()
12031 }
12032}
12033
12034impl From<SortType> for glib::Value {
12035 #[inline]
12036 fn from(v: SortType) -> Self {
12037 skip_assert_initialized!();
12038 ToValue::to_value(&v)
12039 }
12040}
12041
12042#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12045#[non_exhaustive]
12046#[doc(alias = "GtkSorterChange")]
12047pub enum SorterChange {
12048 #[doc(alias = "GTK_SORTER_CHANGE_DIFFERENT")]
12051 Different,
12052 #[doc(alias = "GTK_SORTER_CHANGE_INVERTED")]
12056 Inverted,
12057 #[doc(alias = "GTK_SORTER_CHANGE_LESS_STRICT")]
12060 LessStrict,
12061 #[doc(alias = "GTK_SORTER_CHANGE_MORE_STRICT")]
12064 MoreStrict,
12065 #[doc(hidden)]
12066 __Unknown(i32),
12067}
12068
12069#[doc(hidden)]
12070impl IntoGlib for SorterChange {
12071 type GlibType = ffi::GtkSorterChange;
12072
12073 #[inline]
12074 fn into_glib(self) -> ffi::GtkSorterChange {
12075 match self {
12076 Self::Different => ffi::GTK_SORTER_CHANGE_DIFFERENT,
12077 Self::Inverted => ffi::GTK_SORTER_CHANGE_INVERTED,
12078 Self::LessStrict => ffi::GTK_SORTER_CHANGE_LESS_STRICT,
12079 Self::MoreStrict => ffi::GTK_SORTER_CHANGE_MORE_STRICT,
12080 Self::__Unknown(value) => value,
12081 }
12082 }
12083}
12084
12085#[doc(hidden)]
12086impl FromGlib<ffi::GtkSorterChange> for SorterChange {
12087 #[inline]
12088 unsafe fn from_glib(value: ffi::GtkSorterChange) -> Self {
12089 skip_assert_initialized!();
12090
12091 match value {
12092 ffi::GTK_SORTER_CHANGE_DIFFERENT => Self::Different,
12093 ffi::GTK_SORTER_CHANGE_INVERTED => Self::Inverted,
12094 ffi::GTK_SORTER_CHANGE_LESS_STRICT => Self::LessStrict,
12095 ffi::GTK_SORTER_CHANGE_MORE_STRICT => Self::MoreStrict,
12096 value => Self::__Unknown(value),
12097 }
12098 }
12099}
12100
12101impl StaticType for SorterChange {
12102 #[inline]
12103 #[doc(alias = "gtk_sorter_change_get_type")]
12104 fn static_type() -> glib::Type {
12105 unsafe { from_glib(ffi::gtk_sorter_change_get_type()) }
12106 }
12107}
12108
12109impl glib::HasParamSpec for SorterChange {
12110 type ParamSpec = glib::ParamSpecEnum;
12111 type SetValue = Self;
12112 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12113
12114 fn param_spec_builder() -> Self::BuilderFn {
12115 Self::ParamSpec::builder_with_default
12116 }
12117}
12118
12119impl glib::value::ValueType for SorterChange {
12120 type Type = Self;
12121}
12122
12123unsafe impl<'a> glib::value::FromValue<'a> for SorterChange {
12124 type Checker = glib::value::GenericValueTypeChecker<Self>;
12125
12126 #[inline]
12127 unsafe fn from_value(value: &'a glib::Value) -> Self {
12128 skip_assert_initialized!();
12129 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12130 }
12131}
12132
12133impl ToValue for SorterChange {
12134 #[inline]
12135 fn to_value(&self) -> glib::Value {
12136 let mut value = glib::Value::for_value_type::<Self>();
12137 unsafe {
12138 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12139 }
12140 value
12141 }
12142
12143 #[inline]
12144 fn value_type(&self) -> glib::Type {
12145 Self::static_type()
12146 }
12147}
12148
12149impl From<SorterChange> for glib::Value {
12150 #[inline]
12151 fn from(v: SorterChange) -> Self {
12152 skip_assert_initialized!();
12153 ToValue::to_value(&v)
12154 }
12155}
12156
12157#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12159#[non_exhaustive]
12160#[doc(alias = "GtkSorterOrder")]
12161pub enum SorterOrder {
12162 #[doc(alias = "GTK_SORTER_ORDER_PARTIAL")]
12164 Partial,
12165 #[doc(alias = "GTK_SORTER_ORDER_NONE")]
12168 None,
12169 #[doc(alias = "GTK_SORTER_ORDER_TOTAL")]
12173 Total,
12174 #[doc(hidden)]
12175 __Unknown(i32),
12176}
12177
12178#[doc(hidden)]
12179impl IntoGlib for SorterOrder {
12180 type GlibType = ffi::GtkSorterOrder;
12181
12182 #[inline]
12183 fn into_glib(self) -> ffi::GtkSorterOrder {
12184 match self {
12185 Self::Partial => ffi::GTK_SORTER_ORDER_PARTIAL,
12186 Self::None => ffi::GTK_SORTER_ORDER_NONE,
12187 Self::Total => ffi::GTK_SORTER_ORDER_TOTAL,
12188 Self::__Unknown(value) => value,
12189 }
12190 }
12191}
12192
12193#[doc(hidden)]
12194impl FromGlib<ffi::GtkSorterOrder> for SorterOrder {
12195 #[inline]
12196 unsafe fn from_glib(value: ffi::GtkSorterOrder) -> Self {
12197 skip_assert_initialized!();
12198
12199 match value {
12200 ffi::GTK_SORTER_ORDER_PARTIAL => Self::Partial,
12201 ffi::GTK_SORTER_ORDER_NONE => Self::None,
12202 ffi::GTK_SORTER_ORDER_TOTAL => Self::Total,
12203 value => Self::__Unknown(value),
12204 }
12205 }
12206}
12207
12208impl StaticType for SorterOrder {
12209 #[inline]
12210 #[doc(alias = "gtk_sorter_order_get_type")]
12211 fn static_type() -> glib::Type {
12212 unsafe { from_glib(ffi::gtk_sorter_order_get_type()) }
12213 }
12214}
12215
12216impl glib::HasParamSpec for SorterOrder {
12217 type ParamSpec = glib::ParamSpecEnum;
12218 type SetValue = Self;
12219 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12220
12221 fn param_spec_builder() -> Self::BuilderFn {
12222 Self::ParamSpec::builder_with_default
12223 }
12224}
12225
12226impl glib::value::ValueType for SorterOrder {
12227 type Type = Self;
12228}
12229
12230unsafe impl<'a> glib::value::FromValue<'a> for SorterOrder {
12231 type Checker = glib::value::GenericValueTypeChecker<Self>;
12232
12233 #[inline]
12234 unsafe fn from_value(value: &'a glib::Value) -> Self {
12235 skip_assert_initialized!();
12236 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12237 }
12238}
12239
12240impl ToValue for SorterOrder {
12241 #[inline]
12242 fn to_value(&self) -> glib::Value {
12243 let mut value = glib::Value::for_value_type::<Self>();
12244 unsafe {
12245 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12246 }
12247 value
12248 }
12249
12250 #[inline]
12251 fn value_type(&self) -> glib::Type {
12252 Self::static_type()
12253 }
12254}
12255
12256impl From<SorterOrder> for glib::Value {
12257 #[inline]
12258 fn from(v: SorterOrder) -> Self {
12259 skip_assert_initialized!();
12260 ToValue::to_value(&v)
12261 }
12262}
12263
12264#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12269#[non_exhaustive]
12270#[doc(alias = "GtkSpinButtonUpdatePolicy")]
12271pub enum SpinButtonUpdatePolicy {
12272 #[doc(alias = "GTK_UPDATE_ALWAYS")]
12275 Always,
12276 #[doc(alias = "GTK_UPDATE_IF_VALID")]
12280 IfValid,
12281 #[doc(hidden)]
12282 __Unknown(i32),
12283}
12284
12285#[doc(hidden)]
12286impl IntoGlib for SpinButtonUpdatePolicy {
12287 type GlibType = ffi::GtkSpinButtonUpdatePolicy;
12288
12289 #[inline]
12290 fn into_glib(self) -> ffi::GtkSpinButtonUpdatePolicy {
12291 match self {
12292 Self::Always => ffi::GTK_UPDATE_ALWAYS,
12293 Self::IfValid => ffi::GTK_UPDATE_IF_VALID,
12294 Self::__Unknown(value) => value,
12295 }
12296 }
12297}
12298
12299#[doc(hidden)]
12300impl FromGlib<ffi::GtkSpinButtonUpdatePolicy> for SpinButtonUpdatePolicy {
12301 #[inline]
12302 unsafe fn from_glib(value: ffi::GtkSpinButtonUpdatePolicy) -> Self {
12303 skip_assert_initialized!();
12304
12305 match value {
12306 ffi::GTK_UPDATE_ALWAYS => Self::Always,
12307 ffi::GTK_UPDATE_IF_VALID => Self::IfValid,
12308 value => Self::__Unknown(value),
12309 }
12310 }
12311}
12312
12313impl StaticType for SpinButtonUpdatePolicy {
12314 #[inline]
12315 #[doc(alias = "gtk_spin_button_update_policy_get_type")]
12316 fn static_type() -> glib::Type {
12317 unsafe { from_glib(ffi::gtk_spin_button_update_policy_get_type()) }
12318 }
12319}
12320
12321impl glib::HasParamSpec for SpinButtonUpdatePolicy {
12322 type ParamSpec = glib::ParamSpecEnum;
12323 type SetValue = Self;
12324 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12325
12326 fn param_spec_builder() -> Self::BuilderFn {
12327 Self::ParamSpec::builder_with_default
12328 }
12329}
12330
12331impl glib::value::ValueType for SpinButtonUpdatePolicy {
12332 type Type = Self;
12333}
12334
12335unsafe impl<'a> glib::value::FromValue<'a> for SpinButtonUpdatePolicy {
12336 type Checker = glib::value::GenericValueTypeChecker<Self>;
12337
12338 #[inline]
12339 unsafe fn from_value(value: &'a glib::Value) -> Self {
12340 skip_assert_initialized!();
12341 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12342 }
12343}
12344
12345impl ToValue for SpinButtonUpdatePolicy {
12346 #[inline]
12347 fn to_value(&self) -> glib::Value {
12348 let mut value = glib::Value::for_value_type::<Self>();
12349 unsafe {
12350 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12351 }
12352 value
12353 }
12354
12355 #[inline]
12356 fn value_type(&self) -> glib::Type {
12357 Self::static_type()
12358 }
12359}
12360
12361impl From<SpinButtonUpdatePolicy> for glib::Value {
12362 #[inline]
12363 fn from(v: SpinButtonUpdatePolicy) -> Self {
12364 skip_assert_initialized!();
12365 ToValue::to_value(&v)
12366 }
12367}
12368
12369#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12372#[non_exhaustive]
12373#[doc(alias = "GtkSpinType")]
12374pub enum SpinType {
12375 #[doc(alias = "GTK_SPIN_STEP_FORWARD")]
12377 StepForward,
12378 #[doc(alias = "GTK_SPIN_STEP_BACKWARD")]
12380 StepBackward,
12381 #[doc(alias = "GTK_SPIN_PAGE_FORWARD")]
12383 PageForward,
12384 #[doc(alias = "GTK_SPIN_PAGE_BACKWARD")]
12386 PageBackward,
12387 #[doc(alias = "GTK_SPIN_HOME")]
12389 Home,
12390 #[doc(alias = "GTK_SPIN_END")]
12392 End,
12393 #[doc(alias = "GTK_SPIN_USER_DEFINED")]
12395 UserDefined,
12396 #[doc(hidden)]
12397 __Unknown(i32),
12398}
12399
12400#[doc(hidden)]
12401impl IntoGlib for SpinType {
12402 type GlibType = ffi::GtkSpinType;
12403
12404 #[inline]
12405 fn into_glib(self) -> ffi::GtkSpinType {
12406 match self {
12407 Self::StepForward => ffi::GTK_SPIN_STEP_FORWARD,
12408 Self::StepBackward => ffi::GTK_SPIN_STEP_BACKWARD,
12409 Self::PageForward => ffi::GTK_SPIN_PAGE_FORWARD,
12410 Self::PageBackward => ffi::GTK_SPIN_PAGE_BACKWARD,
12411 Self::Home => ffi::GTK_SPIN_HOME,
12412 Self::End => ffi::GTK_SPIN_END,
12413 Self::UserDefined => ffi::GTK_SPIN_USER_DEFINED,
12414 Self::__Unknown(value) => value,
12415 }
12416 }
12417}
12418
12419#[doc(hidden)]
12420impl FromGlib<ffi::GtkSpinType> for SpinType {
12421 #[inline]
12422 unsafe fn from_glib(value: ffi::GtkSpinType) -> Self {
12423 skip_assert_initialized!();
12424
12425 match value {
12426 ffi::GTK_SPIN_STEP_FORWARD => Self::StepForward,
12427 ffi::GTK_SPIN_STEP_BACKWARD => Self::StepBackward,
12428 ffi::GTK_SPIN_PAGE_FORWARD => Self::PageForward,
12429 ffi::GTK_SPIN_PAGE_BACKWARD => Self::PageBackward,
12430 ffi::GTK_SPIN_HOME => Self::Home,
12431 ffi::GTK_SPIN_END => Self::End,
12432 ffi::GTK_SPIN_USER_DEFINED => Self::UserDefined,
12433 value => Self::__Unknown(value),
12434 }
12435 }
12436}
12437
12438impl StaticType for SpinType {
12439 #[inline]
12440 #[doc(alias = "gtk_spin_type_get_type")]
12441 fn static_type() -> glib::Type {
12442 unsafe { from_glib(ffi::gtk_spin_type_get_type()) }
12443 }
12444}
12445
12446impl glib::HasParamSpec for SpinType {
12447 type ParamSpec = glib::ParamSpecEnum;
12448 type SetValue = Self;
12449 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12450
12451 fn param_spec_builder() -> Self::BuilderFn {
12452 Self::ParamSpec::builder_with_default
12453 }
12454}
12455
12456impl glib::value::ValueType for SpinType {
12457 type Type = Self;
12458}
12459
12460unsafe impl<'a> glib::value::FromValue<'a> for SpinType {
12461 type Checker = glib::value::GenericValueTypeChecker<Self>;
12462
12463 #[inline]
12464 unsafe fn from_value(value: &'a glib::Value) -> Self {
12465 skip_assert_initialized!();
12466 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12467 }
12468}
12469
12470impl ToValue for SpinType {
12471 #[inline]
12472 fn to_value(&self) -> glib::Value {
12473 let mut value = glib::Value::for_value_type::<Self>();
12474 unsafe {
12475 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12476 }
12477 value
12478 }
12479
12480 #[inline]
12481 fn value_type(&self) -> glib::Type {
12482 Self::static_type()
12483 }
12484}
12485
12486impl From<SpinType> for glib::Value {
12487 #[inline]
12488 fn from(v: SpinType) -> Self {
12489 skip_assert_initialized!();
12490 ToValue::to_value(&v)
12491 }
12492}
12493
12494#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12498#[non_exhaustive]
12499#[doc(alias = "GtkStackTransitionType")]
12500pub enum StackTransitionType {
12501 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_NONE")]
12503 None,
12504 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_CROSSFADE")]
12506 Crossfade,
12507 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT")]
12509 SlideRight,
12510 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT")]
12512 SlideLeft,
12513 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP")]
12515 SlideUp,
12516 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN")]
12518 SlideDown,
12519 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT")]
12521 SlideLeftRight,
12522 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN")]
12524 SlideUpDown,
12525 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP")]
12527 OverUp,
12528 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN")]
12530 OverDown,
12531 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT")]
12533 OverLeft,
12534 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT")]
12536 OverRight,
12537 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_UP")]
12539 UnderUp,
12540 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_DOWN")]
12542 UnderDown,
12543 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_LEFT")]
12545 UnderLeft,
12546 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT")]
12548 UnderRight,
12549 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN")]
12551 OverUpDown,
12552 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP")]
12554 OverDownUp,
12555 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT")]
12557 OverLeftRight,
12558 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT")]
12560 OverRightLeft,
12561 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT")]
12563 RotateLeft,
12564 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT")]
12566 RotateRight,
12567 #[doc(alias = "GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT")]
12569 RotateLeftRight,
12570 #[doc(hidden)]
12571 __Unknown(i32),
12572}
12573
12574#[doc(hidden)]
12575impl IntoGlib for StackTransitionType {
12576 type GlibType = ffi::GtkStackTransitionType;
12577
12578 fn into_glib(self) -> ffi::GtkStackTransitionType {
12579 match self {
12580 Self::None => ffi::GTK_STACK_TRANSITION_TYPE_NONE,
12581 Self::Crossfade => ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE,
12582 Self::SlideRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT,
12583 Self::SlideLeft => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT,
12584 Self::SlideUp => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP,
12585 Self::SlideDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN,
12586 Self::SlideLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT,
12587 Self::SlideUpDown => ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN,
12588 Self::OverUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP,
12589 Self::OverDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN,
12590 Self::OverLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT,
12591 Self::OverRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT,
12592 Self::UnderUp => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP,
12593 Self::UnderDown => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN,
12594 Self::UnderLeft => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT,
12595 Self::UnderRight => ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT,
12596 Self::OverUpDown => ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN,
12597 Self::OverDownUp => ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP,
12598 Self::OverLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT,
12599 Self::OverRightLeft => ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT,
12600 Self::RotateLeft => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT,
12601 Self::RotateRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT,
12602 Self::RotateLeftRight => ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT,
12603 Self::__Unknown(value) => value,
12604 }
12605 }
12606}
12607
12608#[doc(hidden)]
12609impl FromGlib<ffi::GtkStackTransitionType> for StackTransitionType {
12610 unsafe fn from_glib(value: ffi::GtkStackTransitionType) -> Self {
12611 skip_assert_initialized!();
12612
12613 match value {
12614 ffi::GTK_STACK_TRANSITION_TYPE_NONE => Self::None,
12615 ffi::GTK_STACK_TRANSITION_TYPE_CROSSFADE => Self::Crossfade,
12616 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT => Self::SlideRight,
12617 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT => Self::SlideLeft,
12618 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP => Self::SlideUp,
12619 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN => Self::SlideDown,
12620 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT => Self::SlideLeftRight,
12621 ffi::GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN => Self::SlideUpDown,
12622 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP => Self::OverUp,
12623 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN => Self::OverDown,
12624 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT => Self::OverLeft,
12625 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT => Self::OverRight,
12626 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_UP => Self::UnderUp,
12627 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_DOWN => Self::UnderDown,
12628 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_LEFT => Self::UnderLeft,
12629 ffi::GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT => Self::UnderRight,
12630 ffi::GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN => Self::OverUpDown,
12631 ffi::GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP => Self::OverDownUp,
12632 ffi::GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT => Self::OverLeftRight,
12633 ffi::GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT => Self::OverRightLeft,
12634 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT => Self::RotateLeft,
12635 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT => Self::RotateRight,
12636 ffi::GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT => Self::RotateLeftRight,
12637 value => Self::__Unknown(value),
12638 }
12639 }
12640}
12641
12642impl StaticType for StackTransitionType {
12643 #[inline]
12644 #[doc(alias = "gtk_stack_transition_type_get_type")]
12645 fn static_type() -> glib::Type {
12646 unsafe { from_glib(ffi::gtk_stack_transition_type_get_type()) }
12647 }
12648}
12649
12650impl glib::HasParamSpec for StackTransitionType {
12651 type ParamSpec = glib::ParamSpecEnum;
12652 type SetValue = Self;
12653 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12654
12655 fn param_spec_builder() -> Self::BuilderFn {
12656 Self::ParamSpec::builder_with_default
12657 }
12658}
12659
12660impl glib::value::ValueType for StackTransitionType {
12661 type Type = Self;
12662}
12663
12664unsafe impl<'a> glib::value::FromValue<'a> for StackTransitionType {
12665 type Checker = glib::value::GenericValueTypeChecker<Self>;
12666
12667 #[inline]
12668 unsafe fn from_value(value: &'a glib::Value) -> Self {
12669 skip_assert_initialized!();
12670 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12671 }
12672}
12673
12674impl ToValue for StackTransitionType {
12675 #[inline]
12676 fn to_value(&self) -> glib::Value {
12677 let mut value = glib::Value::for_value_type::<Self>();
12678 unsafe {
12679 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12680 }
12681 value
12682 }
12683
12684 #[inline]
12685 fn value_type(&self) -> glib::Type {
12686 Self::static_type()
12687 }
12688}
12689
12690impl From<StackTransitionType> for glib::Value {
12691 #[inline]
12692 fn from(v: StackTransitionType) -> Self {
12693 skip_assert_initialized!();
12694 ToValue::to_value(&v)
12695 }
12696}
12697
12698#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12700#[non_exhaustive]
12701#[doc(alias = "GtkStringFilterMatchMode")]
12702pub enum StringFilterMatchMode {
12703 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_EXACT")]
12706 Exact,
12707 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_SUBSTRING")]
12710 Substring,
12711 #[doc(alias = "GTK_STRING_FILTER_MATCH_MODE_PREFIX")]
12714 Prefix,
12715 #[doc(hidden)]
12716 __Unknown(i32),
12717}
12718
12719#[doc(hidden)]
12720impl IntoGlib for StringFilterMatchMode {
12721 type GlibType = ffi::GtkStringFilterMatchMode;
12722
12723 #[inline]
12724 fn into_glib(self) -> ffi::GtkStringFilterMatchMode {
12725 match self {
12726 Self::Exact => ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT,
12727 Self::Substring => ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING,
12728 Self::Prefix => ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX,
12729 Self::__Unknown(value) => value,
12730 }
12731 }
12732}
12733
12734#[doc(hidden)]
12735impl FromGlib<ffi::GtkStringFilterMatchMode> for StringFilterMatchMode {
12736 #[inline]
12737 unsafe fn from_glib(value: ffi::GtkStringFilterMatchMode) -> Self {
12738 skip_assert_initialized!();
12739
12740 match value {
12741 ffi::GTK_STRING_FILTER_MATCH_MODE_EXACT => Self::Exact,
12742 ffi::GTK_STRING_FILTER_MATCH_MODE_SUBSTRING => Self::Substring,
12743 ffi::GTK_STRING_FILTER_MATCH_MODE_PREFIX => Self::Prefix,
12744 value => Self::__Unknown(value),
12745 }
12746 }
12747}
12748
12749impl StaticType for StringFilterMatchMode {
12750 #[inline]
12751 #[doc(alias = "gtk_string_filter_match_mode_get_type")]
12752 fn static_type() -> glib::Type {
12753 unsafe { from_glib(ffi::gtk_string_filter_match_mode_get_type()) }
12754 }
12755}
12756
12757impl glib::HasParamSpec for StringFilterMatchMode {
12758 type ParamSpec = glib::ParamSpecEnum;
12759 type SetValue = Self;
12760 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
12761
12762 fn param_spec_builder() -> Self::BuilderFn {
12763 Self::ParamSpec::builder_with_default
12764 }
12765}
12766
12767impl glib::value::ValueType for StringFilterMatchMode {
12768 type Type = Self;
12769}
12770
12771unsafe impl<'a> glib::value::FromValue<'a> for StringFilterMatchMode {
12772 type Checker = glib::value::GenericValueTypeChecker<Self>;
12773
12774 #[inline]
12775 unsafe fn from_value(value: &'a glib::Value) -> Self {
12776 skip_assert_initialized!();
12777 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
12778 }
12779}
12780
12781impl ToValue for StringFilterMatchMode {
12782 #[inline]
12783 fn to_value(&self) -> glib::Value {
12784 let mut value = glib::Value::for_value_type::<Self>();
12785 unsafe {
12786 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
12787 }
12788 value
12789 }
12790
12791 #[inline]
12792 fn value_type(&self) -> glib::Type {
12793 Self::static_type()
12794 }
12795}
12796
12797impl From<StringFilterMatchMode> for glib::Value {
12798 #[inline]
12799 fn from(v: StringFilterMatchMode) -> Self {
12800 skip_assert_initialized!();
12801 ToValue::to_value(&v)
12802 }
12803}
12804
12805#[cfg(feature = "v4_22")]
12808#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12809#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
12810#[non_exhaustive]
12811#[doc(alias = "GtkSvgError")]
12812pub enum SvgError {
12813 #[doc(alias = "GTK_SVG_ERROR_INVALID_SYNTAX")]
12816 InvalidSyntax,
12817 #[doc(alias = "GTK_SVG_ERROR_INVALID_ELEMENT")]
12821 InvalidElement,
12822 #[doc(alias = "GTK_SVG_ERROR_INVALID_ATTRIBUTE")]
12826 InvalidAttribute,
12827 #[doc(alias = "GTK_SVG_ERROR_MISSING_ATTRIBUTE")]
12829 MissingAttribute,
12830 #[doc(alias = "GTK_SVG_ERROR_INVALID_REFERENCE")]
12833 InvalidReference,
12834 #[doc(alias = "GTK_SVG_ERROR_FAILED_UPDATE")]
12836 FailedUpdate,
12837 #[doc(alias = "GTK_SVG_ERROR_FAILED_RENDERING")]
12840 FailedRendering,
12841 #[doc(alias = "GTK_SVG_ERROR_IGNORED_ELEMENT")]
12845 IgnoredElement,
12846 #[doc(alias = "GTK_SVG_ERROR_LIMITS_EXCEEDED")]
12849 LimitsExceeded,
12850 #[doc(alias = "GTK_SVG_ERROR_NOT_IMPLEMENTED")]
12854 NotImplemented,
12855 #[doc(alias = "GTK_SVG_ERROR_FEATURE_DISABLED")]
12856 FeatureDisabled,
12857 #[doc(hidden)]
12858 __Unknown(i32),
12859}
12860
12861#[cfg(feature = "v4_22")]
12862#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12863impl SvgError {
12864 #[doc(alias = "gtk_svg_error_get_attribute")]
12865 #[doc(alias = "get_attribute")]
12866 pub fn attribute(error: &glib::Error) -> Option<glib::GString> {
12867 assert_initialized_main_thread!();
12868 unsafe { from_glib_none(ffi::gtk_svg_error_get_attribute(error.to_glib_none().0)) }
12869 }
12870
12871 #[doc(alias = "gtk_svg_error_get_element")]
12872 #[doc(alias = "get_element")]
12873 pub fn element(error: &glib::Error) -> Option<glib::GString> {
12874 assert_initialized_main_thread!();
12875 unsafe { from_glib_none(ffi::gtk_svg_error_get_element(error.to_glib_none().0)) }
12876 }
12877
12878 #[cfg(feature = "v4_24")]
12885 #[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
12886 #[doc(alias = "gtk_svg_error_get_input")]
12887 #[doc(alias = "get_input")]
12888 pub fn input(error: &glib::Error) -> Option<glib::GString> {
12889 assert_initialized_main_thread!();
12890 unsafe { from_glib_none(ffi::gtk_svg_error_get_input(error.to_glib_none().0)) }
12891 }
12892
12893 #[doc(alias = "gtk_svg_error_quark")]
12900 pub fn quark() -> glib::Quark {
12901 assert_initialized_main_thread!();
12902 unsafe { from_glib(ffi::gtk_svg_error_quark()) }
12903 }
12904}
12905
12906#[cfg(feature = "v4_22")]
12907#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12908#[doc(hidden)]
12909impl IntoGlib for SvgError {
12910 type GlibType = ffi::GtkSvgError;
12911
12912 #[inline]
12913 fn into_glib(self) -> ffi::GtkSvgError {
12914 match self {
12915 Self::InvalidSyntax => ffi::GTK_SVG_ERROR_INVALID_SYNTAX,
12916 Self::InvalidElement => ffi::GTK_SVG_ERROR_INVALID_ELEMENT,
12917 Self::InvalidAttribute => ffi::GTK_SVG_ERROR_INVALID_ATTRIBUTE,
12918 Self::MissingAttribute => ffi::GTK_SVG_ERROR_MISSING_ATTRIBUTE,
12919 Self::InvalidReference => ffi::GTK_SVG_ERROR_INVALID_REFERENCE,
12920 Self::FailedUpdate => ffi::GTK_SVG_ERROR_FAILED_UPDATE,
12921 Self::FailedRendering => ffi::GTK_SVG_ERROR_FAILED_RENDERING,
12922 Self::IgnoredElement => ffi::GTK_SVG_ERROR_IGNORED_ELEMENT,
12923 Self::LimitsExceeded => ffi::GTK_SVG_ERROR_LIMITS_EXCEEDED,
12924 Self::NotImplemented => ffi::GTK_SVG_ERROR_NOT_IMPLEMENTED,
12925 Self::FeatureDisabled => ffi::GTK_SVG_ERROR_FEATURE_DISABLED,
12926 Self::__Unknown(value) => value,
12927 }
12928 }
12929}
12930
12931#[cfg(feature = "v4_22")]
12932#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12933#[doc(hidden)]
12934impl FromGlib<ffi::GtkSvgError> for SvgError {
12935 #[inline]
12936 unsafe fn from_glib(value: ffi::GtkSvgError) -> Self {
12937 skip_assert_initialized!();
12938
12939 match value {
12940 ffi::GTK_SVG_ERROR_INVALID_SYNTAX => Self::InvalidSyntax,
12941 ffi::GTK_SVG_ERROR_INVALID_ELEMENT => Self::InvalidElement,
12942 ffi::GTK_SVG_ERROR_INVALID_ATTRIBUTE => Self::InvalidAttribute,
12943 ffi::GTK_SVG_ERROR_MISSING_ATTRIBUTE => Self::MissingAttribute,
12944 ffi::GTK_SVG_ERROR_INVALID_REFERENCE => Self::InvalidReference,
12945 ffi::GTK_SVG_ERROR_FAILED_UPDATE => Self::FailedUpdate,
12946 ffi::GTK_SVG_ERROR_FAILED_RENDERING => Self::FailedRendering,
12947 ffi::GTK_SVG_ERROR_IGNORED_ELEMENT => Self::IgnoredElement,
12948 ffi::GTK_SVG_ERROR_LIMITS_EXCEEDED => Self::LimitsExceeded,
12949 ffi::GTK_SVG_ERROR_NOT_IMPLEMENTED => Self::NotImplemented,
12950 ffi::GTK_SVG_ERROR_FEATURE_DISABLED => Self::FeatureDisabled,
12951 value => Self::__Unknown(value),
12952 }
12953 }
12954}
12955
12956#[cfg(feature = "v4_22")]
12957#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12958impl glib::error::ErrorDomain for SvgError {
12959 #[inline]
12960 fn domain() -> glib::Quark {
12961 skip_assert_initialized!();
12962
12963 static QUARK: ::std::sync::OnceLock<glib::ffi::GQuark> = ::std::sync::OnceLock::new();
12964 let quark = *QUARK.get_or_init(|| unsafe {
12965 glib::ffi::g_quark_from_static_string(c"GtkSvgError".as_ptr())
12966 });
12967 unsafe { from_glib(quark) }
12968 }
12969
12970 #[inline]
12971 fn code(self) -> i32 {
12972 self.into_glib()
12973 }
12974
12975 #[inline]
12976 #[allow(clippy::match_single_binding)]
12977 fn from(code: i32) -> Option<Self> {
12978 skip_assert_initialized!();
12979 match unsafe { from_glib(code) } {
12980 value => Some(value),
12981 }
12982 }
12983}
12984
12985#[cfg(feature = "v4_22")]
12986#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12987impl StaticType for SvgError {
12988 #[inline]
12989 #[doc(alias = "gtk_svg_error_get_type")]
12990 fn static_type() -> glib::Type {
12991 unsafe { from_glib(ffi::gtk_svg_error_get_type()) }
12992 }
12993}
12994
12995#[cfg(feature = "v4_22")]
12996#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
12997impl glib::HasParamSpec for SvgError {
12998 type ParamSpec = glib::ParamSpecEnum;
12999 type SetValue = Self;
13000 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13001
13002 fn param_spec_builder() -> Self::BuilderFn {
13003 Self::ParamSpec::builder_with_default
13004 }
13005}
13006
13007#[cfg(feature = "v4_22")]
13008#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
13009impl glib::value::ValueType for SvgError {
13010 type Type = Self;
13011}
13012
13013#[cfg(feature = "v4_22")]
13014#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
13015unsafe impl<'a> glib::value::FromValue<'a> for SvgError {
13016 type Checker = glib::value::GenericValueTypeChecker<Self>;
13017
13018 #[inline]
13019 unsafe fn from_value(value: &'a glib::Value) -> Self {
13020 skip_assert_initialized!();
13021 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13022 }
13023}
13024
13025#[cfg(feature = "v4_22")]
13026#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
13027impl ToValue for SvgError {
13028 #[inline]
13029 fn to_value(&self) -> glib::Value {
13030 let mut value = glib::Value::for_value_type::<Self>();
13031 unsafe {
13032 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13033 }
13034 value
13035 }
13036
13037 #[inline]
13038 fn value_type(&self) -> glib::Type {
13039 Self::static_type()
13040 }
13041}
13042
13043#[cfg(feature = "v4_22")]
13044#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
13045impl From<SvgError> for glib::Value {
13046 #[inline]
13047 fn from(v: SvgError) -> Self {
13048 skip_assert_initialized!();
13049 ToValue::to_value(&v)
13050 }
13051}
13052
13053#[cfg(feature = "v4_6")]
13058#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13059#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13060#[non_exhaustive]
13061#[doc(alias = "GtkSymbolicColor")]
13062pub enum SymbolicColor {
13063 #[doc(alias = "GTK_SYMBOLIC_COLOR_FOREGROUND")]
13065 Foreground,
13066 #[doc(alias = "GTK_SYMBOLIC_COLOR_ERROR")]
13068 Error,
13069 #[doc(alias = "GTK_SYMBOLIC_COLOR_WARNING")]
13071 Warning,
13072 #[doc(alias = "GTK_SYMBOLIC_COLOR_SUCCESS")]
13074 Success,
13075 #[cfg(feature = "v4_22")]
13077 #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
13078 #[doc(alias = "GTK_SYMBOLIC_COLOR_ACCENT")]
13079 Accent,
13080 #[doc(hidden)]
13081 __Unknown(i32),
13082}
13083
13084#[cfg(feature = "v4_6")]
13085#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13086#[doc(hidden)]
13087impl IntoGlib for SymbolicColor {
13088 type GlibType = ffi::GtkSymbolicColor;
13089
13090 #[inline]
13091 fn into_glib(self) -> ffi::GtkSymbolicColor {
13092 match self {
13093 Self::Foreground => ffi::GTK_SYMBOLIC_COLOR_FOREGROUND,
13094 Self::Error => ffi::GTK_SYMBOLIC_COLOR_ERROR,
13095 Self::Warning => ffi::GTK_SYMBOLIC_COLOR_WARNING,
13096 Self::Success => ffi::GTK_SYMBOLIC_COLOR_SUCCESS,
13097 #[cfg(feature = "v4_22")]
13098 Self::Accent => ffi::GTK_SYMBOLIC_COLOR_ACCENT,
13099 Self::__Unknown(value) => value,
13100 }
13101 }
13102}
13103
13104#[cfg(feature = "v4_6")]
13105#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13106#[doc(hidden)]
13107impl FromGlib<ffi::GtkSymbolicColor> for SymbolicColor {
13108 #[inline]
13109 unsafe fn from_glib(value: ffi::GtkSymbolicColor) -> Self {
13110 skip_assert_initialized!();
13111
13112 match value {
13113 ffi::GTK_SYMBOLIC_COLOR_FOREGROUND => Self::Foreground,
13114 ffi::GTK_SYMBOLIC_COLOR_ERROR => Self::Error,
13115 ffi::GTK_SYMBOLIC_COLOR_WARNING => Self::Warning,
13116 ffi::GTK_SYMBOLIC_COLOR_SUCCESS => Self::Success,
13117 #[cfg(feature = "v4_22")]
13118 ffi::GTK_SYMBOLIC_COLOR_ACCENT => Self::Accent,
13119 value => Self::__Unknown(value),
13120 }
13121 }
13122}
13123
13124#[cfg(feature = "v4_6")]
13125#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13126impl StaticType for SymbolicColor {
13127 #[inline]
13128 #[doc(alias = "gtk_symbolic_color_get_type")]
13129 fn static_type() -> glib::Type {
13130 unsafe { from_glib(ffi::gtk_symbolic_color_get_type()) }
13131 }
13132}
13133
13134#[cfg(feature = "v4_6")]
13135#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13136impl glib::HasParamSpec for SymbolicColor {
13137 type ParamSpec = glib::ParamSpecEnum;
13138 type SetValue = Self;
13139 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13140
13141 fn param_spec_builder() -> Self::BuilderFn {
13142 Self::ParamSpec::builder_with_default
13143 }
13144}
13145
13146#[cfg(feature = "v4_6")]
13147#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13148impl glib::value::ValueType for SymbolicColor {
13149 type Type = Self;
13150}
13151
13152#[cfg(feature = "v4_6")]
13153#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13154unsafe impl<'a> glib::value::FromValue<'a> for SymbolicColor {
13155 type Checker = glib::value::GenericValueTypeChecker<Self>;
13156
13157 #[inline]
13158 unsafe fn from_value(value: &'a glib::Value) -> Self {
13159 skip_assert_initialized!();
13160 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13161 }
13162}
13163
13164#[cfg(feature = "v4_6")]
13165#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13166impl ToValue for SymbolicColor {
13167 #[inline]
13168 fn to_value(&self) -> glib::Value {
13169 let mut value = glib::Value::for_value_type::<Self>();
13170 unsafe {
13171 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13172 }
13173 value
13174 }
13175
13176 #[inline]
13177 fn value_type(&self) -> glib::Type {
13178 Self::static_type()
13179 }
13180}
13181
13182#[cfg(feature = "v4_6")]
13183#[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13184impl From<SymbolicColor> for glib::Value {
13185 #[inline]
13186 fn from(v: SymbolicColor) -> Self {
13187 skip_assert_initialized!();
13188 ToValue::to_value(&v)
13189 }
13190}
13191
13192#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13202#[non_exhaustive]
13203#[doc(alias = "GtkSystemSetting")]
13204pub enum SystemSetting {
13205 #[doc(alias = "GTK_SYSTEM_SETTING_DPI")]
13207 Dpi,
13208 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_NAME")]
13210 FontName,
13211 #[doc(alias = "GTK_SYSTEM_SETTING_FONT_CONFIG")]
13219 FontConfig,
13220 #[doc(alias = "GTK_SYSTEM_SETTING_DISPLAY")]
13222 Display,
13223 #[doc(alias = "GTK_SYSTEM_SETTING_ICON_THEME")]
13226 IconTheme,
13227 #[doc(hidden)]
13228 __Unknown(i32),
13229}
13230
13231#[doc(hidden)]
13232impl IntoGlib for SystemSetting {
13233 type GlibType = ffi::GtkSystemSetting;
13234
13235 #[inline]
13236 fn into_glib(self) -> ffi::GtkSystemSetting {
13237 match self {
13238 Self::Dpi => ffi::GTK_SYSTEM_SETTING_DPI,
13239 Self::FontName => ffi::GTK_SYSTEM_SETTING_FONT_NAME,
13240 Self::FontConfig => ffi::GTK_SYSTEM_SETTING_FONT_CONFIG,
13241 Self::Display => ffi::GTK_SYSTEM_SETTING_DISPLAY,
13242 Self::IconTheme => ffi::GTK_SYSTEM_SETTING_ICON_THEME,
13243 Self::__Unknown(value) => value,
13244 }
13245 }
13246}
13247
13248#[doc(hidden)]
13249impl FromGlib<ffi::GtkSystemSetting> for SystemSetting {
13250 #[inline]
13251 unsafe fn from_glib(value: ffi::GtkSystemSetting) -> Self {
13252 skip_assert_initialized!();
13253
13254 match value {
13255 ffi::GTK_SYSTEM_SETTING_DPI => Self::Dpi,
13256 ffi::GTK_SYSTEM_SETTING_FONT_NAME => Self::FontName,
13257 ffi::GTK_SYSTEM_SETTING_FONT_CONFIG => Self::FontConfig,
13258 ffi::GTK_SYSTEM_SETTING_DISPLAY => Self::Display,
13259 ffi::GTK_SYSTEM_SETTING_ICON_THEME => Self::IconTheme,
13260 value => Self::__Unknown(value),
13261 }
13262 }
13263}
13264
13265impl StaticType for SystemSetting {
13266 #[inline]
13267 #[doc(alias = "gtk_system_setting_get_type")]
13268 fn static_type() -> glib::Type {
13269 unsafe { from_glib(ffi::gtk_system_setting_get_type()) }
13270 }
13271}
13272
13273impl glib::HasParamSpec for SystemSetting {
13274 type ParamSpec = glib::ParamSpecEnum;
13275 type SetValue = Self;
13276 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13277
13278 fn param_spec_builder() -> Self::BuilderFn {
13279 Self::ParamSpec::builder_with_default
13280 }
13281}
13282
13283impl glib::value::ValueType for SystemSetting {
13284 type Type = Self;
13285}
13286
13287unsafe impl<'a> glib::value::FromValue<'a> for SystemSetting {
13288 type Checker = glib::value::GenericValueTypeChecker<Self>;
13289
13290 #[inline]
13291 unsafe fn from_value(value: &'a glib::Value) -> Self {
13292 skip_assert_initialized!();
13293 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13294 }
13295}
13296
13297impl ToValue for SystemSetting {
13298 #[inline]
13299 fn to_value(&self) -> glib::Value {
13300 let mut value = glib::Value::for_value_type::<Self>();
13301 unsafe {
13302 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13303 }
13304 value
13305 }
13306
13307 #[inline]
13308 fn value_type(&self) -> glib::Type {
13309 Self::static_type()
13310 }
13311}
13312
13313impl From<SystemSetting> for glib::Value {
13314 #[inline]
13315 fn from(v: SystemSetting) -> Self {
13316 skip_assert_initialized!();
13317 ToValue::to_value(&v)
13318 }
13319}
13320
13321#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13323#[non_exhaustive]
13324#[doc(alias = "GtkTextDirection")]
13325pub enum TextDirection {
13326 #[doc(alias = "GTK_TEXT_DIR_NONE")]
13328 None,
13329 #[doc(alias = "GTK_TEXT_DIR_LTR")]
13331 Ltr,
13332 #[doc(alias = "GTK_TEXT_DIR_RTL")]
13334 Rtl,
13335 #[doc(hidden)]
13336 __Unknown(i32),
13337}
13338
13339#[doc(hidden)]
13340impl IntoGlib for TextDirection {
13341 type GlibType = ffi::GtkTextDirection;
13342
13343 #[inline]
13344 fn into_glib(self) -> ffi::GtkTextDirection {
13345 match self {
13346 Self::None => ffi::GTK_TEXT_DIR_NONE,
13347 Self::Ltr => ffi::GTK_TEXT_DIR_LTR,
13348 Self::Rtl => ffi::GTK_TEXT_DIR_RTL,
13349 Self::__Unknown(value) => value,
13350 }
13351 }
13352}
13353
13354#[doc(hidden)]
13355impl FromGlib<ffi::GtkTextDirection> for TextDirection {
13356 #[inline]
13357 unsafe fn from_glib(value: ffi::GtkTextDirection) -> Self {
13358 skip_assert_initialized!();
13359
13360 match value {
13361 ffi::GTK_TEXT_DIR_NONE => Self::None,
13362 ffi::GTK_TEXT_DIR_LTR => Self::Ltr,
13363 ffi::GTK_TEXT_DIR_RTL => Self::Rtl,
13364 value => Self::__Unknown(value),
13365 }
13366 }
13367}
13368
13369impl StaticType for TextDirection {
13370 #[inline]
13371 #[doc(alias = "gtk_text_direction_get_type")]
13372 fn static_type() -> glib::Type {
13373 unsafe { from_glib(ffi::gtk_text_direction_get_type()) }
13374 }
13375}
13376
13377impl glib::HasParamSpec for TextDirection {
13378 type ParamSpec = glib::ParamSpecEnum;
13379 type SetValue = Self;
13380 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13381
13382 fn param_spec_builder() -> Self::BuilderFn {
13383 Self::ParamSpec::builder_with_default
13384 }
13385}
13386
13387impl glib::value::ValueType for TextDirection {
13388 type Type = Self;
13389}
13390
13391unsafe impl<'a> glib::value::FromValue<'a> for TextDirection {
13392 type Checker = glib::value::GenericValueTypeChecker<Self>;
13393
13394 #[inline]
13395 unsafe fn from_value(value: &'a glib::Value) -> Self {
13396 skip_assert_initialized!();
13397 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13398 }
13399}
13400
13401impl ToValue for TextDirection {
13402 #[inline]
13403 fn to_value(&self) -> glib::Value {
13404 let mut value = glib::Value::for_value_type::<Self>();
13405 unsafe {
13406 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13407 }
13408 value
13409 }
13410
13411 #[inline]
13412 fn value_type(&self) -> glib::Type {
13413 Self::static_type()
13414 }
13415}
13416
13417impl From<TextDirection> for glib::Value {
13418 #[inline]
13419 fn from(v: TextDirection) -> Self {
13420 skip_assert_initialized!();
13421 ToValue::to_value(&v)
13422 }
13423}
13424
13425#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13428#[non_exhaustive]
13429#[doc(alias = "GtkTextExtendSelection")]
13430pub enum TextExtendSelection {
13431 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_WORD")]
13434 Word,
13435 #[doc(alias = "GTK_TEXT_EXTEND_SELECTION_LINE")]
13438 Line,
13439 #[doc(hidden)]
13440 __Unknown(i32),
13441}
13442
13443#[doc(hidden)]
13444impl IntoGlib for TextExtendSelection {
13445 type GlibType = ffi::GtkTextExtendSelection;
13446
13447 #[inline]
13448 fn into_glib(self) -> ffi::GtkTextExtendSelection {
13449 match self {
13450 Self::Word => ffi::GTK_TEXT_EXTEND_SELECTION_WORD,
13451 Self::Line => ffi::GTK_TEXT_EXTEND_SELECTION_LINE,
13452 Self::__Unknown(value) => value,
13453 }
13454 }
13455}
13456
13457#[doc(hidden)]
13458impl FromGlib<ffi::GtkTextExtendSelection> for TextExtendSelection {
13459 #[inline]
13460 unsafe fn from_glib(value: ffi::GtkTextExtendSelection) -> Self {
13461 skip_assert_initialized!();
13462
13463 match value {
13464 ffi::GTK_TEXT_EXTEND_SELECTION_WORD => Self::Word,
13465 ffi::GTK_TEXT_EXTEND_SELECTION_LINE => Self::Line,
13466 value => Self::__Unknown(value),
13467 }
13468 }
13469}
13470
13471impl StaticType for TextExtendSelection {
13472 #[inline]
13473 #[doc(alias = "gtk_text_extend_selection_get_type")]
13474 fn static_type() -> glib::Type {
13475 unsafe { from_glib(ffi::gtk_text_extend_selection_get_type()) }
13476 }
13477}
13478
13479impl glib::HasParamSpec for TextExtendSelection {
13480 type ParamSpec = glib::ParamSpecEnum;
13481 type SetValue = Self;
13482 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13483
13484 fn param_spec_builder() -> Self::BuilderFn {
13485 Self::ParamSpec::builder_with_default
13486 }
13487}
13488
13489impl glib::value::ValueType for TextExtendSelection {
13490 type Type = Self;
13491}
13492
13493unsafe impl<'a> glib::value::FromValue<'a> for TextExtendSelection {
13494 type Checker = glib::value::GenericValueTypeChecker<Self>;
13495
13496 #[inline]
13497 unsafe fn from_value(value: &'a glib::Value) -> Self {
13498 skip_assert_initialized!();
13499 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13500 }
13501}
13502
13503impl ToValue for TextExtendSelection {
13504 #[inline]
13505 fn to_value(&self) -> glib::Value {
13506 let mut value = glib::Value::for_value_type::<Self>();
13507 unsafe {
13508 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13509 }
13510 value
13511 }
13512
13513 #[inline]
13514 fn value_type(&self) -> glib::Type {
13515 Self::static_type()
13516 }
13517}
13518
13519impl From<TextExtendSelection> for glib::Value {
13520 #[inline]
13521 fn from(v: TextExtendSelection) -> Self {
13522 skip_assert_initialized!();
13523 ToValue::to_value(&v)
13524 }
13525}
13526
13527#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13530#[non_exhaustive]
13531#[doc(alias = "GtkTextViewLayer")]
13532pub enum TextViewLayer {
13533 #[doc(alias = "GTK_TEXT_VIEW_LAYER_BELOW_TEXT")]
13535 BelowText,
13536 #[doc(alias = "GTK_TEXT_VIEW_LAYER_ABOVE_TEXT")]
13538 AboveText,
13539 #[doc(hidden)]
13540 __Unknown(i32),
13541}
13542
13543#[doc(hidden)]
13544impl IntoGlib for TextViewLayer {
13545 type GlibType = ffi::GtkTextViewLayer;
13546
13547 #[inline]
13548 fn into_glib(self) -> ffi::GtkTextViewLayer {
13549 match self {
13550 Self::BelowText => ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT,
13551 Self::AboveText => ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT,
13552 Self::__Unknown(value) => value,
13553 }
13554 }
13555}
13556
13557#[doc(hidden)]
13558impl FromGlib<ffi::GtkTextViewLayer> for TextViewLayer {
13559 #[inline]
13560 unsafe fn from_glib(value: ffi::GtkTextViewLayer) -> Self {
13561 skip_assert_initialized!();
13562
13563 match value {
13564 ffi::GTK_TEXT_VIEW_LAYER_BELOW_TEXT => Self::BelowText,
13565 ffi::GTK_TEXT_VIEW_LAYER_ABOVE_TEXT => Self::AboveText,
13566 value => Self::__Unknown(value),
13567 }
13568 }
13569}
13570
13571impl StaticType for TextViewLayer {
13572 #[inline]
13573 #[doc(alias = "gtk_text_view_layer_get_type")]
13574 fn static_type() -> glib::Type {
13575 unsafe { from_glib(ffi::gtk_text_view_layer_get_type()) }
13576 }
13577}
13578
13579impl glib::HasParamSpec for TextViewLayer {
13580 type ParamSpec = glib::ParamSpecEnum;
13581 type SetValue = Self;
13582 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13583
13584 fn param_spec_builder() -> Self::BuilderFn {
13585 Self::ParamSpec::builder_with_default
13586 }
13587}
13588
13589impl glib::value::ValueType for TextViewLayer {
13590 type Type = Self;
13591}
13592
13593unsafe impl<'a> glib::value::FromValue<'a> for TextViewLayer {
13594 type Checker = glib::value::GenericValueTypeChecker<Self>;
13595
13596 #[inline]
13597 unsafe fn from_value(value: &'a glib::Value) -> Self {
13598 skip_assert_initialized!();
13599 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13600 }
13601}
13602
13603impl ToValue for TextViewLayer {
13604 #[inline]
13605 fn to_value(&self) -> glib::Value {
13606 let mut value = glib::Value::for_value_type::<Self>();
13607 unsafe {
13608 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13609 }
13610 value
13611 }
13612
13613 #[inline]
13614 fn value_type(&self) -> glib::Type {
13615 Self::static_type()
13616 }
13617}
13618
13619impl From<TextViewLayer> for glib::Value {
13620 #[inline]
13621 fn from(v: TextViewLayer) -> Self {
13622 skip_assert_initialized!();
13623 ToValue::to_value(&v)
13624 }
13625}
13626
13627#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13629#[non_exhaustive]
13630#[doc(alias = "GtkTextWindowType")]
13631pub enum TextWindowType {
13632 #[doc(alias = "GTK_TEXT_WINDOW_WIDGET")]
13634 Widget,
13635 #[doc(alias = "GTK_TEXT_WINDOW_TEXT")]
13637 Text,
13638 #[doc(alias = "GTK_TEXT_WINDOW_LEFT")]
13640 Left,
13641 #[doc(alias = "GTK_TEXT_WINDOW_RIGHT")]
13643 Right,
13644 #[doc(alias = "GTK_TEXT_WINDOW_TOP")]
13646 Top,
13647 #[doc(alias = "GTK_TEXT_WINDOW_BOTTOM")]
13649 Bottom,
13650 #[doc(hidden)]
13651 __Unknown(i32),
13652}
13653
13654#[doc(hidden)]
13655impl IntoGlib for TextWindowType {
13656 type GlibType = ffi::GtkTextWindowType;
13657
13658 #[inline]
13659 fn into_glib(self) -> ffi::GtkTextWindowType {
13660 match self {
13661 Self::Widget => ffi::GTK_TEXT_WINDOW_WIDGET,
13662 Self::Text => ffi::GTK_TEXT_WINDOW_TEXT,
13663 Self::Left => ffi::GTK_TEXT_WINDOW_LEFT,
13664 Self::Right => ffi::GTK_TEXT_WINDOW_RIGHT,
13665 Self::Top => ffi::GTK_TEXT_WINDOW_TOP,
13666 Self::Bottom => ffi::GTK_TEXT_WINDOW_BOTTOM,
13667 Self::__Unknown(value) => value,
13668 }
13669 }
13670}
13671
13672#[doc(hidden)]
13673impl FromGlib<ffi::GtkTextWindowType> for TextWindowType {
13674 #[inline]
13675 unsafe fn from_glib(value: ffi::GtkTextWindowType) -> Self {
13676 skip_assert_initialized!();
13677
13678 match value {
13679 ffi::GTK_TEXT_WINDOW_WIDGET => Self::Widget,
13680 ffi::GTK_TEXT_WINDOW_TEXT => Self::Text,
13681 ffi::GTK_TEXT_WINDOW_LEFT => Self::Left,
13682 ffi::GTK_TEXT_WINDOW_RIGHT => Self::Right,
13683 ffi::GTK_TEXT_WINDOW_TOP => Self::Top,
13684 ffi::GTK_TEXT_WINDOW_BOTTOM => Self::Bottom,
13685 value => Self::__Unknown(value),
13686 }
13687 }
13688}
13689
13690impl StaticType for TextWindowType {
13691 #[inline]
13692 #[doc(alias = "gtk_text_window_type_get_type")]
13693 fn static_type() -> glib::Type {
13694 unsafe { from_glib(ffi::gtk_text_window_type_get_type()) }
13695 }
13696}
13697
13698impl glib::HasParamSpec for TextWindowType {
13699 type ParamSpec = glib::ParamSpecEnum;
13700 type SetValue = Self;
13701 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13702
13703 fn param_spec_builder() -> Self::BuilderFn {
13704 Self::ParamSpec::builder_with_default
13705 }
13706}
13707
13708impl glib::value::ValueType for TextWindowType {
13709 type Type = Self;
13710}
13711
13712unsafe impl<'a> glib::value::FromValue<'a> for TextWindowType {
13713 type Checker = glib::value::GenericValueTypeChecker<Self>;
13714
13715 #[inline]
13716 unsafe fn from_value(value: &'a glib::Value) -> Self {
13717 skip_assert_initialized!();
13718 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13719 }
13720}
13721
13722impl ToValue for TextWindowType {
13723 #[inline]
13724 fn to_value(&self) -> glib::Value {
13725 let mut value = glib::Value::for_value_type::<Self>();
13726 unsafe {
13727 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13728 }
13729 value
13730 }
13731
13732 #[inline]
13733 fn value_type(&self) -> glib::Type {
13734 Self::static_type()
13735 }
13736}
13737
13738impl From<TextWindowType> for glib::Value {
13739 #[inline]
13740 fn from(v: TextWindowType) -> Self {
13741 skip_assert_initialized!();
13742 ToValue::to_value(&v)
13743 }
13744}
13745
13746#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13754#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13755#[non_exhaustive]
13756#[doc(alias = "GtkTreeViewColumnSizing")]
13757pub enum TreeViewColumnSizing {
13758 #[doc(alias = "GTK_TREE_VIEW_COLUMN_GROW_ONLY")]
13760 GrowOnly,
13761 #[doc(alias = "GTK_TREE_VIEW_COLUMN_AUTOSIZE")]
13763 Autosize,
13764 #[doc(alias = "GTK_TREE_VIEW_COLUMN_FIXED")]
13766 Fixed,
13767 #[doc(hidden)]
13768 __Unknown(i32),
13769}
13770
13771#[allow(deprecated)]
13772#[doc(hidden)]
13773impl IntoGlib for TreeViewColumnSizing {
13774 type GlibType = ffi::GtkTreeViewColumnSizing;
13775
13776 #[inline]
13777 fn into_glib(self) -> ffi::GtkTreeViewColumnSizing {
13778 match self {
13779 Self::GrowOnly => ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY,
13780 Self::Autosize => ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE,
13781 Self::Fixed => ffi::GTK_TREE_VIEW_COLUMN_FIXED,
13782 Self::__Unknown(value) => value,
13783 }
13784 }
13785}
13786
13787#[allow(deprecated)]
13788#[doc(hidden)]
13789impl FromGlib<ffi::GtkTreeViewColumnSizing> for TreeViewColumnSizing {
13790 #[inline]
13791 unsafe fn from_glib(value: ffi::GtkTreeViewColumnSizing) -> Self {
13792 skip_assert_initialized!();
13793
13794 match value {
13795 ffi::GTK_TREE_VIEW_COLUMN_GROW_ONLY => Self::GrowOnly,
13796 ffi::GTK_TREE_VIEW_COLUMN_AUTOSIZE => Self::Autosize,
13797 ffi::GTK_TREE_VIEW_COLUMN_FIXED => Self::Fixed,
13798 value => Self::__Unknown(value),
13799 }
13800 }
13801}
13802
13803#[allow(deprecated)]
13804impl StaticType for TreeViewColumnSizing {
13805 #[inline]
13806 #[doc(alias = "gtk_tree_view_column_sizing_get_type")]
13807 fn static_type() -> glib::Type {
13808 unsafe { from_glib(ffi::gtk_tree_view_column_sizing_get_type()) }
13809 }
13810}
13811
13812#[allow(deprecated)]
13813impl glib::HasParamSpec for TreeViewColumnSizing {
13814 type ParamSpec = glib::ParamSpecEnum;
13815 type SetValue = Self;
13816 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13817
13818 fn param_spec_builder() -> Self::BuilderFn {
13819 Self::ParamSpec::builder_with_default
13820 }
13821}
13822
13823#[allow(deprecated)]
13824impl glib::value::ValueType for TreeViewColumnSizing {
13825 type Type = Self;
13826}
13827
13828#[allow(deprecated)]
13829unsafe impl<'a> glib::value::FromValue<'a> for TreeViewColumnSizing {
13830 type Checker = glib::value::GenericValueTypeChecker<Self>;
13831
13832 #[inline]
13833 unsafe fn from_value(value: &'a glib::Value) -> Self {
13834 skip_assert_initialized!();
13835 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13836 }
13837}
13838
13839#[allow(deprecated)]
13840impl ToValue for TreeViewColumnSizing {
13841 #[inline]
13842 fn to_value(&self) -> glib::Value {
13843 let mut value = glib::Value::for_value_type::<Self>();
13844 unsafe {
13845 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13846 }
13847 value
13848 }
13849
13850 #[inline]
13851 fn value_type(&self) -> glib::Type {
13852 Self::static_type()
13853 }
13854}
13855
13856#[allow(deprecated)]
13857impl From<TreeViewColumnSizing> for glib::Value {
13858 #[inline]
13859 fn from(v: TreeViewColumnSizing) -> Self {
13860 skip_assert_initialized!();
13861 ToValue::to_value(&v)
13862 }
13863}
13864
13865#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13871#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13872#[non_exhaustive]
13873#[doc(alias = "GtkTreeViewDropPosition")]
13874pub enum TreeViewDropPosition {
13875 #[doc(alias = "GTK_TREE_VIEW_DROP_BEFORE")]
13877 Before,
13878 #[doc(alias = "GTK_TREE_VIEW_DROP_AFTER")]
13880 After,
13881 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_BEFORE")]
13883 IntoOrBefore,
13884 #[doc(alias = "GTK_TREE_VIEW_DROP_INTO_OR_AFTER")]
13886 IntoOrAfter,
13887 #[doc(hidden)]
13888 __Unknown(i32),
13889}
13890
13891#[allow(deprecated)]
13892#[doc(hidden)]
13893impl IntoGlib for TreeViewDropPosition {
13894 type GlibType = ffi::GtkTreeViewDropPosition;
13895
13896 #[inline]
13897 fn into_glib(self) -> ffi::GtkTreeViewDropPosition {
13898 match self {
13899 Self::Before => ffi::GTK_TREE_VIEW_DROP_BEFORE,
13900 Self::After => ffi::GTK_TREE_VIEW_DROP_AFTER,
13901 Self::IntoOrBefore => ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE,
13902 Self::IntoOrAfter => ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER,
13903 Self::__Unknown(value) => value,
13904 }
13905 }
13906}
13907
13908#[allow(deprecated)]
13909#[doc(hidden)]
13910impl FromGlib<ffi::GtkTreeViewDropPosition> for TreeViewDropPosition {
13911 #[inline]
13912 unsafe fn from_glib(value: ffi::GtkTreeViewDropPosition) -> Self {
13913 skip_assert_initialized!();
13914
13915 match value {
13916 ffi::GTK_TREE_VIEW_DROP_BEFORE => Self::Before,
13917 ffi::GTK_TREE_VIEW_DROP_AFTER => Self::After,
13918 ffi::GTK_TREE_VIEW_DROP_INTO_OR_BEFORE => Self::IntoOrBefore,
13919 ffi::GTK_TREE_VIEW_DROP_INTO_OR_AFTER => Self::IntoOrAfter,
13920 value => Self::__Unknown(value),
13921 }
13922 }
13923}
13924
13925#[allow(deprecated)]
13926impl StaticType for TreeViewDropPosition {
13927 #[inline]
13928 #[doc(alias = "gtk_tree_view_drop_position_get_type")]
13929 fn static_type() -> glib::Type {
13930 unsafe { from_glib(ffi::gtk_tree_view_drop_position_get_type()) }
13931 }
13932}
13933
13934#[allow(deprecated)]
13935impl glib::HasParamSpec for TreeViewDropPosition {
13936 type ParamSpec = glib::ParamSpecEnum;
13937 type SetValue = Self;
13938 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
13939
13940 fn param_spec_builder() -> Self::BuilderFn {
13941 Self::ParamSpec::builder_with_default
13942 }
13943}
13944
13945#[allow(deprecated)]
13946impl glib::value::ValueType for TreeViewDropPosition {
13947 type Type = Self;
13948}
13949
13950#[allow(deprecated)]
13951unsafe impl<'a> glib::value::FromValue<'a> for TreeViewDropPosition {
13952 type Checker = glib::value::GenericValueTypeChecker<Self>;
13953
13954 #[inline]
13955 unsafe fn from_value(value: &'a glib::Value) -> Self {
13956 skip_assert_initialized!();
13957 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
13958 }
13959}
13960
13961#[allow(deprecated)]
13962impl ToValue for TreeViewDropPosition {
13963 #[inline]
13964 fn to_value(&self) -> glib::Value {
13965 let mut value = glib::Value::for_value_type::<Self>();
13966 unsafe {
13967 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
13968 }
13969 value
13970 }
13971
13972 #[inline]
13973 fn value_type(&self) -> glib::Type {
13974 Self::static_type()
13975 }
13976}
13977
13978#[allow(deprecated)]
13979impl From<TreeViewDropPosition> for glib::Value {
13980 #[inline]
13981 fn from(v: TreeViewDropPosition) -> Self {
13982 skip_assert_initialized!();
13983 ToValue::to_value(&v)
13984 }
13985}
13986
13987#[cfg_attr(feature = "v4_20", deprecated = "Since 4.20")]
13993#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
13994#[non_exhaustive]
13995#[doc(alias = "GtkTreeViewGridLines")]
13996pub enum TreeViewGridLines {
13997 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_NONE")]
13999 None,
14000 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_HORIZONTAL")]
14002 Horizontal,
14003 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_VERTICAL")]
14005 Vertical,
14006 #[doc(alias = "GTK_TREE_VIEW_GRID_LINES_BOTH")]
14008 Both,
14009 #[doc(hidden)]
14010 __Unknown(i32),
14011}
14012
14013#[allow(deprecated)]
14014#[doc(hidden)]
14015impl IntoGlib for TreeViewGridLines {
14016 type GlibType = ffi::GtkTreeViewGridLines;
14017
14018 #[inline]
14019 fn into_glib(self) -> ffi::GtkTreeViewGridLines {
14020 match self {
14021 Self::None => ffi::GTK_TREE_VIEW_GRID_LINES_NONE,
14022 Self::Horizontal => ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL,
14023 Self::Vertical => ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL,
14024 Self::Both => ffi::GTK_TREE_VIEW_GRID_LINES_BOTH,
14025 Self::__Unknown(value) => value,
14026 }
14027 }
14028}
14029
14030#[allow(deprecated)]
14031#[doc(hidden)]
14032impl FromGlib<ffi::GtkTreeViewGridLines> for TreeViewGridLines {
14033 #[inline]
14034 unsafe fn from_glib(value: ffi::GtkTreeViewGridLines) -> Self {
14035 skip_assert_initialized!();
14036
14037 match value {
14038 ffi::GTK_TREE_VIEW_GRID_LINES_NONE => Self::None,
14039 ffi::GTK_TREE_VIEW_GRID_LINES_HORIZONTAL => Self::Horizontal,
14040 ffi::GTK_TREE_VIEW_GRID_LINES_VERTICAL => Self::Vertical,
14041 ffi::GTK_TREE_VIEW_GRID_LINES_BOTH => Self::Both,
14042 value => Self::__Unknown(value),
14043 }
14044 }
14045}
14046
14047#[allow(deprecated)]
14048impl StaticType for TreeViewGridLines {
14049 #[inline]
14050 #[doc(alias = "gtk_tree_view_grid_lines_get_type")]
14051 fn static_type() -> glib::Type {
14052 unsafe { from_glib(ffi::gtk_tree_view_grid_lines_get_type()) }
14053 }
14054}
14055
14056#[allow(deprecated)]
14057impl glib::HasParamSpec for TreeViewGridLines {
14058 type ParamSpec = glib::ParamSpecEnum;
14059 type SetValue = Self;
14060 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14061
14062 fn param_spec_builder() -> Self::BuilderFn {
14063 Self::ParamSpec::builder_with_default
14064 }
14065}
14066
14067#[allow(deprecated)]
14068impl glib::value::ValueType for TreeViewGridLines {
14069 type Type = Self;
14070}
14071
14072#[allow(deprecated)]
14073unsafe impl<'a> glib::value::FromValue<'a> for TreeViewGridLines {
14074 type Checker = glib::value::GenericValueTypeChecker<Self>;
14075
14076 #[inline]
14077 unsafe fn from_value(value: &'a glib::Value) -> Self {
14078 skip_assert_initialized!();
14079 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14080 }
14081}
14082
14083#[allow(deprecated)]
14084impl ToValue for TreeViewGridLines {
14085 #[inline]
14086 fn to_value(&self) -> glib::Value {
14087 let mut value = glib::Value::for_value_type::<Self>();
14088 unsafe {
14089 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14090 }
14091 value
14092 }
14093
14094 #[inline]
14095 fn value_type(&self) -> glib::Type {
14096 Self::static_type()
14097 }
14098}
14099
14100#[allow(deprecated)]
14101impl From<TreeViewGridLines> for glib::Value {
14102 #[inline]
14103 fn from(v: TreeViewGridLines) -> Self {
14104 skip_assert_initialized!();
14105 ToValue::to_value(&v)
14106 }
14107}
14108
14109#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14111#[non_exhaustive]
14112#[doc(alias = "GtkUnit")]
14113pub enum Unit {
14114 #[doc(alias = "GTK_UNIT_NONE")]
14116 None,
14117 #[doc(alias = "GTK_UNIT_POINTS")]
14119 Points,
14120 #[doc(alias = "GTK_UNIT_INCH")]
14122 Inch,
14123 #[doc(alias = "GTK_UNIT_MM")]
14125 Mm,
14126 #[doc(hidden)]
14127 __Unknown(i32),
14128}
14129
14130#[doc(hidden)]
14131impl IntoGlib for Unit {
14132 type GlibType = ffi::GtkUnit;
14133
14134 #[inline]
14135 fn into_glib(self) -> ffi::GtkUnit {
14136 match self {
14137 Self::None => ffi::GTK_UNIT_NONE,
14138 Self::Points => ffi::GTK_UNIT_POINTS,
14139 Self::Inch => ffi::GTK_UNIT_INCH,
14140 Self::Mm => ffi::GTK_UNIT_MM,
14141 Self::__Unknown(value) => value,
14142 }
14143 }
14144}
14145
14146#[doc(hidden)]
14147impl FromGlib<ffi::GtkUnit> for Unit {
14148 #[inline]
14149 unsafe fn from_glib(value: ffi::GtkUnit) -> Self {
14150 skip_assert_initialized!();
14151
14152 match value {
14153 ffi::GTK_UNIT_NONE => Self::None,
14154 ffi::GTK_UNIT_POINTS => Self::Points,
14155 ffi::GTK_UNIT_INCH => Self::Inch,
14156 ffi::GTK_UNIT_MM => Self::Mm,
14157 value => Self::__Unknown(value),
14158 }
14159 }
14160}
14161
14162impl StaticType for Unit {
14163 #[inline]
14164 #[doc(alias = "gtk_unit_get_type")]
14165 fn static_type() -> glib::Type {
14166 unsafe { from_glib(ffi::gtk_unit_get_type()) }
14167 }
14168}
14169
14170impl glib::HasParamSpec for Unit {
14171 type ParamSpec = glib::ParamSpecEnum;
14172 type SetValue = Self;
14173 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14174
14175 fn param_spec_builder() -> Self::BuilderFn {
14176 Self::ParamSpec::builder_with_default
14177 }
14178}
14179
14180impl glib::value::ValueType for Unit {
14181 type Type = Self;
14182}
14183
14184unsafe impl<'a> glib::value::FromValue<'a> for Unit {
14185 type Checker = glib::value::GenericValueTypeChecker<Self>;
14186
14187 #[inline]
14188 unsafe fn from_value(value: &'a glib::Value) -> Self {
14189 skip_assert_initialized!();
14190 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14191 }
14192}
14193
14194impl ToValue for Unit {
14195 #[inline]
14196 fn to_value(&self) -> glib::Value {
14197 let mut value = glib::Value::for_value_type::<Self>();
14198 unsafe {
14199 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14200 }
14201 value
14202 }
14203
14204 #[inline]
14205 fn value_type(&self) -> glib::Type {
14206 Self::static_type()
14207 }
14208}
14209
14210impl From<Unit> for glib::Value {
14211 #[inline]
14212 fn from(v: Unit) -> Self {
14213 skip_assert_initialized!();
14214 ToValue::to_value(&v)
14215 }
14216}
14217
14218#[cfg(feature = "v4_20")]
14221#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14222#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14223#[non_exhaustive]
14224#[doc(alias = "GtkWindowGravity")]
14225pub enum WindowGravity {
14226 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_LEFT")]
14228 TopLeft,
14229 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP")]
14231 Top,
14232 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_RIGHT")]
14234 TopRight,
14235 #[doc(alias = "GTK_WINDOW_GRAVITY_LEFT")]
14237 Left,
14238 #[doc(alias = "GTK_WINDOW_GRAVITY_CENTER")]
14240 Center,
14241 #[doc(alias = "GTK_WINDOW_GRAVITY_RIGHT")]
14243 Right,
14244 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_LEFT")]
14246 BottomLeft,
14247 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM")]
14249 Bottom,
14250 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_RIGHT")]
14252 BottomRight,
14253 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_START")]
14256 TopStart,
14257 #[doc(alias = "GTK_WINDOW_GRAVITY_TOP_END")]
14260 TopEnd,
14261 #[doc(alias = "GTK_WINDOW_GRAVITY_START")]
14264 Start,
14265 #[doc(alias = "GTK_WINDOW_GRAVITY_END")]
14268 End,
14269 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_START")]
14272 BottomStart,
14273 #[doc(alias = "GTK_WINDOW_GRAVITY_BOTTOM_END")]
14276 BottomEnd,
14277 #[doc(hidden)]
14278 __Unknown(i32),
14279}
14280
14281#[cfg(feature = "v4_20")]
14282#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14283#[doc(hidden)]
14284impl IntoGlib for WindowGravity {
14285 type GlibType = ffi::GtkWindowGravity;
14286
14287 fn into_glib(self) -> ffi::GtkWindowGravity {
14288 match self {
14289 Self::TopLeft => ffi::GTK_WINDOW_GRAVITY_TOP_LEFT,
14290 Self::Top => ffi::GTK_WINDOW_GRAVITY_TOP,
14291 Self::TopRight => ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT,
14292 Self::Left => ffi::GTK_WINDOW_GRAVITY_LEFT,
14293 Self::Center => ffi::GTK_WINDOW_GRAVITY_CENTER,
14294 Self::Right => ffi::GTK_WINDOW_GRAVITY_RIGHT,
14295 Self::BottomLeft => ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT,
14296 Self::Bottom => ffi::GTK_WINDOW_GRAVITY_BOTTOM,
14297 Self::BottomRight => ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT,
14298 Self::TopStart => ffi::GTK_WINDOW_GRAVITY_TOP_START,
14299 Self::TopEnd => ffi::GTK_WINDOW_GRAVITY_TOP_END,
14300 Self::Start => ffi::GTK_WINDOW_GRAVITY_START,
14301 Self::End => ffi::GTK_WINDOW_GRAVITY_END,
14302 Self::BottomStart => ffi::GTK_WINDOW_GRAVITY_BOTTOM_START,
14303 Self::BottomEnd => ffi::GTK_WINDOW_GRAVITY_BOTTOM_END,
14304 Self::__Unknown(value) => value,
14305 }
14306 }
14307}
14308
14309#[cfg(feature = "v4_20")]
14310#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14311#[doc(hidden)]
14312impl FromGlib<ffi::GtkWindowGravity> for WindowGravity {
14313 unsafe fn from_glib(value: ffi::GtkWindowGravity) -> Self {
14314 skip_assert_initialized!();
14315
14316 match value {
14317 ffi::GTK_WINDOW_GRAVITY_TOP_LEFT => Self::TopLeft,
14318 ffi::GTK_WINDOW_GRAVITY_TOP => Self::Top,
14319 ffi::GTK_WINDOW_GRAVITY_TOP_RIGHT => Self::TopRight,
14320 ffi::GTK_WINDOW_GRAVITY_LEFT => Self::Left,
14321 ffi::GTK_WINDOW_GRAVITY_CENTER => Self::Center,
14322 ffi::GTK_WINDOW_GRAVITY_RIGHT => Self::Right,
14323 ffi::GTK_WINDOW_GRAVITY_BOTTOM_LEFT => Self::BottomLeft,
14324 ffi::GTK_WINDOW_GRAVITY_BOTTOM => Self::Bottom,
14325 ffi::GTK_WINDOW_GRAVITY_BOTTOM_RIGHT => Self::BottomRight,
14326 ffi::GTK_WINDOW_GRAVITY_TOP_START => Self::TopStart,
14327 ffi::GTK_WINDOW_GRAVITY_TOP_END => Self::TopEnd,
14328 ffi::GTK_WINDOW_GRAVITY_START => Self::Start,
14329 ffi::GTK_WINDOW_GRAVITY_END => Self::End,
14330 ffi::GTK_WINDOW_GRAVITY_BOTTOM_START => Self::BottomStart,
14331 ffi::GTK_WINDOW_GRAVITY_BOTTOM_END => Self::BottomEnd,
14332 value => Self::__Unknown(value),
14333 }
14334 }
14335}
14336
14337#[cfg(feature = "v4_20")]
14338#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14339impl StaticType for WindowGravity {
14340 #[inline]
14341 #[doc(alias = "gtk_window_gravity_get_type")]
14342 fn static_type() -> glib::Type {
14343 unsafe { from_glib(ffi::gtk_window_gravity_get_type()) }
14344 }
14345}
14346
14347#[cfg(feature = "v4_20")]
14348#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14349impl glib::HasParamSpec for WindowGravity {
14350 type ParamSpec = glib::ParamSpecEnum;
14351 type SetValue = Self;
14352 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14353
14354 fn param_spec_builder() -> Self::BuilderFn {
14355 Self::ParamSpec::builder_with_default
14356 }
14357}
14358
14359#[cfg(feature = "v4_20")]
14360#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14361impl glib::value::ValueType for WindowGravity {
14362 type Type = Self;
14363}
14364
14365#[cfg(feature = "v4_20")]
14366#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14367unsafe impl<'a> glib::value::FromValue<'a> for WindowGravity {
14368 type Checker = glib::value::GenericValueTypeChecker<Self>;
14369
14370 #[inline]
14371 unsafe fn from_value(value: &'a glib::Value) -> Self {
14372 skip_assert_initialized!();
14373 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14374 }
14375}
14376
14377#[cfg(feature = "v4_20")]
14378#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14379impl ToValue for WindowGravity {
14380 #[inline]
14381 fn to_value(&self) -> glib::Value {
14382 let mut value = glib::Value::for_value_type::<Self>();
14383 unsafe {
14384 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14385 }
14386 value
14387 }
14388
14389 #[inline]
14390 fn value_type(&self) -> glib::Type {
14391 Self::static_type()
14392 }
14393}
14394
14395#[cfg(feature = "v4_20")]
14396#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14397impl From<WindowGravity> for glib::Value {
14398 #[inline]
14399 fn from(v: WindowGravity) -> Self {
14400 skip_assert_initialized!();
14401 ToValue::to_value(&v)
14402 }
14403}
14404
14405#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
14407#[non_exhaustive]
14408#[doc(alias = "GtkWrapMode")]
14409pub enum WrapMode {
14410 #[doc(alias = "GTK_WRAP_NONE")]
14412 None,
14413 #[doc(alias = "GTK_WRAP_CHAR")]
14417 Char,
14418 #[doc(alias = "GTK_WRAP_WORD")]
14420 Word,
14421 #[doc(alias = "GTK_WRAP_WORD_CHAR")]
14424 WordChar,
14425 #[doc(hidden)]
14426 __Unknown(i32),
14427}
14428
14429#[doc(hidden)]
14430impl IntoGlib for WrapMode {
14431 type GlibType = ffi::GtkWrapMode;
14432
14433 #[inline]
14434 fn into_glib(self) -> ffi::GtkWrapMode {
14435 match self {
14436 Self::None => ffi::GTK_WRAP_NONE,
14437 Self::Char => ffi::GTK_WRAP_CHAR,
14438 Self::Word => ffi::GTK_WRAP_WORD,
14439 Self::WordChar => ffi::GTK_WRAP_WORD_CHAR,
14440 Self::__Unknown(value) => value,
14441 }
14442 }
14443}
14444
14445#[doc(hidden)]
14446impl FromGlib<ffi::GtkWrapMode> for WrapMode {
14447 #[inline]
14448 unsafe fn from_glib(value: ffi::GtkWrapMode) -> Self {
14449 skip_assert_initialized!();
14450
14451 match value {
14452 ffi::GTK_WRAP_NONE => Self::None,
14453 ffi::GTK_WRAP_CHAR => Self::Char,
14454 ffi::GTK_WRAP_WORD => Self::Word,
14455 ffi::GTK_WRAP_WORD_CHAR => Self::WordChar,
14456 value => Self::__Unknown(value),
14457 }
14458 }
14459}
14460
14461impl StaticType for WrapMode {
14462 #[inline]
14463 #[doc(alias = "gtk_wrap_mode_get_type")]
14464 fn static_type() -> glib::Type {
14465 unsafe { from_glib(ffi::gtk_wrap_mode_get_type()) }
14466 }
14467}
14468
14469impl glib::HasParamSpec for WrapMode {
14470 type ParamSpec = glib::ParamSpecEnum;
14471 type SetValue = Self;
14472 type BuilderFn = fn(&str, Self) -> glib::ParamSpecEnumBuilder<Self>;
14473
14474 fn param_spec_builder() -> Self::BuilderFn {
14475 Self::ParamSpec::builder_with_default
14476 }
14477}
14478
14479impl glib::value::ValueType for WrapMode {
14480 type Type = Self;
14481}
14482
14483unsafe impl<'a> glib::value::FromValue<'a> for WrapMode {
14484 type Checker = glib::value::GenericValueTypeChecker<Self>;
14485
14486 #[inline]
14487 unsafe fn from_value(value: &'a glib::Value) -> Self {
14488 skip_assert_initialized!();
14489 unsafe { from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) }
14490 }
14491}
14492
14493impl ToValue for WrapMode {
14494 #[inline]
14495 fn to_value(&self) -> glib::Value {
14496 let mut value = glib::Value::for_value_type::<Self>();
14497 unsafe {
14498 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib());
14499 }
14500 value
14501 }
14502
14503 #[inline]
14504 fn value_type(&self) -> glib::Type {
14505 Self::static_type()
14506 }
14507}
14508
14509impl From<WrapMode> for glib::Value {
14510 #[inline]
14511 fn from(v: WrapMode) -> Self {
14512 skip_assert_initialized!();
14513 ToValue::to_value(&v)
14514 }
14515}