{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gio.Objects.EmblemedIcon
(
EmblemedIcon(..) ,
IsEmblemedIcon ,
toEmblemedIcon ,
#if defined(ENABLE_OVERLOADING)
ResolveEmblemedIconMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
EmblemedIconAddEmblemMethodInfo ,
#endif
emblemedIconAddEmblem ,
#if defined(ENABLE_OVERLOADING)
EmblemedIconClearEmblemsMethodInfo ,
#endif
emblemedIconClearEmblems ,
#if defined(ENABLE_OVERLOADING)
EmblemedIconGetEmblemsMethodInfo ,
#endif
emblemedIconGetEmblems ,
#if defined(ENABLE_OVERLOADING)
EmblemedIconGetIconMethodInfo ,
#endif
emblemedIconGetIcon ,
emblemedIconNew ,
#if defined(ENABLE_OVERLOADING)
EmblemedIconGiconPropertyInfo ,
#endif
constructEmblemedIconGicon ,
#if defined(ENABLE_OVERLOADING)
emblemedIconGicon ,
#endif
getEmblemedIconGicon ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified Data.Word as DW
import qualified Data.Int as DI
import qualified System.Posix.Types as SPT
import qualified Foreign.C.Types as FCT
#if MIN_VERSION_base(4,18,0)
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gio.Enums as Gio.Enums
import {-# SOURCE #-} qualified GI.Gio.Interfaces.Icon as Gio.Icon
import {-# SOURCE #-} qualified GI.Gio.Objects.Emblem as Gio.Emblem
#else
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gio.Interfaces.Icon as Gio.Icon
import {-# SOURCE #-} qualified GI.Gio.Objects.Emblem as Gio.Emblem
#endif
newtype EmblemedIcon = EmblemedIcon (SP.ManagedPtr EmblemedIcon)
deriving (EmblemedIcon -> EmblemedIcon -> Bool
(EmblemedIcon -> EmblemedIcon -> Bool)
-> (EmblemedIcon -> EmblemedIcon -> Bool) -> Eq EmblemedIcon
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: EmblemedIcon -> EmblemedIcon -> Bool
== :: EmblemedIcon -> EmblemedIcon -> Bool
$c/= :: EmblemedIcon -> EmblemedIcon -> Bool
/= :: EmblemedIcon -> EmblemedIcon -> Bool
Eq)
instance SP.ManagedPtrNewtype EmblemedIcon where
toManagedPtr :: EmblemedIcon -> ManagedPtr EmblemedIcon
toManagedPtr (EmblemedIcon ManagedPtr EmblemedIcon
p) = ManagedPtr EmblemedIcon
p
foreign import ccall "g_emblemed_icon_get_type"
c_g_emblemed_icon_get_type :: IO B.Types.GType
instance B.Types.TypedObject EmblemedIcon where
glibType :: IO GType
glibType = IO GType
c_g_emblemed_icon_get_type
instance B.Types.GObject EmblemedIcon
class (SP.GObject o, O.IsDescendantOf EmblemedIcon o) => IsEmblemedIcon o
instance (SP.GObject o, O.IsDescendantOf EmblemedIcon o) => IsEmblemedIcon o
instance O.HasParentTypes EmblemedIcon
type instance O.ParentTypes EmblemedIcon = '[GObject.Object.Object, Gio.Icon.Icon]
toEmblemedIcon :: (MIO.MonadIO m, IsEmblemedIcon o) => o -> m EmblemedIcon
toEmblemedIcon :: forall (m :: * -> *) o.
(MonadIO m, IsEmblemedIcon o) =>
o -> m EmblemedIcon
toEmblemedIcon = IO EmblemedIcon -> m EmblemedIcon
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO EmblemedIcon -> m EmblemedIcon)
-> (o -> IO EmblemedIcon) -> o -> m EmblemedIcon
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr EmblemedIcon -> EmblemedIcon) -> o -> IO EmblemedIcon
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr EmblemedIcon -> EmblemedIcon
EmblemedIcon
instance B.GValue.IsGValue (Maybe EmblemedIcon) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_g_emblemed_icon_get_type
gvalueSet_ :: Ptr GValue -> Maybe EmblemedIcon -> IO ()
gvalueSet_ Ptr GValue
gv Maybe EmblemedIcon
P.Nothing = Ptr GValue -> Ptr EmblemedIcon -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr EmblemedIcon
forall a. Ptr a
FP.nullPtr :: FP.Ptr EmblemedIcon)
gvalueSet_ Ptr GValue
gv (P.Just EmblemedIcon
obj) = EmblemedIcon -> (Ptr EmblemedIcon -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr EmblemedIcon
obj (Ptr GValue -> Ptr EmblemedIcon -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe EmblemedIcon)
gvalueGet_ Ptr GValue
gv = do
ptr <- Ptr GValue -> IO (Ptr EmblemedIcon)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr EmblemedIcon)
if ptr /= FP.nullPtr
then P.Just <$> B.ManagedPtr.newObject EmblemedIcon ptr
else return P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveEmblemedIconMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveEmblemedIconMethod "addEmblem" o = EmblemedIconAddEmblemMethodInfo
ResolveEmblemedIconMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveEmblemedIconMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveEmblemedIconMethod "clearEmblems" o = EmblemedIconClearEmblemsMethodInfo
ResolveEmblemedIconMethod "equal" o = Gio.Icon.IconEqualMethodInfo
ResolveEmblemedIconMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveEmblemedIconMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveEmblemedIconMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveEmblemedIconMethod "hash" o = Gio.Icon.IconHashMethodInfo
ResolveEmblemedIconMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveEmblemedIconMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveEmblemedIconMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveEmblemedIconMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveEmblemedIconMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveEmblemedIconMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveEmblemedIconMethod "serialize" o = Gio.Icon.IconSerializeMethodInfo
ResolveEmblemedIconMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveEmblemedIconMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveEmblemedIconMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveEmblemedIconMethod "toString" o = Gio.Icon.IconToStringMethodInfo
ResolveEmblemedIconMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveEmblemedIconMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveEmblemedIconMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveEmblemedIconMethod "getEmblems" o = EmblemedIconGetEmblemsMethodInfo
ResolveEmblemedIconMethod "getIcon" o = EmblemedIconGetIconMethodInfo
ResolveEmblemedIconMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveEmblemedIconMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveEmblemedIconMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveEmblemedIconMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveEmblemedIconMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveEmblemedIconMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveEmblemedIconMethod t EmblemedIcon, O.OverloadedMethod info EmblemedIcon p) => OL.IsLabel t (EmblemedIcon -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveEmblemedIconMethod t EmblemedIcon, O.OverloadedMethod info EmblemedIcon p, R.HasField t EmblemedIcon p) => R.HasField t EmblemedIcon p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveEmblemedIconMethod t EmblemedIcon, O.OverloadedMethodInfo info EmblemedIcon) => OL.IsLabel t (O.MethodProxy info EmblemedIcon) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
getEmblemedIconGicon :: (MonadIO m, IsEmblemedIcon o) => o -> m (Maybe Gio.Icon.Icon)
getEmblemedIconGicon :: forall (m :: * -> *) o.
(MonadIO m, IsEmblemedIcon o) =>
o -> m (Maybe Icon)
getEmblemedIconGicon o
obj = IO (Maybe Icon) -> m (Maybe Icon)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (Maybe Icon) -> m (Maybe Icon))
-> IO (Maybe Icon) -> m (Maybe Icon)
forall a b. (a -> b) -> a -> b
$ o -> String -> (ManagedPtr Icon -> Icon) -> IO (Maybe Icon)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"gicon" ManagedPtr Icon -> Icon
Gio.Icon.Icon
constructEmblemedIconGicon :: (IsEmblemedIcon o, MIO.MonadIO m, Gio.Icon.IsIcon a) => a -> m (GValueConstruct o)
constructEmblemedIconGicon :: forall o (m :: * -> *) a.
(IsEmblemedIcon o, MonadIO m, IsIcon a) =>
a -> m (GValueConstruct o)
constructEmblemedIconGicon a
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe a -> IO (GValueConstruct o)
forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject String
"gicon" (a -> Maybe a
forall a. a -> Maybe a
P.Just a
val)
#if defined(ENABLE_OVERLOADING)
data EmblemedIconGiconPropertyInfo
instance AttrInfo EmblemedIconGiconPropertyInfo where
type AttrAllowedOps EmblemedIconGiconPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint EmblemedIconGiconPropertyInfo = IsEmblemedIcon
type AttrSetTypeConstraint EmblemedIconGiconPropertyInfo = Gio.Icon.IsIcon
type AttrTransferTypeConstraint EmblemedIconGiconPropertyInfo = Gio.Icon.IsIcon
type AttrTransferType EmblemedIconGiconPropertyInfo = Gio.Icon.Icon
type AttrGetType EmblemedIconGiconPropertyInfo = (Maybe Gio.Icon.Icon)
type AttrLabel EmblemedIconGiconPropertyInfo = "gicon"
type AttrOrigin EmblemedIconGiconPropertyInfo = EmblemedIcon
attrGet = getEmblemedIconGicon
attrSet = undefined
attrTransfer _ v = do
unsafeCastTo Gio.Icon.Icon v
attrConstruct = constructEmblemedIconGicon
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.EmblemedIcon.gicon"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.35/docs/GI-Gio-Objects-EmblemedIcon.html#g:attr:gicon"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList EmblemedIcon
type instance O.AttributeList EmblemedIcon = EmblemedIconAttributeList
type EmblemedIconAttributeList = ('[ '("gicon", EmblemedIconGiconPropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
emblemedIconGicon :: AttrLabelProxy "gicon"
emblemedIconGicon = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList EmblemedIcon = EmblemedIconSignalList
type EmblemedIconSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "g_emblemed_icon_new" g_emblemed_icon_new ::
Ptr Gio.Icon.Icon ->
Ptr Gio.Emblem.Emblem ->
IO (Ptr EmblemedIcon)
emblemedIconNew ::
(B.CallStack.HasCallStack, MonadIO m, Gio.Icon.IsIcon a, Gio.Emblem.IsEmblem b) =>
a
-> Maybe (b)
-> m EmblemedIcon
emblemedIconNew :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsIcon a, IsEmblem b) =>
a -> Maybe b -> m EmblemedIcon
emblemedIconNew a
icon Maybe b
emblem = IO EmblemedIcon -> m EmblemedIcon
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO EmblemedIcon -> m EmblemedIcon)
-> IO EmblemedIcon -> m EmblemedIcon
forall a b. (a -> b) -> a -> b
$ do
icon' <- a -> IO (Ptr Icon)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
icon
maybeEmblem <- case emblem of
Maybe b
Nothing -> Ptr Emblem -> IO (Ptr Emblem)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Emblem
forall a. Ptr a
FP.nullPtr
Just b
jEmblem -> do
jEmblem' <- b -> IO (Ptr Emblem)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jEmblem
return jEmblem'
result <- g_emblemed_icon_new icon' maybeEmblem
checkUnexpectedReturnNULL "emblemedIconNew" result
result' <- (wrapObject EmblemedIcon) result
touchManagedPtr icon
whenJust emblem touchManagedPtr
return result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "g_emblemed_icon_add_emblem" g_emblemed_icon_add_emblem ::
Ptr EmblemedIcon ->
Ptr Gio.Emblem.Emblem ->
IO ()
emblemedIconAddEmblem ::
(B.CallStack.HasCallStack, MonadIO m, IsEmblemedIcon a, Gio.Emblem.IsEmblem b) =>
a
-> b
-> m ()
emblemedIconAddEmblem :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsEmblemedIcon a, IsEmblem b) =>
a -> b -> m ()
emblemedIconAddEmblem a
emblemed b
emblem = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
emblemed' <- a -> IO (Ptr EmblemedIcon)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
emblemed
emblem' <- unsafeManagedPtrCastPtr emblem
g_emblemed_icon_add_emblem emblemed' emblem'
touchManagedPtr emblemed
touchManagedPtr emblem
return ()
#if defined(ENABLE_OVERLOADING)
data EmblemedIconAddEmblemMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsEmblemedIcon a, Gio.Emblem.IsEmblem b) => O.OverloadedMethod EmblemedIconAddEmblemMethodInfo a signature where
overloadedMethod = emblemedIconAddEmblem
instance O.OverloadedMethodInfo EmblemedIconAddEmblemMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.EmblemedIcon.emblemedIconAddEmblem",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.35/docs/GI-Gio-Objects-EmblemedIcon.html#v:emblemedIconAddEmblem"
})
#endif
foreign import ccall "g_emblemed_icon_clear_emblems" g_emblemed_icon_clear_emblems ::
Ptr EmblemedIcon ->
IO ()
emblemedIconClearEmblems ::
(B.CallStack.HasCallStack, MonadIO m, IsEmblemedIcon a) =>
a
-> m ()
emblemedIconClearEmblems :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEmblemedIcon a) =>
a -> m ()
emblemedIconClearEmblems a
emblemed = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
emblemed' <- a -> IO (Ptr EmblemedIcon)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
emblemed
g_emblemed_icon_clear_emblems emblemed'
touchManagedPtr emblemed
return ()
#if defined(ENABLE_OVERLOADING)
data EmblemedIconClearEmblemsMethodInfo
instance (signature ~ (m ()), MonadIO m, IsEmblemedIcon a) => O.OverloadedMethod EmblemedIconClearEmblemsMethodInfo a signature where
overloadedMethod = emblemedIconClearEmblems
instance O.OverloadedMethodInfo EmblemedIconClearEmblemsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.EmblemedIcon.emblemedIconClearEmblems",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.35/docs/GI-Gio-Objects-EmblemedIcon.html#v:emblemedIconClearEmblems"
})
#endif
foreign import ccall "g_emblemed_icon_get_emblems" g_emblemed_icon_get_emblems ::
Ptr EmblemedIcon ->
IO (Ptr (GList (Ptr Gio.Emblem.Emblem)))
emblemedIconGetEmblems ::
(B.CallStack.HasCallStack, MonadIO m, IsEmblemedIcon a) =>
a
-> m [Gio.Emblem.Emblem]
emblemedIconGetEmblems :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEmblemedIcon a) =>
a -> m [Emblem]
emblemedIconGetEmblems a
emblemed = IO [Emblem] -> m [Emblem]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [Emblem] -> m [Emblem]) -> IO [Emblem] -> m [Emblem]
forall a b. (a -> b) -> a -> b
$ do
emblemed' <- a -> IO (Ptr EmblemedIcon)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
emblemed
result <- g_emblemed_icon_get_emblems emblemed'
result' <- unpackGList result
result'' <- mapM (newObject Gio.Emblem.Emblem) result'
touchManagedPtr emblemed
return result''
#if defined(ENABLE_OVERLOADING)
data EmblemedIconGetEmblemsMethodInfo
instance (signature ~ (m [Gio.Emblem.Emblem]), MonadIO m, IsEmblemedIcon a) => O.OverloadedMethod EmblemedIconGetEmblemsMethodInfo a signature where
overloadedMethod = emblemedIconGetEmblems
instance O.OverloadedMethodInfo EmblemedIconGetEmblemsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.EmblemedIcon.emblemedIconGetEmblems",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.35/docs/GI-Gio-Objects-EmblemedIcon.html#v:emblemedIconGetEmblems"
})
#endif
foreign import ccall "g_emblemed_icon_get_icon" g_emblemed_icon_get_icon ::
Ptr EmblemedIcon ->
IO (Ptr Gio.Icon.Icon)
emblemedIconGetIcon ::
(B.CallStack.HasCallStack, MonadIO m, IsEmblemedIcon a) =>
a
-> m Gio.Icon.Icon
emblemedIconGetIcon :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsEmblemedIcon a) =>
a -> m Icon
emblemedIconGetIcon a
emblemed = IO Icon -> m Icon
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Icon -> m Icon) -> IO Icon -> m Icon
forall a b. (a -> b) -> a -> b
$ do
emblemed' <- a -> IO (Ptr EmblemedIcon)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
emblemed
result <- g_emblemed_icon_get_icon emblemed'
checkUnexpectedReturnNULL "emblemedIconGetIcon" result
result' <- (newObject Gio.Icon.Icon) result
touchManagedPtr emblemed
return result'
#if defined(ENABLE_OVERLOADING)
data EmblemedIconGetIconMethodInfo
instance (signature ~ (m Gio.Icon.Icon), MonadIO m, IsEmblemedIcon a) => O.OverloadedMethod EmblemedIconGetIconMethodInfo a signature where
overloadedMethod = emblemedIconGetIcon
instance O.OverloadedMethodInfo EmblemedIconGetIconMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.EmblemedIcon.emblemedIconGetIcon",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.35/docs/GI-Gio-Objects-EmblemedIcon.html#v:emblemedIconGetIcon"
})
#endif