     -- sourceCompletionShow,
     sourceCompletionHide,
     sourceCompletionGetInfoWindow,
+    sourceCompletionCreateContext,
     sourceCompletionMoveWindow,
     sourceCompletionBlockInteractive,
     sourceCompletionUnblockInteractive,

) where

import Control.Monad	(liftM)

import System.Glib.FFI
import System.Glib.UTFString

  {#call gtk_source_completion_get_info_window #}
    (toSourceCompletion sc)

-- | Create a new 'SourceCompletionContext' for completion. The position at which the completion using
-- the new context will consider completion can be provider by position. If position is 'Nothing', the
-- current cursor position will be used.
sourceCompletionCreateContext :: SourceCompletionClass sc => sc
                              -> Maybe TextIter
                              -> IO SourceCompletionContext
sourceCompletionCreateContext sc iter = 
  makeNewGObject mkSourceCompletionContext $
  {#call gtk_source_completion_create_context #}
    (toSourceCompletion sc)
    (fromMaybe (TextIter nullForeignPtr) iter)

-- | Move the completion window to a specific iter.
sourceCompletionMoveWindow :: SourceCompletionClass sc => sc
                           -> TextIter 
