gi-webkit2-4.0.21: GI/WebKit2/Objects/EditorState.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
/No description available in the introspection data./
-}
#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.WebKit2.Objects.EditorState
(
-- * Exported types
EditorState(..) ,
IsEditorState ,
toEditorState ,
noEditorState ,
-- * Methods
-- ** getTypingAttributes #method:getTypingAttributes#
#if ENABLE_OVERLOADING
EditorStateGetTypingAttributesMethodInfo,
#endif
editorStateGetTypingAttributes ,
-- ** isCopyAvailable #method:isCopyAvailable#
#if ENABLE_OVERLOADING
EditorStateIsCopyAvailableMethodInfo ,
#endif
editorStateIsCopyAvailable ,
-- ** isCutAvailable #method:isCutAvailable#
#if ENABLE_OVERLOADING
EditorStateIsCutAvailableMethodInfo ,
#endif
editorStateIsCutAvailable ,
-- ** isPasteAvailable #method:isPasteAvailable#
#if ENABLE_OVERLOADING
EditorStateIsPasteAvailableMethodInfo ,
#endif
editorStateIsPasteAvailable ,
-- ** isRedoAvailable #method:isRedoAvailable#
#if ENABLE_OVERLOADING
EditorStateIsRedoAvailableMethodInfo ,
#endif
editorStateIsRedoAvailable ,
-- ** isUndoAvailable #method:isUndoAvailable#
#if ENABLE_OVERLOADING
EditorStateIsUndoAvailableMethodInfo ,
#endif
editorStateIsUndoAvailable ,
-- * Properties
-- ** typingAttributes #attr:typingAttributes#
{- | Bitmask of 'GI.WebKit2.Flags.EditorTypingAttributes' flags.
See 'GI.WebKit2.Objects.EditorState.editorStateGetTypingAttributes' for more information.
/Since: 2.10/
-}
#if ENABLE_OVERLOADING
EditorStateTypingAttributesPropertyInfo ,
#endif
#if ENABLE_OVERLOADING
editorStateTypingAttributes ,
#endif
getEditorStateTypingAttributes ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.GObject.Objects.Object as GObject.Object
-- | Memory-managed wrapper type.
newtype EditorState = EditorState (ManagedPtr EditorState)
foreign import ccall "webkit_editor_state_get_type"
c_webkit_editor_state_get_type :: IO GType
instance GObject EditorState where
gobjectType = c_webkit_editor_state_get_type
-- | Type class for types which can be safely cast to `EditorState`, for instance with `toEditorState`.
class (GObject o, O.IsDescendantOf EditorState o) => IsEditorState o
instance (GObject o, O.IsDescendantOf EditorState o) => IsEditorState o
instance O.HasParentTypes EditorState
type instance O.ParentTypes EditorState = '[GObject.Object.Object]
-- | Cast to `EditorState`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toEditorState :: (MonadIO m, IsEditorState o) => o -> m EditorState
toEditorState = liftIO . unsafeCastTo EditorState
-- | A convenience alias for `Nothing` :: `Maybe` `EditorState`.
noEditorState :: Maybe EditorState
noEditorState = Nothing
#if ENABLE_OVERLOADING
type family ResolveEditorStateMethod (t :: Symbol) (o :: *) :: * where
ResolveEditorStateMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveEditorStateMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveEditorStateMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveEditorStateMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveEditorStateMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveEditorStateMethod "isCopyAvailable" o = EditorStateIsCopyAvailableMethodInfo
ResolveEditorStateMethod "isCutAvailable" o = EditorStateIsCutAvailableMethodInfo
ResolveEditorStateMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveEditorStateMethod "isPasteAvailable" o = EditorStateIsPasteAvailableMethodInfo
ResolveEditorStateMethod "isRedoAvailable" o = EditorStateIsRedoAvailableMethodInfo
ResolveEditorStateMethod "isUndoAvailable" o = EditorStateIsUndoAvailableMethodInfo
ResolveEditorStateMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveEditorStateMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveEditorStateMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveEditorStateMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveEditorStateMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveEditorStateMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveEditorStateMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveEditorStateMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveEditorStateMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveEditorStateMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveEditorStateMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveEditorStateMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveEditorStateMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveEditorStateMethod "getTypingAttributes" o = EditorStateGetTypingAttributesMethodInfo
ResolveEditorStateMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveEditorStateMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveEditorStateMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveEditorStateMethod t EditorState, O.MethodInfo info EditorState p) => OL.IsLabel t (EditorState -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
-- VVV Prop "typing-attributes"
-- Type: TBasicType TUInt
-- Flags: [PropertyReadable]
-- Nullable: (Just False,Nothing)
{- |
Get the value of the “@typing-attributes@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
@
'Data.GI.Base.Attributes.get' editorState #typingAttributes
@
-}
getEditorStateTypingAttributes :: (MonadIO m, IsEditorState o) => o -> m Word32
getEditorStateTypingAttributes obj = liftIO $ B.Properties.getObjectPropertyUInt32 obj "typing-attributes"
#if ENABLE_OVERLOADING
data EditorStateTypingAttributesPropertyInfo
instance AttrInfo EditorStateTypingAttributesPropertyInfo where
type AttrAllowedOps EditorStateTypingAttributesPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint EditorStateTypingAttributesPropertyInfo = (~) ()
type AttrBaseTypeConstraint EditorStateTypingAttributesPropertyInfo = IsEditorState
type AttrGetType EditorStateTypingAttributesPropertyInfo = Word32
type AttrLabel EditorStateTypingAttributesPropertyInfo = "typing-attributes"
type AttrOrigin EditorStateTypingAttributesPropertyInfo = EditorState
attrGet _ = getEditorStateTypingAttributes
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList EditorState
type instance O.AttributeList EditorState = EditorStateAttributeList
type EditorStateAttributeList = ('[ '("typingAttributes", EditorStateTypingAttributesPropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
editorStateTypingAttributes :: AttrLabelProxy "typingAttributes"
editorStateTypingAttributes = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList EditorState = EditorStateSignalList
type EditorStateSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
-- method EditorState::get_typing_attributes
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "editor_state", argType = TInterface (Name {namespace = "WebKit2", name = "EditorState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitEditorState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TUInt)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_editor_state_get_typing_attributes" webkit_editor_state_get_typing_attributes ::
Ptr EditorState -> -- editor_state : TInterface (Name {namespace = "WebKit2", name = "EditorState"})
IO Word32
{- |
Gets the typing attributes at the current cursor position.
If there is a selection, this returns the typing attributes
of the selected text. Note that in case of a selection,
typing attributes are considered active only when they are
present throughout the selection.
/Since: 2.10/
-}
editorStateGetTypingAttributes ::
(B.CallStack.HasCallStack, MonadIO m, IsEditorState a) =>
a
{- ^ /@editorState@/: a 'GI.WebKit2.Objects.EditorState.EditorState' -}
-> m Word32
{- ^ __Returns:__ a bitmask of 'GI.WebKit2.Flags.EditorTypingAttributes' flags -}
editorStateGetTypingAttributes editorState = liftIO $ do
editorState' <- unsafeManagedPtrCastPtr editorState
result <- webkit_editor_state_get_typing_attributes editorState'
touchManagedPtr editorState
return result
#if ENABLE_OVERLOADING
data EditorStateGetTypingAttributesMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsEditorState a) => O.MethodInfo EditorStateGetTypingAttributesMethodInfo a signature where
overloadedMethod _ = editorStateGetTypingAttributes
#endif
-- method EditorState::is_copy_available
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "editor_state", argType = TInterface (Name {namespace = "WebKit2", name = "EditorState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitEditorState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_editor_state_is_copy_available" webkit_editor_state_is_copy_available ::
Ptr EditorState -> -- editor_state : TInterface (Name {namespace = "WebKit2", name = "EditorState"})
IO CInt
{- |
Gets whether a copy command can be issued.
/Since: 2.20/
-}
editorStateIsCopyAvailable ::
(B.CallStack.HasCallStack, MonadIO m, IsEditorState a) =>
a
{- ^ /@editorState@/: a 'GI.WebKit2.Objects.EditorState.EditorState' -}
-> m Bool
{- ^ __Returns:__ 'True' if copy is currently available -}
editorStateIsCopyAvailable editorState = liftIO $ do
editorState' <- unsafeManagedPtrCastPtr editorState
result <- webkit_editor_state_is_copy_available editorState'
let result' = (/= 0) result
touchManagedPtr editorState
return result'
#if ENABLE_OVERLOADING
data EditorStateIsCopyAvailableMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsEditorState a) => O.MethodInfo EditorStateIsCopyAvailableMethodInfo a signature where
overloadedMethod _ = editorStateIsCopyAvailable
#endif
-- method EditorState::is_cut_available
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "editor_state", argType = TInterface (Name {namespace = "WebKit2", name = "EditorState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitEditorState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_editor_state_is_cut_available" webkit_editor_state_is_cut_available ::
Ptr EditorState -> -- editor_state : TInterface (Name {namespace = "WebKit2", name = "EditorState"})
IO CInt
{- |
Gets whether a cut command can be issued.
/Since: 2.20/
-}
editorStateIsCutAvailable ::
(B.CallStack.HasCallStack, MonadIO m, IsEditorState a) =>
a
{- ^ /@editorState@/: a 'GI.WebKit2.Objects.EditorState.EditorState' -}
-> m Bool
{- ^ __Returns:__ 'True' if cut is currently available -}
editorStateIsCutAvailable editorState = liftIO $ do
editorState' <- unsafeManagedPtrCastPtr editorState
result <- webkit_editor_state_is_cut_available editorState'
let result' = (/= 0) result
touchManagedPtr editorState
return result'
#if ENABLE_OVERLOADING
data EditorStateIsCutAvailableMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsEditorState a) => O.MethodInfo EditorStateIsCutAvailableMethodInfo a signature where
overloadedMethod _ = editorStateIsCutAvailable
#endif
-- method EditorState::is_paste_available
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "editor_state", argType = TInterface (Name {namespace = "WebKit2", name = "EditorState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitEditorState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_editor_state_is_paste_available" webkit_editor_state_is_paste_available ::
Ptr EditorState -> -- editor_state : TInterface (Name {namespace = "WebKit2", name = "EditorState"})
IO CInt
{- |
Gets whether a paste command can be issued.
/Since: 2.20/
-}
editorStateIsPasteAvailable ::
(B.CallStack.HasCallStack, MonadIO m, IsEditorState a) =>
a
{- ^ /@editorState@/: a 'GI.WebKit2.Objects.EditorState.EditorState' -}
-> m Bool
{- ^ __Returns:__ 'True' if paste is currently available -}
editorStateIsPasteAvailable editorState = liftIO $ do
editorState' <- unsafeManagedPtrCastPtr editorState
result <- webkit_editor_state_is_paste_available editorState'
let result' = (/= 0) result
touchManagedPtr editorState
return result'
#if ENABLE_OVERLOADING
data EditorStateIsPasteAvailableMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsEditorState a) => O.MethodInfo EditorStateIsPasteAvailableMethodInfo a signature where
overloadedMethod _ = editorStateIsPasteAvailable
#endif
-- method EditorState::is_redo_available
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "editor_state", argType = TInterface (Name {namespace = "WebKit2", name = "EditorState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitEditorState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_editor_state_is_redo_available" webkit_editor_state_is_redo_available ::
Ptr EditorState -> -- editor_state : TInterface (Name {namespace = "WebKit2", name = "EditorState"})
IO CInt
{- |
Gets whether a redo command can be issued.
/Since: 2.20/
-}
editorStateIsRedoAvailable ::
(B.CallStack.HasCallStack, MonadIO m, IsEditorState a) =>
a
{- ^ /@editorState@/: a 'GI.WebKit2.Objects.EditorState.EditorState' -}
-> m Bool
{- ^ __Returns:__ 'True' if redo is currently available -}
editorStateIsRedoAvailable editorState = liftIO $ do
editorState' <- unsafeManagedPtrCastPtr editorState
result <- webkit_editor_state_is_redo_available editorState'
let result' = (/= 0) result
touchManagedPtr editorState
return result'
#if ENABLE_OVERLOADING
data EditorStateIsRedoAvailableMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsEditorState a) => O.MethodInfo EditorStateIsRedoAvailableMethodInfo a signature where
overloadedMethod _ = editorStateIsRedoAvailable
#endif
-- method EditorState::is_undo_available
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "editor_state", argType = TInterface (Name {namespace = "WebKit2", name = "EditorState"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitEditorState", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False
foreign import ccall "webkit_editor_state_is_undo_available" webkit_editor_state_is_undo_available ::
Ptr EditorState -> -- editor_state : TInterface (Name {namespace = "WebKit2", name = "EditorState"})
IO CInt
{- |
Gets whether an undo command can be issued.
/Since: 2.20/
-}
editorStateIsUndoAvailable ::
(B.CallStack.HasCallStack, MonadIO m, IsEditorState a) =>
a
{- ^ /@editorState@/: a 'GI.WebKit2.Objects.EditorState.EditorState' -}
-> m Bool
{- ^ __Returns:__ 'True' if undo is currently available -}
editorStateIsUndoAvailable editorState = liftIO $ do
editorState' <- unsafeManagedPtrCastPtr editorState
result <- webkit_editor_state_is_undo_available editorState'
let result' = (/= 0) result
touchManagedPtr editorState
return result'
#if ENABLE_OVERLOADING
data EditorStateIsUndoAvailableMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsEditorState a) => O.MethodInfo EditorStateIsUndoAvailableMethodInfo a signature where
overloadedMethod _ = editorStateIsUndoAvailable
#endif