{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc) You may wish to begin by reading the [text widget conceptual overview][TextWidget] which gives an overview of all the objects and data types related to the text widget and how they work together. -} #define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \ && !defined(__HADDOCK_VERSION__)) module GI.Gtk.Objects.TextBuffer ( -- * Exported types TextBuffer(..) , IsTextBuffer , toTextBuffer , noTextBuffer , -- * Methods -- ** addMark #method:addMark# #if ENABLE_OVERLOADING TextBufferAddMarkMethodInfo , #endif textBufferAddMark , -- ** addSelectionClipboard #method:addSelectionClipboard# #if ENABLE_OVERLOADING TextBufferAddSelectionClipboardMethodInfo, #endif textBufferAddSelectionClipboard , -- ** applyTag #method:applyTag# #if ENABLE_OVERLOADING TextBufferApplyTagMethodInfo , #endif textBufferApplyTag , -- ** applyTagByName #method:applyTagByName# #if ENABLE_OVERLOADING TextBufferApplyTagByNameMethodInfo , #endif textBufferApplyTagByName , -- ** backspace #method:backspace# #if ENABLE_OVERLOADING TextBufferBackspaceMethodInfo , #endif textBufferBackspace , -- ** beginUserAction #method:beginUserAction# #if ENABLE_OVERLOADING TextBufferBeginUserActionMethodInfo , #endif textBufferBeginUserAction , -- ** copyClipboard #method:copyClipboard# #if ENABLE_OVERLOADING TextBufferCopyClipboardMethodInfo , #endif textBufferCopyClipboard , -- ** createChildAnchor #method:createChildAnchor# #if ENABLE_OVERLOADING TextBufferCreateChildAnchorMethodInfo , #endif textBufferCreateChildAnchor , -- ** createMark #method:createMark# #if ENABLE_OVERLOADING TextBufferCreateMarkMethodInfo , #endif textBufferCreateMark , -- ** cutClipboard #method:cutClipboard# #if ENABLE_OVERLOADING TextBufferCutClipboardMethodInfo , #endif textBufferCutClipboard , -- ** delete #method:delete# #if ENABLE_OVERLOADING TextBufferDeleteMethodInfo , #endif textBufferDelete , -- ** deleteInteractive #method:deleteInteractive# #if ENABLE_OVERLOADING TextBufferDeleteInteractiveMethodInfo , #endif textBufferDeleteInteractive , -- ** deleteMark #method:deleteMark# #if ENABLE_OVERLOADING TextBufferDeleteMarkMethodInfo , #endif textBufferDeleteMark , -- ** deleteMarkByName #method:deleteMarkByName# #if ENABLE_OVERLOADING TextBufferDeleteMarkByNameMethodInfo , #endif textBufferDeleteMarkByName , -- ** deleteSelection #method:deleteSelection# #if ENABLE_OVERLOADING TextBufferDeleteSelectionMethodInfo , #endif textBufferDeleteSelection , -- ** deserialize #method:deserialize# #if ENABLE_OVERLOADING TextBufferDeserializeMethodInfo , #endif textBufferDeserialize , -- ** deserializeGetCanCreateTags #method:deserializeGetCanCreateTags# #if ENABLE_OVERLOADING TextBufferDeserializeGetCanCreateTagsMethodInfo, #endif textBufferDeserializeGetCanCreateTags , -- ** deserializeSetCanCreateTags #method:deserializeSetCanCreateTags# #if ENABLE_OVERLOADING TextBufferDeserializeSetCanCreateTagsMethodInfo, #endif textBufferDeserializeSetCanCreateTags , -- ** endUserAction #method:endUserAction# #if ENABLE_OVERLOADING TextBufferEndUserActionMethodInfo , #endif textBufferEndUserAction , -- ** getBounds #method:getBounds# #if ENABLE_OVERLOADING TextBufferGetBoundsMethodInfo , #endif textBufferGetBounds , -- ** getCharCount #method:getCharCount# #if ENABLE_OVERLOADING TextBufferGetCharCountMethodInfo , #endif textBufferGetCharCount , -- ** getCopyTargetList #method:getCopyTargetList# #if ENABLE_OVERLOADING TextBufferGetCopyTargetListMethodInfo , #endif textBufferGetCopyTargetList , -- ** getDeserializeFormats #method:getDeserializeFormats# #if ENABLE_OVERLOADING TextBufferGetDeserializeFormatsMethodInfo, #endif textBufferGetDeserializeFormats , -- ** getEndIter #method:getEndIter# #if ENABLE_OVERLOADING TextBufferGetEndIterMethodInfo , #endif textBufferGetEndIter , -- ** getHasSelection #method:getHasSelection# #if ENABLE_OVERLOADING TextBufferGetHasSelectionMethodInfo , #endif textBufferGetHasSelection , -- ** getInsert #method:getInsert# #if ENABLE_OVERLOADING TextBufferGetInsertMethodInfo , #endif textBufferGetInsert , -- ** getIterAtChildAnchor #method:getIterAtChildAnchor# #if ENABLE_OVERLOADING TextBufferGetIterAtChildAnchorMethodInfo, #endif textBufferGetIterAtChildAnchor , -- ** getIterAtLine #method:getIterAtLine# #if ENABLE_OVERLOADING TextBufferGetIterAtLineMethodInfo , #endif textBufferGetIterAtLine , -- ** getIterAtLineIndex #method:getIterAtLineIndex# #if ENABLE_OVERLOADING TextBufferGetIterAtLineIndexMethodInfo , #endif textBufferGetIterAtLineIndex , -- ** getIterAtLineOffset #method:getIterAtLineOffset# #if ENABLE_OVERLOADING TextBufferGetIterAtLineOffsetMethodInfo , #endif textBufferGetIterAtLineOffset , -- ** getIterAtMark #method:getIterAtMark# #if ENABLE_OVERLOADING TextBufferGetIterAtMarkMethodInfo , #endif textBufferGetIterAtMark , -- ** getIterAtOffset #method:getIterAtOffset# #if ENABLE_OVERLOADING TextBufferGetIterAtOffsetMethodInfo , #endif textBufferGetIterAtOffset , -- ** getLineCount #method:getLineCount# #if ENABLE_OVERLOADING TextBufferGetLineCountMethodInfo , #endif textBufferGetLineCount , -- ** getMark #method:getMark# #if ENABLE_OVERLOADING TextBufferGetMarkMethodInfo , #endif textBufferGetMark , -- ** getModified #method:getModified# #if ENABLE_OVERLOADING TextBufferGetModifiedMethodInfo , #endif textBufferGetModified , -- ** getPasteTargetList #method:getPasteTargetList# #if ENABLE_OVERLOADING TextBufferGetPasteTargetListMethodInfo , #endif textBufferGetPasteTargetList , -- ** getSelectionBound #method:getSelectionBound# #if ENABLE_OVERLOADING TextBufferGetSelectionBoundMethodInfo , #endif textBufferGetSelectionBound , -- ** getSelectionBounds #method:getSelectionBounds# #if ENABLE_OVERLOADING TextBufferGetSelectionBoundsMethodInfo , #endif textBufferGetSelectionBounds , -- ** getSerializeFormats #method:getSerializeFormats# #if ENABLE_OVERLOADING TextBufferGetSerializeFormatsMethodInfo , #endif textBufferGetSerializeFormats , -- ** getSlice #method:getSlice# #if ENABLE_OVERLOADING TextBufferGetSliceMethodInfo , #endif textBufferGetSlice , -- ** getStartIter #method:getStartIter# #if ENABLE_OVERLOADING TextBufferGetStartIterMethodInfo , #endif textBufferGetStartIter , -- ** getTagTable #method:getTagTable# #if ENABLE_OVERLOADING TextBufferGetTagTableMethodInfo , #endif textBufferGetTagTable , -- ** getText #method:getText# #if ENABLE_OVERLOADING TextBufferGetTextMethodInfo , #endif textBufferGetText , -- ** insert #method:insert# #if ENABLE_OVERLOADING TextBufferInsertMethodInfo , #endif textBufferInsert , -- ** insertAtCursor #method:insertAtCursor# #if ENABLE_OVERLOADING TextBufferInsertAtCursorMethodInfo , #endif textBufferInsertAtCursor , -- ** insertChildAnchor #method:insertChildAnchor# #if ENABLE_OVERLOADING TextBufferInsertChildAnchorMethodInfo , #endif textBufferInsertChildAnchor , -- ** insertInteractive #method:insertInteractive# #if ENABLE_OVERLOADING TextBufferInsertInteractiveMethodInfo , #endif textBufferInsertInteractive , -- ** insertInteractiveAtCursor #method:insertInteractiveAtCursor# #if ENABLE_OVERLOADING TextBufferInsertInteractiveAtCursorMethodInfo, #endif textBufferInsertInteractiveAtCursor , -- ** insertMarkup #method:insertMarkup# #if ENABLE_OVERLOADING TextBufferInsertMarkupMethodInfo , #endif textBufferInsertMarkup , -- ** insertPixbuf #method:insertPixbuf# #if ENABLE_OVERLOADING TextBufferInsertPixbufMethodInfo , #endif textBufferInsertPixbuf , -- ** insertRange #method:insertRange# #if ENABLE_OVERLOADING TextBufferInsertRangeMethodInfo , #endif textBufferInsertRange , -- ** insertRangeInteractive #method:insertRangeInteractive# #if ENABLE_OVERLOADING TextBufferInsertRangeInteractiveMethodInfo, #endif textBufferInsertRangeInteractive , -- ** moveMark #method:moveMark# #if ENABLE_OVERLOADING TextBufferMoveMarkMethodInfo , #endif textBufferMoveMark , -- ** moveMarkByName #method:moveMarkByName# #if ENABLE_OVERLOADING TextBufferMoveMarkByNameMethodInfo , #endif textBufferMoveMarkByName , -- ** new #method:new# textBufferNew , -- ** pasteClipboard #method:pasteClipboard# #if ENABLE_OVERLOADING TextBufferPasteClipboardMethodInfo , #endif textBufferPasteClipboard , -- ** placeCursor #method:placeCursor# #if ENABLE_OVERLOADING TextBufferPlaceCursorMethodInfo , #endif textBufferPlaceCursor , -- ** registerDeserializeFormat #method:registerDeserializeFormat# #if ENABLE_OVERLOADING TextBufferRegisterDeserializeFormatMethodInfo, #endif textBufferRegisterDeserializeFormat , -- ** registerDeserializeTagset #method:registerDeserializeTagset# #if ENABLE_OVERLOADING TextBufferRegisterDeserializeTagsetMethodInfo, #endif textBufferRegisterDeserializeTagset , -- ** registerSerializeFormat #method:registerSerializeFormat# #if ENABLE_OVERLOADING TextBufferRegisterSerializeFormatMethodInfo, #endif textBufferRegisterSerializeFormat , -- ** registerSerializeTagset #method:registerSerializeTagset# #if ENABLE_OVERLOADING TextBufferRegisterSerializeTagsetMethodInfo, #endif textBufferRegisterSerializeTagset , -- ** removeAllTags #method:removeAllTags# #if ENABLE_OVERLOADING TextBufferRemoveAllTagsMethodInfo , #endif textBufferRemoveAllTags , -- ** removeSelectionClipboard #method:removeSelectionClipboard# #if ENABLE_OVERLOADING TextBufferRemoveSelectionClipboardMethodInfo, #endif textBufferRemoveSelectionClipboard , -- ** removeTag #method:removeTag# #if ENABLE_OVERLOADING TextBufferRemoveTagMethodInfo , #endif textBufferRemoveTag , -- ** removeTagByName #method:removeTagByName# #if ENABLE_OVERLOADING TextBufferRemoveTagByNameMethodInfo , #endif textBufferRemoveTagByName , -- ** selectRange #method:selectRange# #if ENABLE_OVERLOADING TextBufferSelectRangeMethodInfo , #endif textBufferSelectRange , -- ** serialize #method:serialize# #if ENABLE_OVERLOADING TextBufferSerializeMethodInfo , #endif textBufferSerialize , -- ** setModified #method:setModified# #if ENABLE_OVERLOADING TextBufferSetModifiedMethodInfo , #endif textBufferSetModified , -- ** setText #method:setText# #if ENABLE_OVERLOADING TextBufferSetTextMethodInfo , #endif textBufferSetText , -- ** unregisterDeserializeFormat #method:unregisterDeserializeFormat# #if ENABLE_OVERLOADING TextBufferUnregisterDeserializeFormatMethodInfo, #endif textBufferUnregisterDeserializeFormat , -- ** unregisterSerializeFormat #method:unregisterSerializeFormat# #if ENABLE_OVERLOADING TextBufferUnregisterSerializeFormatMethodInfo, #endif textBufferUnregisterSerializeFormat , -- * Properties -- ** copyTargetList #attr:copyTargetList# {- | The list of targets this buffer supports for clipboard copying and as DND source. /Since: 2.10/ -} #if ENABLE_OVERLOADING TextBufferCopyTargetListPropertyInfo , #endif getTextBufferCopyTargetList , #if ENABLE_OVERLOADING textBufferCopyTargetList , #endif -- ** cursorPosition #attr:cursorPosition# {- | The position of the insert mark (as offset from the beginning of the buffer). It is useful for getting notified when the cursor moves. /Since: 2.10/ -} #if ENABLE_OVERLOADING TextBufferCursorPositionPropertyInfo , #endif getTextBufferCursorPosition , #if ENABLE_OVERLOADING textBufferCursorPosition , #endif -- ** hasSelection #attr:hasSelection# {- | Whether the buffer has some text currently selected. /Since: 2.10/ -} #if ENABLE_OVERLOADING TextBufferHasSelectionPropertyInfo , #endif getTextBufferHasSelection , #if ENABLE_OVERLOADING textBufferHasSelection , #endif -- ** pasteTargetList #attr:pasteTargetList# {- | The list of targets this buffer supports for clipboard pasting and as DND destination. /Since: 2.10/ -} #if ENABLE_OVERLOADING TextBufferPasteTargetListPropertyInfo , #endif getTextBufferPasteTargetList , #if ENABLE_OVERLOADING textBufferPasteTargetList , #endif -- ** tagTable #attr:tagTable# {- | /No description available in the introspection data./ -} #if ENABLE_OVERLOADING TextBufferTagTablePropertyInfo , #endif constructTextBufferTagTable , getTextBufferTagTable , #if ENABLE_OVERLOADING textBufferTagTable , #endif -- ** text #attr:text# {- | The text content of the buffer. Without child widgets and images, see 'GI.Gtk.Objects.TextBuffer.textBufferGetText' for more information. /Since: 2.8/ -} #if ENABLE_OVERLOADING TextBufferTextPropertyInfo , #endif clearTextBufferText , constructTextBufferText , getTextBufferText , setTextBufferText , #if ENABLE_OVERLOADING textBufferText , #endif -- * Signals -- ** applyTag #signal:applyTag# C_TextBufferApplyTagCallback , TextBufferApplyTagCallback , #if ENABLE_OVERLOADING TextBufferApplyTagSignalInfo , #endif afterTextBufferApplyTag , genClosure_TextBufferApplyTag , mk_TextBufferApplyTagCallback , noTextBufferApplyTagCallback , onTextBufferApplyTag , wrap_TextBufferApplyTagCallback , -- ** beginUserAction #signal:beginUserAction# C_TextBufferBeginUserActionCallback , TextBufferBeginUserActionCallback , #if ENABLE_OVERLOADING TextBufferBeginUserActionSignalInfo , #endif afterTextBufferBeginUserAction , genClosure_TextBufferBeginUserAction , mk_TextBufferBeginUserActionCallback , noTextBufferBeginUserActionCallback , onTextBufferBeginUserAction , wrap_TextBufferBeginUserActionCallback , -- ** changed #signal:changed# C_TextBufferChangedCallback , TextBufferChangedCallback , #if ENABLE_OVERLOADING TextBufferChangedSignalInfo , #endif afterTextBufferChanged , genClosure_TextBufferChanged , mk_TextBufferChangedCallback , noTextBufferChangedCallback , onTextBufferChanged , wrap_TextBufferChangedCallback , -- ** deleteRange #signal:deleteRange# C_TextBufferDeleteRangeCallback , TextBufferDeleteRangeCallback , #if ENABLE_OVERLOADING TextBufferDeleteRangeSignalInfo , #endif afterTextBufferDeleteRange , genClosure_TextBufferDeleteRange , mk_TextBufferDeleteRangeCallback , noTextBufferDeleteRangeCallback , onTextBufferDeleteRange , wrap_TextBufferDeleteRangeCallback , -- ** endUserAction #signal:endUserAction# C_TextBufferEndUserActionCallback , TextBufferEndUserActionCallback , #if ENABLE_OVERLOADING TextBufferEndUserActionSignalInfo , #endif afterTextBufferEndUserAction , genClosure_TextBufferEndUserAction , mk_TextBufferEndUserActionCallback , noTextBufferEndUserActionCallback , onTextBufferEndUserAction , wrap_TextBufferEndUserActionCallback , -- ** insertChildAnchor #signal:insertChildAnchor# C_TextBufferInsertChildAnchorCallback , TextBufferInsertChildAnchorCallback , #if ENABLE_OVERLOADING TextBufferInsertChildAnchorSignalInfo , #endif afterTextBufferInsertChildAnchor , genClosure_TextBufferInsertChildAnchor , mk_TextBufferInsertChildAnchorCallback , noTextBufferInsertChildAnchorCallback , onTextBufferInsertChildAnchor , wrap_TextBufferInsertChildAnchorCallback, -- ** insertPixbuf #signal:insertPixbuf# C_TextBufferInsertPixbufCallback , TextBufferInsertPixbufCallback , #if ENABLE_OVERLOADING TextBufferInsertPixbufSignalInfo , #endif afterTextBufferInsertPixbuf , genClosure_TextBufferInsertPixbuf , mk_TextBufferInsertPixbufCallback , noTextBufferInsertPixbufCallback , onTextBufferInsertPixbuf , wrap_TextBufferInsertPixbufCallback , -- ** insertText #signal:insertText# C_TextBufferInsertTextCallback , TextBufferInsertTextCallback , #if ENABLE_OVERLOADING TextBufferInsertTextSignalInfo , #endif afterTextBufferInsertText , genClosure_TextBufferInsertText , mk_TextBufferInsertTextCallback , noTextBufferInsertTextCallback , onTextBufferInsertText , wrap_TextBufferInsertTextCallback , -- ** markDeleted #signal:markDeleted# C_TextBufferMarkDeletedCallback , TextBufferMarkDeletedCallback , #if ENABLE_OVERLOADING TextBufferMarkDeletedSignalInfo , #endif afterTextBufferMarkDeleted , genClosure_TextBufferMarkDeleted , mk_TextBufferMarkDeletedCallback , noTextBufferMarkDeletedCallback , onTextBufferMarkDeleted , wrap_TextBufferMarkDeletedCallback , -- ** markSet #signal:markSet# C_TextBufferMarkSetCallback , TextBufferMarkSetCallback , #if ENABLE_OVERLOADING TextBufferMarkSetSignalInfo , #endif afterTextBufferMarkSet , genClosure_TextBufferMarkSet , mk_TextBufferMarkSetCallback , noTextBufferMarkSetCallback , onTextBufferMarkSet , wrap_TextBufferMarkSetCallback , -- ** modifiedChanged #signal:modifiedChanged# C_TextBufferModifiedChangedCallback , TextBufferModifiedChangedCallback , #if ENABLE_OVERLOADING TextBufferModifiedChangedSignalInfo , #endif afterTextBufferModifiedChanged , genClosure_TextBufferModifiedChanged , mk_TextBufferModifiedChangedCallback , noTextBufferModifiedChangedCallback , onTextBufferModifiedChanged , wrap_TextBufferModifiedChangedCallback , -- ** pasteDone #signal:pasteDone# C_TextBufferPasteDoneCallback , TextBufferPasteDoneCallback , #if ENABLE_OVERLOADING TextBufferPasteDoneSignalInfo , #endif afterTextBufferPasteDone , genClosure_TextBufferPasteDone , mk_TextBufferPasteDoneCallback , noTextBufferPasteDoneCallback , onTextBufferPasteDone , wrap_TextBufferPasteDoneCallback , -- ** removeTag #signal:removeTag# C_TextBufferRemoveTagCallback , TextBufferRemoveTagCallback , #if ENABLE_OVERLOADING TextBufferRemoveTagSignalInfo , #endif afterTextBufferRemoveTag , genClosure_TextBufferRemoveTag , mk_TextBufferRemoveTagCallback , noTextBufferRemoveTagCallback , onTextBufferRemoveTag , wrap_TextBufferRemoveTagCallback , ) 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.GLib.Callbacks as GLib.Callbacks import qualified GI.GObject.Objects.Object as GObject.Object import qualified GI.Gdk.Structs.Atom as Gdk.Atom import qualified GI.GdkPixbuf.Objects.Pixbuf as GdkPixbuf.Pixbuf import qualified GI.Gtk.Callbacks as Gtk.Callbacks import {-# SOURCE #-} qualified GI.Gtk.Objects.Clipboard as Gtk.Clipboard import {-# SOURCE #-} qualified GI.Gtk.Objects.TextChildAnchor as Gtk.TextChildAnchor import {-# SOURCE #-} qualified GI.Gtk.Objects.TextMark as Gtk.TextMark import {-# SOURCE #-} qualified GI.Gtk.Objects.TextTag as Gtk.TextTag import {-# SOURCE #-} qualified GI.Gtk.Objects.TextTagTable as Gtk.TextTagTable import {-# SOURCE #-} qualified GI.Gtk.Structs.TargetList as Gtk.TargetList import {-# SOURCE #-} qualified GI.Gtk.Structs.TextIter as Gtk.TextIter -- | Memory-managed wrapper type. newtype TextBuffer = TextBuffer (ManagedPtr TextBuffer) foreign import ccall "gtk_text_buffer_get_type" c_gtk_text_buffer_get_type :: IO GType instance GObject TextBuffer where gobjectType = c_gtk_text_buffer_get_type -- | Type class for types which can be safely cast to `TextBuffer`, for instance with `toTextBuffer`. class (GObject o, O.IsDescendantOf TextBuffer o) => IsTextBuffer o instance (GObject o, O.IsDescendantOf TextBuffer o) => IsTextBuffer o instance O.HasParentTypes TextBuffer type instance O.ParentTypes TextBuffer = '[GObject.Object.Object] -- | Cast to `TextBuffer`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`. toTextBuffer :: (MonadIO m, IsTextBuffer o) => o -> m TextBuffer toTextBuffer = liftIO . unsafeCastTo TextBuffer -- | A convenience alias for `Nothing` :: `Maybe` `TextBuffer`. noTextBuffer :: Maybe TextBuffer noTextBuffer = Nothing #if ENABLE_OVERLOADING type family ResolveTextBufferMethod (t :: Symbol) (o :: *) :: * where ResolveTextBufferMethod "addMark" o = TextBufferAddMarkMethodInfo ResolveTextBufferMethod "addSelectionClipboard" o = TextBufferAddSelectionClipboardMethodInfo ResolveTextBufferMethod "applyTag" o = TextBufferApplyTagMethodInfo ResolveTextBufferMethod "applyTagByName" o = TextBufferApplyTagByNameMethodInfo ResolveTextBufferMethod "backspace" o = TextBufferBackspaceMethodInfo ResolveTextBufferMethod "beginUserAction" o = TextBufferBeginUserActionMethodInfo ResolveTextBufferMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo ResolveTextBufferMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo ResolveTextBufferMethod "copyClipboard" o = TextBufferCopyClipboardMethodInfo ResolveTextBufferMethod "createChildAnchor" o = TextBufferCreateChildAnchorMethodInfo ResolveTextBufferMethod "createMark" o = TextBufferCreateMarkMethodInfo ResolveTextBufferMethod "cutClipboard" o = TextBufferCutClipboardMethodInfo ResolveTextBufferMethod "delete" o = TextBufferDeleteMethodInfo ResolveTextBufferMethod "deleteInteractive" o = TextBufferDeleteInteractiveMethodInfo ResolveTextBufferMethod "deleteMark" o = TextBufferDeleteMarkMethodInfo ResolveTextBufferMethod "deleteMarkByName" o = TextBufferDeleteMarkByNameMethodInfo ResolveTextBufferMethod "deleteSelection" o = TextBufferDeleteSelectionMethodInfo ResolveTextBufferMethod "deserialize" o = TextBufferDeserializeMethodInfo ResolveTextBufferMethod "deserializeGetCanCreateTags" o = TextBufferDeserializeGetCanCreateTagsMethodInfo ResolveTextBufferMethod "deserializeSetCanCreateTags" o = TextBufferDeserializeSetCanCreateTagsMethodInfo ResolveTextBufferMethod "endUserAction" o = TextBufferEndUserActionMethodInfo ResolveTextBufferMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo ResolveTextBufferMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo ResolveTextBufferMethod "getv" o = GObject.Object.ObjectGetvMethodInfo ResolveTextBufferMethod "insert" o = TextBufferInsertMethodInfo ResolveTextBufferMethod "insertAtCursor" o = TextBufferInsertAtCursorMethodInfo ResolveTextBufferMethod "insertChildAnchor" o = TextBufferInsertChildAnchorMethodInfo ResolveTextBufferMethod "insertInteractive" o = TextBufferInsertInteractiveMethodInfo ResolveTextBufferMethod "insertInteractiveAtCursor" o = TextBufferInsertInteractiveAtCursorMethodInfo ResolveTextBufferMethod "insertMarkup" o = TextBufferInsertMarkupMethodInfo ResolveTextBufferMethod "insertPixbuf" o = TextBufferInsertPixbufMethodInfo ResolveTextBufferMethod "insertRange" o = TextBufferInsertRangeMethodInfo ResolveTextBufferMethod "insertRangeInteractive" o = TextBufferInsertRangeInteractiveMethodInfo ResolveTextBufferMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo ResolveTextBufferMethod "moveMark" o = TextBufferMoveMarkMethodInfo ResolveTextBufferMethod "moveMarkByName" o = TextBufferMoveMarkByNameMethodInfo ResolveTextBufferMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo ResolveTextBufferMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo ResolveTextBufferMethod "pasteClipboard" o = TextBufferPasteClipboardMethodInfo ResolveTextBufferMethod "placeCursor" o = TextBufferPlaceCursorMethodInfo ResolveTextBufferMethod "ref" o = GObject.Object.ObjectRefMethodInfo ResolveTextBufferMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo ResolveTextBufferMethod "registerDeserializeFormat" o = TextBufferRegisterDeserializeFormatMethodInfo ResolveTextBufferMethod "registerDeserializeTagset" o = TextBufferRegisterDeserializeTagsetMethodInfo ResolveTextBufferMethod "registerSerializeFormat" o = TextBufferRegisterSerializeFormatMethodInfo ResolveTextBufferMethod "registerSerializeTagset" o = TextBufferRegisterSerializeTagsetMethodInfo ResolveTextBufferMethod "removeAllTags" o = TextBufferRemoveAllTagsMethodInfo ResolveTextBufferMethod "removeSelectionClipboard" o = TextBufferRemoveSelectionClipboardMethodInfo ResolveTextBufferMethod "removeTag" o = TextBufferRemoveTagMethodInfo ResolveTextBufferMethod "removeTagByName" o = TextBufferRemoveTagByNameMethodInfo ResolveTextBufferMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo ResolveTextBufferMethod "selectRange" o = TextBufferSelectRangeMethodInfo ResolveTextBufferMethod "serialize" o = TextBufferSerializeMethodInfo ResolveTextBufferMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo ResolveTextBufferMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo ResolveTextBufferMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo ResolveTextBufferMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo ResolveTextBufferMethod "unregisterDeserializeFormat" o = TextBufferUnregisterDeserializeFormatMethodInfo ResolveTextBufferMethod "unregisterSerializeFormat" o = TextBufferUnregisterSerializeFormatMethodInfo ResolveTextBufferMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo ResolveTextBufferMethod "getBounds" o = TextBufferGetBoundsMethodInfo ResolveTextBufferMethod "getCharCount" o = TextBufferGetCharCountMethodInfo ResolveTextBufferMethod "getCopyTargetList" o = TextBufferGetCopyTargetListMethodInfo ResolveTextBufferMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo ResolveTextBufferMethod "getDeserializeFormats" o = TextBufferGetDeserializeFormatsMethodInfo ResolveTextBufferMethod "getEndIter" o = TextBufferGetEndIterMethodInfo ResolveTextBufferMethod "getHasSelection" o = TextBufferGetHasSelectionMethodInfo ResolveTextBufferMethod "getInsert" o = TextBufferGetInsertMethodInfo ResolveTextBufferMethod "getIterAtChildAnchor" o = TextBufferGetIterAtChildAnchorMethodInfo ResolveTextBufferMethod "getIterAtLine" o = TextBufferGetIterAtLineMethodInfo ResolveTextBufferMethod "getIterAtLineIndex" o = TextBufferGetIterAtLineIndexMethodInfo ResolveTextBufferMethod "getIterAtLineOffset" o = TextBufferGetIterAtLineOffsetMethodInfo ResolveTextBufferMethod "getIterAtMark" o = TextBufferGetIterAtMarkMethodInfo ResolveTextBufferMethod "getIterAtOffset" o = TextBufferGetIterAtOffsetMethodInfo ResolveTextBufferMethod "getLineCount" o = TextBufferGetLineCountMethodInfo ResolveTextBufferMethod "getMark" o = TextBufferGetMarkMethodInfo ResolveTextBufferMethod "getModified" o = TextBufferGetModifiedMethodInfo ResolveTextBufferMethod "getPasteTargetList" o = TextBufferGetPasteTargetListMethodInfo ResolveTextBufferMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo ResolveTextBufferMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo ResolveTextBufferMethod "getSelectionBound" o = TextBufferGetSelectionBoundMethodInfo ResolveTextBufferMethod "getSelectionBounds" o = TextBufferGetSelectionBoundsMethodInfo ResolveTextBufferMethod "getSerializeFormats" o = TextBufferGetSerializeFormatsMethodInfo ResolveTextBufferMethod "getSlice" o = TextBufferGetSliceMethodInfo ResolveTextBufferMethod "getStartIter" o = TextBufferGetStartIterMethodInfo ResolveTextBufferMethod "getTagTable" o = TextBufferGetTagTableMethodInfo ResolveTextBufferMethod "getText" o = TextBufferGetTextMethodInfo ResolveTextBufferMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo ResolveTextBufferMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo ResolveTextBufferMethod "setModified" o = TextBufferSetModifiedMethodInfo ResolveTextBufferMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo ResolveTextBufferMethod "setText" o = TextBufferSetTextMethodInfo ResolveTextBufferMethod l o = O.MethodResolutionFailed l o instance (info ~ ResolveTextBufferMethod t TextBuffer, O.MethodInfo info TextBuffer p) => OL.IsLabel t (TextBuffer -> 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 -- signal TextBuffer::apply-tag {- | The ::apply-tag signal is emitted to apply a tag to a range of text in a 'GI.Gtk.Objects.TextBuffer.TextBuffer'. Applying actually occurs in the default handler. Note that if your handler runs before the default handler it must not invalidate the /@start@/ and /@end@/ iters (or has to revalidate them). See also: 'GI.Gtk.Objects.TextBuffer.textBufferApplyTag', @/gtk_text_buffer_insert_with_tags()/@, 'GI.Gtk.Objects.TextBuffer.textBufferInsertRange'. -} type TextBufferApplyTagCallback = Gtk.TextTag.TextTag {- ^ /@tag@/: the applied tag -} -> Gtk.TextIter.TextIter {- ^ /@start@/: the start of the range the tag is applied to -} -> Gtk.TextIter.TextIter {- ^ /@end@/: the end of the range the tag is applied to -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferApplyTagCallback`@. noTextBufferApplyTagCallback :: Maybe TextBufferApplyTagCallback noTextBufferApplyTagCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferApplyTagCallback = Ptr () -> -- object Ptr Gtk.TextTag.TextTag -> Ptr Gtk.TextIter.TextIter -> Ptr Gtk.TextIter.TextIter -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferApplyTagCallback`. foreign import ccall "wrapper" mk_TextBufferApplyTagCallback :: C_TextBufferApplyTagCallback -> IO (FunPtr C_TextBufferApplyTagCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferApplyTag :: MonadIO m => TextBufferApplyTagCallback -> m (GClosure C_TextBufferApplyTagCallback) genClosure_TextBufferApplyTag cb = liftIO $ do let cb' = wrap_TextBufferApplyTagCallback cb mk_TextBufferApplyTagCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferApplyTagCallback` into a `C_TextBufferApplyTagCallback`. wrap_TextBufferApplyTagCallback :: TextBufferApplyTagCallback -> C_TextBufferApplyTagCallback wrap_TextBufferApplyTagCallback _cb _ tag start end _ = do tag' <- (newObject Gtk.TextTag.TextTag) tag B.ManagedPtr.withTransient Gtk.TextIter.TextIter start $ \start' -> do B.ManagedPtr.withTransient Gtk.TextIter.TextIter end $ \end' -> do _cb tag' start' end' {- | Connect a signal handler for the “@apply-tag@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #applyTag callback @ -} onTextBufferApplyTag :: (IsTextBuffer a, MonadIO m) => a -> TextBufferApplyTagCallback -> m SignalHandlerId onTextBufferApplyTag obj cb = liftIO $ do let cb' = wrap_TextBufferApplyTagCallback cb cb'' <- mk_TextBufferApplyTagCallback cb' connectSignalFunPtr obj "apply-tag" cb'' SignalConnectBefore {- | Connect a signal handler for the “@apply-tag@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #applyTag callback @ -} afterTextBufferApplyTag :: (IsTextBuffer a, MonadIO m) => a -> TextBufferApplyTagCallback -> m SignalHandlerId afterTextBufferApplyTag obj cb = liftIO $ do let cb' = wrap_TextBufferApplyTagCallback cb cb'' <- mk_TextBufferApplyTagCallback cb' connectSignalFunPtr obj "apply-tag" cb'' SignalConnectAfter -- signal TextBuffer::begin-user-action {- | The ::begin-user-action signal is emitted at the beginning of a single user-visible operation on a 'GI.Gtk.Objects.TextBuffer.TextBuffer'. See also: 'GI.Gtk.Objects.TextBuffer.textBufferBeginUserAction', 'GI.Gtk.Objects.TextBuffer.textBufferInsertInteractive', 'GI.Gtk.Objects.TextBuffer.textBufferInsertRangeInteractive', 'GI.Gtk.Objects.TextBuffer.textBufferDeleteInteractive', 'GI.Gtk.Objects.TextBuffer.textBufferBackspace', 'GI.Gtk.Objects.TextBuffer.textBufferDeleteSelection'. -} type TextBufferBeginUserActionCallback = IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferBeginUserActionCallback`@. noTextBufferBeginUserActionCallback :: Maybe TextBufferBeginUserActionCallback noTextBufferBeginUserActionCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferBeginUserActionCallback = Ptr () -> -- object Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferBeginUserActionCallback`. foreign import ccall "wrapper" mk_TextBufferBeginUserActionCallback :: C_TextBufferBeginUserActionCallback -> IO (FunPtr C_TextBufferBeginUserActionCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferBeginUserAction :: MonadIO m => TextBufferBeginUserActionCallback -> m (GClosure C_TextBufferBeginUserActionCallback) genClosure_TextBufferBeginUserAction cb = liftIO $ do let cb' = wrap_TextBufferBeginUserActionCallback cb mk_TextBufferBeginUserActionCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferBeginUserActionCallback` into a `C_TextBufferBeginUserActionCallback`. wrap_TextBufferBeginUserActionCallback :: TextBufferBeginUserActionCallback -> C_TextBufferBeginUserActionCallback wrap_TextBufferBeginUserActionCallback _cb _ _ = do _cb {- | Connect a signal handler for the “@begin-user-action@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #beginUserAction callback @ -} onTextBufferBeginUserAction :: (IsTextBuffer a, MonadIO m) => a -> TextBufferBeginUserActionCallback -> m SignalHandlerId onTextBufferBeginUserAction obj cb = liftIO $ do let cb' = wrap_TextBufferBeginUserActionCallback cb cb'' <- mk_TextBufferBeginUserActionCallback cb' connectSignalFunPtr obj "begin-user-action" cb'' SignalConnectBefore {- | Connect a signal handler for the “@begin-user-action@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #beginUserAction callback @ -} afterTextBufferBeginUserAction :: (IsTextBuffer a, MonadIO m) => a -> TextBufferBeginUserActionCallback -> m SignalHandlerId afterTextBufferBeginUserAction obj cb = liftIO $ do let cb' = wrap_TextBufferBeginUserActionCallback cb cb'' <- mk_TextBufferBeginUserActionCallback cb' connectSignalFunPtr obj "begin-user-action" cb'' SignalConnectAfter -- signal TextBuffer::changed {- | The ::changed signal is emitted when the content of a 'GI.Gtk.Objects.TextBuffer.TextBuffer' has changed. -} type TextBufferChangedCallback = IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferChangedCallback`@. noTextBufferChangedCallback :: Maybe TextBufferChangedCallback noTextBufferChangedCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferChangedCallback = Ptr () -> -- object Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferChangedCallback`. foreign import ccall "wrapper" mk_TextBufferChangedCallback :: C_TextBufferChangedCallback -> IO (FunPtr C_TextBufferChangedCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferChanged :: MonadIO m => TextBufferChangedCallback -> m (GClosure C_TextBufferChangedCallback) genClosure_TextBufferChanged cb = liftIO $ do let cb' = wrap_TextBufferChangedCallback cb mk_TextBufferChangedCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferChangedCallback` into a `C_TextBufferChangedCallback`. wrap_TextBufferChangedCallback :: TextBufferChangedCallback -> C_TextBufferChangedCallback wrap_TextBufferChangedCallback _cb _ _ = do _cb {- | Connect a signal handler for the “@changed@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #changed callback @ -} onTextBufferChanged :: (IsTextBuffer a, MonadIO m) => a -> TextBufferChangedCallback -> m SignalHandlerId onTextBufferChanged obj cb = liftIO $ do let cb' = wrap_TextBufferChangedCallback cb cb'' <- mk_TextBufferChangedCallback cb' connectSignalFunPtr obj "changed" cb'' SignalConnectBefore {- | Connect a signal handler for the “@changed@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #changed callback @ -} afterTextBufferChanged :: (IsTextBuffer a, MonadIO m) => a -> TextBufferChangedCallback -> m SignalHandlerId afterTextBufferChanged obj cb = liftIO $ do let cb' = wrap_TextBufferChangedCallback cb cb'' <- mk_TextBufferChangedCallback cb' connectSignalFunPtr obj "changed" cb'' SignalConnectAfter -- signal TextBuffer::delete-range {- | The ::delete-range signal is emitted to delete a range from a 'GI.Gtk.Objects.TextBuffer.TextBuffer'. Note that if your handler runs before the default handler it must not invalidate the /@start@/ and /@end@/ iters (or has to revalidate them). The default signal handler revalidates the /@start@/ and /@end@/ iters to both point to the location where text was deleted. Handlers which run after the default handler (see @/g_signal_connect_after()/@) do not have access to the deleted text. See also: 'GI.Gtk.Objects.TextBuffer.textBufferDelete'. -} type TextBufferDeleteRangeCallback = Gtk.TextIter.TextIter {- ^ /@start@/: the start of the range to be deleted -} -> Gtk.TextIter.TextIter {- ^ /@end@/: the end of the range to be deleted -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferDeleteRangeCallback`@. noTextBufferDeleteRangeCallback :: Maybe TextBufferDeleteRangeCallback noTextBufferDeleteRangeCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferDeleteRangeCallback = Ptr () -> -- object Ptr Gtk.TextIter.TextIter -> Ptr Gtk.TextIter.TextIter -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferDeleteRangeCallback`. foreign import ccall "wrapper" mk_TextBufferDeleteRangeCallback :: C_TextBufferDeleteRangeCallback -> IO (FunPtr C_TextBufferDeleteRangeCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferDeleteRange :: MonadIO m => TextBufferDeleteRangeCallback -> m (GClosure C_TextBufferDeleteRangeCallback) genClosure_TextBufferDeleteRange cb = liftIO $ do let cb' = wrap_TextBufferDeleteRangeCallback cb mk_TextBufferDeleteRangeCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferDeleteRangeCallback` into a `C_TextBufferDeleteRangeCallback`. wrap_TextBufferDeleteRangeCallback :: TextBufferDeleteRangeCallback -> C_TextBufferDeleteRangeCallback wrap_TextBufferDeleteRangeCallback _cb _ start end _ = do B.ManagedPtr.withTransient Gtk.TextIter.TextIter start $ \start' -> do B.ManagedPtr.withTransient Gtk.TextIter.TextIter end $ \end' -> do _cb start' end' {- | Connect a signal handler for the “@delete-range@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #deleteRange callback @ -} onTextBufferDeleteRange :: (IsTextBuffer a, MonadIO m) => a -> TextBufferDeleteRangeCallback -> m SignalHandlerId onTextBufferDeleteRange obj cb = liftIO $ do let cb' = wrap_TextBufferDeleteRangeCallback cb cb'' <- mk_TextBufferDeleteRangeCallback cb' connectSignalFunPtr obj "delete-range" cb'' SignalConnectBefore {- | Connect a signal handler for the “@delete-range@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #deleteRange callback @ -} afterTextBufferDeleteRange :: (IsTextBuffer a, MonadIO m) => a -> TextBufferDeleteRangeCallback -> m SignalHandlerId afterTextBufferDeleteRange obj cb = liftIO $ do let cb' = wrap_TextBufferDeleteRangeCallback cb cb'' <- mk_TextBufferDeleteRangeCallback cb' connectSignalFunPtr obj "delete-range" cb'' SignalConnectAfter -- signal TextBuffer::end-user-action {- | The ::end-user-action signal is emitted at the end of a single user-visible operation on the 'GI.Gtk.Objects.TextBuffer.TextBuffer'. See also: 'GI.Gtk.Objects.TextBuffer.textBufferEndUserAction', 'GI.Gtk.Objects.TextBuffer.textBufferInsertInteractive', 'GI.Gtk.Objects.TextBuffer.textBufferInsertRangeInteractive', 'GI.Gtk.Objects.TextBuffer.textBufferDeleteInteractive', 'GI.Gtk.Objects.TextBuffer.textBufferBackspace', 'GI.Gtk.Objects.TextBuffer.textBufferDeleteSelection', 'GI.Gtk.Objects.TextBuffer.textBufferBackspace'. -} type TextBufferEndUserActionCallback = IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferEndUserActionCallback`@. noTextBufferEndUserActionCallback :: Maybe TextBufferEndUserActionCallback noTextBufferEndUserActionCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferEndUserActionCallback = Ptr () -> -- object Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferEndUserActionCallback`. foreign import ccall "wrapper" mk_TextBufferEndUserActionCallback :: C_TextBufferEndUserActionCallback -> IO (FunPtr C_TextBufferEndUserActionCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferEndUserAction :: MonadIO m => TextBufferEndUserActionCallback -> m (GClosure C_TextBufferEndUserActionCallback) genClosure_TextBufferEndUserAction cb = liftIO $ do let cb' = wrap_TextBufferEndUserActionCallback cb mk_TextBufferEndUserActionCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferEndUserActionCallback` into a `C_TextBufferEndUserActionCallback`. wrap_TextBufferEndUserActionCallback :: TextBufferEndUserActionCallback -> C_TextBufferEndUserActionCallback wrap_TextBufferEndUserActionCallback _cb _ _ = do _cb {- | Connect a signal handler for the “@end-user-action@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #endUserAction callback @ -} onTextBufferEndUserAction :: (IsTextBuffer a, MonadIO m) => a -> TextBufferEndUserActionCallback -> m SignalHandlerId onTextBufferEndUserAction obj cb = liftIO $ do let cb' = wrap_TextBufferEndUserActionCallback cb cb'' <- mk_TextBufferEndUserActionCallback cb' connectSignalFunPtr obj "end-user-action" cb'' SignalConnectBefore {- | Connect a signal handler for the “@end-user-action@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #endUserAction callback @ -} afterTextBufferEndUserAction :: (IsTextBuffer a, MonadIO m) => a -> TextBufferEndUserActionCallback -> m SignalHandlerId afterTextBufferEndUserAction obj cb = liftIO $ do let cb' = wrap_TextBufferEndUserActionCallback cb cb'' <- mk_TextBufferEndUserActionCallback cb' connectSignalFunPtr obj "end-user-action" cb'' SignalConnectAfter -- signal TextBuffer::insert-child-anchor {- | The ::insert-child-anchor signal is emitted to insert a 'GI.Gtk.Objects.TextChildAnchor.TextChildAnchor' in a 'GI.Gtk.Objects.TextBuffer.TextBuffer'. Insertion actually occurs in the default handler. Note that if your handler runs before the default handler it must not invalidate the /@location@/ iter (or has to revalidate it). The default signal handler revalidates it to be placed after the inserted /@anchor@/. See also: 'GI.Gtk.Objects.TextBuffer.textBufferInsertChildAnchor'. -} type TextBufferInsertChildAnchorCallback = Gtk.TextIter.TextIter {- ^ /@location@/: position to insert /@anchor@/ in /@textbuffer@/ -} -> Gtk.TextChildAnchor.TextChildAnchor {- ^ /@anchor@/: the 'GI.Gtk.Objects.TextChildAnchor.TextChildAnchor' to be inserted -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferInsertChildAnchorCallback`@. noTextBufferInsertChildAnchorCallback :: Maybe TextBufferInsertChildAnchorCallback noTextBufferInsertChildAnchorCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferInsertChildAnchorCallback = Ptr () -> -- object Ptr Gtk.TextIter.TextIter -> Ptr Gtk.TextChildAnchor.TextChildAnchor -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferInsertChildAnchorCallback`. foreign import ccall "wrapper" mk_TextBufferInsertChildAnchorCallback :: C_TextBufferInsertChildAnchorCallback -> IO (FunPtr C_TextBufferInsertChildAnchorCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferInsertChildAnchor :: MonadIO m => TextBufferInsertChildAnchorCallback -> m (GClosure C_TextBufferInsertChildAnchorCallback) genClosure_TextBufferInsertChildAnchor cb = liftIO $ do let cb' = wrap_TextBufferInsertChildAnchorCallback cb mk_TextBufferInsertChildAnchorCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferInsertChildAnchorCallback` into a `C_TextBufferInsertChildAnchorCallback`. wrap_TextBufferInsertChildAnchorCallback :: TextBufferInsertChildAnchorCallback -> C_TextBufferInsertChildAnchorCallback wrap_TextBufferInsertChildAnchorCallback _cb _ location anchor _ = do B.ManagedPtr.withTransient Gtk.TextIter.TextIter location $ \location' -> do anchor' <- (newObject Gtk.TextChildAnchor.TextChildAnchor) anchor _cb location' anchor' {- | Connect a signal handler for the “@insert-child-anchor@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #insertChildAnchor callback @ -} onTextBufferInsertChildAnchor :: (IsTextBuffer a, MonadIO m) => a -> TextBufferInsertChildAnchorCallback -> m SignalHandlerId onTextBufferInsertChildAnchor obj cb = liftIO $ do let cb' = wrap_TextBufferInsertChildAnchorCallback cb cb'' <- mk_TextBufferInsertChildAnchorCallback cb' connectSignalFunPtr obj "insert-child-anchor" cb'' SignalConnectBefore {- | Connect a signal handler for the “@insert-child-anchor@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #insertChildAnchor callback @ -} afterTextBufferInsertChildAnchor :: (IsTextBuffer a, MonadIO m) => a -> TextBufferInsertChildAnchorCallback -> m SignalHandlerId afterTextBufferInsertChildAnchor obj cb = liftIO $ do let cb' = wrap_TextBufferInsertChildAnchorCallback cb cb'' <- mk_TextBufferInsertChildAnchorCallback cb' connectSignalFunPtr obj "insert-child-anchor" cb'' SignalConnectAfter -- signal TextBuffer::insert-pixbuf {- | The ::insert-pixbuf signal is emitted to insert a 'GI.GdkPixbuf.Objects.Pixbuf.Pixbuf' in a 'GI.Gtk.Objects.TextBuffer.TextBuffer'. Insertion actually occurs in the default handler. Note that if your handler runs before the default handler it must not invalidate the /@location@/ iter (or has to revalidate it). The default signal handler revalidates it to be placed after the inserted /@pixbuf@/. See also: 'GI.Gtk.Objects.TextBuffer.textBufferInsertPixbuf'. -} type TextBufferInsertPixbufCallback = Gtk.TextIter.TextIter {- ^ /@location@/: position to insert /@pixbuf@/ in /@textbuffer@/ -} -> GdkPixbuf.Pixbuf.Pixbuf {- ^ /@pixbuf@/: the 'GI.GdkPixbuf.Objects.Pixbuf.Pixbuf' to be inserted -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferInsertPixbufCallback`@. noTextBufferInsertPixbufCallback :: Maybe TextBufferInsertPixbufCallback noTextBufferInsertPixbufCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferInsertPixbufCallback = Ptr () -> -- object Ptr Gtk.TextIter.TextIter -> Ptr GdkPixbuf.Pixbuf.Pixbuf -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferInsertPixbufCallback`. foreign import ccall "wrapper" mk_TextBufferInsertPixbufCallback :: C_TextBufferInsertPixbufCallback -> IO (FunPtr C_TextBufferInsertPixbufCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferInsertPixbuf :: MonadIO m => TextBufferInsertPixbufCallback -> m (GClosure C_TextBufferInsertPixbufCallback) genClosure_TextBufferInsertPixbuf cb = liftIO $ do let cb' = wrap_TextBufferInsertPixbufCallback cb mk_TextBufferInsertPixbufCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferInsertPixbufCallback` into a `C_TextBufferInsertPixbufCallback`. wrap_TextBufferInsertPixbufCallback :: TextBufferInsertPixbufCallback -> C_TextBufferInsertPixbufCallback wrap_TextBufferInsertPixbufCallback _cb _ location pixbuf _ = do B.ManagedPtr.withTransient Gtk.TextIter.TextIter location $ \location' -> do pixbuf' <- (newObject GdkPixbuf.Pixbuf.Pixbuf) pixbuf _cb location' pixbuf' {- | Connect a signal handler for the “@insert-pixbuf@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #insertPixbuf callback @ -} onTextBufferInsertPixbuf :: (IsTextBuffer a, MonadIO m) => a -> TextBufferInsertPixbufCallback -> m SignalHandlerId onTextBufferInsertPixbuf obj cb = liftIO $ do let cb' = wrap_TextBufferInsertPixbufCallback cb cb'' <- mk_TextBufferInsertPixbufCallback cb' connectSignalFunPtr obj "insert-pixbuf" cb'' SignalConnectBefore {- | Connect a signal handler for the “@insert-pixbuf@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #insertPixbuf callback @ -} afterTextBufferInsertPixbuf :: (IsTextBuffer a, MonadIO m) => a -> TextBufferInsertPixbufCallback -> m SignalHandlerId afterTextBufferInsertPixbuf obj cb = liftIO $ do let cb' = wrap_TextBufferInsertPixbufCallback cb cb'' <- mk_TextBufferInsertPixbufCallback cb' connectSignalFunPtr obj "insert-pixbuf" cb'' SignalConnectAfter -- signal TextBuffer::insert-text {- | The ::insert-text signal is emitted to insert text in a 'GI.Gtk.Objects.TextBuffer.TextBuffer'. Insertion actually occurs in the default handler. Note that if your handler runs before the default handler it must not invalidate the /@location@/ iter (or has to revalidate it). The default signal handler revalidates it to point to the end of the inserted text. See also: 'GI.Gtk.Objects.TextBuffer.textBufferInsert', 'GI.Gtk.Objects.TextBuffer.textBufferInsertRange'. -} type TextBufferInsertTextCallback = Gtk.TextIter.TextIter {- ^ /@location@/: position to insert /@text@/ in /@textbuffer@/ -} -> T.Text {- ^ /@text@/: the UTF-8 text to be inserted -} -> Int32 {- ^ /@len@/: length of the inserted text in bytes -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferInsertTextCallback`@. noTextBufferInsertTextCallback :: Maybe TextBufferInsertTextCallback noTextBufferInsertTextCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferInsertTextCallback = Ptr () -> -- object Ptr Gtk.TextIter.TextIter -> CString -> Int32 -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferInsertTextCallback`. foreign import ccall "wrapper" mk_TextBufferInsertTextCallback :: C_TextBufferInsertTextCallback -> IO (FunPtr C_TextBufferInsertTextCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferInsertText :: MonadIO m => TextBufferInsertTextCallback -> m (GClosure C_TextBufferInsertTextCallback) genClosure_TextBufferInsertText cb = liftIO $ do let cb' = wrap_TextBufferInsertTextCallback cb mk_TextBufferInsertTextCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferInsertTextCallback` into a `C_TextBufferInsertTextCallback`. wrap_TextBufferInsertTextCallback :: TextBufferInsertTextCallback -> C_TextBufferInsertTextCallback wrap_TextBufferInsertTextCallback _cb _ location text len _ = do B.ManagedPtr.withTransient Gtk.TextIter.TextIter location $ \location' -> do text' <- cstringToText text _cb location' text' len {- | Connect a signal handler for the “@insert-text@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #insertText callback @ -} onTextBufferInsertText :: (IsTextBuffer a, MonadIO m) => a -> TextBufferInsertTextCallback -> m SignalHandlerId onTextBufferInsertText obj cb = liftIO $ do let cb' = wrap_TextBufferInsertTextCallback cb cb'' <- mk_TextBufferInsertTextCallback cb' connectSignalFunPtr obj "insert-text" cb'' SignalConnectBefore {- | Connect a signal handler for the “@insert-text@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #insertText callback @ -} afterTextBufferInsertText :: (IsTextBuffer a, MonadIO m) => a -> TextBufferInsertTextCallback -> m SignalHandlerId afterTextBufferInsertText obj cb = liftIO $ do let cb' = wrap_TextBufferInsertTextCallback cb cb'' <- mk_TextBufferInsertTextCallback cb' connectSignalFunPtr obj "insert-text" cb'' SignalConnectAfter -- signal TextBuffer::mark-deleted {- | The ::mark-deleted signal is emitted as notification after a 'GI.Gtk.Objects.TextMark.TextMark' is deleted. See also: 'GI.Gtk.Objects.TextBuffer.textBufferDeleteMark'. -} type TextBufferMarkDeletedCallback = Gtk.TextMark.TextMark {- ^ /@mark@/: The mark that was deleted -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferMarkDeletedCallback`@. noTextBufferMarkDeletedCallback :: Maybe TextBufferMarkDeletedCallback noTextBufferMarkDeletedCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferMarkDeletedCallback = Ptr () -> -- object Ptr Gtk.TextMark.TextMark -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferMarkDeletedCallback`. foreign import ccall "wrapper" mk_TextBufferMarkDeletedCallback :: C_TextBufferMarkDeletedCallback -> IO (FunPtr C_TextBufferMarkDeletedCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferMarkDeleted :: MonadIO m => TextBufferMarkDeletedCallback -> m (GClosure C_TextBufferMarkDeletedCallback) genClosure_TextBufferMarkDeleted cb = liftIO $ do let cb' = wrap_TextBufferMarkDeletedCallback cb mk_TextBufferMarkDeletedCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferMarkDeletedCallback` into a `C_TextBufferMarkDeletedCallback`. wrap_TextBufferMarkDeletedCallback :: TextBufferMarkDeletedCallback -> C_TextBufferMarkDeletedCallback wrap_TextBufferMarkDeletedCallback _cb _ mark _ = do mark' <- (newObject Gtk.TextMark.TextMark) mark _cb mark' {- | Connect a signal handler for the “@mark-deleted@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #markDeleted callback @ -} onTextBufferMarkDeleted :: (IsTextBuffer a, MonadIO m) => a -> TextBufferMarkDeletedCallback -> m SignalHandlerId onTextBufferMarkDeleted obj cb = liftIO $ do let cb' = wrap_TextBufferMarkDeletedCallback cb cb'' <- mk_TextBufferMarkDeletedCallback cb' connectSignalFunPtr obj "mark-deleted" cb'' SignalConnectBefore {- | Connect a signal handler for the “@mark-deleted@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #markDeleted callback @ -} afterTextBufferMarkDeleted :: (IsTextBuffer a, MonadIO m) => a -> TextBufferMarkDeletedCallback -> m SignalHandlerId afterTextBufferMarkDeleted obj cb = liftIO $ do let cb' = wrap_TextBufferMarkDeletedCallback cb cb'' <- mk_TextBufferMarkDeletedCallback cb' connectSignalFunPtr obj "mark-deleted" cb'' SignalConnectAfter -- signal TextBuffer::mark-set {- | The ::mark-set signal is emitted as notification after a 'GI.Gtk.Objects.TextMark.TextMark' is set. See also: 'GI.Gtk.Objects.TextBuffer.textBufferCreateMark', 'GI.Gtk.Objects.TextBuffer.textBufferMoveMark'. -} type TextBufferMarkSetCallback = Gtk.TextIter.TextIter {- ^ /@location@/: The location of /@mark@/ in /@textbuffer@/ -} -> Gtk.TextMark.TextMark {- ^ /@mark@/: The mark that is set -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferMarkSetCallback`@. noTextBufferMarkSetCallback :: Maybe TextBufferMarkSetCallback noTextBufferMarkSetCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferMarkSetCallback = Ptr () -> -- object Ptr Gtk.TextIter.TextIter -> Ptr Gtk.TextMark.TextMark -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferMarkSetCallback`. foreign import ccall "wrapper" mk_TextBufferMarkSetCallback :: C_TextBufferMarkSetCallback -> IO (FunPtr C_TextBufferMarkSetCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferMarkSet :: MonadIO m => TextBufferMarkSetCallback -> m (GClosure C_TextBufferMarkSetCallback) genClosure_TextBufferMarkSet cb = liftIO $ do let cb' = wrap_TextBufferMarkSetCallback cb mk_TextBufferMarkSetCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferMarkSetCallback` into a `C_TextBufferMarkSetCallback`. wrap_TextBufferMarkSetCallback :: TextBufferMarkSetCallback -> C_TextBufferMarkSetCallback wrap_TextBufferMarkSetCallback _cb _ location mark _ = do B.ManagedPtr.withTransient Gtk.TextIter.TextIter location $ \location' -> do mark' <- (newObject Gtk.TextMark.TextMark) mark _cb location' mark' {- | Connect a signal handler for the “@mark-set@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #markSet callback @ -} onTextBufferMarkSet :: (IsTextBuffer a, MonadIO m) => a -> TextBufferMarkSetCallback -> m SignalHandlerId onTextBufferMarkSet obj cb = liftIO $ do let cb' = wrap_TextBufferMarkSetCallback cb cb'' <- mk_TextBufferMarkSetCallback cb' connectSignalFunPtr obj "mark-set" cb'' SignalConnectBefore {- | Connect a signal handler for the “@mark-set@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #markSet callback @ -} afterTextBufferMarkSet :: (IsTextBuffer a, MonadIO m) => a -> TextBufferMarkSetCallback -> m SignalHandlerId afterTextBufferMarkSet obj cb = liftIO $ do let cb' = wrap_TextBufferMarkSetCallback cb cb'' <- mk_TextBufferMarkSetCallback cb' connectSignalFunPtr obj "mark-set" cb'' SignalConnectAfter -- signal TextBuffer::modified-changed {- | The ::modified-changed signal is emitted when the modified bit of a 'GI.Gtk.Objects.TextBuffer.TextBuffer' flips. See also: 'GI.Gtk.Objects.TextBuffer.textBufferSetModified'. -} type TextBufferModifiedChangedCallback = IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferModifiedChangedCallback`@. noTextBufferModifiedChangedCallback :: Maybe TextBufferModifiedChangedCallback noTextBufferModifiedChangedCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferModifiedChangedCallback = Ptr () -> -- object Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferModifiedChangedCallback`. foreign import ccall "wrapper" mk_TextBufferModifiedChangedCallback :: C_TextBufferModifiedChangedCallback -> IO (FunPtr C_TextBufferModifiedChangedCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferModifiedChanged :: MonadIO m => TextBufferModifiedChangedCallback -> m (GClosure C_TextBufferModifiedChangedCallback) genClosure_TextBufferModifiedChanged cb = liftIO $ do let cb' = wrap_TextBufferModifiedChangedCallback cb mk_TextBufferModifiedChangedCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferModifiedChangedCallback` into a `C_TextBufferModifiedChangedCallback`. wrap_TextBufferModifiedChangedCallback :: TextBufferModifiedChangedCallback -> C_TextBufferModifiedChangedCallback wrap_TextBufferModifiedChangedCallback _cb _ _ = do _cb {- | Connect a signal handler for the “@modified-changed@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #modifiedChanged callback @ -} onTextBufferModifiedChanged :: (IsTextBuffer a, MonadIO m) => a -> TextBufferModifiedChangedCallback -> m SignalHandlerId onTextBufferModifiedChanged obj cb = liftIO $ do let cb' = wrap_TextBufferModifiedChangedCallback cb cb'' <- mk_TextBufferModifiedChangedCallback cb' connectSignalFunPtr obj "modified-changed" cb'' SignalConnectBefore {- | Connect a signal handler for the “@modified-changed@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #modifiedChanged callback @ -} afterTextBufferModifiedChanged :: (IsTextBuffer a, MonadIO m) => a -> TextBufferModifiedChangedCallback -> m SignalHandlerId afterTextBufferModifiedChanged obj cb = liftIO $ do let cb' = wrap_TextBufferModifiedChangedCallback cb cb'' <- mk_TextBufferModifiedChangedCallback cb' connectSignalFunPtr obj "modified-changed" cb'' SignalConnectAfter -- signal TextBuffer::paste-done {- | The paste-done signal is emitted after paste operation has been completed. This is useful to properly scroll the view to the end of the pasted text. See 'GI.Gtk.Objects.TextBuffer.textBufferPasteClipboard' for more details. /Since: 2.16/ -} type TextBufferPasteDoneCallback = Gtk.Clipboard.Clipboard {- ^ /@clipboard@/: the 'GI.Gtk.Objects.Clipboard.Clipboard' pasted from -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferPasteDoneCallback`@. noTextBufferPasteDoneCallback :: Maybe TextBufferPasteDoneCallback noTextBufferPasteDoneCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferPasteDoneCallback = Ptr () -> -- object Ptr Gtk.Clipboard.Clipboard -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferPasteDoneCallback`. foreign import ccall "wrapper" mk_TextBufferPasteDoneCallback :: C_TextBufferPasteDoneCallback -> IO (FunPtr C_TextBufferPasteDoneCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferPasteDone :: MonadIO m => TextBufferPasteDoneCallback -> m (GClosure C_TextBufferPasteDoneCallback) genClosure_TextBufferPasteDone cb = liftIO $ do let cb' = wrap_TextBufferPasteDoneCallback cb mk_TextBufferPasteDoneCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferPasteDoneCallback` into a `C_TextBufferPasteDoneCallback`. wrap_TextBufferPasteDoneCallback :: TextBufferPasteDoneCallback -> C_TextBufferPasteDoneCallback wrap_TextBufferPasteDoneCallback _cb _ clipboard _ = do clipboard' <- (newObject Gtk.Clipboard.Clipboard) clipboard _cb clipboard' {- | Connect a signal handler for the “@paste-done@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #pasteDone callback @ -} onTextBufferPasteDone :: (IsTextBuffer a, MonadIO m) => a -> TextBufferPasteDoneCallback -> m SignalHandlerId onTextBufferPasteDone obj cb = liftIO $ do let cb' = wrap_TextBufferPasteDoneCallback cb cb'' <- mk_TextBufferPasteDoneCallback cb' connectSignalFunPtr obj "paste-done" cb'' SignalConnectBefore {- | Connect a signal handler for the “@paste-done@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #pasteDone callback @ -} afterTextBufferPasteDone :: (IsTextBuffer a, MonadIO m) => a -> TextBufferPasteDoneCallback -> m SignalHandlerId afterTextBufferPasteDone obj cb = liftIO $ do let cb' = wrap_TextBufferPasteDoneCallback cb cb'' <- mk_TextBufferPasteDoneCallback cb' connectSignalFunPtr obj "paste-done" cb'' SignalConnectAfter -- signal TextBuffer::remove-tag {- | The ::remove-tag signal is emitted to remove all occurrences of /@tag@/ from a range of text in a 'GI.Gtk.Objects.TextBuffer.TextBuffer'. Removal actually occurs in the default handler. Note that if your handler runs before the default handler it must not invalidate the /@start@/ and /@end@/ iters (or has to revalidate them). See also: 'GI.Gtk.Objects.TextBuffer.textBufferRemoveTag'. -} type TextBufferRemoveTagCallback = Gtk.TextTag.TextTag {- ^ /@tag@/: the tag to be removed -} -> Gtk.TextIter.TextIter {- ^ /@start@/: the start of the range the tag is removed from -} -> Gtk.TextIter.TextIter {- ^ /@end@/: the end of the range the tag is removed from -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `TextBufferRemoveTagCallback`@. noTextBufferRemoveTagCallback :: Maybe TextBufferRemoveTagCallback noTextBufferRemoveTagCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_TextBufferRemoveTagCallback = Ptr () -> -- object Ptr Gtk.TextTag.TextTag -> Ptr Gtk.TextIter.TextIter -> Ptr Gtk.TextIter.TextIter -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_TextBufferRemoveTagCallback`. foreign import ccall "wrapper" mk_TextBufferRemoveTagCallback :: C_TextBufferRemoveTagCallback -> IO (FunPtr C_TextBufferRemoveTagCallback) -- | Wrap the callback into a `GClosure`. genClosure_TextBufferRemoveTag :: MonadIO m => TextBufferRemoveTagCallback -> m (GClosure C_TextBufferRemoveTagCallback) genClosure_TextBufferRemoveTag cb = liftIO $ do let cb' = wrap_TextBufferRemoveTagCallback cb mk_TextBufferRemoveTagCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `TextBufferRemoveTagCallback` into a `C_TextBufferRemoveTagCallback`. wrap_TextBufferRemoveTagCallback :: TextBufferRemoveTagCallback -> C_TextBufferRemoveTagCallback wrap_TextBufferRemoveTagCallback _cb _ tag start end _ = do tag' <- (newObject Gtk.TextTag.TextTag) tag B.ManagedPtr.withTransient Gtk.TextIter.TextIter start $ \start' -> do B.ManagedPtr.withTransient Gtk.TextIter.TextIter end $ \end' -> do _cb tag' start' end' {- | Connect a signal handler for the “@remove-tag@” signal, to be run before the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' textBuffer #removeTag callback @ -} onTextBufferRemoveTag :: (IsTextBuffer a, MonadIO m) => a -> TextBufferRemoveTagCallback -> m SignalHandlerId onTextBufferRemoveTag obj cb = liftIO $ do let cb' = wrap_TextBufferRemoveTagCallback cb cb'' <- mk_TextBufferRemoveTagCallback cb' connectSignalFunPtr obj "remove-tag" cb'' SignalConnectBefore {- | Connect a signal handler for the “@remove-tag@” signal, to be run after the default handler. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' textBuffer #removeTag callback @ -} afterTextBufferRemoveTag :: (IsTextBuffer a, MonadIO m) => a -> TextBufferRemoveTagCallback -> m SignalHandlerId afterTextBufferRemoveTag obj cb = liftIO $ do let cb' = wrap_TextBufferRemoveTagCallback cb cb'' <- mk_TextBufferRemoveTagCallback cb' connectSignalFunPtr obj "remove-tag" cb'' SignalConnectAfter -- VVV Prop "copy-target-list" -- Type: TInterface (Name {namespace = "Gtk", name = "TargetList"}) -- Flags: [PropertyReadable] -- Nullable: (Just False,Nothing) {- | Get the value of the “@copy-target-list@” property. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.get' textBuffer #copyTargetList @ -} getTextBufferCopyTargetList :: (MonadIO m, IsTextBuffer o) => o -> m Gtk.TargetList.TargetList getTextBufferCopyTargetList obj = liftIO $ checkUnexpectedNothing "getTextBufferCopyTargetList" $ B.Properties.getObjectPropertyBoxed obj "copy-target-list" Gtk.TargetList.TargetList #if ENABLE_OVERLOADING data TextBufferCopyTargetListPropertyInfo instance AttrInfo TextBufferCopyTargetListPropertyInfo where type AttrAllowedOps TextBufferCopyTargetListPropertyInfo = '[ 'AttrGet, 'AttrClear] type AttrSetTypeConstraint TextBufferCopyTargetListPropertyInfo = (~) () type AttrBaseTypeConstraint TextBufferCopyTargetListPropertyInfo = IsTextBuffer type AttrGetType TextBufferCopyTargetListPropertyInfo = Gtk.TargetList.TargetList type AttrLabel TextBufferCopyTargetListPropertyInfo = "copy-target-list" type AttrOrigin TextBufferCopyTargetListPropertyInfo = TextBuffer attrGet _ = getTextBufferCopyTargetList attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined #endif -- VVV Prop "cursor-position" -- Type: TBasicType TInt -- Flags: [PropertyReadable] -- Nullable: (Nothing,Nothing) {- | Get the value of the “@cursor-position@” property. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.get' textBuffer #cursorPosition @ -} getTextBufferCursorPosition :: (MonadIO m, IsTextBuffer o) => o -> m Int32 getTextBufferCursorPosition obj = liftIO $ B.Properties.getObjectPropertyInt32 obj "cursor-position" #if ENABLE_OVERLOADING data TextBufferCursorPositionPropertyInfo instance AttrInfo TextBufferCursorPositionPropertyInfo where type AttrAllowedOps TextBufferCursorPositionPropertyInfo = '[ 'AttrGet] type AttrSetTypeConstraint TextBufferCursorPositionPropertyInfo = (~) () type AttrBaseTypeConstraint TextBufferCursorPositionPropertyInfo = IsTextBuffer type AttrGetType TextBufferCursorPositionPropertyInfo = Int32 type AttrLabel TextBufferCursorPositionPropertyInfo = "cursor-position" type AttrOrigin TextBufferCursorPositionPropertyInfo = TextBuffer attrGet _ = getTextBufferCursorPosition attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined #endif -- VVV Prop "has-selection" -- Type: TBasicType TBoolean -- Flags: [PropertyReadable] -- Nullable: (Just False,Nothing) {- | Get the value of the “@has-selection@” property. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.get' textBuffer #hasSelection @ -} getTextBufferHasSelection :: (MonadIO m, IsTextBuffer o) => o -> m Bool getTextBufferHasSelection obj = liftIO $ B.Properties.getObjectPropertyBool obj "has-selection" #if ENABLE_OVERLOADING data TextBufferHasSelectionPropertyInfo instance AttrInfo TextBufferHasSelectionPropertyInfo where type AttrAllowedOps TextBufferHasSelectionPropertyInfo = '[ 'AttrGet] type AttrSetTypeConstraint TextBufferHasSelectionPropertyInfo = (~) () type AttrBaseTypeConstraint TextBufferHasSelectionPropertyInfo = IsTextBuffer type AttrGetType TextBufferHasSelectionPropertyInfo = Bool type AttrLabel TextBufferHasSelectionPropertyInfo = "has-selection" type AttrOrigin TextBufferHasSelectionPropertyInfo = TextBuffer attrGet _ = getTextBufferHasSelection attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined #endif -- VVV Prop "paste-target-list" -- Type: TInterface (Name {namespace = "Gtk", name = "TargetList"}) -- Flags: [PropertyReadable] -- Nullable: (Just False,Nothing) {- | Get the value of the “@paste-target-list@” property. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.get' textBuffer #pasteTargetList @ -} getTextBufferPasteTargetList :: (MonadIO m, IsTextBuffer o) => o -> m Gtk.TargetList.TargetList getTextBufferPasteTargetList obj = liftIO $ checkUnexpectedNothing "getTextBufferPasteTargetList" $ B.Properties.getObjectPropertyBoxed obj "paste-target-list" Gtk.TargetList.TargetList #if ENABLE_OVERLOADING data TextBufferPasteTargetListPropertyInfo instance AttrInfo TextBufferPasteTargetListPropertyInfo where type AttrAllowedOps TextBufferPasteTargetListPropertyInfo = '[ 'AttrGet, 'AttrClear] type AttrSetTypeConstraint TextBufferPasteTargetListPropertyInfo = (~) () type AttrBaseTypeConstraint TextBufferPasteTargetListPropertyInfo = IsTextBuffer type AttrGetType TextBufferPasteTargetListPropertyInfo = Gtk.TargetList.TargetList type AttrLabel TextBufferPasteTargetListPropertyInfo = "paste-target-list" type AttrOrigin TextBufferPasteTargetListPropertyInfo = TextBuffer attrGet _ = getTextBufferPasteTargetList attrSet _ = undefined attrConstruct _ = undefined attrClear _ = undefined #endif -- VVV Prop "tag-table" -- Type: TInterface (Name {namespace = "Gtk", name = "TextTagTable"}) -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly] -- Nullable: (Just False,Nothing) {- | Get the value of the “@tag-table@” property. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.get' textBuffer #tagTable @ -} getTextBufferTagTable :: (MonadIO m, IsTextBuffer o) => o -> m Gtk.TextTagTable.TextTagTable getTextBufferTagTable obj = liftIO $ checkUnexpectedNothing "getTextBufferTagTable" $ B.Properties.getObjectPropertyObject obj "tag-table" Gtk.TextTagTable.TextTagTable {- | Construct a `GValueConstruct` with valid value for the “@tag-table@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`. -} constructTextBufferTagTable :: (IsTextBuffer o, Gtk.TextTagTable.IsTextTagTable a) => a -> IO (GValueConstruct o) constructTextBufferTagTable val = B.Properties.constructObjectPropertyObject "tag-table" (Just val) #if ENABLE_OVERLOADING data TextBufferTagTablePropertyInfo instance AttrInfo TextBufferTagTablePropertyInfo where type AttrAllowedOps TextBufferTagTablePropertyInfo = '[ 'AttrConstruct, 'AttrGet, 'AttrClear] type AttrSetTypeConstraint TextBufferTagTablePropertyInfo = Gtk.TextTagTable.IsTextTagTable type AttrBaseTypeConstraint TextBufferTagTablePropertyInfo = IsTextBuffer type AttrGetType TextBufferTagTablePropertyInfo = Gtk.TextTagTable.TextTagTable type AttrLabel TextBufferTagTablePropertyInfo = "tag-table" type AttrOrigin TextBufferTagTablePropertyInfo = TextBuffer attrGet _ = getTextBufferTagTable attrSet _ = undefined attrConstruct _ = constructTextBufferTagTable attrClear _ = undefined #endif -- VVV Prop "text" -- Type: TBasicType TUTF8 -- Flags: [PropertyReadable,PropertyWritable] -- Nullable: (Nothing,Nothing) {- | Get the value of the “@text@” property. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.get' textBuffer #text @ -} getTextBufferText :: (MonadIO m, IsTextBuffer o) => o -> m (Maybe T.Text) getTextBufferText obj = liftIO $ B.Properties.getObjectPropertyString obj "text" {- | Set the value of the “@text@” property. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.set' textBuffer [ #text 'Data.GI.Base.Attributes.:=' value ] @ -} setTextBufferText :: (MonadIO m, IsTextBuffer o) => o -> T.Text -> m () setTextBufferText obj val = liftIO $ B.Properties.setObjectPropertyString obj "text" (Just val) {- | Construct a `GValueConstruct` with valid value for the “@text@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`. -} constructTextBufferText :: (IsTextBuffer o) => T.Text -> IO (GValueConstruct o) constructTextBufferText val = B.Properties.constructObjectPropertyString "text" (Just val) {- | Set the value of the “@text@” property to `Nothing`. When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to @ 'Data.GI.Base.Attributes.clear' #text @ -} clearTextBufferText :: (MonadIO m, IsTextBuffer o) => o -> m () clearTextBufferText obj = liftIO $ B.Properties.setObjectPropertyString obj "text" (Nothing :: Maybe T.Text) #if ENABLE_OVERLOADING data TextBufferTextPropertyInfo instance AttrInfo TextBufferTextPropertyInfo where type AttrAllowedOps TextBufferTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear] type AttrSetTypeConstraint TextBufferTextPropertyInfo = (~) T.Text type AttrBaseTypeConstraint TextBufferTextPropertyInfo = IsTextBuffer type AttrGetType TextBufferTextPropertyInfo = (Maybe T.Text) type AttrLabel TextBufferTextPropertyInfo = "text" type AttrOrigin TextBufferTextPropertyInfo = TextBuffer attrGet _ = getTextBufferText attrSet _ = setTextBufferText attrConstruct _ = constructTextBufferText attrClear _ = clearTextBufferText #endif #if ENABLE_OVERLOADING instance O.HasAttributeList TextBuffer type instance O.AttributeList TextBuffer = TextBufferAttributeList type TextBufferAttributeList = ('[ '("copyTargetList", TextBufferCopyTargetListPropertyInfo), '("cursorPosition", TextBufferCursorPositionPropertyInfo), '("hasSelection", TextBufferHasSelectionPropertyInfo), '("pasteTargetList", TextBufferPasteTargetListPropertyInfo), '("tagTable", TextBufferTagTablePropertyInfo), '("text", TextBufferTextPropertyInfo)] :: [(Symbol, *)]) #endif #if ENABLE_OVERLOADING textBufferCopyTargetList :: AttrLabelProxy "copyTargetList" textBufferCopyTargetList = AttrLabelProxy textBufferCursorPosition :: AttrLabelProxy "cursorPosition" textBufferCursorPosition = AttrLabelProxy textBufferHasSelection :: AttrLabelProxy "hasSelection" textBufferHasSelection = AttrLabelProxy textBufferPasteTargetList :: AttrLabelProxy "pasteTargetList" textBufferPasteTargetList = AttrLabelProxy textBufferTagTable :: AttrLabelProxy "tagTable" textBufferTagTable = AttrLabelProxy textBufferText :: AttrLabelProxy "text" textBufferText = AttrLabelProxy #endif #if ENABLE_OVERLOADING data TextBufferApplyTagSignalInfo instance SignalInfo TextBufferApplyTagSignalInfo where type HaskellCallbackType TextBufferApplyTagSignalInfo = TextBufferApplyTagCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferApplyTagCallback cb cb'' <- mk_TextBufferApplyTagCallback cb' connectSignalFunPtr obj "apply-tag" cb'' connectMode data TextBufferBeginUserActionSignalInfo instance SignalInfo TextBufferBeginUserActionSignalInfo where type HaskellCallbackType TextBufferBeginUserActionSignalInfo = TextBufferBeginUserActionCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferBeginUserActionCallback cb cb'' <- mk_TextBufferBeginUserActionCallback cb' connectSignalFunPtr obj "begin-user-action" cb'' connectMode data TextBufferChangedSignalInfo instance SignalInfo TextBufferChangedSignalInfo where type HaskellCallbackType TextBufferChangedSignalInfo = TextBufferChangedCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferChangedCallback cb cb'' <- mk_TextBufferChangedCallback cb' connectSignalFunPtr obj "changed" cb'' connectMode data TextBufferDeleteRangeSignalInfo instance SignalInfo TextBufferDeleteRangeSignalInfo where type HaskellCallbackType TextBufferDeleteRangeSignalInfo = TextBufferDeleteRangeCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferDeleteRangeCallback cb cb'' <- mk_TextBufferDeleteRangeCallback cb' connectSignalFunPtr obj "delete-range" cb'' connectMode data TextBufferEndUserActionSignalInfo instance SignalInfo TextBufferEndUserActionSignalInfo where type HaskellCallbackType TextBufferEndUserActionSignalInfo = TextBufferEndUserActionCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferEndUserActionCallback cb cb'' <- mk_TextBufferEndUserActionCallback cb' connectSignalFunPtr obj "end-user-action" cb'' connectMode data TextBufferInsertChildAnchorSignalInfo instance SignalInfo TextBufferInsertChildAnchorSignalInfo where type HaskellCallbackType TextBufferInsertChildAnchorSignalInfo = TextBufferInsertChildAnchorCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferInsertChildAnchorCallback cb cb'' <- mk_TextBufferInsertChildAnchorCallback cb' connectSignalFunPtr obj "insert-child-anchor" cb'' connectMode data TextBufferInsertPixbufSignalInfo instance SignalInfo TextBufferInsertPixbufSignalInfo where type HaskellCallbackType TextBufferInsertPixbufSignalInfo = TextBufferInsertPixbufCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferInsertPixbufCallback cb cb'' <- mk_TextBufferInsertPixbufCallback cb' connectSignalFunPtr obj "insert-pixbuf" cb'' connectMode data TextBufferInsertTextSignalInfo instance SignalInfo TextBufferInsertTextSignalInfo where type HaskellCallbackType TextBufferInsertTextSignalInfo = TextBufferInsertTextCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferInsertTextCallback cb cb'' <- mk_TextBufferInsertTextCallback cb' connectSignalFunPtr obj "insert-text" cb'' connectMode data TextBufferMarkDeletedSignalInfo instance SignalInfo TextBufferMarkDeletedSignalInfo where type HaskellCallbackType TextBufferMarkDeletedSignalInfo = TextBufferMarkDeletedCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferMarkDeletedCallback cb cb'' <- mk_TextBufferMarkDeletedCallback cb' connectSignalFunPtr obj "mark-deleted" cb'' connectMode data TextBufferMarkSetSignalInfo instance SignalInfo TextBufferMarkSetSignalInfo where type HaskellCallbackType TextBufferMarkSetSignalInfo = TextBufferMarkSetCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferMarkSetCallback cb cb'' <- mk_TextBufferMarkSetCallback cb' connectSignalFunPtr obj "mark-set" cb'' connectMode data TextBufferModifiedChangedSignalInfo instance SignalInfo TextBufferModifiedChangedSignalInfo where type HaskellCallbackType TextBufferModifiedChangedSignalInfo = TextBufferModifiedChangedCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferModifiedChangedCallback cb cb'' <- mk_TextBufferModifiedChangedCallback cb' connectSignalFunPtr obj "modified-changed" cb'' connectMode data TextBufferPasteDoneSignalInfo instance SignalInfo TextBufferPasteDoneSignalInfo where type HaskellCallbackType TextBufferPasteDoneSignalInfo = TextBufferPasteDoneCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferPasteDoneCallback cb cb'' <- mk_TextBufferPasteDoneCallback cb' connectSignalFunPtr obj "paste-done" cb'' connectMode data TextBufferRemoveTagSignalInfo instance SignalInfo TextBufferRemoveTagSignalInfo where type HaskellCallbackType TextBufferRemoveTagSignalInfo = TextBufferRemoveTagCallback connectSignal _ obj cb connectMode = do let cb' = wrap_TextBufferRemoveTagCallback cb cb'' <- mk_TextBufferRemoveTagCallback cb' connectSignalFunPtr obj "remove-tag" cb'' connectMode type instance O.SignalList TextBuffer = TextBufferSignalList type TextBufferSignalList = ('[ '("applyTag", TextBufferApplyTagSignalInfo), '("beginUserAction", TextBufferBeginUserActionSignalInfo), '("changed", TextBufferChangedSignalInfo), '("deleteRange", TextBufferDeleteRangeSignalInfo), '("endUserAction", TextBufferEndUserActionSignalInfo), '("insertChildAnchor", TextBufferInsertChildAnchorSignalInfo), '("insertPixbuf", TextBufferInsertPixbufSignalInfo), '("insertText", TextBufferInsertTextSignalInfo), '("markDeleted", TextBufferMarkDeletedSignalInfo), '("markSet", TextBufferMarkSetSignalInfo), '("modifiedChanged", TextBufferModifiedChangedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("pasteDone", TextBufferPasteDoneSignalInfo), '("removeTag", TextBufferRemoveTagSignalInfo)] :: [(Symbol, *)]) #endif -- method TextBuffer::new -- method type : Constructor -- Args : [Arg {argCName = "table", argType = TInterface (Name {namespace = "Gtk", name = "TextTagTable"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "a tag table, or %NULL to create a new one", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TextBuffer"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_new" gtk_text_buffer_new :: Ptr Gtk.TextTagTable.TextTagTable -> -- table : TInterface (Name {namespace = "Gtk", name = "TextTagTable"}) IO (Ptr TextBuffer) {- | Creates a new text buffer. -} textBufferNew :: (B.CallStack.HasCallStack, MonadIO m, Gtk.TextTagTable.IsTextTagTable a) => Maybe (a) {- ^ /@table@/: a tag table, or 'Nothing' to create a new one -} -> m TextBuffer {- ^ __Returns:__ a new text buffer -} textBufferNew table = liftIO $ do maybeTable <- case table of Nothing -> return nullPtr Just jTable -> do jTable' <- unsafeManagedPtrCastPtr jTable return jTable' result <- gtk_text_buffer_new maybeTable checkUnexpectedReturnNULL "textBufferNew" result result' <- (wrapObject TextBuffer) result whenJust table touchManagedPtr return result' #if ENABLE_OVERLOADING #endif -- method TextBuffer::add_mark -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mark", argType = TInterface (Name {namespace = "Gtk", name = "TextMark"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the mark to add", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "where", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "location to place mark", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_add_mark" gtk_text_buffer_add_mark :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextMark.TextMark -> -- mark : TInterface (Name {namespace = "Gtk", name = "TextMark"}) Ptr Gtk.TextIter.TextIter -> -- where : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Adds the mark at position /@where@/. The mark must not be added to another buffer, and if its name is not 'Nothing' then there must not be another mark in the buffer with the same name. Emits the 'GI.Gtk.Objects.TextBuffer.TextBuffer'::@/mark-set/@ signal as notification of the mark\'s initial placement. /Since: 2.12/ -} textBufferAddMark :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@mark@/: the mark to add -} -> Gtk.TextIter.TextIter {- ^ /@where@/: location to place mark -} -> m () textBufferAddMark buffer mark where_ = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer mark' <- unsafeManagedPtrCastPtr mark where_' <- unsafeManagedPtrGetPtr where_ gtk_text_buffer_add_mark buffer' mark' where_' touchManagedPtr buffer touchManagedPtr mark touchManagedPtr where_ return () #if ENABLE_OVERLOADING data TextBufferAddMarkMethodInfo instance (signature ~ (b -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => O.MethodInfo TextBufferAddMarkMethodInfo a signature where overloadedMethod _ = textBufferAddMark #endif -- method TextBuffer::add_selection_clipboard -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "clipboard", argType = TInterface (Name {namespace = "Gtk", name = "Clipboard"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkClipboard", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_add_selection_clipboard" gtk_text_buffer_add_selection_clipboard :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.Clipboard.Clipboard -> -- clipboard : TInterface (Name {namespace = "Gtk", name = "Clipboard"}) IO () {- | Adds /@clipboard@/ to the list of clipboards in which the selection contents of /@buffer@/ are available. In most cases, /@clipboard@/ will be the 'GI.Gtk.Objects.Clipboard.Clipboard' of type @/GDK_SELECTION_PRIMARY/@ for a view of /@buffer@/. -} textBufferAddSelectionClipboard :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@clipboard@/: a 'GI.Gtk.Objects.Clipboard.Clipboard' -} -> m () textBufferAddSelectionClipboard buffer clipboard = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer clipboard' <- unsafeManagedPtrCastPtr clipboard gtk_text_buffer_add_selection_clipboard buffer' clipboard' touchManagedPtr buffer touchManagedPtr clipboard return () #if ENABLE_OVERLOADING data TextBufferAddSelectionClipboardMethodInfo instance (signature ~ (b -> m ()), MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => O.MethodInfo TextBufferAddSelectionClipboardMethodInfo a signature where overloadedMethod _ = textBufferAddSelectionClipboard #endif -- method TextBuffer::apply_tag -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tag", argType = TInterface (Name {namespace = "Gtk", name = "TextTag"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextTag", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "one bound of range to be tagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "other bound of range to be tagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_apply_tag" gtk_text_buffer_apply_tag :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextTag.TextTag -> -- tag : TInterface (Name {namespace = "Gtk", name = "TextTag"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Emits the “apply-tag” signal on /@buffer@/. The default handler for the signal applies /@tag@/ to the given range. /@start@/ and /@end@/ do not have to be in order. -} textBufferApplyTag :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextTag.IsTextTag b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@tag@/: a 'GI.Gtk.Objects.TextTag.TextTag' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: one bound of range to be tagged -} -> Gtk.TextIter.TextIter {- ^ /@end@/: other bound of range to be tagged -} -> m () textBufferApplyTag buffer tag start end = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer tag' <- unsafeManagedPtrCastPtr tag start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end gtk_text_buffer_apply_tag buffer' tag' start' end' touchManagedPtr buffer touchManagedPtr tag touchManagedPtr start touchManagedPtr end return () #if ENABLE_OVERLOADING data TextBufferApplyTagMethodInfo instance (signature ~ (b -> Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a, Gtk.TextTag.IsTextTag b) => O.MethodInfo TextBufferApplyTagMethodInfo a signature where overloadedMethod _ = textBufferApplyTag #endif -- method TextBuffer::apply_tag_by_name -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "name of a named #GtkTextTag", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "one bound of range to be tagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "other bound of range to be tagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_apply_tag_by_name" gtk_text_buffer_apply_tag_by_name :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- name : TBasicType TUTF8 Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Calls 'GI.Gtk.Objects.TextTagTable.textTagTableLookup' on the buffer’s tag table to get a 'GI.Gtk.Objects.TextTag.TextTag', then calls 'GI.Gtk.Objects.TextBuffer.textBufferApplyTag'. -} textBufferApplyTagByName :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@name@/: name of a named 'GI.Gtk.Objects.TextTag.TextTag' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: one bound of range to be tagged -} -> Gtk.TextIter.TextIter {- ^ /@end@/: other bound of range to be tagged -} -> m () textBufferApplyTagByName buffer name start end = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer name' <- textToCString name start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end gtk_text_buffer_apply_tag_by_name buffer' name' start' end' touchManagedPtr buffer touchManagedPtr start touchManagedPtr end freeMem name' return () #if ENABLE_OVERLOADING data TextBufferApplyTagByNameMethodInfo instance (signature ~ (T.Text -> Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferApplyTagByNameMethodInfo a signature where overloadedMethod _ = textBufferApplyTagByName #endif -- method TextBuffer::backspace -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "interactive", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the deletion is caused by user interaction", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the buffer is editable by default", 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 "gtk_text_buffer_backspace" gtk_text_buffer_backspace :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CInt -> -- interactive : TBasicType TBoolean CInt -> -- default_editable : TBasicType TBoolean IO CInt {- | Performs the appropriate action as if the user hit the delete key with the cursor at the position specified by /@iter@/. In the normal case a single character will be deleted, but when combining accents are involved, more than one character can be deleted, and when precomposed character and accent combinations are involved, less than one character will be deleted. Because the buffer is modified, all outstanding iterators become invalid after calling this function; however, the /@iter@/ will be re-initialized to point to the location where text was deleted. /Since: 2.6/ -} textBufferBackspace :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: a position in /@buffer@/ -} -> Bool {- ^ /@interactive@/: whether the deletion is caused by user interaction -} -> Bool {- ^ /@defaultEditable@/: whether the buffer is editable by default -} -> m Bool {- ^ __Returns:__ 'True' if the buffer was modified -} textBufferBackspace buffer iter interactive defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter let interactive' = (fromIntegral . fromEnum) interactive let defaultEditable' = (fromIntegral . fromEnum) defaultEditable result <- gtk_text_buffer_backspace buffer' iter' interactive' defaultEditable' let result' = (/= 0) result touchManagedPtr buffer touchManagedPtr iter return result' #if ENABLE_OVERLOADING data TextBufferBackspaceMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Bool -> Bool -> m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferBackspaceMethodInfo a signature where overloadedMethod _ = textBufferBackspace #endif -- method TextBuffer::begin_user_action -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_begin_user_action" gtk_text_buffer_begin_user_action :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO () {- | Called to indicate that the buffer operations between here and a call to 'GI.Gtk.Objects.TextBuffer.textBufferEndUserAction' are part of a single user-visible operation. The operations between 'GI.Gtk.Objects.TextBuffer.textBufferBeginUserAction' and 'GI.Gtk.Objects.TextBuffer.textBufferEndUserAction' can then be grouped when creating an undo stack. 'GI.Gtk.Objects.TextBuffer.TextBuffer' maintains a count of calls to 'GI.Gtk.Objects.TextBuffer.textBufferBeginUserAction' that have not been closed with a call to 'GI.Gtk.Objects.TextBuffer.textBufferEndUserAction', and emits the “begin-user-action” and “end-user-action” signals only for the outermost pair of calls. This allows you to build user actions from other user actions. The “interactive” buffer mutation functions, such as 'GI.Gtk.Objects.TextBuffer.textBufferInsertInteractive', automatically call begin\/end user action around the buffer operations they perform, so there\'s no need to add extra calls if you user action consists solely of a single call to one of those functions. -} textBufferBeginUserAction :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m () textBufferBeginUserAction buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer gtk_text_buffer_begin_user_action buffer' touchManagedPtr buffer return () #if ENABLE_OVERLOADING data TextBufferBeginUserActionMethodInfo instance (signature ~ (m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferBeginUserActionMethodInfo a signature where overloadedMethod _ = textBufferBeginUserAction #endif -- method TextBuffer::copy_clipboard -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "clipboard", argType = TInterface (Name {namespace = "Gtk", name = "Clipboard"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GtkClipboard object to copy to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_copy_clipboard" gtk_text_buffer_copy_clipboard :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.Clipboard.Clipboard -> -- clipboard : TInterface (Name {namespace = "Gtk", name = "Clipboard"}) IO () {- | Copies the currently-selected text to a clipboard. -} textBufferCopyClipboard :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@clipboard@/: the 'GI.Gtk.Objects.Clipboard.Clipboard' object to copy to -} -> m () textBufferCopyClipboard buffer clipboard = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer clipboard' <- unsafeManagedPtrCastPtr clipboard gtk_text_buffer_copy_clipboard buffer' clipboard' touchManagedPtr buffer touchManagedPtr clipboard return () #if ENABLE_OVERLOADING data TextBufferCopyClipboardMethodInfo instance (signature ~ (b -> m ()), MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => O.MethodInfo TextBufferCopyClipboardMethodInfo a signature where overloadedMethod _ = textBufferCopyClipboard #endif -- method TextBuffer::create_child_anchor -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "location in the buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TextChildAnchor"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_create_child_anchor" gtk_text_buffer_create_child_anchor :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO (Ptr Gtk.TextChildAnchor.TextChildAnchor) {- | This is a convenience function which simply creates a child anchor with 'GI.Gtk.Objects.TextChildAnchor.textChildAnchorNew' and inserts it into the buffer with 'GI.Gtk.Objects.TextBuffer.textBufferInsertChildAnchor'. The new anchor is owned by the buffer; no reference count is returned to the caller of 'GI.Gtk.Objects.TextBuffer.textBufferCreateChildAnchor'. -} textBufferCreateChildAnchor :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: location in the buffer -} -> m Gtk.TextChildAnchor.TextChildAnchor {- ^ __Returns:__ the created child anchor -} textBufferCreateChildAnchor buffer iter = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter result <- gtk_text_buffer_create_child_anchor buffer' iter' checkUnexpectedReturnNULL "textBufferCreateChildAnchor" result result' <- (newObject Gtk.TextChildAnchor.TextChildAnchor) result touchManagedPtr buffer touchManagedPtr iter return result' #if ENABLE_OVERLOADING data TextBufferCreateChildAnchorMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> m Gtk.TextChildAnchor.TextChildAnchor), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferCreateChildAnchorMethodInfo a signature where overloadedMethod _ = textBufferCreateChildAnchor #endif -- method TextBuffer::create_mark -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mark_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "name for mark, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "where", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "location to place mark", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "left_gravity", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the mark has left gravity", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TextMark"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_create_mark" gtk_text_buffer_create_mark :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- mark_name : TBasicType TUTF8 Ptr Gtk.TextIter.TextIter -> -- where : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CInt -> -- left_gravity : TBasicType TBoolean IO (Ptr Gtk.TextMark.TextMark) {- | Creates a mark at position /@where@/. If /@markName@/ is 'Nothing', the mark is anonymous; otherwise, the mark can be retrieved by name using 'GI.Gtk.Objects.TextBuffer.textBufferGetMark'. If a mark has left gravity, and text is inserted at the mark’s current location, the mark will be moved to the left of the newly-inserted text. If the mark has right gravity (/@leftGravity@/ = 'False'), the mark will end up on the right of newly-inserted text. The standard left-to-right cursor is a mark with right gravity (when you type, the cursor stays on the right side of the text you’re typing). The caller of this function does not own a reference to the returned 'GI.Gtk.Objects.TextMark.TextMark', so you can ignore the return value if you like. Marks are owned by the buffer and go away when the buffer does. Emits the 'GI.Gtk.Objects.TextBuffer.TextBuffer'::@/mark-set/@ signal as notification of the mark\'s initial placement. -} textBufferCreateMark :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Maybe (T.Text) {- ^ /@markName@/: name for mark, or 'Nothing' -} -> Gtk.TextIter.TextIter {- ^ /@where@/: location to place mark -} -> Bool {- ^ /@leftGravity@/: whether the mark has left gravity -} -> m Gtk.TextMark.TextMark {- ^ __Returns:__ the new 'GI.Gtk.Objects.TextMark.TextMark' object -} textBufferCreateMark buffer markName where_ leftGravity = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer maybeMarkName <- case markName of Nothing -> return nullPtr Just jMarkName -> do jMarkName' <- textToCString jMarkName return jMarkName' where_' <- unsafeManagedPtrGetPtr where_ let leftGravity' = (fromIntegral . fromEnum) leftGravity result <- gtk_text_buffer_create_mark buffer' maybeMarkName where_' leftGravity' checkUnexpectedReturnNULL "textBufferCreateMark" result result' <- (newObject Gtk.TextMark.TextMark) result touchManagedPtr buffer touchManagedPtr where_ freeMem maybeMarkName return result' #if ENABLE_OVERLOADING data TextBufferCreateMarkMethodInfo instance (signature ~ (Maybe (T.Text) -> Gtk.TextIter.TextIter -> Bool -> m Gtk.TextMark.TextMark), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferCreateMarkMethodInfo a signature where overloadedMethod _ = textBufferCreateMark #endif -- method TextBuffer::cut_clipboard -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "clipboard", argType = TInterface (Name {namespace = "Gtk", name = "Clipboard"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GtkClipboard object to cut to", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "default editability of the buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_cut_clipboard" gtk_text_buffer_cut_clipboard :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.Clipboard.Clipboard -> -- clipboard : TInterface (Name {namespace = "Gtk", name = "Clipboard"}) CInt -> -- default_editable : TBasicType TBoolean IO () {- | Copies the currently-selected text to a clipboard, then deletes said text if it’s editable. -} textBufferCutClipboard :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@clipboard@/: the 'GI.Gtk.Objects.Clipboard.Clipboard' object to cut to -} -> Bool {- ^ /@defaultEditable@/: default editability of the buffer -} -> m () textBufferCutClipboard buffer clipboard defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer clipboard' <- unsafeManagedPtrCastPtr clipboard let defaultEditable' = (fromIntegral . fromEnum) defaultEditable gtk_text_buffer_cut_clipboard buffer' clipboard' defaultEditable' touchManagedPtr buffer touchManagedPtr clipboard return () #if ENABLE_OVERLOADING data TextBufferCutClipboardMethodInfo instance (signature ~ (b -> Bool -> m ()), MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => O.MethodInfo TextBufferCutClipboardMethodInfo a signature where overloadedMethod _ = textBufferCutClipboard #endif -- method TextBuffer::delete -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "another position in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_delete" gtk_text_buffer_delete :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Deletes text between /@start@/ and /@end@/. The order of /@start@/ and /@end@/ is not actually relevant; 'GI.Gtk.Objects.TextBuffer.textBufferDelete' will reorder them. This function actually emits the “delete-range” signal, and the default handler of that signal deletes the text. Because the buffer is modified, all outstanding iterators become invalid after calling this function; however, the /@start@/ and /@end@/ will be re-initialized to point to the location where text was deleted. -} textBufferDelete :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: a position in /@buffer@/ -} -> Gtk.TextIter.TextIter {- ^ /@end@/: another position in /@buffer@/ -} -> m () textBufferDelete buffer start end = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end gtk_text_buffer_delete buffer' start' end' touchManagedPtr buffer touchManagedPtr start touchManagedPtr end return () #if ENABLE_OVERLOADING data TextBufferDeleteMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferDeleteMethodInfo a signature where overloadedMethod _ = textBufferDelete #endif -- method TextBuffer::delete_interactive -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start_iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "start of range to delete", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end_iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "end of range", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the buffer is editable by default", 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 "gtk_text_buffer_delete_interactive" gtk_text_buffer_delete_interactive :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- start_iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end_iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CInt -> -- default_editable : TBasicType TBoolean IO CInt {- | Deletes all editable text in the given range. Calls 'GI.Gtk.Objects.TextBuffer.textBufferDelete' for each editable sub-range of [/@start@/,/@end@/). /@start@/ and /@end@/ are revalidated to point to the location of the last deleted range, or left untouched if no text was deleted. -} textBufferDeleteInteractive :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@startIter@/: start of range to delete -} -> Gtk.TextIter.TextIter {- ^ /@endIter@/: end of range -} -> Bool {- ^ /@defaultEditable@/: whether the buffer is editable by default -} -> m Bool {- ^ __Returns:__ whether some text was actually deleted -} textBufferDeleteInteractive buffer startIter endIter defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer startIter' <- unsafeManagedPtrGetPtr startIter endIter' <- unsafeManagedPtrGetPtr endIter let defaultEditable' = (fromIntegral . fromEnum) defaultEditable result <- gtk_text_buffer_delete_interactive buffer' startIter' endIter' defaultEditable' let result' = (/= 0) result touchManagedPtr buffer touchManagedPtr startIter touchManagedPtr endIter return result' #if ENABLE_OVERLOADING data TextBufferDeleteInteractiveMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> Bool -> m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferDeleteInteractiveMethodInfo a signature where overloadedMethod _ = textBufferDeleteInteractive #endif -- method TextBuffer::delete_mark -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mark", argType = TInterface (Name {namespace = "Gtk", name = "TextMark"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextMark in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_delete_mark" gtk_text_buffer_delete_mark :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextMark.TextMark -> -- mark : TInterface (Name {namespace = "Gtk", name = "TextMark"}) IO () {- | Deletes /@mark@/, so that it’s no longer located anywhere in the buffer. Removes the reference the buffer holds to the mark, so if you haven’t called 'GI.GObject.Objects.Object.objectRef' on the mark, it will be freed. Even if the mark isn’t freed, most operations on /@mark@/ become invalid, until it gets added to a buffer again with 'GI.Gtk.Objects.TextBuffer.textBufferAddMark'. Use 'GI.Gtk.Objects.TextMark.textMarkGetDeleted' to find out if a mark has been removed from its buffer. The 'GI.Gtk.Objects.TextBuffer.TextBuffer'::@/mark-deleted/@ signal will be emitted as notification after the mark is deleted. -} textBufferDeleteMark :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@mark@/: a 'GI.Gtk.Objects.TextMark.TextMark' in /@buffer@/ -} -> m () textBufferDeleteMark buffer mark = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer mark' <- unsafeManagedPtrCastPtr mark gtk_text_buffer_delete_mark buffer' mark' touchManagedPtr buffer touchManagedPtr mark return () #if ENABLE_OVERLOADING data TextBufferDeleteMarkMethodInfo instance (signature ~ (b -> m ()), MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => O.MethodInfo TextBufferDeleteMarkMethodInfo a signature where overloadedMethod _ = textBufferDeleteMark #endif -- method TextBuffer::delete_mark_by_name -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "name of a mark in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_delete_mark_by_name" gtk_text_buffer_delete_mark_by_name :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- name : TBasicType TUTF8 IO () {- | Deletes the mark named /@name@/; the mark must exist. See 'GI.Gtk.Objects.TextBuffer.textBufferDeleteMark' for details. -} textBufferDeleteMarkByName :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@name@/: name of a mark in /@buffer@/ -} -> m () textBufferDeleteMarkByName buffer name = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer name' <- textToCString name gtk_text_buffer_delete_mark_by_name buffer' name' touchManagedPtr buffer freeMem name' return () #if ENABLE_OVERLOADING data TextBufferDeleteMarkByNameMethodInfo instance (signature ~ (T.Text -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferDeleteMarkByNameMethodInfo a signature where overloadedMethod _ = textBufferDeleteMarkByName #endif -- method TextBuffer::delete_selection -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "interactive", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the deletion is caused by user interaction", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the buffer is editable by default", 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 "gtk_text_buffer_delete_selection" gtk_text_buffer_delete_selection :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CInt -> -- interactive : TBasicType TBoolean CInt -> -- default_editable : TBasicType TBoolean IO CInt {- | Deletes the range between the “insert” and “selection_bound” marks, that is, the currently-selected text. If /@interactive@/ is 'True', the editability of the selection will be considered (users can’t delete uneditable text). -} textBufferDeleteSelection :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Bool {- ^ /@interactive@/: whether the deletion is caused by user interaction -} -> Bool {- ^ /@defaultEditable@/: whether the buffer is editable by default -} -> m Bool {- ^ __Returns:__ whether there was a non-empty selection to delete -} textBufferDeleteSelection buffer interactive defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer let interactive' = (fromIntegral . fromEnum) interactive let defaultEditable' = (fromIntegral . fromEnum) defaultEditable result <- gtk_text_buffer_delete_selection buffer' interactive' defaultEditable' let result' = (/= 0) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferDeleteSelectionMethodInfo instance (signature ~ (Bool -> Bool -> m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferDeleteSelectionMethodInfo a signature where overloadedMethod _ = textBufferDeleteSelection #endif -- method TextBuffer::deserialize -- method type : OrdinaryMethod -- Args : [Arg {argCName = "register_buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GtkTextBuffer @format is registered with", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "content_buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GtkTextBuffer to deserialize into", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "Gdk", name = "Atom"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the rich text format to use for deserializing", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "insertion point for the deserialized text", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "data", argType = TCArray False (-1) 5 (TBasicType TUInt8), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "data to deserialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of @data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [Arg {argCName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of @data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- returnType : Just (TBasicType TBoolean) -- throws : True -- Skip return : False foreign import ccall "gtk_text_buffer_deserialize" gtk_text_buffer_deserialize :: Ptr TextBuffer -> -- register_buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr TextBuffer -> -- content_buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gdk.Atom.Atom -> -- format : TInterface (Name {namespace = "Gdk", name = "Atom"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Word8 -> -- data : TCArray False (-1) 5 (TBasicType TUInt8) Word64 -> -- length : TBasicType TUInt64 Ptr (Ptr GError) -> -- error IO CInt {- | This function deserializes rich text in format /@format@/ and inserts it at /@iter@/. /@formats@/ to be used must be registered using 'GI.Gtk.Objects.TextBuffer.textBufferRegisterDeserializeFormat' or 'GI.Gtk.Objects.TextBuffer.textBufferRegisterDeserializeTagset' beforehand. /Since: 2.10/ -} textBufferDeserialize :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, IsTextBuffer b) => a {- ^ /@registerBuffer@/: the 'GI.Gtk.Objects.TextBuffer.TextBuffer' /@format@/ is registered with -} -> b {- ^ /@contentBuffer@/: the 'GI.Gtk.Objects.TextBuffer.TextBuffer' to deserialize into -} -> Gdk.Atom.Atom {- ^ /@format@/: the rich text format to use for deserializing -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: insertion point for the deserialized text -} -> ByteString {- ^ /@data@/: data to deserialize -} -> m () {- ^ /(Can throw 'Data.GI.Base.GError.GError')/ -} textBufferDeserialize registerBuffer contentBuffer format iter data_ = liftIO $ do let length_ = fromIntegral $ B.length data_ registerBuffer' <- unsafeManagedPtrCastPtr registerBuffer contentBuffer' <- unsafeManagedPtrCastPtr contentBuffer format' <- unsafeManagedPtrGetPtr format iter' <- unsafeManagedPtrGetPtr iter data_' <- packByteString data_ onException (do _ <- propagateGError $ gtk_text_buffer_deserialize registerBuffer' contentBuffer' format' iter' data_' length_ touchManagedPtr registerBuffer touchManagedPtr contentBuffer touchManagedPtr format touchManagedPtr iter freeMem data_' return () ) (do freeMem data_' ) #if ENABLE_OVERLOADING data TextBufferDeserializeMethodInfo instance (signature ~ (b -> Gdk.Atom.Atom -> Gtk.TextIter.TextIter -> ByteString -> m ()), MonadIO m, IsTextBuffer a, IsTextBuffer b) => O.MethodInfo TextBufferDeserializeMethodInfo a signature where overloadedMethod _ = textBufferDeserialize #endif -- method TextBuffer::deserialize_get_can_create_tags -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "Gdk", name = "Atom"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GdkAtom representing a registered rich text format", 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 "gtk_text_buffer_deserialize_get_can_create_tags" gtk_text_buffer_deserialize_get_can_create_tags :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gdk.Atom.Atom -> -- format : TInterface (Name {namespace = "Gdk", name = "Atom"}) IO CInt {- | This functions returns the value set with 'GI.Gtk.Objects.TextBuffer.textBufferDeserializeSetCanCreateTags' /Since: 2.10/ -} textBufferDeserializeGetCanCreateTags :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gdk.Atom.Atom {- ^ /@format@/: a 'GI.Gdk.Structs.Atom.Atom' representing a registered rich text format -} -> m Bool {- ^ __Returns:__ whether deserializing this format may create tags -} textBufferDeserializeGetCanCreateTags buffer format = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer format' <- unsafeManagedPtrGetPtr format result <- gtk_text_buffer_deserialize_get_can_create_tags buffer' format' let result' = (/= 0) result touchManagedPtr buffer touchManagedPtr format return result' #if ENABLE_OVERLOADING data TextBufferDeserializeGetCanCreateTagsMethodInfo instance (signature ~ (Gdk.Atom.Atom -> m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferDeserializeGetCanCreateTagsMethodInfo a signature where overloadedMethod _ = textBufferDeserializeGetCanCreateTags #endif -- method TextBuffer::deserialize_set_can_create_tags -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "Gdk", name = "Atom"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GdkAtom representing a registered rich text format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "can_create_tags", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether deserializing this format may create tags", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_deserialize_set_can_create_tags" gtk_text_buffer_deserialize_set_can_create_tags :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gdk.Atom.Atom -> -- format : TInterface (Name {namespace = "Gdk", name = "Atom"}) CInt -> -- can_create_tags : TBasicType TBoolean IO () {- | Use this function to allow a rich text deserialization function to create new tags in the receiving buffer. Note that using this function is almost always a bad idea, because the rich text functions you register should know how to map the rich text format they handler to your text buffers set of tags. The ability of creating new (arbitrary!) tags in the receiving buffer is meant for special rich text formats like the internal one that is registered using 'GI.Gtk.Objects.TextBuffer.textBufferRegisterDeserializeTagset', because that format is essentially a dump of the internal structure of the source buffer, including its tag names. You should allow creation of tags only if you know what you are doing, e.g. if you defined a tagset name for your application suite’s text buffers and you know that it’s fine to receive new tags from these buffers, because you know that your application can handle the newly created tags. /Since: 2.10/ -} textBufferDeserializeSetCanCreateTags :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gdk.Atom.Atom {- ^ /@format@/: a 'GI.Gdk.Structs.Atom.Atom' representing a registered rich text format -} -> Bool {- ^ /@canCreateTags@/: whether deserializing this format may create tags -} -> m () textBufferDeserializeSetCanCreateTags buffer format canCreateTags = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer format' <- unsafeManagedPtrGetPtr format let canCreateTags' = (fromIntegral . fromEnum) canCreateTags gtk_text_buffer_deserialize_set_can_create_tags buffer' format' canCreateTags' touchManagedPtr buffer touchManagedPtr format return () #if ENABLE_OVERLOADING data TextBufferDeserializeSetCanCreateTagsMethodInfo instance (signature ~ (Gdk.Atom.Atom -> Bool -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferDeserializeSetCanCreateTagsMethodInfo a signature where overloadedMethod _ = textBufferDeserializeSetCanCreateTags #endif -- method TextBuffer::end_user_action -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_end_user_action" gtk_text_buffer_end_user_action :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO () {- | Should be paired with a call to 'GI.Gtk.Objects.TextBuffer.textBufferBeginUserAction'. See that function for a full explanation. -} textBufferEndUserAction :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m () textBufferEndUserAction buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer gtk_text_buffer_end_user_action buffer' touchManagedPtr buffer return () #if ENABLE_OVERLOADING data TextBufferEndUserActionMethodInfo instance (signature ~ (m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferEndUserActionMethodInfo a signature where overloadedMethod _ = textBufferEndUserAction #endif -- method TextBuffer::get_bounds -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize with first position in the buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize with the end iterator", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_bounds" gtk_text_buffer_get_bounds :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Retrieves the first and last iterators in the buffer, i.e. the entire buffer lies within the range [/@start@/,/@end@/). -} textBufferGetBounds :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m ((Gtk.TextIter.TextIter, Gtk.TextIter.TextIter)) textBufferGetBounds buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer start <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) end <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) gtk_text_buffer_get_bounds buffer' start end start' <- (wrapBoxed Gtk.TextIter.TextIter) start end' <- (wrapBoxed Gtk.TextIter.TextIter) end touchManagedPtr buffer return (start', end') #if ENABLE_OVERLOADING data TextBufferGetBoundsMethodInfo instance (signature ~ (m ((Gtk.TextIter.TextIter, Gtk.TextIter.TextIter))), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetBoundsMethodInfo a signature where overloadedMethod _ = textBufferGetBounds #endif -- method TextBuffer::get_char_count -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TInt) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_char_count" gtk_text_buffer_get_char_count :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO Int32 {- | Gets the number of characters in the buffer; note that characters and bytes are not the same, you can’t e.g. expect the contents of the buffer in string form to be this many bytes long. The character count is cached, so this function is very fast. -} textBufferGetCharCount :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Int32 {- ^ __Returns:__ number of characters in the buffer -} textBufferGetCharCount buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_char_count buffer' touchManagedPtr buffer return result #if ENABLE_OVERLOADING data TextBufferGetCharCountMethodInfo instance (signature ~ (m Int32), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetCharCountMethodInfo a signature where overloadedMethod _ = textBufferGetCharCount #endif -- method TextBuffer::get_copy_target_list -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TargetList"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_copy_target_list" gtk_text_buffer_get_copy_target_list :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO (Ptr Gtk.TargetList.TargetList) {- | This function returns the list of targets this text buffer can provide for copying and as DND source. The targets in the list are added with /@info@/ values from the 'GI.Gtk.Enums.TextBufferTargetInfo' enum, using 'GI.Gtk.Structs.TargetList.targetListAddRichTextTargets' and 'GI.Gtk.Structs.TargetList.targetListAddTextTargets'. /Since: 2.10/ -} textBufferGetCopyTargetList :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Gtk.TargetList.TargetList {- ^ __Returns:__ the 'GI.Gtk.Structs.TargetList.TargetList' -} textBufferGetCopyTargetList buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_copy_target_list buffer' checkUnexpectedReturnNULL "textBufferGetCopyTargetList" result result' <- (newBoxed Gtk.TargetList.TargetList) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferGetCopyTargetListMethodInfo instance (signature ~ (m Gtk.TargetList.TargetList), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetCopyTargetListMethodInfo a signature where overloadedMethod _ = textBufferGetCopyTargetList #endif -- method TextBuffer::get_deserialize_formats -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_formats", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the number of formats", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}] -- Lengths : [Arg {argCName = "n_formats", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the number of formats", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}] -- returnType : Just (TCArray False (-1) 1 (TInterface (Name {namespace = "Gdk", name = "Atom"}))) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_deserialize_formats" gtk_text_buffer_get_deserialize_formats :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Int32 -> -- n_formats : TBasicType TInt IO (Ptr (Ptr Gdk.Atom.Atom)) {- | This function returns the rich text deserialize formats registered with /@buffer@/ using 'GI.Gtk.Objects.TextBuffer.textBufferRegisterDeserializeFormat' or 'GI.Gtk.Objects.TextBuffer.textBufferRegisterDeserializeTagset' /Since: 2.10/ -} textBufferGetDeserializeFormats :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m [Gdk.Atom.Atom] {- ^ __Returns:__ an array of @/GdkAtoms/@ representing the registered formats. -} textBufferGetDeserializeFormats buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer nFormats <- allocMem :: IO (Ptr Int32) result <- gtk_text_buffer_get_deserialize_formats buffer' nFormats nFormats' <- peek nFormats checkUnexpectedReturnNULL "textBufferGetDeserializeFormats" result result' <- (unpackPtrArrayWithLength nFormats') result result'' <- mapM (newPtr Gdk.Atom.Atom) result' freeMem result touchManagedPtr buffer freeMem nFormats return result'' #if ENABLE_OVERLOADING data TextBufferGetDeserializeFormatsMethodInfo instance (signature ~ (m [Gdk.Atom.Atom]), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetDeserializeFormatsMethodInfo a signature where overloadedMethod _ = textBufferGetDeserializeFormats #endif -- method TextBuffer::get_end_iter -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_end_iter" gtk_text_buffer_get_end_iter :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Initializes /@iter@/ with the “end iterator,” one past the last valid character in the text buffer. If dereferenced with 'GI.Gtk.Structs.TextIter.textIterGetChar', the end iterator has a character value of 0. The entire buffer lies in the range from the first position in the buffer (call 'GI.Gtk.Objects.TextBuffer.textBufferGetStartIter' to get character position 0) to the end iterator. -} textBufferGetEndIter :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m (Gtk.TextIter.TextIter) textBufferGetEndIter buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) gtk_text_buffer_get_end_iter buffer' iter iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer return iter' #if ENABLE_OVERLOADING data TextBufferGetEndIterMethodInfo instance (signature ~ (m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetEndIterMethodInfo a signature where overloadedMethod _ = textBufferGetEndIter #endif -- method TextBuffer::get_has_selection -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", 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 "gtk_text_buffer_get_has_selection" gtk_text_buffer_get_has_selection :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO CInt {- | Indicates whether the buffer has some text currently selected. /Since: 2.10/ -} textBufferGetHasSelection :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Bool {- ^ __Returns:__ 'True' if the there is text selected -} textBufferGetHasSelection buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_has_selection buffer' let result' = (/= 0) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferGetHasSelectionMethodInfo instance (signature ~ (m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetHasSelectionMethodInfo a signature where overloadedMethod _ = textBufferGetHasSelection #endif -- method TextBuffer::get_insert -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TextMark"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_insert" gtk_text_buffer_get_insert :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO (Ptr Gtk.TextMark.TextMark) {- | Returns the mark that represents the cursor (insertion point). Equivalent to calling 'GI.Gtk.Objects.TextBuffer.textBufferGetMark' to get the mark named “insert”, but very slightly more efficient, and involves less typing. -} textBufferGetInsert :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Gtk.TextMark.TextMark {- ^ __Returns:__ insertion point mark -} textBufferGetInsert buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_insert buffer' checkUnexpectedReturnNULL "textBufferGetInsert" result result' <- (newObject Gtk.TextMark.TextMark) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferGetInsertMethodInfo instance (signature ~ (m Gtk.TextMark.TextMark), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetInsertMethodInfo a signature where overloadedMethod _ = textBufferGetInsert #endif -- method TextBuffer::get_iter_at_child_anchor -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an iterator to be initialized", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "anchor", argType = TInterface (Name {namespace = "Gtk", name = "TextChildAnchor"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a child anchor that appears in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_iter_at_child_anchor" gtk_text_buffer_get_iter_at_child_anchor :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextChildAnchor.TextChildAnchor -> -- anchor : TInterface (Name {namespace = "Gtk", name = "TextChildAnchor"}) IO () {- | Obtains the location of /@anchor@/ within /@buffer@/. -} textBufferGetIterAtChildAnchor :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextChildAnchor.IsTextChildAnchor b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@anchor@/: a child anchor that appears in /@buffer@/ -} -> m (Gtk.TextIter.TextIter) textBufferGetIterAtChildAnchor buffer anchor = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) anchor' <- unsafeManagedPtrCastPtr anchor gtk_text_buffer_get_iter_at_child_anchor buffer' iter anchor' iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer touchManagedPtr anchor return iter' #if ENABLE_OVERLOADING data TextBufferGetIterAtChildAnchorMethodInfo instance (signature ~ (b -> m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a, Gtk.TextChildAnchor.IsTextChildAnchor b) => O.MethodInfo TextBufferGetIterAtChildAnchorMethodInfo a signature where overloadedMethod _ = textBufferGetIterAtChildAnchor #endif -- method TextBuffer::get_iter_at_line -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "line_number", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "line number counting from 0", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_iter_at_line" gtk_text_buffer_get_iter_at_line :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Int32 -> -- line_number : TBasicType TInt IO () {- | Initializes /@iter@/ to the start of the given line. If /@lineNumber@/ is greater than the number of lines in the /@buffer@/, the end iterator is returned. -} textBufferGetIterAtLine :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Int32 {- ^ /@lineNumber@/: line number counting from 0 -} -> m (Gtk.TextIter.TextIter) textBufferGetIterAtLine buffer lineNumber = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) gtk_text_buffer_get_iter_at_line buffer' iter lineNumber iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer return iter' #if ENABLE_OVERLOADING data TextBufferGetIterAtLineMethodInfo instance (signature ~ (Int32 -> m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetIterAtLineMethodInfo a signature where overloadedMethod _ = textBufferGetIterAtLine #endif -- method TextBuffer::get_iter_at_line_index -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "line_number", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "line number counting from 0", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "byte_index", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "byte index from start of line", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_iter_at_line_index" gtk_text_buffer_get_iter_at_line_index :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Int32 -> -- line_number : TBasicType TInt Int32 -> -- byte_index : TBasicType TInt IO () {- | Obtains an iterator pointing to /@byteIndex@/ within the given line. /@byteIndex@/ must be the start of a UTF-8 character. Note bytes, not characters; UTF-8 may encode one character as multiple bytes. Before the 3.20 version, it was not allowed to pass an invalid location. Since the 3.20 version, if /@lineNumber@/ is greater than the number of lines in the /@buffer@/, the end iterator is returned. And if /@byteIndex@/ is off the end of the line, the iterator at the end of the line is returned. -} textBufferGetIterAtLineIndex :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Int32 {- ^ /@lineNumber@/: line number counting from 0 -} -> Int32 {- ^ /@byteIndex@/: byte index from start of line -} -> m (Gtk.TextIter.TextIter) textBufferGetIterAtLineIndex buffer lineNumber byteIndex = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) gtk_text_buffer_get_iter_at_line_index buffer' iter lineNumber byteIndex iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer return iter' #if ENABLE_OVERLOADING data TextBufferGetIterAtLineIndexMethodInfo instance (signature ~ (Int32 -> Int32 -> m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetIterAtLineIndexMethodInfo a signature where overloadedMethod _ = textBufferGetIterAtLineIndex #endif -- method TextBuffer::get_iter_at_line_offset -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "line_number", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "line number counting from 0", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "char_offset", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "char offset from start of line", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_iter_at_line_offset" gtk_text_buffer_get_iter_at_line_offset :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Int32 -> -- line_number : TBasicType TInt Int32 -> -- char_offset : TBasicType TInt IO () {- | Obtains an iterator pointing to /@charOffset@/ within the given line. Note characters, not bytes; UTF-8 may encode one character as multiple bytes. Before the 3.20 version, it was not allowed to pass an invalid location. Since the 3.20 version, if /@lineNumber@/ is greater than the number of lines in the /@buffer@/, the end iterator is returned. And if /@charOffset@/ is off the end of the line, the iterator at the end of the line is returned. -} textBufferGetIterAtLineOffset :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Int32 {- ^ /@lineNumber@/: line number counting from 0 -} -> Int32 {- ^ /@charOffset@/: char offset from start of line -} -> m (Gtk.TextIter.TextIter) textBufferGetIterAtLineOffset buffer lineNumber charOffset = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) gtk_text_buffer_get_iter_at_line_offset buffer' iter lineNumber charOffset iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer return iter' #if ENABLE_OVERLOADING data TextBufferGetIterAtLineOffsetMethodInfo instance (signature ~ (Int32 -> Int32 -> m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetIterAtLineOffsetMethodInfo a signature where overloadedMethod _ = textBufferGetIterAtLineOffset #endif -- method TextBuffer::get_iter_at_mark -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "mark", argType = TInterface (Name {namespace = "Gtk", name = "TextMark"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextMark in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_iter_at_mark" gtk_text_buffer_get_iter_at_mark :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextMark.TextMark -> -- mark : TInterface (Name {namespace = "Gtk", name = "TextMark"}) IO () {- | Initializes /@iter@/ with the current position of /@mark@/. -} textBufferGetIterAtMark :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@mark@/: a 'GI.Gtk.Objects.TextMark.TextMark' in /@buffer@/ -} -> m (Gtk.TextIter.TextIter) textBufferGetIterAtMark buffer mark = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) mark' <- unsafeManagedPtrCastPtr mark gtk_text_buffer_get_iter_at_mark buffer' iter mark' iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer touchManagedPtr mark return iter' #if ENABLE_OVERLOADING data TextBufferGetIterAtMarkMethodInfo instance (signature ~ (b -> m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => O.MethodInfo TextBufferGetIterAtMarkMethodInfo a signature where overloadedMethod _ = textBufferGetIterAtMark #endif -- method TextBuffer::get_iter_at_offset -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "char_offset", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "char offset from start of buffer, counting from 0, or -1", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_iter_at_offset" gtk_text_buffer_get_iter_at_offset :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Int32 -> -- char_offset : TBasicType TInt IO () {- | Initializes /@iter@/ to a position /@charOffset@/ chars from the start of the entire buffer. If /@charOffset@/ is -1 or greater than the number of characters in the buffer, /@iter@/ is initialized to the end iterator, the iterator one past the last valid character in the buffer. -} textBufferGetIterAtOffset :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Int32 {- ^ /@charOffset@/: char offset from start of buffer, counting from 0, or -1 -} -> m (Gtk.TextIter.TextIter) textBufferGetIterAtOffset buffer charOffset = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) gtk_text_buffer_get_iter_at_offset buffer' iter charOffset iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer return iter' #if ENABLE_OVERLOADING data TextBufferGetIterAtOffsetMethodInfo instance (signature ~ (Int32 -> m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetIterAtOffsetMethodInfo a signature where overloadedMethod _ = textBufferGetIterAtOffset #endif -- method TextBuffer::get_line_count -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TInt) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_line_count" gtk_text_buffer_get_line_count :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO Int32 {- | Obtains the number of lines in the buffer. This value is cached, so the function is very fast. -} textBufferGetLineCount :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Int32 {- ^ __Returns:__ number of lines in the buffer -} textBufferGetLineCount buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_line_count buffer' touchManagedPtr buffer return result #if ENABLE_OVERLOADING data TextBufferGetLineCountMethodInfo instance (signature ~ (m Int32), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetLineCountMethodInfo a signature where overloadedMethod _ = textBufferGetLineCount #endif -- method TextBuffer::get_mark -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a mark name", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TextMark"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_mark" gtk_text_buffer_get_mark :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- name : TBasicType TUTF8 IO (Ptr Gtk.TextMark.TextMark) {- | Returns the mark named /@name@/ in buffer /@buffer@/, or 'Nothing' if no such mark exists in the buffer. -} textBufferGetMark :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@name@/: a mark name -} -> m (Maybe Gtk.TextMark.TextMark) {- ^ __Returns:__ a 'GI.Gtk.Objects.TextMark.TextMark', or 'Nothing' -} textBufferGetMark buffer name = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer name' <- textToCString name result <- gtk_text_buffer_get_mark buffer' name' maybeResult <- convertIfNonNull result $ \result' -> do result'' <- (newObject Gtk.TextMark.TextMark) result' return result'' touchManagedPtr buffer freeMem name' return maybeResult #if ENABLE_OVERLOADING data TextBufferGetMarkMethodInfo instance (signature ~ (T.Text -> m (Maybe Gtk.TextMark.TextMark)), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetMarkMethodInfo a signature where overloadedMethod _ = textBufferGetMark #endif -- method TextBuffer::get_modified -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", 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 "gtk_text_buffer_get_modified" gtk_text_buffer_get_modified :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO CInt {- | Indicates whether the buffer has been modified since the last call to 'GI.Gtk.Objects.TextBuffer.textBufferSetModified' set the modification flag to 'False'. Used for example to enable a “save” function in a text editor. -} textBufferGetModified :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Bool {- ^ __Returns:__ 'True' if the buffer has been modified -} textBufferGetModified buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_modified buffer' let result' = (/= 0) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferGetModifiedMethodInfo instance (signature ~ (m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetModifiedMethodInfo a signature where overloadedMethod _ = textBufferGetModified #endif -- method TextBuffer::get_paste_target_list -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TargetList"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_paste_target_list" gtk_text_buffer_get_paste_target_list :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO (Ptr Gtk.TargetList.TargetList) {- | This function returns the list of targets this text buffer supports for pasting and as DND destination. The targets in the list are added with /@info@/ values from the 'GI.Gtk.Enums.TextBufferTargetInfo' enum, using 'GI.Gtk.Structs.TargetList.targetListAddRichTextTargets' and 'GI.Gtk.Structs.TargetList.targetListAddTextTargets'. /Since: 2.10/ -} textBufferGetPasteTargetList :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Gtk.TargetList.TargetList {- ^ __Returns:__ the 'GI.Gtk.Structs.TargetList.TargetList' -} textBufferGetPasteTargetList buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_paste_target_list buffer' checkUnexpectedReturnNULL "textBufferGetPasteTargetList" result result' <- (newBoxed Gtk.TargetList.TargetList) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferGetPasteTargetListMethodInfo instance (signature ~ (m Gtk.TargetList.TargetList), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetPasteTargetListMethodInfo a signature where overloadedMethod _ = textBufferGetPasteTargetList #endif -- method TextBuffer::get_selection_bound -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TextMark"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_selection_bound" gtk_text_buffer_get_selection_bound :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO (Ptr Gtk.TextMark.TextMark) {- | Returns the mark that represents the selection bound. Equivalent to calling 'GI.Gtk.Objects.TextBuffer.textBufferGetMark' to get the mark named “selection_bound”, but very slightly more efficient, and involves less typing. The currently-selected text in /@buffer@/ is the region between the “selection_bound” and “insert” marks. If “selection_bound” and “insert” are in the same place, then there is no current selection. 'GI.Gtk.Objects.TextBuffer.textBufferGetSelectionBounds' is another convenient function for handling the selection, if you just want to know whether there’s a selection and what its bounds are. -} textBufferGetSelectionBound :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Gtk.TextMark.TextMark {- ^ __Returns:__ selection bound mark -} textBufferGetSelectionBound buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_selection_bound buffer' checkUnexpectedReturnNULL "textBufferGetSelectionBound" result result' <- (newObject Gtk.TextMark.TextMark) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferGetSelectionBoundMethodInfo instance (signature ~ (m Gtk.TextMark.TextMark), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetSelectionBoundMethodInfo a signature where overloadedMethod _ = textBufferGetSelectionBound #endif -- method TextBuffer::get_selection_bounds -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize with selection start", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize with selection end", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TBoolean) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_selection_bounds" gtk_text_buffer_get_selection_bounds :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO CInt {- | Returns 'True' if some text is selected; places the bounds of the selection in /@start@/ and /@end@/ (if the selection has length 0, then /@start@/ and /@end@/ are filled in with the same value). /@start@/ and /@end@/ will be in ascending order. If /@start@/ and /@end@/ are NULL, then they are not filled in, but the return value still indicates whether text is selected. -} textBufferGetSelectionBounds :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m ((Bool, Gtk.TextIter.TextIter, Gtk.TextIter.TextIter)) {- ^ __Returns:__ whether the selection has nonzero length -} textBufferGetSelectionBounds buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer start <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) end <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) result <- gtk_text_buffer_get_selection_bounds buffer' start end let result' = (/= 0) result start' <- (wrapBoxed Gtk.TextIter.TextIter) start end' <- (wrapBoxed Gtk.TextIter.TextIter) end touchManagedPtr buffer return (result', start', end') #if ENABLE_OVERLOADING data TextBufferGetSelectionBoundsMethodInfo instance (signature ~ (m ((Bool, Gtk.TextIter.TextIter, Gtk.TextIter.TextIter))), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetSelectionBoundsMethodInfo a signature where overloadedMethod _ = textBufferGetSelectionBounds #endif -- method TextBuffer::get_serialize_formats -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_formats", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the number of formats", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}] -- Lengths : [Arg {argCName = "n_formats", argType = TBasicType TInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the number of formats", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}] -- returnType : Just (TCArray False (-1) 1 (TInterface (Name {namespace = "Gdk", name = "Atom"}))) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_serialize_formats" gtk_text_buffer_get_serialize_formats :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Int32 -> -- n_formats : TBasicType TInt IO (Ptr (Ptr Gdk.Atom.Atom)) {- | This function returns the rich text serialize formats registered with /@buffer@/ using 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeFormat' or 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeTagset' /Since: 2.10/ -} textBufferGetSerializeFormats :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m [Gdk.Atom.Atom] {- ^ __Returns:__ an array of @/GdkAtoms/@ representing the registered formats. -} textBufferGetSerializeFormats buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer nFormats <- allocMem :: IO (Ptr Int32) result <- gtk_text_buffer_get_serialize_formats buffer' nFormats nFormats' <- peek nFormats checkUnexpectedReturnNULL "textBufferGetSerializeFormats" result result' <- (unpackPtrArrayWithLength nFormats') result result'' <- mapM (newPtr Gdk.Atom.Atom) result' freeMem result touchManagedPtr buffer freeMem nFormats return result'' #if ENABLE_OVERLOADING data TextBufferGetSerializeFormatsMethodInfo instance (signature ~ (m [Gdk.Atom.Atom]), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetSerializeFormatsMethodInfo a signature where overloadedMethod _ = textBufferGetSerializeFormats #endif -- method TextBuffer::get_slice -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "start of a range", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "end of a range", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "include_hidden_chars", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether to include invisible text", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_slice" gtk_text_buffer_get_slice :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CInt -> -- include_hidden_chars : TBasicType TBoolean IO CString {- | Returns the text in the range [/@start@/,/@end@/). Excludes undisplayed text (text marked with tags that set the invisibility attribute) if /@includeHiddenChars@/ is 'False'. The returned string includes a 0xFFFC character whenever the buffer contains embedded images, so byte and character indexes into the returned string do correspond to byte and character indexes into the buffer. Contrast with 'GI.Gtk.Objects.TextBuffer.textBufferGetText'. Note that 0xFFFC can occur in normal text as well, so it is not a reliable indicator that a pixbuf or widget is in the buffer. -} textBufferGetSlice :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: start of a range -} -> Gtk.TextIter.TextIter {- ^ /@end@/: end of a range -} -> Bool {- ^ /@includeHiddenChars@/: whether to include invisible text -} -> m T.Text {- ^ __Returns:__ an allocated UTF-8 string -} textBufferGetSlice buffer start end includeHiddenChars = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end let includeHiddenChars' = (fromIntegral . fromEnum) includeHiddenChars result <- gtk_text_buffer_get_slice buffer' start' end' includeHiddenChars' checkUnexpectedReturnNULL "textBufferGetSlice" result result' <- cstringToText result freeMem result touchManagedPtr buffer touchManagedPtr start touchManagedPtr end return result' #if ENABLE_OVERLOADING data TextBufferGetSliceMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> Bool -> m T.Text), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetSliceMethodInfo a signature where overloadedMethod _ = textBufferGetSlice #endif -- method TextBuffer::get_start_iter -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "iterator to initialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_start_iter" gtk_text_buffer_get_start_iter :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Initialized /@iter@/ with the first position in the text buffer. This is the same as using 'GI.Gtk.Objects.TextBuffer.textBufferGetIterAtOffset' to get the iter at character offset 0. -} textBufferGetStartIter :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m (Gtk.TextIter.TextIter) textBufferGetStartIter buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter <- callocBoxedBytes 80 :: IO (Ptr Gtk.TextIter.TextIter) gtk_text_buffer_get_start_iter buffer' iter iter' <- (wrapBoxed Gtk.TextIter.TextIter) iter touchManagedPtr buffer return iter' #if ENABLE_OVERLOADING data TextBufferGetStartIterMethodInfo instance (signature ~ (m (Gtk.TextIter.TextIter)), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetStartIterMethodInfo a signature where overloadedMethod _ = textBufferGetStartIter #endif -- method TextBuffer::get_tag_table -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gtk", name = "TextTagTable"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_tag_table" gtk_text_buffer_get_tag_table :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) IO (Ptr Gtk.TextTagTable.TextTagTable) {- | Get the 'GI.Gtk.Objects.TextTagTable.TextTagTable' associated with this buffer. -} textBufferGetTagTable :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> m Gtk.TextTagTable.TextTagTable {- ^ __Returns:__ the buffer’s tag table -} textBufferGetTagTable buffer = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer result <- gtk_text_buffer_get_tag_table buffer' checkUnexpectedReturnNULL "textBufferGetTagTable" result result' <- (newObject Gtk.TextTagTable.TextTagTable) result touchManagedPtr buffer return result' #if ENABLE_OVERLOADING data TextBufferGetTagTableMethodInfo instance (signature ~ (m Gtk.TextTagTable.TextTagTable), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetTagTableMethodInfo a signature where overloadedMethod _ = textBufferGetTagTable #endif -- method TextBuffer::get_text -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "start of a range", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "end of a range", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "include_hidden_chars", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether to include invisible text", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_get_text" gtk_text_buffer_get_text :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CInt -> -- include_hidden_chars : TBasicType TBoolean IO CString {- | Returns the text in the range [/@start@/,/@end@/). Excludes undisplayed text (text marked with tags that set the invisibility attribute) if /@includeHiddenChars@/ is 'False'. Does not include characters representing embedded images, so byte and character indexes into the returned string do not correspond to byte and character indexes into the buffer. Contrast with 'GI.Gtk.Objects.TextBuffer.textBufferGetSlice'. -} textBufferGetText :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: start of a range -} -> Gtk.TextIter.TextIter {- ^ /@end@/: end of a range -} -> Bool {- ^ /@includeHiddenChars@/: whether to include invisible text -} -> m T.Text {- ^ __Returns:__ an allocated UTF-8 string -} textBufferGetText buffer start end includeHiddenChars = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end let includeHiddenChars' = (fromIntegral . fromEnum) includeHiddenChars result <- gtk_text_buffer_get_text buffer' start' end' includeHiddenChars' checkUnexpectedReturnNULL "textBufferGetText" result result' <- cstringToText result freeMem result touchManagedPtr buffer touchManagedPtr start touchManagedPtr end return result' #if ENABLE_OVERLOADING data TextBufferGetTextMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> Bool -> m T.Text), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferGetTextMethodInfo a signature where overloadedMethod _ = textBufferGetText #endif -- method TextBuffer::insert -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in the buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "text in UTF-8 format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "len", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of text in bytes, or -1", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_insert" gtk_text_buffer_insert :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CString -> -- text : TBasicType TUTF8 Int32 -> -- len : TBasicType TInt IO () {- | Inserts /@len@/ bytes of /@text@/ at position /@iter@/. If /@len@/ is -1, /@text@/ must be nul-terminated and will be inserted in its entirety. Emits the “insert-text” signal; insertion actually occurs in the default handler for the signal. /@iter@/ is invalidated when insertion occurs (because the buffer contents change), but the default signal handler revalidates it to point to the end of the inserted text. -} textBufferInsert :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: a position in the buffer -} -> T.Text {- ^ /@text@/: text in UTF-8 format -} -> Int32 {- ^ /@len@/: length of text in bytes, or -1 -} -> m () textBufferInsert buffer iter text len = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter text' <- textToCString text gtk_text_buffer_insert buffer' iter' text' len touchManagedPtr buffer touchManagedPtr iter freeMem text' return () #if ENABLE_OVERLOADING data TextBufferInsertMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> T.Text -> Int32 -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferInsertMethodInfo a signature where overloadedMethod _ = textBufferInsert #endif -- method TextBuffer::insert_at_cursor -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "text in UTF-8 format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "len", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of text, in bytes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_insert_at_cursor" gtk_text_buffer_insert_at_cursor :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- text : TBasicType TUTF8 Int32 -> -- len : TBasicType TInt IO () {- | Simply calls 'GI.Gtk.Objects.TextBuffer.textBufferInsert', using the current cursor position as the insertion point. -} textBufferInsertAtCursor :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@text@/: text in UTF-8 format -} -> Int32 {- ^ /@len@/: length of text, in bytes -} -> m () textBufferInsertAtCursor buffer text len = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer text' <- textToCString text gtk_text_buffer_insert_at_cursor buffer' text' len touchManagedPtr buffer freeMem text' return () #if ENABLE_OVERLOADING data TextBufferInsertAtCursorMethodInfo instance (signature ~ (T.Text -> Int32 -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferInsertAtCursorMethodInfo a signature where overloadedMethod _ = textBufferInsertAtCursor #endif -- method TextBuffer::insert_child_anchor -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "location to insert the anchor", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "anchor", argType = TInterface (Name {namespace = "Gtk", name = "TextChildAnchor"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextChildAnchor", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_insert_child_anchor" gtk_text_buffer_insert_child_anchor :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextChildAnchor.TextChildAnchor -> -- anchor : TInterface (Name {namespace = "Gtk", name = "TextChildAnchor"}) IO () {- | Inserts a child widget anchor into the text buffer at /@iter@/. The anchor will be counted as one character in character counts, and when obtaining the buffer contents as a string, will be represented by the Unicode “object replacement character” 0xFFFC. Note that the “slice” variants for obtaining portions of the buffer as a string include this character for child anchors, but the “text” variants do not. E.g. see 'GI.Gtk.Objects.TextBuffer.textBufferGetSlice' and 'GI.Gtk.Objects.TextBuffer.textBufferGetText'. Consider 'GI.Gtk.Objects.TextBuffer.textBufferCreateChildAnchor' as a more convenient alternative to this function. The buffer will add a reference to the anchor, so you can unref it after insertion. -} textBufferInsertChildAnchor :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextChildAnchor.IsTextChildAnchor b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: location to insert the anchor -} -> b {- ^ /@anchor@/: a 'GI.Gtk.Objects.TextChildAnchor.TextChildAnchor' -} -> m () textBufferInsertChildAnchor buffer iter anchor = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter anchor' <- unsafeManagedPtrCastPtr anchor gtk_text_buffer_insert_child_anchor buffer' iter' anchor' touchManagedPtr buffer touchManagedPtr iter touchManagedPtr anchor return () #if ENABLE_OVERLOADING data TextBufferInsertChildAnchorMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> b -> m ()), MonadIO m, IsTextBuffer a, Gtk.TextChildAnchor.IsTextChildAnchor b) => O.MethodInfo TextBufferInsertChildAnchorMethodInfo a signature where overloadedMethod _ = textBufferInsertChildAnchor #endif -- method TextBuffer::insert_interactive -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "some UTF-8 text", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "len", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of text in bytes, or -1", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "default editability of buffer", 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 "gtk_text_buffer_insert_interactive" gtk_text_buffer_insert_interactive :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CString -> -- text : TBasicType TUTF8 Int32 -> -- len : TBasicType TInt CInt -> -- default_editable : TBasicType TBoolean IO CInt {- | Like 'GI.Gtk.Objects.TextBuffer.textBufferInsert', but the insertion will not occur if /@iter@/ is at a non-editable location in the buffer. Usually you want to prevent insertions at ineditable locations if the insertion results from a user action (is interactive). /@defaultEditable@/ indicates the editability of text that doesn\'t have a tag affecting editability applied to it. Typically the result of 'GI.Gtk.Objects.TextView.textViewGetEditable' is appropriate here. -} textBufferInsertInteractive :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: a position in /@buffer@/ -} -> T.Text {- ^ /@text@/: some UTF-8 text -} -> Int32 {- ^ /@len@/: length of text in bytes, or -1 -} -> Bool {- ^ /@defaultEditable@/: default editability of buffer -} -> m Bool {- ^ __Returns:__ whether text was actually inserted -} textBufferInsertInteractive buffer iter text len defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter text' <- textToCString text let defaultEditable' = (fromIntegral . fromEnum) defaultEditable result <- gtk_text_buffer_insert_interactive buffer' iter' text' len defaultEditable' let result' = (/= 0) result touchManagedPtr buffer touchManagedPtr iter freeMem text' return result' #if ENABLE_OVERLOADING data TextBufferInsertInteractiveMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> T.Text -> Int32 -> Bool -> m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferInsertInteractiveMethodInfo a signature where overloadedMethod _ = textBufferInsertInteractive #endif -- method TextBuffer::insert_interactive_at_cursor -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "text in UTF-8 format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "len", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of text in bytes, or -1", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "default editability of buffer", 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 "gtk_text_buffer_insert_interactive_at_cursor" gtk_text_buffer_insert_interactive_at_cursor :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- text : TBasicType TUTF8 Int32 -> -- len : TBasicType TInt CInt -> -- default_editable : TBasicType TBoolean IO CInt {- | Calls 'GI.Gtk.Objects.TextBuffer.textBufferInsertInteractive' at the cursor position. /@defaultEditable@/ indicates the editability of text that doesn\'t have a tag affecting editability applied to it. Typically the result of 'GI.Gtk.Objects.TextView.textViewGetEditable' is appropriate here. -} textBufferInsertInteractiveAtCursor :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@text@/: text in UTF-8 format -} -> Int32 {- ^ /@len@/: length of text in bytes, or -1 -} -> Bool {- ^ /@defaultEditable@/: default editability of buffer -} -> m Bool {- ^ __Returns:__ whether text was actually inserted -} textBufferInsertInteractiveAtCursor buffer text len defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer text' <- textToCString text let defaultEditable' = (fromIntegral . fromEnum) defaultEditable result <- gtk_text_buffer_insert_interactive_at_cursor buffer' text' len defaultEditable' let result' = (/= 0) result touchManagedPtr buffer freeMem text' return result' #if ENABLE_OVERLOADING data TextBufferInsertInteractiveAtCursorMethodInfo instance (signature ~ (T.Text -> Int32 -> Bool -> m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferInsertInteractiveAtCursorMethodInfo a signature where overloadedMethod _ = textBufferInsertInteractiveAtCursor #endif -- method TextBuffer::insert_markup -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "location to insert the markup", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "markup", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a nul-terminated UTF-8 string containing [Pango markup][PangoMarkupFormat]", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "len", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of @markup in bytes, or -1", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_insert_markup" gtk_text_buffer_insert_markup :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CString -> -- markup : TBasicType TUTF8 Int32 -> -- len : TBasicType TInt IO () {- | Inserts the text in /@markup@/ at position /@iter@/. /@markup@/ will be inserted in its entirety and must be nul-terminated and valid UTF-8. Emits the 'GI.Gtk.Objects.TextBuffer.TextBuffer'::@/insert-text/@ signal, possibly multiple times; insertion actually occurs in the default handler for the signal. /@iter@/ will point to the end of the inserted text on return. /Since: 3.16/ -} textBufferInsertMarkup :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: location to insert the markup -} -> T.Text {- ^ /@markup@/: a nul-terminated UTF-8 string containing [Pango markup][PangoMarkupFormat] -} -> Int32 {- ^ /@len@/: length of /@markup@/ in bytes, or -1 -} -> m () textBufferInsertMarkup buffer iter markup len = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter markup' <- textToCString markup gtk_text_buffer_insert_markup buffer' iter' markup' len touchManagedPtr buffer touchManagedPtr iter freeMem markup' return () #if ENABLE_OVERLOADING data TextBufferInsertMarkupMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> T.Text -> Int32 -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferInsertMarkupMethodInfo a signature where overloadedMethod _ = textBufferInsertMarkup #endif -- method TextBuffer::insert_pixbuf -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "location to insert the pixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "pixbuf", argType = TInterface (Name {namespace = "GdkPixbuf", name = "Pixbuf"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GdkPixbuf", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_insert_pixbuf" gtk_text_buffer_insert_pixbuf :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr GdkPixbuf.Pixbuf.Pixbuf -> -- pixbuf : TInterface (Name {namespace = "GdkPixbuf", name = "Pixbuf"}) IO () {- | Inserts an image into the text buffer at /@iter@/. The image will be counted as one character in character counts, and when obtaining the buffer contents as a string, will be represented by the Unicode “object replacement character” 0xFFFC. Note that the “slice” variants for obtaining portions of the buffer as a string include this character for pixbufs, but the “text” variants do not. e.g. see 'GI.Gtk.Objects.TextBuffer.textBufferGetSlice' and 'GI.Gtk.Objects.TextBuffer.textBufferGetText'. -} textBufferInsertPixbuf :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, GdkPixbuf.Pixbuf.IsPixbuf b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: location to insert the pixbuf -} -> b {- ^ /@pixbuf@/: a 'GI.GdkPixbuf.Objects.Pixbuf.Pixbuf' -} -> m () textBufferInsertPixbuf buffer iter pixbuf = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter pixbuf' <- unsafeManagedPtrCastPtr pixbuf gtk_text_buffer_insert_pixbuf buffer' iter' pixbuf' touchManagedPtr buffer touchManagedPtr iter touchManagedPtr pixbuf return () #if ENABLE_OVERLOADING data TextBufferInsertPixbufMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> b -> m ()), MonadIO m, IsTextBuffer a, GdkPixbuf.Pixbuf.IsPixbuf b) => O.MethodInfo TextBufferInsertPixbufMethodInfo a signature where overloadedMethod _ = textBufferInsertPixbuf #endif -- method TextBuffer::insert_range -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "another position in the same buffer as @start", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_insert_range" gtk_text_buffer_insert_range :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Copies text, tags, and pixbufs between /@start@/ and /@end@/ (the order of /@start@/ and /@end@/ doesn’t matter) and inserts the copy at /@iter@/. Used instead of simply getting\/inserting text because it preserves images and tags. If /@start@/ and /@end@/ are in a different buffer from /@buffer@/, the two buffers must share the same tag table. Implemented via emissions of the insert_text and apply_tag signals, so expect those. -} textBufferInsertRange :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: a position in /@buffer@/ -} -> Gtk.TextIter.TextIter {- ^ /@start@/: a position in a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@end@/: another position in the same buffer as /@start@/ -} -> m () textBufferInsertRange buffer iter start end = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end gtk_text_buffer_insert_range buffer' iter' start' end' touchManagedPtr buffer touchManagedPtr iter touchManagedPtr start touchManagedPtr end return () #if ENABLE_OVERLOADING data TextBufferInsertRangeMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferInsertRangeMethodInfo a signature where overloadedMethod _ = textBufferInsertRange #endif -- method TextBuffer::insert_range_interactive -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a position in a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "another position in the same buffer as @start", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "default editability of the buffer", 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 "gtk_text_buffer_insert_range_interactive" gtk_text_buffer_insert_range_interactive :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CInt -> -- default_editable : TBasicType TBoolean IO CInt {- | Same as 'GI.Gtk.Objects.TextBuffer.textBufferInsertRange', but does nothing if the insertion point isn’t editable. The /@defaultEditable@/ parameter indicates whether the text is editable at /@iter@/ if no tags enclosing /@iter@/ affect editability. Typically the result of 'GI.Gtk.Objects.TextView.textViewGetEditable' is appropriate here. -} textBufferInsertRangeInteractive :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@iter@/: a position in /@buffer@/ -} -> Gtk.TextIter.TextIter {- ^ /@start@/: a position in a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@end@/: another position in the same buffer as /@start@/ -} -> Bool {- ^ /@defaultEditable@/: default editability of the buffer -} -> m Bool {- ^ __Returns:__ whether an insertion was possible at /@iter@/ -} textBufferInsertRangeInteractive buffer iter start end defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer iter' <- unsafeManagedPtrGetPtr iter start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end let defaultEditable' = (fromIntegral . fromEnum) defaultEditable result <- gtk_text_buffer_insert_range_interactive buffer' iter' start' end' defaultEditable' let result' = (/= 0) result touchManagedPtr buffer touchManagedPtr iter touchManagedPtr start touchManagedPtr end return result' #if ENABLE_OVERLOADING data TextBufferInsertRangeInteractiveMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> Bool -> m Bool), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferInsertRangeInteractiveMethodInfo a signature where overloadedMethod _ = textBufferInsertRangeInteractive #endif -- method TextBuffer::move_mark -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mark", argType = TInterface (Name {namespace = "Gtk", name = "TextMark"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextMark", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "where", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "new location for @mark in @buffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_move_mark" gtk_text_buffer_move_mark :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextMark.TextMark -> -- mark : TInterface (Name {namespace = "Gtk", name = "TextMark"}) Ptr Gtk.TextIter.TextIter -> -- where : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Moves /@mark@/ to the new location /@where@/. Emits the 'GI.Gtk.Objects.TextBuffer.TextBuffer'::@/mark-set/@ signal as notification of the move. -} textBufferMoveMark :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@mark@/: a 'GI.Gtk.Objects.TextMark.TextMark' -} -> Gtk.TextIter.TextIter {- ^ /@where@/: new location for /@mark@/ in /@buffer@/ -} -> m () textBufferMoveMark buffer mark where_ = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer mark' <- unsafeManagedPtrCastPtr mark where_' <- unsafeManagedPtrGetPtr where_ gtk_text_buffer_move_mark buffer' mark' where_' touchManagedPtr buffer touchManagedPtr mark touchManagedPtr where_ return () #if ENABLE_OVERLOADING data TextBufferMoveMarkMethodInfo instance (signature ~ (b -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a, Gtk.TextMark.IsTextMark b) => O.MethodInfo TextBufferMoveMarkMethodInfo a signature where overloadedMethod _ = textBufferMoveMark #endif -- method TextBuffer::move_mark_by_name -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "name of a mark", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "where", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "new location for mark", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_move_mark_by_name" gtk_text_buffer_move_mark_by_name :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- name : TBasicType TUTF8 Ptr Gtk.TextIter.TextIter -> -- where : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Moves the mark named /@name@/ (which must exist) to location /@where@/. See 'GI.Gtk.Objects.TextBuffer.textBufferMoveMark' for details. -} textBufferMoveMarkByName :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@name@/: name of a mark -} -> Gtk.TextIter.TextIter {- ^ /@where@/: new location for mark -} -> m () textBufferMoveMarkByName buffer name where_ = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer name' <- textToCString name where_' <- unsafeManagedPtrGetPtr where_ gtk_text_buffer_move_mark_by_name buffer' name' where_' touchManagedPtr buffer touchManagedPtr where_ freeMem name' return () #if ENABLE_OVERLOADING data TextBufferMoveMarkByNameMethodInfo instance (signature ~ (T.Text -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferMoveMarkByNameMethodInfo a signature where overloadedMethod _ = textBufferMoveMarkByName #endif -- method TextBuffer::paste_clipboard -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "clipboard", argType = TInterface (Name {namespace = "Gtk", name = "Clipboard"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GtkClipboard to paste from", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "override_location", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "location to insert pasted text, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "default_editable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "whether the buffer is editable by default", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_paste_clipboard" gtk_text_buffer_paste_clipboard :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.Clipboard.Clipboard -> -- clipboard : TInterface (Name {namespace = "Gtk", name = "Clipboard"}) Ptr Gtk.TextIter.TextIter -> -- override_location : TInterface (Name {namespace = "Gtk", name = "TextIter"}) CInt -> -- default_editable : TBasicType TBoolean IO () {- | Pastes the contents of a clipboard. If /@overrideLocation@/ is 'Nothing', the pasted text will be inserted at the cursor position, or the buffer selection will be replaced if the selection is non-empty. Note: pasting is asynchronous, that is, we’ll ask for the paste data and return, and at some point later after the main loop runs, the paste data will be inserted. -} textBufferPasteClipboard :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@clipboard@/: the 'GI.Gtk.Objects.Clipboard.Clipboard' to paste from -} -> Maybe (Gtk.TextIter.TextIter) {- ^ /@overrideLocation@/: location to insert pasted text, or 'Nothing' -} -> Bool {- ^ /@defaultEditable@/: whether the buffer is editable by default -} -> m () textBufferPasteClipboard buffer clipboard overrideLocation defaultEditable = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer clipboard' <- unsafeManagedPtrCastPtr clipboard maybeOverrideLocation <- case overrideLocation of Nothing -> return nullPtr Just jOverrideLocation -> do jOverrideLocation' <- unsafeManagedPtrGetPtr jOverrideLocation return jOverrideLocation' let defaultEditable' = (fromIntegral . fromEnum) defaultEditable gtk_text_buffer_paste_clipboard buffer' clipboard' maybeOverrideLocation defaultEditable' touchManagedPtr buffer touchManagedPtr clipboard whenJust overrideLocation touchManagedPtr return () #if ENABLE_OVERLOADING data TextBufferPasteClipboardMethodInfo instance (signature ~ (b -> Maybe (Gtk.TextIter.TextIter) -> Bool -> m ()), MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => O.MethodInfo TextBufferPasteClipboardMethodInfo a signature where overloadedMethod _ = textBufferPasteClipboard #endif -- method TextBuffer::place_cursor -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "where", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "where to put the cursor", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_place_cursor" gtk_text_buffer_place_cursor :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- where : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | This function moves the “insert” and “selection_bound” marks simultaneously. If you move them to the same place in two steps with 'GI.Gtk.Objects.TextBuffer.textBufferMoveMark', you will temporarily select a region in between their old and new locations, which can be pretty inefficient since the temporarily-selected region will force stuff to be recalculated. This function moves them as a unit, which can be optimized. -} textBufferPlaceCursor :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@where@/: where to put the cursor -} -> m () textBufferPlaceCursor buffer where_ = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer where_' <- unsafeManagedPtrGetPtr where_ gtk_text_buffer_place_cursor buffer' where_' touchManagedPtr buffer touchManagedPtr where_ return () #if ENABLE_OVERLOADING data TextBufferPlaceCursorMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferPlaceCursorMethodInfo a signature where overloadedMethod _ = textBufferPlaceCursor #endif -- method TextBuffer::register_deserialize_format -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mime_type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the format\8217s mime-type", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "function", argType = TInterface (Name {namespace = "Gtk", name = "TextBufferDeserializeFunc"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the deserialize function to register", sinceVersion = Nothing}, argScope = ScopeTypeNotified, argClosure = 3, argDestroy = 4, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "@function\8217s user_data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data_destroy", argType = TInterface (Name {namespace = "GLib", name = "DestroyNotify"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a function to call when @user_data is no longer needed", sinceVersion = Nothing}, argScope = ScopeTypeAsync, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gdk", name = "Atom"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_register_deserialize_format" gtk_text_buffer_register_deserialize_format :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- mime_type : TBasicType TUTF8 FunPtr Gtk.Callbacks.C_TextBufferDeserializeFunc -> -- function : TInterface (Name {namespace = "Gtk", name = "TextBufferDeserializeFunc"}) Ptr () -> -- user_data : TBasicType TPtr FunPtr GLib.Callbacks.C_DestroyNotify -> -- user_data_destroy : TInterface (Name {namespace = "GLib", name = "DestroyNotify"}) IO (Ptr Gdk.Atom.Atom) {- | This function registers a rich text deserialization /@function@/ along with its /@mimeType@/ with the passed /@buffer@/. /Since: 2.10/ -} textBufferRegisterDeserializeFormat :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@mimeType@/: the format’s mime-type -} -> FunPtr Gtk.Callbacks.C_TextBufferDeserializeFunc {- ^ /@function@/: the deserialize function to register -} -> m Gdk.Atom.Atom {- ^ __Returns:__ the 'GI.Gdk.Structs.Atom.Atom' that corresponds to the newly registered format’s mime-type. -} textBufferRegisterDeserializeFormat buffer mimeType function = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer mimeType' <- textToCString mimeType let userData = castFunPtrToPtr function let userDataDestroy = safeFreeFunPtrPtr result <- gtk_text_buffer_register_deserialize_format buffer' mimeType' function userData userDataDestroy checkUnexpectedReturnNULL "textBufferRegisterDeserializeFormat" result result' <- (newPtr Gdk.Atom.Atom) result touchManagedPtr buffer freeMem mimeType' return result' #if ENABLE_OVERLOADING data TextBufferRegisterDeserializeFormatMethodInfo instance (signature ~ (T.Text -> FunPtr Gtk.Callbacks.C_TextBufferDeserializeFunc -> m Gdk.Atom.Atom), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferRegisterDeserializeFormatMethodInfo a signature where overloadedMethod _ = textBufferRegisterDeserializeFormat #endif -- method TextBuffer::register_deserialize_tagset -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tagset_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "an optional tagset name, on %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gdk", name = "Atom"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_register_deserialize_tagset" gtk_text_buffer_register_deserialize_tagset :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- tagset_name : TBasicType TUTF8 IO (Ptr Gdk.Atom.Atom) {- | This function registers GTK+’s internal rich text serialization format with the passed /@buffer@/. See 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeTagset' for details. /Since: 2.10/ -} textBufferRegisterDeserializeTagset :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Maybe (T.Text) {- ^ /@tagsetName@/: an optional tagset name, on 'Nothing' -} -> m Gdk.Atom.Atom {- ^ __Returns:__ the 'GI.Gdk.Structs.Atom.Atom' that corresponds to the newly registered format’s mime-type. -} textBufferRegisterDeserializeTagset buffer tagsetName = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer maybeTagsetName <- case tagsetName of Nothing -> return nullPtr Just jTagsetName -> do jTagsetName' <- textToCString jTagsetName return jTagsetName' result <- gtk_text_buffer_register_deserialize_tagset buffer' maybeTagsetName checkUnexpectedReturnNULL "textBufferRegisterDeserializeTagset" result result' <- (newPtr Gdk.Atom.Atom) result touchManagedPtr buffer freeMem maybeTagsetName return result' #if ENABLE_OVERLOADING data TextBufferRegisterDeserializeTagsetMethodInfo instance (signature ~ (Maybe (T.Text) -> m Gdk.Atom.Atom), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferRegisterDeserializeTagsetMethodInfo a signature where overloadedMethod _ = textBufferRegisterDeserializeTagset #endif -- method TextBuffer::register_serialize_format -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mime_type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the format\8217s mime-type", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "function", argType = TInterface (Name {namespace = "Gtk", name = "TextBufferSerializeFunc"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the serialize function to register", sinceVersion = Nothing}, argScope = ScopeTypeNotified, argClosure = 3, argDestroy = 4, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data", argType = TBasicType TPtr, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "@function\8217s user_data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "user_data_destroy", argType = TInterface (Name {namespace = "GLib", name = "DestroyNotify"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a function to call when @user_data is no longer needed", sinceVersion = Nothing}, argScope = ScopeTypeAsync, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gdk", name = "Atom"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_register_serialize_format" gtk_text_buffer_register_serialize_format :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- mime_type : TBasicType TUTF8 FunPtr Gtk.Callbacks.C_TextBufferSerializeFunc -> -- function : TInterface (Name {namespace = "Gtk", name = "TextBufferSerializeFunc"}) Ptr () -> -- user_data : TBasicType TPtr FunPtr GLib.Callbacks.C_DestroyNotify -> -- user_data_destroy : TInterface (Name {namespace = "GLib", name = "DestroyNotify"}) IO (Ptr Gdk.Atom.Atom) {- | This function registers a rich text serialization /@function@/ along with its /@mimeType@/ with the passed /@buffer@/. /Since: 2.10/ -} textBufferRegisterSerializeFormat :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@mimeType@/: the format’s mime-type -} -> Gtk.Callbacks.TextBufferSerializeFunc {- ^ /@function@/: the serialize function to register -} -> m Gdk.Atom.Atom {- ^ __Returns:__ the 'GI.Gdk.Structs.Atom.Atom' that corresponds to the newly registered format’s mime-type. -} textBufferRegisterSerializeFormat buffer mimeType function = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer mimeType' <- textToCString mimeType function' <- Gtk.Callbacks.mk_TextBufferSerializeFunc (Gtk.Callbacks.wrap_TextBufferSerializeFunc Nothing (Gtk.Callbacks.drop_closures_TextBufferSerializeFunc function)) let userData = castFunPtrToPtr function' let userDataDestroy = safeFreeFunPtrPtr result <- gtk_text_buffer_register_serialize_format buffer' mimeType' function' userData userDataDestroy checkUnexpectedReturnNULL "textBufferRegisterSerializeFormat" result result' <- (newPtr Gdk.Atom.Atom) result touchManagedPtr buffer freeMem mimeType' return result' #if ENABLE_OVERLOADING data TextBufferRegisterSerializeFormatMethodInfo instance (signature ~ (T.Text -> Gtk.Callbacks.TextBufferSerializeFunc -> m Gdk.Atom.Atom), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferRegisterSerializeFormatMethodInfo a signature where overloadedMethod _ = textBufferRegisterSerializeFormat #endif -- method TextBuffer::register_serialize_tagset -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tagset_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "an optional tagset name, on %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "Gdk", name = "Atom"})) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_register_serialize_tagset" gtk_text_buffer_register_serialize_tagset :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- tagset_name : TBasicType TUTF8 IO (Ptr Gdk.Atom.Atom) {- | This function registers GTK+’s internal rich text serialization format with the passed /@buffer@/. The internal format does not comply to any standard rich text format and only works between 'GI.Gtk.Objects.TextBuffer.TextBuffer' instances. It is capable of serializing all of a text buffer’s tags and embedded pixbufs. This function is just a wrapper around 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeFormat'. The mime type used for registering is “application\/x-gtk-text-buffer-rich-text”, or “application\/x-gtk-text-buffer-rich-text;format=/@tagsetName@/” if a /@tagsetName@/ was passed. The /@tagsetName@/ can be used to restrict the transfer of rich text to buffers with compatible sets of tags, in order to avoid unknown tags from being pasted. It is probably the common case to pass an identifier != 'Nothing' here, since the 'Nothing' tagset requires the receiving buffer to deal with with pasting of arbitrary tags. /Since: 2.10/ -} textBufferRegisterSerializeTagset :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Maybe (T.Text) {- ^ /@tagsetName@/: an optional tagset name, on 'Nothing' -} -> m Gdk.Atom.Atom {- ^ __Returns:__ the 'GI.Gdk.Structs.Atom.Atom' that corresponds to the newly registered format’s mime-type. -} textBufferRegisterSerializeTagset buffer tagsetName = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer maybeTagsetName <- case tagsetName of Nothing -> return nullPtr Just jTagsetName -> do jTagsetName' <- textToCString jTagsetName return jTagsetName' result <- gtk_text_buffer_register_serialize_tagset buffer' maybeTagsetName checkUnexpectedReturnNULL "textBufferRegisterSerializeTagset" result result' <- (newPtr Gdk.Atom.Atom) result touchManagedPtr buffer freeMem maybeTagsetName return result' #if ENABLE_OVERLOADING data TextBufferRegisterSerializeTagsetMethodInfo instance (signature ~ (Maybe (T.Text) -> m Gdk.Atom.Atom), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferRegisterSerializeTagsetMethodInfo a signature where overloadedMethod _ = textBufferRegisterSerializeTagset #endif -- method TextBuffer::remove_all_tags -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "one bound of range to be untagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "other bound of range to be untagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_remove_all_tags" gtk_text_buffer_remove_all_tags :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Removes all tags in the range between /@start@/ and /@end@/. Be careful with this function; it could remove tags added in code unrelated to the code you’re currently writing. That is, using this function is probably a bad idea if you have two or more unrelated code sections that add tags. -} textBufferRemoveAllTags :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: one bound of range to be untagged -} -> Gtk.TextIter.TextIter {- ^ /@end@/: other bound of range to be untagged -} -> m () textBufferRemoveAllTags buffer start end = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end gtk_text_buffer_remove_all_tags buffer' start' end' touchManagedPtr buffer touchManagedPtr start touchManagedPtr end return () #if ENABLE_OVERLOADING data TextBufferRemoveAllTagsMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferRemoveAllTagsMethodInfo a signature where overloadedMethod _ = textBufferRemoveAllTags #endif -- method TextBuffer::remove_selection_clipboard -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "clipboard", argType = TInterface (Name {namespace = "Gtk", name = "Clipboard"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkClipboard added to @buffer by\n gtk_text_buffer_add_selection_clipboard()", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_remove_selection_clipboard" gtk_text_buffer_remove_selection_clipboard :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.Clipboard.Clipboard -> -- clipboard : TInterface (Name {namespace = "Gtk", name = "Clipboard"}) IO () {- | Removes a 'GI.Gtk.Objects.Clipboard.Clipboard' added with 'GI.Gtk.Objects.TextBuffer.textBufferAddSelectionClipboard'. -} textBufferRemoveSelectionClipboard :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@clipboard@/: a 'GI.Gtk.Objects.Clipboard.Clipboard' added to /@buffer@/ by 'GI.Gtk.Objects.TextBuffer.textBufferAddSelectionClipboard' -} -> m () textBufferRemoveSelectionClipboard buffer clipboard = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer clipboard' <- unsafeManagedPtrCastPtr clipboard gtk_text_buffer_remove_selection_clipboard buffer' clipboard' touchManagedPtr buffer touchManagedPtr clipboard return () #if ENABLE_OVERLOADING data TextBufferRemoveSelectionClipboardMethodInfo instance (signature ~ (b -> m ()), MonadIO m, IsTextBuffer a, Gtk.Clipboard.IsClipboard b) => O.MethodInfo TextBufferRemoveSelectionClipboardMethodInfo a signature where overloadedMethod _ = textBufferRemoveSelectionClipboard #endif -- method TextBuffer::remove_tag -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "tag", argType = TInterface (Name {namespace = "Gtk", name = "TextTag"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextTag", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "one bound of range to be untagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "other bound of range to be untagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_remove_tag" gtk_text_buffer_remove_tag :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextTag.TextTag -> -- tag : TInterface (Name {namespace = "Gtk", name = "TextTag"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Emits the “remove-tag” signal. The default handler for the signal removes all occurrences of /@tag@/ from the given range. /@start@/ and /@end@/ don’t have to be in order. -} textBufferRemoveTag :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, Gtk.TextTag.IsTextTag b) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> b {- ^ /@tag@/: a 'GI.Gtk.Objects.TextTag.TextTag' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: one bound of range to be untagged -} -> Gtk.TextIter.TextIter {- ^ /@end@/: other bound of range to be untagged -} -> m () textBufferRemoveTag buffer tag start end = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer tag' <- unsafeManagedPtrCastPtr tag start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end gtk_text_buffer_remove_tag buffer' tag' start' end' touchManagedPtr buffer touchManagedPtr tag touchManagedPtr start touchManagedPtr end return () #if ENABLE_OVERLOADING data TextBufferRemoveTagMethodInfo instance (signature ~ (b -> Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a, Gtk.TextTag.IsTextTag b) => O.MethodInfo TextBufferRemoveTagMethodInfo a signature where overloadedMethod _ = textBufferRemoveTag #endif -- method TextBuffer::remove_tag_by_name -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "name of a #GtkTextTag", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "one bound of range to be untagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "other bound of range to be untagged", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_remove_tag_by_name" gtk_text_buffer_remove_tag_by_name :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- name : TBasicType TUTF8 Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | Calls 'GI.Gtk.Objects.TextTagTable.textTagTableLookup' on the buffer’s tag table to get a 'GI.Gtk.Objects.TextTag.TextTag', then calls 'GI.Gtk.Objects.TextBuffer.textBufferRemoveTag'. -} textBufferRemoveTagByName :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@name@/: name of a 'GI.Gtk.Objects.TextTag.TextTag' -} -> Gtk.TextIter.TextIter {- ^ /@start@/: one bound of range to be untagged -} -> Gtk.TextIter.TextIter {- ^ /@end@/: other bound of range to be untagged -} -> m () textBufferRemoveTagByName buffer name start end = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer name' <- textToCString name start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end gtk_text_buffer_remove_tag_by_name buffer' name' start' end' touchManagedPtr buffer touchManagedPtr start touchManagedPtr end freeMem name' return () #if ENABLE_OVERLOADING data TextBufferRemoveTagByNameMethodInfo instance (signature ~ (T.Text -> Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferRemoveTagByNameMethodInfo a signature where overloadedMethod _ = textBufferRemoveTagByName #endif -- method TextBuffer::select_range -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "ins", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "where to put the \8220insert\8221 mark", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "bound", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "where to put the \8220selection_bound\8221 mark", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_select_range" gtk_text_buffer_select_range :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gtk.TextIter.TextIter -> -- ins : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- bound : TInterface (Name {namespace = "Gtk", name = "TextIter"}) IO () {- | This function moves the “insert” and “selection_bound” marks simultaneously. If you move them in two steps with 'GI.Gtk.Objects.TextBuffer.textBufferMoveMark', you will temporarily select a region in between their old and new locations, which can be pretty inefficient since the temporarily-selected region will force stuff to be recalculated. This function moves them as a unit, which can be optimized. /Since: 2.4/ -} textBufferSelectRange :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gtk.TextIter.TextIter {- ^ /@ins@/: where to put the “insert” mark -} -> Gtk.TextIter.TextIter {- ^ /@bound@/: where to put the “selection_bound” mark -} -> m () textBufferSelectRange buffer ins bound = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer ins' <- unsafeManagedPtrGetPtr ins bound' <- unsafeManagedPtrGetPtr bound gtk_text_buffer_select_range buffer' ins' bound' touchManagedPtr buffer touchManagedPtr ins touchManagedPtr bound return () #if ENABLE_OVERLOADING data TextBufferSelectRangeMethodInfo instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferSelectRangeMethodInfo a signature where overloadedMethod _ = textBufferSelectRange #endif -- method TextBuffer::serialize -- method type : OrdinaryMethod -- Args : [Arg {argCName = "register_buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GtkTextBuffer @format is registered with", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "content_buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the #GtkTextBuffer to serialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "Gdk", name = "Atom"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the rich text format to use for serializing", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "start", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "start of block of text to serialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "end", argType = TInterface (Name {namespace = "Gtk", name = "TextIter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "end of block of test to serialize", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "length", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the length of the serialized data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}] -- Lengths : [Arg {argCName = "length", argType = TBasicType TUInt64, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the length of the serialized data", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}] -- returnType : Just (TCArray False (-1) 5 (TBasicType TUInt8)) -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_serialize" gtk_text_buffer_serialize :: Ptr TextBuffer -> -- register_buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr TextBuffer -> -- content_buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gdk.Atom.Atom -> -- format : TInterface (Name {namespace = "Gdk", name = "Atom"}) Ptr Gtk.TextIter.TextIter -> -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Gtk.TextIter.TextIter -> -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"}) Ptr Word64 -> -- length : TBasicType TUInt64 IO (Ptr Word8) {- | This function serializes the portion of text between /@start@/ and /@end@/ in the rich text format represented by /@format@/. /@formats@/ to be used must be registered using 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeFormat' or 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeTagset' beforehand. /Since: 2.10/ -} textBufferSerialize :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a, IsTextBuffer b) => a {- ^ /@registerBuffer@/: the 'GI.Gtk.Objects.TextBuffer.TextBuffer' /@format@/ is registered with -} -> b {- ^ /@contentBuffer@/: the 'GI.Gtk.Objects.TextBuffer.TextBuffer' to serialize -} -> Gdk.Atom.Atom {- ^ /@format@/: the rich text format to use for serializing -} -> Gtk.TextIter.TextIter {- ^ /@start@/: start of block of text to serialize -} -> Gtk.TextIter.TextIter {- ^ /@end@/: end of block of test to serialize -} -> m ByteString {- ^ __Returns:__ the serialized data, encoded as /@format@/ -} textBufferSerialize registerBuffer contentBuffer format start end = liftIO $ do registerBuffer' <- unsafeManagedPtrCastPtr registerBuffer contentBuffer' <- unsafeManagedPtrCastPtr contentBuffer format' <- unsafeManagedPtrGetPtr format start' <- unsafeManagedPtrGetPtr start end' <- unsafeManagedPtrGetPtr end length_ <- allocMem :: IO (Ptr Word64) result <- gtk_text_buffer_serialize registerBuffer' contentBuffer' format' start' end' length_ length_' <- peek length_ checkUnexpectedReturnNULL "textBufferSerialize" result result' <- (unpackByteStringWithLength length_') result freeMem result touchManagedPtr registerBuffer touchManagedPtr contentBuffer touchManagedPtr format touchManagedPtr start touchManagedPtr end freeMem length_ return result' #if ENABLE_OVERLOADING data TextBufferSerializeMethodInfo instance (signature ~ (b -> Gdk.Atom.Atom -> Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ByteString), MonadIO m, IsTextBuffer a, IsTextBuffer b) => O.MethodInfo TextBufferSerializeMethodInfo a signature where overloadedMethod _ = textBufferSerialize #endif -- method TextBuffer::set_modified -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "setting", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "modification flag setting", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_set_modified" gtk_text_buffer_set_modified :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CInt -> -- setting : TBasicType TBoolean IO () {- | Used to keep track of whether the buffer has been modified since the last time it was saved. Whenever the buffer is saved to disk, call gtk_text_buffer_set_modified (/@buffer@/, FALSE). When the buffer is modified, it will automatically toggled on the modified bit again. When the modified bit flips, the buffer emits the 'GI.Gtk.Objects.TextBuffer.TextBuffer'::@/modified-changed/@ signal. -} textBufferSetModified :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Bool {- ^ /@setting@/: modification flag setting -} -> m () textBufferSetModified buffer setting = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer let setting' = (fromIntegral . fromEnum) setting gtk_text_buffer_set_modified buffer' setting' touchManagedPtr buffer return () #if ENABLE_OVERLOADING data TextBufferSetModifiedMethodInfo instance (signature ~ (Bool -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferSetModifiedMethodInfo a signature where overloadedMethod _ = textBufferSetModified #endif -- method TextBuffer::set_text -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "UTF-8 text to insert", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "len", argType = TBasicType TInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "length of @text in bytes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_set_text" gtk_text_buffer_set_text :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) CString -> -- text : TBasicType TUTF8 Int32 -> -- len : TBasicType TInt IO () {- | Deletes current contents of /@buffer@/, and inserts /@text@/ instead. If /@len@/ is -1, /@text@/ must be nul-terminated. /@text@/ must be valid UTF-8. -} textBufferSetText :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> T.Text {- ^ /@text@/: UTF-8 text to insert -} -> Int32 {- ^ /@len@/: length of /@text@/ in bytes -} -> m () textBufferSetText buffer text len = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer text' <- textToCString text gtk_text_buffer_set_text buffer' text' len touchManagedPtr buffer freeMem text' return () #if ENABLE_OVERLOADING data TextBufferSetTextMethodInfo instance (signature ~ (T.Text -> Int32 -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferSetTextMethodInfo a signature where overloadedMethod _ = textBufferSetText #endif -- method TextBuffer::unregister_deserialize_format -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "Gdk", name = "Atom"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GdkAtom representing a registered rich text format.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_unregister_deserialize_format" gtk_text_buffer_unregister_deserialize_format :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gdk.Atom.Atom -> -- format : TInterface (Name {namespace = "Gdk", name = "Atom"}) IO () {- | This function unregisters a rich text format that was previously registered using 'GI.Gtk.Objects.TextBuffer.textBufferRegisterDeserializeFormat' or 'GI.Gtk.Objects.TextBuffer.textBufferRegisterDeserializeTagset'. /Since: 2.10/ -} textBufferUnregisterDeserializeFormat :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gdk.Atom.Atom {- ^ /@format@/: a 'GI.Gdk.Structs.Atom.Atom' representing a registered rich text format. -} -> m () textBufferUnregisterDeserializeFormat buffer format = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer format' <- unsafeManagedPtrGetPtr format gtk_text_buffer_unregister_deserialize_format buffer' format' touchManagedPtr buffer touchManagedPtr format return () #if ENABLE_OVERLOADING data TextBufferUnregisterDeserializeFormatMethodInfo instance (signature ~ (Gdk.Atom.Atom -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferUnregisterDeserializeFormatMethodInfo a signature where overloadedMethod _ = textBufferUnregisterDeserializeFormat #endif -- method TextBuffer::unregister_serialize_format -- method type : OrdinaryMethod -- Args : [Arg {argCName = "buffer", argType = TInterface (Name {namespace = "Gtk", name = "TextBuffer"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GtkTextBuffer", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "format", argType = TInterface (Name {namespace = "Gdk", name = "Atom"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GdkAtom representing a registered rich text format.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "gtk_text_buffer_unregister_serialize_format" gtk_text_buffer_unregister_serialize_format :: Ptr TextBuffer -> -- buffer : TInterface (Name {namespace = "Gtk", name = "TextBuffer"}) Ptr Gdk.Atom.Atom -> -- format : TInterface (Name {namespace = "Gdk", name = "Atom"}) IO () {- | This function unregisters a rich text format that was previously registered using 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeFormat' or 'GI.Gtk.Objects.TextBuffer.textBufferRegisterSerializeTagset' /Since: 2.10/ -} textBufferUnregisterSerializeFormat :: (B.CallStack.HasCallStack, MonadIO m, IsTextBuffer a) => a {- ^ /@buffer@/: a 'GI.Gtk.Objects.TextBuffer.TextBuffer' -} -> Gdk.Atom.Atom {- ^ /@format@/: a 'GI.Gdk.Structs.Atom.Atom' representing a registered rich text format. -} -> m () textBufferUnregisterSerializeFormat buffer format = liftIO $ do buffer' <- unsafeManagedPtrCastPtr buffer format' <- unsafeManagedPtrGetPtr format gtk_text_buffer_unregister_serialize_format buffer' format' touchManagedPtr buffer touchManagedPtr format return () #if ENABLE_OVERLOADING data TextBufferUnregisterSerializeFormatMethodInfo instance (signature ~ (Gdk.Atom.Atom -> m ()), MonadIO m, IsTextBuffer a) => O.MethodInfo TextBufferUnregisterSerializeFormatMethodInfo a signature where overloadedMethod _ = textBufferUnregisterSerializeFormat #endif