gi-atk-0.2.18.13: GI/Atk/Interfaces/EditableText.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.Interfaces.EditableText
(
-- * Exported types
EditableText(..) ,
noEditableText ,
EditableTextK ,
-- * Methods
-- ** editableTextCopyText
EditableTextCopyTextMethodInfo ,
editableTextCopyText ,
-- ** editableTextCutText
EditableTextCutTextMethodInfo ,
editableTextCutText ,
-- ** editableTextDeleteText
EditableTextDeleteTextMethodInfo ,
editableTextDeleteText ,
-- ** editableTextInsertText
EditableTextInsertTextMethodInfo ,
editableTextInsertText ,
-- ** editableTextPasteText
EditableTextPasteTextMethodInfo ,
editableTextPasteText ,
-- ** editableTextSetRunAttributes
EditableTextSetRunAttributesMethodInfo ,
editableTextSetRunAttributes ,
-- ** editableTextSetTextContents
EditableTextSetTextContentsMethodInfo ,
editableTextSetTextContents ,
) 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
-- interface EditableText
newtype EditableText = EditableText (ForeignPtr EditableText)
noEditableText :: Maybe EditableText
noEditableText = Nothing
type family ResolveEditableTextMethod (t :: Symbol) (o :: *) :: * where
ResolveEditableTextMethod "copyText" o = EditableTextCopyTextMethodInfo
ResolveEditableTextMethod "cutText" o = EditableTextCutTextMethodInfo
ResolveEditableTextMethod "deleteText" o = EditableTextDeleteTextMethodInfo
ResolveEditableTextMethod "insertText" o = EditableTextInsertTextMethodInfo
ResolveEditableTextMethod "pasteText" o = EditableTextPasteTextMethodInfo
ResolveEditableTextMethod "setRunAttributes" o = EditableTextSetRunAttributesMethodInfo
ResolveEditableTextMethod "setTextContents" o = EditableTextSetTextContentsMethodInfo
ResolveEditableTextMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveEditableTextMethod t EditableText, MethodInfo info EditableText p) => IsLabelProxy t (EditableText -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveEditableTextMethod t EditableText, MethodInfo info EditableText p) => IsLabel t (EditableText -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
type instance AttributeList EditableText = EditableTextAttributeList
type EditableTextAttributeList = ('[ ] :: [(Symbol, *)])
type instance SignalList EditableText = EditableTextSignalList
type EditableTextSignalList = ('[ ] :: [(Symbol, *)])
class ForeignPtrNewtype a => EditableTextK a
instance (ForeignPtrNewtype o, IsDescendantOf EditableText o) => EditableTextK o
type instance ParentTypes EditableText = EditableTextParentTypes
type EditableTextParentTypes = '[]
-- method EditableText::copy_text
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Atk" "EditableText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_editable_text_copy_text" atk_editable_text_copy_text ::
Ptr EditableText -> -- _obj : TInterface "Atk" "EditableText"
Int32 -> -- start_pos : TBasicType TInt32
Int32 -> -- end_pos : TBasicType TInt32
IO ()
editableTextCopyText ::
(MonadIO m, EditableTextK a) =>
a -- _obj
-> Int32 -- startPos
-> Int32 -- endPos
-> m () -- result
editableTextCopyText _obj startPos endPos = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
atk_editable_text_copy_text _obj' startPos endPos
touchManagedPtr _obj
return ()
data EditableTextCopyTextMethodInfo
instance (signature ~ (Int32 -> Int32 -> m ()), MonadIO m, EditableTextK a) => MethodInfo EditableTextCopyTextMethodInfo a signature where
overloadedMethod _ = editableTextCopyText
-- method EditableText::cut_text
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Atk" "EditableText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_editable_text_cut_text" atk_editable_text_cut_text ::
Ptr EditableText -> -- _obj : TInterface "Atk" "EditableText"
Int32 -> -- start_pos : TBasicType TInt32
Int32 -> -- end_pos : TBasicType TInt32
IO ()
editableTextCutText ::
(MonadIO m, EditableTextK a) =>
a -- _obj
-> Int32 -- startPos
-> Int32 -- endPos
-> m () -- result
editableTextCutText _obj startPos endPos = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
atk_editable_text_cut_text _obj' startPos endPos
touchManagedPtr _obj
return ()
data EditableTextCutTextMethodInfo
instance (signature ~ (Int32 -> Int32 -> m ()), MonadIO m, EditableTextK a) => MethodInfo EditableTextCutTextMethodInfo a signature where
overloadedMethod _ = editableTextCutText
-- method EditableText::delete_text
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Atk" "EditableText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_editable_text_delete_text" atk_editable_text_delete_text ::
Ptr EditableText -> -- _obj : TInterface "Atk" "EditableText"
Int32 -> -- start_pos : TBasicType TInt32
Int32 -> -- end_pos : TBasicType TInt32
IO ()
editableTextDeleteText ::
(MonadIO m, EditableTextK a) =>
a -- _obj
-> Int32 -- startPos
-> Int32 -- endPos
-> m () -- result
editableTextDeleteText _obj startPos endPos = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
atk_editable_text_delete_text _obj' startPos endPos
touchManagedPtr _obj
return ()
data EditableTextDeleteTextMethodInfo
instance (signature ~ (Int32 -> Int32 -> m ()), MonadIO m, EditableTextK a) => MethodInfo EditableTextDeleteTextMethodInfo a signature where
overloadedMethod _ = editableTextDeleteText
-- method EditableText::insert_text
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Atk" "EditableText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "string", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_editable_text_insert_text" atk_editable_text_insert_text ::
Ptr EditableText -> -- _obj : TInterface "Atk" "EditableText"
CString -> -- string : TBasicType TUTF8
Int32 -> -- length : TBasicType TInt32
Int32 -> -- position : TBasicType TInt32
IO ()
editableTextInsertText ::
(MonadIO m, EditableTextK a) =>
a -- _obj
-> T.Text -- string
-> Int32 -- length_
-> Int32 -- position
-> m () -- result
editableTextInsertText _obj string length_ position = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
string' <- textToCString string
atk_editable_text_insert_text _obj' string' length_ position
touchManagedPtr _obj
freeMem string'
return ()
data EditableTextInsertTextMethodInfo
instance (signature ~ (T.Text -> Int32 -> Int32 -> m ()), MonadIO m, EditableTextK a) => MethodInfo EditableTextInsertTextMethodInfo a signature where
overloadedMethod _ = editableTextInsertText
-- method EditableText::paste_text
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Atk" "EditableText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_editable_text_paste_text" atk_editable_text_paste_text ::
Ptr EditableText -> -- _obj : TInterface "Atk" "EditableText"
Int32 -> -- position : TBasicType TInt32
IO ()
editableTextPasteText ::
(MonadIO m, EditableTextK a) =>
a -- _obj
-> Int32 -- position
-> m () -- result
editableTextPasteText _obj position = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
atk_editable_text_paste_text _obj' position
touchManagedPtr _obj
return ()
data EditableTextPasteTextMethodInfo
instance (signature ~ (Int32 -> m ()), MonadIO m, EditableTextK a) => MethodInfo EditableTextPasteTextMethodInfo a signature where
overloadedMethod _ = editableTextPasteText
-- method EditableText::set_run_attributes
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Atk" "EditableText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "attrib_set", argType = TGSList (TBasicType TVoid), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start_offset", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end_offset", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "atk_editable_text_set_run_attributes" atk_editable_text_set_run_attributes ::
Ptr EditableText -> -- _obj : TInterface "Atk" "EditableText"
Ptr (GSList (Ptr ())) -> -- attrib_set : TGSList (TBasicType TVoid)
Int32 -> -- start_offset : TBasicType TInt32
Int32 -> -- end_offset : TBasicType TInt32
IO CInt
editableTextSetRunAttributes ::
(MonadIO m, EditableTextK a) =>
a -- _obj
-> [Ptr ()] -- attribSet
-> Int32 -- startOffset
-> Int32 -- endOffset
-> m Bool -- result
editableTextSetRunAttributes _obj attribSet startOffset endOffset = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
attribSet' <- packGSList attribSet
result <- atk_editable_text_set_run_attributes _obj' attribSet' startOffset endOffset
let result' = (/= 0) result
touchManagedPtr _obj
g_slist_free attribSet'
return result'
data EditableTextSetRunAttributesMethodInfo
instance (signature ~ ([Ptr ()] -> Int32 -> Int32 -> m Bool), MonadIO m, EditableTextK a) => MethodInfo EditableTextSetRunAttributesMethodInfo a signature where
overloadedMethod _ = editableTextSetRunAttributes
-- method EditableText::set_text_contents
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Atk" "EditableText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "string", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_editable_text_set_text_contents" atk_editable_text_set_text_contents ::
Ptr EditableText -> -- _obj : TInterface "Atk" "EditableText"
CString -> -- string : TBasicType TUTF8
IO ()
editableTextSetTextContents ::
(MonadIO m, EditableTextK a) =>
a -- _obj
-> T.Text -- string
-> m () -- result
editableTextSetTextContents _obj string = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
string' <- textToCString string
atk_editable_text_set_text_contents _obj' string'
touchManagedPtr _obj
freeMem string'
return ()
data EditableTextSetTextContentsMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, EditableTextK a) => MethodInfo EditableTextSetTextContentsMethodInfo a signature where
overloadedMethod _ = editableTextSetTextContents