{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson and Iñaki García Etxebarria
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- The t'GI.Clutter.Objects.ScrollActor.ScrollActor' structure contains only
-- private data, and should be accessed using the provided API.
-- 
-- /Since: 1.12/

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

module GI.Clutter.Objects.ScrollActor
    ( 

-- * Exported types
    ScrollActor(..)                         ,
    IsScrollActor                           ,
    toScrollActor                           ,


 -- * Methods
-- | 
-- 
--  === __Click to display all available methods, including inherited ones__
-- ==== Methods
-- [addAction]("GI.Clutter.Objects.Actor#g:method:addAction"), [addActionWithName]("GI.Clutter.Objects.Actor#g:method:addActionWithName"), [addActor]("GI.Clutter.Interfaces.Container#g:method:addActor"), [addChild]("GI.Clutter.Objects.Actor#g:method:addChild"), [addConstraint]("GI.Clutter.Objects.Actor#g:method:addConstraint"), [addConstraintWithName]("GI.Clutter.Objects.Actor#g:method:addConstraintWithName"), [addEffect]("GI.Clutter.Objects.Actor#g:method:addEffect"), [addEffectWithName]("GI.Clutter.Objects.Actor#g:method:addEffectWithName"), [addTransition]("GI.Clutter.Objects.Actor#g:method:addTransition"), [allocate]("GI.Clutter.Objects.Actor#g:method:allocate"), [allocateAlignFill]("GI.Clutter.Objects.Actor#g:method:allocateAlignFill"), [allocateAvailableSize]("GI.Clutter.Objects.Actor#g:method:allocateAvailableSize"), [allocatePreferredSize]("GI.Clutter.Objects.Actor#g:method:allocatePreferredSize"), [animateProperty]("GI.Clutter.Interfaces.Animatable#g:method:animateProperty"), [animateWithAlphav]("GI.Clutter.Objects.Actor#g:method:animateWithAlphav"), [animateWithTimelinev]("GI.Clutter.Objects.Actor#g:method:animateWithTimelinev"), [animatev]("GI.Clutter.Objects.Actor#g:method:animatev"), [applyRelativeTransformToPoint]("GI.Clutter.Objects.Actor#g:method:applyRelativeTransformToPoint"), [applyTransformToPoint]("GI.Clutter.Objects.Actor#g:method:applyTransformToPoint"), [bindModel]("GI.Clutter.Objects.Actor#g:method:bindModel"), [bindProperty]("GI.GObject.Objects.Object#g:method:bindProperty"), [bindPropertyFull]("GI.GObject.Objects.Object#g:method:bindPropertyFull"), [childGetProperty]("GI.Clutter.Interfaces.Container#g:method:childGetProperty"), [childNotify]("GI.Clutter.Interfaces.Container#g:method:childNotify"), [childSetProperty]("GI.Clutter.Interfaces.Container#g:method:childSetProperty"), [clearActions]("GI.Clutter.Objects.Actor#g:method:clearActions"), [clearConstraints]("GI.Clutter.Objects.Actor#g:method:clearConstraints"), [clearEffects]("GI.Clutter.Objects.Actor#g:method:clearEffects"), [contains]("GI.Clutter.Objects.Actor#g:method:contains"), [continuePaint]("GI.Clutter.Objects.Actor#g:method:continuePaint"), [createChildMeta]("GI.Clutter.Interfaces.Container#g:method:createChildMeta"), [createPangoContext]("GI.Clutter.Objects.Actor#g:method:createPangoContext"), [createPangoLayout]("GI.Clutter.Objects.Actor#g:method:createPangoLayout"), [destroy]("GI.Clutter.Objects.Actor#g:method:destroy"), [destroyAllChildren]("GI.Clutter.Objects.Actor#g:method:destroyAllChildren"), [destroyChildMeta]("GI.Clutter.Interfaces.Container#g:method:destroyChildMeta"), [detachAnimation]("GI.Clutter.Objects.Actor#g:method:detachAnimation"), [event]("GI.Clutter.Objects.Actor#g:method:event"), [findChildByName]("GI.Clutter.Interfaces.Container#g:method:findChildByName"), [findProperty]("GI.Clutter.Interfaces.Animatable#g:method:findProperty"), [forceFloating]("GI.GObject.Objects.Object#g:method:forceFloating"), [foreach]("GI.Clutter.Interfaces.Container#g:method:foreach"), [foreachWithInternals]("GI.Clutter.Interfaces.Container#g:method:foreachWithInternals"), [freezeNotify]("GI.GObject.Objects.Object#g:method:freezeNotify"), [getv]("GI.GObject.Objects.Object#g:method:getv"), [grabKeyFocus]("GI.Clutter.Objects.Actor#g:method:grabKeyFocus"), [hasActions]("GI.Clutter.Objects.Actor#g:method:hasActions"), [hasAllocation]("GI.Clutter.Objects.Actor#g:method:hasAllocation"), [hasClip]("GI.Clutter.Objects.Actor#g:method:hasClip"), [hasConstraints]("GI.Clutter.Objects.Actor#g:method:hasConstraints"), [hasEffects]("GI.Clutter.Objects.Actor#g:method:hasEffects"), [hasKeyFocus]("GI.Clutter.Objects.Actor#g:method:hasKeyFocus"), [hasOverlaps]("GI.Clutter.Objects.Actor#g:method:hasOverlaps"), [hasPointer]("GI.Clutter.Objects.Actor#g:method:hasPointer"), [hide]("GI.Clutter.Objects.Actor#g:method:hide"), [hideAll]("GI.Clutter.Objects.Actor#g:method:hideAll"), [insertChildAbove]("GI.Clutter.Objects.Actor#g:method:insertChildAbove"), [insertChildAtIndex]("GI.Clutter.Objects.Actor#g:method:insertChildAtIndex"), [insertChildBelow]("GI.Clutter.Objects.Actor#g:method:insertChildBelow"), [interpolateValue]("GI.Clutter.Interfaces.Animatable#g:method:interpolateValue"), [isFloating]("GI.GObject.Objects.Object#g:method:isFloating"), [isInClonePaint]("GI.Clutter.Objects.Actor#g:method:isInClonePaint"), [isMapped]("GI.Clutter.Objects.Actor#g:method:isMapped"), [isRealized]("GI.Clutter.Objects.Actor#g:method:isRealized"), [isRotated]("GI.Clutter.Objects.Actor#g:method:isRotated"), [isScaled]("GI.Clutter.Objects.Actor#g:method:isScaled"), [isVisible]("GI.Clutter.Objects.Actor#g:method:isVisible"), [lower]("GI.Clutter.Objects.Actor#g:method:lower"), [lowerBottom]("GI.Clutter.Objects.Actor#g:method:lowerBottom"), [lowerChild]("GI.Clutter.Interfaces.Container#g:method:lowerChild"), [map]("GI.Clutter.Objects.Actor#g:method:map"), [moveAnchorPoint]("GI.Clutter.Objects.Actor#g:method:moveAnchorPoint"), [moveAnchorPointFromGravity]("GI.Clutter.Objects.Actor#g:method:moveAnchorPointFromGravity"), [moveBy]("GI.Clutter.Objects.Actor#g:method:moveBy"), [needsExpand]("GI.Clutter.Objects.Actor#g:method:needsExpand"), [notify]("GI.GObject.Objects.Object#g:method:notify"), [notifyByPspec]("GI.GObject.Objects.Object#g:method:notifyByPspec"), [paint]("GI.Clutter.Objects.Actor#g:method:paint"), [parseCustomNode]("GI.Clutter.Interfaces.Scriptable#g:method:parseCustomNode"), [popInternal]("GI.Clutter.Objects.Actor#g:method:popInternal"), [pushInternal]("GI.Clutter.Objects.Actor#g:method:pushInternal"), [queueRedraw]("GI.Clutter.Objects.Actor#g:method:queueRedraw"), [queueRedrawWithClip]("GI.Clutter.Objects.Actor#g:method:queueRedrawWithClip"), [queueRelayout]("GI.Clutter.Objects.Actor#g:method:queueRelayout"), [raise]("GI.Clutter.Objects.Actor#g:method:raise"), [raiseChild]("GI.Clutter.Interfaces.Container#g:method:raiseChild"), [raiseTop]("GI.Clutter.Objects.Actor#g:method:raiseTop"), [realize]("GI.Clutter.Objects.Actor#g:method:realize"), [ref]("GI.GObject.Objects.Object#g:method:ref"), [refSink]("GI.GObject.Objects.Object#g:method:refSink"), [removeAction]("GI.Clutter.Objects.Actor#g:method:removeAction"), [removeActionByName]("GI.Clutter.Objects.Actor#g:method:removeActionByName"), [removeActor]("GI.Clutter.Interfaces.Container#g:method:removeActor"), [removeAllChildren]("GI.Clutter.Objects.Actor#g:method:removeAllChildren"), [removeAllTransitions]("GI.Clutter.Objects.Actor#g:method:removeAllTransitions"), [removeChild]("GI.Clutter.Objects.Actor#g:method:removeChild"), [removeClip]("GI.Clutter.Objects.Actor#g:method:removeClip"), [removeConstraint]("GI.Clutter.Objects.Actor#g:method:removeConstraint"), [removeConstraintByName]("GI.Clutter.Objects.Actor#g:method:removeConstraintByName"), [removeEffect]("GI.Clutter.Objects.Actor#g:method:removeEffect"), [removeEffectByName]("GI.Clutter.Objects.Actor#g:method:removeEffectByName"), [removeTransition]("GI.Clutter.Objects.Actor#g:method:removeTransition"), [reparent]("GI.Clutter.Objects.Actor#g:method:reparent"), [replaceChild]("GI.Clutter.Objects.Actor#g:method:replaceChild"), [restoreEasingState]("GI.Clutter.Objects.Actor#g:method:restoreEasingState"), [runDispose]("GI.GObject.Objects.Object#g:method:runDispose"), [saveEasingState]("GI.Clutter.Objects.Actor#g:method:saveEasingState"), [scrollToPoint]("GI.Clutter.Objects.ScrollActor#g:method:scrollToPoint"), [scrollToRect]("GI.Clutter.Objects.ScrollActor#g:method:scrollToRect"), [shouldPickPaint]("GI.Clutter.Objects.Actor#g:method:shouldPickPaint"), [show]("GI.Clutter.Objects.Actor#g:method:show"), [showAll]("GI.Clutter.Objects.Actor#g:method:showAll"), [sortDepthOrder]("GI.Clutter.Interfaces.Container#g:method:sortDepthOrder"), [stealData]("GI.GObject.Objects.Object#g:method:stealData"), [stealQdata]("GI.GObject.Objects.Object#g:method:stealQdata"), [thawNotify]("GI.GObject.Objects.Object#g:method:thawNotify"), [transformStagePoint]("GI.Clutter.Objects.Actor#g:method:transformStagePoint"), [unmap]("GI.Clutter.Objects.Actor#g:method:unmap"), [unparent]("GI.Clutter.Objects.Actor#g:method:unparent"), [unrealize]("GI.Clutter.Objects.Actor#g:method:unrealize"), [unref]("GI.GObject.Objects.Object#g:method:unref"), [unsetFlags]("GI.Clutter.Objects.Actor#g:method:unsetFlags"), [watchClosure]("GI.GObject.Objects.Object#g:method:watchClosure").
-- 
-- ==== Getters
-- [getAbsAllocationVertices]("GI.Clutter.Objects.Actor#g:method:getAbsAllocationVertices"), [getAccessible]("GI.Clutter.Objects.Actor#g:method:getAccessible"), [getAction]("GI.Clutter.Objects.Actor#g:method:getAction"), [getActions]("GI.Clutter.Objects.Actor#g:method:getActions"), [getAllocationBox]("GI.Clutter.Objects.Actor#g:method:getAllocationBox"), [getAllocationGeometry]("GI.Clutter.Objects.Actor#g:method:getAllocationGeometry"), [getAllocationVertices]("GI.Clutter.Objects.Actor#g:method:getAllocationVertices"), [getAnchorPoint]("GI.Clutter.Objects.Actor#g:method:getAnchorPoint"), [getAnchorPointGravity]("GI.Clutter.Objects.Actor#g:method:getAnchorPointGravity"), [getAnimation]("GI.Clutter.Objects.Actor#g:method:getAnimation"), [getBackgroundColor]("GI.Clutter.Objects.Actor#g:method:getBackgroundColor"), [getChildAtIndex]("GI.Clutter.Objects.Actor#g:method:getChildAtIndex"), [getChildMeta]("GI.Clutter.Interfaces.Container#g:method:getChildMeta"), [getChildTransform]("GI.Clutter.Objects.Actor#g:method:getChildTransform"), [getChildren]("GI.Clutter.Objects.Actor#g:method:getChildren"), [getClip]("GI.Clutter.Objects.Actor#g:method:getClip"), [getClipToAllocation]("GI.Clutter.Objects.Actor#g:method:getClipToAllocation"), [getConstraint]("GI.Clutter.Objects.Actor#g:method:getConstraint"), [getConstraints]("GI.Clutter.Objects.Actor#g:method:getConstraints"), [getContent]("GI.Clutter.Objects.Actor#g:method:getContent"), [getContentBox]("GI.Clutter.Objects.Actor#g:method:getContentBox"), [getContentGravity]("GI.Clutter.Objects.Actor#g:method:getContentGravity"), [getContentRepeat]("GI.Clutter.Objects.Actor#g:method:getContentRepeat"), [getContentScalingFilters]("GI.Clutter.Objects.Actor#g:method:getContentScalingFilters"), [getData]("GI.GObject.Objects.Object#g:method:getData"), [getDefaultPaintVolume]("GI.Clutter.Objects.Actor#g:method:getDefaultPaintVolume"), [getDepth]("GI.Clutter.Objects.Actor#g:method:getDepth"), [getEasingDelay]("GI.Clutter.Objects.Actor#g:method:getEasingDelay"), [getEasingDuration]("GI.Clutter.Objects.Actor#g:method:getEasingDuration"), [getEasingMode]("GI.Clutter.Objects.Actor#g:method:getEasingMode"), [getEffect]("GI.Clutter.Objects.Actor#g:method:getEffect"), [getEffects]("GI.Clutter.Objects.Actor#g:method:getEffects"), [getFirstChild]("GI.Clutter.Objects.Actor#g:method:getFirstChild"), [getFixedPositionSet]("GI.Clutter.Objects.Actor#g:method:getFixedPositionSet"), [getFlags]("GI.Clutter.Objects.Actor#g:method:getFlags"), [getGeometry]("GI.Clutter.Objects.Actor#g:method:getGeometry"), [getGid]("GI.Clutter.Objects.Actor#g:method:getGid"), [getHeight]("GI.Clutter.Objects.Actor#g:method:getHeight"), [getId]("GI.Clutter.Interfaces.Scriptable#g:method:getId"), [getInitialState]("GI.Clutter.Interfaces.Animatable#g:method:getInitialState"), [getLastChild]("GI.Clutter.Objects.Actor#g:method:getLastChild"), [getLayoutManager]("GI.Clutter.Objects.Actor#g:method:getLayoutManager"), [getMargin]("GI.Clutter.Objects.Actor#g:method:getMargin"), [getMarginBottom]("GI.Clutter.Objects.Actor#g:method:getMarginBottom"), [getMarginLeft]("GI.Clutter.Objects.Actor#g:method:getMarginLeft"), [getMarginRight]("GI.Clutter.Objects.Actor#g:method:getMarginRight"), [getMarginTop]("GI.Clutter.Objects.Actor#g:method:getMarginTop"), [getNChildren]("GI.Clutter.Objects.Actor#g:method:getNChildren"), [getName]("GI.Clutter.Objects.Actor#g:method:getName"), [getNextSibling]("GI.Clutter.Objects.Actor#g:method:getNextSibling"), [getOffscreenRedirect]("GI.Clutter.Objects.Actor#g:method:getOffscreenRedirect"), [getOpacity]("GI.Clutter.Objects.Actor#g:method:getOpacity"), [getPaintBox]("GI.Clutter.Objects.Actor#g:method:getPaintBox"), [getPaintOpacity]("GI.Clutter.Objects.Actor#g:method:getPaintOpacity"), [getPaintVisibility]("GI.Clutter.Objects.Actor#g:method:getPaintVisibility"), [getPaintVolume]("GI.Clutter.Objects.Actor#g:method:getPaintVolume"), [getPangoContext]("GI.Clutter.Objects.Actor#g:method:getPangoContext"), [getParent]("GI.Clutter.Objects.Actor#g:method:getParent"), [getPivotPoint]("GI.Clutter.Objects.Actor#g:method:getPivotPoint"), [getPivotPointZ]("GI.Clutter.Objects.Actor#g:method:getPivotPointZ"), [getPosition]("GI.Clutter.Objects.Actor#g:method:getPosition"), [getPreferredHeight]("GI.Clutter.Objects.Actor#g:method:getPreferredHeight"), [getPreferredSize]("GI.Clutter.Objects.Actor#g:method:getPreferredSize"), [getPreferredWidth]("GI.Clutter.Objects.Actor#g:method:getPreferredWidth"), [getPreviousSibling]("GI.Clutter.Objects.Actor#g:method:getPreviousSibling"), [getProperty]("GI.GObject.Objects.Object#g:method:getProperty"), [getQdata]("GI.GObject.Objects.Object#g:method:getQdata"), [getReactive]("GI.Clutter.Objects.Actor#g:method:getReactive"), [getRequestMode]("GI.Clutter.Objects.Actor#g:method:getRequestMode"), [getRotation]("GI.Clutter.Objects.Actor#g:method:getRotation"), [getRotationAngle]("GI.Clutter.Objects.Actor#g:method:getRotationAngle"), [getScale]("GI.Clutter.Objects.Actor#g:method:getScale"), [getScaleCenter]("GI.Clutter.Objects.Actor#g:method:getScaleCenter"), [getScaleGravity]("GI.Clutter.Objects.Actor#g:method:getScaleGravity"), [getScaleZ]("GI.Clutter.Objects.Actor#g:method:getScaleZ"), [getScrollMode]("GI.Clutter.Objects.ScrollActor#g:method:getScrollMode"), [getShader]("GI.Clutter.Objects.Actor#g:method:getShader"), [getSize]("GI.Clutter.Objects.Actor#g:method:getSize"), [getStage]("GI.Clutter.Objects.Actor#g:method:getStage"), [getTextDirection]("GI.Clutter.Objects.Actor#g:method:getTextDirection"), [getTransform]("GI.Clutter.Objects.Actor#g:method:getTransform"), [getTransformationMatrix]("GI.Clutter.Objects.Actor#g:method:getTransformationMatrix"), [getTransformedPaintVolume]("GI.Clutter.Objects.Actor#g:method:getTransformedPaintVolume"), [getTransformedPosition]("GI.Clutter.Objects.Actor#g:method:getTransformedPosition"), [getTransformedSize]("GI.Clutter.Objects.Actor#g:method:getTransformedSize"), [getTransition]("GI.Clutter.Objects.Actor#g:method:getTransition"), [getTranslation]("GI.Clutter.Objects.Actor#g:method:getTranslation"), [getWidth]("GI.Clutter.Objects.Actor#g:method:getWidth"), [getX]("GI.Clutter.Objects.Actor#g:method:getX"), [getXAlign]("GI.Clutter.Objects.Actor#g:method:getXAlign"), [getXExpand]("GI.Clutter.Objects.Actor#g:method:getXExpand"), [getY]("GI.Clutter.Objects.Actor#g:method:getY"), [getYAlign]("GI.Clutter.Objects.Actor#g:method:getYAlign"), [getYExpand]("GI.Clutter.Objects.Actor#g:method:getYExpand"), [getZPosition]("GI.Clutter.Objects.Actor#g:method:getZPosition"), [getZRotationGravity]("GI.Clutter.Objects.Actor#g:method:getZRotationGravity").
-- 
-- ==== Setters
-- [setAllocation]("GI.Clutter.Objects.Actor#g:method:setAllocation"), [setAnchorPoint]("GI.Clutter.Objects.Actor#g:method:setAnchorPoint"), [setAnchorPointFromGravity]("GI.Clutter.Objects.Actor#g:method:setAnchorPointFromGravity"), [setBackgroundColor]("GI.Clutter.Objects.Actor#g:method:setBackgroundColor"), [setChildAboveSibling]("GI.Clutter.Objects.Actor#g:method:setChildAboveSibling"), [setChildAtIndex]("GI.Clutter.Objects.Actor#g:method:setChildAtIndex"), [setChildBelowSibling]("GI.Clutter.Objects.Actor#g:method:setChildBelowSibling"), [setChildTransform]("GI.Clutter.Objects.Actor#g:method:setChildTransform"), [setClip]("GI.Clutter.Objects.Actor#g:method:setClip"), [setClipToAllocation]("GI.Clutter.Objects.Actor#g:method:setClipToAllocation"), [setContent]("GI.Clutter.Objects.Actor#g:method:setContent"), [setContentGravity]("GI.Clutter.Objects.Actor#g:method:setContentGravity"), [setContentRepeat]("GI.Clutter.Objects.Actor#g:method:setContentRepeat"), [setContentScalingFilters]("GI.Clutter.Objects.Actor#g:method:setContentScalingFilters"), [setCustomProperty]("GI.Clutter.Interfaces.Scriptable#g:method:setCustomProperty"), [setData]("GI.GObject.Objects.Object#g:method:setData"), [setDataFull]("GI.GObject.Objects.Object#g:method:setDataFull"), [setDepth]("GI.Clutter.Objects.Actor#g:method:setDepth"), [setEasingDelay]("GI.Clutter.Objects.Actor#g:method:setEasingDelay"), [setEasingDuration]("GI.Clutter.Objects.Actor#g:method:setEasingDuration"), [setEasingMode]("GI.Clutter.Objects.Actor#g:method:setEasingMode"), [setFinalState]("GI.Clutter.Interfaces.Animatable#g:method:setFinalState"), [setFixedPositionSet]("GI.Clutter.Objects.Actor#g:method:setFixedPositionSet"), [setFlags]("GI.Clutter.Objects.Actor#g:method:setFlags"), [setGeometry]("GI.Clutter.Objects.Actor#g:method:setGeometry"), [setHeight]("GI.Clutter.Objects.Actor#g:method:setHeight"), [setId]("GI.Clutter.Interfaces.Scriptable#g:method:setId"), [setLayoutManager]("GI.Clutter.Objects.Actor#g:method:setLayoutManager"), [setMargin]("GI.Clutter.Objects.Actor#g:method:setMargin"), [setMarginBottom]("GI.Clutter.Objects.Actor#g:method:setMarginBottom"), [setMarginLeft]("GI.Clutter.Objects.Actor#g:method:setMarginLeft"), [setMarginRight]("GI.Clutter.Objects.Actor#g:method:setMarginRight"), [setMarginTop]("GI.Clutter.Objects.Actor#g:method:setMarginTop"), [setName]("GI.Clutter.Objects.Actor#g:method:setName"), [setOffscreenRedirect]("GI.Clutter.Objects.Actor#g:method:setOffscreenRedirect"), [setOpacity]("GI.Clutter.Objects.Actor#g:method:setOpacity"), [setParent]("GI.Clutter.Objects.Actor#g:method:setParent"), [setPivotPoint]("GI.Clutter.Objects.Actor#g:method:setPivotPoint"), [setPivotPointZ]("GI.Clutter.Objects.Actor#g:method:setPivotPointZ"), [setPosition]("GI.Clutter.Objects.Actor#g:method:setPosition"), [setProperty]("GI.GObject.Objects.Object#g:method:setProperty"), [setReactive]("GI.Clutter.Objects.Actor#g:method:setReactive"), [setRequestMode]("GI.Clutter.Objects.Actor#g:method:setRequestMode"), [setRotation]("GI.Clutter.Objects.Actor#g:method:setRotation"), [setRotationAngle]("GI.Clutter.Objects.Actor#g:method:setRotationAngle"), [setScale]("GI.Clutter.Objects.Actor#g:method:setScale"), [setScaleFull]("GI.Clutter.Objects.Actor#g:method:setScaleFull"), [setScaleWithGravity]("GI.Clutter.Objects.Actor#g:method:setScaleWithGravity"), [setScaleZ]("GI.Clutter.Objects.Actor#g:method:setScaleZ"), [setScrollMode]("GI.Clutter.Objects.ScrollActor#g:method:setScrollMode"), [setShader]("GI.Clutter.Objects.Actor#g:method:setShader"), [setShaderParam]("GI.Clutter.Objects.Actor#g:method:setShaderParam"), [setShaderParamFloat]("GI.Clutter.Objects.Actor#g:method:setShaderParamFloat"), [setShaderParamInt]("GI.Clutter.Objects.Actor#g:method:setShaderParamInt"), [setSize]("GI.Clutter.Objects.Actor#g:method:setSize"), [setTextDirection]("GI.Clutter.Objects.Actor#g:method:setTextDirection"), [setTransform]("GI.Clutter.Objects.Actor#g:method:setTransform"), [setTranslation]("GI.Clutter.Objects.Actor#g:method:setTranslation"), [setWidth]("GI.Clutter.Objects.Actor#g:method:setWidth"), [setX]("GI.Clutter.Objects.Actor#g:method:setX"), [setXAlign]("GI.Clutter.Objects.Actor#g:method:setXAlign"), [setXExpand]("GI.Clutter.Objects.Actor#g:method:setXExpand"), [setY]("GI.Clutter.Objects.Actor#g:method:setY"), [setYAlign]("GI.Clutter.Objects.Actor#g:method:setYAlign"), [setYExpand]("GI.Clutter.Objects.Actor#g:method:setYExpand"), [setZPosition]("GI.Clutter.Objects.Actor#g:method:setZPosition"), [setZRotationFromGravity]("GI.Clutter.Objects.Actor#g:method:setZRotationFromGravity").

#if defined(ENABLE_OVERLOADING)
    ResolveScrollActorMethod                ,
#endif

-- ** getScrollMode #method:getScrollMode#

#if defined(ENABLE_OVERLOADING)
    ScrollActorGetScrollModeMethodInfo      ,
#endif
    scrollActorGetScrollMode                ,


-- ** new #method:new#

    scrollActorNew                          ,


-- ** scrollToPoint #method:scrollToPoint#

#if defined(ENABLE_OVERLOADING)
    ScrollActorScrollToPointMethodInfo      ,
#endif
    scrollActorScrollToPoint                ,


-- ** scrollToRect #method:scrollToRect#

#if defined(ENABLE_OVERLOADING)
    ScrollActorScrollToRectMethodInfo       ,
#endif
    scrollActorScrollToRect                 ,


-- ** setScrollMode #method:setScrollMode#

#if defined(ENABLE_OVERLOADING)
    ScrollActorSetScrollModeMethodInfo      ,
#endif
    scrollActorSetScrollMode                ,




 -- * Properties


-- ** scrollMode #attr:scrollMode#
-- | The scrollin direction.
-- 
-- /Since: 1.12/

#if defined(ENABLE_OVERLOADING)
    ScrollActorScrollModePropertyInfo       ,
#endif
    constructScrollActorScrollMode          ,
    getScrollActorScrollMode                ,
#if defined(ENABLE_OVERLOADING)
    scrollActorScrollMode                   ,
#endif
    setScrollActorScrollMode                ,




    ) 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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
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.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
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 GHC.Records as R

import qualified GI.Atk.Interfaces.ImplementorIface as Atk.ImplementorIface
import {-# SOURCE #-} qualified GI.Clutter.Flags as Clutter.Flags
import {-# SOURCE #-} qualified GI.Clutter.Interfaces.Animatable as Clutter.Animatable
import {-# SOURCE #-} qualified GI.Clutter.Interfaces.Container as Clutter.Container
import {-# SOURCE #-} qualified GI.Clutter.Interfaces.Scriptable as Clutter.Scriptable
import {-# SOURCE #-} qualified GI.Clutter.Objects.Actor as Clutter.Actor
import {-# SOURCE #-} qualified GI.Clutter.Structs.Point as Clutter.Point
import {-# SOURCE #-} qualified GI.Clutter.Structs.Rect as Clutter.Rect
import qualified GI.GObject.Objects.Object as GObject.Object

-- | Memory-managed wrapper type.
newtype ScrollActor = ScrollActor (SP.ManagedPtr ScrollActor)
    deriving (ScrollActor -> ScrollActor -> Bool
(ScrollActor -> ScrollActor -> Bool)
-> (ScrollActor -> ScrollActor -> Bool) -> Eq ScrollActor
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ScrollActor -> ScrollActor -> Bool
== :: ScrollActor -> ScrollActor -> Bool
$c/= :: ScrollActor -> ScrollActor -> Bool
/= :: ScrollActor -> ScrollActor -> Bool
Eq)

instance SP.ManagedPtrNewtype ScrollActor where
    toManagedPtr :: ScrollActor -> ManagedPtr ScrollActor
toManagedPtr (ScrollActor ManagedPtr ScrollActor
p) = ManagedPtr ScrollActor
p

foreign import ccall "clutter_scroll_actor_get_type"
    c_clutter_scroll_actor_get_type :: IO B.Types.GType

instance B.Types.TypedObject ScrollActor where
    glibType :: IO GType
glibType = IO GType
c_clutter_scroll_actor_get_type

instance B.Types.GObject ScrollActor

-- | Type class for types which can be safely cast to `ScrollActor`, for instance with `toScrollActor`.
class (SP.GObject o, O.IsDescendantOf ScrollActor o) => IsScrollActor o
instance (SP.GObject o, O.IsDescendantOf ScrollActor o) => IsScrollActor o

instance O.HasParentTypes ScrollActor
type instance O.ParentTypes ScrollActor = '[Clutter.Actor.Actor, GObject.Object.Object, Atk.ImplementorIface.ImplementorIface, Clutter.Animatable.Animatable, Clutter.Container.Container, Clutter.Scriptable.Scriptable]

-- | Cast to `ScrollActor`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toScrollActor :: (MIO.MonadIO m, IsScrollActor o) => o -> m ScrollActor
toScrollActor :: forall (m :: * -> *) o.
(MonadIO m, IsScrollActor o) =>
o -> m ScrollActor
toScrollActor = IO ScrollActor -> m ScrollActor
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO ScrollActor -> m ScrollActor)
-> (o -> IO ScrollActor) -> o -> m ScrollActor
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr ScrollActor -> ScrollActor) -> o -> IO ScrollActor
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr ScrollActor -> ScrollActor
ScrollActor

-- | Convert 'ScrollActor' to and from 'Data.GI.Base.GValue.GValue'. See 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue (Maybe ScrollActor) where
    gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_clutter_scroll_actor_get_type
    gvalueSet_ :: Ptr GValue -> Maybe ScrollActor -> IO ()
gvalueSet_ Ptr GValue
gv Maybe ScrollActor
P.Nothing = Ptr GValue -> Ptr ScrollActor -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr ScrollActor
forall a. Ptr a
FP.nullPtr :: FP.Ptr ScrollActor)
    gvalueSet_ Ptr GValue
gv (P.Just ScrollActor
obj) = ScrollActor -> (Ptr ScrollActor -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr ScrollActor
obj (Ptr GValue -> Ptr ScrollActor -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
    gvalueGet_ :: Ptr GValue -> IO (Maybe ScrollActor)
gvalueGet_ Ptr GValue
gv = do
        Ptr ScrollActor
ptr <- Ptr GValue -> IO (Ptr ScrollActor)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr ScrollActor)
        if Ptr ScrollActor
ptr Ptr ScrollActor -> Ptr ScrollActor -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr ScrollActor
forall a. Ptr a
FP.nullPtr
        then ScrollActor -> Maybe ScrollActor
forall a. a -> Maybe a
P.Just (ScrollActor -> Maybe ScrollActor)
-> IO ScrollActor -> IO (Maybe ScrollActor)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr ScrollActor -> ScrollActor)
-> Ptr ScrollActor -> IO ScrollActor
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr ScrollActor -> ScrollActor
ScrollActor Ptr ScrollActor
ptr
        else Maybe ScrollActor -> IO (Maybe ScrollActor)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe ScrollActor
forall a. Maybe a
P.Nothing
        
    

#if defined(ENABLE_OVERLOADING)
type family ResolveScrollActorMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
    ResolveScrollActorMethod "addAction" o = Clutter.Actor.ActorAddActionMethodInfo
    ResolveScrollActorMethod "addActionWithName" o = Clutter.Actor.ActorAddActionWithNameMethodInfo
    ResolveScrollActorMethod "addActor" o = Clutter.Container.ContainerAddActorMethodInfo
    ResolveScrollActorMethod "addChild" o = Clutter.Actor.ActorAddChildMethodInfo
    ResolveScrollActorMethod "addConstraint" o = Clutter.Actor.ActorAddConstraintMethodInfo
    ResolveScrollActorMethod "addConstraintWithName" o = Clutter.Actor.ActorAddConstraintWithNameMethodInfo
    ResolveScrollActorMethod "addEffect" o = Clutter.Actor.ActorAddEffectMethodInfo
    ResolveScrollActorMethod "addEffectWithName" o = Clutter.Actor.ActorAddEffectWithNameMethodInfo
    ResolveScrollActorMethod "addTransition" o = Clutter.Actor.ActorAddTransitionMethodInfo
    ResolveScrollActorMethod "allocate" o = Clutter.Actor.ActorAllocateMethodInfo
    ResolveScrollActorMethod "allocateAlignFill" o = Clutter.Actor.ActorAllocateAlignFillMethodInfo
    ResolveScrollActorMethod "allocateAvailableSize" o = Clutter.Actor.ActorAllocateAvailableSizeMethodInfo
    ResolveScrollActorMethod "allocatePreferredSize" o = Clutter.Actor.ActorAllocatePreferredSizeMethodInfo
    ResolveScrollActorMethod "animateProperty" o = Clutter.Animatable.AnimatableAnimatePropertyMethodInfo
    ResolveScrollActorMethod "animateWithAlphav" o = Clutter.Actor.ActorAnimateWithAlphavMethodInfo
    ResolveScrollActorMethod "animateWithTimelinev" o = Clutter.Actor.ActorAnimateWithTimelinevMethodInfo
    ResolveScrollActorMethod "animatev" o = Clutter.Actor.ActorAnimatevMethodInfo
    ResolveScrollActorMethod "applyRelativeTransformToPoint" o = Clutter.Actor.ActorApplyRelativeTransformToPointMethodInfo
    ResolveScrollActorMethod "applyTransformToPoint" o = Clutter.Actor.ActorApplyTransformToPointMethodInfo
    ResolveScrollActorMethod "bindModel" o = Clutter.Actor.ActorBindModelMethodInfo
    ResolveScrollActorMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveScrollActorMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveScrollActorMethod "childGetProperty" o = Clutter.Container.ContainerChildGetPropertyMethodInfo
    ResolveScrollActorMethod "childNotify" o = Clutter.Container.ContainerChildNotifyMethodInfo
    ResolveScrollActorMethod "childSetProperty" o = Clutter.Container.ContainerChildSetPropertyMethodInfo
    ResolveScrollActorMethod "clearActions" o = Clutter.Actor.ActorClearActionsMethodInfo
    ResolveScrollActorMethod "clearConstraints" o = Clutter.Actor.ActorClearConstraintsMethodInfo
    ResolveScrollActorMethod "clearEffects" o = Clutter.Actor.ActorClearEffectsMethodInfo
    ResolveScrollActorMethod "contains" o = Clutter.Actor.ActorContainsMethodInfo
    ResolveScrollActorMethod "continuePaint" o = Clutter.Actor.ActorContinuePaintMethodInfo
    ResolveScrollActorMethod "createChildMeta" o = Clutter.Container.ContainerCreateChildMetaMethodInfo
    ResolveScrollActorMethod "createPangoContext" o = Clutter.Actor.ActorCreatePangoContextMethodInfo
    ResolveScrollActorMethod "createPangoLayout" o = Clutter.Actor.ActorCreatePangoLayoutMethodInfo
    ResolveScrollActorMethod "destroy" o = Clutter.Actor.ActorDestroyMethodInfo
    ResolveScrollActorMethod "destroyAllChildren" o = Clutter.Actor.ActorDestroyAllChildrenMethodInfo
    ResolveScrollActorMethod "destroyChildMeta" o = Clutter.Container.ContainerDestroyChildMetaMethodInfo
    ResolveScrollActorMethod "detachAnimation" o = Clutter.Actor.ActorDetachAnimationMethodInfo
    ResolveScrollActorMethod "event" o = Clutter.Actor.ActorEventMethodInfo
    ResolveScrollActorMethod "findChildByName" o = Clutter.Container.ContainerFindChildByNameMethodInfo
    ResolveScrollActorMethod "findProperty" o = Clutter.Animatable.AnimatableFindPropertyMethodInfo
    ResolveScrollActorMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveScrollActorMethod "foreach" o = Clutter.Container.ContainerForeachMethodInfo
    ResolveScrollActorMethod "foreachWithInternals" o = Clutter.Container.ContainerForeachWithInternalsMethodInfo
    ResolveScrollActorMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveScrollActorMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveScrollActorMethod "grabKeyFocus" o = Clutter.Actor.ActorGrabKeyFocusMethodInfo
    ResolveScrollActorMethod "hasActions" o = Clutter.Actor.ActorHasActionsMethodInfo
    ResolveScrollActorMethod "hasAllocation" o = Clutter.Actor.ActorHasAllocationMethodInfo
    ResolveScrollActorMethod "hasClip" o = Clutter.Actor.ActorHasClipMethodInfo
    ResolveScrollActorMethod "hasConstraints" o = Clutter.Actor.ActorHasConstraintsMethodInfo
    ResolveScrollActorMethod "hasEffects" o = Clutter.Actor.ActorHasEffectsMethodInfo
    ResolveScrollActorMethod "hasKeyFocus" o = Clutter.Actor.ActorHasKeyFocusMethodInfo
    ResolveScrollActorMethod "hasOverlaps" o = Clutter.Actor.ActorHasOverlapsMethodInfo
    ResolveScrollActorMethod "hasPointer" o = Clutter.Actor.ActorHasPointerMethodInfo
    ResolveScrollActorMethod "hide" o = Clutter.Actor.ActorHideMethodInfo
    ResolveScrollActorMethod "hideAll" o = Clutter.Actor.ActorHideAllMethodInfo
    ResolveScrollActorMethod "insertChildAbove" o = Clutter.Actor.ActorInsertChildAboveMethodInfo
    ResolveScrollActorMethod "insertChildAtIndex" o = Clutter.Actor.ActorInsertChildAtIndexMethodInfo
    ResolveScrollActorMethod "insertChildBelow" o = Clutter.Actor.ActorInsertChildBelowMethodInfo
    ResolveScrollActorMethod "interpolateValue" o = Clutter.Animatable.AnimatableInterpolateValueMethodInfo
    ResolveScrollActorMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveScrollActorMethod "isInClonePaint" o = Clutter.Actor.ActorIsInClonePaintMethodInfo
    ResolveScrollActorMethod "isMapped" o = Clutter.Actor.ActorIsMappedMethodInfo
    ResolveScrollActorMethod "isRealized" o = Clutter.Actor.ActorIsRealizedMethodInfo
    ResolveScrollActorMethod "isRotated" o = Clutter.Actor.ActorIsRotatedMethodInfo
    ResolveScrollActorMethod "isScaled" o = Clutter.Actor.ActorIsScaledMethodInfo
    ResolveScrollActorMethod "isVisible" o = Clutter.Actor.ActorIsVisibleMethodInfo
    ResolveScrollActorMethod "lower" o = Clutter.Actor.ActorLowerMethodInfo
    ResolveScrollActorMethod "lowerBottom" o = Clutter.Actor.ActorLowerBottomMethodInfo
    ResolveScrollActorMethod "lowerChild" o = Clutter.Container.ContainerLowerChildMethodInfo
    ResolveScrollActorMethod "map" o = Clutter.Actor.ActorMapMethodInfo
    ResolveScrollActorMethod "moveAnchorPoint" o = Clutter.Actor.ActorMoveAnchorPointMethodInfo
    ResolveScrollActorMethod "moveAnchorPointFromGravity" o = Clutter.Actor.ActorMoveAnchorPointFromGravityMethodInfo
    ResolveScrollActorMethod "moveBy" o = Clutter.Actor.ActorMoveByMethodInfo
    ResolveScrollActorMethod "needsExpand" o = Clutter.Actor.ActorNeedsExpandMethodInfo
    ResolveScrollActorMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveScrollActorMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveScrollActorMethod "paint" o = Clutter.Actor.ActorPaintMethodInfo
    ResolveScrollActorMethod "parseCustomNode" o = Clutter.Scriptable.ScriptableParseCustomNodeMethodInfo
    ResolveScrollActorMethod "popInternal" o = Clutter.Actor.ActorPopInternalMethodInfo
    ResolveScrollActorMethod "pushInternal" o = Clutter.Actor.ActorPushInternalMethodInfo
    ResolveScrollActorMethod "queueRedraw" o = Clutter.Actor.ActorQueueRedrawMethodInfo
    ResolveScrollActorMethod "queueRedrawWithClip" o = Clutter.Actor.ActorQueueRedrawWithClipMethodInfo
    ResolveScrollActorMethod "queueRelayout" o = Clutter.Actor.ActorQueueRelayoutMethodInfo
    ResolveScrollActorMethod "raise" o = Clutter.Actor.ActorRaiseMethodInfo
    ResolveScrollActorMethod "raiseChild" o = Clutter.Container.ContainerRaiseChildMethodInfo
    ResolveScrollActorMethod "raiseTop" o = Clutter.Actor.ActorRaiseTopMethodInfo
    ResolveScrollActorMethod "realize" o = Clutter.Actor.ActorRealizeMethodInfo
    ResolveScrollActorMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveScrollActorMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveScrollActorMethod "removeAction" o = Clutter.Actor.ActorRemoveActionMethodInfo
    ResolveScrollActorMethod "removeActionByName" o = Clutter.Actor.ActorRemoveActionByNameMethodInfo
    ResolveScrollActorMethod "removeActor" o = Clutter.Container.ContainerRemoveActorMethodInfo
    ResolveScrollActorMethod "removeAllChildren" o = Clutter.Actor.ActorRemoveAllChildrenMethodInfo
    ResolveScrollActorMethod "removeAllTransitions" o = Clutter.Actor.ActorRemoveAllTransitionsMethodInfo
    ResolveScrollActorMethod "removeChild" o = Clutter.Actor.ActorRemoveChildMethodInfo
    ResolveScrollActorMethod "removeClip" o = Clutter.Actor.ActorRemoveClipMethodInfo
    ResolveScrollActorMethod "removeConstraint" o = Clutter.Actor.ActorRemoveConstraintMethodInfo
    ResolveScrollActorMethod "removeConstraintByName" o = Clutter.Actor.ActorRemoveConstraintByNameMethodInfo
    ResolveScrollActorMethod "removeEffect" o = Clutter.Actor.ActorRemoveEffectMethodInfo
    ResolveScrollActorMethod "removeEffectByName" o = Clutter.Actor.ActorRemoveEffectByNameMethodInfo
    ResolveScrollActorMethod "removeTransition" o = Clutter.Actor.ActorRemoveTransitionMethodInfo
    ResolveScrollActorMethod "reparent" o = Clutter.Actor.ActorReparentMethodInfo
    ResolveScrollActorMethod "replaceChild" o = Clutter.Actor.ActorReplaceChildMethodInfo
    ResolveScrollActorMethod "restoreEasingState" o = Clutter.Actor.ActorRestoreEasingStateMethodInfo
    ResolveScrollActorMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveScrollActorMethod "saveEasingState" o = Clutter.Actor.ActorSaveEasingStateMethodInfo
    ResolveScrollActorMethod "scrollToPoint" o = ScrollActorScrollToPointMethodInfo
    ResolveScrollActorMethod "scrollToRect" o = ScrollActorScrollToRectMethodInfo
    ResolveScrollActorMethod "shouldPickPaint" o = Clutter.Actor.ActorShouldPickPaintMethodInfo
    ResolveScrollActorMethod "show" o = Clutter.Actor.ActorShowMethodInfo
    ResolveScrollActorMethod "showAll" o = Clutter.Actor.ActorShowAllMethodInfo
    ResolveScrollActorMethod "sortDepthOrder" o = Clutter.Container.ContainerSortDepthOrderMethodInfo
    ResolveScrollActorMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveScrollActorMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveScrollActorMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveScrollActorMethod "transformStagePoint" o = Clutter.Actor.ActorTransformStagePointMethodInfo
    ResolveScrollActorMethod "unmap" o = Clutter.Actor.ActorUnmapMethodInfo
    ResolveScrollActorMethod "unparent" o = Clutter.Actor.ActorUnparentMethodInfo
    ResolveScrollActorMethod "unrealize" o = Clutter.Actor.ActorUnrealizeMethodInfo
    ResolveScrollActorMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveScrollActorMethod "unsetFlags" o = Clutter.Actor.ActorUnsetFlagsMethodInfo
    ResolveScrollActorMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveScrollActorMethod "getAbsAllocationVertices" o = Clutter.Actor.ActorGetAbsAllocationVerticesMethodInfo
    ResolveScrollActorMethod "getAccessible" o = Clutter.Actor.ActorGetAccessibleMethodInfo
    ResolveScrollActorMethod "getAction" o = Clutter.Actor.ActorGetActionMethodInfo
    ResolveScrollActorMethod "getActions" o = Clutter.Actor.ActorGetActionsMethodInfo
    ResolveScrollActorMethod "getAllocationBox" o = Clutter.Actor.ActorGetAllocationBoxMethodInfo
    ResolveScrollActorMethod "getAllocationGeometry" o = Clutter.Actor.ActorGetAllocationGeometryMethodInfo
    ResolveScrollActorMethod "getAllocationVertices" o = Clutter.Actor.ActorGetAllocationVerticesMethodInfo
    ResolveScrollActorMethod "getAnchorPoint" o = Clutter.Actor.ActorGetAnchorPointMethodInfo
    ResolveScrollActorMethod "getAnchorPointGravity" o = Clutter.Actor.ActorGetAnchorPointGravityMethodInfo
    ResolveScrollActorMethod "getAnimation" o = Clutter.Actor.ActorGetAnimationMethodInfo
    ResolveScrollActorMethod "getBackgroundColor" o = Clutter.Actor.ActorGetBackgroundColorMethodInfo
    ResolveScrollActorMethod "getChildAtIndex" o = Clutter.Actor.ActorGetChildAtIndexMethodInfo
    ResolveScrollActorMethod "getChildMeta" o = Clutter.Container.ContainerGetChildMetaMethodInfo
    ResolveScrollActorMethod "getChildTransform" o = Clutter.Actor.ActorGetChildTransformMethodInfo
    ResolveScrollActorMethod "getChildren" o = Clutter.Actor.ActorGetChildrenMethodInfo
    ResolveScrollActorMethod "getClip" o = Clutter.Actor.ActorGetClipMethodInfo
    ResolveScrollActorMethod "getClipToAllocation" o = Clutter.Actor.ActorGetClipToAllocationMethodInfo
    ResolveScrollActorMethod "getConstraint" o = Clutter.Actor.ActorGetConstraintMethodInfo
    ResolveScrollActorMethod "getConstraints" o = Clutter.Actor.ActorGetConstraintsMethodInfo
    ResolveScrollActorMethod "getContent" o = Clutter.Actor.ActorGetContentMethodInfo
    ResolveScrollActorMethod "getContentBox" o = Clutter.Actor.ActorGetContentBoxMethodInfo
    ResolveScrollActorMethod "getContentGravity" o = Clutter.Actor.ActorGetContentGravityMethodInfo
    ResolveScrollActorMethod "getContentRepeat" o = Clutter.Actor.ActorGetContentRepeatMethodInfo
    ResolveScrollActorMethod "getContentScalingFilters" o = Clutter.Actor.ActorGetContentScalingFiltersMethodInfo
    ResolveScrollActorMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveScrollActorMethod "getDefaultPaintVolume" o = Clutter.Actor.ActorGetDefaultPaintVolumeMethodInfo
    ResolveScrollActorMethod "getDepth" o = Clutter.Actor.ActorGetDepthMethodInfo
    ResolveScrollActorMethod "getEasingDelay" o = Clutter.Actor.ActorGetEasingDelayMethodInfo
    ResolveScrollActorMethod "getEasingDuration" o = Clutter.Actor.ActorGetEasingDurationMethodInfo
    ResolveScrollActorMethod "getEasingMode" o = Clutter.Actor.ActorGetEasingModeMethodInfo
    ResolveScrollActorMethod "getEffect" o = Clutter.Actor.ActorGetEffectMethodInfo
    ResolveScrollActorMethod "getEffects" o = Clutter.Actor.ActorGetEffectsMethodInfo
    ResolveScrollActorMethod "getFirstChild" o = Clutter.Actor.ActorGetFirstChildMethodInfo
    ResolveScrollActorMethod "getFixedPositionSet" o = Clutter.Actor.ActorGetFixedPositionSetMethodInfo
    ResolveScrollActorMethod "getFlags" o = Clutter.Actor.ActorGetFlagsMethodInfo
    ResolveScrollActorMethod "getGeometry" o = Clutter.Actor.ActorGetGeometryMethodInfo
    ResolveScrollActorMethod "getGid" o = Clutter.Actor.ActorGetGidMethodInfo
    ResolveScrollActorMethod "getHeight" o = Clutter.Actor.ActorGetHeightMethodInfo
    ResolveScrollActorMethod "getId" o = Clutter.Scriptable.ScriptableGetIdMethodInfo
    ResolveScrollActorMethod "getInitialState" o = Clutter.Animatable.AnimatableGetInitialStateMethodInfo
    ResolveScrollActorMethod "getLastChild" o = Clutter.Actor.ActorGetLastChildMethodInfo
    ResolveScrollActorMethod "getLayoutManager" o = Clutter.Actor.ActorGetLayoutManagerMethodInfo
    ResolveScrollActorMethod "getMargin" o = Clutter.Actor.ActorGetMarginMethodInfo
    ResolveScrollActorMethod "getMarginBottom" o = Clutter.Actor.ActorGetMarginBottomMethodInfo
    ResolveScrollActorMethod "getMarginLeft" o = Clutter.Actor.ActorGetMarginLeftMethodInfo
    ResolveScrollActorMethod "getMarginRight" o = Clutter.Actor.ActorGetMarginRightMethodInfo
    ResolveScrollActorMethod "getMarginTop" o = Clutter.Actor.ActorGetMarginTopMethodInfo
    ResolveScrollActorMethod "getNChildren" o = Clutter.Actor.ActorGetNChildrenMethodInfo
    ResolveScrollActorMethod "getName" o = Clutter.Actor.ActorGetNameMethodInfo
    ResolveScrollActorMethod "getNextSibling" o = Clutter.Actor.ActorGetNextSiblingMethodInfo
    ResolveScrollActorMethod "getOffscreenRedirect" o = Clutter.Actor.ActorGetOffscreenRedirectMethodInfo
    ResolveScrollActorMethod "getOpacity" o = Clutter.Actor.ActorGetOpacityMethodInfo
    ResolveScrollActorMethod "getPaintBox" o = Clutter.Actor.ActorGetPaintBoxMethodInfo
    ResolveScrollActorMethod "getPaintOpacity" o = Clutter.Actor.ActorGetPaintOpacityMethodInfo
    ResolveScrollActorMethod "getPaintVisibility" o = Clutter.Actor.ActorGetPaintVisibilityMethodInfo
    ResolveScrollActorMethod "getPaintVolume" o = Clutter.Actor.ActorGetPaintVolumeMethodInfo
    ResolveScrollActorMethod "getPangoContext" o = Clutter.Actor.ActorGetPangoContextMethodInfo
    ResolveScrollActorMethod "getParent" o = Clutter.Actor.ActorGetParentMethodInfo
    ResolveScrollActorMethod "getPivotPoint" o = Clutter.Actor.ActorGetPivotPointMethodInfo
    ResolveScrollActorMethod "getPivotPointZ" o = Clutter.Actor.ActorGetPivotPointZMethodInfo
    ResolveScrollActorMethod "getPosition" o = Clutter.Actor.ActorGetPositionMethodInfo
    ResolveScrollActorMethod "getPreferredHeight" o = Clutter.Actor.ActorGetPreferredHeightMethodInfo
    ResolveScrollActorMethod "getPreferredSize" o = Clutter.Actor.ActorGetPreferredSizeMethodInfo
    ResolveScrollActorMethod "getPreferredWidth" o = Clutter.Actor.ActorGetPreferredWidthMethodInfo
    ResolveScrollActorMethod "getPreviousSibling" o = Clutter.Actor.ActorGetPreviousSiblingMethodInfo
    ResolveScrollActorMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveScrollActorMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveScrollActorMethod "getReactive" o = Clutter.Actor.ActorGetReactiveMethodInfo
    ResolveScrollActorMethod "getRequestMode" o = Clutter.Actor.ActorGetRequestModeMethodInfo
    ResolveScrollActorMethod "getRotation" o = Clutter.Actor.ActorGetRotationMethodInfo
    ResolveScrollActorMethod "getRotationAngle" o = Clutter.Actor.ActorGetRotationAngleMethodInfo
    ResolveScrollActorMethod "getScale" o = Clutter.Actor.ActorGetScaleMethodInfo
    ResolveScrollActorMethod "getScaleCenter" o = Clutter.Actor.ActorGetScaleCenterMethodInfo
    ResolveScrollActorMethod "getScaleGravity" o = Clutter.Actor.ActorGetScaleGravityMethodInfo
    ResolveScrollActorMethod "getScaleZ" o = Clutter.Actor.ActorGetScaleZMethodInfo
    ResolveScrollActorMethod "getScrollMode" o = ScrollActorGetScrollModeMethodInfo
    ResolveScrollActorMethod "getShader" o = Clutter.Actor.ActorGetShaderMethodInfo
    ResolveScrollActorMethod "getSize" o = Clutter.Actor.ActorGetSizeMethodInfo
    ResolveScrollActorMethod "getStage" o = Clutter.Actor.ActorGetStageMethodInfo
    ResolveScrollActorMethod "getTextDirection" o = Clutter.Actor.ActorGetTextDirectionMethodInfo
    ResolveScrollActorMethod "getTransform" o = Clutter.Actor.ActorGetTransformMethodInfo
    ResolveScrollActorMethod "getTransformationMatrix" o = Clutter.Actor.ActorGetTransformationMatrixMethodInfo
    ResolveScrollActorMethod "getTransformedPaintVolume" o = Clutter.Actor.ActorGetTransformedPaintVolumeMethodInfo
    ResolveScrollActorMethod "getTransformedPosition" o = Clutter.Actor.ActorGetTransformedPositionMethodInfo
    ResolveScrollActorMethod "getTransformedSize" o = Clutter.Actor.ActorGetTransformedSizeMethodInfo
    ResolveScrollActorMethod "getTransition" o = Clutter.Actor.ActorGetTransitionMethodInfo
    ResolveScrollActorMethod "getTranslation" o = Clutter.Actor.ActorGetTranslationMethodInfo
    ResolveScrollActorMethod "getWidth" o = Clutter.Actor.ActorGetWidthMethodInfo
    ResolveScrollActorMethod "getX" o = Clutter.Actor.ActorGetXMethodInfo
    ResolveScrollActorMethod "getXAlign" o = Clutter.Actor.ActorGetXAlignMethodInfo
    ResolveScrollActorMethod "getXExpand" o = Clutter.Actor.ActorGetXExpandMethodInfo
    ResolveScrollActorMethod "getY" o = Clutter.Actor.ActorGetYMethodInfo
    ResolveScrollActorMethod "getYAlign" o = Clutter.Actor.ActorGetYAlignMethodInfo
    ResolveScrollActorMethod "getYExpand" o = Clutter.Actor.ActorGetYExpandMethodInfo
    ResolveScrollActorMethod "getZPosition" o = Clutter.Actor.ActorGetZPositionMethodInfo
    ResolveScrollActorMethod "getZRotationGravity" o = Clutter.Actor.ActorGetZRotationGravityMethodInfo
    ResolveScrollActorMethod "setAllocation" o = Clutter.Actor.ActorSetAllocationMethodInfo
    ResolveScrollActorMethod "setAnchorPoint" o = Clutter.Actor.ActorSetAnchorPointMethodInfo
    ResolveScrollActorMethod "setAnchorPointFromGravity" o = Clutter.Actor.ActorSetAnchorPointFromGravityMethodInfo
    ResolveScrollActorMethod "setBackgroundColor" o = Clutter.Actor.ActorSetBackgroundColorMethodInfo
    ResolveScrollActorMethod "setChildAboveSibling" o = Clutter.Actor.ActorSetChildAboveSiblingMethodInfo
    ResolveScrollActorMethod "setChildAtIndex" o = Clutter.Actor.ActorSetChildAtIndexMethodInfo
    ResolveScrollActorMethod "setChildBelowSibling" o = Clutter.Actor.ActorSetChildBelowSiblingMethodInfo
    ResolveScrollActorMethod "setChildTransform" o = Clutter.Actor.ActorSetChildTransformMethodInfo
    ResolveScrollActorMethod "setClip" o = Clutter.Actor.ActorSetClipMethodInfo
    ResolveScrollActorMethod "setClipToAllocation" o = Clutter.Actor.ActorSetClipToAllocationMethodInfo
    ResolveScrollActorMethod "setContent" o = Clutter.Actor.ActorSetContentMethodInfo
    ResolveScrollActorMethod "setContentGravity" o = Clutter.Actor.ActorSetContentGravityMethodInfo
    ResolveScrollActorMethod "setContentRepeat" o = Clutter.Actor.ActorSetContentRepeatMethodInfo
    ResolveScrollActorMethod "setContentScalingFilters" o = Clutter.Actor.ActorSetContentScalingFiltersMethodInfo
    ResolveScrollActorMethod "setCustomProperty" o = Clutter.Scriptable.ScriptableSetCustomPropertyMethodInfo
    ResolveScrollActorMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveScrollActorMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveScrollActorMethod "setDepth" o = Clutter.Actor.ActorSetDepthMethodInfo
    ResolveScrollActorMethod "setEasingDelay" o = Clutter.Actor.ActorSetEasingDelayMethodInfo
    ResolveScrollActorMethod "setEasingDuration" o = Clutter.Actor.ActorSetEasingDurationMethodInfo
    ResolveScrollActorMethod "setEasingMode" o = Clutter.Actor.ActorSetEasingModeMethodInfo
    ResolveScrollActorMethod "setFinalState" o = Clutter.Animatable.AnimatableSetFinalStateMethodInfo
    ResolveScrollActorMethod "setFixedPositionSet" o = Clutter.Actor.ActorSetFixedPositionSetMethodInfo
    ResolveScrollActorMethod "setFlags" o = Clutter.Actor.ActorSetFlagsMethodInfo
    ResolveScrollActorMethod "setGeometry" o = Clutter.Actor.ActorSetGeometryMethodInfo
    ResolveScrollActorMethod "setHeight" o = Clutter.Actor.ActorSetHeightMethodInfo
    ResolveScrollActorMethod "setId" o = Clutter.Scriptable.ScriptableSetIdMethodInfo
    ResolveScrollActorMethod "setLayoutManager" o = Clutter.Actor.ActorSetLayoutManagerMethodInfo
    ResolveScrollActorMethod "setMargin" o = Clutter.Actor.ActorSetMarginMethodInfo
    ResolveScrollActorMethod "setMarginBottom" o = Clutter.Actor.ActorSetMarginBottomMethodInfo
    ResolveScrollActorMethod "setMarginLeft" o = Clutter.Actor.ActorSetMarginLeftMethodInfo
    ResolveScrollActorMethod "setMarginRight" o = Clutter.Actor.ActorSetMarginRightMethodInfo
    ResolveScrollActorMethod "setMarginTop" o = Clutter.Actor.ActorSetMarginTopMethodInfo
    ResolveScrollActorMethod "setName" o = Clutter.Actor.ActorSetNameMethodInfo
    ResolveScrollActorMethod "setOffscreenRedirect" o = Clutter.Actor.ActorSetOffscreenRedirectMethodInfo
    ResolveScrollActorMethod "setOpacity" o = Clutter.Actor.ActorSetOpacityMethodInfo
    ResolveScrollActorMethod "setParent" o = Clutter.Actor.ActorSetParentMethodInfo
    ResolveScrollActorMethod "setPivotPoint" o = Clutter.Actor.ActorSetPivotPointMethodInfo
    ResolveScrollActorMethod "setPivotPointZ" o = Clutter.Actor.ActorSetPivotPointZMethodInfo
    ResolveScrollActorMethod "setPosition" o = Clutter.Actor.ActorSetPositionMethodInfo
    ResolveScrollActorMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveScrollActorMethod "setReactive" o = Clutter.Actor.ActorSetReactiveMethodInfo
    ResolveScrollActorMethod "setRequestMode" o = Clutter.Actor.ActorSetRequestModeMethodInfo
    ResolveScrollActorMethod "setRotation" o = Clutter.Actor.ActorSetRotationMethodInfo
    ResolveScrollActorMethod "setRotationAngle" o = Clutter.Actor.ActorSetRotationAngleMethodInfo
    ResolveScrollActorMethod "setScale" o = Clutter.Actor.ActorSetScaleMethodInfo
    ResolveScrollActorMethod "setScaleFull" o = Clutter.Actor.ActorSetScaleFullMethodInfo
    ResolveScrollActorMethod "setScaleWithGravity" o = Clutter.Actor.ActorSetScaleWithGravityMethodInfo
    ResolveScrollActorMethod "setScaleZ" o = Clutter.Actor.ActorSetScaleZMethodInfo
    ResolveScrollActorMethod "setScrollMode" o = ScrollActorSetScrollModeMethodInfo
    ResolveScrollActorMethod "setShader" o = Clutter.Actor.ActorSetShaderMethodInfo
    ResolveScrollActorMethod "setShaderParam" o = Clutter.Actor.ActorSetShaderParamMethodInfo
    ResolveScrollActorMethod "setShaderParamFloat" o = Clutter.Actor.ActorSetShaderParamFloatMethodInfo
    ResolveScrollActorMethod "setShaderParamInt" o = Clutter.Actor.ActorSetShaderParamIntMethodInfo
    ResolveScrollActorMethod "setSize" o = Clutter.Actor.ActorSetSizeMethodInfo
    ResolveScrollActorMethod "setTextDirection" o = Clutter.Actor.ActorSetTextDirectionMethodInfo
    ResolveScrollActorMethod "setTransform" o = Clutter.Actor.ActorSetTransformMethodInfo
    ResolveScrollActorMethod "setTranslation" o = Clutter.Actor.ActorSetTranslationMethodInfo
    ResolveScrollActorMethod "setWidth" o = Clutter.Actor.ActorSetWidthMethodInfo
    ResolveScrollActorMethod "setX" o = Clutter.Actor.ActorSetXMethodInfo
    ResolveScrollActorMethod "setXAlign" o = Clutter.Actor.ActorSetXAlignMethodInfo
    ResolveScrollActorMethod "setXExpand" o = Clutter.Actor.ActorSetXExpandMethodInfo
    ResolveScrollActorMethod "setY" o = Clutter.Actor.ActorSetYMethodInfo
    ResolveScrollActorMethod "setYAlign" o = Clutter.Actor.ActorSetYAlignMethodInfo
    ResolveScrollActorMethod "setYExpand" o = Clutter.Actor.ActorSetYExpandMethodInfo
    ResolveScrollActorMethod "setZPosition" o = Clutter.Actor.ActorSetZPositionMethodInfo
    ResolveScrollActorMethod "setZRotationFromGravity" o = Clutter.Actor.ActorSetZRotationFromGravityMethodInfo
    ResolveScrollActorMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveScrollActorMethod t ScrollActor, O.OverloadedMethod info ScrollActor p) => OL.IsLabel t (ScrollActor -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif

#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveScrollActorMethod t ScrollActor, O.OverloadedMethod info ScrollActor p, R.HasField t ScrollActor p) => R.HasField t ScrollActor p where
    getField = O.overloadedMethod @info

#endif

instance (info ~ ResolveScrollActorMethod t ScrollActor, O.OverloadedMethodInfo info ScrollActor) => OL.IsLabel t (O.MethodProxy info ScrollActor) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.MethodProxy
#else
    fromLabel _ = O.MethodProxy
#endif

#endif

-- VVV Prop "scroll-mode"
   -- Type: TInterface (Name {namespace = "Clutter", name = "ScrollMode"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@scroll-mode@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' scrollActor #scrollMode
-- @
getScrollActorScrollMode :: (MonadIO m, IsScrollActor o) => o -> m [Clutter.Flags.ScrollMode]
getScrollActorScrollMode :: forall (m :: * -> *) o.
(MonadIO m, IsScrollActor o) =>
o -> m [ScrollMode]
getScrollActorScrollMode o
obj = IO [ScrollMode] -> m [ScrollMode]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO [ScrollMode] -> m [ScrollMode])
-> IO [ScrollMode] -> m [ScrollMode]
forall a b. (a -> b) -> a -> b
$ o -> String -> IO [ScrollMode]
forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"scroll-mode"

-- | Set the value of the “@scroll-mode@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' scrollActor [ #scrollMode 'Data.GI.Base.Attributes.:=' value ]
-- @
setScrollActorScrollMode :: (MonadIO m, IsScrollActor o) => o -> [Clutter.Flags.ScrollMode] -> m ()
setScrollActorScrollMode :: forall (m :: * -> *) o.
(MonadIO m, IsScrollActor o) =>
o -> [ScrollMode] -> m ()
setScrollActorScrollMode o
obj [ScrollMode]
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    o -> String -> [ScrollMode] -> IO ()
forall a b.
(IsGFlag b, BoxedFlags b, GObject a) =>
a -> String -> [b] -> IO ()
B.Properties.setObjectPropertyFlags o
obj String
"scroll-mode" [ScrollMode]
val

-- | Construct a `GValueConstruct` with valid value for the “@scroll-mode@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructScrollActorScrollMode :: (IsScrollActor o, MIO.MonadIO m) => [Clutter.Flags.ScrollMode] -> m (GValueConstruct o)
constructScrollActorScrollMode :: forall o (m :: * -> *).
(IsScrollActor o, MonadIO m) =>
[ScrollMode] -> m (GValueConstruct o)
constructScrollActorScrollMode [ScrollMode]
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
    IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> [ScrollMode] -> IO (GValueConstruct o)
forall a o.
(IsGFlag a, BoxedFlags a) =>
String -> [a] -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyFlags String
"scroll-mode" [ScrollMode]
val

#if defined(ENABLE_OVERLOADING)
data ScrollActorScrollModePropertyInfo
instance AttrInfo ScrollActorScrollModePropertyInfo where
    type AttrAllowedOps ScrollActorScrollModePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ScrollActorScrollModePropertyInfo = IsScrollActor
    type AttrSetTypeConstraint ScrollActorScrollModePropertyInfo = (~) [Clutter.Flags.ScrollMode]
    type AttrTransferTypeConstraint ScrollActorScrollModePropertyInfo = (~) [Clutter.Flags.ScrollMode]
    type AttrTransferType ScrollActorScrollModePropertyInfo = [Clutter.Flags.ScrollMode]
    type AttrGetType ScrollActorScrollModePropertyInfo = [Clutter.Flags.ScrollMode]
    type AttrLabel ScrollActorScrollModePropertyInfo = "scroll-mode"
    type AttrOrigin ScrollActorScrollModePropertyInfo = ScrollActor
    attrGet = getScrollActorScrollMode
    attrSet = setScrollActorScrollMode
    attrTransfer _ v = do
        return v
    attrConstruct = constructScrollActorScrollMode
    attrClear = undefined
    dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.Clutter.Objects.ScrollActor.scrollMode"
        , O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-clutter-1.0.5/docs/GI-Clutter-Objects-ScrollActor.html#g:attr:scrollMode"
        })
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList ScrollActor
type instance O.AttributeList ScrollActor = ScrollActorAttributeList
type ScrollActorAttributeList = ('[ '("actions", Clutter.Actor.ActorActionsPropertyInfo), '("allocation", Clutter.Actor.ActorAllocationPropertyInfo), '("anchorGravity", Clutter.Actor.ActorAnchorGravityPropertyInfo), '("anchorX", Clutter.Actor.ActorAnchorXPropertyInfo), '("anchorY", Clutter.Actor.ActorAnchorYPropertyInfo), '("backgroundColor", Clutter.Actor.ActorBackgroundColorPropertyInfo), '("backgroundColorSet", Clutter.Actor.ActorBackgroundColorSetPropertyInfo), '("childTransform", Clutter.Actor.ActorChildTransformPropertyInfo), '("childTransformSet", Clutter.Actor.ActorChildTransformSetPropertyInfo), '("clip", Clutter.Actor.ActorClipPropertyInfo), '("clipRect", Clutter.Actor.ActorClipRectPropertyInfo), '("clipToAllocation", Clutter.Actor.ActorClipToAllocationPropertyInfo), '("constraints", Clutter.Actor.ActorConstraintsPropertyInfo), '("content", Clutter.Actor.ActorContentPropertyInfo), '("contentBox", Clutter.Actor.ActorContentBoxPropertyInfo), '("contentGravity", Clutter.Actor.ActorContentGravityPropertyInfo), '("contentRepeat", Clutter.Actor.ActorContentRepeatPropertyInfo), '("depth", Clutter.Actor.ActorDepthPropertyInfo), '("effect", Clutter.Actor.ActorEffectPropertyInfo), '("firstChild", Clutter.Actor.ActorFirstChildPropertyInfo), '("fixedPositionSet", Clutter.Actor.ActorFixedPositionSetPropertyInfo), '("fixedX", Clutter.Actor.ActorFixedXPropertyInfo), '("fixedY", Clutter.Actor.ActorFixedYPropertyInfo), '("hasClip", Clutter.Actor.ActorHasClipPropertyInfo), '("hasPointer", Clutter.Actor.ActorHasPointerPropertyInfo), '("height", Clutter.Actor.ActorHeightPropertyInfo), '("lastChild", Clutter.Actor.ActorLastChildPropertyInfo), '("layoutManager", Clutter.Actor.ActorLayoutManagerPropertyInfo), '("magnificationFilter", Clutter.Actor.ActorMagnificationFilterPropertyInfo), '("mapped", Clutter.Actor.ActorMappedPropertyInfo), '("marginBottom", Clutter.Actor.ActorMarginBottomPropertyInfo), '("marginLeft", Clutter.Actor.ActorMarginLeftPropertyInfo), '("marginRight", Clutter.Actor.ActorMarginRightPropertyInfo), '("marginTop", Clutter.Actor.ActorMarginTopPropertyInfo), '("minHeight", Clutter.Actor.ActorMinHeightPropertyInfo), '("minHeightSet", Clutter.Actor.ActorMinHeightSetPropertyInfo), '("minWidth", Clutter.Actor.ActorMinWidthPropertyInfo), '("minWidthSet", Clutter.Actor.ActorMinWidthSetPropertyInfo), '("minificationFilter", Clutter.Actor.ActorMinificationFilterPropertyInfo), '("name", Clutter.Actor.ActorNamePropertyInfo), '("naturalHeight", Clutter.Actor.ActorNaturalHeightPropertyInfo), '("naturalHeightSet", Clutter.Actor.ActorNaturalHeightSetPropertyInfo), '("naturalWidth", Clutter.Actor.ActorNaturalWidthPropertyInfo), '("naturalWidthSet", Clutter.Actor.ActorNaturalWidthSetPropertyInfo), '("offscreenRedirect", Clutter.Actor.ActorOffscreenRedirectPropertyInfo), '("opacity", Clutter.Actor.ActorOpacityPropertyInfo), '("pivotPoint", Clutter.Actor.ActorPivotPointPropertyInfo), '("pivotPointZ", Clutter.Actor.ActorPivotPointZPropertyInfo), '("position", Clutter.Actor.ActorPositionPropertyInfo), '("reactive", Clutter.Actor.ActorReactivePropertyInfo), '("realized", Clutter.Actor.ActorRealizedPropertyInfo), '("requestMode", Clutter.Actor.ActorRequestModePropertyInfo), '("rotationAngleX", Clutter.Actor.ActorRotationAngleXPropertyInfo), '("rotationAngleY", Clutter.Actor.ActorRotationAngleYPropertyInfo), '("rotationAngleZ", Clutter.Actor.ActorRotationAngleZPropertyInfo), '("rotationCenterX", Clutter.Actor.ActorRotationCenterXPropertyInfo), '("rotationCenterY", Clutter.Actor.ActorRotationCenterYPropertyInfo), '("rotationCenterZ", Clutter.Actor.ActorRotationCenterZPropertyInfo), '("rotationCenterZGravity", Clutter.Actor.ActorRotationCenterZGravityPropertyInfo), '("scaleCenterX", Clutter.Actor.ActorScaleCenterXPropertyInfo), '("scaleCenterY", Clutter.Actor.ActorScaleCenterYPropertyInfo), '("scaleGravity", Clutter.Actor.ActorScaleGravityPropertyInfo), '("scaleX", Clutter.Actor.ActorScaleXPropertyInfo), '("scaleY", Clutter.Actor.ActorScaleYPropertyInfo), '("scaleZ", Clutter.Actor.ActorScaleZPropertyInfo), '("scrollMode", ScrollActorScrollModePropertyInfo), '("showOnSetParent", Clutter.Actor.ActorShowOnSetParentPropertyInfo), '("size", Clutter.Actor.ActorSizePropertyInfo), '("textDirection", Clutter.Actor.ActorTextDirectionPropertyInfo), '("transform", Clutter.Actor.ActorTransformPropertyInfo), '("transformSet", Clutter.Actor.ActorTransformSetPropertyInfo), '("translationX", Clutter.Actor.ActorTranslationXPropertyInfo), '("translationY", Clutter.Actor.ActorTranslationYPropertyInfo), '("translationZ", Clutter.Actor.ActorTranslationZPropertyInfo), '("visible", Clutter.Actor.ActorVisiblePropertyInfo), '("width", Clutter.Actor.ActorWidthPropertyInfo), '("x", Clutter.Actor.ActorXPropertyInfo), '("xAlign", Clutter.Actor.ActorXAlignPropertyInfo), '("xExpand", Clutter.Actor.ActorXExpandPropertyInfo), '("y", Clutter.Actor.ActorYPropertyInfo), '("yAlign", Clutter.Actor.ActorYAlignPropertyInfo), '("yExpand", Clutter.Actor.ActorYExpandPropertyInfo), '("zPosition", Clutter.Actor.ActorZPositionPropertyInfo)] :: [(Symbol, DK.Type)])
#endif

#if defined(ENABLE_OVERLOADING)
scrollActorScrollMode :: AttrLabelProxy "scrollMode"
scrollActorScrollMode = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList ScrollActor = ScrollActorSignalList
type ScrollActorSignalList = ('[ '("actorAdded", Clutter.Container.ContainerActorAddedSignalInfo), '("actorRemoved", Clutter.Container.ContainerActorRemovedSignalInfo), '("allocationChanged", Clutter.Actor.ActorAllocationChangedSignalInfo), '("buttonPressEvent", Clutter.Actor.ActorButtonPressEventSignalInfo), '("buttonReleaseEvent", Clutter.Actor.ActorButtonReleaseEventSignalInfo), '("capturedEvent", Clutter.Actor.ActorCapturedEventSignalInfo), '("childNotify", Clutter.Container.ContainerChildNotifySignalInfo), '("destroy", Clutter.Actor.ActorDestroySignalInfo), '("enterEvent", Clutter.Actor.ActorEnterEventSignalInfo), '("event", Clutter.Actor.ActorEventSignalInfo), '("hide", Clutter.Actor.ActorHideSignalInfo), '("keyFocusIn", Clutter.Actor.ActorKeyFocusInSignalInfo), '("keyFocusOut", Clutter.Actor.ActorKeyFocusOutSignalInfo), '("keyPressEvent", Clutter.Actor.ActorKeyPressEventSignalInfo), '("keyReleaseEvent", Clutter.Actor.ActorKeyReleaseEventSignalInfo), '("leaveEvent", Clutter.Actor.ActorLeaveEventSignalInfo), '("motionEvent", Clutter.Actor.ActorMotionEventSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("paint", Clutter.Actor.ActorPaintSignalInfo), '("parentSet", Clutter.Actor.ActorParentSetSignalInfo), '("pick", Clutter.Actor.ActorPickSignalInfo), '("queueRedraw", Clutter.Actor.ActorQueueRedrawSignalInfo), '("queueRelayout", Clutter.Actor.ActorQueueRelayoutSignalInfo), '("realize", Clutter.Actor.ActorRealizeSignalInfo), '("scrollEvent", Clutter.Actor.ActorScrollEventSignalInfo), '("show", Clutter.Actor.ActorShowSignalInfo), '("touchEvent", Clutter.Actor.ActorTouchEventSignalInfo), '("transitionStopped", Clutter.Actor.ActorTransitionStoppedSignalInfo), '("transitionsCompleted", Clutter.Actor.ActorTransitionsCompletedSignalInfo), '("unrealize", Clutter.Actor.ActorUnrealizeSignalInfo)] :: [(Symbol, DK.Type)])

#endif

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

foreign import ccall "clutter_scroll_actor_new" clutter_scroll_actor_new :: 
    IO (Ptr ScrollActor)

-- | Creates a new t'GI.Clutter.Objects.ScrollActor.ScrollActor'.
-- 
-- /Since: 1.12/
scrollActorNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m ScrollActor
    -- ^ __Returns:__ The newly created t'GI.Clutter.Objects.ScrollActor.ScrollActor'
    --   instance.
scrollActorNew :: forall (m :: * -> *). (HasCallStack, MonadIO m) => m ScrollActor
scrollActorNew  = IO ScrollActor -> m ScrollActor
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ScrollActor -> m ScrollActor)
-> IO ScrollActor -> m ScrollActor
forall a b. (a -> b) -> a -> b
$ do
    Ptr ScrollActor
result <- IO (Ptr ScrollActor)
clutter_scroll_actor_new
    Text -> Ptr ScrollActor -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"scrollActorNew" Ptr ScrollActor
result
    ScrollActor
result' <- ((ManagedPtr ScrollActor -> ScrollActor)
-> Ptr ScrollActor -> IO ScrollActor
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr ScrollActor -> ScrollActor
ScrollActor) Ptr ScrollActor
result
    ScrollActor -> IO ScrollActor
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ScrollActor
result'

#if defined(ENABLE_OVERLOADING)
#endif

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

foreign import ccall "clutter_scroll_actor_get_scroll_mode" clutter_scroll_actor_get_scroll_mode :: 
    Ptr ScrollActor ->                      -- actor : TInterface (Name {namespace = "Clutter", name = "ScrollActor"})
    IO CUInt

-- | Retrieves the [ScrollActor:scrollMode]("GI.Clutter.Objects.ScrollActor#g:attr:scrollMode") property
-- 
-- /Since: 1.12/
scrollActorGetScrollMode ::
    (B.CallStack.HasCallStack, MonadIO m, IsScrollActor a) =>
    a
    -- ^ /@actor@/: a t'GI.Clutter.Objects.ScrollActor.ScrollActor'
    -> m [Clutter.Flags.ScrollMode]
    -- ^ __Returns:__ the scrolling mode
scrollActorGetScrollMode :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsScrollActor a) =>
a -> m [ScrollMode]
scrollActorGetScrollMode a
actor = IO [ScrollMode] -> m [ScrollMode]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [ScrollMode] -> m [ScrollMode])
-> IO [ScrollMode] -> m [ScrollMode]
forall a b. (a -> b) -> a -> b
$ do
    Ptr ScrollActor
actor' <- a -> IO (Ptr ScrollActor)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
actor
    CUInt
result <- Ptr ScrollActor -> IO CUInt
clutter_scroll_actor_get_scroll_mode Ptr ScrollActor
actor'
    let result' :: [ScrollMode]
result' = CUInt -> [ScrollMode]
forall a b. (Storable a, Integral a, Bits a, IsGFlag b) => a -> [b]
wordToGFlags CUInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
actor
    [ScrollMode] -> IO [ScrollMode]
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return [ScrollMode]
result'

#if defined(ENABLE_OVERLOADING)
data ScrollActorGetScrollModeMethodInfo
instance (signature ~ (m [Clutter.Flags.ScrollMode]), MonadIO m, IsScrollActor a) => O.OverloadedMethod ScrollActorGetScrollModeMethodInfo a signature where
    overloadedMethod = scrollActorGetScrollMode

instance O.OverloadedMethodInfo ScrollActorGetScrollModeMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.Clutter.Objects.ScrollActor.scrollActorGetScrollMode",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-clutter-1.0.5/docs/GI-Clutter-Objects-ScrollActor.html#v:scrollActorGetScrollMode"
        })


#endif

-- method ScrollActor::scroll_to_point
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "actor"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "ScrollActor" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #ClutterScrollActor"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "point"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "Point" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #ClutterPoint" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "clutter_scroll_actor_scroll_to_point" clutter_scroll_actor_scroll_to_point :: 
    Ptr ScrollActor ->                      -- actor : TInterface (Name {namespace = "Clutter", name = "ScrollActor"})
    Ptr Clutter.Point.Point ->              -- point : TInterface (Name {namespace = "Clutter", name = "Point"})
    IO ()

-- | Scrolls the contents of /@actor@/ so that /@point@/ is the new origin
-- of the visible area.
-- 
-- The coordinates of /@point@/ must be relative to the /@actor@/.
-- 
-- This function will use the currently set easing state of the /@actor@/
-- to transition from the current scroll origin to the new one.
-- 
-- /Since: 1.12/
scrollActorScrollToPoint ::
    (B.CallStack.HasCallStack, MonadIO m, IsScrollActor a) =>
    a
    -- ^ /@actor@/: a t'GI.Clutter.Objects.ScrollActor.ScrollActor'
    -> Clutter.Point.Point
    -- ^ /@point@/: a t'GI.Clutter.Structs.Point.Point'
    -> m ()
scrollActorScrollToPoint :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsScrollActor a) =>
a -> Point -> m ()
scrollActorScrollToPoint a
actor Point
point = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr ScrollActor
actor' <- a -> IO (Ptr ScrollActor)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
actor
    Ptr Point
point' <- Point -> IO (Ptr Point)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr Point
point
    Ptr ScrollActor -> Ptr Point -> IO ()
clutter_scroll_actor_scroll_to_point Ptr ScrollActor
actor' Ptr Point
point'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
actor
    Point -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr Point
point
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ScrollActorScrollToPointMethodInfo
instance (signature ~ (Clutter.Point.Point -> m ()), MonadIO m, IsScrollActor a) => O.OverloadedMethod ScrollActorScrollToPointMethodInfo a signature where
    overloadedMethod = scrollActorScrollToPoint

instance O.OverloadedMethodInfo ScrollActorScrollToPointMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.Clutter.Objects.ScrollActor.scrollActorScrollToPoint",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-clutter-1.0.5/docs/GI-Clutter-Objects-ScrollActor.html#v:scrollActorScrollToPoint"
        })


#endif

-- method ScrollActor::scroll_to_rect
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "actor"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "ScrollActor" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #ClutterScrollActor"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "rect"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "Rect" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #ClutterRect" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "clutter_scroll_actor_scroll_to_rect" clutter_scroll_actor_scroll_to_rect :: 
    Ptr ScrollActor ->                      -- actor : TInterface (Name {namespace = "Clutter", name = "ScrollActor"})
    Ptr Clutter.Rect.Rect ->                -- rect : TInterface (Name {namespace = "Clutter", name = "Rect"})
    IO ()

-- | Scrolls /@actor@/ so that /@rect@/ is in the visible portion.
-- 
-- /Since: 1.12/
scrollActorScrollToRect ::
    (B.CallStack.HasCallStack, MonadIO m, IsScrollActor a) =>
    a
    -- ^ /@actor@/: a t'GI.Clutter.Objects.ScrollActor.ScrollActor'
    -> Clutter.Rect.Rect
    -- ^ /@rect@/: a t'GI.Clutter.Structs.Rect.Rect'
    -> m ()
scrollActorScrollToRect :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsScrollActor a) =>
a -> Rect -> m ()
scrollActorScrollToRect a
actor Rect
rect = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr ScrollActor
actor' <- a -> IO (Ptr ScrollActor)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
actor
    Ptr Rect
rect' <- Rect -> IO (Ptr Rect)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr Rect
rect
    Ptr ScrollActor -> Ptr Rect -> IO ()
clutter_scroll_actor_scroll_to_rect Ptr ScrollActor
actor' Ptr Rect
rect'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
actor
    Rect -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr Rect
rect
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ScrollActorScrollToRectMethodInfo
instance (signature ~ (Clutter.Rect.Rect -> m ()), MonadIO m, IsScrollActor a) => O.OverloadedMethod ScrollActorScrollToRectMethodInfo a signature where
    overloadedMethod = scrollActorScrollToRect

instance O.OverloadedMethodInfo ScrollActorScrollToRectMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.Clutter.Objects.ScrollActor.scrollActorScrollToRect",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-clutter-1.0.5/docs/GI-Clutter-Objects-ScrollActor.html#v:scrollActorScrollToRect"
        })


#endif

-- method ScrollActor::set_scroll_mode
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "actor"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "ScrollActor" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #ClutterScrollActor"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "mode"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "ScrollMode" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #ClutterScrollMode"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "clutter_scroll_actor_set_scroll_mode" clutter_scroll_actor_set_scroll_mode :: 
    Ptr ScrollActor ->                      -- actor : TInterface (Name {namespace = "Clutter", name = "ScrollActor"})
    CUInt ->                                -- mode : TInterface (Name {namespace = "Clutter", name = "ScrollMode"})
    IO ()

-- | Sets the [ScrollActor:scrollMode]("GI.Clutter.Objects.ScrollActor#g:attr:scrollMode") property.
-- 
-- /Since: 1.12/
scrollActorSetScrollMode ::
    (B.CallStack.HasCallStack, MonadIO m, IsScrollActor a) =>
    a
    -- ^ /@actor@/: a t'GI.Clutter.Objects.ScrollActor.ScrollActor'
    -> [Clutter.Flags.ScrollMode]
    -- ^ /@mode@/: a t'GI.Clutter.Flags.ScrollMode'
    -> m ()
scrollActorSetScrollMode :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsScrollActor a) =>
a -> [ScrollMode] -> m ()
scrollActorSetScrollMode a
actor [ScrollMode]
mode = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr ScrollActor
actor' <- a -> IO (Ptr ScrollActor)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
actor
    let mode' :: CUInt
mode' = [ScrollMode] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [ScrollMode]
mode
    Ptr ScrollActor -> CUInt -> IO ()
clutter_scroll_actor_set_scroll_mode Ptr ScrollActor
actor' CUInt
mode'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
actor
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ScrollActorSetScrollModeMethodInfo
instance (signature ~ ([Clutter.Flags.ScrollMode] -> m ()), MonadIO m, IsScrollActor a) => O.OverloadedMethod ScrollActorSetScrollModeMethodInfo a signature where
    overloadedMethod = scrollActorSetScrollMode

instance O.OverloadedMethodInfo ScrollActorSetScrollModeMethodInfo a where
    overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
        O.resolvedSymbolName = "GI.Clutter.Objects.ScrollActor.scrollActorSetScrollMode",
        O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-clutter-1.0.5/docs/GI-Clutter-Objects-ScrollActor.html#v:scrollActorSetScrollMode"
        })


#endif