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

The 'GI.Wnck.Objects.Pager.Pager' struct contains only private fields and should not be
directly accessed.
-}

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

module GI.Wnck.Objects.Pager
    (

-- * Exported types
    Pager(..)                               ,
    IsPager                                 ,
    toPager                                 ,
    noPager                                 ,


 -- * Methods
-- ** getWrapOnScroll #method:getWrapOnScroll#

#if ENABLE_OVERLOADING
    PagerGetWrapOnScrollMethodInfo          ,
#endif
    pagerGetWrapOnScroll                    ,


-- ** new #method:new#

    pagerNew                                ,


-- ** setDisplayMode #method:setDisplayMode#

#if ENABLE_OVERLOADING
    PagerSetDisplayModeMethodInfo           ,
#endif
    pagerSetDisplayMode                     ,


-- ** setNRows #method:setNRows#

#if ENABLE_OVERLOADING
    PagerSetNRowsMethodInfo                 ,
#endif
    pagerSetNRows                           ,


-- ** setOrientation #method:setOrientation#

#if ENABLE_OVERLOADING
    PagerSetOrientationMethodInfo           ,
#endif
    pagerSetOrientation                     ,


-- ** setShadowType #method:setShadowType#

#if ENABLE_OVERLOADING
    PagerSetShadowTypeMethodInfo            ,
#endif
    pagerSetShadowType                      ,


-- ** setShowAll #method:setShowAll#

#if ENABLE_OVERLOADING
    PagerSetShowAllMethodInfo               ,
#endif
    pagerSetShowAll                         ,


-- ** setWrapOnScroll #method:setWrapOnScroll#

#if ENABLE_OVERLOADING
    PagerSetWrapOnScrollMethodInfo          ,
#endif
    pagerSetWrapOnScroll                    ,




    ) where

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

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

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

-- | Memory-managed wrapper type.
newtype Pager = Pager (ManagedPtr Pager)
foreign import ccall "wnck_pager_get_type"
    c_wnck_pager_get_type :: IO GType

instance GObject Pager where
    gobjectType = c_wnck_pager_get_type


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

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

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

-- | A convenience alias for `Nothing` :: `Maybe` `Pager`.
noPager :: Maybe Pager
noPager = Nothing

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

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

#endif

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

#if ENABLE_OVERLOADING
#endif

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

#endif

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

foreign import ccall "wnck_pager_new" wnck_pager_new ::
    IO (Ptr Pager)

{- |
Creates a new 'GI.Wnck.Objects.Pager.Pager'. The 'GI.Wnck.Objects.Pager.Pager' will show the 'GI.Wnck.Objects.Workspace.Workspace' of the
'GI.Wnck.Objects.Screen.Screen' it is on.
-}
pagerNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m Pager
    {- ^ __Returns:__ a newly created 'GI.Wnck.Objects.Pager.Pager'. -}
pagerNew  = liftIO $ do
    result <- wnck_pager_new
    checkUnexpectedReturnNULL "pagerNew" result
    result' <- (newObject Pager) result
    return result'

#if ENABLE_OVERLOADING
#endif

-- method Pager::get_wrap_on_scroll
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "pager", argType = TInterface (Name {namespace = "Wnck", name = "Pager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WnckPager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "wnck_pager_get_wrap_on_scroll" wnck_pager_get_wrap_on_scroll ::
    Ptr Pager ->                            -- pager : TInterface (Name {namespace = "Wnck", name = "Pager"})
    IO CInt

{- |
/No description available in the introspection data./

/Since: 3.24.0/
-}
pagerGetWrapOnScroll ::
    (B.CallStack.HasCallStack, MonadIO m, IsPager a) =>
    a
    {- ^ /@pager@/: a 'GI.Wnck.Objects.Pager.Pager'. -}
    -> m Bool
    {- ^ __Returns:__ 'True' if the /@pager@/ wraps workspaces on a scroll event that
hits a border, 'False' otherwise. -}
pagerGetWrapOnScroll pager = liftIO $ do
    pager' <- unsafeManagedPtrCastPtr pager
    result <- wnck_pager_get_wrap_on_scroll pager'
    let result' = (/= 0) result
    touchManagedPtr pager
    return result'

#if ENABLE_OVERLOADING
data PagerGetWrapOnScrollMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsPager a) => O.MethodInfo PagerGetWrapOnScrollMethodInfo a signature where
    overloadedMethod _ = pagerGetWrapOnScroll

#endif

-- method Pager::set_display_mode
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "pager", argType = TInterface (Name {namespace = "Wnck", name = "Pager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WnckPager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mode", argType = TInterface (Name {namespace = "Wnck", name = "PagerDisplayMode"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a display mode.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "wnck_pager_set_display_mode" wnck_pager_set_display_mode ::
    Ptr Pager ->                            -- pager : TInterface (Name {namespace = "Wnck", name = "Pager"})
    CUInt ->                                -- mode : TInterface (Name {namespace = "Wnck", name = "PagerDisplayMode"})
    IO ()

{- |
Sets the display mode for /@pager@/ to /@mode@/.
-}
pagerSetDisplayMode ::
    (B.CallStack.HasCallStack, MonadIO m, IsPager a) =>
    a
    {- ^ /@pager@/: a 'GI.Wnck.Objects.Pager.Pager'. -}
    -> Wnck.Enums.PagerDisplayMode
    {- ^ /@mode@/: a display mode. -}
    -> m ()
pagerSetDisplayMode pager mode = liftIO $ do
    pager' <- unsafeManagedPtrCastPtr pager
    let mode' = (fromIntegral . fromEnum) mode
    wnck_pager_set_display_mode pager' mode'
    touchManagedPtr pager
    return ()

#if ENABLE_OVERLOADING
data PagerSetDisplayModeMethodInfo
instance (signature ~ (Wnck.Enums.PagerDisplayMode -> m ()), MonadIO m, IsPager a) => O.MethodInfo PagerSetDisplayModeMethodInfo a signature where
    overloadedMethod _ = pagerSetDisplayMode

#endif

-- method Pager::set_n_rows
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "pager", argType = TInterface (Name {namespace = "Wnck", name = "Pager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WnckPager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_rows", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the number of rows to use for the layout of #WnckWorkspace on the\n#WnckScreen @pager is watching.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "wnck_pager_set_n_rows" wnck_pager_set_n_rows ::
    Ptr Pager ->                            -- pager : TInterface (Name {namespace = "Wnck", name = "Pager"})
    Int32 ->                                -- n_rows : TBasicType TInt
    IO CInt

{- |
Tries to change the number of rows in the layout of 'GI.Wnck.Objects.Workspace.Workspace' on the
'GI.Wnck.Objects.Screen.Screen' /@pager@/ is watching. Since no more than one application should
set this property of a 'GI.Wnck.Objects.Screen.Screen' at a time, setting the layout is not
guaranteed to work.

If /@pager@/ has not been added to a widget hierarchy, the call will fail
because /@pager@/ can\'t know the screen on which to modify the layout.
-}
pagerSetNRows ::
    (B.CallStack.HasCallStack, MonadIO m, IsPager a) =>
    a
    {- ^ /@pager@/: a 'GI.Wnck.Objects.Pager.Pager'. -}
    -> Int32
    {- ^ /@nRows@/: the number of rows to use for the layout of 'GI.Wnck.Objects.Workspace.Workspace' on the
'GI.Wnck.Objects.Screen.Screen' /@pager@/ is watching. -}
    -> m Bool
    {- ^ __Returns:__ 'True' if the layout of 'GI.Wnck.Objects.Workspace.Workspace' has been successfully
changed or did not need to be changed, 'False' otherwise. -}
pagerSetNRows pager nRows = liftIO $ do
    pager' <- unsafeManagedPtrCastPtr pager
    result <- wnck_pager_set_n_rows pager' nRows
    let result' = (/= 0) result
    touchManagedPtr pager
    return result'

#if ENABLE_OVERLOADING
data PagerSetNRowsMethodInfo
instance (signature ~ (Int32 -> m Bool), MonadIO m, IsPager a) => O.MethodInfo PagerSetNRowsMethodInfo a signature where
    overloadedMethod _ = pagerSetNRows

#endif

-- method Pager::set_orientation
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "pager", argType = TInterface (Name {namespace = "Wnck", name = "Pager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WnckPager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "orientation", argType = TInterface (Name {namespace = "Gtk", name = "Orientation"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "orientation to use for the layout of #WnckWorkspace on the\n#WnckScreen @pager is watching.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False

foreign import ccall "wnck_pager_set_orientation" wnck_pager_set_orientation ::
    Ptr Pager ->                            -- pager : TInterface (Name {namespace = "Wnck", name = "Pager"})
    CUInt ->                                -- orientation : TInterface (Name {namespace = "Gtk", name = "Orientation"})
    IO CInt

{- |
Tries to change the orientation of the layout of 'GI.Wnck.Objects.Workspace.Workspace' on the
'GI.Wnck.Objects.Screen.Screen' /@pager@/ is watching. Since no more than one application should
set this property of a 'GI.Wnck.Objects.Screen.Screen' at a time, setting the layout is not
guaranteed to work.

If /@orientation@/ is 'GI.Gtk.Enums.OrientationHorizontal', the 'GI.Wnck.Objects.Workspace.Workspace' will be
laid out in rows, with the first 'GI.Wnck.Objects.Workspace.Workspace' in the top left corner.

If /@orientation@/ is 'GI.Gtk.Enums.OrientationVertical', the 'GI.Wnck.Objects.Workspace.Workspace' will be
laid out in columns, with the first 'GI.Wnck.Objects.Workspace.Workspace' in the top left corner.

For example, if the layout contains one row, but the orientation of the
layout is vertical, the 'GI.Wnck.Objects.Pager.Pager' will display a column of 'GI.Wnck.Objects.Workspace.Workspace'.

Note that setting the orientation will have an effect on the geometry
management: if /@orientation@/ is 'GI.Gtk.Enums.OrientationHorizontal',
'GI.Gtk.Enums.SizeRequestModeWidthForHeight' will be used as request mode; if
/@orientation@/ is 'GI.Gtk.Enums.OrientationVertical', GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH
will be used instead.

If /@pager@/ has not been added to a widget hierarchy, the call will fail
because /@pager@/ can\'t know the screen on which to modify the orientation.
-}
pagerSetOrientation ::
    (B.CallStack.HasCallStack, MonadIO m, IsPager a) =>
    a
    {- ^ /@pager@/: a 'GI.Wnck.Objects.Pager.Pager'. -}
    -> Gtk.Enums.Orientation
    {- ^ /@orientation@/: orientation to use for the layout of 'GI.Wnck.Objects.Workspace.Workspace' on the
'GI.Wnck.Objects.Screen.Screen' /@pager@/ is watching. -}
    -> m Bool
    {- ^ __Returns:__ 'True' if the layout of 'GI.Wnck.Objects.Workspace.Workspace' has been successfully
changed or did not need to be changed, 'False' otherwise. -}
pagerSetOrientation pager orientation = liftIO $ do
    pager' <- unsafeManagedPtrCastPtr pager
    let orientation' = (fromIntegral . fromEnum) orientation
    result <- wnck_pager_set_orientation pager' orientation'
    let result' = (/= 0) result
    touchManagedPtr pager
    return result'

#if ENABLE_OVERLOADING
data PagerSetOrientationMethodInfo
instance (signature ~ (Gtk.Enums.Orientation -> m Bool), MonadIO m, IsPager a) => O.MethodInfo PagerSetOrientationMethodInfo a signature where
    overloadedMethod _ = pagerSetOrientation

#endif

-- method Pager::set_shadow_type
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "pager", argType = TInterface (Name {namespace = "Wnck", name = "Pager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WnckPager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "shadow_type", argType = TInterface (Name {namespace = "Gtk", name = "ShadowType"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a shadow type.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "wnck_pager_set_shadow_type" wnck_pager_set_shadow_type ::
    Ptr Pager ->                            -- pager : TInterface (Name {namespace = "Wnck", name = "Pager"})
    CUInt ->                                -- shadow_type : TInterface (Name {namespace = "Gtk", name = "ShadowType"})
    IO ()

{- |
Sets the shadow type for /@pager@/ to /@shadowType@/. The main use of this
function is proper integration of 'GI.Wnck.Objects.Pager.Pager' in panels with non-system
backgrounds.

/Since: 2.2/
-}
pagerSetShadowType ::
    (B.CallStack.HasCallStack, MonadIO m, IsPager a) =>
    a
    {- ^ /@pager@/: a 'GI.Wnck.Objects.Pager.Pager'. -}
    -> Gtk.Enums.ShadowType
    {- ^ /@shadowType@/: a shadow type. -}
    -> m ()
pagerSetShadowType pager shadowType = liftIO $ do
    pager' <- unsafeManagedPtrCastPtr pager
    let shadowType' = (fromIntegral . fromEnum) shadowType
    wnck_pager_set_shadow_type pager' shadowType'
    touchManagedPtr pager
    return ()

#if ENABLE_OVERLOADING
data PagerSetShadowTypeMethodInfo
instance (signature ~ (Gtk.Enums.ShadowType -> m ()), MonadIO m, IsPager a) => O.MethodInfo PagerSetShadowTypeMethodInfo a signature where
    overloadedMethod _ = pagerSetShadowType

#endif

-- method Pager::set_show_all
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "pager", argType = TInterface (Name {namespace = "Wnck", name = "Pager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WnckPager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "show_all_workspaces", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether to display all #WnckWorkspace in @pager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "wnck_pager_set_show_all" wnck_pager_set_show_all ::
    Ptr Pager ->                            -- pager : TInterface (Name {namespace = "Wnck", name = "Pager"})
    CInt ->                                 -- show_all_workspaces : TBasicType TBoolean
    IO ()

{- |
Sets /@pager@/ to display all 'GI.Wnck.Objects.Workspace.Workspace' or not, according to
/@showAllWorkspaces@/.
-}
pagerSetShowAll ::
    (B.CallStack.HasCallStack, MonadIO m, IsPager a) =>
    a
    {- ^ /@pager@/: a 'GI.Wnck.Objects.Pager.Pager'. -}
    -> Bool
    {- ^ /@showAllWorkspaces@/: whether to display all 'GI.Wnck.Objects.Workspace.Workspace' in /@pager@/. -}
    -> m ()
pagerSetShowAll pager showAllWorkspaces = liftIO $ do
    pager' <- unsafeManagedPtrCastPtr pager
    let showAllWorkspaces' = (fromIntegral . fromEnum) showAllWorkspaces
    wnck_pager_set_show_all pager' showAllWorkspaces'
    touchManagedPtr pager
    return ()

#if ENABLE_OVERLOADING
data PagerSetShowAllMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsPager a) => O.MethodInfo PagerSetShowAllMethodInfo a signature where
    overloadedMethod _ = pagerSetShowAll

#endif

-- method Pager::set_wrap_on_scroll
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "pager", argType = TInterface (Name {namespace = "Wnck", name = "Pager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WnckPager.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "wrap_on_scroll", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a boolean.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "wnck_pager_set_wrap_on_scroll" wnck_pager_set_wrap_on_scroll ::
    Ptr Pager ->                            -- pager : TInterface (Name {namespace = "Wnck", name = "Pager"})
    CInt ->                                 -- wrap_on_scroll : TBasicType TBoolean
    IO ()

{- |
Sets the wrapping behavior of the /@pager@/. Setting it to 'True' will
wrap arround to the start when scrolling over the end and vice
versa. By default it is set to 'False'.

/Since: 3.24.0/
-}
pagerSetWrapOnScroll ::
    (B.CallStack.HasCallStack, MonadIO m, IsPager a) =>
    a
    {- ^ /@pager@/: a 'GI.Wnck.Objects.Pager.Pager'. -}
    -> Bool
    {- ^ /@wrapOnScroll@/: a boolean. -}
    -> m ()
pagerSetWrapOnScroll pager wrapOnScroll = liftIO $ do
    pager' <- unsafeManagedPtrCastPtr pager
    let wrapOnScroll' = (fromIntegral . fromEnum) wrapOnScroll
    wnck_pager_set_wrap_on_scroll pager' wrapOnScroll'
    touchManagedPtr pager
    return ()

#if ENABLE_OVERLOADING
data PagerSetWrapOnScrollMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsPager a) => O.MethodInfo PagerSetWrapOnScrollMethodInfo a signature where
    overloadedMethod _ = pagerSetWrapOnScroll

#endif