{-# 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.Group.Group' structure contains only private data
-- and should be accessed using the provided API
-- 
-- /Since: 0.2/

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

module GI.Clutter.Objects.Group
    ( 

-- * Exported types
    Group(..)                               ,
    IsGroup                                 ,
    toGroup                                 ,


 -- * 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"), [removeAll]("GI.Clutter.Objects.Group#g:method:removeAll"), [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"), [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.Group#g:method:getNChildren"), [getName]("GI.Clutter.Objects.Actor#g:method:getName"), [getNextSibling]("GI.Clutter.Objects.Actor#g:method:getNextSibling"), [getNthChild]("GI.Clutter.Objects.Group#g:method:getNthChild"), [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"), [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"), [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)
    ResolveGroupMethod                      ,
#endif

-- ** getNChildren #method:getNChildren#

#if defined(ENABLE_OVERLOADING)
    GroupGetNChildrenMethodInfo             ,
#endif
    groupGetNChildren                       ,


-- ** getNthChild #method:getNthChild#

#if defined(ENABLE_OVERLOADING)
    GroupGetNthChildMethodInfo              ,
#endif
    groupGetNthChild                        ,


-- ** new #method:new#

    groupNew                                ,


-- ** removeAll #method:removeAll#

#if defined(ENABLE_OVERLOADING)
    GroupRemoveAllMethodInfo                ,
#endif
    groupRemoveAll                          ,




    ) 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.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 qualified GI.GObject.Objects.Object as GObject.Object

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

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

foreign import ccall "clutter_group_get_type"
    c_clutter_group_get_type :: IO B.Types.GType

instance B.Types.TypedObject Group where
    glibType :: IO GType
glibType = IO GType
c_clutter_group_get_type

instance B.Types.GObject Group

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

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

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

-- | Convert 'Group' 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 Group) where
    gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_clutter_group_get_type
    gvalueSet_ :: Ptr GValue -> Maybe Group -> IO ()
gvalueSet_ Ptr GValue
gv Maybe Group
P.Nothing = Ptr GValue -> Ptr Group -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr Group
forall a. Ptr a
FP.nullPtr :: FP.Ptr Group)
    gvalueSet_ Ptr GValue
gv (P.Just Group
obj) = Group -> (Ptr Group -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Group
obj (Ptr GValue -> Ptr Group -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
    gvalueGet_ :: Ptr GValue -> IO (Maybe Group)
gvalueGet_ Ptr GValue
gv = do
        Ptr Group
ptr <- Ptr GValue -> IO (Ptr Group)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr Group)
        if Ptr Group
ptr Ptr Group -> Ptr Group -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr Group
forall a. Ptr a
FP.nullPtr
        then Group -> Maybe Group
forall a. a -> Maybe a
P.Just (Group -> Maybe Group) -> IO Group -> IO (Maybe Group)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr Group -> Group) -> Ptr Group -> IO Group
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr Group -> Group
Group Ptr Group
ptr
        else Maybe Group -> IO (Maybe Group)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Group
forall a. Maybe a
P.Nothing
        
    

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

instance (info ~ ResolveGroupMethod t Group, O.OverloadedMethod info Group p) => OL.IsLabel t (Group -> 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 ~ ResolveGroupMethod t Group, O.OverloadedMethod info Group p, R.HasField t Group p) => R.HasField t Group p where
    getField = O.overloadedMethod @info

#endif

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

#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Group
type instance O.AttributeList Group = GroupAttributeList
type GroupAttributeList = ('[ '("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), '("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)
#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList Group = GroupSignalList
type GroupSignalList = ('[ '("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 Group::new
-- method type : Constructor
-- Args: []
-- Lengths: []
-- returnType: Just (TInterface Name { namespace = "Clutter" , name = "Group" })
-- throws : False
-- Skip return : False

foreign import ccall "clutter_group_new" clutter_group_new :: 
    IO (Ptr Group)

{-# DEPRECATED groupNew ["(Since version 1.10)","Use 'GI.Clutter.Objects.Actor.actorNew' instead."] #-}
-- | Create a new  t'GI.Clutter.Objects.Group.Group'.
groupNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m Group
    -- ^ __Returns:__ the newly created t'GI.Clutter.Objects.Group.Group' actor
groupNew :: forall (m :: * -> *). (HasCallStack, MonadIO m) => m Group
groupNew  = IO Group -> m Group
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Group -> m Group) -> IO Group -> m Group
forall a b. (a -> b) -> a -> b
$ do
    Ptr Group
result <- IO (Ptr Group)
clutter_group_new
    Text -> Ptr Group -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"groupNew" Ptr Group
result
    Group
result' <- ((ManagedPtr Group -> Group) -> Ptr Group -> IO Group
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Group -> Group
Group) Ptr Group
result
    Group -> IO Group
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Group
result'

#if defined(ENABLE_OVERLOADING)
#endif

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

foreign import ccall "clutter_group_get_n_children" clutter_group_get_n_children :: 
    Ptr Group ->                            -- self : TInterface (Name {namespace = "Clutter", name = "Group"})
    IO Int32

{-# DEPRECATED groupGetNChildren ["(Since version 1.10)","Use 'GI.Clutter.Objects.Actor.actorGetNChildren' instead."] #-}
-- | Gets the number of actors held in the group.
-- 
-- /Since: 0.2/
groupGetNChildren ::
    (B.CallStack.HasCallStack, MonadIO m, IsGroup a) =>
    a
    -- ^ /@self@/: A t'GI.Clutter.Objects.Group.Group'
    -> m Int32
    -- ^ __Returns:__ The number of child actors held in the group.
groupGetNChildren :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsGroup a) =>
a -> m Int32
groupGetNChildren a
self = IO Int32 -> m Int32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
    Ptr Group
self' <- a -> IO (Ptr Group)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Int32
result <- Ptr Group -> IO Int32
clutter_group_get_n_children Ptr Group
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Int32 -> IO Int32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result

#if defined(ENABLE_OVERLOADING)
data GroupGetNChildrenMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsGroup a) => O.OverloadedMethod GroupGetNChildrenMethodInfo a signature where
    overloadedMethod = groupGetNChildren

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


#endif

-- method Group::get_nth_child
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "Group" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #ClutterGroup" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "index_"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the position of the requested actor."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TInterface Name { namespace = "Clutter" , name = "Actor" })
-- throws : False
-- Skip return : False

foreign import ccall "clutter_group_get_nth_child" clutter_group_get_nth_child :: 
    Ptr Group ->                            -- self : TInterface (Name {namespace = "Clutter", name = "Group"})
    Int32 ->                                -- index_ : TBasicType TInt
    IO (Ptr Clutter.Actor.Actor)

{-# DEPRECATED groupGetNthChild ["(Since version 1.10)","Use 'GI.Clutter.Objects.Actor.actorGetChildAtIndex' instead."] #-}
-- | Gets a groups child held at /@index_@/ in stack.
-- 
-- /Since: 0.2/
groupGetNthChild ::
    (B.CallStack.HasCallStack, MonadIO m, IsGroup a) =>
    a
    -- ^ /@self@/: A t'GI.Clutter.Objects.Group.Group'
    -> Int32
    -- ^ /@index_@/: the position of the requested actor.
    -> m Clutter.Actor.Actor
    -- ^ __Returns:__ A Clutter actor, or 'P.Nothing' if
    --   /@index_@/ is invalid.
groupGetNthChild :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsGroup a) =>
a -> Int32 -> m Actor
groupGetNthChild a
self Int32
index_ = IO Actor -> m Actor
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Actor -> m Actor) -> IO Actor -> m Actor
forall a b. (a -> b) -> a -> b
$ do
    Ptr Group
self' <- a -> IO (Ptr Group)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Actor
result <- Ptr Group -> Int32 -> IO (Ptr Actor)
clutter_group_get_nth_child Ptr Group
self' Int32
index_
    Text -> Ptr Actor -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"groupGetNthChild" Ptr Actor
result
    Actor
result' <- ((ManagedPtr Actor -> Actor) -> Ptr Actor -> IO Actor
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Actor -> Actor
Clutter.Actor.Actor) Ptr Actor
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    Actor -> IO Actor
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Actor
result'

#if defined(ENABLE_OVERLOADING)
data GroupGetNthChildMethodInfo
instance (signature ~ (Int32 -> m Clutter.Actor.Actor), MonadIO m, IsGroup a) => O.OverloadedMethod GroupGetNthChildMethodInfo a signature where
    overloadedMethod = groupGetNthChild

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


#endif

-- method Group::remove_all
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "self"
--           , argType =
--               TInterface Name { namespace = "Clutter" , name = "Group" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "A #ClutterGroup" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "clutter_group_remove_all" clutter_group_remove_all :: 
    Ptr Group ->                            -- self : TInterface (Name {namespace = "Clutter", name = "Group"})
    IO ()

{-# DEPRECATED groupRemoveAll ["(Since version 1.10)","Use 'GI.Clutter.Objects.Actor.actorRemoveAllChildren' instead."] #-}
-- | Removes all children actors from the t'GI.Clutter.Objects.Group.Group'.
groupRemoveAll ::
    (B.CallStack.HasCallStack, MonadIO m, IsGroup a) =>
    a
    -- ^ /@self@/: A t'GI.Clutter.Objects.Group.Group'
    -> m ()
groupRemoveAll :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsGroup a) =>
a -> m ()
groupRemoveAll a
self = 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 Group
self' <- a -> IO (Ptr Group)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
self
    Ptr Group -> IO ()
clutter_group_remove_all Ptr Group
self'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
self
    () -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data GroupRemoveAllMethodInfo
instance (signature ~ (m ()), MonadIO m, IsGroup a) => O.OverloadedMethod GroupRemoveAllMethodInfo a signature where
    overloadedMethod = groupRemoveAll

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


#endif