gi-poppler-0.18.17: GI/Poppler/Objects/Layer.hs
{- |
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.Poppler.Objects.Layer
(
-- * Exported types
Layer(..) ,
IsLayer ,
toLayer ,
noLayer ,
-- * Methods
-- ** getRadioButtonGroupId #method:getRadioButtonGroupId#
#if ENABLE_OVERLOADING
LayerGetRadioButtonGroupIdMethodInfo ,
#endif
layerGetRadioButtonGroupId ,
-- ** getTitle #method:getTitle#
#if ENABLE_OVERLOADING
LayerGetTitleMethodInfo ,
#endif
layerGetTitle ,
-- ** hide #method:hide#
#if ENABLE_OVERLOADING
LayerHideMethodInfo ,
#endif
layerHide ,
-- ** isParent #method:isParent#
#if ENABLE_OVERLOADING
LayerIsParentMethodInfo ,
#endif
layerIsParent ,
-- ** isVisible #method:isVisible#
#if ENABLE_OVERLOADING
LayerIsVisibleMethodInfo ,
#endif
layerIsVisible ,
-- ** show #method:show#
#if ENABLE_OVERLOADING
LayerShowMethodInfo ,
#endif
layerShow ,
) 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
-- | Memory-managed wrapper type.
newtype Layer = Layer (ManagedPtr Layer)
foreign import ccall "poppler_layer_get_type"
c_poppler_layer_get_type :: IO GType
instance GObject Layer where
gobjectType = c_poppler_layer_get_type
-- | Type class for types which can be safely cast to `Layer`, for instance with `toLayer`.
class (GObject o, O.IsDescendantOf Layer o) => IsLayer o
instance (GObject o, O.IsDescendantOf Layer o) => IsLayer o
instance O.HasParentTypes Layer
type instance O.ParentTypes Layer = '[GObject.Object.Object]
-- | Cast to `Layer`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toLayer :: (MonadIO m, IsLayer o) => o -> m Layer
toLayer = liftIO . unsafeCastTo Layer
-- | A convenience alias for `Nothing` :: `Maybe` `Layer`.
noLayer :: Maybe Layer
noLayer = Nothing
#if ENABLE_OVERLOADING
type family ResolveLayerMethod (t :: Symbol) (o :: *) :: * where
ResolveLayerMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveLayerMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveLayerMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveLayerMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveLayerMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveLayerMethod "hide" o = LayerHideMethodInfo
ResolveLayerMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveLayerMethod "isParent" o = LayerIsParentMethodInfo
ResolveLayerMethod "isVisible" o = LayerIsVisibleMethodInfo
ResolveLayerMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveLayerMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveLayerMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveLayerMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveLayerMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveLayerMethod "show" o = LayerShowMethodInfo
ResolveLayerMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveLayerMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveLayerMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveLayerMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveLayerMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveLayerMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveLayerMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveLayerMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveLayerMethod "getRadioButtonGroupId" o = LayerGetRadioButtonGroupIdMethodInfo
ResolveLayerMethod "getTitle" o = LayerGetTitleMethodInfo
ResolveLayerMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveLayerMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveLayerMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveLayerMethod t Layer, O.MethodInfo info Layer p) => OL.IsLabel t (Layer -> 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 Layer
type instance O.AttributeList Layer = LayerAttributeList
type LayerAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList Layer = LayerSignalList
type LayerSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
-- method Layer::get_radio_button_group_id
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "layer", argType = TInterface (Name {namespace = "Poppler", name = "Layer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #PopplerLayer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TInt)
-- throws : False
-- Skip return : False
foreign import ccall "poppler_layer_get_radio_button_group_id" poppler_layer_get_radio_button_group_id ::
Ptr Layer -> -- layer : TInterface (Name {namespace = "Poppler", name = "Layer"})
IO Int32
{- |
Returns the numeric ID the radio button group associated with /@layer@/.
/Since: 0.12/
-}
layerGetRadioButtonGroupId ::
(B.CallStack.HasCallStack, MonadIO m, IsLayer a) =>
a
{- ^ /@layer@/: a 'GI.Poppler.Objects.Layer.Layer' -}
-> m Int32
{- ^ __Returns:__ the ID of the radio button group associated with /@layer@/,
or 0 if the layer is not associated to any radio button group -}
layerGetRadioButtonGroupId layer = liftIO $ do
layer' <- unsafeManagedPtrCastPtr layer
result <- poppler_layer_get_radio_button_group_id layer'
touchManagedPtr layer
return result
#if ENABLE_OVERLOADING
data LayerGetRadioButtonGroupIdMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsLayer a) => O.MethodInfo LayerGetRadioButtonGroupIdMethodInfo a signature where
overloadedMethod _ = layerGetRadioButtonGroupId
#endif
-- method Layer::get_title
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "layer", argType = TInterface (Name {namespace = "Poppler", name = "Layer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #PopplerLayer", 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 "poppler_layer_get_title" poppler_layer_get_title ::
Ptr Layer -> -- layer : TInterface (Name {namespace = "Poppler", name = "Layer"})
IO CString
{- |
Returns the name of the layer suitable for
presentation as a title in a viewer\'s GUI
/Since: 0.12/
-}
layerGetTitle ::
(B.CallStack.HasCallStack, MonadIO m, IsLayer a) =>
a
{- ^ /@layer@/: a 'GI.Poppler.Objects.Layer.Layer' -}
-> m T.Text
{- ^ __Returns:__ a string containing the title of the layer -}
layerGetTitle layer = liftIO $ do
layer' <- unsafeManagedPtrCastPtr layer
result <- poppler_layer_get_title layer'
checkUnexpectedReturnNULL "layerGetTitle" result
result' <- cstringToText result
touchManagedPtr layer
return result'
#if ENABLE_OVERLOADING
data LayerGetTitleMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsLayer a) => O.MethodInfo LayerGetTitleMethodInfo a signature where
overloadedMethod _ = layerGetTitle
#endif
-- method Layer::hide
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "layer", argType = TInterface (Name {namespace = "Poppler", name = "Layer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #PopplerLayer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False
foreign import ccall "poppler_layer_hide" poppler_layer_hide ::
Ptr Layer -> -- layer : TInterface (Name {namespace = "Poppler", name = "Layer"})
IO ()
{- |
Hides /@layer@/. If /@layer@/ is the parent of other nested layers,
such layers will be also hidden and will be blocked until /@layer@/
is shown again
/Since: 0.12/
-}
layerHide ::
(B.CallStack.HasCallStack, MonadIO m, IsLayer a) =>
a
{- ^ /@layer@/: a 'GI.Poppler.Objects.Layer.Layer' -}
-> m ()
layerHide layer = liftIO $ do
layer' <- unsafeManagedPtrCastPtr layer
poppler_layer_hide layer'
touchManagedPtr layer
return ()
#if ENABLE_OVERLOADING
data LayerHideMethodInfo
instance (signature ~ (m ()), MonadIO m, IsLayer a) => O.MethodInfo LayerHideMethodInfo a signature where
overloadedMethod _ = layerHide
#endif
-- method Layer::is_parent
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "layer", argType = TInterface (Name {namespace = "Poppler", name = "Layer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #PopplerLayer", 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 "poppler_layer_is_parent" poppler_layer_is_parent ::
Ptr Layer -> -- layer : TInterface (Name {namespace = "Poppler", name = "Layer"})
IO CInt
{- |
Returns whether /@layer@/ is parent of other nested layers.
/Since: 0.12/
-}
layerIsParent ::
(B.CallStack.HasCallStack, MonadIO m, IsLayer a) =>
a
{- ^ /@layer@/: a 'GI.Poppler.Objects.Layer.Layer' -}
-> m Bool
{- ^ __Returns:__ 'True' if /@layer@/ is a parent layer -}
layerIsParent layer = liftIO $ do
layer' <- unsafeManagedPtrCastPtr layer
result <- poppler_layer_is_parent layer'
let result' = (/= 0) result
touchManagedPtr layer
return result'
#if ENABLE_OVERLOADING
data LayerIsParentMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsLayer a) => O.MethodInfo LayerIsParentMethodInfo a signature where
overloadedMethod _ = layerIsParent
#endif
-- method Layer::is_visible
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "layer", argType = TInterface (Name {namespace = "Poppler", name = "Layer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #PopplerLayer", 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 "poppler_layer_is_visible" poppler_layer_is_visible ::
Ptr Layer -> -- layer : TInterface (Name {namespace = "Poppler", name = "Layer"})
IO CInt
{- |
Returns whether /@layer@/ is visible
/Since: 0.12/
-}
layerIsVisible ::
(B.CallStack.HasCallStack, MonadIO m, IsLayer a) =>
a
{- ^ /@layer@/: a 'GI.Poppler.Objects.Layer.Layer' -}
-> m Bool
{- ^ __Returns:__ 'True' if /@layer@/ is visible -}
layerIsVisible layer = liftIO $ do
layer' <- unsafeManagedPtrCastPtr layer
result <- poppler_layer_is_visible layer'
let result' = (/= 0) result
touchManagedPtr layer
return result'
#if ENABLE_OVERLOADING
data LayerIsVisibleMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsLayer a) => O.MethodInfo LayerIsVisibleMethodInfo a signature where
overloadedMethod _ = layerIsVisible
#endif
-- method Layer::show
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "layer", argType = TInterface (Name {namespace = "Poppler", name = "Layer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #PopplerLayer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False
foreign import ccall "poppler_layer_show" poppler_layer_show ::
Ptr Layer -> -- layer : TInterface (Name {namespace = "Poppler", name = "Layer"})
IO ()
{- |
Shows /@layer@/
/Since: 0.12/
-}
layerShow ::
(B.CallStack.HasCallStack, MonadIO m, IsLayer a) =>
a
{- ^ /@layer@/: a 'GI.Poppler.Objects.Layer.Layer' -}
-> m ()
layerShow layer = liftIO $ do
layer' <- unsafeManagedPtrCastPtr layer
poppler_layer_show layer'
touchManagedPtr layer
return ()
#if ENABLE_OVERLOADING
data LayerShowMethodInfo
instance (signature ~ (m ()), MonadIO m, IsLayer a) => O.MethodInfo LayerShowMethodInfo a signature where
overloadedMethod _ = layerShow
#endif