gi-atk-0.2.16.12: GI/Atk/Objects/Hyperlink.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.Atk.Objects.Hyperlink
(
-- * Exported types
Hyperlink(..) ,
HyperlinkK ,
toHyperlink ,
noHyperlink ,
-- * Methods
-- ** hyperlinkGetEndIndex
hyperlinkGetEndIndex ,
-- ** hyperlinkGetNAnchors
hyperlinkGetNAnchors ,
-- ** hyperlinkGetObject
hyperlinkGetObject ,
-- ** hyperlinkGetStartIndex
hyperlinkGetStartIndex ,
-- ** hyperlinkGetUri
hyperlinkGetUri ,
-- ** hyperlinkIsInline
hyperlinkIsInline ,
-- ** hyperlinkIsSelectedLink
hyperlinkIsSelectedLink ,
-- ** hyperlinkIsValid
hyperlinkIsValid ,
-- * Properties
-- ** EndIndex
HyperlinkEndIndexPropertyInfo ,
getHyperlinkEndIndex ,
-- ** NumberOfAnchors
HyperlinkNumberOfAnchorsPropertyInfo ,
getHyperlinkNumberOfAnchors ,
-- ** SelectedLink
HyperlinkSelectedLinkPropertyInfo ,
getHyperlinkSelectedLink ,
-- ** StartIndex
HyperlinkStartIndexPropertyInfo ,
getHyperlinkStartIndex ,
-- * Signals
-- ** LinkActivated
HyperlinkLinkActivatedCallback ,
HyperlinkLinkActivatedCallbackC ,
HyperlinkLinkActivatedSignalInfo ,
afterHyperlinkLinkActivated ,
hyperlinkLinkActivatedCallbackWrapper ,
hyperlinkLinkActivatedClosure ,
mkHyperlinkLinkActivatedCallback ,
noHyperlinkLinkActivatedCallback ,
onHyperlinkLinkActivated ,
) 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.Atk.Types
import GI.Atk.Callbacks
import qualified GI.GObject as GObject
newtype Hyperlink = Hyperlink (ForeignPtr Hyperlink)
foreign import ccall "atk_hyperlink_get_type"
c_atk_hyperlink_get_type :: IO GType
type instance ParentTypes Hyperlink = HyperlinkParentTypes
type HyperlinkParentTypes = '[GObject.Object, Action]
instance GObject Hyperlink where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_atk_hyperlink_get_type
class GObject o => HyperlinkK o
instance (GObject o, IsDescendantOf Hyperlink o) => HyperlinkK o
toHyperlink :: HyperlinkK o => o -> IO Hyperlink
toHyperlink = unsafeCastTo Hyperlink
noHyperlink :: Maybe Hyperlink
noHyperlink = Nothing
-- signal Hyperlink::link-activated
type HyperlinkLinkActivatedCallback =
IO ()
noHyperlinkLinkActivatedCallback :: Maybe HyperlinkLinkActivatedCallback
noHyperlinkLinkActivatedCallback = Nothing
type HyperlinkLinkActivatedCallbackC =
Ptr () -> -- object
Ptr () -> -- user_data
IO ()
foreign import ccall "wrapper"
mkHyperlinkLinkActivatedCallback :: HyperlinkLinkActivatedCallbackC -> IO (FunPtr HyperlinkLinkActivatedCallbackC)
hyperlinkLinkActivatedClosure :: HyperlinkLinkActivatedCallback -> IO Closure
hyperlinkLinkActivatedClosure cb = newCClosure =<< mkHyperlinkLinkActivatedCallback wrapped
where wrapped = hyperlinkLinkActivatedCallbackWrapper cb
hyperlinkLinkActivatedCallbackWrapper ::
HyperlinkLinkActivatedCallback ->
Ptr () ->
Ptr () ->
IO ()
hyperlinkLinkActivatedCallbackWrapper _cb _ _ = do
_cb
onHyperlinkLinkActivated :: (GObject a, MonadIO m) => a -> HyperlinkLinkActivatedCallback -> m SignalHandlerId
onHyperlinkLinkActivated obj cb = liftIO $ connectHyperlinkLinkActivated obj cb SignalConnectBefore
afterHyperlinkLinkActivated :: (GObject a, MonadIO m) => a -> HyperlinkLinkActivatedCallback -> m SignalHandlerId
afterHyperlinkLinkActivated obj cb = connectHyperlinkLinkActivated obj cb SignalConnectAfter
connectHyperlinkLinkActivated :: (GObject a, MonadIO m) =>
a -> HyperlinkLinkActivatedCallback -> SignalConnectMode -> m SignalHandlerId
connectHyperlinkLinkActivated obj cb after = liftIO $ do
cb' <- mkHyperlinkLinkActivatedCallback (hyperlinkLinkActivatedCallbackWrapper cb)
connectSignalFunPtr obj "link-activated" cb' after
-- VVV Prop "end-index"
-- Type: TBasicType TInt32
-- Flags: [PropertyReadable]
getHyperlinkEndIndex :: (MonadIO m, HyperlinkK o) => o -> m Int32
getHyperlinkEndIndex obj = liftIO $ getObjectPropertyCInt obj "end-index"
data HyperlinkEndIndexPropertyInfo
instance AttrInfo HyperlinkEndIndexPropertyInfo where
type AttrAllowedOps HyperlinkEndIndexPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint HyperlinkEndIndexPropertyInfo = (~) ()
type AttrBaseTypeConstraint HyperlinkEndIndexPropertyInfo = HyperlinkK
type AttrGetType HyperlinkEndIndexPropertyInfo = Int32
type AttrLabel HyperlinkEndIndexPropertyInfo = "Hyperlink::end-index"
attrGet _ = getHyperlinkEndIndex
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "number-of-anchors"
-- Type: TBasicType TInt32
-- Flags: [PropertyReadable]
getHyperlinkNumberOfAnchors :: (MonadIO m, HyperlinkK o) => o -> m Int32
getHyperlinkNumberOfAnchors obj = liftIO $ getObjectPropertyCInt obj "number-of-anchors"
data HyperlinkNumberOfAnchorsPropertyInfo
instance AttrInfo HyperlinkNumberOfAnchorsPropertyInfo where
type AttrAllowedOps HyperlinkNumberOfAnchorsPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint HyperlinkNumberOfAnchorsPropertyInfo = (~) ()
type AttrBaseTypeConstraint HyperlinkNumberOfAnchorsPropertyInfo = HyperlinkK
type AttrGetType HyperlinkNumberOfAnchorsPropertyInfo = Int32
type AttrLabel HyperlinkNumberOfAnchorsPropertyInfo = "Hyperlink::number-of-anchors"
attrGet _ = getHyperlinkNumberOfAnchors
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "selected-link"
-- Type: TBasicType TBoolean
-- Flags: [PropertyReadable]
getHyperlinkSelectedLink :: (MonadIO m, HyperlinkK o) => o -> m Bool
getHyperlinkSelectedLink obj = liftIO $ getObjectPropertyBool obj "selected-link"
data HyperlinkSelectedLinkPropertyInfo
instance AttrInfo HyperlinkSelectedLinkPropertyInfo where
type AttrAllowedOps HyperlinkSelectedLinkPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint HyperlinkSelectedLinkPropertyInfo = (~) ()
type AttrBaseTypeConstraint HyperlinkSelectedLinkPropertyInfo = HyperlinkK
type AttrGetType HyperlinkSelectedLinkPropertyInfo = Bool
type AttrLabel HyperlinkSelectedLinkPropertyInfo = "Hyperlink::selected-link"
attrGet _ = getHyperlinkSelectedLink
attrSet _ = undefined
attrConstruct _ = undefined
-- VVV Prop "start-index"
-- Type: TBasicType TInt32
-- Flags: [PropertyReadable]
getHyperlinkStartIndex :: (MonadIO m, HyperlinkK o) => o -> m Int32
getHyperlinkStartIndex obj = liftIO $ getObjectPropertyCInt obj "start-index"
data HyperlinkStartIndexPropertyInfo
instance AttrInfo HyperlinkStartIndexPropertyInfo where
type AttrAllowedOps HyperlinkStartIndexPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint HyperlinkStartIndexPropertyInfo = (~) ()
type AttrBaseTypeConstraint HyperlinkStartIndexPropertyInfo = HyperlinkK
type AttrGetType HyperlinkStartIndexPropertyInfo = Int32
type AttrLabel HyperlinkStartIndexPropertyInfo = "Hyperlink::start-index"
attrGet _ = getHyperlinkStartIndex
attrSet _ = undefined
attrConstruct _ = undefined
type instance AttributeList Hyperlink = HyperlinkAttributeList
type HyperlinkAttributeList = ('[ '("end-index", HyperlinkEndIndexPropertyInfo), '("number-of-anchors", HyperlinkNumberOfAnchorsPropertyInfo), '("selected-link", HyperlinkSelectedLinkPropertyInfo), '("start-index", HyperlinkStartIndexPropertyInfo)] :: [(Symbol, *)])
data HyperlinkLinkActivatedSignalInfo
instance SignalInfo HyperlinkLinkActivatedSignalInfo where
type HaskellCallbackType HyperlinkLinkActivatedSignalInfo = HyperlinkLinkActivatedCallback
connectSignal _ = connectHyperlinkLinkActivated
type instance SignalList Hyperlink = HyperlinkSignalList
type HyperlinkSignalList = ('[ '("link-activated", HyperlinkLinkActivatedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method Hyperlink::get_end_index
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TInt32
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_get_end_index" atk_hyperlink_get_end_index ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
IO Int32
hyperlinkGetEndIndex ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
m Int32
hyperlinkGetEndIndex _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_get_end_index _obj'
touchManagedPtr _obj
return result
-- method Hyperlink::get_n_anchors
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TInt32
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_get_n_anchors" atk_hyperlink_get_n_anchors ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
IO Int32
hyperlinkGetNAnchors ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
m Int32
hyperlinkGetNAnchors _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_get_n_anchors _obj'
touchManagedPtr _obj
return result
-- method Hyperlink::get_object
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "Atk" "Object"
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_get_object" atk_hyperlink_get_object ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
Int32 -> -- i : TBasicType TInt32
IO (Ptr Object)
hyperlinkGetObject ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
Int32 -> -- i
m Object
hyperlinkGetObject _obj i = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_get_object _obj' i
checkUnexpectedReturnNULL "atk_hyperlink_get_object" result
result' <- (newObject Object) result
touchManagedPtr _obj
return result'
-- method Hyperlink::get_start_index
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TInt32
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_get_start_index" atk_hyperlink_get_start_index ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
IO Int32
hyperlinkGetStartIndex ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
m Int32
hyperlinkGetStartIndex _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_get_start_index _obj'
touchManagedPtr _obj
return result
-- method Hyperlink::get_uri
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TUTF8
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_get_uri" atk_hyperlink_get_uri ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
Int32 -> -- i : TBasicType TInt32
IO CString
hyperlinkGetUri ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
Int32 -> -- i
m T.Text
hyperlinkGetUri _obj i = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_get_uri _obj' i
checkUnexpectedReturnNULL "atk_hyperlink_get_uri" result
result' <- cstringToText result
freeMem result
touchManagedPtr _obj
return result'
-- method Hyperlink::is_inline
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_is_inline" atk_hyperlink_is_inline ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
IO CInt
hyperlinkIsInline ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
m Bool
hyperlinkIsInline _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_is_inline _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method Hyperlink::is_selected_link
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_is_selected_link" atk_hyperlink_is_selected_link ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
IO CInt
{-# DEPRECATED hyperlinkIsSelectedLink ["(Since version 1.8)","Please use ATK_STATE_FOCUSABLE for all links,","and ATK_STATE_FOCUSED for focused links."]#-}
hyperlinkIsSelectedLink ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
m Bool
hyperlinkIsSelectedLink _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_is_selected_link _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method Hyperlink::is_valid
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "Hyperlink", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "atk_hyperlink_is_valid" atk_hyperlink_is_valid ::
Ptr Hyperlink -> -- _obj : TInterface "Atk" "Hyperlink"
IO CInt
hyperlinkIsValid ::
(MonadIO m, HyperlinkK a) =>
a -> -- _obj
m Bool
hyperlinkIsValid _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_hyperlink_is_valid _obj'
let result' = (/= 0) result
touchManagedPtr _obj
return result'