{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gtk.Objects.FixedLayoutChild
(
FixedLayoutChild(..) ,
IsFixedLayoutChild ,
toFixedLayoutChild ,
#if defined(ENABLE_OVERLOADING)
ResolveFixedLayoutChildMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
FixedLayoutChildGetTransformMethodInfo ,
#endif
fixedLayoutChildGetTransform ,
#if defined(ENABLE_OVERLOADING)
FixedLayoutChildSetTransformMethodInfo ,
#endif
fixedLayoutChildSetTransform ,
#if defined(ENABLE_OVERLOADING)
FixedLayoutChildTransformPropertyInfo ,
#endif
constructFixedLayoutChildTransform ,
#if defined(ENABLE_OVERLOADING)
fixedLayoutChildTransform ,
#endif
getFixedLayoutChildTransform ,
setFixedLayoutChildTransform ,
) 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
import qualified GI.Gsk.Structs.Transform as Gsk.Transform
import {-# SOURCE #-} qualified GI.Gtk.Objects.LayoutChild as Gtk.LayoutChild
newtype FixedLayoutChild = FixedLayoutChild (SP.ManagedPtr FixedLayoutChild)
deriving (FixedLayoutChild -> FixedLayoutChild -> Bool
(FixedLayoutChild -> FixedLayoutChild -> Bool)
-> (FixedLayoutChild -> FixedLayoutChild -> Bool)
-> Eq FixedLayoutChild
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: FixedLayoutChild -> FixedLayoutChild -> Bool
$c/= :: FixedLayoutChild -> FixedLayoutChild -> Bool
== :: FixedLayoutChild -> FixedLayoutChild -> Bool
$c== :: FixedLayoutChild -> FixedLayoutChild -> Bool
Eq)
instance SP.ManagedPtrNewtype FixedLayoutChild where
toManagedPtr :: FixedLayoutChild -> ManagedPtr FixedLayoutChild
toManagedPtr (FixedLayoutChild ManagedPtr FixedLayoutChild
p) = ManagedPtr FixedLayoutChild
p
foreign import ccall "gtk_fixed_layout_child_get_type"
c_gtk_fixed_layout_child_get_type :: IO B.Types.GType
instance B.Types.TypedObject FixedLayoutChild where
glibType :: IO GType
glibType = IO GType
c_gtk_fixed_layout_child_get_type
instance B.Types.GObject FixedLayoutChild
instance B.GValue.IsGValue FixedLayoutChild where
toGValue :: FixedLayoutChild -> IO GValue
toGValue FixedLayoutChild
o = do
GType
gtype <- IO GType
c_gtk_fixed_layout_child_get_type
FixedLayoutChild
-> (Ptr FixedLayoutChild -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr FixedLayoutChild
o (GType
-> (GValue -> Ptr FixedLayoutChild -> IO ())
-> Ptr FixedLayoutChild
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr FixedLayoutChild -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO FixedLayoutChild
fromGValue GValue
gv = do
Ptr FixedLayoutChild
ptr <- GValue -> IO (Ptr FixedLayoutChild)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr FixedLayoutChild)
(ManagedPtr FixedLayoutChild -> FixedLayoutChild)
-> Ptr FixedLayoutChild -> IO FixedLayoutChild
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr FixedLayoutChild -> FixedLayoutChild
FixedLayoutChild Ptr FixedLayoutChild
ptr
class (SP.GObject o, O.IsDescendantOf FixedLayoutChild o) => IsFixedLayoutChild o
instance (SP.GObject o, O.IsDescendantOf FixedLayoutChild o) => IsFixedLayoutChild o
instance O.HasParentTypes FixedLayoutChild
type instance O.ParentTypes FixedLayoutChild = '[Gtk.LayoutChild.LayoutChild, GObject.Object.Object]
toFixedLayoutChild :: (MonadIO m, IsFixedLayoutChild o) => o -> m FixedLayoutChild
toFixedLayoutChild :: o -> m FixedLayoutChild
toFixedLayoutChild = IO FixedLayoutChild -> m FixedLayoutChild
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO FixedLayoutChild -> m FixedLayoutChild)
-> (o -> IO FixedLayoutChild) -> o -> m FixedLayoutChild
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr FixedLayoutChild -> FixedLayoutChild)
-> o -> IO FixedLayoutChild
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr FixedLayoutChild -> FixedLayoutChild
FixedLayoutChild
#if defined(ENABLE_OVERLOADING)
type family ResolveFixedLayoutChildMethod (t :: Symbol) (o :: *) :: * where
ResolveFixedLayoutChildMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveFixedLayoutChildMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveFixedLayoutChildMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveFixedLayoutChildMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveFixedLayoutChildMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveFixedLayoutChildMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveFixedLayoutChildMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveFixedLayoutChildMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveFixedLayoutChildMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveFixedLayoutChildMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveFixedLayoutChildMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveFixedLayoutChildMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveFixedLayoutChildMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveFixedLayoutChildMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveFixedLayoutChildMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveFixedLayoutChildMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveFixedLayoutChildMethod "getChildWidget" o = Gtk.LayoutChild.LayoutChildGetChildWidgetMethodInfo
ResolveFixedLayoutChildMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveFixedLayoutChildMethod "getLayoutManager" o = Gtk.LayoutChild.LayoutChildGetLayoutManagerMethodInfo
ResolveFixedLayoutChildMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveFixedLayoutChildMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveFixedLayoutChildMethod "getTransform" o = FixedLayoutChildGetTransformMethodInfo
ResolveFixedLayoutChildMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveFixedLayoutChildMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveFixedLayoutChildMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveFixedLayoutChildMethod "setTransform" o = FixedLayoutChildSetTransformMethodInfo
ResolveFixedLayoutChildMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveFixedLayoutChildMethod t FixedLayoutChild, O.MethodInfo info FixedLayoutChild p) => OL.IsLabel t (FixedLayoutChild -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
getFixedLayoutChildTransform :: (MonadIO m, IsFixedLayoutChild o) => o -> m (Maybe Gsk.Transform.Transform)
getFixedLayoutChildTransform :: o -> m (Maybe Transform)
getFixedLayoutChildTransform o
obj = IO (Maybe Transform) -> m (Maybe Transform)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Transform) -> m (Maybe Transform))
-> IO (Maybe Transform) -> m (Maybe Transform)
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr Transform -> Transform)
-> IO (Maybe Transform)
forall a b.
(GObject a, GBoxed b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyBoxed o
obj String
"transform" ManagedPtr Transform -> Transform
Gsk.Transform.Transform
setFixedLayoutChildTransform :: (MonadIO m, IsFixedLayoutChild o) => o -> Gsk.Transform.Transform -> m ()
setFixedLayoutChildTransform :: o -> Transform -> m ()
setFixedLayoutChildTransform o
obj Transform
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe Transform -> IO ()
forall a b.
(GObject a, GBoxed b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyBoxed o
obj String
"transform" (Transform -> Maybe Transform
forall a. a -> Maybe a
Just Transform
val)
constructFixedLayoutChildTransform :: (IsFixedLayoutChild o, MIO.MonadIO m) => Gsk.Transform.Transform -> m (GValueConstruct o)
constructFixedLayoutChildTransform :: Transform -> m (GValueConstruct o)
constructFixedLayoutChildTransform Transform
val = IO (GValueConstruct o) -> m (GValueConstruct o)
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
$ String -> Maybe Transform -> IO (GValueConstruct o)
forall a o. GBoxed a => String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBoxed String
"transform" (Transform -> Maybe Transform
forall a. a -> Maybe a
P.Just Transform
val)
#if defined(ENABLE_OVERLOADING)
data FixedLayoutChildTransformPropertyInfo
instance AttrInfo FixedLayoutChildTransformPropertyInfo where
type AttrAllowedOps FixedLayoutChildTransformPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint FixedLayoutChildTransformPropertyInfo = IsFixedLayoutChild
type AttrSetTypeConstraint FixedLayoutChildTransformPropertyInfo = (~) Gsk.Transform.Transform
type AttrTransferTypeConstraint FixedLayoutChildTransformPropertyInfo = (~) Gsk.Transform.Transform
type AttrTransferType FixedLayoutChildTransformPropertyInfo = Gsk.Transform.Transform
type AttrGetType FixedLayoutChildTransformPropertyInfo = (Maybe Gsk.Transform.Transform)
type AttrLabel FixedLayoutChildTransformPropertyInfo = "transform"
type AttrOrigin FixedLayoutChildTransformPropertyInfo = FixedLayoutChild
attrGet = getFixedLayoutChildTransform
attrSet = setFixedLayoutChildTransform
attrTransfer _ v = do
return v
attrConstruct = constructFixedLayoutChildTransform
attrClear = undefined
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList FixedLayoutChild
type instance O.AttributeList FixedLayoutChild = FixedLayoutChildAttributeList
type FixedLayoutChildAttributeList = ('[ '("childWidget", Gtk.LayoutChild.LayoutChildChildWidgetPropertyInfo), '("layoutManager", Gtk.LayoutChild.LayoutChildLayoutManagerPropertyInfo), '("transform", FixedLayoutChildTransformPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
fixedLayoutChildTransform :: AttrLabelProxy "transform"
fixedLayoutChildTransform = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList FixedLayoutChild = FixedLayoutChildSignalList
type FixedLayoutChildSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gtk_fixed_layout_child_get_transform" gtk_fixed_layout_child_get_transform ::
Ptr FixedLayoutChild ->
IO (Ptr Gsk.Transform.Transform)
fixedLayoutChildGetTransform ::
(B.CallStack.HasCallStack, MonadIO m, IsFixedLayoutChild a) =>
a
-> m (Maybe Gsk.Transform.Transform)
fixedLayoutChildGetTransform :: a -> m (Maybe Transform)
fixedLayoutChildGetTransform a
child = IO (Maybe Transform) -> m (Maybe Transform)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Transform) -> m (Maybe Transform))
-> IO (Maybe Transform) -> m (Maybe Transform)
forall a b. (a -> b) -> a -> b
$ do
Ptr FixedLayoutChild
child' <- a -> IO (Ptr FixedLayoutChild)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
child
Ptr Transform
result <- Ptr FixedLayoutChild -> IO (Ptr Transform)
gtk_fixed_layout_child_get_transform Ptr FixedLayoutChild
child'
Maybe Transform
maybeResult <- Ptr Transform
-> (Ptr Transform -> IO Transform) -> IO (Maybe Transform)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr Transform
result ((Ptr Transform -> IO Transform) -> IO (Maybe Transform))
-> (Ptr Transform -> IO Transform) -> IO (Maybe Transform)
forall a b. (a -> b) -> a -> b
$ \Ptr Transform
result' -> do
Transform
result'' <- ((ManagedPtr Transform -> Transform)
-> Ptr Transform -> IO Transform
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr Transform -> Transform
Gsk.Transform.Transform) Ptr Transform
result'
Transform -> IO Transform
forall (m :: * -> *) a. Monad m => a -> m a
return Transform
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
child
Maybe Transform -> IO (Maybe Transform)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Transform
maybeResult
#if defined(ENABLE_OVERLOADING)
data FixedLayoutChildGetTransformMethodInfo
instance (signature ~ (m (Maybe Gsk.Transform.Transform)), MonadIO m, IsFixedLayoutChild a) => O.MethodInfo FixedLayoutChildGetTransformMethodInfo a signature where
overloadedMethod = fixedLayoutChildGetTransform
#endif
foreign import ccall "gtk_fixed_layout_child_set_transform" gtk_fixed_layout_child_set_transform ::
Ptr FixedLayoutChild ->
Ptr Gsk.Transform.Transform ->
IO ()
fixedLayoutChildSetTransform ::
(B.CallStack.HasCallStack, MonadIO m, IsFixedLayoutChild a) =>
a
-> Gsk.Transform.Transform
-> m ()
fixedLayoutChildSetTransform :: a -> Transform -> m ()
fixedLayoutChildSetTransform a
child Transform
transform = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr FixedLayoutChild
child' <- a -> IO (Ptr FixedLayoutChild)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
child
Ptr Transform
transform' <- Transform -> IO (Ptr Transform)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr Transform
transform
Ptr FixedLayoutChild -> Ptr Transform -> IO ()
gtk_fixed_layout_child_set_transform Ptr FixedLayoutChild
child' Ptr Transform
transform'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
child
Transform -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr Transform
transform
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data FixedLayoutChildSetTransformMethodInfo
instance (signature ~ (Gsk.Transform.Transform -> m ()), MonadIO m, IsFixedLayoutChild a) => O.MethodInfo FixedLayoutChildSetTransformMethodInfo a signature where
overloadedMethod = fixedLayoutChildSetTransform
#endif