gi-gio-0.2.44.12: GI/Gio/Interfaces/Action.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}
module GI.Gio.Interfaces.Action
(
-- * Exported types
Action(..) ,
noAction ,
ActionK ,
toAction ,
-- * Methods
-- ** actionActivate
actionActivate ,
-- ** actionChangeState
actionChangeState ,
-- ** actionGetEnabled
actionGetEnabled ,
-- ** actionGetName
actionGetName ,
-- ** actionGetParameterType
actionGetParameterType ,
-- ** actionGetState
actionGetState ,
-- ** actionGetStateHint
actionGetStateHint ,
-- ** actionGetStateType
actionGetStateType ,
-- * Properties
-- ** Enabled
ActionEnabledPropertyInfo ,
getActionEnabled ,
-- ** Name
ActionNamePropertyInfo ,
getActionName ,
-- ** ParameterType
ActionParameterTypePropertyInfo ,
getActionParameterType ,
-- ** State
ActionStatePropertyInfo ,
getActionState ,
-- ** StateType
ActionStateTypePropertyInfo ,
getActionStateType ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.Gio.Types
import GI.Gio.Callbacks
import qualified GI.GLib as GLib
import qualified GI.GObject as GObject
-- interface Action
newtype Action = Action (ForeignPtr Action)
noAction :: Maybe Action
noAction = Nothing
-- VVV Prop "enabled"
-- Type: TBasicType TBoolean
-- Flags: [PropertyReadable]
getActionEnabled :: (MonadIO m, ActionK o) => o -> m Bool
getActionEnabled obj = liftIO $ getObjectPropertyBool obj "enabled"
data ActionEnabledPropertyInfo
instance AttrInfo ActionEnabledPropertyInfo where
type AttrAllowedOps ActionEnabledPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint ActionEnabledPropertyInfo = (~) ()
type AttrBaseTypeConstraint ActionEnabledPropertyInfo = ActionK
type AttrGetType ActionEnabledPropertyInfo = Bool
type AttrLabel ActionEnabledPropertyInfo = "Action::enabled"
attrGet _ = getActionEnabled
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "name"
-- Type: TBasicType TUTF8
-- Flags: [PropertyReadable]
getActionName :: (MonadIO m, ActionK o) => o -> m T.Text
getActionName obj = liftIO $ getObjectPropertyString obj "name"
data ActionNamePropertyInfo
instance AttrInfo ActionNamePropertyInfo where
type AttrAllowedOps ActionNamePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint ActionNamePropertyInfo = (~) ()
type AttrBaseTypeConstraint ActionNamePropertyInfo = ActionK
type AttrGetType ActionNamePropertyInfo = T.Text
type AttrLabel ActionNamePropertyInfo = "Action::name"
attrGet _ = getActionName
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "parameter-type"
-- Type: TInterface "GLib" "VariantType"
-- Flags: [PropertyReadable]
getActionParameterType :: (MonadIO m, ActionK o) => o -> m GLib.VariantType
getActionParameterType obj = liftIO $ getObjectPropertyBoxed obj "parameter-type" GLib.VariantType
data ActionParameterTypePropertyInfo
instance AttrInfo ActionParameterTypePropertyInfo where
type AttrAllowedOps ActionParameterTypePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint ActionParameterTypePropertyInfo = (~) ()
type AttrBaseTypeConstraint ActionParameterTypePropertyInfo = ActionK
type AttrGetType ActionParameterTypePropertyInfo = GLib.VariantType
type AttrLabel ActionParameterTypePropertyInfo = "Action::parameter-type"
attrGet _ = getActionParameterType
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "state"
-- Type: TVariant
-- Flags: [PropertyReadable]
getActionState :: (MonadIO m, ActionK o) => o -> m GVariant
getActionState obj = liftIO $ getObjectPropertyVariant obj "state"
data ActionStatePropertyInfo
instance AttrInfo ActionStatePropertyInfo where
type AttrAllowedOps ActionStatePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint ActionStatePropertyInfo = (~) ()
type AttrBaseTypeConstraint ActionStatePropertyInfo = ActionK
type AttrGetType ActionStatePropertyInfo = GVariant
type AttrLabel ActionStatePropertyInfo = "Action::state"
attrGet _ = getActionState
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "state-type"
-- Type: TInterface "GLib" "VariantType"
-- Flags: [PropertyReadable]
getActionStateType :: (MonadIO m, ActionK o) => o -> m GLib.VariantType
getActionStateType obj = liftIO $ getObjectPropertyBoxed obj "state-type" GLib.VariantType
data ActionStateTypePropertyInfo
instance AttrInfo ActionStateTypePropertyInfo where
type AttrAllowedOps ActionStateTypePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint ActionStateTypePropertyInfo = (~) ()
type AttrBaseTypeConstraint ActionStateTypePropertyInfo = ActionK
type AttrGetType ActionStateTypePropertyInfo = GLib.VariantType
type AttrLabel ActionStateTypePropertyInfo = "Action::state-type"
attrGet _ = getActionStateType
attrSet _ = undefined
attrConstruct _ = undefined
type instance AttributeList Action = ActionAttributeList
type ActionAttributeList = ('[ '("enabled", ActionEnabledPropertyInfo), '("name", ActionNamePropertyInfo), '("parameter-type", ActionParameterTypePropertyInfo), '("state", ActionStatePropertyInfo), '("state-type", ActionStateTypePropertyInfo)] :: [(Symbol, *)])
type instance SignalList Action = ActionSignalList
type ActionSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "g_action_get_type"
c_g_action_get_type :: IO GType
type instance ParentTypes Action = ActionParentTypes
type ActionParentTypes = '[GObject.Object]
instance GObject Action where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_g_action_get_type
class GObject o => ActionK o
instance (GObject o, IsDescendantOf Action o) => ActionK o
toAction :: ActionK o => o -> IO Action
toAction = unsafeCastTo Action
-- method Action::activate
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "parameter", argType = TVariant, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "parameter", argType = TVariant, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_action_activate" g_action_activate ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
Ptr GVariant -> -- parameter : TVariant
IO ()
actionActivate ::
(MonadIO m, ActionK a) =>
a -> -- _obj
Maybe (GVariant) -> -- parameter
m ()
actionActivate _obj parameter = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
maybeParameter <- case parameter of
Nothing -> return nullPtr
Just jParameter -> do
let jParameter' = unsafeManagedPtrGetPtr jParameter
return jParameter'
g_action_activate _obj' maybeParameter
touchManagedPtr _obj
return ()
-- method Action::change_state
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TVariant, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TVariant, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "g_action_change_state" g_action_change_state ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
Ptr GVariant -> -- value : TVariant
IO ()
actionChangeState ::
(MonadIO m, ActionK a) =>
a -> -- _obj
GVariant -> -- value
m ()
actionChangeState _obj value = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let value' = unsafeManagedPtrGetPtr value
g_action_change_state _obj' value'
touchManagedPtr _obj
return ()
-- method Action::get_enabled
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "g_action_get_enabled" g_action_get_enabled ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
IO CInt
actionGetEnabled ::
(MonadIO m, ActionK a) =>
a -> -- _obj
m Bool
actionGetEnabled _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_action_get_enabled _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method Action::get_name
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TUTF8
-- throws : False
-- Skip return : False
foreign import ccall "g_action_get_name" g_action_get_name ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
IO CString
actionGetName ::
(MonadIO m, ActionK a) =>
a -> -- _obj
m T.Text
actionGetName _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_action_get_name _obj'
checkUnexpectedReturnNULL "g_action_get_name" result
result' <- cstringToText result
touchManagedPtr _obj
return result'
-- method Action::get_parameter_type
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "GLib" "VariantType"
-- throws : False
-- Skip return : False
foreign import ccall "g_action_get_parameter_type" g_action_get_parameter_type ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
IO (Ptr GLib.VariantType)
actionGetParameterType ::
(MonadIO m, ActionK a) =>
a -> -- _obj
m GLib.VariantType
actionGetParameterType _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_action_get_parameter_type _obj'
checkUnexpectedReturnNULL "g_action_get_parameter_type" result
result' <- (newBoxed GLib.VariantType) result
touchManagedPtr _obj
return result'
-- method Action::get_state
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TVariant
-- throws : False
-- Skip return : False
foreign import ccall "g_action_get_state" g_action_get_state ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
IO (Ptr GVariant)
actionGetState ::
(MonadIO m, ActionK a) =>
a -> -- _obj
m GVariant
actionGetState _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_action_get_state _obj'
checkUnexpectedReturnNULL "g_action_get_state" result
result' <- wrapGVariantPtr result
touchManagedPtr _obj
return result'
-- method Action::get_state_hint
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TVariant
-- throws : False
-- Skip return : False
foreign import ccall "g_action_get_state_hint" g_action_get_state_hint ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
IO (Ptr GVariant)
actionGetStateHint ::
(MonadIO m, ActionK a) =>
a -> -- _obj
m GVariant
actionGetStateHint _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_action_get_state_hint _obj'
checkUnexpectedReturnNULL "g_action_get_state_hint" result
result' <- wrapGVariantPtr result
touchManagedPtr _obj
return result'
-- method Action::get_state_type
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gio" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "GLib" "VariantType"
-- throws : False
-- Skip return : False
foreign import ccall "g_action_get_state_type" g_action_get_state_type ::
Ptr Action -> -- _obj : TInterface "Gio" "Action"
IO (Ptr GLib.VariantType)
actionGetStateType ::
(MonadIO m, ActionK a) =>
a -> -- _obj
m GLib.VariantType
actionGetStateType _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- g_action_get_state_type _obj'
checkUnexpectedReturnNULL "g_action_get_state_type" result
result' <- (newBoxed GLib.VariantType) result
touchManagedPtr _obj
return result'