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

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

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

module GI.GtkSource.Objects.GutterRendererPixbuf
    (

-- * Exported types
    GutterRendererPixbuf(..)                ,
    IsGutterRendererPixbuf                  ,
    toGutterRendererPixbuf                  ,
    noGutterRendererPixbuf                  ,


 -- * Methods
-- ** getGicon #method:getGicon#

#if ENABLE_OVERLOADING
    GutterRendererPixbufGetGiconMethodInfo  ,
#endif
    gutterRendererPixbufGetGicon            ,


-- ** getIconName #method:getIconName#

#if ENABLE_OVERLOADING
    GutterRendererPixbufGetIconNameMethodInfo,
#endif
    gutterRendererPixbufGetIconName         ,


-- ** getPixbuf #method:getPixbuf#

#if ENABLE_OVERLOADING
    GutterRendererPixbufGetPixbufMethodInfo ,
#endif
    gutterRendererPixbufGetPixbuf           ,


-- ** getStockId #method:getStockId#

#if ENABLE_OVERLOADING
    GutterRendererPixbufGetStockIdMethodInfo,
#endif
    gutterRendererPixbufGetStockId          ,


-- ** new #method:new#

    gutterRendererPixbufNew                 ,


-- ** setGicon #method:setGicon#

#if ENABLE_OVERLOADING
    GutterRendererPixbufSetGiconMethodInfo  ,
#endif
    gutterRendererPixbufSetGicon            ,


-- ** setIconName #method:setIconName#

#if ENABLE_OVERLOADING
    GutterRendererPixbufSetIconNameMethodInfo,
#endif
    gutterRendererPixbufSetIconName         ,


-- ** setPixbuf #method:setPixbuf#

#if ENABLE_OVERLOADING
    GutterRendererPixbufSetPixbufMethodInfo ,
#endif
    gutterRendererPixbufSetPixbuf           ,


-- ** setStockId #method:setStockId#

#if ENABLE_OVERLOADING
    GutterRendererPixbufSetStockIdMethodInfo,
#endif
    gutterRendererPixbufSetStockId          ,




 -- * Properties
-- ** gicon #attr:gicon#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    GutterRendererPixbufGiconPropertyInfo   ,
#endif
    clearGutterRendererPixbufGicon          ,
    constructGutterRendererPixbufGicon      ,
    getGutterRendererPixbufGicon            ,
#if ENABLE_OVERLOADING
    gutterRendererPixbufGicon               ,
#endif
    setGutterRendererPixbufGicon            ,


-- ** iconName #attr:iconName#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    GutterRendererPixbufIconNamePropertyInfo,
#endif
    clearGutterRendererPixbufIconName       ,
    constructGutterRendererPixbufIconName   ,
    getGutterRendererPixbufIconName         ,
#if ENABLE_OVERLOADING
    gutterRendererPixbufIconName            ,
#endif
    setGutterRendererPixbufIconName         ,


-- ** pixbuf #attr:pixbuf#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    GutterRendererPixbufPixbufPropertyInfo  ,
#endif
    clearGutterRendererPixbufPixbuf         ,
    constructGutterRendererPixbufPixbuf     ,
    getGutterRendererPixbufPixbuf           ,
#if ENABLE_OVERLOADING
    gutterRendererPixbufPixbuf              ,
#endif
    setGutterRendererPixbufPixbuf           ,


-- ** stockId #attr:stockId#
{- | The stock id.
-}
#if ENABLE_OVERLOADING
    GutterRendererPixbufStockIdPropertyInfo ,
#endif
    clearGutterRendererPixbufStockId        ,
    constructGutterRendererPixbufStockId    ,
    getGutterRendererPixbufStockId          ,
#if ENABLE_OVERLOADING
    gutterRendererPixbufStockId             ,
#endif
    setGutterRendererPixbufStockId          ,




    ) 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.GObject.Objects.Object as GObject.Object
import qualified GI.GdkPixbuf.Objects.Pixbuf as GdkPixbuf.Pixbuf
import qualified GI.Gio.Interfaces.Icon as Gio.Icon
import {-# SOURCE #-} qualified GI.GtkSource.Objects.GutterRenderer as GtkSource.GutterRenderer

-- | Memory-managed wrapper type.
newtype GutterRendererPixbuf = GutterRendererPixbuf (ManagedPtr GutterRendererPixbuf)
foreign import ccall "gtk_source_gutter_renderer_pixbuf_get_type"
    c_gtk_source_gutter_renderer_pixbuf_get_type :: IO GType

instance GObject GutterRendererPixbuf where
    gobjectType = c_gtk_source_gutter_renderer_pixbuf_get_type


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

instance O.HasParentTypes GutterRendererPixbuf
type instance O.ParentTypes GutterRendererPixbuf = '[GtkSource.GutterRenderer.GutterRenderer, GObject.Object.Object]

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

-- | A convenience alias for `Nothing` :: `Maybe` `GutterRendererPixbuf`.
noGutterRendererPixbuf :: Maybe GutterRendererPixbuf
noGutterRendererPixbuf = Nothing

#if ENABLE_OVERLOADING
type family ResolveGutterRendererPixbufMethod (t :: Symbol) (o :: *) :: * where
    ResolveGutterRendererPixbufMethod "activate" o = GtkSource.GutterRenderer.GutterRendererActivateMethodInfo
    ResolveGutterRendererPixbufMethod "begin" o = GtkSource.GutterRenderer.GutterRendererBeginMethodInfo
    ResolveGutterRendererPixbufMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveGutterRendererPixbufMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveGutterRendererPixbufMethod "draw" o = GtkSource.GutterRenderer.GutterRendererDrawMethodInfo
    ResolveGutterRendererPixbufMethod "end" o = GtkSource.GutterRenderer.GutterRendererEndMethodInfo
    ResolveGutterRendererPixbufMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveGutterRendererPixbufMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveGutterRendererPixbufMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveGutterRendererPixbufMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveGutterRendererPixbufMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveGutterRendererPixbufMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveGutterRendererPixbufMethod "queryActivatable" o = GtkSource.GutterRenderer.GutterRendererQueryActivatableMethodInfo
    ResolveGutterRendererPixbufMethod "queryData" o = GtkSource.GutterRenderer.GutterRendererQueryDataMethodInfo
    ResolveGutterRendererPixbufMethod "queryTooltip" o = GtkSource.GutterRenderer.GutterRendererQueryTooltipMethodInfo
    ResolveGutterRendererPixbufMethod "queueDraw" o = GtkSource.GutterRenderer.GutterRendererQueueDrawMethodInfo
    ResolveGutterRendererPixbufMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveGutterRendererPixbufMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveGutterRendererPixbufMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveGutterRendererPixbufMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveGutterRendererPixbufMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveGutterRendererPixbufMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveGutterRendererPixbufMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveGutterRendererPixbufMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveGutterRendererPixbufMethod "getAlignment" o = GtkSource.GutterRenderer.GutterRendererGetAlignmentMethodInfo
    ResolveGutterRendererPixbufMethod "getAlignmentMode" o = GtkSource.GutterRenderer.GutterRendererGetAlignmentModeMethodInfo
    ResolveGutterRendererPixbufMethod "getBackground" o = GtkSource.GutterRenderer.GutterRendererGetBackgroundMethodInfo
    ResolveGutterRendererPixbufMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveGutterRendererPixbufMethod "getGicon" o = GutterRendererPixbufGetGiconMethodInfo
    ResolveGutterRendererPixbufMethod "getIconName" o = GutterRendererPixbufGetIconNameMethodInfo
    ResolveGutterRendererPixbufMethod "getPadding" o = GtkSource.GutterRenderer.GutterRendererGetPaddingMethodInfo
    ResolveGutterRendererPixbufMethod "getPixbuf" o = GutterRendererPixbufGetPixbufMethodInfo
    ResolveGutterRendererPixbufMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveGutterRendererPixbufMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveGutterRendererPixbufMethod "getSize" o = GtkSource.GutterRenderer.GutterRendererGetSizeMethodInfo
    ResolveGutterRendererPixbufMethod "getStockId" o = GutterRendererPixbufGetStockIdMethodInfo
    ResolveGutterRendererPixbufMethod "getView" o = GtkSource.GutterRenderer.GutterRendererGetViewMethodInfo
    ResolveGutterRendererPixbufMethod "getVisible" o = GtkSource.GutterRenderer.GutterRendererGetVisibleMethodInfo
    ResolveGutterRendererPixbufMethod "getWindowType" o = GtkSource.GutterRenderer.GutterRendererGetWindowTypeMethodInfo
    ResolveGutterRendererPixbufMethod "setAlignment" o = GtkSource.GutterRenderer.GutterRendererSetAlignmentMethodInfo
    ResolveGutterRendererPixbufMethod "setAlignmentMode" o = GtkSource.GutterRenderer.GutterRendererSetAlignmentModeMethodInfo
    ResolveGutterRendererPixbufMethod "setBackground" o = GtkSource.GutterRenderer.GutterRendererSetBackgroundMethodInfo
    ResolveGutterRendererPixbufMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveGutterRendererPixbufMethod "setGicon" o = GutterRendererPixbufSetGiconMethodInfo
    ResolveGutterRendererPixbufMethod "setIconName" o = GutterRendererPixbufSetIconNameMethodInfo
    ResolveGutterRendererPixbufMethod "setPadding" o = GtkSource.GutterRenderer.GutterRendererSetPaddingMethodInfo
    ResolveGutterRendererPixbufMethod "setPixbuf" o = GutterRendererPixbufSetPixbufMethodInfo
    ResolveGutterRendererPixbufMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveGutterRendererPixbufMethod "setSize" o = GtkSource.GutterRenderer.GutterRendererSetSizeMethodInfo
    ResolveGutterRendererPixbufMethod "setStockId" o = GutterRendererPixbufSetStockIdMethodInfo
    ResolveGutterRendererPixbufMethod "setVisible" o = GtkSource.GutterRenderer.GutterRendererSetVisibleMethodInfo
    ResolveGutterRendererPixbufMethod l o = O.MethodResolutionFailed l o

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

#endif

-- VVV Prop "gicon"
   -- Type: TInterface (Name {namespace = "Gio", name = "Icon"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just True)

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

@
'Data.GI.Base.Attributes.get' gutterRendererPixbuf #gicon
@
-}
getGutterRendererPixbufGicon :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m Gio.Icon.Icon
getGutterRendererPixbufGicon obj = liftIO $ checkUnexpectedNothing "getGutterRendererPixbufGicon" $ B.Properties.getObjectPropertyObject obj "gicon" Gio.Icon.Icon

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

@
'Data.GI.Base.Attributes.set' gutterRendererPixbuf [ #gicon 'Data.GI.Base.Attributes.:=' value ]
@
-}
setGutterRendererPixbufGicon :: (MonadIO m, IsGutterRendererPixbuf o, Gio.Icon.IsIcon a) => o -> a -> m ()
setGutterRendererPixbufGicon obj val = liftIO $ B.Properties.setObjectPropertyObject obj "gicon" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gicon@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructGutterRendererPixbufGicon :: (IsGutterRendererPixbuf o, Gio.Icon.IsIcon a) => a -> IO (GValueConstruct o)
constructGutterRendererPixbufGicon val = B.Properties.constructObjectPropertyObject "gicon" (Just val)

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

@
'Data.GI.Base.Attributes.clear' #gicon
@
-}
clearGutterRendererPixbufGicon :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m ()
clearGutterRendererPixbufGicon obj = liftIO $ B.Properties.setObjectPropertyObject obj "gicon" (Nothing :: Maybe Gio.Icon.Icon)

#if ENABLE_OVERLOADING
data GutterRendererPixbufGiconPropertyInfo
instance AttrInfo GutterRendererPixbufGiconPropertyInfo where
    type AttrAllowedOps GutterRendererPixbufGiconPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint GutterRendererPixbufGiconPropertyInfo = Gio.Icon.IsIcon
    type AttrBaseTypeConstraint GutterRendererPixbufGiconPropertyInfo = IsGutterRendererPixbuf
    type AttrGetType GutterRendererPixbufGiconPropertyInfo = Gio.Icon.Icon
    type AttrLabel GutterRendererPixbufGiconPropertyInfo = "gicon"
    type AttrOrigin GutterRendererPixbufGiconPropertyInfo = GutterRendererPixbuf
    attrGet _ = getGutterRendererPixbufGicon
    attrSet _ = setGutterRendererPixbufGicon
    attrConstruct _ = constructGutterRendererPixbufGicon
    attrClear _ = clearGutterRendererPixbufGicon
#endif

-- VVV Prop "icon-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just True)

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

@
'Data.GI.Base.Attributes.get' gutterRendererPixbuf #iconName
@
-}
getGutterRendererPixbufIconName :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m T.Text
getGutterRendererPixbufIconName obj = liftIO $ checkUnexpectedNothing "getGutterRendererPixbufIconName" $ B.Properties.getObjectPropertyString obj "icon-name"

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

@
'Data.GI.Base.Attributes.set' gutterRendererPixbuf [ #iconName 'Data.GI.Base.Attributes.:=' value ]
@
-}
setGutterRendererPixbufIconName :: (MonadIO m, IsGutterRendererPixbuf o) => o -> T.Text -> m ()
setGutterRendererPixbufIconName obj val = liftIO $ B.Properties.setObjectPropertyString obj "icon-name" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@icon-name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructGutterRendererPixbufIconName :: (IsGutterRendererPixbuf o) => T.Text -> IO (GValueConstruct o)
constructGutterRendererPixbufIconName val = B.Properties.constructObjectPropertyString "icon-name" (Just val)

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

@
'Data.GI.Base.Attributes.clear' #iconName
@
-}
clearGutterRendererPixbufIconName :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m ()
clearGutterRendererPixbufIconName obj = liftIO $ B.Properties.setObjectPropertyString obj "icon-name" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data GutterRendererPixbufIconNamePropertyInfo
instance AttrInfo GutterRendererPixbufIconNamePropertyInfo where
    type AttrAllowedOps GutterRendererPixbufIconNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint GutterRendererPixbufIconNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint GutterRendererPixbufIconNamePropertyInfo = IsGutterRendererPixbuf
    type AttrGetType GutterRendererPixbufIconNamePropertyInfo = T.Text
    type AttrLabel GutterRendererPixbufIconNamePropertyInfo = "icon-name"
    type AttrOrigin GutterRendererPixbufIconNamePropertyInfo = GutterRendererPixbuf
    attrGet _ = getGutterRendererPixbufIconName
    attrSet _ = setGutterRendererPixbufIconName
    attrConstruct _ = constructGutterRendererPixbufIconName
    attrClear _ = clearGutterRendererPixbufIconName
#endif

-- VVV Prop "pixbuf"
   -- Type: TInterface (Name {namespace = "GdkPixbuf", name = "Pixbuf"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just True)

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

@
'Data.GI.Base.Attributes.get' gutterRendererPixbuf #pixbuf
@
-}
getGutterRendererPixbufPixbuf :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m GdkPixbuf.Pixbuf.Pixbuf
getGutterRendererPixbufPixbuf obj = liftIO $ checkUnexpectedNothing "getGutterRendererPixbufPixbuf" $ B.Properties.getObjectPropertyObject obj "pixbuf" GdkPixbuf.Pixbuf.Pixbuf

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

@
'Data.GI.Base.Attributes.set' gutterRendererPixbuf [ #pixbuf 'Data.GI.Base.Attributes.:=' value ]
@
-}
setGutterRendererPixbufPixbuf :: (MonadIO m, IsGutterRendererPixbuf o, GdkPixbuf.Pixbuf.IsPixbuf a) => o -> a -> m ()
setGutterRendererPixbufPixbuf obj val = liftIO $ B.Properties.setObjectPropertyObject obj "pixbuf" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@pixbuf@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructGutterRendererPixbufPixbuf :: (IsGutterRendererPixbuf o, GdkPixbuf.Pixbuf.IsPixbuf a) => a -> IO (GValueConstruct o)
constructGutterRendererPixbufPixbuf val = B.Properties.constructObjectPropertyObject "pixbuf" (Just val)

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

@
'Data.GI.Base.Attributes.clear' #pixbuf
@
-}
clearGutterRendererPixbufPixbuf :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m ()
clearGutterRendererPixbufPixbuf obj = liftIO $ B.Properties.setObjectPropertyObject obj "pixbuf" (Nothing :: Maybe GdkPixbuf.Pixbuf.Pixbuf)

#if ENABLE_OVERLOADING
data GutterRendererPixbufPixbufPropertyInfo
instance AttrInfo GutterRendererPixbufPixbufPropertyInfo where
    type AttrAllowedOps GutterRendererPixbufPixbufPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint GutterRendererPixbufPixbufPropertyInfo = GdkPixbuf.Pixbuf.IsPixbuf
    type AttrBaseTypeConstraint GutterRendererPixbufPixbufPropertyInfo = IsGutterRendererPixbuf
    type AttrGetType GutterRendererPixbufPixbufPropertyInfo = GdkPixbuf.Pixbuf.Pixbuf
    type AttrLabel GutterRendererPixbufPixbufPropertyInfo = "pixbuf"
    type AttrOrigin GutterRendererPixbufPixbufPropertyInfo = GutterRendererPixbuf
    attrGet _ = getGutterRendererPixbufPixbuf
    attrSet _ = setGutterRendererPixbufPixbuf
    attrConstruct _ = constructGutterRendererPixbufPixbuf
    attrClear _ = clearGutterRendererPixbufPixbuf
#endif

-- VVV Prop "stock-id"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just True)

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

@
'Data.GI.Base.Attributes.get' gutterRendererPixbuf #stockId
@
-}
getGutterRendererPixbufStockId :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m T.Text
getGutterRendererPixbufStockId obj = liftIO $ checkUnexpectedNothing "getGutterRendererPixbufStockId" $ B.Properties.getObjectPropertyString obj "stock-id"

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

@
'Data.GI.Base.Attributes.set' gutterRendererPixbuf [ #stockId 'Data.GI.Base.Attributes.:=' value ]
@
-}
setGutterRendererPixbufStockId :: (MonadIO m, IsGutterRendererPixbuf o) => o -> T.Text -> m ()
setGutterRendererPixbufStockId obj val = liftIO $ B.Properties.setObjectPropertyString obj "stock-id" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@stock-id@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructGutterRendererPixbufStockId :: (IsGutterRendererPixbuf o) => T.Text -> IO (GValueConstruct o)
constructGutterRendererPixbufStockId val = B.Properties.constructObjectPropertyString "stock-id" (Just val)

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

@
'Data.GI.Base.Attributes.clear' #stockId
@
-}
clearGutterRendererPixbufStockId :: (MonadIO m, IsGutterRendererPixbuf o) => o -> m ()
clearGutterRendererPixbufStockId obj = liftIO $ B.Properties.setObjectPropertyString obj "stock-id" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data GutterRendererPixbufStockIdPropertyInfo
instance AttrInfo GutterRendererPixbufStockIdPropertyInfo where
    type AttrAllowedOps GutterRendererPixbufStockIdPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint GutterRendererPixbufStockIdPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint GutterRendererPixbufStockIdPropertyInfo = IsGutterRendererPixbuf
    type AttrGetType GutterRendererPixbufStockIdPropertyInfo = T.Text
    type AttrLabel GutterRendererPixbufStockIdPropertyInfo = "stock-id"
    type AttrOrigin GutterRendererPixbufStockIdPropertyInfo = GutterRendererPixbuf
    attrGet _ = getGutterRendererPixbufStockId
    attrSet _ = setGutterRendererPixbufStockId
    attrConstruct _ = constructGutterRendererPixbufStockId
    attrClear _ = clearGutterRendererPixbufStockId
#endif

#if ENABLE_OVERLOADING
instance O.HasAttributeList GutterRendererPixbuf
type instance O.AttributeList GutterRendererPixbuf = GutterRendererPixbufAttributeList
type GutterRendererPixbufAttributeList = ('[ '("alignmentMode", GtkSource.GutterRenderer.GutterRendererAlignmentModePropertyInfo), '("backgroundRgba", GtkSource.GutterRenderer.GutterRendererBackgroundRgbaPropertyInfo), '("backgroundSet", GtkSource.GutterRenderer.GutterRendererBackgroundSetPropertyInfo), '("gicon", GutterRendererPixbufGiconPropertyInfo), '("iconName", GutterRendererPixbufIconNamePropertyInfo), '("pixbuf", GutterRendererPixbufPixbufPropertyInfo), '("size", GtkSource.GutterRenderer.GutterRendererSizePropertyInfo), '("stockId", GutterRendererPixbufStockIdPropertyInfo), '("view", GtkSource.GutterRenderer.GutterRendererViewPropertyInfo), '("visible", GtkSource.GutterRenderer.GutterRendererVisiblePropertyInfo), '("windowType", GtkSource.GutterRenderer.GutterRendererWindowTypePropertyInfo), '("xalign", GtkSource.GutterRenderer.GutterRendererXalignPropertyInfo), '("xpad", GtkSource.GutterRenderer.GutterRendererXpadPropertyInfo), '("yalign", GtkSource.GutterRenderer.GutterRendererYalignPropertyInfo), '("ypad", GtkSource.GutterRenderer.GutterRendererYpadPropertyInfo)] :: [(Symbol, *)])
#endif

#if ENABLE_OVERLOADING
gutterRendererPixbufGicon :: AttrLabelProxy "gicon"
gutterRendererPixbufGicon = AttrLabelProxy

gutterRendererPixbufIconName :: AttrLabelProxy "iconName"
gutterRendererPixbufIconName = AttrLabelProxy

gutterRendererPixbufPixbuf :: AttrLabelProxy "pixbuf"
gutterRendererPixbufPixbuf = AttrLabelProxy

gutterRendererPixbufStockId :: AttrLabelProxy "stockId"
gutterRendererPixbufStockId = AttrLabelProxy

#endif

#if ENABLE_OVERLOADING
type instance O.SignalList GutterRendererPixbuf = GutterRendererPixbufSignalList
type GutterRendererPixbufSignalList = ('[ '("activate", GtkSource.GutterRenderer.GutterRendererActivateSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("queryActivatable", GtkSource.GutterRenderer.GutterRendererQueryActivatableSignalInfo), '("queryData", GtkSource.GutterRenderer.GutterRendererQueryDataSignalInfo), '("queryTooltip", GtkSource.GutterRenderer.GutterRendererQueryTooltipSignalInfo), '("queueDraw", GtkSource.GutterRenderer.GutterRendererQueueDrawSignalInfo)] :: [(Symbol, *)])

#endif

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

foreign import ccall "gtk_source_gutter_renderer_pixbuf_new" gtk_source_gutter_renderer_pixbuf_new ::
    IO (Ptr GutterRendererPixbuf)

{- |
Create a new 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf'.
-}
gutterRendererPixbufNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m GutterRendererPixbuf
    {- ^ __Returns:__ A 'GI.GtkSource.Objects.GutterRenderer.GutterRenderer' -}
gutterRendererPixbufNew  = liftIO $ do
    result <- gtk_source_gutter_renderer_pixbuf_new
    checkUnexpectedReturnNULL "gutterRendererPixbufNew" result
    result' <- (wrapObject GutterRendererPixbuf) result
    return result'

#if ENABLE_OVERLOADING
#endif

-- method GutterRendererPixbuf::get_gicon
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "renderer", argType = TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkSourceGutterRendererPixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "Gio", name = "Icon"}))
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_gutter_renderer_pixbuf_get_gicon" gtk_source_gutter_renderer_pixbuf_get_gicon ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    IO (Ptr Gio.Icon.Icon)

{- |
Get the gicon of the renderer
-}
gutterRendererPixbufGetGicon ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a) =>
    a
    {- ^ /@renderer@/: a 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf' -}
    -> m Gio.Icon.Icon
    {- ^ __Returns:__ a 'GI.Gio.Interfaces.Icon.Icon' -}
gutterRendererPixbufGetGicon renderer = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    result <- gtk_source_gutter_renderer_pixbuf_get_gicon renderer'
    checkUnexpectedReturnNULL "gutterRendererPixbufGetGicon" result
    result' <- (newObject Gio.Icon.Icon) result
    touchManagedPtr renderer
    return result'

#if ENABLE_OVERLOADING
data GutterRendererPixbufGetGiconMethodInfo
instance (signature ~ (m Gio.Icon.Icon), MonadIO m, IsGutterRendererPixbuf a) => O.MethodInfo GutterRendererPixbufGetGiconMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufGetGicon

#endif

-- method GutterRendererPixbuf::get_icon_name
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "renderer", argType = TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Nothing, sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TUTF8)
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_gutter_renderer_pixbuf_get_icon_name" gtk_source_gutter_renderer_pixbuf_get_icon_name ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    IO CString

{- |
/No description available in the introspection data./
-}
gutterRendererPixbufGetIconName ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a) =>
    a
    -> m T.Text
gutterRendererPixbufGetIconName renderer = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    result <- gtk_source_gutter_renderer_pixbuf_get_icon_name renderer'
    checkUnexpectedReturnNULL "gutterRendererPixbufGetIconName" result
    result' <- cstringToText result
    touchManagedPtr renderer
    return result'

#if ENABLE_OVERLOADING
data GutterRendererPixbufGetIconNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsGutterRendererPixbuf a) => O.MethodInfo GutterRendererPixbufGetIconNameMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufGetIconName

#endif

-- method GutterRendererPixbuf::get_pixbuf
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "renderer", argType = TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkSourceGutterRendererPixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "GdkPixbuf", name = "Pixbuf"}))
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_gutter_renderer_pixbuf_get_pixbuf" gtk_source_gutter_renderer_pixbuf_get_pixbuf ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    IO (Ptr GdkPixbuf.Pixbuf.Pixbuf)

{- |
Get the pixbuf of the renderer.
-}
gutterRendererPixbufGetPixbuf ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a) =>
    a
    {- ^ /@renderer@/: a 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf' -}
    -> m GdkPixbuf.Pixbuf.Pixbuf
    {- ^ __Returns:__ a 'GI.GdkPixbuf.Objects.Pixbuf.Pixbuf' -}
gutterRendererPixbufGetPixbuf renderer = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    result <- gtk_source_gutter_renderer_pixbuf_get_pixbuf renderer'
    checkUnexpectedReturnNULL "gutterRendererPixbufGetPixbuf" result
    result' <- (newObject GdkPixbuf.Pixbuf.Pixbuf) result
    touchManagedPtr renderer
    return result'

#if ENABLE_OVERLOADING
data GutterRendererPixbufGetPixbufMethodInfo
instance (signature ~ (m GdkPixbuf.Pixbuf.Pixbuf), MonadIO m, IsGutterRendererPixbuf a) => O.MethodInfo GutterRendererPixbufGetPixbufMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufGetPixbuf

#endif

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

foreign import ccall "gtk_source_gutter_renderer_pixbuf_get_stock_id" gtk_source_gutter_renderer_pixbuf_get_stock_id ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    IO CString

{-# DEPRECATED gutterRendererPixbufGetStockId ["(Since version 3.10)","Don\\'t use this function."] #-}
{- |
/No description available in the introspection data./
-}
gutterRendererPixbufGetStockId ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a) =>
    a
    {- ^ /@renderer@/: a 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf' -}
    -> m T.Text
    {- ^ __Returns:__ the stock id. -}
gutterRendererPixbufGetStockId renderer = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    result <- gtk_source_gutter_renderer_pixbuf_get_stock_id renderer'
    checkUnexpectedReturnNULL "gutterRendererPixbufGetStockId" result
    result' <- cstringToText result
    touchManagedPtr renderer
    return result'

#if ENABLE_OVERLOADING
data GutterRendererPixbufGetStockIdMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsGutterRendererPixbuf a) => O.MethodInfo GutterRendererPixbufGetStockIdMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufGetStockId

#endif

-- method GutterRendererPixbuf::set_gicon
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "renderer", argType = TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkSourceGutterRendererPixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "icon", argType = TInterface (Name {namespace = "Gio", name = "Icon"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "the icon, or %NULL.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_gutter_renderer_pixbuf_set_gicon" gtk_source_gutter_renderer_pixbuf_set_gicon ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    Ptr Gio.Icon.Icon ->                    -- icon : TInterface (Name {namespace = "Gio", name = "Icon"})
    IO ()

{- |
/No description available in the introspection data./
-}
gutterRendererPixbufSetGicon ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a, Gio.Icon.IsIcon b) =>
    a
    {- ^ /@renderer@/: a 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf' -}
    -> Maybe (b)
    {- ^ /@icon@/: the icon, or 'Nothing'. -}
    -> m ()
gutterRendererPixbufSetGicon renderer icon = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    maybeIcon <- case icon of
        Nothing -> return nullPtr
        Just jIcon -> do
            jIcon' <- unsafeManagedPtrCastPtr jIcon
            return jIcon'
    gtk_source_gutter_renderer_pixbuf_set_gicon renderer' maybeIcon
    touchManagedPtr renderer
    whenJust icon touchManagedPtr
    return ()

#if ENABLE_OVERLOADING
data GutterRendererPixbufSetGiconMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsGutterRendererPixbuf a, Gio.Icon.IsIcon b) => O.MethodInfo GutterRendererPixbufSetGiconMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufSetGicon

#endif

-- method GutterRendererPixbuf::set_icon_name
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "renderer", argType = TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkSourceGutterRendererPixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "icon_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "the icon name, or %NULL.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_gutter_renderer_pixbuf_set_icon_name" gtk_source_gutter_renderer_pixbuf_set_icon_name ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    CString ->                              -- icon_name : TBasicType TUTF8
    IO ()

{- |
/No description available in the introspection data./
-}
gutterRendererPixbufSetIconName ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a) =>
    a
    {- ^ /@renderer@/: a 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf' -}
    -> Maybe (T.Text)
    {- ^ /@iconName@/: the icon name, or 'Nothing'. -}
    -> m ()
gutterRendererPixbufSetIconName renderer iconName = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    maybeIconName <- case iconName of
        Nothing -> return nullPtr
        Just jIconName -> do
            jIconName' <- textToCString jIconName
            return jIconName'
    gtk_source_gutter_renderer_pixbuf_set_icon_name renderer' maybeIconName
    touchManagedPtr renderer
    freeMem maybeIconName
    return ()

#if ENABLE_OVERLOADING
data GutterRendererPixbufSetIconNameMethodInfo
instance (signature ~ (Maybe (T.Text) -> m ()), MonadIO m, IsGutterRendererPixbuf a) => O.MethodInfo GutterRendererPixbufSetIconNameMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufSetIconName

#endif

-- method GutterRendererPixbuf::set_pixbuf
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "renderer", argType = TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkSourceGutterRendererPixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "pixbuf", argType = TInterface (Name {namespace = "GdkPixbuf", name = "Pixbuf"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "the pixbuf, or %NULL.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_gutter_renderer_pixbuf_set_pixbuf" gtk_source_gutter_renderer_pixbuf_set_pixbuf ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    Ptr GdkPixbuf.Pixbuf.Pixbuf ->          -- pixbuf : TInterface (Name {namespace = "GdkPixbuf", name = "Pixbuf"})
    IO ()

{- |
/No description available in the introspection data./
-}
gutterRendererPixbufSetPixbuf ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a, GdkPixbuf.Pixbuf.IsPixbuf b) =>
    a
    {- ^ /@renderer@/: a 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf' -}
    -> Maybe (b)
    {- ^ /@pixbuf@/: the pixbuf, or 'Nothing'. -}
    -> m ()
gutterRendererPixbufSetPixbuf renderer pixbuf = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    maybePixbuf <- case pixbuf of
        Nothing -> return nullPtr
        Just jPixbuf -> do
            jPixbuf' <- unsafeManagedPtrCastPtr jPixbuf
            return jPixbuf'
    gtk_source_gutter_renderer_pixbuf_set_pixbuf renderer' maybePixbuf
    touchManagedPtr renderer
    whenJust pixbuf touchManagedPtr
    return ()

#if ENABLE_OVERLOADING
data GutterRendererPixbufSetPixbufMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsGutterRendererPixbuf a, GdkPixbuf.Pixbuf.IsPixbuf b) => O.MethodInfo GutterRendererPixbufSetPixbufMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufSetPixbuf

#endif

-- method GutterRendererPixbuf::set_stock_id
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "renderer", argType = TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkSourceGutterRendererPixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stock_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "the stock id", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_gutter_renderer_pixbuf_set_stock_id" gtk_source_gutter_renderer_pixbuf_set_stock_id ::
    Ptr GutterRendererPixbuf ->             -- renderer : TInterface (Name {namespace = "GtkSource", name = "GutterRendererPixbuf"})
    CString ->                              -- stock_id : TBasicType TUTF8
    IO ()

{-# DEPRECATED gutterRendererPixbufSetStockId ["(Since version 3.10)","Don\\'t use this function."] #-}
{- |
/No description available in the introspection data./
-}
gutterRendererPixbufSetStockId ::
    (B.CallStack.HasCallStack, MonadIO m, IsGutterRendererPixbuf a) =>
    a
    {- ^ /@renderer@/: a 'GI.GtkSource.Objects.GutterRendererPixbuf.GutterRendererPixbuf' -}
    -> Maybe (T.Text)
    {- ^ /@stockId@/: the stock id -}
    -> m ()
gutterRendererPixbufSetStockId renderer stockId = liftIO $ do
    renderer' <- unsafeManagedPtrCastPtr renderer
    maybeStockId <- case stockId of
        Nothing -> return nullPtr
        Just jStockId -> do
            jStockId' <- textToCString jStockId
            return jStockId'
    gtk_source_gutter_renderer_pixbuf_set_stock_id renderer' maybeStockId
    touchManagedPtr renderer
    freeMem maybeStockId
    return ()

#if ENABLE_OVERLOADING
data GutterRendererPixbufSetStockIdMethodInfo
instance (signature ~ (Maybe (T.Text) -> m ()), MonadIO m, IsGutterRendererPixbuf a) => O.MethodInfo GutterRendererPixbufSetStockIdMethodInfo a signature where
    overloadedMethod _ = gutterRendererPixbufSetStockId

#endif