{- |
Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License    : LGPL-2.1
Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)

/No description available in the introspection data./
-}

#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
       && !defined(__HADDOCK_VERSION__))

module GI.Handy.Objects.Arrows
    (

-- * Exported types
    Arrows(..)                              ,
    IsArrows                                ,
    toArrows                                ,
    noArrows                                ,


 -- * Methods
-- ** animate #method:animate#

#if ENABLE_OVERLOADING
    ArrowsAnimateMethodInfo                 ,
#endif
    arrowsAnimate                           ,


-- ** getCount #method:getCount#

#if ENABLE_OVERLOADING
    ArrowsGetCountMethodInfo                ,
#endif
    arrowsGetCount                          ,


-- ** getDirection #method:getDirection#

#if ENABLE_OVERLOADING
    ArrowsGetDirectionMethodInfo            ,
#endif
    arrowsGetDirection                      ,


-- ** getDuration #method:getDuration#

#if ENABLE_OVERLOADING
    ArrowsGetDurationMethodInfo             ,
#endif
    arrowsGetDuration                       ,


-- ** new #method:new#

    arrowsNew                               ,


-- ** setCount #method:setCount#

#if ENABLE_OVERLOADING
    ArrowsSetCountMethodInfo                ,
#endif
    arrowsSetCount                          ,


-- ** setDirection #method:setDirection#

#if ENABLE_OVERLOADING
    ArrowsSetDirectionMethodInfo            ,
#endif
    arrowsSetDirection                      ,


-- ** setDuration #method:setDuration#

#if ENABLE_OVERLOADING
    ArrowsSetDurationMethodInfo             ,
#endif
    arrowsSetDuration                       ,




 -- * Properties
-- ** count #attr:count#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    ArrowsCountPropertyInfo                 ,
#endif
#if ENABLE_OVERLOADING
    arrowsCount                             ,
#endif
    constructArrowsCount                    ,
    getArrowsCount                          ,
    setArrowsCount                          ,


-- ** direction #attr:direction#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    ArrowsDirectionPropertyInfo             ,
#endif
#if ENABLE_OVERLOADING
    arrowsDirection                         ,
#endif
    constructArrowsDirection                ,
    getArrowsDirection                      ,
    setArrowsDirection                      ,


-- ** duration #attr:duration#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    ArrowsDurationPropertyInfo              ,
#endif
#if ENABLE_OVERLOADING
    arrowsDuration                          ,
#endif
    constructArrowsDuration                 ,
    getArrowsDuration                       ,
    setArrowsDuration                       ,




    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL

import qualified GI.Atk.Interfaces.ImplementorIface as Atk.ImplementorIface
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gtk.Interfaces.Buildable as Gtk.Buildable
import qualified GI.Gtk.Objects.DrawingArea as Gtk.DrawingArea
import qualified GI.Gtk.Objects.Widget as Gtk.Widget
import {-# SOURCE #-} qualified GI.Handy.Enums as Handy.Enums

-- | Memory-managed wrapper type.
newtype Arrows = Arrows (ManagedPtr Arrows)
foreign import ccall "hdy_arrows_get_type"
    c_hdy_arrows_get_type :: IO GType

instance GObject Arrows where
    gobjectType = c_hdy_arrows_get_type


-- | Type class for types which can be safely cast to `Arrows`, for instance with `toArrows`.
class (GObject o, O.IsDescendantOf Arrows o) => IsArrows o
instance (GObject o, O.IsDescendantOf Arrows o) => IsArrows o

instance O.HasParentTypes Arrows
type instance O.ParentTypes Arrows = '[Gtk.DrawingArea.DrawingArea, Gtk.Widget.Widget, GObject.Object.Object, Atk.ImplementorIface.ImplementorIface, Gtk.Buildable.Buildable]

-- | Cast to `Arrows`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toArrows :: (MonadIO m, IsArrows o) => o -> m Arrows
toArrows = liftIO . unsafeCastTo Arrows

-- | A convenience alias for `Nothing` :: `Maybe` `Arrows`.
noArrows :: Maybe Arrows
noArrows = Nothing

#if ENABLE_OVERLOADING
type family ResolveArrowsMethod (t :: Symbol) (o :: *) :: * where
    ResolveArrowsMethod "activate" o = Gtk.Widget.WidgetActivateMethodInfo
    ResolveArrowsMethod "addAccelerator" o = Gtk.Widget.WidgetAddAcceleratorMethodInfo
    ResolveArrowsMethod "addChild" o = Gtk.Buildable.BuildableAddChildMethodInfo
    ResolveArrowsMethod "addDeviceEvents" o = Gtk.Widget.WidgetAddDeviceEventsMethodInfo
    ResolveArrowsMethod "addEvents" o = Gtk.Widget.WidgetAddEventsMethodInfo
    ResolveArrowsMethod "addMnemonicLabel" o = Gtk.Widget.WidgetAddMnemonicLabelMethodInfo
    ResolveArrowsMethod "addTickCallback" o = Gtk.Widget.WidgetAddTickCallbackMethodInfo
    ResolveArrowsMethod "animate" o = ArrowsAnimateMethodInfo
    ResolveArrowsMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveArrowsMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveArrowsMethod "canActivateAccel" o = Gtk.Widget.WidgetCanActivateAccelMethodInfo
    ResolveArrowsMethod "childFocus" o = Gtk.Widget.WidgetChildFocusMethodInfo
    ResolveArrowsMethod "childNotify" o = Gtk.Widget.WidgetChildNotifyMethodInfo
    ResolveArrowsMethod "classPath" o = Gtk.Widget.WidgetClassPathMethodInfo
    ResolveArrowsMethod "computeExpand" o = Gtk.Widget.WidgetComputeExpandMethodInfo
    ResolveArrowsMethod "constructChild" o = Gtk.Buildable.BuildableConstructChildMethodInfo
    ResolveArrowsMethod "createPangoContext" o = Gtk.Widget.WidgetCreatePangoContextMethodInfo
    ResolveArrowsMethod "createPangoLayout" o = Gtk.Widget.WidgetCreatePangoLayoutMethodInfo
    ResolveArrowsMethod "customFinished" o = Gtk.Buildable.BuildableCustomFinishedMethodInfo
    ResolveArrowsMethod "customTagEnd" o = Gtk.Buildable.BuildableCustomTagEndMethodInfo
    ResolveArrowsMethod "customTagStart" o = Gtk.Buildable.BuildableCustomTagStartMethodInfo
    ResolveArrowsMethod "destroy" o = Gtk.Widget.WidgetDestroyMethodInfo
    ResolveArrowsMethod "destroyed" o = Gtk.Widget.WidgetDestroyedMethodInfo
    ResolveArrowsMethod "deviceIsShadowed" o = Gtk.Widget.WidgetDeviceIsShadowedMethodInfo
    ResolveArrowsMethod "dragBegin" o = Gtk.Widget.WidgetDragBeginMethodInfo
    ResolveArrowsMethod "dragBeginWithCoordinates" o = Gtk.Widget.WidgetDragBeginWithCoordinatesMethodInfo
    ResolveArrowsMethod "dragCheckThreshold" o = Gtk.Widget.WidgetDragCheckThresholdMethodInfo
    ResolveArrowsMethod "dragDestAddImageTargets" o = Gtk.Widget.WidgetDragDestAddImageTargetsMethodInfo
    ResolveArrowsMethod "dragDestAddTextTargets" o = Gtk.Widget.WidgetDragDestAddTextTargetsMethodInfo
    ResolveArrowsMethod "dragDestAddUriTargets" o = Gtk.Widget.WidgetDragDestAddUriTargetsMethodInfo
    ResolveArrowsMethod "dragDestFindTarget" o = Gtk.Widget.WidgetDragDestFindTargetMethodInfo
    ResolveArrowsMethod "dragDestGetTargetList" o = Gtk.Widget.WidgetDragDestGetTargetListMethodInfo
    ResolveArrowsMethod "dragDestGetTrackMotion" o = Gtk.Widget.WidgetDragDestGetTrackMotionMethodInfo
    ResolveArrowsMethod "dragDestSet" o = Gtk.Widget.WidgetDragDestSetMethodInfo
    ResolveArrowsMethod "dragDestSetProxy" o = Gtk.Widget.WidgetDragDestSetProxyMethodInfo
    ResolveArrowsMethod "dragDestSetTargetList" o = Gtk.Widget.WidgetDragDestSetTargetListMethodInfo
    ResolveArrowsMethod "dragDestSetTrackMotion" o = Gtk.Widget.WidgetDragDestSetTrackMotionMethodInfo
    ResolveArrowsMethod "dragDestUnset" o = Gtk.Widget.WidgetDragDestUnsetMethodInfo
    ResolveArrowsMethod "dragGetData" o = Gtk.Widget.WidgetDragGetDataMethodInfo
    ResolveArrowsMethod "dragHighlight" o = Gtk.Widget.WidgetDragHighlightMethodInfo
    ResolveArrowsMethod "dragSourceAddImageTargets" o = Gtk.Widget.WidgetDragSourceAddImageTargetsMethodInfo
    ResolveArrowsMethod "dragSourceAddTextTargets" o = Gtk.Widget.WidgetDragSourceAddTextTargetsMethodInfo
    ResolveArrowsMethod "dragSourceAddUriTargets" o = Gtk.Widget.WidgetDragSourceAddUriTargetsMethodInfo
    ResolveArrowsMethod "dragSourceGetTargetList" o = Gtk.Widget.WidgetDragSourceGetTargetListMethodInfo
    ResolveArrowsMethod "dragSourceSet" o = Gtk.Widget.WidgetDragSourceSetMethodInfo
    ResolveArrowsMethod "dragSourceSetIconGicon" o = Gtk.Widget.WidgetDragSourceSetIconGiconMethodInfo
    ResolveArrowsMethod "dragSourceSetIconName" o = Gtk.Widget.WidgetDragSourceSetIconNameMethodInfo
    ResolveArrowsMethod "dragSourceSetIconPixbuf" o = Gtk.Widget.WidgetDragSourceSetIconPixbufMethodInfo
    ResolveArrowsMethod "dragSourceSetIconStock" o = Gtk.Widget.WidgetDragSourceSetIconStockMethodInfo
    ResolveArrowsMethod "dragSourceSetTargetList" o = Gtk.Widget.WidgetDragSourceSetTargetListMethodInfo
    ResolveArrowsMethod "dragSourceUnset" o = Gtk.Widget.WidgetDragSourceUnsetMethodInfo
    ResolveArrowsMethod "dragUnhighlight" o = Gtk.Widget.WidgetDragUnhighlightMethodInfo
    ResolveArrowsMethod "draw" o = Gtk.Widget.WidgetDrawMethodInfo
    ResolveArrowsMethod "ensureStyle" o = Gtk.Widget.WidgetEnsureStyleMethodInfo
    ResolveArrowsMethod "errorBell" o = Gtk.Widget.WidgetErrorBellMethodInfo
    ResolveArrowsMethod "event" o = Gtk.Widget.WidgetEventMethodInfo
    ResolveArrowsMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveArrowsMethod "freezeChildNotify" o = Gtk.Widget.WidgetFreezeChildNotifyMethodInfo
    ResolveArrowsMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveArrowsMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveArrowsMethod "grabAdd" o = Gtk.Widget.WidgetGrabAddMethodInfo
    ResolveArrowsMethod "grabDefault" o = Gtk.Widget.WidgetGrabDefaultMethodInfo
    ResolveArrowsMethod "grabFocus" o = Gtk.Widget.WidgetGrabFocusMethodInfo
    ResolveArrowsMethod "grabRemove" o = Gtk.Widget.WidgetGrabRemoveMethodInfo
    ResolveArrowsMethod "hasDefault" o = Gtk.Widget.WidgetHasDefaultMethodInfo
    ResolveArrowsMethod "hasFocus" o = Gtk.Widget.WidgetHasFocusMethodInfo
    ResolveArrowsMethod "hasGrab" o = Gtk.Widget.WidgetHasGrabMethodInfo
    ResolveArrowsMethod "hasRcStyle" o = Gtk.Widget.WidgetHasRcStyleMethodInfo
    ResolveArrowsMethod "hasScreen" o = Gtk.Widget.WidgetHasScreenMethodInfo
    ResolveArrowsMethod "hasVisibleFocus" o = Gtk.Widget.WidgetHasVisibleFocusMethodInfo
    ResolveArrowsMethod "hide" o = Gtk.Widget.WidgetHideMethodInfo
    ResolveArrowsMethod "hideOnDelete" o = Gtk.Widget.WidgetHideOnDeleteMethodInfo
    ResolveArrowsMethod "inDestruction" o = Gtk.Widget.WidgetInDestructionMethodInfo
    ResolveArrowsMethod "initTemplate" o = Gtk.Widget.WidgetInitTemplateMethodInfo
    ResolveArrowsMethod "inputShapeCombineRegion" o = Gtk.Widget.WidgetInputShapeCombineRegionMethodInfo
    ResolveArrowsMethod "insertActionGroup" o = Gtk.Widget.WidgetInsertActionGroupMethodInfo
    ResolveArrowsMethod "intersect" o = Gtk.Widget.WidgetIntersectMethodInfo
    ResolveArrowsMethod "isAncestor" o = Gtk.Widget.WidgetIsAncestorMethodInfo
    ResolveArrowsMethod "isComposited" o = Gtk.Widget.WidgetIsCompositedMethodInfo
    ResolveArrowsMethod "isDrawable" o = Gtk.Widget.WidgetIsDrawableMethodInfo
    ResolveArrowsMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveArrowsMethod "isFocus" o = Gtk.Widget.WidgetIsFocusMethodInfo
    ResolveArrowsMethod "isSensitive" o = Gtk.Widget.WidgetIsSensitiveMethodInfo
    ResolveArrowsMethod "isToplevel" o = Gtk.Widget.WidgetIsToplevelMethodInfo
    ResolveArrowsMethod "isVisible" o = Gtk.Widget.WidgetIsVisibleMethodInfo
    ResolveArrowsMethod "keynavFailed" o = Gtk.Widget.WidgetKeynavFailedMethodInfo
    ResolveArrowsMethod "listAccelClosures" o = Gtk.Widget.WidgetListAccelClosuresMethodInfo
    ResolveArrowsMethod "listActionPrefixes" o = Gtk.Widget.WidgetListActionPrefixesMethodInfo
    ResolveArrowsMethod "listMnemonicLabels" o = Gtk.Widget.WidgetListMnemonicLabelsMethodInfo
    ResolveArrowsMethod "map" o = Gtk.Widget.WidgetMapMethodInfo
    ResolveArrowsMethod "mnemonicActivate" o = Gtk.Widget.WidgetMnemonicActivateMethodInfo
    ResolveArrowsMethod "modifyBase" o = Gtk.Widget.WidgetModifyBaseMethodInfo
    ResolveArrowsMethod "modifyBg" o = Gtk.Widget.WidgetModifyBgMethodInfo
    ResolveArrowsMethod "modifyCursor" o = Gtk.Widget.WidgetModifyCursorMethodInfo
    ResolveArrowsMethod "modifyFg" o = Gtk.Widget.WidgetModifyFgMethodInfo
    ResolveArrowsMethod "modifyFont" o = Gtk.Widget.WidgetModifyFontMethodInfo
    ResolveArrowsMethod "modifyStyle" o = Gtk.Widget.WidgetModifyStyleMethodInfo
    ResolveArrowsMethod "modifyText" o = Gtk.Widget.WidgetModifyTextMethodInfo
    ResolveArrowsMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveArrowsMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveArrowsMethod "overrideBackgroundColor" o = Gtk.Widget.WidgetOverrideBackgroundColorMethodInfo
    ResolveArrowsMethod "overrideColor" o = Gtk.Widget.WidgetOverrideColorMethodInfo
    ResolveArrowsMethod "overrideCursor" o = Gtk.Widget.WidgetOverrideCursorMethodInfo
    ResolveArrowsMethod "overrideFont" o = Gtk.Widget.WidgetOverrideFontMethodInfo
    ResolveArrowsMethod "overrideSymbolicColor" o = Gtk.Widget.WidgetOverrideSymbolicColorMethodInfo
    ResolveArrowsMethod "parserFinished" o = Gtk.Buildable.BuildableParserFinishedMethodInfo
    ResolveArrowsMethod "path" o = Gtk.Widget.WidgetPathMethodInfo
    ResolveArrowsMethod "queueAllocate" o = Gtk.Widget.WidgetQueueAllocateMethodInfo
    ResolveArrowsMethod "queueComputeExpand" o = Gtk.Widget.WidgetQueueComputeExpandMethodInfo
    ResolveArrowsMethod "queueDraw" o = Gtk.Widget.WidgetQueueDrawMethodInfo
    ResolveArrowsMethod "queueDrawArea" o = Gtk.Widget.WidgetQueueDrawAreaMethodInfo
    ResolveArrowsMethod "queueDrawRegion" o = Gtk.Widget.WidgetQueueDrawRegionMethodInfo
    ResolveArrowsMethod "queueResize" o = Gtk.Widget.WidgetQueueResizeMethodInfo
    ResolveArrowsMethod "queueResizeNoRedraw" o = Gtk.Widget.WidgetQueueResizeNoRedrawMethodInfo
    ResolveArrowsMethod "realize" o = Gtk.Widget.WidgetRealizeMethodInfo
    ResolveArrowsMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveArrowsMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveArrowsMethod "regionIntersect" o = Gtk.Widget.WidgetRegionIntersectMethodInfo
    ResolveArrowsMethod "registerWindow" o = Gtk.Widget.WidgetRegisterWindowMethodInfo
    ResolveArrowsMethod "removeAccelerator" o = Gtk.Widget.WidgetRemoveAcceleratorMethodInfo
    ResolveArrowsMethod "removeMnemonicLabel" o = Gtk.Widget.WidgetRemoveMnemonicLabelMethodInfo
    ResolveArrowsMethod "removeTickCallback" o = Gtk.Widget.WidgetRemoveTickCallbackMethodInfo
    ResolveArrowsMethod "renderIcon" o = Gtk.Widget.WidgetRenderIconMethodInfo
    ResolveArrowsMethod "renderIconPixbuf" o = Gtk.Widget.WidgetRenderIconPixbufMethodInfo
    ResolveArrowsMethod "reparent" o = Gtk.Widget.WidgetReparentMethodInfo
    ResolveArrowsMethod "resetRcStyles" o = Gtk.Widget.WidgetResetRcStylesMethodInfo
    ResolveArrowsMethod "resetStyle" o = Gtk.Widget.WidgetResetStyleMethodInfo
    ResolveArrowsMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveArrowsMethod "sendExpose" o = Gtk.Widget.WidgetSendExposeMethodInfo
    ResolveArrowsMethod "sendFocusChange" o = Gtk.Widget.WidgetSendFocusChangeMethodInfo
    ResolveArrowsMethod "shapeCombineRegion" o = Gtk.Widget.WidgetShapeCombineRegionMethodInfo
    ResolveArrowsMethod "show" o = Gtk.Widget.WidgetShowMethodInfo
    ResolveArrowsMethod "showAll" o = Gtk.Widget.WidgetShowAllMethodInfo
    ResolveArrowsMethod "showNow" o = Gtk.Widget.WidgetShowNowMethodInfo
    ResolveArrowsMethod "sizeAllocate" o = Gtk.Widget.WidgetSizeAllocateMethodInfo
    ResolveArrowsMethod "sizeAllocateWithBaseline" o = Gtk.Widget.WidgetSizeAllocateWithBaselineMethodInfo
    ResolveArrowsMethod "sizeRequest" o = Gtk.Widget.WidgetSizeRequestMethodInfo
    ResolveArrowsMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveArrowsMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveArrowsMethod "styleAttach" o = Gtk.Widget.WidgetStyleAttachMethodInfo
    ResolveArrowsMethod "styleGetProperty" o = Gtk.Widget.WidgetStyleGetPropertyMethodInfo
    ResolveArrowsMethod "thawChildNotify" o = Gtk.Widget.WidgetThawChildNotifyMethodInfo
    ResolveArrowsMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveArrowsMethod "translateCoordinates" o = Gtk.Widget.WidgetTranslateCoordinatesMethodInfo
    ResolveArrowsMethod "triggerTooltipQuery" o = Gtk.Widget.WidgetTriggerTooltipQueryMethodInfo
    ResolveArrowsMethod "unmap" o = Gtk.Widget.WidgetUnmapMethodInfo
    ResolveArrowsMethod "unparent" o = Gtk.Widget.WidgetUnparentMethodInfo
    ResolveArrowsMethod "unrealize" o = Gtk.Widget.WidgetUnrealizeMethodInfo
    ResolveArrowsMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveArrowsMethod "unregisterWindow" o = Gtk.Widget.WidgetUnregisterWindowMethodInfo
    ResolveArrowsMethod "unsetStateFlags" o = Gtk.Widget.WidgetUnsetStateFlagsMethodInfo
    ResolveArrowsMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveArrowsMethod "getAccessible" o = Gtk.Widget.WidgetGetAccessibleMethodInfo
    ResolveArrowsMethod "getActionGroup" o = Gtk.Widget.WidgetGetActionGroupMethodInfo
    ResolveArrowsMethod "getAllocatedBaseline" o = Gtk.Widget.WidgetGetAllocatedBaselineMethodInfo
    ResolveArrowsMethod "getAllocatedHeight" o = Gtk.Widget.WidgetGetAllocatedHeightMethodInfo
    ResolveArrowsMethod "getAllocatedSize" o = Gtk.Widget.WidgetGetAllocatedSizeMethodInfo
    ResolveArrowsMethod "getAllocatedWidth" o = Gtk.Widget.WidgetGetAllocatedWidthMethodInfo
    ResolveArrowsMethod "getAllocation" o = Gtk.Widget.WidgetGetAllocationMethodInfo
    ResolveArrowsMethod "getAncestor" o = Gtk.Widget.WidgetGetAncestorMethodInfo
    ResolveArrowsMethod "getAppPaintable" o = Gtk.Widget.WidgetGetAppPaintableMethodInfo
    ResolveArrowsMethod "getCanDefault" o = Gtk.Widget.WidgetGetCanDefaultMethodInfo
    ResolveArrowsMethod "getCanFocus" o = Gtk.Widget.WidgetGetCanFocusMethodInfo
    ResolveArrowsMethod "getChildRequisition" o = Gtk.Widget.WidgetGetChildRequisitionMethodInfo
    ResolveArrowsMethod "getChildVisible" o = Gtk.Widget.WidgetGetChildVisibleMethodInfo
    ResolveArrowsMethod "getClip" o = Gtk.Widget.WidgetGetClipMethodInfo
    ResolveArrowsMethod "getClipboard" o = Gtk.Widget.WidgetGetClipboardMethodInfo
    ResolveArrowsMethod "getCompositeName" o = Gtk.Widget.WidgetGetCompositeNameMethodInfo
    ResolveArrowsMethod "getCount" o = ArrowsGetCountMethodInfo
    ResolveArrowsMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveArrowsMethod "getDeviceEnabled" o = Gtk.Widget.WidgetGetDeviceEnabledMethodInfo
    ResolveArrowsMethod "getDeviceEvents" o = Gtk.Widget.WidgetGetDeviceEventsMethodInfo
    ResolveArrowsMethod "getDirection" o = ArrowsGetDirectionMethodInfo
    ResolveArrowsMethod "getDisplay" o = Gtk.Widget.WidgetGetDisplayMethodInfo
    ResolveArrowsMethod "getDoubleBuffered" o = Gtk.Widget.WidgetGetDoubleBufferedMethodInfo
    ResolveArrowsMethod "getDuration" o = ArrowsGetDurationMethodInfo
    ResolveArrowsMethod "getEvents" o = Gtk.Widget.WidgetGetEventsMethodInfo
    ResolveArrowsMethod "getFocusOnClick" o = Gtk.Widget.WidgetGetFocusOnClickMethodInfo
    ResolveArrowsMethod "getFontMap" o = Gtk.Widget.WidgetGetFontMapMethodInfo
    ResolveArrowsMethod "getFontOptions" o = Gtk.Widget.WidgetGetFontOptionsMethodInfo
    ResolveArrowsMethod "getFrameClock" o = Gtk.Widget.WidgetGetFrameClockMethodInfo
    ResolveArrowsMethod "getHalign" o = Gtk.Widget.WidgetGetHalignMethodInfo
    ResolveArrowsMethod "getHasTooltip" o = Gtk.Widget.WidgetGetHasTooltipMethodInfo
    ResolveArrowsMethod "getHasWindow" o = Gtk.Widget.WidgetGetHasWindowMethodInfo
    ResolveArrowsMethod "getHexpand" o = Gtk.Widget.WidgetGetHexpandMethodInfo
    ResolveArrowsMethod "getHexpandSet" o = Gtk.Widget.WidgetGetHexpandSetMethodInfo
    ResolveArrowsMethod "getInternalChild" o = Gtk.Buildable.BuildableGetInternalChildMethodInfo
    ResolveArrowsMethod "getMapped" o = Gtk.Widget.WidgetGetMappedMethodInfo
    ResolveArrowsMethod "getMarginBottom" o = Gtk.Widget.WidgetGetMarginBottomMethodInfo
    ResolveArrowsMethod "getMarginEnd" o = Gtk.Widget.WidgetGetMarginEndMethodInfo
    ResolveArrowsMethod "getMarginLeft" o = Gtk.Widget.WidgetGetMarginLeftMethodInfo
    ResolveArrowsMethod "getMarginRight" o = Gtk.Widget.WidgetGetMarginRightMethodInfo
    ResolveArrowsMethod "getMarginStart" o = Gtk.Widget.WidgetGetMarginStartMethodInfo
    ResolveArrowsMethod "getMarginTop" o = Gtk.Widget.WidgetGetMarginTopMethodInfo
    ResolveArrowsMethod "getModifierMask" o = Gtk.Widget.WidgetGetModifierMaskMethodInfo
    ResolveArrowsMethod "getModifierStyle" o = Gtk.Widget.WidgetGetModifierStyleMethodInfo
    ResolveArrowsMethod "getName" o = Gtk.Widget.WidgetGetNameMethodInfo
    ResolveArrowsMethod "getNoShowAll" o = Gtk.Widget.WidgetGetNoShowAllMethodInfo
    ResolveArrowsMethod "getOpacity" o = Gtk.Widget.WidgetGetOpacityMethodInfo
    ResolveArrowsMethod "getPangoContext" o = Gtk.Widget.WidgetGetPangoContextMethodInfo
    ResolveArrowsMethod "getParent" o = Gtk.Widget.WidgetGetParentMethodInfo
    ResolveArrowsMethod "getParentWindow" o = Gtk.Widget.WidgetGetParentWindowMethodInfo
    ResolveArrowsMethod "getPath" o = Gtk.Widget.WidgetGetPathMethodInfo
    ResolveArrowsMethod "getPointer" o = Gtk.Widget.WidgetGetPointerMethodInfo
    ResolveArrowsMethod "getPreferredHeight" o = Gtk.Widget.WidgetGetPreferredHeightMethodInfo
    ResolveArrowsMethod "getPreferredHeightAndBaselineForWidth" o = Gtk.Widget.WidgetGetPreferredHeightAndBaselineForWidthMethodInfo
    ResolveArrowsMethod "getPreferredHeightForWidth" o = Gtk.Widget.WidgetGetPreferredHeightForWidthMethodInfo
    ResolveArrowsMethod "getPreferredSize" o = Gtk.Widget.WidgetGetPreferredSizeMethodInfo
    ResolveArrowsMethod "getPreferredWidth" o = Gtk.Widget.WidgetGetPreferredWidthMethodInfo
    ResolveArrowsMethod "getPreferredWidthForHeight" o = Gtk.Widget.WidgetGetPreferredWidthForHeightMethodInfo
    ResolveArrowsMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveArrowsMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveArrowsMethod "getRealized" o = Gtk.Widget.WidgetGetRealizedMethodInfo
    ResolveArrowsMethod "getReceivesDefault" o = Gtk.Widget.WidgetGetReceivesDefaultMethodInfo
    ResolveArrowsMethod "getRequestMode" o = Gtk.Widget.WidgetGetRequestModeMethodInfo
    ResolveArrowsMethod "getRequisition" o = Gtk.Widget.WidgetGetRequisitionMethodInfo
    ResolveArrowsMethod "getRootWindow" o = Gtk.Widget.WidgetGetRootWindowMethodInfo
    ResolveArrowsMethod "getScaleFactor" o = Gtk.Widget.WidgetGetScaleFactorMethodInfo
    ResolveArrowsMethod "getScreen" o = Gtk.Widget.WidgetGetScreenMethodInfo
    ResolveArrowsMethod "getSensitive" o = Gtk.Widget.WidgetGetSensitiveMethodInfo
    ResolveArrowsMethod "getSettings" o = Gtk.Widget.WidgetGetSettingsMethodInfo
    ResolveArrowsMethod "getSizeRequest" o = Gtk.Widget.WidgetGetSizeRequestMethodInfo
    ResolveArrowsMethod "getState" o = Gtk.Widget.WidgetGetStateMethodInfo
    ResolveArrowsMethod "getStateFlags" o = Gtk.Widget.WidgetGetStateFlagsMethodInfo
    ResolveArrowsMethod "getStyle" o = Gtk.Widget.WidgetGetStyleMethodInfo
    ResolveArrowsMethod "getStyleContext" o = Gtk.Widget.WidgetGetStyleContextMethodInfo
    ResolveArrowsMethod "getSupportMultidevice" o = Gtk.Widget.WidgetGetSupportMultideviceMethodInfo
    ResolveArrowsMethod "getTemplateChild" o = Gtk.Widget.WidgetGetTemplateChildMethodInfo
    ResolveArrowsMethod "getTooltipMarkup" o = Gtk.Widget.WidgetGetTooltipMarkupMethodInfo
    ResolveArrowsMethod "getTooltipText" o = Gtk.Widget.WidgetGetTooltipTextMethodInfo
    ResolveArrowsMethod "getTooltipWindow" o = Gtk.Widget.WidgetGetTooltipWindowMethodInfo
    ResolveArrowsMethod "getToplevel" o = Gtk.Widget.WidgetGetToplevelMethodInfo
    ResolveArrowsMethod "getValign" o = Gtk.Widget.WidgetGetValignMethodInfo
    ResolveArrowsMethod "getValignWithBaseline" o = Gtk.Widget.WidgetGetValignWithBaselineMethodInfo
    ResolveArrowsMethod "getVexpand" o = Gtk.Widget.WidgetGetVexpandMethodInfo
    ResolveArrowsMethod "getVexpandSet" o = Gtk.Widget.WidgetGetVexpandSetMethodInfo
    ResolveArrowsMethod "getVisible" o = Gtk.Widget.WidgetGetVisibleMethodInfo
    ResolveArrowsMethod "getVisual" o = Gtk.Widget.WidgetGetVisualMethodInfo
    ResolveArrowsMethod "getWindow" o = Gtk.Widget.WidgetGetWindowMethodInfo
    ResolveArrowsMethod "setAccelPath" o = Gtk.Widget.WidgetSetAccelPathMethodInfo
    ResolveArrowsMethod "setAllocation" o = Gtk.Widget.WidgetSetAllocationMethodInfo
    ResolveArrowsMethod "setAppPaintable" o = Gtk.Widget.WidgetSetAppPaintableMethodInfo
    ResolveArrowsMethod "setBuildableProperty" o = Gtk.Buildable.BuildableSetBuildablePropertyMethodInfo
    ResolveArrowsMethod "setCanDefault" o = Gtk.Widget.WidgetSetCanDefaultMethodInfo
    ResolveArrowsMethod "setCanFocus" o = Gtk.Widget.WidgetSetCanFocusMethodInfo
    ResolveArrowsMethod "setChildVisible" o = Gtk.Widget.WidgetSetChildVisibleMethodInfo
    ResolveArrowsMethod "setClip" o = Gtk.Widget.WidgetSetClipMethodInfo
    ResolveArrowsMethod "setCompositeName" o = Gtk.Widget.WidgetSetCompositeNameMethodInfo
    ResolveArrowsMethod "setCount" o = ArrowsSetCountMethodInfo
    ResolveArrowsMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveArrowsMethod "setDeviceEnabled" o = Gtk.Widget.WidgetSetDeviceEnabledMethodInfo
    ResolveArrowsMethod "setDeviceEvents" o = Gtk.Widget.WidgetSetDeviceEventsMethodInfo
    ResolveArrowsMethod "setDirection" o = ArrowsSetDirectionMethodInfo
    ResolveArrowsMethod "setDoubleBuffered" o = Gtk.Widget.WidgetSetDoubleBufferedMethodInfo
    ResolveArrowsMethod "setDuration" o = ArrowsSetDurationMethodInfo
    ResolveArrowsMethod "setEvents" o = Gtk.Widget.WidgetSetEventsMethodInfo
    ResolveArrowsMethod "setFocusOnClick" o = Gtk.Widget.WidgetSetFocusOnClickMethodInfo
    ResolveArrowsMethod "setFontMap" o = Gtk.Widget.WidgetSetFontMapMethodInfo
    ResolveArrowsMethod "setFontOptions" o = Gtk.Widget.WidgetSetFontOptionsMethodInfo
    ResolveArrowsMethod "setHalign" o = Gtk.Widget.WidgetSetHalignMethodInfo
    ResolveArrowsMethod "setHasTooltip" o = Gtk.Widget.WidgetSetHasTooltipMethodInfo
    ResolveArrowsMethod "setHasWindow" o = Gtk.Widget.WidgetSetHasWindowMethodInfo
    ResolveArrowsMethod "setHexpand" o = Gtk.Widget.WidgetSetHexpandMethodInfo
    ResolveArrowsMethod "setHexpandSet" o = Gtk.Widget.WidgetSetHexpandSetMethodInfo
    ResolveArrowsMethod "setMapped" o = Gtk.Widget.WidgetSetMappedMethodInfo
    ResolveArrowsMethod "setMarginBottom" o = Gtk.Widget.WidgetSetMarginBottomMethodInfo
    ResolveArrowsMethod "setMarginEnd" o = Gtk.Widget.WidgetSetMarginEndMethodInfo
    ResolveArrowsMethod "setMarginLeft" o = Gtk.Widget.WidgetSetMarginLeftMethodInfo
    ResolveArrowsMethod "setMarginRight" o = Gtk.Widget.WidgetSetMarginRightMethodInfo
    ResolveArrowsMethod "setMarginStart" o = Gtk.Widget.WidgetSetMarginStartMethodInfo
    ResolveArrowsMethod "setMarginTop" o = Gtk.Widget.WidgetSetMarginTopMethodInfo
    ResolveArrowsMethod "setName" o = Gtk.Widget.WidgetSetNameMethodInfo
    ResolveArrowsMethod "setNoShowAll" o = Gtk.Widget.WidgetSetNoShowAllMethodInfo
    ResolveArrowsMethod "setOpacity" o = Gtk.Widget.WidgetSetOpacityMethodInfo
    ResolveArrowsMethod "setParent" o = Gtk.Widget.WidgetSetParentMethodInfo
    ResolveArrowsMethod "setParentWindow" o = Gtk.Widget.WidgetSetParentWindowMethodInfo
    ResolveArrowsMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveArrowsMethod "setRealized" o = Gtk.Widget.WidgetSetRealizedMethodInfo
    ResolveArrowsMethod "setReceivesDefault" o = Gtk.Widget.WidgetSetReceivesDefaultMethodInfo
    ResolveArrowsMethod "setRedrawOnAllocate" o = Gtk.Widget.WidgetSetRedrawOnAllocateMethodInfo
    ResolveArrowsMethod "setSensitive" o = Gtk.Widget.WidgetSetSensitiveMethodInfo
    ResolveArrowsMethod "setSizeRequest" o = Gtk.Widget.WidgetSetSizeRequestMethodInfo
    ResolveArrowsMethod "setState" o = Gtk.Widget.WidgetSetStateMethodInfo
    ResolveArrowsMethod "setStateFlags" o = Gtk.Widget.WidgetSetStateFlagsMethodInfo
    ResolveArrowsMethod "setStyle" o = Gtk.Widget.WidgetSetStyleMethodInfo
    ResolveArrowsMethod "setSupportMultidevice" o = Gtk.Widget.WidgetSetSupportMultideviceMethodInfo
    ResolveArrowsMethod "setTooltipMarkup" o = Gtk.Widget.WidgetSetTooltipMarkupMethodInfo
    ResolveArrowsMethod "setTooltipText" o = Gtk.Widget.WidgetSetTooltipTextMethodInfo
    ResolveArrowsMethod "setTooltipWindow" o = Gtk.Widget.WidgetSetTooltipWindowMethodInfo
    ResolveArrowsMethod "setValign" o = Gtk.Widget.WidgetSetValignMethodInfo
    ResolveArrowsMethod "setVexpand" o = Gtk.Widget.WidgetSetVexpandMethodInfo
    ResolveArrowsMethod "setVexpandSet" o = Gtk.Widget.WidgetSetVexpandSetMethodInfo
    ResolveArrowsMethod "setVisible" o = Gtk.Widget.WidgetSetVisibleMethodInfo
    ResolveArrowsMethod "setVisual" o = Gtk.Widget.WidgetSetVisualMethodInfo
    ResolveArrowsMethod "setWindow" o = Gtk.Widget.WidgetSetWindowMethodInfo
    ResolveArrowsMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveArrowsMethod t Arrows, O.MethodInfo info Arrows p) => OL.IsLabel t (Arrows -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif

#endif

-- VVV Prop "count"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

{- |
Get the value of the “@count@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' arrows #count
@
-}
getArrowsCount :: (MonadIO m, IsArrows o) => o -> m Word32
getArrowsCount obj = liftIO $ B.Properties.getObjectPropertyUInt32 obj "count"

{- |
Set the value of the “@count@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' arrows [ #count 'Data.GI.Base.Attributes.:=' value ]
@
-}
setArrowsCount :: (MonadIO m, IsArrows o) => o -> Word32 -> m ()
setArrowsCount obj val = liftIO $ B.Properties.setObjectPropertyUInt32 obj "count" val

{- |
Construct a `GValueConstruct` with valid value for the “@count@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructArrowsCount :: (IsArrows o) => Word32 -> IO (GValueConstruct o)
constructArrowsCount val = B.Properties.constructObjectPropertyUInt32 "count" val

#if ENABLE_OVERLOADING
data ArrowsCountPropertyInfo
instance AttrInfo ArrowsCountPropertyInfo where
    type AttrAllowedOps ArrowsCountPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint ArrowsCountPropertyInfo = (~) Word32
    type AttrBaseTypeConstraint ArrowsCountPropertyInfo = IsArrows
    type AttrGetType ArrowsCountPropertyInfo = Word32
    type AttrLabel ArrowsCountPropertyInfo = "count"
    type AttrOrigin ArrowsCountPropertyInfo = Arrows
    attrGet _ = getArrowsCount
    attrSet _ = setArrowsCount
    attrConstruct _ = constructArrowsCount
    attrClear _ = undefined
#endif

-- VVV Prop "direction"
   -- Type: TInterface (Name {namespace = "Handy", name = "ArrowsDirection"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

{- |
Get the value of the “@direction@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' arrows #direction
@
-}
getArrowsDirection :: (MonadIO m, IsArrows o) => o -> m Handy.Enums.ArrowsDirection
getArrowsDirection obj = liftIO $ B.Properties.getObjectPropertyEnum obj "direction"

{- |
Set the value of the “@direction@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' arrows [ #direction 'Data.GI.Base.Attributes.:=' value ]
@
-}
setArrowsDirection :: (MonadIO m, IsArrows o) => o -> Handy.Enums.ArrowsDirection -> m ()
setArrowsDirection obj val = liftIO $ B.Properties.setObjectPropertyEnum obj "direction" val

{- |
Construct a `GValueConstruct` with valid value for the “@direction@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructArrowsDirection :: (IsArrows o) => Handy.Enums.ArrowsDirection -> IO (GValueConstruct o)
constructArrowsDirection val = B.Properties.constructObjectPropertyEnum "direction" val

#if ENABLE_OVERLOADING
data ArrowsDirectionPropertyInfo
instance AttrInfo ArrowsDirectionPropertyInfo where
    type AttrAllowedOps ArrowsDirectionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint ArrowsDirectionPropertyInfo = (~) Handy.Enums.ArrowsDirection
    type AttrBaseTypeConstraint ArrowsDirectionPropertyInfo = IsArrows
    type AttrGetType ArrowsDirectionPropertyInfo = Handy.Enums.ArrowsDirection
    type AttrLabel ArrowsDirectionPropertyInfo = "direction"
    type AttrOrigin ArrowsDirectionPropertyInfo = Arrows
    attrGet _ = getArrowsDirection
    attrSet _ = setArrowsDirection
    attrConstruct _ = constructArrowsDirection
    attrClear _ = undefined
#endif

-- VVV Prop "duration"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

{- |
Get the value of the “@duration@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' arrows #duration
@
-}
getArrowsDuration :: (MonadIO m, IsArrows o) => o -> m Word32
getArrowsDuration obj = liftIO $ B.Properties.getObjectPropertyUInt32 obj "duration"

{- |
Set the value of the “@duration@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' arrows [ #duration 'Data.GI.Base.Attributes.:=' value ]
@
-}
setArrowsDuration :: (MonadIO m, IsArrows o) => o -> Word32 -> m ()
setArrowsDuration obj val = liftIO $ B.Properties.setObjectPropertyUInt32 obj "duration" val

{- |
Construct a `GValueConstruct` with valid value for the “@duration@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructArrowsDuration :: (IsArrows o) => Word32 -> IO (GValueConstruct o)
constructArrowsDuration val = B.Properties.constructObjectPropertyUInt32 "duration" val

#if ENABLE_OVERLOADING
data ArrowsDurationPropertyInfo
instance AttrInfo ArrowsDurationPropertyInfo where
    type AttrAllowedOps ArrowsDurationPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint ArrowsDurationPropertyInfo = (~) Word32
    type AttrBaseTypeConstraint ArrowsDurationPropertyInfo = IsArrows
    type AttrGetType ArrowsDurationPropertyInfo = Word32
    type AttrLabel ArrowsDurationPropertyInfo = "duration"
    type AttrOrigin ArrowsDurationPropertyInfo = Arrows
    attrGet _ = getArrowsDuration
    attrSet _ = setArrowsDuration
    attrConstruct _ = constructArrowsDuration
    attrClear _ = undefined
#endif

#if ENABLE_OVERLOADING
instance O.HasAttributeList Arrows
type instance O.AttributeList Arrows = ArrowsAttributeList
type ArrowsAttributeList = ('[ '("appPaintable", Gtk.Widget.WidgetAppPaintablePropertyInfo), '("canDefault", Gtk.Widget.WidgetCanDefaultPropertyInfo), '("canFocus", Gtk.Widget.WidgetCanFocusPropertyInfo), '("compositeChild", Gtk.Widget.WidgetCompositeChildPropertyInfo), '("count", ArrowsCountPropertyInfo), '("direction", ArrowsDirectionPropertyInfo), '("doubleBuffered", Gtk.Widget.WidgetDoubleBufferedPropertyInfo), '("duration", ArrowsDurationPropertyInfo), '("events", Gtk.Widget.WidgetEventsPropertyInfo), '("expand", Gtk.Widget.WidgetExpandPropertyInfo), '("focusOnClick", Gtk.Widget.WidgetFocusOnClickPropertyInfo), '("halign", Gtk.Widget.WidgetHalignPropertyInfo), '("hasDefault", Gtk.Widget.WidgetHasDefaultPropertyInfo), '("hasFocus", Gtk.Widget.WidgetHasFocusPropertyInfo), '("hasTooltip", Gtk.Widget.WidgetHasTooltipPropertyInfo), '("heightRequest", Gtk.Widget.WidgetHeightRequestPropertyInfo), '("hexpand", Gtk.Widget.WidgetHexpandPropertyInfo), '("hexpandSet", Gtk.Widget.WidgetHexpandSetPropertyInfo), '("isFocus", Gtk.Widget.WidgetIsFocusPropertyInfo), '("margin", Gtk.Widget.WidgetMarginPropertyInfo), '("marginBottom", Gtk.Widget.WidgetMarginBottomPropertyInfo), '("marginEnd", Gtk.Widget.WidgetMarginEndPropertyInfo), '("marginLeft", Gtk.Widget.WidgetMarginLeftPropertyInfo), '("marginRight", Gtk.Widget.WidgetMarginRightPropertyInfo), '("marginStart", Gtk.Widget.WidgetMarginStartPropertyInfo), '("marginTop", Gtk.Widget.WidgetMarginTopPropertyInfo), '("name", Gtk.Widget.WidgetNamePropertyInfo), '("noShowAll", Gtk.Widget.WidgetNoShowAllPropertyInfo), '("opacity", Gtk.Widget.WidgetOpacityPropertyInfo), '("parent", Gtk.Widget.WidgetParentPropertyInfo), '("receivesDefault", Gtk.Widget.WidgetReceivesDefaultPropertyInfo), '("scaleFactor", Gtk.Widget.WidgetScaleFactorPropertyInfo), '("sensitive", Gtk.Widget.WidgetSensitivePropertyInfo), '("style", Gtk.Widget.WidgetStylePropertyInfo), '("tooltipMarkup", Gtk.Widget.WidgetTooltipMarkupPropertyInfo), '("tooltipText", Gtk.Widget.WidgetTooltipTextPropertyInfo), '("valign", Gtk.Widget.WidgetValignPropertyInfo), '("vexpand", Gtk.Widget.WidgetVexpandPropertyInfo), '("vexpandSet", Gtk.Widget.WidgetVexpandSetPropertyInfo), '("visible", Gtk.Widget.WidgetVisiblePropertyInfo), '("widthRequest", Gtk.Widget.WidgetWidthRequestPropertyInfo), '("window", Gtk.Widget.WidgetWindowPropertyInfo)] :: [(Symbol, *)])
#endif

#if ENABLE_OVERLOADING
arrowsCount :: AttrLabelProxy "count"
arrowsCount = AttrLabelProxy

arrowsDirection :: AttrLabelProxy "direction"
arrowsDirection = AttrLabelProxy

arrowsDuration :: AttrLabelProxy "duration"
arrowsDuration = AttrLabelProxy

#endif

#if ENABLE_OVERLOADING
type instance O.SignalList Arrows = ArrowsSignalList
type ArrowsSignalList = ('[ '("accelClosuresChanged", Gtk.Widget.WidgetAccelClosuresChangedSignalInfo), '("buttonPressEvent", Gtk.Widget.WidgetButtonPressEventSignalInfo), '("buttonReleaseEvent", Gtk.Widget.WidgetButtonReleaseEventSignalInfo), '("canActivateAccel", Gtk.Widget.WidgetCanActivateAccelSignalInfo), '("childNotify", Gtk.Widget.WidgetChildNotifySignalInfo), '("compositedChanged", Gtk.Widget.WidgetCompositedChangedSignalInfo), '("configureEvent", Gtk.Widget.WidgetConfigureEventSignalInfo), '("damageEvent", Gtk.Widget.WidgetDamageEventSignalInfo), '("deleteEvent", Gtk.Widget.WidgetDeleteEventSignalInfo), '("destroy", Gtk.Widget.WidgetDestroySignalInfo), '("destroyEvent", Gtk.Widget.WidgetDestroyEventSignalInfo), '("directionChanged", Gtk.Widget.WidgetDirectionChangedSignalInfo), '("dragBegin", Gtk.Widget.WidgetDragBeginSignalInfo), '("dragDataDelete", Gtk.Widget.WidgetDragDataDeleteSignalInfo), '("dragDataGet", Gtk.Widget.WidgetDragDataGetSignalInfo), '("dragDataReceived", Gtk.Widget.WidgetDragDataReceivedSignalInfo), '("dragDrop", Gtk.Widget.WidgetDragDropSignalInfo), '("dragEnd", Gtk.Widget.WidgetDragEndSignalInfo), '("dragFailed", Gtk.Widget.WidgetDragFailedSignalInfo), '("dragLeave", Gtk.Widget.WidgetDragLeaveSignalInfo), '("dragMotion", Gtk.Widget.WidgetDragMotionSignalInfo), '("draw", Gtk.Widget.WidgetDrawSignalInfo), '("enterNotifyEvent", Gtk.Widget.WidgetEnterNotifyEventSignalInfo), '("event", Gtk.Widget.WidgetEventSignalInfo), '("eventAfter", Gtk.Widget.WidgetEventAfterSignalInfo), '("focus", Gtk.Widget.WidgetFocusSignalInfo), '("focusInEvent", Gtk.Widget.WidgetFocusInEventSignalInfo), '("focusOutEvent", Gtk.Widget.WidgetFocusOutEventSignalInfo), '("grabBrokenEvent", Gtk.Widget.WidgetGrabBrokenEventSignalInfo), '("grabFocus", Gtk.Widget.WidgetGrabFocusSignalInfo), '("grabNotify", Gtk.Widget.WidgetGrabNotifySignalInfo), '("hide", Gtk.Widget.WidgetHideSignalInfo), '("hierarchyChanged", Gtk.Widget.WidgetHierarchyChangedSignalInfo), '("keyPressEvent", Gtk.Widget.WidgetKeyPressEventSignalInfo), '("keyReleaseEvent", Gtk.Widget.WidgetKeyReleaseEventSignalInfo), '("keynavFailed", Gtk.Widget.WidgetKeynavFailedSignalInfo), '("leaveNotifyEvent", Gtk.Widget.WidgetLeaveNotifyEventSignalInfo), '("map", Gtk.Widget.WidgetMapSignalInfo), '("mapEvent", Gtk.Widget.WidgetMapEventSignalInfo), '("mnemonicActivate", Gtk.Widget.WidgetMnemonicActivateSignalInfo), '("motionNotifyEvent", Gtk.Widget.WidgetMotionNotifyEventSignalInfo), '("moveFocus", Gtk.Widget.WidgetMoveFocusSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("parentSet", Gtk.Widget.WidgetParentSetSignalInfo), '("popupMenu", Gtk.Widget.WidgetPopupMenuSignalInfo), '("propertyNotifyEvent", Gtk.Widget.WidgetPropertyNotifyEventSignalInfo), '("proximityInEvent", Gtk.Widget.WidgetProximityInEventSignalInfo), '("proximityOutEvent", Gtk.Widget.WidgetProximityOutEventSignalInfo), '("queryTooltip", Gtk.Widget.WidgetQueryTooltipSignalInfo), '("realize", Gtk.Widget.WidgetRealizeSignalInfo), '("screenChanged", Gtk.Widget.WidgetScreenChangedSignalInfo), '("scrollEvent", Gtk.Widget.WidgetScrollEventSignalInfo), '("selectionClearEvent", Gtk.Widget.WidgetSelectionClearEventSignalInfo), '("selectionGet", Gtk.Widget.WidgetSelectionGetSignalInfo), '("selectionNotifyEvent", Gtk.Widget.WidgetSelectionNotifyEventSignalInfo), '("selectionReceived", Gtk.Widget.WidgetSelectionReceivedSignalInfo), '("selectionRequestEvent", Gtk.Widget.WidgetSelectionRequestEventSignalInfo), '("show", Gtk.Widget.WidgetShowSignalInfo), '("showHelp", Gtk.Widget.WidgetShowHelpSignalInfo), '("sizeAllocate", Gtk.Widget.WidgetSizeAllocateSignalInfo), '("stateChanged", Gtk.Widget.WidgetStateChangedSignalInfo), '("stateFlagsChanged", Gtk.Widget.WidgetStateFlagsChangedSignalInfo), '("styleSet", Gtk.Widget.WidgetStyleSetSignalInfo), '("styleUpdated", Gtk.Widget.WidgetStyleUpdatedSignalInfo), '("touchEvent", Gtk.Widget.WidgetTouchEventSignalInfo), '("unmap", Gtk.Widget.WidgetUnmapSignalInfo), '("unmapEvent", Gtk.Widget.WidgetUnmapEventSignalInfo), '("unrealize", Gtk.Widget.WidgetUnrealizeSignalInfo), '("visibilityNotifyEvent", Gtk.Widget.WidgetVisibilityNotifyEventSignalInfo), '("windowStateEvent", Gtk.Widget.WidgetWindowStateEventSignalInfo)] :: [(Symbol, *)])

#endif

-- method Arrows::new
-- method type : Constructor
-- Args : []
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "Handy", name = "Arrows"}))
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_new" hdy_arrows_new ::
    IO (Ptr Arrows)

{- |
Create a new 'GI.Handy.Objects.Arrows.Arrows' widget.
-}
arrowsNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m Arrows
    {- ^ __Returns:__ the newly created 'GI.Handy.Objects.Arrows.Arrows' widget -}
arrowsNew  = liftIO $ do
    result <- hdy_arrows_new
    checkUnexpectedReturnNULL "arrowsNew" result
    result' <- (newObject Arrows) result
    return result'

#if ENABLE_OVERLOADING
#endif

-- method Arrows::animate
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "Handy", name = "Arrows"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #HdyArrows", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_animate" hdy_arrows_animate ::
    Ptr Arrows ->                           -- self : TInterface (Name {namespace = "Handy", name = "Arrows"})
    IO ()

{- |
Render the arrows animation.
-}
arrowsAnimate ::
    (B.CallStack.HasCallStack, MonadIO m, IsArrows a) =>
    a
    {- ^ /@self@/: a 'GI.Handy.Objects.Arrows.Arrows' -}
    -> m ()
arrowsAnimate self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    hdy_arrows_animate self'
    touchManagedPtr self
    return ()

#if ENABLE_OVERLOADING
data ArrowsAnimateMethodInfo
instance (signature ~ (m ()), MonadIO m, IsArrows a) => O.MethodInfo ArrowsAnimateMethodInfo a signature where
    overloadedMethod _ = arrowsAnimate

#endif

-- method Arrows::get_count
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "Handy", name = "Arrows"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #HdyArrows", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TUInt)
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_get_count" hdy_arrows_get_count ::
    Ptr Arrows ->                           -- self : TInterface (Name {namespace = "Handy", name = "Arrows"})
    IO Word32

{- |
Get the number of errors in displayed in the widget.
-}
arrowsGetCount ::
    (B.CallStack.HasCallStack, MonadIO m, IsArrows a) =>
    a
    {- ^ /@self@/: a 'GI.Handy.Objects.Arrows.Arrows' -}
    -> m Word32
    {- ^ __Returns:__ the current number of arrows -}
arrowsGetCount self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- hdy_arrows_get_count self'
    touchManagedPtr self
    return result

#if ENABLE_OVERLOADING
data ArrowsGetCountMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsArrows a) => O.MethodInfo ArrowsGetCountMethodInfo a signature where
    overloadedMethod _ = arrowsGetCount

#endif

-- method Arrows::get_direction
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "Handy", name = "Arrows"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #HdyArrows", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "Handy", name = "ArrowsDirection"}))
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_get_direction" hdy_arrows_get_direction ::
    Ptr Arrows ->                           -- self : TInterface (Name {namespace = "Handy", name = "Arrows"})
    IO CUInt

{- |
Get the direction the arrows point to
-}
arrowsGetDirection ::
    (B.CallStack.HasCallStack, MonadIO m, IsArrows a) =>
    a
    {- ^ /@self@/: a 'GI.Handy.Objects.Arrows.Arrows' -}
    -> m Handy.Enums.ArrowsDirection
    {- ^ __Returns:__ the arrows direction -}
arrowsGetDirection self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- hdy_arrows_get_direction self'
    let result' = (toEnum . fromIntegral) result
    touchManagedPtr self
    return result'

#if ENABLE_OVERLOADING
data ArrowsGetDirectionMethodInfo
instance (signature ~ (m Handy.Enums.ArrowsDirection), MonadIO m, IsArrows a) => O.MethodInfo ArrowsGetDirectionMethodInfo a signature where
    overloadedMethod _ = arrowsGetDirection

#endif

-- method Arrows::get_duration
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "Handy", name = "Arrows"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #HdyArrows", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TUInt)
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_get_duration" hdy_arrows_get_duration ::
    Ptr Arrows ->                           -- self : TInterface (Name {namespace = "Handy", name = "Arrows"})
    IO Word32

{- |
Get the duration of the arrows animation.
-}
arrowsGetDuration ::
    (B.CallStack.HasCallStack, MonadIO m, IsArrows a) =>
    a
    {- ^ /@self@/: a 'GI.Handy.Objects.Arrows.Arrows' -}
    -> m Word32
    {- ^ __Returns:__ the arrows -}
arrowsGetDuration self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- hdy_arrows_get_duration self'
    touchManagedPtr self
    return result

#if ENABLE_OVERLOADING
data ArrowsGetDurationMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsArrows a) => O.MethodInfo ArrowsGetDurationMethodInfo a signature where
    overloadedMethod _ = arrowsGetDuration

#endif

-- method Arrows::set_count
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "Handy", name = "Arrows"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #HdyArrows", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "count", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of arrows to display", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_set_count" hdy_arrows_set_count ::
    Ptr Arrows ->                           -- self : TInterface (Name {namespace = "Handy", name = "Arrows"})
    Word32 ->                               -- count : TBasicType TUInt
    IO ()

{- |
Set the number of arrows to display.
-}
arrowsSetCount ::
    (B.CallStack.HasCallStack, MonadIO m, IsArrows a) =>
    a
    {- ^ /@self@/: a 'GI.Handy.Objects.Arrows.Arrows' -}
    -> Word32
    {- ^ /@count@/: the number of arrows to display -}
    -> m ()
arrowsSetCount self count = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    hdy_arrows_set_count self' count
    touchManagedPtr self
    return ()

#if ENABLE_OVERLOADING
data ArrowsSetCountMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsArrows a) => O.MethodInfo ArrowsSetCountMethodInfo a signature where
    overloadedMethod _ = arrowsSetCount

#endif

-- method Arrows::set_direction
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "Handy", name = "Arrows"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #HdyArrows", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "direction", argType = TInterface (Name {namespace = "Handy", name = "ArrowsDirection"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the arrows direction", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_set_direction" hdy_arrows_set_direction ::
    Ptr Arrows ->                           -- self : TInterface (Name {namespace = "Handy", name = "Arrows"})
    CUInt ->                                -- direction : TInterface (Name {namespace = "Handy", name = "ArrowsDirection"})
    IO ()

{- |
Set the direction the arrows should point to.
-}
arrowsSetDirection ::
    (B.CallStack.HasCallStack, MonadIO m, IsArrows a) =>
    a
    {- ^ /@self@/: a 'GI.Handy.Objects.Arrows.Arrows' -}
    -> Handy.Enums.ArrowsDirection
    {- ^ /@direction@/: the arrows direction -}
    -> m ()
arrowsSetDirection self direction = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    let direction' = (fromIntegral . fromEnum) direction
    hdy_arrows_set_direction self' direction'
    touchManagedPtr self
    return ()

#if ENABLE_OVERLOADING
data ArrowsSetDirectionMethodInfo
instance (signature ~ (Handy.Enums.ArrowsDirection -> m ()), MonadIO m, IsArrows a) => O.MethodInfo ArrowsSetDirectionMethodInfo a signature where
    overloadedMethod _ = arrowsSetDirection

#endif

-- method Arrows::set_duration
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "Handy", name = "Arrows"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #HdyArrows", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "duration", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the duration of the animation in ms", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "hdy_arrows_set_duration" hdy_arrows_set_duration ::
    Ptr Arrows ->                           -- self : TInterface (Name {namespace = "Handy", name = "Arrows"})
    Word32 ->                               -- duration : TBasicType TUInt
    IO ()

{- |
Set the duration of the arrow animation.
-}
arrowsSetDuration ::
    (B.CallStack.HasCallStack, MonadIO m, IsArrows a) =>
    a
    {- ^ /@self@/: a 'GI.Handy.Objects.Arrows.Arrows' -}
    -> Word32
    {- ^ /@duration@/: the duration of the animation in ms -}
    -> m ()
arrowsSetDuration self duration = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    hdy_arrows_set_duration self' duration
    touchManagedPtr self
    return ()

#if ENABLE_OVERLOADING
data ArrowsSetDurationMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsArrows a) => O.MethodInfo ArrowsSetDurationMethodInfo a signature where
    overloadedMethod _ = arrowsSetDuration

#endif