{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gtk.Interfaces.BuilderScope
(
BuilderScope(..) ,
IsBuilderScope ,
toBuilderScope ,
#if defined(ENABLE_OVERLOADING)
ResolveBuilderScopeMethod ,
#endif
) 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.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.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
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
newtype BuilderScope = BuilderScope (SP.ManagedPtr BuilderScope)
deriving (BuilderScope -> BuilderScope -> Bool
(BuilderScope -> BuilderScope -> Bool)
-> (BuilderScope -> BuilderScope -> Bool) -> Eq BuilderScope
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: BuilderScope -> BuilderScope -> Bool
$c/= :: BuilderScope -> BuilderScope -> Bool
== :: BuilderScope -> BuilderScope -> Bool
$c== :: BuilderScope -> BuilderScope -> Bool
Eq)
instance SP.ManagedPtrNewtype BuilderScope where
toManagedPtr :: BuilderScope -> ManagedPtr BuilderScope
toManagedPtr (BuilderScope ManagedPtr BuilderScope
p) = ManagedPtr BuilderScope
p
foreign import ccall "gtk_builder_scope_get_type"
c_gtk_builder_scope_get_type :: IO B.Types.GType
instance B.Types.TypedObject BuilderScope where
glibType :: IO GType
glibType = IO GType
c_gtk_builder_scope_get_type
instance B.Types.GObject BuilderScope
instance B.GValue.IsGValue BuilderScope where
toGValue :: BuilderScope -> IO GValue
toGValue BuilderScope
o = do
GType
gtype <- IO GType
c_gtk_builder_scope_get_type
BuilderScope -> (Ptr BuilderScope -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr BuilderScope
o (GType
-> (GValue -> Ptr BuilderScope -> IO ())
-> Ptr BuilderScope
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr BuilderScope -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO BuilderScope
fromGValue GValue
gv = do
Ptr BuilderScope
ptr <- GValue -> IO (Ptr BuilderScope)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr BuilderScope)
(ManagedPtr BuilderScope -> BuilderScope)
-> Ptr BuilderScope -> IO BuilderScope
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr BuilderScope -> BuilderScope
BuilderScope Ptr BuilderScope
ptr
class (SP.GObject o, O.IsDescendantOf BuilderScope o) => IsBuilderScope o
instance (SP.GObject o, O.IsDescendantOf BuilderScope o) => IsBuilderScope o
instance O.HasParentTypes BuilderScope
type instance O.ParentTypes BuilderScope = '[GObject.Object.Object]
toBuilderScope :: (MonadIO m, IsBuilderScope o) => o -> m BuilderScope
toBuilderScope :: o -> m BuilderScope
toBuilderScope = IO BuilderScope -> m BuilderScope
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO BuilderScope -> m BuilderScope)
-> (o -> IO BuilderScope) -> o -> m BuilderScope
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr BuilderScope -> BuilderScope) -> o -> IO BuilderScope
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr BuilderScope -> BuilderScope
BuilderScope
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList BuilderScope
type instance O.AttributeList BuilderScope = BuilderScopeAttributeList
type BuilderScopeAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveBuilderScopeMethod (t :: Symbol) (o :: *) :: * where
ResolveBuilderScopeMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveBuilderScopeMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveBuilderScopeMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveBuilderScopeMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveBuilderScopeMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveBuilderScopeMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveBuilderScopeMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveBuilderScopeMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveBuilderScopeMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveBuilderScopeMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveBuilderScopeMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveBuilderScopeMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveBuilderScopeMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveBuilderScopeMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveBuilderScopeMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveBuilderScopeMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveBuilderScopeMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveBuilderScopeMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveBuilderScopeMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveBuilderScopeMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveBuilderScopeMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveBuilderScopeMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveBuilderScopeMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveBuilderScopeMethod t BuilderScope, O.MethodInfo info BuilderScope p) => OL.IsLabel t (BuilderScope -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList BuilderScope = BuilderScopeSignalList
type BuilderScopeSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif