{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if !defined(__HADDOCK_VERSION__)
#define ENABLE_OVERLOADING
#endif
module GI.Atk.Interfaces.Document
(
Document(..) ,
IsDocument ,
toDocument ,
#if defined(ENABLE_OVERLOADING)
ResolveDocumentMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
DocumentGetAttributeValueMethodInfo ,
#endif
documentGetAttributeValue ,
#if defined(ENABLE_OVERLOADING)
DocumentGetAttributesMethodInfo ,
#endif
documentGetAttributes ,
#if defined(ENABLE_OVERLOADING)
DocumentGetCurrentPageNumberMethodInfo ,
#endif
documentGetCurrentPageNumber ,
#if defined(ENABLE_OVERLOADING)
DocumentGetDocumentMethodInfo ,
#endif
documentGetDocument ,
#if defined(ENABLE_OVERLOADING)
DocumentGetDocumentTypeMethodInfo ,
#endif
documentGetDocumentType ,
#if defined(ENABLE_OVERLOADING)
DocumentGetLocaleMethodInfo ,
#endif
documentGetLocale ,
#if defined(ENABLE_OVERLOADING)
DocumentGetPageCountMethodInfo ,
#endif
documentGetPageCount ,
#if defined(ENABLE_OVERLOADING)
DocumentGetTextSelectionsMethodInfo ,
#endif
documentGetTextSelections ,
#if defined(ENABLE_OVERLOADING)
DocumentSetAttributeValueMethodInfo ,
#endif
documentSetAttributeValue ,
#if defined(ENABLE_OVERLOADING)
DocumentSetTextSelectionsMethodInfo ,
#endif
documentSetTextSelections ,
DocumentDocumentAttributeChangedCallback,
#if defined(ENABLE_OVERLOADING)
DocumentDocumentAttributeChangedSignalInfo,
#endif
afterDocumentDocumentAttributeChanged ,
onDocumentDocumentAttributeChanged ,
DocumentLoadCompleteCallback ,
#if defined(ENABLE_OVERLOADING)
DocumentLoadCompleteSignalInfo ,
#endif
afterDocumentLoadComplete ,
onDocumentLoadComplete ,
DocumentLoadStoppedCallback ,
#if defined(ENABLE_OVERLOADING)
DocumentLoadStoppedSignalInfo ,
#endif
afterDocumentLoadStopped ,
onDocumentLoadStopped ,
DocumentPageChangedCallback ,
#if defined(ENABLE_OVERLOADING)
DocumentPageChangedSignalInfo ,
#endif
afterDocumentPageChanged ,
onDocumentPageChanged ,
DocumentReloadCallback ,
#if defined(ENABLE_OVERLOADING)
DocumentReloadSignalInfo ,
#endif
afterDocumentReload ,
onDocumentReload ,
) 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.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
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.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
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 GHC.Records as R
import qualified Data.Word as DW
import qualified Data.Int as DI
import qualified System.Posix.Types as SPT
import qualified Foreign.C.Types as FCT
#if MIN_VERSION_base(4,18,0)
import {-# SOURCE #-} qualified GI.Atk.Enums as Atk.Enums
import {-# SOURCE #-} qualified GI.Atk.Objects.Object as Atk.Object
import {-# SOURCE #-} qualified GI.Atk.Objects.Relation as Atk.Relation
import {-# SOURCE #-} qualified GI.Atk.Objects.RelationSet as Atk.RelationSet
import {-# SOURCE #-} qualified GI.Atk.Objects.StateSet as Atk.StateSet
import {-# SOURCE #-} qualified GI.Atk.Structs.PropertyValues as Atk.PropertyValues
import {-# SOURCE #-} qualified GI.Atk.Structs.TextSelection as Atk.TextSelection
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.GObject.Structs.ValueArray as GObject.ValueArray
#else
import {-# SOURCE #-} qualified GI.Atk.Structs.TextSelection as Atk.TextSelection
import qualified GI.GObject.Objects.Object as GObject.Object
#endif
newtype Document = Document (SP.ManagedPtr Document)
deriving (Document -> Document -> Bool
(Document -> Document -> Bool)
-> (Document -> Document -> Bool) -> Eq Document
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Document -> Document -> Bool
== :: Document -> Document -> Bool
$c/= :: Document -> Document -> Bool
/= :: Document -> Document -> Bool
Eq)
instance SP.ManagedPtrNewtype Document where
toManagedPtr :: Document -> ManagedPtr Document
toManagedPtr (Document ManagedPtr Document
p) = ManagedPtr Document
p
foreign import ccall "atk_document_get_type"
c_atk_document_get_type :: IO B.Types.GType
instance B.Types.TypedObject Document where
glibType :: IO GType
glibType = IO GType
c_atk_document_get_type
instance B.Types.GObject Document
class (SP.GObject o, O.IsDescendantOf Document o) => IsDocument o
instance (SP.GObject o, O.IsDescendantOf Document o) => IsDocument o
instance O.HasParentTypes Document
type instance O.ParentTypes Document = '[GObject.Object.Object]
toDocument :: (MIO.MonadIO m, IsDocument o) => o -> m Document
toDocument :: forall (m :: * -> *) o.
(MonadIO m, IsDocument o) =>
o -> m Document
toDocument = IO Document -> m Document
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Document -> m Document)
-> (o -> IO Document) -> o -> m Document
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr Document -> Document) -> o -> IO Document
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr Document -> Document
Document
instance B.GValue.IsGValue (Maybe Document) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_atk_document_get_type
gvalueSet_ :: Ptr GValue -> Maybe Document -> IO ()
gvalueSet_ Ptr GValue
gv Maybe Document
P.Nothing = Ptr GValue -> Ptr Document -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr Document
forall a. Ptr a
FP.nullPtr :: FP.Ptr Document)
gvalueSet_ Ptr GValue
gv (P.Just Document
obj) = Document -> (Ptr Document -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Document
obj (Ptr GValue -> Ptr Document -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe Document)
gvalueGet_ Ptr GValue
gv = do
ptr <- Ptr GValue -> IO (Ptr Document)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr Document)
if ptr /= FP.nullPtr
then P.Just <$> B.ManagedPtr.newObject Document ptr
else return P.Nothing
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Document
type instance O.AttributeList Document = DocumentAttributeList
type DocumentAttributeList = ('[ ] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveDocumentMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveDocumentMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveDocumentMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveDocumentMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveDocumentMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveDocumentMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveDocumentMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveDocumentMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveDocumentMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveDocumentMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveDocumentMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveDocumentMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveDocumentMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveDocumentMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveDocumentMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveDocumentMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveDocumentMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveDocumentMethod "getAttributeValue" o = DocumentGetAttributeValueMethodInfo
ResolveDocumentMethod "getAttributes" o = DocumentGetAttributesMethodInfo
ResolveDocumentMethod "getCurrentPageNumber" o = DocumentGetCurrentPageNumberMethodInfo
ResolveDocumentMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveDocumentMethod "getDocument" o = DocumentGetDocumentMethodInfo
ResolveDocumentMethod "getDocumentType" o = DocumentGetDocumentTypeMethodInfo
ResolveDocumentMethod "getLocale" o = DocumentGetLocaleMethodInfo
ResolveDocumentMethod "getPageCount" o = DocumentGetPageCountMethodInfo
ResolveDocumentMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveDocumentMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveDocumentMethod "getTextSelections" o = DocumentGetTextSelectionsMethodInfo
ResolveDocumentMethod "setAttributeValue" o = DocumentSetAttributeValueMethodInfo
ResolveDocumentMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveDocumentMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveDocumentMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveDocumentMethod "setTextSelections" o = DocumentSetTextSelectionsMethodInfo
ResolveDocumentMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDocumentMethod t Document, O.OverloadedMethod info Document p) => OL.IsLabel t (Document -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveDocumentMethod t Document, O.OverloadedMethod info Document p, R.HasField t Document p) => R.HasField t Document p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveDocumentMethod t Document, O.OverloadedMethodInfo info Document) => OL.IsLabel t (O.MethodProxy info Document) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
foreign import ccall "atk_document_get_attribute_value" atk_document_get_attribute_value ::
Ptr Document ->
CString ->
IO CString
documentGetAttributeValue ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> T.Text
-> m (Maybe T.Text)
documentGetAttributeValue :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> Text -> m (Maybe Text)
documentGetAttributeValue a
document Text
attributeName = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
attributeName' <- textToCString attributeName
result <- atk_document_get_attribute_value document' attributeName'
maybeResult <- convertIfNonNull result $ \CString
result' -> do
result'' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result'
return result''
touchManagedPtr document
freeMem attributeName'
return maybeResult
#if defined(ENABLE_OVERLOADING)
data DocumentGetAttributeValueMethodInfo
instance (signature ~ (T.Text -> m (Maybe T.Text)), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetAttributeValueMethodInfo a signature where
overloadedMethod = documentGetAttributeValue
instance O.OverloadedMethodInfo DocumentGetAttributeValueMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetAttributeValue",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetAttributeValue"
})
#endif
foreign import ccall "atk_document_get_attributes" atk_document_get_attributes ::
Ptr Document ->
IO (Ptr (GSList (Ptr ())))
documentGetAttributes ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> m ([Ptr ()])
documentGetAttributes :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> m [Ptr ()]
documentGetAttributes a
document = IO [Ptr ()] -> m [Ptr ()]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [Ptr ()] -> m [Ptr ()]) -> IO [Ptr ()] -> m [Ptr ()]
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
result <- atk_document_get_attributes document'
result' <- unpackGSList result
touchManagedPtr document
return result'
#if defined(ENABLE_OVERLOADING)
data DocumentGetAttributesMethodInfo
instance (signature ~ (m ([Ptr ()])), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetAttributesMethodInfo a signature where
overloadedMethod = documentGetAttributes
instance O.OverloadedMethodInfo DocumentGetAttributesMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetAttributes",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetAttributes"
})
#endif
foreign import ccall "atk_document_get_current_page_number" atk_document_get_current_page_number ::
Ptr Document ->
IO Int32
documentGetCurrentPageNumber ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> m Int32
documentGetCurrentPageNumber :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> m Int32
documentGetCurrentPageNumber a
document = IO Int32 -> m Int32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
result <- atk_document_get_current_page_number document'
touchManagedPtr document
return result
#if defined(ENABLE_OVERLOADING)
data DocumentGetCurrentPageNumberMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetCurrentPageNumberMethodInfo a signature where
overloadedMethod = documentGetCurrentPageNumber
instance O.OverloadedMethodInfo DocumentGetCurrentPageNumberMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetCurrentPageNumber",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetCurrentPageNumber"
})
#endif
foreign import ccall "atk_document_get_document" atk_document_get_document ::
Ptr Document ->
IO (Ptr ())
{-# DEPRECATED documentGetDocument ["Since 2.12. /@document@/ is already a representation of","the document. Use it directly, or one of its children, as an","instance of the DOM."] #-}
documentGetDocument ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> m (Ptr ())
documentGetDocument :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> m (Ptr ())
documentGetDocument a
document = IO (Ptr ()) -> m (Ptr ())
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Ptr ()) -> m (Ptr ())) -> IO (Ptr ()) -> m (Ptr ())
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
result <- atk_document_get_document document'
touchManagedPtr document
return result
#if defined(ENABLE_OVERLOADING)
data DocumentGetDocumentMethodInfo
instance (signature ~ (m (Ptr ())), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetDocumentMethodInfo a signature where
overloadedMethod = documentGetDocument
instance O.OverloadedMethodInfo DocumentGetDocumentMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetDocument",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetDocument"
})
#endif
foreign import ccall "atk_document_get_document_type" atk_document_get_document_type ::
Ptr Document ->
IO CString
{-# DEPRECATED documentGetDocumentType ["Since 2.12. Please use 'GI.Atk.Interfaces.Document.documentGetAttributes' to","ask for the document type if it applies."] #-}
documentGetDocumentType ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> m T.Text
documentGetDocumentType :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> m Text
documentGetDocumentType a
document = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
result <- atk_document_get_document_type document'
checkUnexpectedReturnNULL "documentGetDocumentType" result
result' <- cstringToText result
touchManagedPtr document
return result'
#if defined(ENABLE_OVERLOADING)
data DocumentGetDocumentTypeMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetDocumentTypeMethodInfo a signature where
overloadedMethod = documentGetDocumentType
instance O.OverloadedMethodInfo DocumentGetDocumentTypeMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetDocumentType",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetDocumentType"
})
#endif
foreign import ccall "atk_document_get_locale" atk_document_get_locale ::
Ptr Document ->
IO CString
{-# DEPRECATED documentGetLocale ["(Since version 2.7.90)","Please use 'GI.Atk.Objects.Object.objectGetObjectLocale' instead."] #-}
documentGetLocale ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> m T.Text
documentGetLocale :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> m Text
documentGetLocale a
document = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
result <- atk_document_get_locale document'
checkUnexpectedReturnNULL "documentGetLocale" result
result' <- cstringToText result
touchManagedPtr document
return result'
#if defined(ENABLE_OVERLOADING)
data DocumentGetLocaleMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetLocaleMethodInfo a signature where
overloadedMethod = documentGetLocale
instance O.OverloadedMethodInfo DocumentGetLocaleMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetLocale",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetLocale"
})
#endif
foreign import ccall "atk_document_get_page_count" atk_document_get_page_count ::
Ptr Document ->
IO Int32
documentGetPageCount ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> m Int32
documentGetPageCount :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> m Int32
documentGetPageCount a
document = IO Int32 -> m Int32
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
result <- atk_document_get_page_count document'
touchManagedPtr document
return result
#if defined(ENABLE_OVERLOADING)
data DocumentGetPageCountMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetPageCountMethodInfo a signature where
overloadedMethod = documentGetPageCount
instance O.OverloadedMethodInfo DocumentGetPageCountMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetPageCount",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetPageCount"
})
#endif
foreign import ccall "atk_document_get_text_selections" atk_document_get_text_selections ::
Ptr Document ->
IO (Ptr (GArray (Ptr Atk.TextSelection.TextSelection)))
documentGetTextSelections ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> m [Atk.TextSelection.TextSelection]
documentGetTextSelections :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> m [TextSelection]
documentGetTextSelections a
document = IO [TextSelection] -> m [TextSelection]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [TextSelection] -> m [TextSelection])
-> IO [TextSelection] -> m [TextSelection]
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
result <- atk_document_get_text_selections document'
checkUnexpectedReturnNULL "documentGetTextSelections" result
result' <- unpackGArray result
result'' <- mapM (wrapPtr Atk.TextSelection.TextSelection) result'
unrefGArray result
touchManagedPtr document
return result''
#if defined(ENABLE_OVERLOADING)
data DocumentGetTextSelectionsMethodInfo
instance (signature ~ (m [Atk.TextSelection.TextSelection]), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentGetTextSelectionsMethodInfo a signature where
overloadedMethod = documentGetTextSelections
instance O.OverloadedMethodInfo DocumentGetTextSelectionsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentGetTextSelections",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentGetTextSelections"
})
#endif
foreign import ccall "atk_document_set_attribute_value" atk_document_set_attribute_value ::
Ptr Document ->
CString ->
CString ->
IO CInt
documentSetAttributeValue ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> T.Text
-> T.Text
-> m Bool
documentSetAttributeValue :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> Text -> Text -> m Bool
documentSetAttributeValue a
document Text
attributeName Text
attributeValue = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
attributeName' <- textToCString attributeName
attributeValue' <- textToCString attributeValue
result <- atk_document_set_attribute_value document' attributeName' attributeValue'
let result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
touchManagedPtr document
freeMem attributeName'
freeMem attributeValue'
return result'
#if defined(ENABLE_OVERLOADING)
data DocumentSetAttributeValueMethodInfo
instance (signature ~ (T.Text -> T.Text -> m Bool), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentSetAttributeValueMethodInfo a signature where
overloadedMethod = documentSetAttributeValue
instance O.OverloadedMethodInfo DocumentSetAttributeValueMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentSetAttributeValue",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentSetAttributeValue"
})
#endif
foreign import ccall "atk_document_set_text_selections" atk_document_set_text_selections ::
Ptr Document ->
Ptr (GArray (Ptr Atk.TextSelection.TextSelection)) ->
IO CInt
documentSetTextSelections ::
(B.CallStack.HasCallStack, MonadIO m, IsDocument a) =>
a
-> [Atk.TextSelection.TextSelection]
-> m Bool
documentSetTextSelections :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsDocument a) =>
a -> [TextSelection] -> m Bool
documentSetTextSelections a
document [TextSelection]
selections = IO Bool -> m Bool
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
document' <- a -> IO (Ptr Document)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
document
selections' <- mapM unsafeManagedPtrGetPtr selections
selections'' <- packGArray selections'
result <- atk_document_set_text_selections document' selections''
let result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
touchManagedPtr document
mapM_ touchManagedPtr selections
unrefGArray selections''
return result'
#if defined(ENABLE_OVERLOADING)
data DocumentSetTextSelectionsMethodInfo
instance (signature ~ ([Atk.TextSelection.TextSelection] -> m Bool), MonadIO m, IsDocument a) => O.OverloadedMethod DocumentSetTextSelectionsMethodInfo a signature where
overloadedMethod = documentSetTextSelections
instance O.OverloadedMethodInfo DocumentSetTextSelectionsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document.documentSetTextSelections",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#v:documentSetTextSelections"
})
#endif
type DocumentDocumentAttributeChangedCallback =
T.Text
-> T.Text
-> IO ()
type C_DocumentDocumentAttributeChangedCallback =
Ptr Document ->
CString ->
CString ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DocumentDocumentAttributeChangedCallback :: C_DocumentDocumentAttributeChangedCallback -> IO (FunPtr C_DocumentDocumentAttributeChangedCallback)
wrap_DocumentDocumentAttributeChangedCallback ::
GObject a => (a -> DocumentDocumentAttributeChangedCallback) ->
C_DocumentDocumentAttributeChangedCallback
wrap_DocumentDocumentAttributeChangedCallback :: forall a.
GObject a =>
(a -> DocumentDocumentAttributeChangedCallback)
-> C_DocumentDocumentAttributeChangedCallback
wrap_DocumentDocumentAttributeChangedCallback a -> DocumentDocumentAttributeChangedCallback
gi'cb Ptr Document
gi'selfPtr CString
arg1 CString
arg2 Ptr ()
_ = do
arg1' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
arg1
arg2' <- cstringToText arg2
B.ManagedPtr.withNewObject gi'selfPtr $ \Document
gi'self -> a -> DocumentDocumentAttributeChangedCallback
gi'cb (Document -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Document
gi'self) Text
arg1' Text
arg2'
onDocumentDocumentAttributeChanged :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentDocumentAttributeChangedCallback) -> m SignalHandlerId
onDocumentDocumentAttributeChanged :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a
-> ((?self::a) => DocumentDocumentAttributeChangedCallback)
-> m SignalHandlerId
onDocumentDocumentAttributeChanged a
obj (?self::a) => DocumentDocumentAttributeChangedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> DocumentDocumentAttributeChangedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => DocumentDocumentAttributeChangedCallback
DocumentDocumentAttributeChangedCallback
cb
let wrapped' :: C_DocumentDocumentAttributeChangedCallback
wrapped' = (a -> DocumentDocumentAttributeChangedCallback)
-> C_DocumentDocumentAttributeChangedCallback
forall a.
GObject a =>
(a -> DocumentDocumentAttributeChangedCallback)
-> C_DocumentDocumentAttributeChangedCallback
wrap_DocumentDocumentAttributeChangedCallback a -> DocumentDocumentAttributeChangedCallback
wrapped
wrapped'' <- C_DocumentDocumentAttributeChangedCallback
-> IO (FunPtr C_DocumentDocumentAttributeChangedCallback)
mk_DocumentDocumentAttributeChangedCallback C_DocumentDocumentAttributeChangedCallback
wrapped'
connectSignalFunPtr obj "document-attribute-changed" wrapped'' SignalConnectBefore Nothing
afterDocumentDocumentAttributeChanged :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentDocumentAttributeChangedCallback) -> m SignalHandlerId
afterDocumentDocumentAttributeChanged :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a
-> ((?self::a) => DocumentDocumentAttributeChangedCallback)
-> m SignalHandlerId
afterDocumentDocumentAttributeChanged a
obj (?self::a) => DocumentDocumentAttributeChangedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> DocumentDocumentAttributeChangedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => DocumentDocumentAttributeChangedCallback
DocumentDocumentAttributeChangedCallback
cb
let wrapped' :: C_DocumentDocumentAttributeChangedCallback
wrapped' = (a -> DocumentDocumentAttributeChangedCallback)
-> C_DocumentDocumentAttributeChangedCallback
forall a.
GObject a =>
(a -> DocumentDocumentAttributeChangedCallback)
-> C_DocumentDocumentAttributeChangedCallback
wrap_DocumentDocumentAttributeChangedCallback a -> DocumentDocumentAttributeChangedCallback
wrapped
wrapped'' <- C_DocumentDocumentAttributeChangedCallback
-> IO (FunPtr C_DocumentDocumentAttributeChangedCallback)
mk_DocumentDocumentAttributeChangedCallback C_DocumentDocumentAttributeChangedCallback
wrapped'
connectSignalFunPtr obj "document-attribute-changed" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data DocumentDocumentAttributeChangedSignalInfo
instance SignalInfo DocumentDocumentAttributeChangedSignalInfo where
type HaskellCallbackType DocumentDocumentAttributeChangedSignalInfo = DocumentDocumentAttributeChangedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DocumentDocumentAttributeChangedCallback cb
cb'' <- mk_DocumentDocumentAttributeChangedCallback cb'
connectSignalFunPtr obj "document-attribute-changed" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document::document-attribute-changed"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#g:signal:documentAttributeChanged"})
#endif
type DocumentLoadCompleteCallback =
IO ()
type C_DocumentLoadCompleteCallback =
Ptr Document ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DocumentLoadCompleteCallback :: C_DocumentLoadCompleteCallback -> IO (FunPtr C_DocumentLoadCompleteCallback)
wrap_DocumentLoadCompleteCallback ::
GObject a => (a -> DocumentLoadCompleteCallback) ->
C_DocumentLoadCompleteCallback
wrap_DocumentLoadCompleteCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentLoadCompleteCallback a -> IO ()
gi'cb Ptr Document
gi'selfPtr Ptr ()
_ = do
Ptr Document -> (Document -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Document
gi'selfPtr ((Document -> IO ()) -> IO ()) -> (Document -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Document
gi'self -> a -> IO ()
gi'cb (Document -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Document
gi'self)
onDocumentLoadComplete :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentLoadCompleteCallback) -> m SignalHandlerId
onDocumentLoadComplete :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onDocumentLoadComplete a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_DocumentLoadCompleteCallback
wrapped' = (a -> IO ()) -> C_DocumentLoadCompleteCallback
forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentLoadCompleteCallback a -> IO ()
wrapped
wrapped'' <- C_DocumentLoadCompleteCallback
-> IO (FunPtr C_DocumentLoadCompleteCallback)
mk_DocumentLoadCompleteCallback C_DocumentLoadCompleteCallback
wrapped'
connectSignalFunPtr obj "load-complete" wrapped'' SignalConnectBefore Nothing
afterDocumentLoadComplete :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentLoadCompleteCallback) -> m SignalHandlerId
afterDocumentLoadComplete :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterDocumentLoadComplete a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_DocumentLoadCompleteCallback
wrapped' = (a -> IO ()) -> C_DocumentLoadCompleteCallback
forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentLoadCompleteCallback a -> IO ()
wrapped
wrapped'' <- C_DocumentLoadCompleteCallback
-> IO (FunPtr C_DocumentLoadCompleteCallback)
mk_DocumentLoadCompleteCallback C_DocumentLoadCompleteCallback
wrapped'
connectSignalFunPtr obj "load-complete" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data DocumentLoadCompleteSignalInfo
instance SignalInfo DocumentLoadCompleteSignalInfo where
type HaskellCallbackType DocumentLoadCompleteSignalInfo = DocumentLoadCompleteCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DocumentLoadCompleteCallback cb
cb'' <- mk_DocumentLoadCompleteCallback cb'
connectSignalFunPtr obj "load-complete" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document::load-complete"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#g:signal:loadComplete"})
#endif
type DocumentLoadStoppedCallback =
IO ()
type C_DocumentLoadStoppedCallback =
Ptr Document ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DocumentLoadStoppedCallback :: C_DocumentLoadStoppedCallback -> IO (FunPtr C_DocumentLoadStoppedCallback)
wrap_DocumentLoadStoppedCallback ::
GObject a => (a -> DocumentLoadStoppedCallback) ->
C_DocumentLoadStoppedCallback
wrap_DocumentLoadStoppedCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentLoadStoppedCallback a -> IO ()
gi'cb Ptr Document
gi'selfPtr Ptr ()
_ = do
Ptr Document -> (Document -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Document
gi'selfPtr ((Document -> IO ()) -> IO ()) -> (Document -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Document
gi'self -> a -> IO ()
gi'cb (Document -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Document
gi'self)
onDocumentLoadStopped :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentLoadStoppedCallback) -> m SignalHandlerId
onDocumentLoadStopped :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onDocumentLoadStopped a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_DocumentLoadCompleteCallback
wrapped' = (a -> IO ()) -> C_DocumentLoadCompleteCallback
forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentLoadStoppedCallback a -> IO ()
wrapped
wrapped'' <- C_DocumentLoadCompleteCallback
-> IO (FunPtr C_DocumentLoadCompleteCallback)
mk_DocumentLoadStoppedCallback C_DocumentLoadCompleteCallback
wrapped'
connectSignalFunPtr obj "load-stopped" wrapped'' SignalConnectBefore Nothing
afterDocumentLoadStopped :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentLoadStoppedCallback) -> m SignalHandlerId
afterDocumentLoadStopped :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterDocumentLoadStopped a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_DocumentLoadCompleteCallback
wrapped' = (a -> IO ()) -> C_DocumentLoadCompleteCallback
forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentLoadStoppedCallback a -> IO ()
wrapped
wrapped'' <- C_DocumentLoadCompleteCallback
-> IO (FunPtr C_DocumentLoadCompleteCallback)
mk_DocumentLoadStoppedCallback C_DocumentLoadCompleteCallback
wrapped'
connectSignalFunPtr obj "load-stopped" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data DocumentLoadStoppedSignalInfo
instance SignalInfo DocumentLoadStoppedSignalInfo where
type HaskellCallbackType DocumentLoadStoppedSignalInfo = DocumentLoadStoppedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DocumentLoadStoppedCallback cb
cb'' <- mk_DocumentLoadStoppedCallback cb'
connectSignalFunPtr obj "load-stopped" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document::load-stopped"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#g:signal:loadStopped"})
#endif
type DocumentPageChangedCallback =
Int32
-> IO ()
type C_DocumentPageChangedCallback =
Ptr Document ->
Int32 ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DocumentPageChangedCallback :: C_DocumentPageChangedCallback -> IO (FunPtr C_DocumentPageChangedCallback)
wrap_DocumentPageChangedCallback ::
GObject a => (a -> DocumentPageChangedCallback) ->
C_DocumentPageChangedCallback
wrap_DocumentPageChangedCallback :: forall a.
GObject a =>
(a -> DocumentPageChangedCallback) -> C_DocumentPageChangedCallback
wrap_DocumentPageChangedCallback a -> DocumentPageChangedCallback
gi'cb Ptr Document
gi'selfPtr Int32
pageNumber Ptr ()
_ = do
Ptr Document -> (Document -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Document
gi'selfPtr ((Document -> IO ()) -> IO ()) -> (Document -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Document
gi'self -> a -> DocumentPageChangedCallback
gi'cb (Document -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Document
gi'self) Int32
pageNumber
onDocumentPageChanged :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentPageChangedCallback) -> m SignalHandlerId
onDocumentPageChanged :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a
-> ((?self::a) => DocumentPageChangedCallback) -> m SignalHandlerId
onDocumentPageChanged a
obj (?self::a) => DocumentPageChangedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> DocumentPageChangedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => DocumentPageChangedCallback
DocumentPageChangedCallback
cb
let wrapped' :: C_DocumentPageChangedCallback
wrapped' = (a -> DocumentPageChangedCallback) -> C_DocumentPageChangedCallback
forall a.
GObject a =>
(a -> DocumentPageChangedCallback) -> C_DocumentPageChangedCallback
wrap_DocumentPageChangedCallback a -> DocumentPageChangedCallback
wrapped
wrapped'' <- C_DocumentPageChangedCallback
-> IO (FunPtr C_DocumentPageChangedCallback)
mk_DocumentPageChangedCallback C_DocumentPageChangedCallback
wrapped'
connectSignalFunPtr obj "page-changed" wrapped'' SignalConnectBefore Nothing
afterDocumentPageChanged :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentPageChangedCallback) -> m SignalHandlerId
afterDocumentPageChanged :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a
-> ((?self::a) => DocumentPageChangedCallback) -> m SignalHandlerId
afterDocumentPageChanged a
obj (?self::a) => DocumentPageChangedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> DocumentPageChangedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => DocumentPageChangedCallback
DocumentPageChangedCallback
cb
let wrapped' :: C_DocumentPageChangedCallback
wrapped' = (a -> DocumentPageChangedCallback) -> C_DocumentPageChangedCallback
forall a.
GObject a =>
(a -> DocumentPageChangedCallback) -> C_DocumentPageChangedCallback
wrap_DocumentPageChangedCallback a -> DocumentPageChangedCallback
wrapped
wrapped'' <- C_DocumentPageChangedCallback
-> IO (FunPtr C_DocumentPageChangedCallback)
mk_DocumentPageChangedCallback C_DocumentPageChangedCallback
wrapped'
connectSignalFunPtr obj "page-changed" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data DocumentPageChangedSignalInfo
instance SignalInfo DocumentPageChangedSignalInfo where
type HaskellCallbackType DocumentPageChangedSignalInfo = DocumentPageChangedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DocumentPageChangedCallback cb
cb'' <- mk_DocumentPageChangedCallback cb'
connectSignalFunPtr obj "page-changed" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document::page-changed"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#g:signal:pageChanged"})
#endif
type DocumentReloadCallback =
IO ()
type C_DocumentReloadCallback =
Ptr Document ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DocumentReloadCallback :: C_DocumentReloadCallback -> IO (FunPtr C_DocumentReloadCallback)
wrap_DocumentReloadCallback ::
GObject a => (a -> DocumentReloadCallback) ->
C_DocumentReloadCallback
wrap_DocumentReloadCallback :: forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentReloadCallback a -> IO ()
gi'cb Ptr Document
gi'selfPtr Ptr ()
_ = do
Ptr Document -> (Document -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr Document
gi'selfPtr ((Document -> IO ()) -> IO ()) -> (Document -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Document
gi'self -> a -> IO ()
gi'cb (Document -> a
forall a b. Coercible a b => a -> b
Coerce.coerce Document
gi'self)
onDocumentReload :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentReloadCallback) -> m SignalHandlerId
onDocumentReload :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
onDocumentReload a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_DocumentLoadCompleteCallback
wrapped' = (a -> IO ()) -> C_DocumentLoadCompleteCallback
forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentReloadCallback a -> IO ()
wrapped
wrapped'' <- C_DocumentLoadCompleteCallback
-> IO (FunPtr C_DocumentLoadCompleteCallback)
mk_DocumentReloadCallback C_DocumentLoadCompleteCallback
wrapped'
connectSignalFunPtr obj "reload" wrapped'' SignalConnectBefore Nothing
afterDocumentReload :: (IsDocument a, MonadIO m) => a -> ((?self :: a) => DocumentReloadCallback) -> m SignalHandlerId
afterDocumentReload :: forall a (m :: * -> *).
(IsDocument a, MonadIO m) =>
a -> ((?self::a) => IO ()) -> m SignalHandlerId
afterDocumentReload a
obj (?self::a) => IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> IO ()
wrapped a
self = let ?self = a
?self::a
self in IO ()
(?self::a) => IO ()
cb
let wrapped' :: C_DocumentLoadCompleteCallback
wrapped' = (a -> IO ()) -> C_DocumentLoadCompleteCallback
forall a.
GObject a =>
(a -> IO ()) -> C_DocumentLoadCompleteCallback
wrap_DocumentReloadCallback a -> IO ()
wrapped
wrapped'' <- C_DocumentLoadCompleteCallback
-> IO (FunPtr C_DocumentLoadCompleteCallback)
mk_DocumentReloadCallback C_DocumentLoadCompleteCallback
wrapped'
connectSignalFunPtr obj "reload" wrapped'' SignalConnectAfter Nothing
#if defined(ENABLE_OVERLOADING)
data DocumentReloadSignalInfo
instance SignalInfo DocumentReloadSignalInfo where
type HaskellCallbackType DocumentReloadSignalInfo = DocumentReloadCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_DocumentReloadCallback cb
cb'' <- mk_DocumentReloadCallback cb'
connectSignalFunPtr obj "reload" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Atk.Interfaces.Document::reload"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-atk-2.0.28/docs/GI-Atk-Interfaces-Document.html#g:signal:reload"})
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList Document = DocumentSignalList
type DocumentSignalList = ('[ '("documentAttributeChanged", DocumentDocumentAttributeChangedSignalInfo), '("loadComplete", DocumentLoadCompleteSignalInfo), '("loadStopped", DocumentLoadStoppedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("pageChanged", DocumentPageChangedSignalInfo), '("reload", DocumentReloadSignalInfo)] :: [(Symbol, DK.Type)])
#endif