@@ -2436,6 +2436,124 @@ impl From<ScrollDirection> for glib::Value {
24362436 }
24372437}
24382438
2439+ #[ cfg( feature = "v4_20" ) ]
2440+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2441+ #[ derive( Debug , Eq , PartialEq , Ord , PartialOrd , Hash , Clone , Copy ) ]
2442+ #[ non_exhaustive]
2443+ #[ doc( alias = "GdkScrollRelativeDirection" ) ]
2444+ pub enum ScrollRelativeDirection {
2445+ #[ doc( alias = "GDK_SCROLL_RELATIVE_DIRECTION_IDENTICAL" ) ]
2446+ Identical ,
2447+ #[ doc( alias = "GDK_SCROLL_RELATIVE_DIRECTION_INVERTED" ) ]
2448+ Inverted ,
2449+ #[ doc( alias = "GDK_SCROLL_RELATIVE_DIRECTION_UNKNOWN" ) ]
2450+ Unknown ,
2451+ #[ doc( hidden) ]
2452+ __Unknown( i32 ) ,
2453+ }
2454+
2455+ #[ cfg( feature = "v4_20" ) ]
2456+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2457+ #[ doc( hidden) ]
2458+ impl IntoGlib for ScrollRelativeDirection {
2459+ type GlibType = ffi:: GdkScrollRelativeDirection ;
2460+
2461+ #[ inline]
2462+ fn into_glib ( self ) -> ffi:: GdkScrollRelativeDirection {
2463+ match self {
2464+ Self :: Identical => ffi:: GDK_SCROLL_RELATIVE_DIRECTION_IDENTICAL ,
2465+ Self :: Inverted => ffi:: GDK_SCROLL_RELATIVE_DIRECTION_INVERTED ,
2466+ Self :: Unknown => ffi:: GDK_SCROLL_RELATIVE_DIRECTION_UNKNOWN ,
2467+ Self :: __Unknown( value) => value,
2468+ }
2469+ }
2470+ }
2471+
2472+ #[ cfg( feature = "v4_20" ) ]
2473+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2474+ #[ doc( hidden) ]
2475+ impl FromGlib < ffi:: GdkScrollRelativeDirection > for ScrollRelativeDirection {
2476+ #[ inline]
2477+ unsafe fn from_glib ( value : ffi:: GdkScrollRelativeDirection ) -> Self {
2478+ skip_assert_initialized ! ( ) ;
2479+
2480+ match value {
2481+ ffi:: GDK_SCROLL_RELATIVE_DIRECTION_IDENTICAL => Self :: Identical ,
2482+ ffi:: GDK_SCROLL_RELATIVE_DIRECTION_INVERTED => Self :: Inverted ,
2483+ ffi:: GDK_SCROLL_RELATIVE_DIRECTION_UNKNOWN => Self :: Unknown ,
2484+ value => Self :: __Unknown ( value) ,
2485+ }
2486+ }
2487+ }
2488+
2489+ #[ cfg( feature = "v4_20" ) ]
2490+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2491+ impl StaticType for ScrollRelativeDirection {
2492+ #[ inline]
2493+ #[ doc( alias = "gdk_scroll_relative_direction_get_type" ) ]
2494+ fn static_type ( ) -> glib:: Type {
2495+ unsafe { from_glib ( ffi:: gdk_scroll_relative_direction_get_type ( ) ) }
2496+ }
2497+ }
2498+
2499+ #[ cfg( feature = "v4_20" ) ]
2500+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2501+ impl glib:: HasParamSpec for ScrollRelativeDirection {
2502+ type ParamSpec = glib:: ParamSpecEnum ;
2503+ type SetValue = Self ;
2504+ type BuilderFn = fn ( & str , Self ) -> glib:: ParamSpecEnumBuilder < Self > ;
2505+
2506+ fn param_spec_builder ( ) -> Self :: BuilderFn {
2507+ Self :: ParamSpec :: builder_with_default
2508+ }
2509+ }
2510+
2511+ #[ cfg( feature = "v4_20" ) ]
2512+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2513+ impl glib:: value:: ValueType for ScrollRelativeDirection {
2514+ type Type = Self ;
2515+ }
2516+
2517+ #[ cfg( feature = "v4_20" ) ]
2518+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2519+ unsafe impl < ' a > glib:: value:: FromValue < ' a > for ScrollRelativeDirection {
2520+ type Checker = glib:: value:: GenericValueTypeChecker < Self > ;
2521+
2522+ #[ inline]
2523+ unsafe fn from_value ( value : & ' a glib:: Value ) -> Self {
2524+ skip_assert_initialized ! ( ) ;
2525+ from_glib ( glib:: gobject_ffi:: g_value_get_enum ( value. to_glib_none ( ) . 0 ) )
2526+ }
2527+ }
2528+
2529+ #[ cfg( feature = "v4_20" ) ]
2530+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2531+ impl ToValue for ScrollRelativeDirection {
2532+ #[ inline]
2533+ fn to_value ( & self ) -> glib:: Value {
2534+ let mut value = glib:: Value :: for_value_type :: < Self > ( ) ;
2535+ unsafe {
2536+ glib:: gobject_ffi:: g_value_set_enum ( value. to_glib_none_mut ( ) . 0 , self . into_glib ( ) ) ;
2537+ }
2538+ value
2539+ }
2540+
2541+ #[ inline]
2542+ fn value_type ( & self ) -> glib:: Type {
2543+ Self :: static_type ( )
2544+ }
2545+ }
2546+
2547+ #[ cfg( feature = "v4_20" ) ]
2548+ #[ cfg_attr( docsrs, doc( cfg( feature = "v4_20" ) ) ) ]
2549+ impl From < ScrollRelativeDirection > for glib:: Value {
2550+ #[ inline]
2551+ fn from ( v : ScrollRelativeDirection ) -> Self {
2552+ skip_assert_initialized ! ( ) ;
2553+ ToValue :: to_value ( & v)
2554+ }
2555+ }
2556+
24392557#[ cfg( feature = "v4_8" ) ]
24402558#[ cfg_attr( docsrs, doc( cfg( feature = "v4_8" ) ) ) ]
24412559#[ derive( Debug , Eq , PartialEq , Ord , PartialOrd , Hash , Clone , Copy ) ]
0 commit comments