#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.GtkSource.Objects.CompletionContext
(
CompletionContext(..) ,
IsCompletionContext ,
toCompletionContext ,
noCompletionContext ,
#if ENABLE_OVERLOADING
CompletionContextAddProposalsMethodInfo ,
#endif
completionContextAddProposals ,
#if ENABLE_OVERLOADING
CompletionContextGetActivationMethodInfo,
#endif
completionContextGetActivation ,
#if ENABLE_OVERLOADING
CompletionContextGetIterMethodInfo ,
#endif
completionContextGetIter ,
#if ENABLE_OVERLOADING
CompletionContextActivationPropertyInfo ,
#endif
#if ENABLE_OVERLOADING
completionContextActivation ,
#endif
constructCompletionContextActivation ,
getCompletionContextActivation ,
setCompletionContextActivation ,
#if ENABLE_OVERLOADING
CompletionContextCompletionPropertyInfo ,
#endif
#if ENABLE_OVERLOADING
completionContextCompletion ,
#endif
constructCompletionContextCompletion ,
getCompletionContextCompletion ,
#if ENABLE_OVERLOADING
CompletionContextIterPropertyInfo ,
#endif
clearCompletionContextIter ,
#if ENABLE_OVERLOADING
completionContextIter ,
#endif
constructCompletionContextIter ,
getCompletionContextIter ,
setCompletionContextIter ,
C_CompletionContextCancelledCallback ,
CompletionContextCancelledCallback ,
#if ENABLE_OVERLOADING
CompletionContextCancelledSignalInfo ,
#endif
afterCompletionContextCancelled ,
genClosure_CompletionContextCancelled ,
mk_CompletionContextCancelledCallback ,
noCompletionContextCancelledCallback ,
onCompletionContextCancelled ,
wrap_CompletionContextCancelledCallback ,
) 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
import qualified GI.Gtk.Structs.TextIter as Gtk.TextIter
import {-# SOURCE #-} qualified GI.GtkSource.Flags as GtkSource.Flags
import {-# SOURCE #-} qualified GI.GtkSource.Interfaces.CompletionProposal as GtkSource.CompletionProposal
import {-# SOURCE #-} qualified GI.GtkSource.Interfaces.CompletionProvider as GtkSource.CompletionProvider
import {-# SOURCE #-} qualified GI.GtkSource.Objects.Completion as GtkSource.Completion
newtype CompletionContext = CompletionContext (ManagedPtr CompletionContext)
foreign import ccall "gtk_source_completion_context_get_type"
c_gtk_source_completion_context_get_type :: IO GType
instance GObject CompletionContext where
gobjectType = c_gtk_source_completion_context_get_type
class (GObject o, O.IsDescendantOf CompletionContext o) => IsCompletionContext o
instance (GObject o, O.IsDescendantOf CompletionContext o) => IsCompletionContext o
instance O.HasParentTypes CompletionContext
type instance O.ParentTypes CompletionContext = '[GObject.Object.Object]
toCompletionContext :: (MonadIO m, IsCompletionContext o) => o -> m CompletionContext
toCompletionContext = liftIO . unsafeCastTo CompletionContext
noCompletionContext :: Maybe CompletionContext
noCompletionContext = Nothing
#if ENABLE_OVERLOADING
type family ResolveCompletionContextMethod (t :: Symbol) (o :: *) :: * where
ResolveCompletionContextMethod "addProposals" o = CompletionContextAddProposalsMethodInfo
ResolveCompletionContextMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveCompletionContextMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveCompletionContextMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveCompletionContextMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveCompletionContextMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveCompletionContextMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveCompletionContextMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveCompletionContextMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveCompletionContextMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveCompletionContextMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveCompletionContextMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveCompletionContextMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveCompletionContextMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveCompletionContextMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveCompletionContextMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveCompletionContextMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveCompletionContextMethod "getActivation" o = CompletionContextGetActivationMethodInfo
ResolveCompletionContextMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveCompletionContextMethod "getIter" o = CompletionContextGetIterMethodInfo
ResolveCompletionContextMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveCompletionContextMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveCompletionContextMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveCompletionContextMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveCompletionContextMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveCompletionContextMethod t CompletionContext, O.MethodInfo info CompletionContext p) => OL.IsLabel t (CompletionContext -> 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
type CompletionContextCancelledCallback =
IO ()
noCompletionContextCancelledCallback :: Maybe CompletionContextCancelledCallback
noCompletionContextCancelledCallback = Nothing
type C_CompletionContextCancelledCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_CompletionContextCancelledCallback :: C_CompletionContextCancelledCallback -> IO (FunPtr C_CompletionContextCancelledCallback)
genClosure_CompletionContextCancelled :: MonadIO m => CompletionContextCancelledCallback -> m (GClosure C_CompletionContextCancelledCallback)
genClosure_CompletionContextCancelled cb = liftIO $ do
let cb' = wrap_CompletionContextCancelledCallback cb
mk_CompletionContextCancelledCallback cb' >>= B.GClosure.newGClosure
wrap_CompletionContextCancelledCallback ::
CompletionContextCancelledCallback ->
C_CompletionContextCancelledCallback
wrap_CompletionContextCancelledCallback _cb _ _ = do
_cb
onCompletionContextCancelled :: (IsCompletionContext a, MonadIO m) => a -> CompletionContextCancelledCallback -> m SignalHandlerId
onCompletionContextCancelled obj cb = liftIO $ do
let cb' = wrap_CompletionContextCancelledCallback cb
cb'' <- mk_CompletionContextCancelledCallback cb'
connectSignalFunPtr obj "cancelled" cb'' SignalConnectBefore
afterCompletionContextCancelled :: (IsCompletionContext a, MonadIO m) => a -> CompletionContextCancelledCallback -> m SignalHandlerId
afterCompletionContextCancelled obj cb = liftIO $ do
let cb' = wrap_CompletionContextCancelledCallback cb
cb'' <- mk_CompletionContextCancelledCallback cb'
connectSignalFunPtr obj "cancelled" cb'' SignalConnectAfter
getCompletionContextActivation :: (MonadIO m, IsCompletionContext o) => o -> m [GtkSource.Flags.CompletionActivation]
getCompletionContextActivation obj = liftIO $ B.Properties.getObjectPropertyFlags obj "activation"
setCompletionContextActivation :: (MonadIO m, IsCompletionContext o) => o -> [GtkSource.Flags.CompletionActivation] -> m ()
setCompletionContextActivation obj val = liftIO $ B.Properties.setObjectPropertyFlags obj "activation" val
constructCompletionContextActivation :: (IsCompletionContext o) => [GtkSource.Flags.CompletionActivation] -> IO (GValueConstruct o)
constructCompletionContextActivation val = B.Properties.constructObjectPropertyFlags "activation" val
#if ENABLE_OVERLOADING
data CompletionContextActivationPropertyInfo
instance AttrInfo CompletionContextActivationPropertyInfo where
type AttrAllowedOps CompletionContextActivationPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint CompletionContextActivationPropertyInfo = (~) [GtkSource.Flags.CompletionActivation]
type AttrBaseTypeConstraint CompletionContextActivationPropertyInfo = IsCompletionContext
type AttrGetType CompletionContextActivationPropertyInfo = [GtkSource.Flags.CompletionActivation]
type AttrLabel CompletionContextActivationPropertyInfo = "activation"
type AttrOrigin CompletionContextActivationPropertyInfo = CompletionContext
attrGet _ = getCompletionContextActivation
attrSet _ = setCompletionContextActivation
attrConstruct _ = constructCompletionContextActivation
attrClear _ = undefined
#endif
getCompletionContextCompletion :: (MonadIO m, IsCompletionContext o) => o -> m (Maybe GtkSource.Completion.Completion)
getCompletionContextCompletion obj = liftIO $ B.Properties.getObjectPropertyObject obj "completion" GtkSource.Completion.Completion
constructCompletionContextCompletion :: (IsCompletionContext o, GtkSource.Completion.IsCompletion a) => a -> IO (GValueConstruct o)
constructCompletionContextCompletion val = B.Properties.constructObjectPropertyObject "completion" (Just val)
#if ENABLE_OVERLOADING
data CompletionContextCompletionPropertyInfo
instance AttrInfo CompletionContextCompletionPropertyInfo where
type AttrAllowedOps CompletionContextCompletionPropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint CompletionContextCompletionPropertyInfo = GtkSource.Completion.IsCompletion
type AttrBaseTypeConstraint CompletionContextCompletionPropertyInfo = IsCompletionContext
type AttrGetType CompletionContextCompletionPropertyInfo = (Maybe GtkSource.Completion.Completion)
type AttrLabel CompletionContextCompletionPropertyInfo = "completion"
type AttrOrigin CompletionContextCompletionPropertyInfo = CompletionContext
attrGet _ = getCompletionContextCompletion
attrSet _ = undefined
attrConstruct _ = constructCompletionContextCompletion
attrClear _ = undefined
#endif
getCompletionContextIter :: (MonadIO m, IsCompletionContext o) => o -> m (Maybe Gtk.TextIter.TextIter)
getCompletionContextIter obj = liftIO $ B.Properties.getObjectPropertyBoxed obj "iter" Gtk.TextIter.TextIter
setCompletionContextIter :: (MonadIO m, IsCompletionContext o) => o -> Gtk.TextIter.TextIter -> m ()
setCompletionContextIter obj val = liftIO $ B.Properties.setObjectPropertyBoxed obj "iter" (Just val)
constructCompletionContextIter :: (IsCompletionContext o) => Gtk.TextIter.TextIter -> IO (GValueConstruct o)
constructCompletionContextIter val = B.Properties.constructObjectPropertyBoxed "iter" (Just val)
clearCompletionContextIter :: (MonadIO m, IsCompletionContext o) => o -> m ()
clearCompletionContextIter obj = liftIO $ B.Properties.setObjectPropertyBoxed obj "iter" (Nothing :: Maybe Gtk.TextIter.TextIter)
#if ENABLE_OVERLOADING
data CompletionContextIterPropertyInfo
instance AttrInfo CompletionContextIterPropertyInfo where
type AttrAllowedOps CompletionContextIterPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint CompletionContextIterPropertyInfo = (~) Gtk.TextIter.TextIter
type AttrBaseTypeConstraint CompletionContextIterPropertyInfo = IsCompletionContext
type AttrGetType CompletionContextIterPropertyInfo = (Maybe Gtk.TextIter.TextIter)
type AttrLabel CompletionContextIterPropertyInfo = "iter"
type AttrOrigin CompletionContextIterPropertyInfo = CompletionContext
attrGet _ = getCompletionContextIter
attrSet _ = setCompletionContextIter
attrConstruct _ = constructCompletionContextIter
attrClear _ = clearCompletionContextIter
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList CompletionContext
type instance O.AttributeList CompletionContext = CompletionContextAttributeList
type CompletionContextAttributeList = ('[ '("activation", CompletionContextActivationPropertyInfo), '("completion", CompletionContextCompletionPropertyInfo), '("iter", CompletionContextIterPropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
completionContextActivation :: AttrLabelProxy "activation"
completionContextActivation = AttrLabelProxy
completionContextCompletion :: AttrLabelProxy "completion"
completionContextCompletion = AttrLabelProxy
completionContextIter :: AttrLabelProxy "iter"
completionContextIter = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
data CompletionContextCancelledSignalInfo
instance SignalInfo CompletionContextCancelledSignalInfo where
type HaskellCallbackType CompletionContextCancelledSignalInfo = CompletionContextCancelledCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_CompletionContextCancelledCallback cb
cb'' <- mk_CompletionContextCancelledCallback cb'
connectSignalFunPtr obj "cancelled" cb'' connectMode
type instance O.SignalList CompletionContext = CompletionContextSignalList
type CompletionContextSignalList = ('[ '("cancelled", CompletionContextCancelledSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gtk_source_completion_context_add_proposals" gtk_source_completion_context_add_proposals ::
Ptr CompletionContext ->
Ptr GtkSource.CompletionProvider.CompletionProvider ->
Ptr (GList (Ptr GtkSource.CompletionProposal.CompletionProposal)) ->
CInt ->
IO ()
completionContextAddProposals ::
(B.CallStack.HasCallStack, MonadIO m, IsCompletionContext a, GtkSource.CompletionProvider.IsCompletionProvider b, GtkSource.CompletionProposal.IsCompletionProposal c) =>
a
-> b
-> [c]
-> Bool
-> m ()
completionContextAddProposals context provider proposals finished = liftIO $ do
context' <- unsafeManagedPtrCastPtr context
provider' <- unsafeManagedPtrCastPtr provider
proposals' <- mapM unsafeManagedPtrCastPtr proposals
proposals'' <- packGList proposals'
let finished' = (fromIntegral . fromEnum) finished
gtk_source_completion_context_add_proposals context' provider' proposals'' finished'
touchManagedPtr context
touchManagedPtr provider
mapM_ touchManagedPtr proposals
g_list_free proposals''
return ()
#if ENABLE_OVERLOADING
data CompletionContextAddProposalsMethodInfo
instance (signature ~ (b -> [c] -> Bool -> m ()), MonadIO m, IsCompletionContext a, GtkSource.CompletionProvider.IsCompletionProvider b, GtkSource.CompletionProposal.IsCompletionProposal c) => O.MethodInfo CompletionContextAddProposalsMethodInfo a signature where
overloadedMethod _ = completionContextAddProposals
#endif
foreign import ccall "gtk_source_completion_context_get_activation" gtk_source_completion_context_get_activation ::
Ptr CompletionContext ->
IO CUInt
completionContextGetActivation ::
(B.CallStack.HasCallStack, MonadIO m, IsCompletionContext a) =>
a
-> m [GtkSource.Flags.CompletionActivation]
completionContextGetActivation context = liftIO $ do
context' <- unsafeManagedPtrCastPtr context
result <- gtk_source_completion_context_get_activation context'
let result' = wordToGFlags result
touchManagedPtr context
return result'
#if ENABLE_OVERLOADING
data CompletionContextGetActivationMethodInfo
instance (signature ~ (m [GtkSource.Flags.CompletionActivation]), MonadIO m, IsCompletionContext a) => O.MethodInfo CompletionContextGetActivationMethodInfo a signature where
overloadedMethod _ = completionContextGetActivation
#endif
foreign import ccall "gtk_source_completion_context_get_iter" gtk_source_completion_context_get_iter ::
Ptr CompletionContext ->
Ptr Gtk.TextIter.TextIter ->
IO CInt
completionContextGetIter ::
(B.CallStack.HasCallStack, MonadIO m, IsCompletionContext a) =>
a
-> m ((Bool, Gtk.TextIter.TextIter))
completionContextGetIter context = liftIO $ do
context' <- unsafeManagedPtrCastPtr context
iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter)
result <- gtk_source_completion_context_get_iter context' iter
let result' = (/= 0) result
iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter
touchManagedPtr context
return (result', iter')
#if ENABLE_OVERLOADING
data CompletionContextGetIterMethodInfo
instance (signature ~ (m ((Bool, Gtk.TextIter.TextIter))), MonadIO m, IsCompletionContext a) => O.MethodInfo CompletionContextGetIterMethodInfo a signature where
overloadedMethod _ = completionContextGetIter
#endif