{-# LANGUAGE TypeApplications #-}


-- | Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
-- License    : LGPL-2.1
-- Maintainer : Iñaki García Etxebarria
-- 
-- /No description available in the introspection data./

#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif

module GI.GtkSource.Objects.View
    ( 

-- * Exported types
    View(..)                                ,
    IsView                                  ,
    toView                                  ,


 -- * Methods
-- ** Overloaded methods #method:Overloaded methods#

#if defined(ENABLE_OVERLOADING)
    ResolveViewMethod                       ,
#endif


-- ** getAutoIndent #method:getAutoIndent#

#if defined(ENABLE_OVERLOADING)
    ViewGetAutoIndentMethodInfo             ,
#endif
    viewGetAutoIndent                       ,


-- ** getBackgroundPattern #method:getBackgroundPattern#

#if defined(ENABLE_OVERLOADING)
    ViewGetBackgroundPatternMethodInfo      ,
#endif
    viewGetBackgroundPattern                ,


-- ** getCompletion #method:getCompletion#

#if defined(ENABLE_OVERLOADING)
    ViewGetCompletionMethodInfo             ,
#endif
    viewGetCompletion                       ,


-- ** getDrawSpaces #method:getDrawSpaces#

#if defined(ENABLE_OVERLOADING)
    ViewGetDrawSpacesMethodInfo             ,
#endif
    viewGetDrawSpaces                       ,


-- ** getGutter #method:getGutter#

#if defined(ENABLE_OVERLOADING)
    ViewGetGutterMethodInfo                 ,
#endif
    viewGetGutter                           ,


-- ** getHighlightCurrentLine #method:getHighlightCurrentLine#

#if defined(ENABLE_OVERLOADING)
    ViewGetHighlightCurrentLineMethodInfo   ,
#endif
    viewGetHighlightCurrentLine             ,


-- ** getIndentOnTab #method:getIndentOnTab#

#if defined(ENABLE_OVERLOADING)
    ViewGetIndentOnTabMethodInfo            ,
#endif
    viewGetIndentOnTab                      ,


-- ** getIndentWidth #method:getIndentWidth#

#if defined(ENABLE_OVERLOADING)
    ViewGetIndentWidthMethodInfo            ,
#endif
    viewGetIndentWidth                      ,


-- ** getInsertSpacesInsteadOfTabs #method:getInsertSpacesInsteadOfTabs#

#if defined(ENABLE_OVERLOADING)
    ViewGetInsertSpacesInsteadOfTabsMethodInfo,
#endif
    viewGetInsertSpacesInsteadOfTabs        ,


-- ** getMarkAttributes #method:getMarkAttributes#

#if defined(ENABLE_OVERLOADING)
    ViewGetMarkAttributesMethodInfo         ,
#endif
    viewGetMarkAttributes                   ,


-- ** getRightMarginPosition #method:getRightMarginPosition#

#if defined(ENABLE_OVERLOADING)
    ViewGetRightMarginPositionMethodInfo    ,
#endif
    viewGetRightMarginPosition              ,


-- ** getShowLineMarks #method:getShowLineMarks#

#if defined(ENABLE_OVERLOADING)
    ViewGetShowLineMarksMethodInfo          ,
#endif
    viewGetShowLineMarks                    ,


-- ** getShowLineNumbers #method:getShowLineNumbers#

#if defined(ENABLE_OVERLOADING)
    ViewGetShowLineNumbersMethodInfo        ,
#endif
    viewGetShowLineNumbers                  ,


-- ** getShowRightMargin #method:getShowRightMargin#

#if defined(ENABLE_OVERLOADING)
    ViewGetShowRightMarginMethodInfo        ,
#endif
    viewGetShowRightMargin                  ,


-- ** getSmartBackspace #method:getSmartBackspace#

#if defined(ENABLE_OVERLOADING)
    ViewGetSmartBackspaceMethodInfo         ,
#endif
    viewGetSmartBackspace                   ,


-- ** getSmartHomeEnd #method:getSmartHomeEnd#

#if defined(ENABLE_OVERLOADING)
    ViewGetSmartHomeEndMethodInfo           ,
#endif
    viewGetSmartHomeEnd                     ,


-- ** getSpaceDrawer #method:getSpaceDrawer#

#if defined(ENABLE_OVERLOADING)
    ViewGetSpaceDrawerMethodInfo            ,
#endif
    viewGetSpaceDrawer                      ,


-- ** getTabWidth #method:getTabWidth#

#if defined(ENABLE_OVERLOADING)
    ViewGetTabWidthMethodInfo               ,
#endif
    viewGetTabWidth                         ,


-- ** getVisualColumn #method:getVisualColumn#

#if defined(ENABLE_OVERLOADING)
    ViewGetVisualColumnMethodInfo           ,
#endif
    viewGetVisualColumn                     ,


-- ** indentLines #method:indentLines#

#if defined(ENABLE_OVERLOADING)
    ViewIndentLinesMethodInfo               ,
#endif
    viewIndentLines                         ,


-- ** new #method:new#

    viewNew                                 ,


-- ** newWithBuffer #method:newWithBuffer#

    viewNewWithBuffer                       ,


-- ** setAutoIndent #method:setAutoIndent#

#if defined(ENABLE_OVERLOADING)
    ViewSetAutoIndentMethodInfo             ,
#endif
    viewSetAutoIndent                       ,


-- ** setBackgroundPattern #method:setBackgroundPattern#

#if defined(ENABLE_OVERLOADING)
    ViewSetBackgroundPatternMethodInfo      ,
#endif
    viewSetBackgroundPattern                ,


-- ** setDrawSpaces #method:setDrawSpaces#

#if defined(ENABLE_OVERLOADING)
    ViewSetDrawSpacesMethodInfo             ,
#endif
    viewSetDrawSpaces                       ,


-- ** setHighlightCurrentLine #method:setHighlightCurrentLine#

#if defined(ENABLE_OVERLOADING)
    ViewSetHighlightCurrentLineMethodInfo   ,
#endif
    viewSetHighlightCurrentLine             ,


-- ** setIndentOnTab #method:setIndentOnTab#

#if defined(ENABLE_OVERLOADING)
    ViewSetIndentOnTabMethodInfo            ,
#endif
    viewSetIndentOnTab                      ,


-- ** setIndentWidth #method:setIndentWidth#

#if defined(ENABLE_OVERLOADING)
    ViewSetIndentWidthMethodInfo            ,
#endif
    viewSetIndentWidth                      ,


-- ** setInsertSpacesInsteadOfTabs #method:setInsertSpacesInsteadOfTabs#

#if defined(ENABLE_OVERLOADING)
    ViewSetInsertSpacesInsteadOfTabsMethodInfo,
#endif
    viewSetInsertSpacesInsteadOfTabs        ,


-- ** setMarkAttributes #method:setMarkAttributes#

#if defined(ENABLE_OVERLOADING)
    ViewSetMarkAttributesMethodInfo         ,
#endif
    viewSetMarkAttributes                   ,


-- ** setRightMarginPosition #method:setRightMarginPosition#

#if defined(ENABLE_OVERLOADING)
    ViewSetRightMarginPositionMethodInfo    ,
#endif
    viewSetRightMarginPosition              ,


-- ** setShowLineMarks #method:setShowLineMarks#

#if defined(ENABLE_OVERLOADING)
    ViewSetShowLineMarksMethodInfo          ,
#endif
    viewSetShowLineMarks                    ,


-- ** setShowLineNumbers #method:setShowLineNumbers#

#if defined(ENABLE_OVERLOADING)
    ViewSetShowLineNumbersMethodInfo        ,
#endif
    viewSetShowLineNumbers                  ,


-- ** setShowRightMargin #method:setShowRightMargin#

#if defined(ENABLE_OVERLOADING)
    ViewSetShowRightMarginMethodInfo        ,
#endif
    viewSetShowRightMargin                  ,


-- ** setSmartBackspace #method:setSmartBackspace#

#if defined(ENABLE_OVERLOADING)
    ViewSetSmartBackspaceMethodInfo         ,
#endif
    viewSetSmartBackspace                   ,


-- ** setSmartHomeEnd #method:setSmartHomeEnd#

#if defined(ENABLE_OVERLOADING)
    ViewSetSmartHomeEndMethodInfo           ,
#endif
    viewSetSmartHomeEnd                     ,


-- ** setTabWidth #method:setTabWidth#

#if defined(ENABLE_OVERLOADING)
    ViewSetTabWidthMethodInfo               ,
#endif
    viewSetTabWidth                         ,


-- ** unindentLines #method:unindentLines#

#if defined(ENABLE_OVERLOADING)
    ViewUnindentLinesMethodInfo             ,
#endif
    viewUnindentLines                       ,




 -- * Properties
-- ** autoIndent #attr:autoIndent#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    ViewAutoIndentPropertyInfo              ,
#endif
    constructViewAutoIndent                 ,
    getViewAutoIndent                       ,
    setViewAutoIndent                       ,
#if defined(ENABLE_OVERLOADING)
    viewAutoIndent                          ,
#endif


-- ** backgroundPattern #attr:backgroundPattern#
-- | Draw a specific background pattern on the view.
-- 
-- /Since: 3.16/

#if defined(ENABLE_OVERLOADING)
    ViewBackgroundPatternPropertyInfo       ,
#endif
    constructViewBackgroundPattern          ,
    getViewBackgroundPattern                ,
    setViewBackgroundPattern                ,
#if defined(ENABLE_OVERLOADING)
    viewBackgroundPattern                   ,
#endif


-- ** completion #attr:completion#
-- | The completion object associated with the view

#if defined(ENABLE_OVERLOADING)
    ViewCompletionPropertyInfo              ,
#endif
    getViewCompletion                       ,
#if defined(ENABLE_OVERLOADING)
    viewCompletion                          ,
#endif


-- ** drawSpaces #attr:drawSpaces#
-- | Set if and how the spaces should be visualized.
-- 
-- For a finer-grained method, there is also the GtkSourceTag\'s
-- t'GI.GtkSource.Objects.Tag.Tag':@/draw-spaces/@ property.
-- 
-- /Since: 2.4/

#if defined(ENABLE_OVERLOADING)
    ViewDrawSpacesPropertyInfo              ,
#endif
    constructViewDrawSpaces                 ,
    getViewDrawSpaces                       ,
    setViewDrawSpaces                       ,
#if defined(ENABLE_OVERLOADING)
    viewDrawSpaces                          ,
#endif


-- ** highlightCurrentLine #attr:highlightCurrentLine#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    ViewHighlightCurrentLinePropertyInfo    ,
#endif
    constructViewHighlightCurrentLine       ,
    getViewHighlightCurrentLine             ,
    setViewHighlightCurrentLine             ,
#if defined(ENABLE_OVERLOADING)
    viewHighlightCurrentLine                ,
#endif


-- ** indentOnTab #attr:indentOnTab#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    ViewIndentOnTabPropertyInfo             ,
#endif
    constructViewIndentOnTab                ,
    getViewIndentOnTab                      ,
    setViewIndentOnTab                      ,
#if defined(ENABLE_OVERLOADING)
    viewIndentOnTab                         ,
#endif


-- ** indentWidth #attr:indentWidth#
-- | Width of an indentation step expressed in number of spaces.

#if defined(ENABLE_OVERLOADING)
    ViewIndentWidthPropertyInfo             ,
#endif
    constructViewIndentWidth                ,
    getViewIndentWidth                      ,
    setViewIndentWidth                      ,
#if defined(ENABLE_OVERLOADING)
    viewIndentWidth                         ,
#endif


-- ** insertSpacesInsteadOfTabs #attr:insertSpacesInsteadOfTabs#
-- | /No description available in the introspection data./

#if defined(ENABLE_OVERLOADING)
    ViewInsertSpacesInsteadOfTabsPropertyInfo,
#endif
    constructViewInsertSpacesInsteadOfTabs  ,
    getViewInsertSpacesInsteadOfTabs        ,
    setViewInsertSpacesInsteadOfTabs        ,
#if defined(ENABLE_OVERLOADING)
    viewInsertSpacesInsteadOfTabs           ,
#endif


-- ** rightMarginPosition #attr:rightMarginPosition#
-- | Position of the right margin.

#if defined(ENABLE_OVERLOADING)
    ViewRightMarginPositionPropertyInfo     ,
#endif
    constructViewRightMarginPosition        ,
    getViewRightMarginPosition              ,
    setViewRightMarginPosition              ,
#if defined(ENABLE_OVERLOADING)
    viewRightMarginPosition                 ,
#endif


-- ** showLineMarks #attr:showLineMarks#
-- | Whether to display line mark pixbufs

#if defined(ENABLE_OVERLOADING)
    ViewShowLineMarksPropertyInfo           ,
#endif
    constructViewShowLineMarks              ,
    getViewShowLineMarks                    ,
    setViewShowLineMarks                    ,
#if defined(ENABLE_OVERLOADING)
    viewShowLineMarks                       ,
#endif


-- ** showLineNumbers #attr:showLineNumbers#
-- | Whether to display line numbers

#if defined(ENABLE_OVERLOADING)
    ViewShowLineNumbersPropertyInfo         ,
#endif
    constructViewShowLineNumbers            ,
    getViewShowLineNumbers                  ,
    setViewShowLineNumbers                  ,
#if defined(ENABLE_OVERLOADING)
    viewShowLineNumbers                     ,
#endif


-- ** showRightMargin #attr:showRightMargin#
-- | Whether to display the right margin.

#if defined(ENABLE_OVERLOADING)
    ViewShowRightMarginPropertyInfo         ,
#endif
    constructViewShowRightMargin            ,
    getViewShowRightMargin                  ,
    setViewShowRightMargin                  ,
#if defined(ENABLE_OVERLOADING)
    viewShowRightMargin                     ,
#endif


-- ** smartBackspace #attr:smartBackspace#
-- | Whether smart Backspace should be used.
-- 
-- /Since: 3.18/

#if defined(ENABLE_OVERLOADING)
    ViewSmartBackspacePropertyInfo          ,
#endif
    constructViewSmartBackspace             ,
    getViewSmartBackspace                   ,
    setViewSmartBackspace                   ,
#if defined(ENABLE_OVERLOADING)
    viewSmartBackspace                      ,
#endif


-- ** smartHomeEnd #attr:smartHomeEnd#
-- | Set the behavior of the HOME and END keys.
-- 
-- /Since: 2.0/

#if defined(ENABLE_OVERLOADING)
    ViewSmartHomeEndPropertyInfo            ,
#endif
    constructViewSmartHomeEnd               ,
    getViewSmartHomeEnd                     ,
    setViewSmartHomeEnd                     ,
#if defined(ENABLE_OVERLOADING)
    viewSmartHomeEnd                        ,
#endif


-- ** spaceDrawer #attr:spaceDrawer#
-- | The t'GI.GtkSource.Objects.SpaceDrawer.SpaceDrawer' object associated with the view.
-- 
-- /Since: 3.24/

#if defined(ENABLE_OVERLOADING)
    ViewSpaceDrawerPropertyInfo             ,
#endif
    getViewSpaceDrawer                      ,
#if defined(ENABLE_OVERLOADING)
    viewSpaceDrawer                         ,
#endif


-- ** tabWidth #attr:tabWidth#
-- | Width of a tab character expressed in number of spaces.

#if defined(ENABLE_OVERLOADING)
    ViewTabWidthPropertyInfo                ,
#endif
    constructViewTabWidth                   ,
    getViewTabWidth                         ,
    setViewTabWidth                         ,
#if defined(ENABLE_OVERLOADING)
    viewTabWidth                            ,
#endif




 -- * Signals
-- ** changeCase #signal:changeCase#

    C_ViewChangeCaseCallback                ,
    ViewChangeCaseCallback                  ,
#if defined(ENABLE_OVERLOADING)
    ViewChangeCaseSignalInfo                ,
#endif
    afterViewChangeCase                     ,
    genClosure_ViewChangeCase               ,
    mk_ViewChangeCaseCallback               ,
    noViewChangeCaseCallback                ,
    onViewChangeCase                        ,
    wrap_ViewChangeCaseCallback             ,


-- ** changeNumber #signal:changeNumber#

    C_ViewChangeNumberCallback              ,
    ViewChangeNumberCallback                ,
#if defined(ENABLE_OVERLOADING)
    ViewChangeNumberSignalInfo              ,
#endif
    afterViewChangeNumber                   ,
    genClosure_ViewChangeNumber             ,
    mk_ViewChangeNumberCallback             ,
    noViewChangeNumberCallback              ,
    onViewChangeNumber                      ,
    wrap_ViewChangeNumberCallback           ,


-- ** joinLines #signal:joinLines#

    C_ViewJoinLinesCallback                 ,
    ViewJoinLinesCallback                   ,
#if defined(ENABLE_OVERLOADING)
    ViewJoinLinesSignalInfo                 ,
#endif
    afterViewJoinLines                      ,
    genClosure_ViewJoinLines                ,
    mk_ViewJoinLinesCallback                ,
    noViewJoinLinesCallback                 ,
    onViewJoinLines                         ,
    wrap_ViewJoinLinesCallback              ,


-- ** lineMarkActivated #signal:lineMarkActivated#

    C_ViewLineMarkActivatedCallback         ,
    ViewLineMarkActivatedCallback           ,
#if defined(ENABLE_OVERLOADING)
    ViewLineMarkActivatedSignalInfo         ,
#endif
    afterViewLineMarkActivated              ,
    genClosure_ViewLineMarkActivated        ,
    mk_ViewLineMarkActivatedCallback        ,
    noViewLineMarkActivatedCallback         ,
    onViewLineMarkActivated                 ,
    wrap_ViewLineMarkActivatedCallback      ,


-- ** moveLines #signal:moveLines#

    C_ViewMoveLinesCallback                 ,
    ViewMoveLinesCallback                   ,
#if defined(ENABLE_OVERLOADING)
    ViewMoveLinesSignalInfo                 ,
#endif
    afterViewMoveLines                      ,
    genClosure_ViewMoveLines                ,
    mk_ViewMoveLinesCallback                ,
    noViewMoveLinesCallback                 ,
    onViewMoveLines                         ,
    wrap_ViewMoveLinesCallback              ,


-- ** moveToMatchingBracket #signal:moveToMatchingBracket#

    C_ViewMoveToMatchingBracketCallback     ,
    ViewMoveToMatchingBracketCallback       ,
#if defined(ENABLE_OVERLOADING)
    ViewMoveToMatchingBracketSignalInfo     ,
#endif
    afterViewMoveToMatchingBracket          ,
    genClosure_ViewMoveToMatchingBracket    ,
    mk_ViewMoveToMatchingBracketCallback    ,
    noViewMoveToMatchingBracketCallback     ,
    onViewMoveToMatchingBracket             ,
    wrap_ViewMoveToMatchingBracketCallback  ,


-- ** moveWords #signal:moveWords#

    C_ViewMoveWordsCallback                 ,
    ViewMoveWordsCallback                   ,
#if defined(ENABLE_OVERLOADING)
    ViewMoveWordsSignalInfo                 ,
#endif
    afterViewMoveWords                      ,
    genClosure_ViewMoveWords                ,
    mk_ViewMoveWordsCallback                ,
    noViewMoveWordsCallback                 ,
    onViewMoveWords                         ,
    wrap_ViewMoveWordsCallback              ,


-- ** redo #signal:redo#

    C_ViewRedoCallback                      ,
    ViewRedoCallback                        ,
#if defined(ENABLE_OVERLOADING)
    ViewRedoSignalInfo                      ,
#endif
    afterViewRedo                           ,
    genClosure_ViewRedo                     ,
    mk_ViewRedoCallback                     ,
    noViewRedoCallback                      ,
    onViewRedo                              ,
    wrap_ViewRedoCallback                   ,


-- ** showCompletion #signal:showCompletion#

    C_ViewShowCompletionCallback            ,
    ViewShowCompletionCallback              ,
#if defined(ENABLE_OVERLOADING)
    ViewShowCompletionSignalInfo            ,
#endif
    afterViewShowCompletion                 ,
    genClosure_ViewShowCompletion           ,
    mk_ViewShowCompletionCallback           ,
    noViewShowCompletionCallback            ,
    onViewShowCompletion                    ,
    wrap_ViewShowCompletionCallback         ,


-- ** smartHomeEnd #signal:smartHomeEnd#

    C_ViewSmartHomeEndCallback              ,
    ViewSmartHomeEndCallback                ,
#if defined(ENABLE_OVERLOADING)
    ViewSmartHomeEndSignalInfo              ,
#endif
    afterViewSmartHomeEnd                   ,
    genClosure_ViewSmartHomeEnd             ,
    mk_ViewSmartHomeEndCallback             ,
    noViewSmartHomeEndCallback              ,
    onViewSmartHomeEnd                      ,
    wrap_ViewSmartHomeEndCallback           ,


-- ** undo #signal:undo#

    C_ViewUndoCallback                      ,
    ViewUndoCallback                        ,
#if defined(ENABLE_OVERLOADING)
    ViewUndoSignalInfo                      ,
#endif
    afterViewUndo                           ,
    genClosure_ViewUndo                     ,
    mk_ViewUndoCallback                     ,
    noViewUndoCallback                      ,
    onViewUndo                              ,
    wrap_ViewUndoCallback                   ,




    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.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.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
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.Atk.Interfaces.ImplementorIface as Atk.ImplementorIface
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Unions.Event as Gdk.Event
import qualified GI.Gtk.Enums as Gtk.Enums
import qualified GI.Gtk.Interfaces.Buildable as Gtk.Buildable
import qualified GI.Gtk.Interfaces.Scrollable as Gtk.Scrollable
import qualified GI.Gtk.Objects.Container as Gtk.Container
import qualified GI.Gtk.Objects.TextView as Gtk.TextView
import qualified GI.Gtk.Objects.Widget as Gtk.Widget
import qualified GI.Gtk.Structs.TextIter as Gtk.TextIter
import {-# SOURCE #-} qualified GI.GtkSource.Enums as GtkSource.Enums
import {-# SOURCE #-} qualified GI.GtkSource.Flags as GtkSource.Flags
import {-# SOURCE #-} qualified GI.GtkSource.Objects.Buffer as GtkSource.Buffer
import {-# SOURCE #-} qualified GI.GtkSource.Objects.Completion as GtkSource.Completion
import {-# SOURCE #-} qualified GI.GtkSource.Objects.Gutter as GtkSource.Gutter
import {-# SOURCE #-} qualified GI.GtkSource.Objects.MarkAttributes as GtkSource.MarkAttributes
import {-# SOURCE #-} qualified GI.GtkSource.Objects.SpaceDrawer as GtkSource.SpaceDrawer

-- | Memory-managed wrapper type.
newtype View = View (SP.ManagedPtr View)
    deriving (View -> View -> Bool
(View -> View -> Bool) -> (View -> View -> Bool) -> Eq View
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: View -> View -> Bool
$c/= :: View -> View -> Bool
== :: View -> View -> Bool
$c== :: View -> View -> Bool
Eq)

instance SP.ManagedPtrNewtype View where
    toManagedPtr :: View -> ManagedPtr View
toManagedPtr (View ManagedPtr View
p) = ManagedPtr View
p

foreign import ccall "gtk_source_view_get_type"
    c_gtk_source_view_get_type :: IO B.Types.GType

instance B.Types.TypedObject View where
    glibType :: IO GType
glibType = IO GType
c_gtk_source_view_get_type

instance B.Types.GObject View

-- | Convert 'View' to and from 'Data.GI.Base.GValue.GValue' with 'Data.GI.Base.GValue.toGValue' and 'Data.GI.Base.GValue.fromGValue'.
instance B.GValue.IsGValue View where
    toGValue :: View -> IO GValue
toGValue View
o = do
        GType
gtype <- IO GType
c_gtk_source_view_get_type
        View -> (Ptr View -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr View
o (GType -> (GValue -> Ptr View -> IO ()) -> Ptr View -> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr View -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
        
    fromGValue :: GValue -> IO View
fromGValue GValue
gv = do
        Ptr View
ptr <- GValue -> IO (Ptr View)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr View)
        (ManagedPtr View -> View) -> Ptr View -> IO View
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr View -> View
View Ptr View
ptr
        
    

-- | Type class for types which can be safely cast to `View`, for instance with `toView`.
class (SP.GObject o, O.IsDescendantOf View o) => IsView o
instance (SP.GObject o, O.IsDescendantOf View o) => IsView o

instance O.HasParentTypes View
type instance O.ParentTypes View = '[Gtk.TextView.TextView, Gtk.Container.Container, Gtk.Widget.Widget, GObject.Object.Object, Atk.ImplementorIface.ImplementorIface, Gtk.Buildable.Buildable, Gtk.Scrollable.Scrollable]

-- | Cast to `View`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toView :: (MonadIO m, IsView o) => o -> m View
toView :: o -> m View
toView = IO View -> m View
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO View -> m View) -> (o -> IO View) -> o -> m View
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr View -> View) -> o -> IO View
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
 ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr View -> View
View

#if defined(ENABLE_OVERLOADING)
type family ResolveViewMethod (t :: Symbol) (o :: *) :: * where
    ResolveViewMethod "activate" o = Gtk.Widget.WidgetActivateMethodInfo
    ResolveViewMethod "add" o = Gtk.Container.ContainerAddMethodInfo
    ResolveViewMethod "addAccelerator" o = Gtk.Widget.WidgetAddAcceleratorMethodInfo
    ResolveViewMethod "addChild" o = Gtk.Buildable.BuildableAddChildMethodInfo
    ResolveViewMethod "addChildAtAnchor" o = Gtk.TextView.TextViewAddChildAtAnchorMethodInfo
    ResolveViewMethod "addChildInWindow" o = Gtk.TextView.TextViewAddChildInWindowMethodInfo
    ResolveViewMethod "addDeviceEvents" o = Gtk.Widget.WidgetAddDeviceEventsMethodInfo
    ResolveViewMethod "addEvents" o = Gtk.Widget.WidgetAddEventsMethodInfo
    ResolveViewMethod "addMnemonicLabel" o = Gtk.Widget.WidgetAddMnemonicLabelMethodInfo
    ResolveViewMethod "addTickCallback" o = Gtk.Widget.WidgetAddTickCallbackMethodInfo
    ResolveViewMethod "backwardDisplayLine" o = Gtk.TextView.TextViewBackwardDisplayLineMethodInfo
    ResolveViewMethod "backwardDisplayLineStart" o = Gtk.TextView.TextViewBackwardDisplayLineStartMethodInfo
    ResolveViewMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveViewMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveViewMethod "bufferToWindowCoords" o = Gtk.TextView.TextViewBufferToWindowCoordsMethodInfo
    ResolveViewMethod "canActivateAccel" o = Gtk.Widget.WidgetCanActivateAccelMethodInfo
    ResolveViewMethod "checkResize" o = Gtk.Container.ContainerCheckResizeMethodInfo
    ResolveViewMethod "childFocus" o = Gtk.Widget.WidgetChildFocusMethodInfo
    ResolveViewMethod "childGetProperty" o = Gtk.Container.ContainerChildGetPropertyMethodInfo
    ResolveViewMethod "childNotify" o = Gtk.Container.ContainerChildNotifyMethodInfo
    ResolveViewMethod "childNotifyByPspec" o = Gtk.Container.ContainerChildNotifyByPspecMethodInfo
    ResolveViewMethod "childSetProperty" o = Gtk.Container.ContainerChildSetPropertyMethodInfo
    ResolveViewMethod "childType" o = Gtk.Container.ContainerChildTypeMethodInfo
    ResolveViewMethod "classPath" o = Gtk.Widget.WidgetClassPathMethodInfo
    ResolveViewMethod "computeExpand" o = Gtk.Widget.WidgetComputeExpandMethodInfo
    ResolveViewMethod "constructChild" o = Gtk.Buildable.BuildableConstructChildMethodInfo
    ResolveViewMethod "createPangoContext" o = Gtk.Widget.WidgetCreatePangoContextMethodInfo
    ResolveViewMethod "createPangoLayout" o = Gtk.Widget.WidgetCreatePangoLayoutMethodInfo
    ResolveViewMethod "customFinished" o = Gtk.Buildable.BuildableCustomFinishedMethodInfo
    ResolveViewMethod "customTagEnd" o = Gtk.Buildable.BuildableCustomTagEndMethodInfo
    ResolveViewMethod "customTagStart" o = Gtk.Buildable.BuildableCustomTagStartMethodInfo
    ResolveViewMethod "destroy" o = Gtk.Widget.WidgetDestroyMethodInfo
    ResolveViewMethod "destroyed" o = Gtk.Widget.WidgetDestroyedMethodInfo
    ResolveViewMethod "deviceIsShadowed" o = Gtk.Widget.WidgetDeviceIsShadowedMethodInfo
    ResolveViewMethod "dragBegin" o = Gtk.Widget.WidgetDragBeginMethodInfo
    ResolveViewMethod "dragBeginWithCoordinates" o = Gtk.Widget.WidgetDragBeginWithCoordinatesMethodInfo
    ResolveViewMethod "dragCheckThreshold" o = Gtk.Widget.WidgetDragCheckThresholdMethodInfo
    ResolveViewMethod "dragDestAddImageTargets" o = Gtk.Widget.WidgetDragDestAddImageTargetsMethodInfo
    ResolveViewMethod "dragDestAddTextTargets" o = Gtk.Widget.WidgetDragDestAddTextTargetsMethodInfo
    ResolveViewMethod "dragDestAddUriTargets" o = Gtk.Widget.WidgetDragDestAddUriTargetsMethodInfo
    ResolveViewMethod "dragDestFindTarget" o = Gtk.Widget.WidgetDragDestFindTargetMethodInfo
    ResolveViewMethod "dragDestGetTargetList" o = Gtk.Widget.WidgetDragDestGetTargetListMethodInfo
    ResolveViewMethod "dragDestGetTrackMotion" o = Gtk.Widget.WidgetDragDestGetTrackMotionMethodInfo
    ResolveViewMethod "dragDestSet" o = Gtk.Widget.WidgetDragDestSetMethodInfo
    ResolveViewMethod "dragDestSetProxy" o = Gtk.Widget.WidgetDragDestSetProxyMethodInfo
    ResolveViewMethod "dragDestSetTargetList" o = Gtk.Widget.WidgetDragDestSetTargetListMethodInfo
    ResolveViewMethod "dragDestSetTrackMotion" o = Gtk.Widget.WidgetDragDestSetTrackMotionMethodInfo
    ResolveViewMethod "dragDestUnset" o = Gtk.Widget.WidgetDragDestUnsetMethodInfo
    ResolveViewMethod "dragGetData" o = Gtk.Widget.WidgetDragGetDataMethodInfo
    ResolveViewMethod "dragHighlight" o = Gtk.Widget.WidgetDragHighlightMethodInfo
    ResolveViewMethod "dragSourceAddImageTargets" o = Gtk.Widget.WidgetDragSourceAddImageTargetsMethodInfo
    ResolveViewMethod "dragSourceAddTextTargets" o = Gtk.Widget.WidgetDragSourceAddTextTargetsMethodInfo
    ResolveViewMethod "dragSourceAddUriTargets" o = Gtk.Widget.WidgetDragSourceAddUriTargetsMethodInfo
    ResolveViewMethod "dragSourceGetTargetList" o = Gtk.Widget.WidgetDragSourceGetTargetListMethodInfo
    ResolveViewMethod "dragSourceSet" o = Gtk.Widget.WidgetDragSourceSetMethodInfo
    ResolveViewMethod "dragSourceSetIconGicon" o = Gtk.Widget.WidgetDragSourceSetIconGiconMethodInfo
    ResolveViewMethod "dragSourceSetIconName" o = Gtk.Widget.WidgetDragSourceSetIconNameMethodInfo
    ResolveViewMethod "dragSourceSetIconPixbuf" o = Gtk.Widget.WidgetDragSourceSetIconPixbufMethodInfo
    ResolveViewMethod "dragSourceSetIconStock" o = Gtk.Widget.WidgetDragSourceSetIconStockMethodInfo
    ResolveViewMethod "dragSourceSetTargetList" o = Gtk.Widget.WidgetDragSourceSetTargetListMethodInfo
    ResolveViewMethod "dragSourceUnset" o = Gtk.Widget.WidgetDragSourceUnsetMethodInfo
    ResolveViewMethod "dragUnhighlight" o = Gtk.Widget.WidgetDragUnhighlightMethodInfo
    ResolveViewMethod "draw" o = Gtk.Widget.WidgetDrawMethodInfo
    ResolveViewMethod "ensureStyle" o = Gtk.Widget.WidgetEnsureStyleMethodInfo
    ResolveViewMethod "errorBell" o = Gtk.Widget.WidgetErrorBellMethodInfo
    ResolveViewMethod "event" o = Gtk.Widget.WidgetEventMethodInfo
    ResolveViewMethod "forall" o = Gtk.Container.ContainerForallMethodInfo
    ResolveViewMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveViewMethod "foreach" o = Gtk.Container.ContainerForeachMethodInfo
    ResolveViewMethod "forwardDisplayLine" o = Gtk.TextView.TextViewForwardDisplayLineMethodInfo
    ResolveViewMethod "forwardDisplayLineEnd" o = Gtk.TextView.TextViewForwardDisplayLineEndMethodInfo
    ResolveViewMethod "freezeChildNotify" o = Gtk.Widget.WidgetFreezeChildNotifyMethodInfo
    ResolveViewMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveViewMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveViewMethod "grabAdd" o = Gtk.Widget.WidgetGrabAddMethodInfo
    ResolveViewMethod "grabDefault" o = Gtk.Widget.WidgetGrabDefaultMethodInfo
    ResolveViewMethod "grabFocus" o = Gtk.Widget.WidgetGrabFocusMethodInfo
    ResolveViewMethod "grabRemove" o = Gtk.Widget.WidgetGrabRemoveMethodInfo
    ResolveViewMethod "hasDefault" o = Gtk.Widget.WidgetHasDefaultMethodInfo
    ResolveViewMethod "hasFocus" o = Gtk.Widget.WidgetHasFocusMethodInfo
    ResolveViewMethod "hasGrab" o = Gtk.Widget.WidgetHasGrabMethodInfo
    ResolveViewMethod "hasRcStyle" o = Gtk.Widget.WidgetHasRcStyleMethodInfo
    ResolveViewMethod "hasScreen" o = Gtk.Widget.WidgetHasScreenMethodInfo
    ResolveViewMethod "hasVisibleFocus" o = Gtk.Widget.WidgetHasVisibleFocusMethodInfo
    ResolveViewMethod "hide" o = Gtk.Widget.WidgetHideMethodInfo
    ResolveViewMethod "hideOnDelete" o = Gtk.Widget.WidgetHideOnDeleteMethodInfo
    ResolveViewMethod "imContextFilterKeypress" o = Gtk.TextView.TextViewImContextFilterKeypressMethodInfo
    ResolveViewMethod "inDestruction" o = Gtk.Widget.WidgetInDestructionMethodInfo
    ResolveViewMethod "indentLines" o = ViewIndentLinesMethodInfo
    ResolveViewMethod "initTemplate" o = Gtk.Widget.WidgetInitTemplateMethodInfo
    ResolveViewMethod "inputShapeCombineRegion" o = Gtk.Widget.WidgetInputShapeCombineRegionMethodInfo
    ResolveViewMethod "insertActionGroup" o = Gtk.Widget.WidgetInsertActionGroupMethodInfo
    ResolveViewMethod "intersect" o = Gtk.Widget.WidgetIntersectMethodInfo
    ResolveViewMethod "isAncestor" o = Gtk.Widget.WidgetIsAncestorMethodInfo
    ResolveViewMethod "isComposited" o = Gtk.Widget.WidgetIsCompositedMethodInfo
    ResolveViewMethod "isDrawable" o = Gtk.Widget.WidgetIsDrawableMethodInfo
    ResolveViewMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveViewMethod "isFocus" o = Gtk.Widget.WidgetIsFocusMethodInfo
    ResolveViewMethod "isSensitive" o = Gtk.Widget.WidgetIsSensitiveMethodInfo
    ResolveViewMethod "isToplevel" o = Gtk.Widget.WidgetIsToplevelMethodInfo
    ResolveViewMethod "isVisible" o = Gtk.Widget.WidgetIsVisibleMethodInfo
    ResolveViewMethod "keynavFailed" o = Gtk.Widget.WidgetKeynavFailedMethodInfo
    ResolveViewMethod "listAccelClosures" o = Gtk.Widget.WidgetListAccelClosuresMethodInfo
    ResolveViewMethod "listActionPrefixes" o = Gtk.Widget.WidgetListActionPrefixesMethodInfo
    ResolveViewMethod "listMnemonicLabels" o = Gtk.Widget.WidgetListMnemonicLabelsMethodInfo
    ResolveViewMethod "map" o = Gtk.Widget.WidgetMapMethodInfo
    ResolveViewMethod "mnemonicActivate" o = Gtk.Widget.WidgetMnemonicActivateMethodInfo
    ResolveViewMethod "modifyBase" o = Gtk.Widget.WidgetModifyBaseMethodInfo
    ResolveViewMethod "modifyBg" o = Gtk.Widget.WidgetModifyBgMethodInfo
    ResolveViewMethod "modifyCursor" o = Gtk.Widget.WidgetModifyCursorMethodInfo
    ResolveViewMethod "modifyFg" o = Gtk.Widget.WidgetModifyFgMethodInfo
    ResolveViewMethod "modifyFont" o = Gtk.Widget.WidgetModifyFontMethodInfo
    ResolveViewMethod "modifyStyle" o = Gtk.Widget.WidgetModifyStyleMethodInfo
    ResolveViewMethod "modifyText" o = Gtk.Widget.WidgetModifyTextMethodInfo
    ResolveViewMethod "moveChild" o = Gtk.TextView.TextViewMoveChildMethodInfo
    ResolveViewMethod "moveMarkOnscreen" o = Gtk.TextView.TextViewMoveMarkOnscreenMethodInfo
    ResolveViewMethod "moveVisually" o = Gtk.TextView.TextViewMoveVisuallyMethodInfo
    ResolveViewMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveViewMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveViewMethod "overrideBackgroundColor" o = Gtk.Widget.WidgetOverrideBackgroundColorMethodInfo
    ResolveViewMethod "overrideColor" o = Gtk.Widget.WidgetOverrideColorMethodInfo
    ResolveViewMethod "overrideCursor" o = Gtk.Widget.WidgetOverrideCursorMethodInfo
    ResolveViewMethod "overrideFont" o = Gtk.Widget.WidgetOverrideFontMethodInfo
    ResolveViewMethod "overrideSymbolicColor" o = Gtk.Widget.WidgetOverrideSymbolicColorMethodInfo
    ResolveViewMethod "parserFinished" o = Gtk.Buildable.BuildableParserFinishedMethodInfo
    ResolveViewMethod "path" o = Gtk.Widget.WidgetPathMethodInfo
    ResolveViewMethod "placeCursorOnscreen" o = Gtk.TextView.TextViewPlaceCursorOnscreenMethodInfo
    ResolveViewMethod "propagateDraw" o = Gtk.Container.ContainerPropagateDrawMethodInfo
    ResolveViewMethod "queueAllocate" o = Gtk.Widget.WidgetQueueAllocateMethodInfo
    ResolveViewMethod "queueComputeExpand" o = Gtk.Widget.WidgetQueueComputeExpandMethodInfo
    ResolveViewMethod "queueDraw" o = Gtk.Widget.WidgetQueueDrawMethodInfo
    ResolveViewMethod "queueDrawArea" o = Gtk.Widget.WidgetQueueDrawAreaMethodInfo
    ResolveViewMethod "queueDrawRegion" o = Gtk.Widget.WidgetQueueDrawRegionMethodInfo
    ResolveViewMethod "queueResize" o = Gtk.Widget.WidgetQueueResizeMethodInfo
    ResolveViewMethod "queueResizeNoRedraw" o = Gtk.Widget.WidgetQueueResizeNoRedrawMethodInfo
    ResolveViewMethod "realize" o = Gtk.Widget.WidgetRealizeMethodInfo
    ResolveViewMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveViewMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveViewMethod "regionIntersect" o = Gtk.Widget.WidgetRegionIntersectMethodInfo
    ResolveViewMethod "registerWindow" o = Gtk.Widget.WidgetRegisterWindowMethodInfo
    ResolveViewMethod "remove" o = Gtk.Container.ContainerRemoveMethodInfo
    ResolveViewMethod "removeAccelerator" o = Gtk.Widget.WidgetRemoveAcceleratorMethodInfo
    ResolveViewMethod "removeMnemonicLabel" o = Gtk.Widget.WidgetRemoveMnemonicLabelMethodInfo
    ResolveViewMethod "removeTickCallback" o = Gtk.Widget.WidgetRemoveTickCallbackMethodInfo
    ResolveViewMethod "renderIcon" o = Gtk.Widget.WidgetRenderIconMethodInfo
    ResolveViewMethod "renderIconPixbuf" o = Gtk.Widget.WidgetRenderIconPixbufMethodInfo
    ResolveViewMethod "reparent" o = Gtk.Widget.WidgetReparentMethodInfo
    ResolveViewMethod "resetCursorBlink" o = Gtk.TextView.TextViewResetCursorBlinkMethodInfo
    ResolveViewMethod "resetImContext" o = Gtk.TextView.TextViewResetImContextMethodInfo
    ResolveViewMethod "resetRcStyles" o = Gtk.Widget.WidgetResetRcStylesMethodInfo
    ResolveViewMethod "resetStyle" o = Gtk.Widget.WidgetResetStyleMethodInfo
    ResolveViewMethod "resizeChildren" o = Gtk.Container.ContainerResizeChildrenMethodInfo
    ResolveViewMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveViewMethod "scrollMarkOnscreen" o = Gtk.TextView.TextViewScrollMarkOnscreenMethodInfo
    ResolveViewMethod "scrollToIter" o = Gtk.TextView.TextViewScrollToIterMethodInfo
    ResolveViewMethod "scrollToMark" o = Gtk.TextView.TextViewScrollToMarkMethodInfo
    ResolveViewMethod "sendExpose" o = Gtk.Widget.WidgetSendExposeMethodInfo
    ResolveViewMethod "sendFocusChange" o = Gtk.Widget.WidgetSendFocusChangeMethodInfo
    ResolveViewMethod "shapeCombineRegion" o = Gtk.Widget.WidgetShapeCombineRegionMethodInfo
    ResolveViewMethod "show" o = Gtk.Widget.WidgetShowMethodInfo
    ResolveViewMethod "showAll" o = Gtk.Widget.WidgetShowAllMethodInfo
    ResolveViewMethod "showNow" o = Gtk.Widget.WidgetShowNowMethodInfo
    ResolveViewMethod "sizeAllocate" o = Gtk.Widget.WidgetSizeAllocateMethodInfo
    ResolveViewMethod "sizeAllocateWithBaseline" o = Gtk.Widget.WidgetSizeAllocateWithBaselineMethodInfo
    ResolveViewMethod "sizeRequest" o = Gtk.Widget.WidgetSizeRequestMethodInfo
    ResolveViewMethod "startsDisplayLine" o = Gtk.TextView.TextViewStartsDisplayLineMethodInfo
    ResolveViewMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveViewMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveViewMethod "styleAttach" o = Gtk.Widget.WidgetStyleAttachMethodInfo
    ResolveViewMethod "styleGetProperty" o = Gtk.Widget.WidgetStyleGetPropertyMethodInfo
    ResolveViewMethod "thawChildNotify" o = Gtk.Widget.WidgetThawChildNotifyMethodInfo
    ResolveViewMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveViewMethod "translateCoordinates" o = Gtk.Widget.WidgetTranslateCoordinatesMethodInfo
    ResolveViewMethod "triggerTooltipQuery" o = Gtk.Widget.WidgetTriggerTooltipQueryMethodInfo
    ResolveViewMethod "unindentLines" o = ViewUnindentLinesMethodInfo
    ResolveViewMethod "unmap" o = Gtk.Widget.WidgetUnmapMethodInfo
    ResolveViewMethod "unparent" o = Gtk.Widget.WidgetUnparentMethodInfo
    ResolveViewMethod "unrealize" o = Gtk.Widget.WidgetUnrealizeMethodInfo
    ResolveViewMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveViewMethod "unregisterWindow" o = Gtk.Widget.WidgetUnregisterWindowMethodInfo
    ResolveViewMethod "unsetFocusChain" o = Gtk.Container.ContainerUnsetFocusChainMethodInfo
    ResolveViewMethod "unsetStateFlags" o = Gtk.Widget.WidgetUnsetStateFlagsMethodInfo
    ResolveViewMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveViewMethod "windowToBufferCoords" o = Gtk.TextView.TextViewWindowToBufferCoordsMethodInfo
    ResolveViewMethod "getAcceptsTab" o = Gtk.TextView.TextViewGetAcceptsTabMethodInfo
    ResolveViewMethod "getAccessible" o = Gtk.Widget.WidgetGetAccessibleMethodInfo
    ResolveViewMethod "getActionGroup" o = Gtk.Widget.WidgetGetActionGroupMethodInfo
    ResolveViewMethod "getAllocatedBaseline" o = Gtk.Widget.WidgetGetAllocatedBaselineMethodInfo
    ResolveViewMethod "getAllocatedHeight" o = Gtk.Widget.WidgetGetAllocatedHeightMethodInfo
    ResolveViewMethod "getAllocatedSize" o = Gtk.Widget.WidgetGetAllocatedSizeMethodInfo
    ResolveViewMethod "getAllocatedWidth" o = Gtk.Widget.WidgetGetAllocatedWidthMethodInfo
    ResolveViewMethod "getAllocation" o = Gtk.Widget.WidgetGetAllocationMethodInfo
    ResolveViewMethod "getAncestor" o = Gtk.Widget.WidgetGetAncestorMethodInfo
    ResolveViewMethod "getAppPaintable" o = Gtk.Widget.WidgetGetAppPaintableMethodInfo
    ResolveViewMethod "getAutoIndent" o = ViewGetAutoIndentMethodInfo
    ResolveViewMethod "getBackgroundPattern" o = ViewGetBackgroundPatternMethodInfo
    ResolveViewMethod "getBorder" o = Gtk.Scrollable.ScrollableGetBorderMethodInfo
    ResolveViewMethod "getBorderWidth" o = Gtk.Container.ContainerGetBorderWidthMethodInfo
    ResolveViewMethod "getBorderWindowSize" o = Gtk.TextView.TextViewGetBorderWindowSizeMethodInfo
    ResolveViewMethod "getBottomMargin" o = Gtk.TextView.TextViewGetBottomMarginMethodInfo
    ResolveViewMethod "getBuffer" o = Gtk.TextView.TextViewGetBufferMethodInfo
    ResolveViewMethod "getCanDefault" o = Gtk.Widget.WidgetGetCanDefaultMethodInfo
    ResolveViewMethod "getCanFocus" o = Gtk.Widget.WidgetGetCanFocusMethodInfo
    ResolveViewMethod "getChildRequisition" o = Gtk.Widget.WidgetGetChildRequisitionMethodInfo
    ResolveViewMethod "getChildVisible" o = Gtk.Widget.WidgetGetChildVisibleMethodInfo
    ResolveViewMethod "getChildren" o = Gtk.Container.ContainerGetChildrenMethodInfo
    ResolveViewMethod "getClip" o = Gtk.Widget.WidgetGetClipMethodInfo
    ResolveViewMethod "getClipboard" o = Gtk.Widget.WidgetGetClipboardMethodInfo
    ResolveViewMethod "getCompletion" o = ViewGetCompletionMethodInfo
    ResolveViewMethod "getCompositeName" o = Gtk.Widget.WidgetGetCompositeNameMethodInfo
    ResolveViewMethod "getCursorLocations" o = Gtk.TextView.TextViewGetCursorLocationsMethodInfo
    ResolveViewMethod "getCursorVisible" o = Gtk.TextView.TextViewGetCursorVisibleMethodInfo
    ResolveViewMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveViewMethod "getDefaultAttributes" o = Gtk.TextView.TextViewGetDefaultAttributesMethodInfo
    ResolveViewMethod "getDeviceEnabled" o = Gtk.Widget.WidgetGetDeviceEnabledMethodInfo
    ResolveViewMethod "getDeviceEvents" o = Gtk.Widget.WidgetGetDeviceEventsMethodInfo
    ResolveViewMethod "getDirection" o = Gtk.Widget.WidgetGetDirectionMethodInfo
    ResolveViewMethod "getDisplay" o = Gtk.Widget.WidgetGetDisplayMethodInfo
    ResolveViewMethod "getDoubleBuffered" o = Gtk.Widget.WidgetGetDoubleBufferedMethodInfo
    ResolveViewMethod "getDrawSpaces" o = ViewGetDrawSpacesMethodInfo
    ResolveViewMethod "getEditable" o = Gtk.TextView.TextViewGetEditableMethodInfo
    ResolveViewMethod "getEvents" o = Gtk.Widget.WidgetGetEventsMethodInfo
    ResolveViewMethod "getFocusChain" o = Gtk.Container.ContainerGetFocusChainMethodInfo
    ResolveViewMethod "getFocusChild" o = Gtk.Container.ContainerGetFocusChildMethodInfo
    ResolveViewMethod "getFocusHadjustment" o = Gtk.Container.ContainerGetFocusHadjustmentMethodInfo
    ResolveViewMethod "getFocusOnClick" o = Gtk.Widget.WidgetGetFocusOnClickMethodInfo
    ResolveViewMethod "getFocusVadjustment" o = Gtk.Container.ContainerGetFocusVadjustmentMethodInfo
    ResolveViewMethod "getFontMap" o = Gtk.Widget.WidgetGetFontMapMethodInfo
    ResolveViewMethod "getFontOptions" o = Gtk.Widget.WidgetGetFontOptionsMethodInfo
    ResolveViewMethod "getFrameClock" o = Gtk.Widget.WidgetGetFrameClockMethodInfo
    ResolveViewMethod "getGutter" o = ViewGetGutterMethodInfo
    ResolveViewMethod "getHadjustment" o = Gtk.TextView.TextViewGetHadjustmentMethodInfo
    ResolveViewMethod "getHalign" o = Gtk.Widget.WidgetGetHalignMethodInfo
    ResolveViewMethod "getHasTooltip" o = Gtk.Widget.WidgetGetHasTooltipMethodInfo
    ResolveViewMethod "getHasWindow" o = Gtk.Widget.WidgetGetHasWindowMethodInfo
    ResolveViewMethod "getHexpand" o = Gtk.Widget.WidgetGetHexpandMethodInfo
    ResolveViewMethod "getHexpandSet" o = Gtk.Widget.WidgetGetHexpandSetMethodInfo
    ResolveViewMethod "getHighlightCurrentLine" o = ViewGetHighlightCurrentLineMethodInfo
    ResolveViewMethod "getHscrollPolicy" o = Gtk.Scrollable.ScrollableGetHscrollPolicyMethodInfo
    ResolveViewMethod "getIndent" o = Gtk.TextView.TextViewGetIndentMethodInfo
    ResolveViewMethod "getIndentOnTab" o = ViewGetIndentOnTabMethodInfo
    ResolveViewMethod "getIndentWidth" o = ViewGetIndentWidthMethodInfo
    ResolveViewMethod "getInputHints" o = Gtk.TextView.TextViewGetInputHintsMethodInfo
    ResolveViewMethod "getInputPurpose" o = Gtk.TextView.TextViewGetInputPurposeMethodInfo
    ResolveViewMethod "getInsertSpacesInsteadOfTabs" o = ViewGetInsertSpacesInsteadOfTabsMethodInfo
    ResolveViewMethod "getInternalChild" o = Gtk.Buildable.BuildableGetInternalChildMethodInfo
    ResolveViewMethod "getIterAtLocation" o = Gtk.TextView.TextViewGetIterAtLocationMethodInfo
    ResolveViewMethod "getIterAtPosition" o = Gtk.TextView.TextViewGetIterAtPositionMethodInfo
    ResolveViewMethod "getIterLocation" o = Gtk.TextView.TextViewGetIterLocationMethodInfo
    ResolveViewMethod "getJustification" o = Gtk.TextView.TextViewGetJustificationMethodInfo
    ResolveViewMethod "getLeftMargin" o = Gtk.TextView.TextViewGetLeftMarginMethodInfo
    ResolveViewMethod "getLineAtY" o = Gtk.TextView.TextViewGetLineAtYMethodInfo
    ResolveViewMethod "getLineYrange" o = Gtk.TextView.TextViewGetLineYrangeMethodInfo
    ResolveViewMethod "getMapped" o = Gtk.Widget.WidgetGetMappedMethodInfo
    ResolveViewMethod "getMarginBottom" o = Gtk.Widget.WidgetGetMarginBottomMethodInfo
    ResolveViewMethod "getMarginEnd" o = Gtk.Widget.WidgetGetMarginEndMethodInfo
    ResolveViewMethod "getMarginLeft" o = Gtk.Widget.WidgetGetMarginLeftMethodInfo
    ResolveViewMethod "getMarginRight" o = Gtk.Widget.WidgetGetMarginRightMethodInfo
    ResolveViewMethod "getMarginStart" o = Gtk.Widget.WidgetGetMarginStartMethodInfo
    ResolveViewMethod "getMarginTop" o = Gtk.Widget.WidgetGetMarginTopMethodInfo
    ResolveViewMethod "getMarkAttributes" o = ViewGetMarkAttributesMethodInfo
    ResolveViewMethod "getModifierMask" o = Gtk.Widget.WidgetGetModifierMaskMethodInfo
    ResolveViewMethod "getModifierStyle" o = Gtk.Widget.WidgetGetModifierStyleMethodInfo
    ResolveViewMethod "getMonospace" o = Gtk.TextView.TextViewGetMonospaceMethodInfo
    ResolveViewMethod "getName" o = Gtk.Widget.WidgetGetNameMethodInfo
    ResolveViewMethod "getNoShowAll" o = Gtk.Widget.WidgetGetNoShowAllMethodInfo
    ResolveViewMethod "getOpacity" o = Gtk.Widget.WidgetGetOpacityMethodInfo
    ResolveViewMethod "getOverwrite" o = Gtk.TextView.TextViewGetOverwriteMethodInfo
    ResolveViewMethod "getPangoContext" o = Gtk.Widget.WidgetGetPangoContextMethodInfo
    ResolveViewMethod "getParent" o = Gtk.Widget.WidgetGetParentMethodInfo
    ResolveViewMethod "getParentWindow" o = Gtk.Widget.WidgetGetParentWindowMethodInfo
    ResolveViewMethod "getPath" o = Gtk.Widget.WidgetGetPathMethodInfo
    ResolveViewMethod "getPathForChild" o = Gtk.Container.ContainerGetPathForChildMethodInfo
    ResolveViewMethod "getPixelsAboveLines" o = Gtk.TextView.TextViewGetPixelsAboveLinesMethodInfo
    ResolveViewMethod "getPixelsBelowLines" o = Gtk.TextView.TextViewGetPixelsBelowLinesMethodInfo
    ResolveViewMethod "getPixelsInsideWrap" o = Gtk.TextView.TextViewGetPixelsInsideWrapMethodInfo
    ResolveViewMethod "getPointer" o = Gtk.Widget.WidgetGetPointerMethodInfo
    ResolveViewMethod "getPreferredHeight" o = Gtk.Widget.WidgetGetPreferredHeightMethodInfo
    ResolveViewMethod "getPreferredHeightAndBaselineForWidth" o = Gtk.Widget.WidgetGetPreferredHeightAndBaselineForWidthMethodInfo
    ResolveViewMethod "getPreferredHeightForWidth" o = Gtk.Widget.WidgetGetPreferredHeightForWidthMethodInfo
    ResolveViewMethod "getPreferredSize" o = Gtk.Widget.WidgetGetPreferredSizeMethodInfo
    ResolveViewMethod "getPreferredWidth" o = Gtk.Widget.WidgetGetPreferredWidthMethodInfo
    ResolveViewMethod "getPreferredWidthForHeight" o = Gtk.Widget.WidgetGetPreferredWidthForHeightMethodInfo
    ResolveViewMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveViewMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveViewMethod "getRealized" o = Gtk.Widget.WidgetGetRealizedMethodInfo
    ResolveViewMethod "getReceivesDefault" o = Gtk.Widget.WidgetGetReceivesDefaultMethodInfo
    ResolveViewMethod "getRequestMode" o = Gtk.Widget.WidgetGetRequestModeMethodInfo
    ResolveViewMethod "getRequisition" o = Gtk.Widget.WidgetGetRequisitionMethodInfo
    ResolveViewMethod "getResizeMode" o = Gtk.Container.ContainerGetResizeModeMethodInfo
    ResolveViewMethod "getRightMargin" o = Gtk.TextView.TextViewGetRightMarginMethodInfo
    ResolveViewMethod "getRightMarginPosition" o = ViewGetRightMarginPositionMethodInfo
    ResolveViewMethod "getRootWindow" o = Gtk.Widget.WidgetGetRootWindowMethodInfo
    ResolveViewMethod "getScaleFactor" o = Gtk.Widget.WidgetGetScaleFactorMethodInfo
    ResolveViewMethod "getScreen" o = Gtk.Widget.WidgetGetScreenMethodInfo
    ResolveViewMethod "getSensitive" o = Gtk.Widget.WidgetGetSensitiveMethodInfo
    ResolveViewMethod "getSettings" o = Gtk.Widget.WidgetGetSettingsMethodInfo
    ResolveViewMethod "getShowLineMarks" o = ViewGetShowLineMarksMethodInfo
    ResolveViewMethod "getShowLineNumbers" o = ViewGetShowLineNumbersMethodInfo
    ResolveViewMethod "getShowRightMargin" o = ViewGetShowRightMarginMethodInfo
    ResolveViewMethod "getSizeRequest" o = Gtk.Widget.WidgetGetSizeRequestMethodInfo
    ResolveViewMethod "getSmartBackspace" o = ViewGetSmartBackspaceMethodInfo
    ResolveViewMethod "getSmartHomeEnd" o = ViewGetSmartHomeEndMethodInfo
    ResolveViewMethod "getSpaceDrawer" o = ViewGetSpaceDrawerMethodInfo
    ResolveViewMethod "getState" o = Gtk.Widget.WidgetGetStateMethodInfo
    ResolveViewMethod "getStateFlags" o = Gtk.Widget.WidgetGetStateFlagsMethodInfo
    ResolveViewMethod "getStyle" o = Gtk.Widget.WidgetGetStyleMethodInfo
    ResolveViewMethod "getStyleContext" o = Gtk.Widget.WidgetGetStyleContextMethodInfo
    ResolveViewMethod "getSupportMultidevice" o = Gtk.Widget.WidgetGetSupportMultideviceMethodInfo
    ResolveViewMethod "getTabWidth" o = ViewGetTabWidthMethodInfo
    ResolveViewMethod "getTabs" o = Gtk.TextView.TextViewGetTabsMethodInfo
    ResolveViewMethod "getTemplateChild" o = Gtk.Widget.WidgetGetTemplateChildMethodInfo
    ResolveViewMethod "getTooltipMarkup" o = Gtk.Widget.WidgetGetTooltipMarkupMethodInfo
    ResolveViewMethod "getTooltipText" o = Gtk.Widget.WidgetGetTooltipTextMethodInfo
    ResolveViewMethod "getTooltipWindow" o = Gtk.Widget.WidgetGetTooltipWindowMethodInfo
    ResolveViewMethod "getTopMargin" o = Gtk.TextView.TextViewGetTopMarginMethodInfo
    ResolveViewMethod "getToplevel" o = Gtk.Widget.WidgetGetToplevelMethodInfo
    ResolveViewMethod "getVadjustment" o = Gtk.TextView.TextViewGetVadjustmentMethodInfo
    ResolveViewMethod "getValign" o = Gtk.Widget.WidgetGetValignMethodInfo
    ResolveViewMethod "getValignWithBaseline" o = Gtk.Widget.WidgetGetValignWithBaselineMethodInfo
    ResolveViewMethod "getVexpand" o = Gtk.Widget.WidgetGetVexpandMethodInfo
    ResolveViewMethod "getVexpandSet" o = Gtk.Widget.WidgetGetVexpandSetMethodInfo
    ResolveViewMethod "getVisible" o = Gtk.Widget.WidgetGetVisibleMethodInfo
    ResolveViewMethod "getVisibleRect" o = Gtk.TextView.TextViewGetVisibleRectMethodInfo
    ResolveViewMethod "getVisual" o = Gtk.Widget.WidgetGetVisualMethodInfo
    ResolveViewMethod "getVisualColumn" o = ViewGetVisualColumnMethodInfo
    ResolveViewMethod "getVscrollPolicy" o = Gtk.Scrollable.ScrollableGetVscrollPolicyMethodInfo
    ResolveViewMethod "getWindow" o = Gtk.TextView.TextViewGetWindowMethodInfo
    ResolveViewMethod "getWindowType" o = Gtk.TextView.TextViewGetWindowTypeMethodInfo
    ResolveViewMethod "getWrapMode" o = Gtk.TextView.TextViewGetWrapModeMethodInfo
    ResolveViewMethod "setAccelPath" o = Gtk.Widget.WidgetSetAccelPathMethodInfo
    ResolveViewMethod "setAcceptsTab" o = Gtk.TextView.TextViewSetAcceptsTabMethodInfo
    ResolveViewMethod "setAllocation" o = Gtk.Widget.WidgetSetAllocationMethodInfo
    ResolveViewMethod "setAppPaintable" o = Gtk.Widget.WidgetSetAppPaintableMethodInfo
    ResolveViewMethod "setAutoIndent" o = ViewSetAutoIndentMethodInfo
    ResolveViewMethod "setBackgroundPattern" o = ViewSetBackgroundPatternMethodInfo
    ResolveViewMethod "setBorderWidth" o = Gtk.Container.ContainerSetBorderWidthMethodInfo
    ResolveViewMethod "setBorderWindowSize" o = Gtk.TextView.TextViewSetBorderWindowSizeMethodInfo
    ResolveViewMethod "setBottomMargin" o = Gtk.TextView.TextViewSetBottomMarginMethodInfo
    ResolveViewMethod "setBuffer" o = Gtk.TextView.TextViewSetBufferMethodInfo
    ResolveViewMethod "setBuildableProperty" o = Gtk.Buildable.BuildableSetBuildablePropertyMethodInfo
    ResolveViewMethod "setCanDefault" o = Gtk.Widget.WidgetSetCanDefaultMethodInfo
    ResolveViewMethod "setCanFocus" o = Gtk.Widget.WidgetSetCanFocusMethodInfo
    ResolveViewMethod "setChildVisible" o = Gtk.Widget.WidgetSetChildVisibleMethodInfo
    ResolveViewMethod "setClip" o = Gtk.Widget.WidgetSetClipMethodInfo
    ResolveViewMethod "setCompositeName" o = Gtk.Widget.WidgetSetCompositeNameMethodInfo
    ResolveViewMethod "setCursorVisible" o = Gtk.TextView.TextViewSetCursorVisibleMethodInfo
    ResolveViewMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveViewMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
    ResolveViewMethod "setDeviceEnabled" o = Gtk.Widget.WidgetSetDeviceEnabledMethodInfo
    ResolveViewMethod "setDeviceEvents" o = Gtk.Widget.WidgetSetDeviceEventsMethodInfo
    ResolveViewMethod "setDirection" o = Gtk.Widget.WidgetSetDirectionMethodInfo
    ResolveViewMethod "setDoubleBuffered" o = Gtk.Widget.WidgetSetDoubleBufferedMethodInfo
    ResolveViewMethod "setDrawSpaces" o = ViewSetDrawSpacesMethodInfo
    ResolveViewMethod "setEditable" o = Gtk.TextView.TextViewSetEditableMethodInfo
    ResolveViewMethod "setEvents" o = Gtk.Widget.WidgetSetEventsMethodInfo
    ResolveViewMethod "setFocusChain" o = Gtk.Container.ContainerSetFocusChainMethodInfo
    ResolveViewMethod "setFocusChild" o = Gtk.Container.ContainerSetFocusChildMethodInfo
    ResolveViewMethod "setFocusHadjustment" o = Gtk.Container.ContainerSetFocusHadjustmentMethodInfo
    ResolveViewMethod "setFocusOnClick" o = Gtk.Widget.WidgetSetFocusOnClickMethodInfo
    ResolveViewMethod "setFocusVadjustment" o = Gtk.Container.ContainerSetFocusVadjustmentMethodInfo
    ResolveViewMethod "setFontMap" o = Gtk.Widget.WidgetSetFontMapMethodInfo
    ResolveViewMethod "setFontOptions" o = Gtk.Widget.WidgetSetFontOptionsMethodInfo
    ResolveViewMethod "setHadjustment" o = Gtk.Scrollable.ScrollableSetHadjustmentMethodInfo
    ResolveViewMethod "setHalign" o = Gtk.Widget.WidgetSetHalignMethodInfo
    ResolveViewMethod "setHasTooltip" o = Gtk.Widget.WidgetSetHasTooltipMethodInfo
    ResolveViewMethod "setHasWindow" o = Gtk.Widget.WidgetSetHasWindowMethodInfo
    ResolveViewMethod "setHexpand" o = Gtk.Widget.WidgetSetHexpandMethodInfo
    ResolveViewMethod "setHexpandSet" o = Gtk.Widget.WidgetSetHexpandSetMethodInfo
    ResolveViewMethod "setHighlightCurrentLine" o = ViewSetHighlightCurrentLineMethodInfo
    ResolveViewMethod "setHscrollPolicy" o = Gtk.Scrollable.ScrollableSetHscrollPolicyMethodInfo
    ResolveViewMethod "setIndent" o = Gtk.TextView.TextViewSetIndentMethodInfo
    ResolveViewMethod "setIndentOnTab" o = ViewSetIndentOnTabMethodInfo
    ResolveViewMethod "setIndentWidth" o = ViewSetIndentWidthMethodInfo
    ResolveViewMethod "setInputHints" o = Gtk.TextView.TextViewSetInputHintsMethodInfo
    ResolveViewMethod "setInputPurpose" o = Gtk.TextView.TextViewSetInputPurposeMethodInfo
    ResolveViewMethod "setInsertSpacesInsteadOfTabs" o = ViewSetInsertSpacesInsteadOfTabsMethodInfo
    ResolveViewMethod "setJustification" o = Gtk.TextView.TextViewSetJustificationMethodInfo
    ResolveViewMethod "setLeftMargin" o = Gtk.TextView.TextViewSetLeftMarginMethodInfo
    ResolveViewMethod "setMapped" o = Gtk.Widget.WidgetSetMappedMethodInfo
    ResolveViewMethod "setMarginBottom" o = Gtk.Widget.WidgetSetMarginBottomMethodInfo
    ResolveViewMethod "setMarginEnd" o = Gtk.Widget.WidgetSetMarginEndMethodInfo
    ResolveViewMethod "setMarginLeft" o = Gtk.Widget.WidgetSetMarginLeftMethodInfo
    ResolveViewMethod "setMarginRight" o = Gtk.Widget.WidgetSetMarginRightMethodInfo
    ResolveViewMethod "setMarginStart" o = Gtk.Widget.WidgetSetMarginStartMethodInfo
    ResolveViewMethod "setMarginTop" o = Gtk.Widget.WidgetSetMarginTopMethodInfo
    ResolveViewMethod "setMarkAttributes" o = ViewSetMarkAttributesMethodInfo
    ResolveViewMethod "setMonospace" o = Gtk.TextView.TextViewSetMonospaceMethodInfo
    ResolveViewMethod "setName" o = Gtk.Widget.WidgetSetNameMethodInfo
    ResolveViewMethod "setNoShowAll" o = Gtk.Widget.WidgetSetNoShowAllMethodInfo
    ResolveViewMethod "setOpacity" o = Gtk.Widget.WidgetSetOpacityMethodInfo
    ResolveViewMethod "setOverwrite" o = Gtk.TextView.TextViewSetOverwriteMethodInfo
    ResolveViewMethod "setParent" o = Gtk.Widget.WidgetSetParentMethodInfo
    ResolveViewMethod "setParentWindow" o = Gtk.Widget.WidgetSetParentWindowMethodInfo
    ResolveViewMethod "setPixelsAboveLines" o = Gtk.TextView.TextViewSetPixelsAboveLinesMethodInfo
    ResolveViewMethod "setPixelsBelowLines" o = Gtk.TextView.TextViewSetPixelsBelowLinesMethodInfo
    ResolveViewMethod "setPixelsInsideWrap" o = Gtk.TextView.TextViewSetPixelsInsideWrapMethodInfo
    ResolveViewMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveViewMethod "setRealized" o = Gtk.Widget.WidgetSetRealizedMethodInfo
    ResolveViewMethod "setReallocateRedraws" o = Gtk.Container.ContainerSetReallocateRedrawsMethodInfo
    ResolveViewMethod "setReceivesDefault" o = Gtk.Widget.WidgetSetReceivesDefaultMethodInfo
    ResolveViewMethod "setRedrawOnAllocate" o = Gtk.Widget.WidgetSetRedrawOnAllocateMethodInfo
    ResolveViewMethod "setResizeMode" o = Gtk.Container.ContainerSetResizeModeMethodInfo
    ResolveViewMethod "setRightMargin" o = Gtk.TextView.TextViewSetRightMarginMethodInfo
    ResolveViewMethod "setRightMarginPosition" o = ViewSetRightMarginPositionMethodInfo
    ResolveViewMethod "setSensitive" o = Gtk.Widget.WidgetSetSensitiveMethodInfo
    ResolveViewMethod "setShowLineMarks" o = ViewSetShowLineMarksMethodInfo
    ResolveViewMethod "setShowLineNumbers" o = ViewSetShowLineNumbersMethodInfo
    ResolveViewMethod "setShowRightMargin" o = ViewSetShowRightMarginMethodInfo
    ResolveViewMethod "setSizeRequest" o = Gtk.Widget.WidgetSetSizeRequestMethodInfo
    ResolveViewMethod "setSmartBackspace" o = ViewSetSmartBackspaceMethodInfo
    ResolveViewMethod "setSmartHomeEnd" o = ViewSetSmartHomeEndMethodInfo
    ResolveViewMethod "setState" o = Gtk.Widget.WidgetSetStateMethodInfo
    ResolveViewMethod "setStateFlags" o = Gtk.Widget.WidgetSetStateFlagsMethodInfo
    ResolveViewMethod "setStyle" o = Gtk.Widget.WidgetSetStyleMethodInfo
    ResolveViewMethod "setSupportMultidevice" o = Gtk.Widget.WidgetSetSupportMultideviceMethodInfo
    ResolveViewMethod "setTabWidth" o = ViewSetTabWidthMethodInfo
    ResolveViewMethod "setTabs" o = Gtk.TextView.TextViewSetTabsMethodInfo
    ResolveViewMethod "setTooltipMarkup" o = Gtk.Widget.WidgetSetTooltipMarkupMethodInfo
    ResolveViewMethod "setTooltipText" o = Gtk.Widget.WidgetSetTooltipTextMethodInfo
    ResolveViewMethod "setTooltipWindow" o = Gtk.Widget.WidgetSetTooltipWindowMethodInfo
    ResolveViewMethod "setTopMargin" o = Gtk.TextView.TextViewSetTopMarginMethodInfo
    ResolveViewMethod "setVadjustment" o = Gtk.Scrollable.ScrollableSetVadjustmentMethodInfo
    ResolveViewMethod "setValign" o = Gtk.Widget.WidgetSetValignMethodInfo
    ResolveViewMethod "setVexpand" o = Gtk.Widget.WidgetSetVexpandMethodInfo
    ResolveViewMethod "setVexpandSet" o = Gtk.Widget.WidgetSetVexpandSetMethodInfo
    ResolveViewMethod "setVisible" o = Gtk.Widget.WidgetSetVisibleMethodInfo
    ResolveViewMethod "setVisual" o = Gtk.Widget.WidgetSetVisualMethodInfo
    ResolveViewMethod "setVscrollPolicy" o = Gtk.Scrollable.ScrollableSetVscrollPolicyMethodInfo
    ResolveViewMethod "setWindow" o = Gtk.Widget.WidgetSetWindowMethodInfo
    ResolveViewMethod "setWrapMode" o = Gtk.TextView.TextViewSetWrapModeMethodInfo
    ResolveViewMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveViewMethod t View, O.MethodInfo info View p) => OL.IsLabel t (View -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod @info
#else
    fromLabel _ = O.overloadedMethod @info
#endif

#endif

-- signal View::change-case
-- | Keybinding signal to change case of the text at the current cursor position.
-- 
-- /Since: 3.16/
type ViewChangeCaseCallback =
    GtkSource.Enums.ChangeCaseType
    -- ^ /@caseType@/: the case to use
    -> IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewChangeCaseCallback`@.
noViewChangeCaseCallback :: Maybe ViewChangeCaseCallback
noViewChangeCaseCallback :: Maybe ViewChangeCaseCallback
noViewChangeCaseCallback = Maybe ViewChangeCaseCallback
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewChangeCaseCallback =
    Ptr () ->                               -- object
    CUInt ->
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewChangeCaseCallback`.
foreign import ccall "wrapper"
    mk_ViewChangeCaseCallback :: C_ViewChangeCaseCallback -> IO (FunPtr C_ViewChangeCaseCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewChangeCase :: MonadIO m => ViewChangeCaseCallback -> m (GClosure C_ViewChangeCaseCallback)
genClosure_ViewChangeCase :: ViewChangeCaseCallback -> m (GClosure C_ViewChangeCaseCallback)
genClosure_ViewChangeCase ViewChangeCaseCallback
cb = IO (GClosure C_ViewChangeCaseCallback)
-> m (GClosure C_ViewChangeCaseCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewChangeCaseCallback)
 -> m (GClosure C_ViewChangeCaseCallback))
-> IO (GClosure C_ViewChangeCaseCallback)
-> m (GClosure C_ViewChangeCaseCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeCaseCallback
cb' = ViewChangeCaseCallback -> C_ViewChangeCaseCallback
wrap_ViewChangeCaseCallback ViewChangeCaseCallback
cb
    C_ViewChangeCaseCallback -> IO (FunPtr C_ViewChangeCaseCallback)
mk_ViewChangeCaseCallback C_ViewChangeCaseCallback
cb' IO (FunPtr C_ViewChangeCaseCallback)
-> (FunPtr C_ViewChangeCaseCallback
    -> IO (GClosure C_ViewChangeCaseCallback))
-> IO (GClosure C_ViewChangeCaseCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewChangeCaseCallback
-> IO (GClosure C_ViewChangeCaseCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewChangeCaseCallback` into a `C_ViewChangeCaseCallback`.
wrap_ViewChangeCaseCallback ::
    ViewChangeCaseCallback ->
    C_ViewChangeCaseCallback
wrap_ViewChangeCaseCallback :: ViewChangeCaseCallback -> C_ViewChangeCaseCallback
wrap_ViewChangeCaseCallback ViewChangeCaseCallback
_cb Ptr ()
_ CUInt
caseType Ptr ()
_ = do
    let caseType' :: ChangeCaseType
caseType' = (Int -> ChangeCaseType
forall a. Enum a => Int -> a
toEnum (Int -> ChangeCaseType)
-> (CUInt -> Int) -> CUInt -> ChangeCaseType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
caseType
    ViewChangeCaseCallback
_cb  ChangeCaseType
caseType'


-- | Connect a signal handler for the [changeCase](#signal:changeCase) 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' view #changeCase callback
-- @
-- 
-- 
onViewChangeCase :: (IsView a, MonadIO m) => a -> ViewChangeCaseCallback -> m SignalHandlerId
onViewChangeCase :: a -> ViewChangeCaseCallback -> m SignalHandlerId
onViewChangeCase a
obj ViewChangeCaseCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeCaseCallback
cb' = ViewChangeCaseCallback -> C_ViewChangeCaseCallback
wrap_ViewChangeCaseCallback ViewChangeCaseCallback
cb
    FunPtr C_ViewChangeCaseCallback
cb'' <- C_ViewChangeCaseCallback -> IO (FunPtr C_ViewChangeCaseCallback)
mk_ViewChangeCaseCallback C_ViewChangeCaseCallback
cb'
    a
-> Text
-> FunPtr C_ViewChangeCaseCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"change-case" FunPtr C_ViewChangeCaseCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [changeCase](#signal:changeCase) 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' view #changeCase callback
-- @
-- 
-- 
afterViewChangeCase :: (IsView a, MonadIO m) => a -> ViewChangeCaseCallback -> m SignalHandlerId
afterViewChangeCase :: a -> ViewChangeCaseCallback -> m SignalHandlerId
afterViewChangeCase a
obj ViewChangeCaseCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeCaseCallback
cb' = ViewChangeCaseCallback -> C_ViewChangeCaseCallback
wrap_ViewChangeCaseCallback ViewChangeCaseCallback
cb
    FunPtr C_ViewChangeCaseCallback
cb'' <- C_ViewChangeCaseCallback -> IO (FunPtr C_ViewChangeCaseCallback)
mk_ViewChangeCaseCallback C_ViewChangeCaseCallback
cb'
    a
-> Text
-> FunPtr C_ViewChangeCaseCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"change-case" FunPtr C_ViewChangeCaseCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewChangeCaseSignalInfo
instance SignalInfo ViewChangeCaseSignalInfo where
    type HaskellCallbackType ViewChangeCaseSignalInfo = ViewChangeCaseCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewChangeCaseCallback cb
        cb'' <- mk_ViewChangeCaseCallback cb'
        connectSignalFunPtr obj "change-case" cb'' connectMode detail

#endif

-- signal View::change-number
-- | Keybinding signal to edit a number at the current cursor position.
-- 
-- /Since: 3.16/
type ViewChangeNumberCallback =
    Int32
    -- ^ /@count@/: the number to add to the number at the current position
    -> IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewChangeNumberCallback`@.
noViewChangeNumberCallback :: Maybe ViewChangeNumberCallback
noViewChangeNumberCallback :: Maybe ViewChangeNumberCallback
noViewChangeNumberCallback = Maybe ViewChangeNumberCallback
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewChangeNumberCallback =
    Ptr () ->                               -- object
    Int32 ->
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewChangeNumberCallback`.
foreign import ccall "wrapper"
    mk_ViewChangeNumberCallback :: C_ViewChangeNumberCallback -> IO (FunPtr C_ViewChangeNumberCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewChangeNumber :: MonadIO m => ViewChangeNumberCallback -> m (GClosure C_ViewChangeNumberCallback)
genClosure_ViewChangeNumber :: ViewChangeNumberCallback -> m (GClosure C_ViewChangeNumberCallback)
genClosure_ViewChangeNumber ViewChangeNumberCallback
cb = IO (GClosure C_ViewChangeNumberCallback)
-> m (GClosure C_ViewChangeNumberCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewChangeNumberCallback)
 -> m (GClosure C_ViewChangeNumberCallback))
-> IO (GClosure C_ViewChangeNumberCallback)
-> m (GClosure C_ViewChangeNumberCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeNumberCallback
cb' = ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewChangeNumberCallback ViewChangeNumberCallback
cb
    C_ViewChangeNumberCallback
-> IO (FunPtr C_ViewChangeNumberCallback)
mk_ViewChangeNumberCallback C_ViewChangeNumberCallback
cb' IO (FunPtr C_ViewChangeNumberCallback)
-> (FunPtr C_ViewChangeNumberCallback
    -> IO (GClosure C_ViewChangeNumberCallback))
-> IO (GClosure C_ViewChangeNumberCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewChangeNumberCallback
-> IO (GClosure C_ViewChangeNumberCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewChangeNumberCallback` into a `C_ViewChangeNumberCallback`.
wrap_ViewChangeNumberCallback ::
    ViewChangeNumberCallback ->
    C_ViewChangeNumberCallback
wrap_ViewChangeNumberCallback :: ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewChangeNumberCallback ViewChangeNumberCallback
_cb Ptr ()
_ Int32
count Ptr ()
_ = do
    ViewChangeNumberCallback
_cb  Int32
count


-- | Connect a signal handler for the [changeNumber](#signal:changeNumber) 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' view #changeNumber callback
-- @
-- 
-- 
onViewChangeNumber :: (IsView a, MonadIO m) => a -> ViewChangeNumberCallback -> m SignalHandlerId
onViewChangeNumber :: a -> ViewChangeNumberCallback -> m SignalHandlerId
onViewChangeNumber a
obj ViewChangeNumberCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeNumberCallback
cb' = ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewChangeNumberCallback ViewChangeNumberCallback
cb
    FunPtr C_ViewChangeNumberCallback
cb'' <- C_ViewChangeNumberCallback
-> IO (FunPtr C_ViewChangeNumberCallback)
mk_ViewChangeNumberCallback C_ViewChangeNumberCallback
cb'
    a
-> Text
-> FunPtr C_ViewChangeNumberCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"change-number" FunPtr C_ViewChangeNumberCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [changeNumber](#signal:changeNumber) 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' view #changeNumber callback
-- @
-- 
-- 
afterViewChangeNumber :: (IsView a, MonadIO m) => a -> ViewChangeNumberCallback -> m SignalHandlerId
afterViewChangeNumber :: a -> ViewChangeNumberCallback -> m SignalHandlerId
afterViewChangeNumber a
obj ViewChangeNumberCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeNumberCallback
cb' = ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewChangeNumberCallback ViewChangeNumberCallback
cb
    FunPtr C_ViewChangeNumberCallback
cb'' <- C_ViewChangeNumberCallback
-> IO (FunPtr C_ViewChangeNumberCallback)
mk_ViewChangeNumberCallback C_ViewChangeNumberCallback
cb'
    a
-> Text
-> FunPtr C_ViewChangeNumberCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"change-number" FunPtr C_ViewChangeNumberCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewChangeNumberSignalInfo
instance SignalInfo ViewChangeNumberSignalInfo where
    type HaskellCallbackType ViewChangeNumberSignalInfo = ViewChangeNumberCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewChangeNumberCallback cb
        cb'' <- mk_ViewChangeNumberCallback cb'
        connectSignalFunPtr obj "change-number" cb'' connectMode detail

#endif

-- signal View::join-lines
-- | Keybinding signal to join the lines currently selected.
-- 
-- /Since: 3.16/
type ViewJoinLinesCallback =
    IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewJoinLinesCallback`@.
noViewJoinLinesCallback :: Maybe ViewJoinLinesCallback
noViewJoinLinesCallback :: Maybe (IO ())
noViewJoinLinesCallback = Maybe (IO ())
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewJoinLinesCallback =
    Ptr () ->                               -- object
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewJoinLinesCallback`.
foreign import ccall "wrapper"
    mk_ViewJoinLinesCallback :: C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewJoinLines :: MonadIO m => ViewJoinLinesCallback -> m (GClosure C_ViewJoinLinesCallback)
genClosure_ViewJoinLines :: IO () -> m (GClosure C_ViewJoinLinesCallback)
genClosure_ViewJoinLines IO ()
cb = IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewJoinLinesCallback)
 -> m (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewJoinLinesCallback IO ()
cb
    C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewJoinLinesCallback C_ViewJoinLinesCallback
cb' IO (FunPtr C_ViewJoinLinesCallback)
-> (FunPtr C_ViewJoinLinesCallback
    -> IO (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewJoinLinesCallback
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewJoinLinesCallback` into a `C_ViewJoinLinesCallback`.
wrap_ViewJoinLinesCallback ::
    ViewJoinLinesCallback ->
    C_ViewJoinLinesCallback
wrap_ViewJoinLinesCallback :: IO () -> C_ViewJoinLinesCallback
wrap_ViewJoinLinesCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
    IO ()
_cb 


-- | Connect a signal handler for the [joinLines](#signal:joinLines) 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' view #joinLines callback
-- @
-- 
-- 
onViewJoinLines :: (IsView a, MonadIO m) => a -> ViewJoinLinesCallback -> m SignalHandlerId
onViewJoinLines :: a -> IO () -> m SignalHandlerId
onViewJoinLines a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewJoinLinesCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewJoinLinesCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"join-lines" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [joinLines](#signal:joinLines) 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' view #joinLines callback
-- @
-- 
-- 
afterViewJoinLines :: (IsView a, MonadIO m) => a -> ViewJoinLinesCallback -> m SignalHandlerId
afterViewJoinLines :: a -> IO () -> m SignalHandlerId
afterViewJoinLines a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewJoinLinesCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewJoinLinesCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"join-lines" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewJoinLinesSignalInfo
instance SignalInfo ViewJoinLinesSignalInfo where
    type HaskellCallbackType ViewJoinLinesSignalInfo = ViewJoinLinesCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewJoinLinesCallback cb
        cb'' <- mk_ViewJoinLinesCallback cb'
        connectSignalFunPtr obj "join-lines" cb'' connectMode detail

#endif

-- signal View::line-mark-activated
-- | Emitted when a line mark has been activated (for instance when there
-- was a button press in the line marks gutter). You can use /@iter@/ to
-- determine on which line the activation took place.
type ViewLineMarkActivatedCallback =
    Gtk.TextIter.TextIter
    -- ^ /@iter@/: a t'GI.Gtk.Structs.TextIter.TextIter'
    -> Gdk.Event.Event
    -- ^ /@event@/: the t'GI.Gdk.Unions.Event.Event' that activated the event
    -> IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewLineMarkActivatedCallback`@.
noViewLineMarkActivatedCallback :: Maybe ViewLineMarkActivatedCallback
noViewLineMarkActivatedCallback :: Maybe ViewLineMarkActivatedCallback
noViewLineMarkActivatedCallback = Maybe ViewLineMarkActivatedCallback
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewLineMarkActivatedCallback =
    Ptr () ->                               -- object
    Ptr Gtk.TextIter.TextIter ->
    Ptr Gdk.Event.Event ->
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewLineMarkActivatedCallback`.
foreign import ccall "wrapper"
    mk_ViewLineMarkActivatedCallback :: C_ViewLineMarkActivatedCallback -> IO (FunPtr C_ViewLineMarkActivatedCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewLineMarkActivated :: MonadIO m => ViewLineMarkActivatedCallback -> m (GClosure C_ViewLineMarkActivatedCallback)
genClosure_ViewLineMarkActivated :: ViewLineMarkActivatedCallback
-> m (GClosure C_ViewLineMarkActivatedCallback)
genClosure_ViewLineMarkActivated ViewLineMarkActivatedCallback
cb = IO (GClosure C_ViewLineMarkActivatedCallback)
-> m (GClosure C_ViewLineMarkActivatedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewLineMarkActivatedCallback)
 -> m (GClosure C_ViewLineMarkActivatedCallback))
-> IO (GClosure C_ViewLineMarkActivatedCallback)
-> m (GClosure C_ViewLineMarkActivatedCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewLineMarkActivatedCallback
cb' = ViewLineMarkActivatedCallback -> C_ViewLineMarkActivatedCallback
wrap_ViewLineMarkActivatedCallback ViewLineMarkActivatedCallback
cb
    C_ViewLineMarkActivatedCallback
-> IO (FunPtr C_ViewLineMarkActivatedCallback)
mk_ViewLineMarkActivatedCallback C_ViewLineMarkActivatedCallback
cb' IO (FunPtr C_ViewLineMarkActivatedCallback)
-> (FunPtr C_ViewLineMarkActivatedCallback
    -> IO (GClosure C_ViewLineMarkActivatedCallback))
-> IO (GClosure C_ViewLineMarkActivatedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewLineMarkActivatedCallback
-> IO (GClosure C_ViewLineMarkActivatedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewLineMarkActivatedCallback` into a `C_ViewLineMarkActivatedCallback`.
wrap_ViewLineMarkActivatedCallback ::
    ViewLineMarkActivatedCallback ->
    C_ViewLineMarkActivatedCallback
wrap_ViewLineMarkActivatedCallback :: ViewLineMarkActivatedCallback -> C_ViewLineMarkActivatedCallback
wrap_ViewLineMarkActivatedCallback ViewLineMarkActivatedCallback
_cb Ptr ()
_ Ptr TextIter
iter Ptr Event
event Ptr ()
_ = do
    (ManagedPtr TextIter -> TextIter)
-> Ptr TextIter -> (TextIter -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
(ManagedPtr a -> a) -> Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient ManagedPtr TextIter -> TextIter
Gtk.TextIter.TextIter Ptr TextIter
iter ((TextIter -> IO ()) -> IO ()) -> (TextIter -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \TextIter
iter' -> do
        (ManagedPtr Event -> Event)
-> Ptr Event -> (Event -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
(ManagedPtr a -> a) -> Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient ManagedPtr Event -> Event
Gdk.Event.Event Ptr Event
event ((Event -> IO ()) -> IO ()) -> (Event -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Event
event' -> do
            ViewLineMarkActivatedCallback
_cb  TextIter
iter' Event
event'


-- | Connect a signal handler for the [lineMarkActivated](#signal:lineMarkActivated) 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' view #lineMarkActivated callback
-- @
-- 
-- 
onViewLineMarkActivated :: (IsView a, MonadIO m) => a -> ViewLineMarkActivatedCallback -> m SignalHandlerId
onViewLineMarkActivated :: a -> ViewLineMarkActivatedCallback -> m SignalHandlerId
onViewLineMarkActivated a
obj ViewLineMarkActivatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewLineMarkActivatedCallback
cb' = ViewLineMarkActivatedCallback -> C_ViewLineMarkActivatedCallback
wrap_ViewLineMarkActivatedCallback ViewLineMarkActivatedCallback
cb
    FunPtr C_ViewLineMarkActivatedCallback
cb'' <- C_ViewLineMarkActivatedCallback
-> IO (FunPtr C_ViewLineMarkActivatedCallback)
mk_ViewLineMarkActivatedCallback C_ViewLineMarkActivatedCallback
cb'
    a
-> Text
-> FunPtr C_ViewLineMarkActivatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"line-mark-activated" FunPtr C_ViewLineMarkActivatedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [lineMarkActivated](#signal:lineMarkActivated) 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' view #lineMarkActivated callback
-- @
-- 
-- 
afterViewLineMarkActivated :: (IsView a, MonadIO m) => a -> ViewLineMarkActivatedCallback -> m SignalHandlerId
afterViewLineMarkActivated :: a -> ViewLineMarkActivatedCallback -> m SignalHandlerId
afterViewLineMarkActivated a
obj ViewLineMarkActivatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewLineMarkActivatedCallback
cb' = ViewLineMarkActivatedCallback -> C_ViewLineMarkActivatedCallback
wrap_ViewLineMarkActivatedCallback ViewLineMarkActivatedCallback
cb
    FunPtr C_ViewLineMarkActivatedCallback
cb'' <- C_ViewLineMarkActivatedCallback
-> IO (FunPtr C_ViewLineMarkActivatedCallback)
mk_ViewLineMarkActivatedCallback C_ViewLineMarkActivatedCallback
cb'
    a
-> Text
-> FunPtr C_ViewLineMarkActivatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"line-mark-activated" FunPtr C_ViewLineMarkActivatedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewLineMarkActivatedSignalInfo
instance SignalInfo ViewLineMarkActivatedSignalInfo where
    type HaskellCallbackType ViewLineMarkActivatedSignalInfo = ViewLineMarkActivatedCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewLineMarkActivatedCallback cb
        cb'' <- mk_ViewLineMarkActivatedCallback cb'
        connectSignalFunPtr obj "line-mark-activated" cb'' connectMode detail

#endif

-- signal View::move-lines
-- | The [moveLines](#g:signal:moveLines) signal is a keybinding which gets emitted
-- when the user initiates moving a line. The default binding key
-- is Alt+Up\/Down arrow. And moves the currently selected lines,
-- or the current line by /@count@/. For the moment, only
-- /@count@/ of -1 or 1 is valid.
-- 
-- The /@copy@/ parameter is deprecated, it has never been used by
-- GtkSourceView (the value is always 'P.False') and was buggy.
-- 
-- /Since: 2.10/
type ViewMoveLinesCallback =
    Bool
    -- ^ /@copy@/: 'P.True' if the line should be copied, 'P.False' if it should be
    --   moved. This parameter is deprecated and will be removed in a later
    --   version, it should be always 'P.False'.
    -> Int32
    -- ^ /@count@/: the number of lines to move over. Only 1 and -1 are
    --   supported.
    -> IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewMoveLinesCallback`@.
noViewMoveLinesCallback :: Maybe ViewMoveLinesCallback
noViewMoveLinesCallback :: Maybe ViewMoveLinesCallback
noViewMoveLinesCallback = Maybe ViewMoveLinesCallback
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewMoveLinesCallback =
    Ptr () ->                               -- object
    CInt ->
    Int32 ->
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewMoveLinesCallback`.
foreign import ccall "wrapper"
    mk_ViewMoveLinesCallback :: C_ViewMoveLinesCallback -> IO (FunPtr C_ViewMoveLinesCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewMoveLines :: MonadIO m => ViewMoveLinesCallback -> m (GClosure C_ViewMoveLinesCallback)
genClosure_ViewMoveLines :: ViewMoveLinesCallback -> m (GClosure C_ViewMoveLinesCallback)
genClosure_ViewMoveLines ViewMoveLinesCallback
cb = IO (GClosure C_ViewMoveLinesCallback)
-> m (GClosure C_ViewMoveLinesCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewMoveLinesCallback)
 -> m (GClosure C_ViewMoveLinesCallback))
-> IO (GClosure C_ViewMoveLinesCallback)
-> m (GClosure C_ViewMoveLinesCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewMoveLinesCallback
cb' = ViewMoveLinesCallback -> C_ViewMoveLinesCallback
wrap_ViewMoveLinesCallback ViewMoveLinesCallback
cb
    C_ViewMoveLinesCallback -> IO (FunPtr C_ViewMoveLinesCallback)
mk_ViewMoveLinesCallback C_ViewMoveLinesCallback
cb' IO (FunPtr C_ViewMoveLinesCallback)
-> (FunPtr C_ViewMoveLinesCallback
    -> IO (GClosure C_ViewMoveLinesCallback))
-> IO (GClosure C_ViewMoveLinesCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewMoveLinesCallback
-> IO (GClosure C_ViewMoveLinesCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewMoveLinesCallback` into a `C_ViewMoveLinesCallback`.
wrap_ViewMoveLinesCallback ::
    ViewMoveLinesCallback ->
    C_ViewMoveLinesCallback
wrap_ViewMoveLinesCallback :: ViewMoveLinesCallback -> C_ViewMoveLinesCallback
wrap_ViewMoveLinesCallback ViewMoveLinesCallback
_cb Ptr ()
_ CInt
copy Int32
count Ptr ()
_ = do
    let copy' :: Bool
copy' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
copy
    ViewMoveLinesCallback
_cb  Bool
copy' Int32
count


-- | Connect a signal handler for the [moveLines](#signal:moveLines) 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' view #moveLines callback
-- @
-- 
-- 
onViewMoveLines :: (IsView a, MonadIO m) => a -> ViewMoveLinesCallback -> m SignalHandlerId
onViewMoveLines :: a -> ViewMoveLinesCallback -> m SignalHandlerId
onViewMoveLines a
obj ViewMoveLinesCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewMoveLinesCallback
cb' = ViewMoveLinesCallback -> C_ViewMoveLinesCallback
wrap_ViewMoveLinesCallback ViewMoveLinesCallback
cb
    FunPtr C_ViewMoveLinesCallback
cb'' <- C_ViewMoveLinesCallback -> IO (FunPtr C_ViewMoveLinesCallback)
mk_ViewMoveLinesCallback C_ViewMoveLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewMoveLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"move-lines" FunPtr C_ViewMoveLinesCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [moveLines](#signal:moveLines) 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' view #moveLines callback
-- @
-- 
-- 
afterViewMoveLines :: (IsView a, MonadIO m) => a -> ViewMoveLinesCallback -> m SignalHandlerId
afterViewMoveLines :: a -> ViewMoveLinesCallback -> m SignalHandlerId
afterViewMoveLines a
obj ViewMoveLinesCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewMoveLinesCallback
cb' = ViewMoveLinesCallback -> C_ViewMoveLinesCallback
wrap_ViewMoveLinesCallback ViewMoveLinesCallback
cb
    FunPtr C_ViewMoveLinesCallback
cb'' <- C_ViewMoveLinesCallback -> IO (FunPtr C_ViewMoveLinesCallback)
mk_ViewMoveLinesCallback C_ViewMoveLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewMoveLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"move-lines" FunPtr C_ViewMoveLinesCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewMoveLinesSignalInfo
instance SignalInfo ViewMoveLinesSignalInfo where
    type HaskellCallbackType ViewMoveLinesSignalInfo = ViewMoveLinesCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewMoveLinesCallback cb
        cb'' <- mk_ViewMoveLinesCallback cb'
        connectSignalFunPtr obj "move-lines" cb'' connectMode detail

#endif

-- signal View::move-to-matching-bracket
-- | Keybinding signal to move the cursor to the matching bracket.
-- 
-- /Since: 3.16/
type ViewMoveToMatchingBracketCallback =
    Bool
    -- ^ /@extendSelection@/: 'P.True' if the move should extend the selection
    -> IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewMoveToMatchingBracketCallback`@.
noViewMoveToMatchingBracketCallback :: Maybe ViewMoveToMatchingBracketCallback
noViewMoveToMatchingBracketCallback :: Maybe ViewMoveToMatchingBracketCallback
noViewMoveToMatchingBracketCallback = Maybe ViewMoveToMatchingBracketCallback
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewMoveToMatchingBracketCallback =
    Ptr () ->                               -- object
    CInt ->
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewMoveToMatchingBracketCallback`.
foreign import ccall "wrapper"
    mk_ViewMoveToMatchingBracketCallback :: C_ViewMoveToMatchingBracketCallback -> IO (FunPtr C_ViewMoveToMatchingBracketCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewMoveToMatchingBracket :: MonadIO m => ViewMoveToMatchingBracketCallback -> m (GClosure C_ViewMoveToMatchingBracketCallback)
genClosure_ViewMoveToMatchingBracket :: ViewMoveToMatchingBracketCallback
-> m (GClosure C_ViewMoveToMatchingBracketCallback)
genClosure_ViewMoveToMatchingBracket ViewMoveToMatchingBracketCallback
cb = IO (GClosure C_ViewMoveToMatchingBracketCallback)
-> m (GClosure C_ViewMoveToMatchingBracketCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewMoveToMatchingBracketCallback)
 -> m (GClosure C_ViewMoveToMatchingBracketCallback))
-> IO (GClosure C_ViewMoveToMatchingBracketCallback)
-> m (GClosure C_ViewMoveToMatchingBracketCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewMoveToMatchingBracketCallback
cb' = ViewMoveToMatchingBracketCallback
-> C_ViewMoveToMatchingBracketCallback
wrap_ViewMoveToMatchingBracketCallback ViewMoveToMatchingBracketCallback
cb
    C_ViewMoveToMatchingBracketCallback
-> IO (FunPtr C_ViewMoveToMatchingBracketCallback)
mk_ViewMoveToMatchingBracketCallback C_ViewMoveToMatchingBracketCallback
cb' IO (FunPtr C_ViewMoveToMatchingBracketCallback)
-> (FunPtr C_ViewMoveToMatchingBracketCallback
    -> IO (GClosure C_ViewMoveToMatchingBracketCallback))
-> IO (GClosure C_ViewMoveToMatchingBracketCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewMoveToMatchingBracketCallback
-> IO (GClosure C_ViewMoveToMatchingBracketCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewMoveToMatchingBracketCallback` into a `C_ViewMoveToMatchingBracketCallback`.
wrap_ViewMoveToMatchingBracketCallback ::
    ViewMoveToMatchingBracketCallback ->
    C_ViewMoveToMatchingBracketCallback
wrap_ViewMoveToMatchingBracketCallback :: ViewMoveToMatchingBracketCallback
-> C_ViewMoveToMatchingBracketCallback
wrap_ViewMoveToMatchingBracketCallback ViewMoveToMatchingBracketCallback
_cb Ptr ()
_ CInt
extendSelection Ptr ()
_ = do
    let extendSelection' :: Bool
extendSelection' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
extendSelection
    ViewMoveToMatchingBracketCallback
_cb  Bool
extendSelection'


-- | Connect a signal handler for the [moveToMatchingBracket](#signal:moveToMatchingBracket) 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' view #moveToMatchingBracket callback
-- @
-- 
-- 
onViewMoveToMatchingBracket :: (IsView a, MonadIO m) => a -> ViewMoveToMatchingBracketCallback -> m SignalHandlerId
onViewMoveToMatchingBracket :: a -> ViewMoveToMatchingBracketCallback -> m SignalHandlerId
onViewMoveToMatchingBracket a
obj ViewMoveToMatchingBracketCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewMoveToMatchingBracketCallback
cb' = ViewMoveToMatchingBracketCallback
-> C_ViewMoveToMatchingBracketCallback
wrap_ViewMoveToMatchingBracketCallback ViewMoveToMatchingBracketCallback
cb
    FunPtr C_ViewMoveToMatchingBracketCallback
cb'' <- C_ViewMoveToMatchingBracketCallback
-> IO (FunPtr C_ViewMoveToMatchingBracketCallback)
mk_ViewMoveToMatchingBracketCallback C_ViewMoveToMatchingBracketCallback
cb'
    a
-> Text
-> FunPtr C_ViewMoveToMatchingBracketCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"move-to-matching-bracket" FunPtr C_ViewMoveToMatchingBracketCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [moveToMatchingBracket](#signal:moveToMatchingBracket) 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' view #moveToMatchingBracket callback
-- @
-- 
-- 
afterViewMoveToMatchingBracket :: (IsView a, MonadIO m) => a -> ViewMoveToMatchingBracketCallback -> m SignalHandlerId
afterViewMoveToMatchingBracket :: a -> ViewMoveToMatchingBracketCallback -> m SignalHandlerId
afterViewMoveToMatchingBracket a
obj ViewMoveToMatchingBracketCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewMoveToMatchingBracketCallback
cb' = ViewMoveToMatchingBracketCallback
-> C_ViewMoveToMatchingBracketCallback
wrap_ViewMoveToMatchingBracketCallback ViewMoveToMatchingBracketCallback
cb
    FunPtr C_ViewMoveToMatchingBracketCallback
cb'' <- C_ViewMoveToMatchingBracketCallback
-> IO (FunPtr C_ViewMoveToMatchingBracketCallback)
mk_ViewMoveToMatchingBracketCallback C_ViewMoveToMatchingBracketCallback
cb'
    a
-> Text
-> FunPtr C_ViewMoveToMatchingBracketCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"move-to-matching-bracket" FunPtr C_ViewMoveToMatchingBracketCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewMoveToMatchingBracketSignalInfo
instance SignalInfo ViewMoveToMatchingBracketSignalInfo where
    type HaskellCallbackType ViewMoveToMatchingBracketSignalInfo = ViewMoveToMatchingBracketCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewMoveToMatchingBracketCallback cb
        cb'' <- mk_ViewMoveToMatchingBracketCallback cb'
        connectSignalFunPtr obj "move-to-matching-bracket" cb'' connectMode detail

#endif

-- signal View::move-words
-- | The [moveWords](#g:signal:moveWords) signal is a keybinding which gets emitted
-- when the user initiates moving a word. The default binding key
-- is Alt+Left\/Right Arrow and moves the current selection, or the current
-- word by one word.
-- 
-- /Since: 3.0/
type ViewMoveWordsCallback =
    Int32
    -- ^ /@count@/: the number of words to move over
    -> IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewMoveWordsCallback`@.
noViewMoveWordsCallback :: Maybe ViewMoveWordsCallback
noViewMoveWordsCallback :: Maybe ViewChangeNumberCallback
noViewMoveWordsCallback = Maybe ViewChangeNumberCallback
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewMoveWordsCallback =
    Ptr () ->                               -- object
    Int32 ->
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewMoveWordsCallback`.
foreign import ccall "wrapper"
    mk_ViewMoveWordsCallback :: C_ViewMoveWordsCallback -> IO (FunPtr C_ViewMoveWordsCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewMoveWords :: MonadIO m => ViewMoveWordsCallback -> m (GClosure C_ViewMoveWordsCallback)
genClosure_ViewMoveWords :: ViewChangeNumberCallback -> m (GClosure C_ViewChangeNumberCallback)
genClosure_ViewMoveWords ViewChangeNumberCallback
cb = IO (GClosure C_ViewChangeNumberCallback)
-> m (GClosure C_ViewChangeNumberCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewChangeNumberCallback)
 -> m (GClosure C_ViewChangeNumberCallback))
-> IO (GClosure C_ViewChangeNumberCallback)
-> m (GClosure C_ViewChangeNumberCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeNumberCallback
cb' = ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewMoveWordsCallback ViewChangeNumberCallback
cb
    C_ViewChangeNumberCallback
-> IO (FunPtr C_ViewChangeNumberCallback)
mk_ViewMoveWordsCallback C_ViewChangeNumberCallback
cb' IO (FunPtr C_ViewChangeNumberCallback)
-> (FunPtr C_ViewChangeNumberCallback
    -> IO (GClosure C_ViewChangeNumberCallback))
-> IO (GClosure C_ViewChangeNumberCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewChangeNumberCallback
-> IO (GClosure C_ViewChangeNumberCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewMoveWordsCallback` into a `C_ViewMoveWordsCallback`.
wrap_ViewMoveWordsCallback ::
    ViewMoveWordsCallback ->
    C_ViewMoveWordsCallback
wrap_ViewMoveWordsCallback :: ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewMoveWordsCallback ViewChangeNumberCallback
_cb Ptr ()
_ Int32
count Ptr ()
_ = do
    ViewChangeNumberCallback
_cb  Int32
count


-- | Connect a signal handler for the [moveWords](#signal:moveWords) 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' view #moveWords callback
-- @
-- 
-- 
onViewMoveWords :: (IsView a, MonadIO m) => a -> ViewMoveWordsCallback -> m SignalHandlerId
onViewMoveWords :: a -> ViewChangeNumberCallback -> m SignalHandlerId
onViewMoveWords a
obj ViewChangeNumberCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeNumberCallback
cb' = ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewMoveWordsCallback ViewChangeNumberCallback
cb
    FunPtr C_ViewChangeNumberCallback
cb'' <- C_ViewChangeNumberCallback
-> IO (FunPtr C_ViewChangeNumberCallback)
mk_ViewMoveWordsCallback C_ViewChangeNumberCallback
cb'
    a
-> Text
-> FunPtr C_ViewChangeNumberCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"move-words" FunPtr C_ViewChangeNumberCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [moveWords](#signal:moveWords) 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' view #moveWords callback
-- @
-- 
-- 
afterViewMoveWords :: (IsView a, MonadIO m) => a -> ViewMoveWordsCallback -> m SignalHandlerId
afterViewMoveWords :: a -> ViewChangeNumberCallback -> m SignalHandlerId
afterViewMoveWords a
obj ViewChangeNumberCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewChangeNumberCallback
cb' = ViewChangeNumberCallback -> C_ViewChangeNumberCallback
wrap_ViewMoveWordsCallback ViewChangeNumberCallback
cb
    FunPtr C_ViewChangeNumberCallback
cb'' <- C_ViewChangeNumberCallback
-> IO (FunPtr C_ViewChangeNumberCallback)
mk_ViewMoveWordsCallback C_ViewChangeNumberCallback
cb'
    a
-> Text
-> FunPtr C_ViewChangeNumberCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"move-words" FunPtr C_ViewChangeNumberCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewMoveWordsSignalInfo
instance SignalInfo ViewMoveWordsSignalInfo where
    type HaskellCallbackType ViewMoveWordsSignalInfo = ViewMoveWordsCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewMoveWordsCallback cb
        cb'' <- mk_ViewMoveWordsCallback cb'
        connectSignalFunPtr obj "move-words" cb'' connectMode detail

#endif

-- signal View::redo
-- | /No description available in the introspection data./
type ViewRedoCallback =
    IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewRedoCallback`@.
noViewRedoCallback :: Maybe ViewRedoCallback
noViewRedoCallback :: Maybe (IO ())
noViewRedoCallback = Maybe (IO ())
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewRedoCallback =
    Ptr () ->                               -- object
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewRedoCallback`.
foreign import ccall "wrapper"
    mk_ViewRedoCallback :: C_ViewRedoCallback -> IO (FunPtr C_ViewRedoCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewRedo :: MonadIO m => ViewRedoCallback -> m (GClosure C_ViewRedoCallback)
genClosure_ViewRedo :: IO () -> m (GClosure C_ViewJoinLinesCallback)
genClosure_ViewRedo IO ()
cb = IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewJoinLinesCallback)
 -> m (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewRedoCallback IO ()
cb
    C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewRedoCallback C_ViewJoinLinesCallback
cb' IO (FunPtr C_ViewJoinLinesCallback)
-> (FunPtr C_ViewJoinLinesCallback
    -> IO (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewJoinLinesCallback
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewRedoCallback` into a `C_ViewRedoCallback`.
wrap_ViewRedoCallback ::
    ViewRedoCallback ->
    C_ViewRedoCallback
wrap_ViewRedoCallback :: IO () -> C_ViewJoinLinesCallback
wrap_ViewRedoCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
    IO ()
_cb 


-- | Connect a signal handler for the [redo](#signal:redo) 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' view #redo callback
-- @
-- 
-- 
onViewRedo :: (IsView a, MonadIO m) => a -> ViewRedoCallback -> m SignalHandlerId
onViewRedo :: a -> IO () -> m SignalHandlerId
onViewRedo a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewRedoCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewRedoCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"redo" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [redo](#signal:redo) 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' view #redo callback
-- @
-- 
-- 
afterViewRedo :: (IsView a, MonadIO m) => a -> ViewRedoCallback -> m SignalHandlerId
afterViewRedo :: a -> IO () -> m SignalHandlerId
afterViewRedo a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewRedoCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewRedoCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"redo" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewRedoSignalInfo
instance SignalInfo ViewRedoSignalInfo where
    type HaskellCallbackType ViewRedoSignalInfo = ViewRedoCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewRedoCallback cb
        cb'' <- mk_ViewRedoCallback cb'
        connectSignalFunPtr obj "redo" cb'' connectMode detail

#endif

-- signal View::show-completion
-- | The [showCompletion](#g:signal:showCompletion) signal is a key binding signal which gets
-- emitted when the user requests a completion, by pressing
-- \<keycombo>\<keycap>Control\<\/keycap>\<keycap>space\<\/keycap>\<\/keycombo>.
-- 
-- This will create a t'GI.GtkSource.Objects.CompletionContext.CompletionContext' with the activation
-- type as 'GI.GtkSource.Flags.CompletionActivationUserRequested'.
-- 
-- Applications should not connect to it, but may emit it with
-- @/g_signal_emit_by_name()/@ if they need to activate the completion by
-- another means, for example with another key binding or a menu entry.
type ViewShowCompletionCallback =
    IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewShowCompletionCallback`@.
noViewShowCompletionCallback :: Maybe ViewShowCompletionCallback
noViewShowCompletionCallback :: Maybe (IO ())
noViewShowCompletionCallback = Maybe (IO ())
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewShowCompletionCallback =
    Ptr () ->                               -- object
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewShowCompletionCallback`.
foreign import ccall "wrapper"
    mk_ViewShowCompletionCallback :: C_ViewShowCompletionCallback -> IO (FunPtr C_ViewShowCompletionCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewShowCompletion :: MonadIO m => ViewShowCompletionCallback -> m (GClosure C_ViewShowCompletionCallback)
genClosure_ViewShowCompletion :: IO () -> m (GClosure C_ViewJoinLinesCallback)
genClosure_ViewShowCompletion IO ()
cb = IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewJoinLinesCallback)
 -> m (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewShowCompletionCallback IO ()
cb
    C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewShowCompletionCallback C_ViewJoinLinesCallback
cb' IO (FunPtr C_ViewJoinLinesCallback)
-> (FunPtr C_ViewJoinLinesCallback
    -> IO (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewJoinLinesCallback
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewShowCompletionCallback` into a `C_ViewShowCompletionCallback`.
wrap_ViewShowCompletionCallback ::
    ViewShowCompletionCallback ->
    C_ViewShowCompletionCallback
wrap_ViewShowCompletionCallback :: IO () -> C_ViewJoinLinesCallback
wrap_ViewShowCompletionCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
    IO ()
_cb 


-- | Connect a signal handler for the [showCompletion](#signal:showCompletion) 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' view #showCompletion callback
-- @
-- 
-- 
onViewShowCompletion :: (IsView a, MonadIO m) => a -> ViewShowCompletionCallback -> m SignalHandlerId
onViewShowCompletion :: a -> IO () -> m SignalHandlerId
onViewShowCompletion a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewShowCompletionCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewShowCompletionCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"show-completion" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [showCompletion](#signal:showCompletion) 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' view #showCompletion callback
-- @
-- 
-- 
afterViewShowCompletion :: (IsView a, MonadIO m) => a -> ViewShowCompletionCallback -> m SignalHandlerId
afterViewShowCompletion :: a -> IO () -> m SignalHandlerId
afterViewShowCompletion a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewShowCompletionCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewShowCompletionCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"show-completion" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewShowCompletionSignalInfo
instance SignalInfo ViewShowCompletionSignalInfo where
    type HaskellCallbackType ViewShowCompletionSignalInfo = ViewShowCompletionCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewShowCompletionCallback cb
        cb'' <- mk_ViewShowCompletionCallback cb'
        connectSignalFunPtr obj "show-completion" cb'' connectMode detail

#endif

-- signal View::smart-home-end
-- | Emitted when a the cursor was moved according to the smart home
-- end setting. The signal is emitted after the cursor is moved, but
-- during the GtkTextView[moveCursor](#g:signal:moveCursor) action. This can be used to find
-- out whether the cursor was moved by a normal home\/end or by a smart
-- home\/end.
-- 
-- /Since: 3.0/
type ViewSmartHomeEndCallback =
    Gtk.TextIter.TextIter
    -- ^ /@iter@/: a t'GI.Gtk.Structs.TextIter.TextIter'
    -> Int32
    -- ^ /@count@/: the count
    -> IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewSmartHomeEndCallback`@.
noViewSmartHomeEndCallback :: Maybe ViewSmartHomeEndCallback
noViewSmartHomeEndCallback :: Maybe ViewSmartHomeEndCallback
noViewSmartHomeEndCallback = Maybe ViewSmartHomeEndCallback
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewSmartHomeEndCallback =
    Ptr () ->                               -- object
    Ptr Gtk.TextIter.TextIter ->
    Int32 ->
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewSmartHomeEndCallback`.
foreign import ccall "wrapper"
    mk_ViewSmartHomeEndCallback :: C_ViewSmartHomeEndCallback -> IO (FunPtr C_ViewSmartHomeEndCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewSmartHomeEnd :: MonadIO m => ViewSmartHomeEndCallback -> m (GClosure C_ViewSmartHomeEndCallback)
genClosure_ViewSmartHomeEnd :: ViewSmartHomeEndCallback -> m (GClosure C_ViewSmartHomeEndCallback)
genClosure_ViewSmartHomeEnd ViewSmartHomeEndCallback
cb = IO (GClosure C_ViewSmartHomeEndCallback)
-> m (GClosure C_ViewSmartHomeEndCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewSmartHomeEndCallback)
 -> m (GClosure C_ViewSmartHomeEndCallback))
-> IO (GClosure C_ViewSmartHomeEndCallback)
-> m (GClosure C_ViewSmartHomeEndCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewSmartHomeEndCallback
cb' = ViewSmartHomeEndCallback -> C_ViewSmartHomeEndCallback
wrap_ViewSmartHomeEndCallback ViewSmartHomeEndCallback
cb
    C_ViewSmartHomeEndCallback
-> IO (FunPtr C_ViewSmartHomeEndCallback)
mk_ViewSmartHomeEndCallback C_ViewSmartHomeEndCallback
cb' IO (FunPtr C_ViewSmartHomeEndCallback)
-> (FunPtr C_ViewSmartHomeEndCallback
    -> IO (GClosure C_ViewSmartHomeEndCallback))
-> IO (GClosure C_ViewSmartHomeEndCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewSmartHomeEndCallback
-> IO (GClosure C_ViewSmartHomeEndCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewSmartHomeEndCallback` into a `C_ViewSmartHomeEndCallback`.
wrap_ViewSmartHomeEndCallback ::
    ViewSmartHomeEndCallback ->
    C_ViewSmartHomeEndCallback
wrap_ViewSmartHomeEndCallback :: ViewSmartHomeEndCallback -> C_ViewSmartHomeEndCallback
wrap_ViewSmartHomeEndCallback ViewSmartHomeEndCallback
_cb Ptr ()
_ Ptr TextIter
iter Int32
count Ptr ()
_ = do
    (ManagedPtr TextIter -> TextIter)
-> Ptr TextIter -> (TextIter -> IO ()) -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
(ManagedPtr a -> a) -> Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient ManagedPtr TextIter -> TextIter
Gtk.TextIter.TextIter Ptr TextIter
iter ((TextIter -> IO ()) -> IO ()) -> (TextIter -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \TextIter
iter' -> do
        ViewSmartHomeEndCallback
_cb  TextIter
iter' Int32
count


-- | Connect a signal handler for the [smartHomeEnd](#signal:smartHomeEnd) 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' view #smartHomeEnd callback
-- @
-- 
-- 
onViewSmartHomeEnd :: (IsView a, MonadIO m) => a -> ViewSmartHomeEndCallback -> m SignalHandlerId
onViewSmartHomeEnd :: a -> ViewSmartHomeEndCallback -> m SignalHandlerId
onViewSmartHomeEnd a
obj ViewSmartHomeEndCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewSmartHomeEndCallback
cb' = ViewSmartHomeEndCallback -> C_ViewSmartHomeEndCallback
wrap_ViewSmartHomeEndCallback ViewSmartHomeEndCallback
cb
    FunPtr C_ViewSmartHomeEndCallback
cb'' <- C_ViewSmartHomeEndCallback
-> IO (FunPtr C_ViewSmartHomeEndCallback)
mk_ViewSmartHomeEndCallback C_ViewSmartHomeEndCallback
cb'
    a
-> Text
-> FunPtr C_ViewSmartHomeEndCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"smart-home-end" FunPtr C_ViewSmartHomeEndCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [smartHomeEnd](#signal:smartHomeEnd) 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' view #smartHomeEnd callback
-- @
-- 
-- 
afterViewSmartHomeEnd :: (IsView a, MonadIO m) => a -> ViewSmartHomeEndCallback -> m SignalHandlerId
afterViewSmartHomeEnd :: a -> ViewSmartHomeEndCallback -> m SignalHandlerId
afterViewSmartHomeEnd a
obj ViewSmartHomeEndCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewSmartHomeEndCallback
cb' = ViewSmartHomeEndCallback -> C_ViewSmartHomeEndCallback
wrap_ViewSmartHomeEndCallback ViewSmartHomeEndCallback
cb
    FunPtr C_ViewSmartHomeEndCallback
cb'' <- C_ViewSmartHomeEndCallback
-> IO (FunPtr C_ViewSmartHomeEndCallback)
mk_ViewSmartHomeEndCallback C_ViewSmartHomeEndCallback
cb'
    a
-> Text
-> FunPtr C_ViewSmartHomeEndCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"smart-home-end" FunPtr C_ViewSmartHomeEndCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewSmartHomeEndSignalInfo
instance SignalInfo ViewSmartHomeEndSignalInfo where
    type HaskellCallbackType ViewSmartHomeEndSignalInfo = ViewSmartHomeEndCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewSmartHomeEndCallback cb
        cb'' <- mk_ViewSmartHomeEndCallback cb'
        connectSignalFunPtr obj "smart-home-end" cb'' connectMode detail

#endif

-- signal View::undo
-- | /No description available in the introspection data./
type ViewUndoCallback =
    IO ()

-- | A convenience synonym for @`Nothing` :: `Maybe` `ViewUndoCallback`@.
noViewUndoCallback :: Maybe ViewUndoCallback
noViewUndoCallback :: Maybe (IO ())
noViewUndoCallback = Maybe (IO ())
forall a. Maybe a
Nothing

-- | Type for the callback on the (unwrapped) C side.
type C_ViewUndoCallback =
    Ptr () ->                               -- object
    Ptr () ->                               -- user_data
    IO ()

-- | Generate a function pointer callable from C code, from a `C_ViewUndoCallback`.
foreign import ccall "wrapper"
    mk_ViewUndoCallback :: C_ViewUndoCallback -> IO (FunPtr C_ViewUndoCallback)

-- | Wrap the callback into a `GClosure`.
genClosure_ViewUndo :: MonadIO m => ViewUndoCallback -> m (GClosure C_ViewUndoCallback)
genClosure_ViewUndo :: IO () -> m (GClosure C_ViewJoinLinesCallback)
genClosure_ViewUndo IO ()
cb = IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ViewJoinLinesCallback)
 -> m (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
-> m (GClosure C_ViewJoinLinesCallback)
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewUndoCallback IO ()
cb
    C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewUndoCallback C_ViewJoinLinesCallback
cb' IO (FunPtr C_ViewJoinLinesCallback)
-> (FunPtr C_ViewJoinLinesCallback
    -> IO (GClosure C_ViewJoinLinesCallback))
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ViewJoinLinesCallback
-> IO (GClosure C_ViewJoinLinesCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure


-- | Wrap a `ViewUndoCallback` into a `C_ViewUndoCallback`.
wrap_ViewUndoCallback ::
    ViewUndoCallback ->
    C_ViewUndoCallback
wrap_ViewUndoCallback :: IO () -> C_ViewJoinLinesCallback
wrap_ViewUndoCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
    IO ()
_cb 


-- | Connect a signal handler for the [undo](#signal:undo) 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' view #undo callback
-- @
-- 
-- 
onViewUndo :: (IsView a, MonadIO m) => a -> ViewUndoCallback -> m SignalHandlerId
onViewUndo :: a -> IO () -> m SignalHandlerId
onViewUndo a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewUndoCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewUndoCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"undo" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing

-- | Connect a signal handler for the [undo](#signal:undo) 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' view #undo callback
-- @
-- 
-- 
afterViewUndo :: (IsView a, MonadIO m) => a -> ViewUndoCallback -> m SignalHandlerId
afterViewUndo :: a -> IO () -> m SignalHandlerId
afterViewUndo a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
    let cb' :: C_ViewJoinLinesCallback
cb' = IO () -> C_ViewJoinLinesCallback
wrap_ViewUndoCallback IO ()
cb
    FunPtr C_ViewJoinLinesCallback
cb'' <- C_ViewJoinLinesCallback -> IO (FunPtr C_ViewJoinLinesCallback)
mk_ViewUndoCallback C_ViewJoinLinesCallback
cb'
    a
-> Text
-> FunPtr C_ViewJoinLinesCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"undo" FunPtr C_ViewJoinLinesCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing


#if defined(ENABLE_OVERLOADING)
data ViewUndoSignalInfo
instance SignalInfo ViewUndoSignalInfo where
    type HaskellCallbackType ViewUndoSignalInfo = ViewUndoCallback
    connectSignal obj cb connectMode detail = do
        let cb' = wrap_ViewUndoCallback cb
        cb'' <- mk_ViewUndoCallback cb'
        connectSignalFunPtr obj "undo" cb'' connectMode detail

#endif

-- VVV Prop "auto-indent"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@auto-indent@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #autoIndent
-- @
getViewAutoIndent :: (MonadIO m, IsView o) => o -> m Bool
getViewAutoIndent :: o -> m Bool
getViewAutoIndent o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"auto-indent"

-- | Set the value of the “@auto-indent@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #autoIndent 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewAutoIndent :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewAutoIndent :: o -> Bool -> m ()
setViewAutoIndent o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"auto-indent" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@auto-indent@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewAutoIndent :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewAutoIndent :: Bool -> m (GValueConstruct o)
constructViewAutoIndent Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"auto-indent" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewAutoIndentPropertyInfo
instance AttrInfo ViewAutoIndentPropertyInfo where
    type AttrAllowedOps ViewAutoIndentPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewAutoIndentPropertyInfo = IsView
    type AttrSetTypeConstraint ViewAutoIndentPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewAutoIndentPropertyInfo = (~) Bool
    type AttrTransferType ViewAutoIndentPropertyInfo = Bool
    type AttrGetType ViewAutoIndentPropertyInfo = Bool
    type AttrLabel ViewAutoIndentPropertyInfo = "auto-indent"
    type AttrOrigin ViewAutoIndentPropertyInfo = View
    attrGet = getViewAutoIndent
    attrSet = setViewAutoIndent
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewAutoIndent
    attrClear = undefined
#endif

-- VVV Prop "background-pattern"
   -- Type: TInterface (Name {namespace = "GtkSource", name = "BackgroundPatternType"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@background-pattern@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #backgroundPattern
-- @
getViewBackgroundPattern :: (MonadIO m, IsView o) => o -> m GtkSource.Enums.BackgroundPatternType
getViewBackgroundPattern :: o -> m BackgroundPatternType
getViewBackgroundPattern o
obj = IO BackgroundPatternType -> m BackgroundPatternType
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO BackgroundPatternType -> m BackgroundPatternType)
-> IO BackgroundPatternType -> m BackgroundPatternType
forall a b. (a -> b) -> a -> b
$ o -> String -> IO BackgroundPatternType
forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"background-pattern"

-- | Set the value of the “@background-pattern@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #backgroundPattern 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewBackgroundPattern :: (MonadIO m, IsView o) => o -> GtkSource.Enums.BackgroundPatternType -> m ()
setViewBackgroundPattern :: o -> BackgroundPatternType -> m ()
setViewBackgroundPattern o
obj BackgroundPatternType
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> BackgroundPatternType -> IO ()
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"background-pattern" BackgroundPatternType
val

-- | Construct a `GValueConstruct` with valid value for the “@background-pattern@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewBackgroundPattern :: (IsView o, MIO.MonadIO m) => GtkSource.Enums.BackgroundPatternType -> m (GValueConstruct o)
constructViewBackgroundPattern :: BackgroundPatternType -> m (GValueConstruct o)
constructViewBackgroundPattern BackgroundPatternType
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> BackgroundPatternType -> IO (GValueConstruct o)
forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"background-pattern" BackgroundPatternType
val

#if defined(ENABLE_OVERLOADING)
data ViewBackgroundPatternPropertyInfo
instance AttrInfo ViewBackgroundPatternPropertyInfo where
    type AttrAllowedOps ViewBackgroundPatternPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewBackgroundPatternPropertyInfo = IsView
    type AttrSetTypeConstraint ViewBackgroundPatternPropertyInfo = (~) GtkSource.Enums.BackgroundPatternType
    type AttrTransferTypeConstraint ViewBackgroundPatternPropertyInfo = (~) GtkSource.Enums.BackgroundPatternType
    type AttrTransferType ViewBackgroundPatternPropertyInfo = GtkSource.Enums.BackgroundPatternType
    type AttrGetType ViewBackgroundPatternPropertyInfo = GtkSource.Enums.BackgroundPatternType
    type AttrLabel ViewBackgroundPatternPropertyInfo = "background-pattern"
    type AttrOrigin ViewBackgroundPatternPropertyInfo = View
    attrGet = getViewBackgroundPattern
    attrSet = setViewBackgroundPattern
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewBackgroundPattern
    attrClear = undefined
#endif

-- VVV Prop "completion"
   -- Type: TInterface (Name {namespace = "GtkSource", name = "Completion"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@completion@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #completion
-- @
getViewCompletion :: (MonadIO m, IsView o) => o -> m GtkSource.Completion.Completion
getViewCompletion :: o -> m Completion
getViewCompletion o
obj = IO Completion -> m Completion
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Completion -> m Completion) -> IO Completion -> m Completion
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe Completion) -> IO Completion
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getViewCompletion" (IO (Maybe Completion) -> IO Completion)
-> IO (Maybe Completion) -> IO Completion
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr Completion -> Completion)
-> IO (Maybe Completion)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"completion" ManagedPtr Completion -> Completion
GtkSource.Completion.Completion

#if defined(ENABLE_OVERLOADING)
data ViewCompletionPropertyInfo
instance AttrInfo ViewCompletionPropertyInfo where
    type AttrAllowedOps ViewCompletionPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint ViewCompletionPropertyInfo = IsView
    type AttrSetTypeConstraint ViewCompletionPropertyInfo = (~) ()
    type AttrTransferTypeConstraint ViewCompletionPropertyInfo = (~) ()
    type AttrTransferType ViewCompletionPropertyInfo = ()
    type AttrGetType ViewCompletionPropertyInfo = GtkSource.Completion.Completion
    type AttrLabel ViewCompletionPropertyInfo = "completion"
    type AttrOrigin ViewCompletionPropertyInfo = View
    attrGet = getViewCompletion
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "draw-spaces"
   -- Type: TInterface (Name {namespace = "GtkSource", name = "DrawSpacesFlags"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@draw-spaces@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #drawSpaces
-- @
getViewDrawSpaces :: (MonadIO m, IsView o) => o -> m [GtkSource.Flags.DrawSpacesFlags]
getViewDrawSpaces :: o -> m [DrawSpacesFlags]
getViewDrawSpaces o
obj = IO [DrawSpacesFlags] -> m [DrawSpacesFlags]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [DrawSpacesFlags] -> m [DrawSpacesFlags])
-> IO [DrawSpacesFlags] -> m [DrawSpacesFlags]
forall a b. (a -> b) -> a -> b
$ o -> String -> IO [DrawSpacesFlags]
forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"draw-spaces"

-- | Set the value of the “@draw-spaces@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #drawSpaces 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewDrawSpaces :: (MonadIO m, IsView o) => o -> [GtkSource.Flags.DrawSpacesFlags] -> m ()
setViewDrawSpaces :: o -> [DrawSpacesFlags] -> m ()
setViewDrawSpaces o
obj [DrawSpacesFlags]
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> [DrawSpacesFlags] -> IO ()
forall a b.
(IsGFlag b, BoxedFlags b, GObject a) =>
a -> String -> [b] -> IO ()
B.Properties.setObjectPropertyFlags o
obj String
"draw-spaces" [DrawSpacesFlags]
val

-- | Construct a `GValueConstruct` with valid value for the “@draw-spaces@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewDrawSpaces :: (IsView o, MIO.MonadIO m) => [GtkSource.Flags.DrawSpacesFlags] -> m (GValueConstruct o)
constructViewDrawSpaces :: [DrawSpacesFlags] -> m (GValueConstruct o)
constructViewDrawSpaces [DrawSpacesFlags]
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> [DrawSpacesFlags] -> IO (GValueConstruct o)
forall a o.
(IsGFlag a, BoxedFlags a) =>
String -> [a] -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyFlags String
"draw-spaces" [DrawSpacesFlags]
val

#if defined(ENABLE_OVERLOADING)
data ViewDrawSpacesPropertyInfo
instance AttrInfo ViewDrawSpacesPropertyInfo where
    type AttrAllowedOps ViewDrawSpacesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewDrawSpacesPropertyInfo = IsView
    type AttrSetTypeConstraint ViewDrawSpacesPropertyInfo = (~) [GtkSource.Flags.DrawSpacesFlags]
    type AttrTransferTypeConstraint ViewDrawSpacesPropertyInfo = (~) [GtkSource.Flags.DrawSpacesFlags]
    type AttrTransferType ViewDrawSpacesPropertyInfo = [GtkSource.Flags.DrawSpacesFlags]
    type AttrGetType ViewDrawSpacesPropertyInfo = [GtkSource.Flags.DrawSpacesFlags]
    type AttrLabel ViewDrawSpacesPropertyInfo = "draw-spaces"
    type AttrOrigin ViewDrawSpacesPropertyInfo = View
    attrGet = getViewDrawSpaces
    attrSet = setViewDrawSpaces
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewDrawSpaces
    attrClear = undefined
#endif

-- VVV Prop "highlight-current-line"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@highlight-current-line@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #highlightCurrentLine
-- @
getViewHighlightCurrentLine :: (MonadIO m, IsView o) => o -> m Bool
getViewHighlightCurrentLine :: o -> m Bool
getViewHighlightCurrentLine o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"highlight-current-line"

-- | Set the value of the “@highlight-current-line@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #highlightCurrentLine 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewHighlightCurrentLine :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewHighlightCurrentLine :: o -> Bool -> m ()
setViewHighlightCurrentLine o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"highlight-current-line" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@highlight-current-line@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewHighlightCurrentLine :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewHighlightCurrentLine :: Bool -> m (GValueConstruct o)
constructViewHighlightCurrentLine Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"highlight-current-line" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewHighlightCurrentLinePropertyInfo
instance AttrInfo ViewHighlightCurrentLinePropertyInfo where
    type AttrAllowedOps ViewHighlightCurrentLinePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewHighlightCurrentLinePropertyInfo = IsView
    type AttrSetTypeConstraint ViewHighlightCurrentLinePropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewHighlightCurrentLinePropertyInfo = (~) Bool
    type AttrTransferType ViewHighlightCurrentLinePropertyInfo = Bool
    type AttrGetType ViewHighlightCurrentLinePropertyInfo = Bool
    type AttrLabel ViewHighlightCurrentLinePropertyInfo = "highlight-current-line"
    type AttrOrigin ViewHighlightCurrentLinePropertyInfo = View
    attrGet = getViewHighlightCurrentLine
    attrSet = setViewHighlightCurrentLine
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewHighlightCurrentLine
    attrClear = undefined
#endif

-- VVV Prop "indent-on-tab"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@indent-on-tab@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #indentOnTab
-- @
getViewIndentOnTab :: (MonadIO m, IsView o) => o -> m Bool
getViewIndentOnTab :: o -> m Bool
getViewIndentOnTab o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"indent-on-tab"

-- | Set the value of the “@indent-on-tab@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #indentOnTab 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewIndentOnTab :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewIndentOnTab :: o -> Bool -> m ()
setViewIndentOnTab o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"indent-on-tab" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@indent-on-tab@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewIndentOnTab :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewIndentOnTab :: Bool -> m (GValueConstruct o)
constructViewIndentOnTab Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"indent-on-tab" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewIndentOnTabPropertyInfo
instance AttrInfo ViewIndentOnTabPropertyInfo where
    type AttrAllowedOps ViewIndentOnTabPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewIndentOnTabPropertyInfo = IsView
    type AttrSetTypeConstraint ViewIndentOnTabPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewIndentOnTabPropertyInfo = (~) Bool
    type AttrTransferType ViewIndentOnTabPropertyInfo = Bool
    type AttrGetType ViewIndentOnTabPropertyInfo = Bool
    type AttrLabel ViewIndentOnTabPropertyInfo = "indent-on-tab"
    type AttrOrigin ViewIndentOnTabPropertyInfo = View
    attrGet = getViewIndentOnTab
    attrSet = setViewIndentOnTab
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewIndentOnTab
    attrClear = undefined
#endif

-- VVV Prop "indent-width"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@indent-width@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #indentWidth
-- @
getViewIndentWidth :: (MonadIO m, IsView o) => o -> m Int32
getViewIndentWidth :: o -> m Int32
getViewIndentWidth o
obj = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Int32
forall a. GObject a => a -> String -> IO Int32
B.Properties.getObjectPropertyInt32 o
obj String
"indent-width"

-- | Set the value of the “@indent-width@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #indentWidth 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewIndentWidth :: (MonadIO m, IsView o) => o -> Int32 -> m ()
setViewIndentWidth :: o -> Int32 -> m ()
setViewIndentWidth o
obj Int32
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewChangeNumberCallback
forall a. GObject a => a -> String -> ViewChangeNumberCallback
B.Properties.setObjectPropertyInt32 o
obj String
"indent-width" Int32
val

-- | Construct a `GValueConstruct` with valid value for the “@indent-width@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewIndentWidth :: (IsView o, MIO.MonadIO m) => Int32 -> m (GValueConstruct o)
constructViewIndentWidth :: Int32 -> m (GValueConstruct o)
constructViewIndentWidth Int32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Int32 -> IO (GValueConstruct o)
forall o. String -> Int32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyInt32 String
"indent-width" Int32
val

#if defined(ENABLE_OVERLOADING)
data ViewIndentWidthPropertyInfo
instance AttrInfo ViewIndentWidthPropertyInfo where
    type AttrAllowedOps ViewIndentWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewIndentWidthPropertyInfo = IsView
    type AttrSetTypeConstraint ViewIndentWidthPropertyInfo = (~) Int32
    type AttrTransferTypeConstraint ViewIndentWidthPropertyInfo = (~) Int32
    type AttrTransferType ViewIndentWidthPropertyInfo = Int32
    type AttrGetType ViewIndentWidthPropertyInfo = Int32
    type AttrLabel ViewIndentWidthPropertyInfo = "indent-width"
    type AttrOrigin ViewIndentWidthPropertyInfo = View
    attrGet = getViewIndentWidth
    attrSet = setViewIndentWidth
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewIndentWidth
    attrClear = undefined
#endif

-- VVV Prop "insert-spaces-instead-of-tabs"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@insert-spaces-instead-of-tabs@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #insertSpacesInsteadOfTabs
-- @
getViewInsertSpacesInsteadOfTabs :: (MonadIO m, IsView o) => o -> m Bool
getViewInsertSpacesInsteadOfTabs :: o -> m Bool
getViewInsertSpacesInsteadOfTabs o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"insert-spaces-instead-of-tabs"

-- | Set the value of the “@insert-spaces-instead-of-tabs@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #insertSpacesInsteadOfTabs 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewInsertSpacesInsteadOfTabs :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewInsertSpacesInsteadOfTabs :: o -> Bool -> m ()
setViewInsertSpacesInsteadOfTabs o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"insert-spaces-instead-of-tabs" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@insert-spaces-instead-of-tabs@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewInsertSpacesInsteadOfTabs :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewInsertSpacesInsteadOfTabs :: Bool -> m (GValueConstruct o)
constructViewInsertSpacesInsteadOfTabs Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"insert-spaces-instead-of-tabs" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewInsertSpacesInsteadOfTabsPropertyInfo
instance AttrInfo ViewInsertSpacesInsteadOfTabsPropertyInfo where
    type AttrAllowedOps ViewInsertSpacesInsteadOfTabsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewInsertSpacesInsteadOfTabsPropertyInfo = IsView
    type AttrSetTypeConstraint ViewInsertSpacesInsteadOfTabsPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewInsertSpacesInsteadOfTabsPropertyInfo = (~) Bool
    type AttrTransferType ViewInsertSpacesInsteadOfTabsPropertyInfo = Bool
    type AttrGetType ViewInsertSpacesInsteadOfTabsPropertyInfo = Bool
    type AttrLabel ViewInsertSpacesInsteadOfTabsPropertyInfo = "insert-spaces-instead-of-tabs"
    type AttrOrigin ViewInsertSpacesInsteadOfTabsPropertyInfo = View
    attrGet = getViewInsertSpacesInsteadOfTabs
    attrSet = setViewInsertSpacesInsteadOfTabs
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewInsertSpacesInsteadOfTabs
    attrClear = undefined
#endif

-- VVV Prop "right-margin-position"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@right-margin-position@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #rightMarginPosition
-- @
getViewRightMarginPosition :: (MonadIO m, IsView o) => o -> m Word32
getViewRightMarginPosition :: o -> m Word32
getViewRightMarginPosition o
obj = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"right-margin-position"

-- | Set the value of the “@right-margin-position@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #rightMarginPosition 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewRightMarginPosition :: (MonadIO m, IsView o) => o -> Word32 -> m ()
setViewRightMarginPosition :: o -> Word32 -> m ()
setViewRightMarginPosition o
obj Word32
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"right-margin-position" Word32
val

-- | Construct a `GValueConstruct` with valid value for the “@right-margin-position@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewRightMarginPosition :: (IsView o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructViewRightMarginPosition :: Word32 -> m (GValueConstruct o)
constructViewRightMarginPosition Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"right-margin-position" Word32
val

#if defined(ENABLE_OVERLOADING)
data ViewRightMarginPositionPropertyInfo
instance AttrInfo ViewRightMarginPositionPropertyInfo where
    type AttrAllowedOps ViewRightMarginPositionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewRightMarginPositionPropertyInfo = IsView
    type AttrSetTypeConstraint ViewRightMarginPositionPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint ViewRightMarginPositionPropertyInfo = (~) Word32
    type AttrTransferType ViewRightMarginPositionPropertyInfo = Word32
    type AttrGetType ViewRightMarginPositionPropertyInfo = Word32
    type AttrLabel ViewRightMarginPositionPropertyInfo = "right-margin-position"
    type AttrOrigin ViewRightMarginPositionPropertyInfo = View
    attrGet = getViewRightMarginPosition
    attrSet = setViewRightMarginPosition
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewRightMarginPosition
    attrClear = undefined
#endif

-- VVV Prop "show-line-marks"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@show-line-marks@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #showLineMarks
-- @
getViewShowLineMarks :: (MonadIO m, IsView o) => o -> m Bool
getViewShowLineMarks :: o -> m Bool
getViewShowLineMarks o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"show-line-marks"

-- | Set the value of the “@show-line-marks@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #showLineMarks 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewShowLineMarks :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewShowLineMarks :: o -> Bool -> m ()
setViewShowLineMarks o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"show-line-marks" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@show-line-marks@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewShowLineMarks :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewShowLineMarks :: Bool -> m (GValueConstruct o)
constructViewShowLineMarks Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"show-line-marks" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewShowLineMarksPropertyInfo
instance AttrInfo ViewShowLineMarksPropertyInfo where
    type AttrAllowedOps ViewShowLineMarksPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewShowLineMarksPropertyInfo = IsView
    type AttrSetTypeConstraint ViewShowLineMarksPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewShowLineMarksPropertyInfo = (~) Bool
    type AttrTransferType ViewShowLineMarksPropertyInfo = Bool
    type AttrGetType ViewShowLineMarksPropertyInfo = Bool
    type AttrLabel ViewShowLineMarksPropertyInfo = "show-line-marks"
    type AttrOrigin ViewShowLineMarksPropertyInfo = View
    attrGet = getViewShowLineMarks
    attrSet = setViewShowLineMarks
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewShowLineMarks
    attrClear = undefined
#endif

-- VVV Prop "show-line-numbers"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@show-line-numbers@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #showLineNumbers
-- @
getViewShowLineNumbers :: (MonadIO m, IsView o) => o -> m Bool
getViewShowLineNumbers :: o -> m Bool
getViewShowLineNumbers o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"show-line-numbers"

-- | Set the value of the “@show-line-numbers@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #showLineNumbers 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewShowLineNumbers :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewShowLineNumbers :: o -> Bool -> m ()
setViewShowLineNumbers o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"show-line-numbers" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@show-line-numbers@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewShowLineNumbers :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewShowLineNumbers :: Bool -> m (GValueConstruct o)
constructViewShowLineNumbers Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"show-line-numbers" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewShowLineNumbersPropertyInfo
instance AttrInfo ViewShowLineNumbersPropertyInfo where
    type AttrAllowedOps ViewShowLineNumbersPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewShowLineNumbersPropertyInfo = IsView
    type AttrSetTypeConstraint ViewShowLineNumbersPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewShowLineNumbersPropertyInfo = (~) Bool
    type AttrTransferType ViewShowLineNumbersPropertyInfo = Bool
    type AttrGetType ViewShowLineNumbersPropertyInfo = Bool
    type AttrLabel ViewShowLineNumbersPropertyInfo = "show-line-numbers"
    type AttrOrigin ViewShowLineNumbersPropertyInfo = View
    attrGet = getViewShowLineNumbers
    attrSet = setViewShowLineNumbers
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewShowLineNumbers
    attrClear = undefined
#endif

-- VVV Prop "show-right-margin"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@show-right-margin@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #showRightMargin
-- @
getViewShowRightMargin :: (MonadIO m, IsView o) => o -> m Bool
getViewShowRightMargin :: o -> m Bool
getViewShowRightMargin o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"show-right-margin"

-- | Set the value of the “@show-right-margin@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #showRightMargin 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewShowRightMargin :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewShowRightMargin :: o -> Bool -> m ()
setViewShowRightMargin o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"show-right-margin" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@show-right-margin@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewShowRightMargin :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewShowRightMargin :: Bool -> m (GValueConstruct o)
constructViewShowRightMargin Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"show-right-margin" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewShowRightMarginPropertyInfo
instance AttrInfo ViewShowRightMarginPropertyInfo where
    type AttrAllowedOps ViewShowRightMarginPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewShowRightMarginPropertyInfo = IsView
    type AttrSetTypeConstraint ViewShowRightMarginPropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewShowRightMarginPropertyInfo = (~) Bool
    type AttrTransferType ViewShowRightMarginPropertyInfo = Bool
    type AttrGetType ViewShowRightMarginPropertyInfo = Bool
    type AttrLabel ViewShowRightMarginPropertyInfo = "show-right-margin"
    type AttrOrigin ViewShowRightMarginPropertyInfo = View
    attrGet = getViewShowRightMargin
    attrSet = setViewShowRightMargin
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewShowRightMargin
    attrClear = undefined
#endif

-- VVV Prop "smart-backspace"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@smart-backspace@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #smartBackspace
-- @
getViewSmartBackspace :: (MonadIO m, IsView o) => o -> m Bool
getViewSmartBackspace :: o -> m Bool
getViewSmartBackspace o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"smart-backspace"

-- | Set the value of the “@smart-backspace@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #smartBackspace 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewSmartBackspace :: (MonadIO m, IsView o) => o -> Bool -> m ()
setViewSmartBackspace :: o -> Bool -> m ()
setViewSmartBackspace o
obj Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> ViewMoveToMatchingBracketCallback
forall a.
GObject a =>
a -> String -> ViewMoveToMatchingBracketCallback
B.Properties.setObjectPropertyBool o
obj String
"smart-backspace" Bool
val

-- | Construct a `GValueConstruct` with valid value for the “@smart-backspace@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewSmartBackspace :: (IsView o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructViewSmartBackspace :: Bool -> m (GValueConstruct o)
constructViewSmartBackspace Bool
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"smart-backspace" Bool
val

#if defined(ENABLE_OVERLOADING)
data ViewSmartBackspacePropertyInfo
instance AttrInfo ViewSmartBackspacePropertyInfo where
    type AttrAllowedOps ViewSmartBackspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewSmartBackspacePropertyInfo = IsView
    type AttrSetTypeConstraint ViewSmartBackspacePropertyInfo = (~) Bool
    type AttrTransferTypeConstraint ViewSmartBackspacePropertyInfo = (~) Bool
    type AttrTransferType ViewSmartBackspacePropertyInfo = Bool
    type AttrGetType ViewSmartBackspacePropertyInfo = Bool
    type AttrLabel ViewSmartBackspacePropertyInfo = "smart-backspace"
    type AttrOrigin ViewSmartBackspacePropertyInfo = View
    attrGet = getViewSmartBackspace
    attrSet = setViewSmartBackspace
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewSmartBackspace
    attrClear = undefined
#endif

-- VVV Prop "smart-home-end"
   -- Type: TInterface (Name {namespace = "GtkSource", name = "SmartHomeEndType"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@smart-home-end@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #smartHomeEnd
-- @
getViewSmartHomeEnd :: (MonadIO m, IsView o) => o -> m GtkSource.Enums.SmartHomeEndType
getViewSmartHomeEnd :: o -> m SmartHomeEndType
getViewSmartHomeEnd o
obj = IO SmartHomeEndType -> m SmartHomeEndType
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SmartHomeEndType -> m SmartHomeEndType)
-> IO SmartHomeEndType -> m SmartHomeEndType
forall a b. (a -> b) -> a -> b
$ o -> String -> IO SmartHomeEndType
forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"smart-home-end"

-- | Set the value of the “@smart-home-end@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #smartHomeEnd 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewSmartHomeEnd :: (MonadIO m, IsView o) => o -> GtkSource.Enums.SmartHomeEndType -> m ()
setViewSmartHomeEnd :: o -> SmartHomeEndType -> m ()
setViewSmartHomeEnd o
obj SmartHomeEndType
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> SmartHomeEndType -> IO ()
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"smart-home-end" SmartHomeEndType
val

-- | Construct a `GValueConstruct` with valid value for the “@smart-home-end@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewSmartHomeEnd :: (IsView o, MIO.MonadIO m) => GtkSource.Enums.SmartHomeEndType -> m (GValueConstruct o)
constructViewSmartHomeEnd :: SmartHomeEndType -> m (GValueConstruct o)
constructViewSmartHomeEnd SmartHomeEndType
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> SmartHomeEndType -> IO (GValueConstruct o)
forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"smart-home-end" SmartHomeEndType
val

#if defined(ENABLE_OVERLOADING)
data ViewSmartHomeEndPropertyInfo
instance AttrInfo ViewSmartHomeEndPropertyInfo where
    type AttrAllowedOps ViewSmartHomeEndPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewSmartHomeEndPropertyInfo = IsView
    type AttrSetTypeConstraint ViewSmartHomeEndPropertyInfo = (~) GtkSource.Enums.SmartHomeEndType
    type AttrTransferTypeConstraint ViewSmartHomeEndPropertyInfo = (~) GtkSource.Enums.SmartHomeEndType
    type AttrTransferType ViewSmartHomeEndPropertyInfo = GtkSource.Enums.SmartHomeEndType
    type AttrGetType ViewSmartHomeEndPropertyInfo = GtkSource.Enums.SmartHomeEndType
    type AttrLabel ViewSmartHomeEndPropertyInfo = "smart-home-end"
    type AttrOrigin ViewSmartHomeEndPropertyInfo = View
    attrGet = getViewSmartHomeEnd
    attrSet = setViewSmartHomeEnd
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewSmartHomeEnd
    attrClear = undefined
#endif

-- VVV Prop "space-drawer"
   -- Type: TInterface (Name {namespace = "GtkSource", name = "SpaceDrawer"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

-- | Get the value of the “@space-drawer@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #spaceDrawer
-- @
getViewSpaceDrawer :: (MonadIO m, IsView o) => o -> m GtkSource.SpaceDrawer.SpaceDrawer
getViewSpaceDrawer :: o -> m SpaceDrawer
getViewSpaceDrawer o
obj = IO SpaceDrawer -> m SpaceDrawer
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SpaceDrawer -> m SpaceDrawer)
-> IO SpaceDrawer -> m SpaceDrawer
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe SpaceDrawer) -> IO SpaceDrawer
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getViewSpaceDrawer" (IO (Maybe SpaceDrawer) -> IO SpaceDrawer)
-> IO (Maybe SpaceDrawer) -> IO SpaceDrawer
forall a b. (a -> b) -> a -> b
$ o
-> String
-> (ManagedPtr SpaceDrawer -> SpaceDrawer)
-> IO (Maybe SpaceDrawer)
forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"space-drawer" ManagedPtr SpaceDrawer -> SpaceDrawer
GtkSource.SpaceDrawer.SpaceDrawer

#if defined(ENABLE_OVERLOADING)
data ViewSpaceDrawerPropertyInfo
instance AttrInfo ViewSpaceDrawerPropertyInfo where
    type AttrAllowedOps ViewSpaceDrawerPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrBaseTypeConstraint ViewSpaceDrawerPropertyInfo = IsView
    type AttrSetTypeConstraint ViewSpaceDrawerPropertyInfo = (~) ()
    type AttrTransferTypeConstraint ViewSpaceDrawerPropertyInfo = (~) ()
    type AttrTransferType ViewSpaceDrawerPropertyInfo = ()
    type AttrGetType ViewSpaceDrawerPropertyInfo = GtkSource.SpaceDrawer.SpaceDrawer
    type AttrLabel ViewSpaceDrawerPropertyInfo = "space-drawer"
    type AttrOrigin ViewSpaceDrawerPropertyInfo = View
    attrGet = getViewSpaceDrawer
    attrSet = undefined
    attrTransfer _ = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "tab-width"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

-- | Get the value of the “@tab-width@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.get' view #tabWidth
-- @
getViewTabWidth :: (MonadIO m, IsView o) => o -> m Word32
getViewTabWidth :: o -> m Word32
getViewTabWidth o
obj = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Word32
forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"tab-width"

-- | Set the value of the “@tab-width@” property.
-- When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to
-- 
-- @
-- 'Data.GI.Base.Attributes.set' view [ #tabWidth 'Data.GI.Base.Attributes.:=' value ]
-- @
setViewTabWidth :: (MonadIO m, IsView o) => o -> Word32 -> m ()
setViewTabWidth :: o -> Word32 -> m ()
setViewTabWidth o
obj Word32
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Word32 -> IO ()
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"tab-width" Word32
val

-- | Construct a `GValueConstruct` with valid value for the “@tab-width@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
constructViewTabWidth :: (IsView o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructViewTabWidth :: Word32 -> m (GValueConstruct o)
constructViewTabWidth Word32
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Word32 -> IO (GValueConstruct o)
forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"tab-width" Word32
val

#if defined(ENABLE_OVERLOADING)
data ViewTabWidthPropertyInfo
instance AttrInfo ViewTabWidthPropertyInfo where
    type AttrAllowedOps ViewTabWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrBaseTypeConstraint ViewTabWidthPropertyInfo = IsView
    type AttrSetTypeConstraint ViewTabWidthPropertyInfo = (~) Word32
    type AttrTransferTypeConstraint ViewTabWidthPropertyInfo = (~) Word32
    type AttrTransferType ViewTabWidthPropertyInfo = Word32
    type AttrGetType ViewTabWidthPropertyInfo = Word32
    type AttrLabel ViewTabWidthPropertyInfo = "tab-width"
    type AttrOrigin ViewTabWidthPropertyInfo = View
    attrGet = getViewTabWidth
    attrSet = setViewTabWidth
    attrTransfer _ v = do
        return v
    attrConstruct = constructViewTabWidth
    attrClear = undefined
#endif

#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList View
type instance O.AttributeList View = ViewAttributeList
type ViewAttributeList = ('[ '("acceptsTab", Gtk.TextView.TextViewAcceptsTabPropertyInfo), '("appPaintable", Gtk.Widget.WidgetAppPaintablePropertyInfo), '("autoIndent", ViewAutoIndentPropertyInfo), '("backgroundPattern", ViewBackgroundPatternPropertyInfo), '("borderWidth", Gtk.Container.ContainerBorderWidthPropertyInfo), '("bottomMargin", Gtk.TextView.TextViewBottomMarginPropertyInfo), '("buffer", Gtk.TextView.TextViewBufferPropertyInfo), '("canDefault", Gtk.Widget.WidgetCanDefaultPropertyInfo), '("canFocus", Gtk.Widget.WidgetCanFocusPropertyInfo), '("child", Gtk.Container.ContainerChildPropertyInfo), '("completion", ViewCompletionPropertyInfo), '("compositeChild", Gtk.Widget.WidgetCompositeChildPropertyInfo), '("cursorVisible", Gtk.TextView.TextViewCursorVisiblePropertyInfo), '("doubleBuffered", Gtk.Widget.WidgetDoubleBufferedPropertyInfo), '("drawSpaces", ViewDrawSpacesPropertyInfo), '("editable", Gtk.TextView.TextViewEditablePropertyInfo), '("events", Gtk.Widget.WidgetEventsPropertyInfo), '("expand", Gtk.Widget.WidgetExpandPropertyInfo), '("focusOnClick", Gtk.Widget.WidgetFocusOnClickPropertyInfo), '("hadjustment", Gtk.Scrollable.ScrollableHadjustmentPropertyInfo), '("halign", Gtk.Widget.WidgetHalignPropertyInfo), '("hasDefault", Gtk.Widget.WidgetHasDefaultPropertyInfo), '("hasFocus", Gtk.Widget.WidgetHasFocusPropertyInfo), '("hasTooltip", Gtk.Widget.WidgetHasTooltipPropertyInfo), '("heightRequest", Gtk.Widget.WidgetHeightRequestPropertyInfo), '("hexpand", Gtk.Widget.WidgetHexpandPropertyInfo), '("hexpandSet", Gtk.Widget.WidgetHexpandSetPropertyInfo), '("highlightCurrentLine", ViewHighlightCurrentLinePropertyInfo), '("hscrollPolicy", Gtk.Scrollable.ScrollableHscrollPolicyPropertyInfo), '("imModule", Gtk.TextView.TextViewImModulePropertyInfo), '("indent", Gtk.TextView.TextViewIndentPropertyInfo), '("indentOnTab", ViewIndentOnTabPropertyInfo), '("indentWidth", ViewIndentWidthPropertyInfo), '("inputHints", Gtk.TextView.TextViewInputHintsPropertyInfo), '("inputPurpose", Gtk.TextView.TextViewInputPurposePropertyInfo), '("insertSpacesInsteadOfTabs", ViewInsertSpacesInsteadOfTabsPropertyInfo), '("isFocus", Gtk.Widget.WidgetIsFocusPropertyInfo), '("justification", Gtk.TextView.TextViewJustificationPropertyInfo), '("leftMargin", Gtk.TextView.TextViewLeftMarginPropertyInfo), '("margin", Gtk.Widget.WidgetMarginPropertyInfo), '("marginBottom", Gtk.Widget.WidgetMarginBottomPropertyInfo), '("marginEnd", Gtk.Widget.WidgetMarginEndPropertyInfo), '("marginLeft", Gtk.Widget.WidgetMarginLeftPropertyInfo), '("marginRight", Gtk.Widget.WidgetMarginRightPropertyInfo), '("marginStart", Gtk.Widget.WidgetMarginStartPropertyInfo), '("marginTop", Gtk.Widget.WidgetMarginTopPropertyInfo), '("monospace", Gtk.TextView.TextViewMonospacePropertyInfo), '("name", Gtk.Widget.WidgetNamePropertyInfo), '("noShowAll", Gtk.Widget.WidgetNoShowAllPropertyInfo), '("opacity", Gtk.Widget.WidgetOpacityPropertyInfo), '("overwrite", Gtk.TextView.TextViewOverwritePropertyInfo), '("parent", Gtk.Widget.WidgetParentPropertyInfo), '("pixelsAboveLines", Gtk.TextView.TextViewPixelsAboveLinesPropertyInfo), '("pixelsBelowLines", Gtk.TextView.TextViewPixelsBelowLinesPropertyInfo), '("pixelsInsideWrap", Gtk.TextView.TextViewPixelsInsideWrapPropertyInfo), '("populateAll", Gtk.TextView.TextViewPopulateAllPropertyInfo), '("receivesDefault", Gtk.Widget.WidgetReceivesDefaultPropertyInfo), '("resizeMode", Gtk.Container.ContainerResizeModePropertyInfo), '("rightMargin", Gtk.TextView.TextViewRightMarginPropertyInfo), '("rightMarginPosition", ViewRightMarginPositionPropertyInfo), '("scaleFactor", Gtk.Widget.WidgetScaleFactorPropertyInfo), '("sensitive", Gtk.Widget.WidgetSensitivePropertyInfo), '("showLineMarks", ViewShowLineMarksPropertyInfo), '("showLineNumbers", ViewShowLineNumbersPropertyInfo), '("showRightMargin", ViewShowRightMarginPropertyInfo), '("smartBackspace", ViewSmartBackspacePropertyInfo), '("smartHomeEnd", ViewSmartHomeEndPropertyInfo), '("spaceDrawer", ViewSpaceDrawerPropertyInfo), '("style", Gtk.Widget.WidgetStylePropertyInfo), '("tabWidth", ViewTabWidthPropertyInfo), '("tabs", Gtk.TextView.TextViewTabsPropertyInfo), '("tooltipMarkup", Gtk.Widget.WidgetTooltipMarkupPropertyInfo), '("tooltipText", Gtk.Widget.WidgetTooltipTextPropertyInfo), '("topMargin", Gtk.TextView.TextViewTopMarginPropertyInfo), '("vadjustment", Gtk.Scrollable.ScrollableVadjustmentPropertyInfo), '("valign", Gtk.Widget.WidgetValignPropertyInfo), '("vexpand", Gtk.Widget.WidgetVexpandPropertyInfo), '("vexpandSet", Gtk.Widget.WidgetVexpandSetPropertyInfo), '("visible", Gtk.Widget.WidgetVisiblePropertyInfo), '("vscrollPolicy", Gtk.Scrollable.ScrollableVscrollPolicyPropertyInfo), '("widthRequest", Gtk.Widget.WidgetWidthRequestPropertyInfo), '("window", Gtk.Widget.WidgetWindowPropertyInfo), '("wrapMode", Gtk.TextView.TextViewWrapModePropertyInfo)] :: [(Symbol, *)])
#endif

#if defined(ENABLE_OVERLOADING)
viewAutoIndent :: AttrLabelProxy "autoIndent"
viewAutoIndent = AttrLabelProxy

viewBackgroundPattern :: AttrLabelProxy "backgroundPattern"
viewBackgroundPattern = AttrLabelProxy

viewCompletion :: AttrLabelProxy "completion"
viewCompletion = AttrLabelProxy

viewDrawSpaces :: AttrLabelProxy "drawSpaces"
viewDrawSpaces = AttrLabelProxy

viewHighlightCurrentLine :: AttrLabelProxy "highlightCurrentLine"
viewHighlightCurrentLine = AttrLabelProxy

viewIndentOnTab :: AttrLabelProxy "indentOnTab"
viewIndentOnTab = AttrLabelProxy

viewIndentWidth :: AttrLabelProxy "indentWidth"
viewIndentWidth = AttrLabelProxy

viewInsertSpacesInsteadOfTabs :: AttrLabelProxy "insertSpacesInsteadOfTabs"
viewInsertSpacesInsteadOfTabs = AttrLabelProxy

viewRightMarginPosition :: AttrLabelProxy "rightMarginPosition"
viewRightMarginPosition = AttrLabelProxy

viewShowLineMarks :: AttrLabelProxy "showLineMarks"
viewShowLineMarks = AttrLabelProxy

viewShowLineNumbers :: AttrLabelProxy "showLineNumbers"
viewShowLineNumbers = AttrLabelProxy

viewShowRightMargin :: AttrLabelProxy "showRightMargin"
viewShowRightMargin = AttrLabelProxy

viewSmartBackspace :: AttrLabelProxy "smartBackspace"
viewSmartBackspace = AttrLabelProxy

viewSmartHomeEnd :: AttrLabelProxy "smartHomeEnd"
viewSmartHomeEnd = AttrLabelProxy

viewSpaceDrawer :: AttrLabelProxy "spaceDrawer"
viewSpaceDrawer = AttrLabelProxy

viewTabWidth :: AttrLabelProxy "tabWidth"
viewTabWidth = AttrLabelProxy

#endif

#if defined(ENABLE_OVERLOADING)
type instance O.SignalList View = ViewSignalList
type ViewSignalList = ('[ '("accelClosuresChanged", Gtk.Widget.WidgetAccelClosuresChangedSignalInfo), '("add", Gtk.Container.ContainerAddSignalInfo), '("backspace", Gtk.TextView.TextViewBackspaceSignalInfo), '("buttonPressEvent", Gtk.Widget.WidgetButtonPressEventSignalInfo), '("buttonReleaseEvent", Gtk.Widget.WidgetButtonReleaseEventSignalInfo), '("canActivateAccel", Gtk.Widget.WidgetCanActivateAccelSignalInfo), '("changeCase", ViewChangeCaseSignalInfo), '("changeNumber", ViewChangeNumberSignalInfo), '("checkResize", Gtk.Container.ContainerCheckResizeSignalInfo), '("childNotify", Gtk.Widget.WidgetChildNotifySignalInfo), '("compositedChanged", Gtk.Widget.WidgetCompositedChangedSignalInfo), '("configureEvent", Gtk.Widget.WidgetConfigureEventSignalInfo), '("copyClipboard", Gtk.TextView.TextViewCopyClipboardSignalInfo), '("cutClipboard", Gtk.TextView.TextViewCutClipboardSignalInfo), '("damageEvent", Gtk.Widget.WidgetDamageEventSignalInfo), '("deleteEvent", Gtk.Widget.WidgetDeleteEventSignalInfo), '("deleteFromCursor", Gtk.TextView.TextViewDeleteFromCursorSignalInfo), '("destroy", Gtk.Widget.WidgetDestroySignalInfo), '("destroyEvent", Gtk.Widget.WidgetDestroyEventSignalInfo), '("directionChanged", Gtk.Widget.WidgetDirectionChangedSignalInfo), '("dragBegin", Gtk.Widget.WidgetDragBeginSignalInfo), '("dragDataDelete", Gtk.Widget.WidgetDragDataDeleteSignalInfo), '("dragDataGet", Gtk.Widget.WidgetDragDataGetSignalInfo), '("dragDataReceived", Gtk.Widget.WidgetDragDataReceivedSignalInfo), '("dragDrop", Gtk.Widget.WidgetDragDropSignalInfo), '("dragEnd", Gtk.Widget.WidgetDragEndSignalInfo), '("dragFailed", Gtk.Widget.WidgetDragFailedSignalInfo), '("dragLeave", Gtk.Widget.WidgetDragLeaveSignalInfo), '("dragMotion", Gtk.Widget.WidgetDragMotionSignalInfo), '("draw", Gtk.Widget.WidgetDrawSignalInfo), '("enterNotifyEvent", Gtk.Widget.WidgetEnterNotifyEventSignalInfo), '("event", Gtk.Widget.WidgetEventSignalInfo), '("eventAfter", Gtk.Widget.WidgetEventAfterSignalInfo), '("extendSelection", Gtk.TextView.TextViewExtendSelectionSignalInfo), '("focus", Gtk.Widget.WidgetFocusSignalInfo), '("focusInEvent", Gtk.Widget.WidgetFocusInEventSignalInfo), '("focusOutEvent", Gtk.Widget.WidgetFocusOutEventSignalInfo), '("grabBrokenEvent", Gtk.Widget.WidgetGrabBrokenEventSignalInfo), '("grabFocus", Gtk.Widget.WidgetGrabFocusSignalInfo), '("grabNotify", Gtk.Widget.WidgetGrabNotifySignalInfo), '("hide", Gtk.Widget.WidgetHideSignalInfo), '("hierarchyChanged", Gtk.Widget.WidgetHierarchyChangedSignalInfo), '("insertAtCursor", Gtk.TextView.TextViewInsertAtCursorSignalInfo), '("insertEmoji", Gtk.TextView.TextViewInsertEmojiSignalInfo), '("joinLines", ViewJoinLinesSignalInfo), '("keyPressEvent", Gtk.Widget.WidgetKeyPressEventSignalInfo), '("keyReleaseEvent", Gtk.Widget.WidgetKeyReleaseEventSignalInfo), '("keynavFailed", Gtk.Widget.WidgetKeynavFailedSignalInfo), '("leaveNotifyEvent", Gtk.Widget.WidgetLeaveNotifyEventSignalInfo), '("lineMarkActivated", ViewLineMarkActivatedSignalInfo), '("map", Gtk.Widget.WidgetMapSignalInfo), '("mapEvent", Gtk.Widget.WidgetMapEventSignalInfo), '("mnemonicActivate", Gtk.Widget.WidgetMnemonicActivateSignalInfo), '("motionNotifyEvent", Gtk.Widget.WidgetMotionNotifyEventSignalInfo), '("moveCursor", Gtk.TextView.TextViewMoveCursorSignalInfo), '("moveFocus", Gtk.Widget.WidgetMoveFocusSignalInfo), '("moveLines", ViewMoveLinesSignalInfo), '("moveToMatchingBracket", ViewMoveToMatchingBracketSignalInfo), '("moveViewport", Gtk.TextView.TextViewMoveViewportSignalInfo), '("moveWords", ViewMoveWordsSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("parentSet", Gtk.Widget.WidgetParentSetSignalInfo), '("pasteClipboard", Gtk.TextView.TextViewPasteClipboardSignalInfo), '("populatePopup", Gtk.TextView.TextViewPopulatePopupSignalInfo), '("popupMenu", Gtk.Widget.WidgetPopupMenuSignalInfo), '("preeditChanged", Gtk.TextView.TextViewPreeditChangedSignalInfo), '("propertyNotifyEvent", Gtk.Widget.WidgetPropertyNotifyEventSignalInfo), '("proximityInEvent", Gtk.Widget.WidgetProximityInEventSignalInfo), '("proximityOutEvent", Gtk.Widget.WidgetProximityOutEventSignalInfo), '("queryTooltip", Gtk.Widget.WidgetQueryTooltipSignalInfo), '("realize", Gtk.Widget.WidgetRealizeSignalInfo), '("redo", ViewRedoSignalInfo), '("remove", Gtk.Container.ContainerRemoveSignalInfo), '("screenChanged", Gtk.Widget.WidgetScreenChangedSignalInfo), '("scrollEvent", Gtk.Widget.WidgetScrollEventSignalInfo), '("selectAll", Gtk.TextView.TextViewSelectAllSignalInfo), '("selectionClearEvent", Gtk.Widget.WidgetSelectionClearEventSignalInfo), '("selectionGet", Gtk.Widget.WidgetSelectionGetSignalInfo), '("selectionNotifyEvent", Gtk.Widget.WidgetSelectionNotifyEventSignalInfo), '("selectionReceived", Gtk.Widget.WidgetSelectionReceivedSignalInfo), '("selectionRequestEvent", Gtk.Widget.WidgetSelectionRequestEventSignalInfo), '("setAnchor", Gtk.TextView.TextViewSetAnchorSignalInfo), '("setFocusChild", Gtk.Container.ContainerSetFocusChildSignalInfo), '("show", Gtk.Widget.WidgetShowSignalInfo), '("showCompletion", ViewShowCompletionSignalInfo), '("showHelp", Gtk.Widget.WidgetShowHelpSignalInfo), '("sizeAllocate", Gtk.Widget.WidgetSizeAllocateSignalInfo), '("smartHomeEnd", ViewSmartHomeEndSignalInfo), '("stateChanged", Gtk.Widget.WidgetStateChangedSignalInfo), '("stateFlagsChanged", Gtk.Widget.WidgetStateFlagsChangedSignalInfo), '("styleSet", Gtk.Widget.WidgetStyleSetSignalInfo), '("styleUpdated", Gtk.Widget.WidgetStyleUpdatedSignalInfo), '("toggleCursorVisible", Gtk.TextView.TextViewToggleCursorVisibleSignalInfo), '("toggleOverwrite", Gtk.TextView.TextViewToggleOverwriteSignalInfo), '("touchEvent", Gtk.Widget.WidgetTouchEventSignalInfo), '("undo", ViewUndoSignalInfo), '("unmap", Gtk.Widget.WidgetUnmapSignalInfo), '("unmapEvent", Gtk.Widget.WidgetUnmapEventSignalInfo), '("unrealize", Gtk.Widget.WidgetUnrealizeSignalInfo), '("visibilityNotifyEvent", Gtk.Widget.WidgetVisibilityNotifyEventSignalInfo), '("windowStateEvent", Gtk.Widget.WidgetWindowStateEventSignalInfo)] :: [(Symbol, *)])

#endif

-- method View::new
-- method type : Constructor
-- Args: []
-- Lengths: []
-- returnType: Just (TInterface Name { namespace = "GtkSource" , name = "View" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_new" gtk_source_view_new :: 
    IO (Ptr View)

-- | Creates a new t'GI.GtkSource.Objects.View.View'.
-- 
-- By default, an empty t'GI.GtkSource.Objects.Buffer.Buffer' will be lazily created and can be
-- retrieved with 'GI.Gtk.Objects.TextView.textViewGetBuffer'.
-- 
-- If you want to specify your own buffer, either override the
-- t'GI.Gtk.Structs.TextViewClass.TextViewClass' create_buffer factory method, or use
-- 'GI.GtkSource.Objects.View.viewNewWithBuffer'.
viewNew ::
    (B.CallStack.HasCallStack, MonadIO m) =>
    m View
    -- ^ __Returns:__ a new t'GI.GtkSource.Objects.View.View'.
viewNew :: m View
viewNew  = IO View -> m View
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO View -> m View) -> IO View -> m View
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
result <- IO (Ptr View)
gtk_source_view_new
    Text -> Ptr View -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"viewNew" Ptr View
result
    View
result' <- ((ManagedPtr View -> View) -> Ptr View -> IO View
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr View -> View
View) Ptr View
result
    View -> IO View
forall (m :: * -> *) a. Monad m => a -> m a
return View
result'

#if defined(ENABLE_OVERLOADING)
#endif

-- method View::new_with_buffer
-- method type : Constructor
-- Args: [ Arg
--           { argCName = "buffer"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "Buffer" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceBuffer."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TInterface Name { namespace = "GtkSource" , name = "View" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_new_with_buffer" gtk_source_view_new_with_buffer :: 
    Ptr GtkSource.Buffer.Buffer ->          -- buffer : TInterface (Name {namespace = "GtkSource", name = "Buffer"})
    IO (Ptr View)

-- | Creates a new t'GI.GtkSource.Objects.View.View' widget displaying the buffer
-- /@buffer@/. One buffer can be shared among many widgets.
viewNewWithBuffer ::
    (B.CallStack.HasCallStack, MonadIO m, GtkSource.Buffer.IsBuffer a) =>
    a
    -- ^ /@buffer@/: a t'GI.GtkSource.Objects.Buffer.Buffer'.
    -> m View
    -- ^ __Returns:__ a new t'GI.GtkSource.Objects.View.View'.
viewNewWithBuffer :: a -> m View
viewNewWithBuffer a
buffer = IO View -> m View
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO View -> m View) -> IO View -> m View
forall a b. (a -> b) -> a -> b
$ do
    Ptr Buffer
buffer' <- a -> IO (Ptr Buffer)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
buffer
    Ptr View
result <- Ptr Buffer -> IO (Ptr View)
gtk_source_view_new_with_buffer Ptr Buffer
buffer'
    Text -> Ptr View -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"viewNewWithBuffer" Ptr View
result
    View
result' <- ((ManagedPtr View -> View) -> Ptr View -> IO View
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr View -> View
View) Ptr View
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
buffer
    View -> IO View
forall (m :: * -> *) a. Monad m => a -> m a
return View
result'

#if defined(ENABLE_OVERLOADING)
#endif

-- method View::get_auto_indent
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_auto_indent" gtk_source_view_get_auto_indent :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns whether auto-indentation of text is enabled.
viewGetAutoIndent ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if auto indentation is enabled.
viewGetAutoIndent :: a -> m Bool
viewGetAutoIndent a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_auto_indent Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetAutoIndentMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetAutoIndentMethodInfo a signature where
    overloadedMethod = viewGetAutoIndent

#endif

-- method View::get_background_pattern
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "GtkSource" , name = "BackgroundPatternType" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_background_pattern" gtk_source_view_get_background_pattern :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CUInt

-- | Returns the t'GI.GtkSource.Enums.BackgroundPatternType' specifying if and how
-- the background pattern should be displayed for this /@view@/.
-- 
-- /Since: 3.16/
viewGetBackgroundPattern ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'
    -> m GtkSource.Enums.BackgroundPatternType
    -- ^ __Returns:__ the t'GI.GtkSource.Enums.BackgroundPatternType'.
viewGetBackgroundPattern :: a -> m BackgroundPatternType
viewGetBackgroundPattern a
view = IO BackgroundPatternType -> m BackgroundPatternType
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO BackgroundPatternType -> m BackgroundPatternType)
-> IO BackgroundPatternType -> m BackgroundPatternType
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CUInt
result <- Ptr View -> IO CUInt
gtk_source_view_get_background_pattern Ptr View
view'
    let result' :: BackgroundPatternType
result' = (Int -> BackgroundPatternType
forall a. Enum a => Int -> a
toEnum (Int -> BackgroundPatternType)
-> (CUInt -> Int) -> CUInt -> BackgroundPatternType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    BackgroundPatternType -> IO BackgroundPatternType
forall (m :: * -> *) a. Monad m => a -> m a
return BackgroundPatternType
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetBackgroundPatternMethodInfo
instance (signature ~ (m GtkSource.Enums.BackgroundPatternType), MonadIO m, IsView a) => O.MethodInfo ViewGetBackgroundPatternMethodInfo a signature where
    overloadedMethod = viewGetBackgroundPattern

#endif

-- method View::get_completion
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface Name { namespace = "GtkSource" , name = "Completion" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_completion" gtk_source_view_get_completion :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO (Ptr GtkSource.Completion.Completion)

-- | Gets the t'GI.GtkSource.Objects.Completion.Completion' associated with /@view@/. The returned object is
-- guaranteed to be the same for the lifetime of /@view@/. Each t'GI.GtkSource.Objects.View.View'
-- object has a different t'GI.GtkSource.Objects.Completion.Completion'.
viewGetCompletion ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m GtkSource.Completion.Completion
    -- ^ __Returns:__ the t'GI.GtkSource.Objects.Completion.Completion' associated with /@view@/.
viewGetCompletion :: a -> m Completion
viewGetCompletion a
view = IO Completion -> m Completion
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Completion -> m Completion) -> IO Completion -> m Completion
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr Completion
result <- Ptr View -> IO (Ptr Completion)
gtk_source_view_get_completion Ptr View
view'
    Text -> Ptr Completion -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"viewGetCompletion" Ptr Completion
result
    Completion
result' <- ((ManagedPtr Completion -> Completion)
-> Ptr Completion -> IO Completion
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Completion -> Completion
GtkSource.Completion.Completion) Ptr Completion
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Completion -> IO Completion
forall (m :: * -> *) a. Monad m => a -> m a
return Completion
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetCompletionMethodInfo
instance (signature ~ (m GtkSource.Completion.Completion), MonadIO m, IsView a) => O.MethodInfo ViewGetCompletionMethodInfo a signature where
    overloadedMethod = viewGetCompletion

#endif

-- method View::get_draw_spaces
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView" , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "GtkSource" , name = "DrawSpacesFlags" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_draw_spaces" gtk_source_view_get_draw_spaces :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CUInt

{-# DEPRECATED viewGetDrawSpaces ["(Since version 3.24)","Use 'GI.GtkSource.Objects.SpaceDrawer.spaceDrawerGetTypesForLocations'","instead."] #-}
-- | Returns the t'GI.GtkSource.Flags.DrawSpacesFlags' specifying if and how spaces
-- should be displayed for this /@view@/.
viewGetDrawSpaces ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'
    -> m [GtkSource.Flags.DrawSpacesFlags]
    -- ^ __Returns:__ the t'GI.GtkSource.Flags.DrawSpacesFlags', 0 if no spaces should be drawn.
viewGetDrawSpaces :: a -> m [DrawSpacesFlags]
viewGetDrawSpaces a
view = IO [DrawSpacesFlags] -> m [DrawSpacesFlags]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [DrawSpacesFlags] -> m [DrawSpacesFlags])
-> IO [DrawSpacesFlags] -> m [DrawSpacesFlags]
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CUInt
result <- Ptr View -> IO CUInt
gtk_source_view_get_draw_spaces Ptr View
view'
    let result' :: [DrawSpacesFlags]
result' = CUInt -> [DrawSpacesFlags]
forall a b. (Storable a, Integral a, Bits a, IsGFlag b) => a -> [b]
wordToGFlags CUInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    [DrawSpacesFlags] -> IO [DrawSpacesFlags]
forall (m :: * -> *) a. Monad m => a -> m a
return [DrawSpacesFlags]
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetDrawSpacesMethodInfo
instance (signature ~ (m [GtkSource.Flags.DrawSpacesFlags]), MonadIO m, IsView a) => O.MethodInfo ViewGetDrawSpacesMethodInfo a signature where
    overloadedMethod = viewGetDrawSpaces

#endif

-- method View::get_gutter
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "window_type"
--           , argType =
--               TInterface Name { namespace = "Gtk" , name = "TextWindowType" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the gutter window type."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface Name { namespace = "GtkSource" , name = "Gutter" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_gutter" gtk_source_view_get_gutter :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CUInt ->                                -- window_type : TInterface (Name {namespace = "Gtk", name = "TextWindowType"})
    IO (Ptr GtkSource.Gutter.Gutter)

-- | Returns the t'GI.GtkSource.Objects.Gutter.Gutter' object associated with /@windowType@/ for /@view@/.
-- Only GTK_TEXT_WINDOW_LEFT and GTK_TEXT_WINDOW_RIGHT are supported,
-- respectively corresponding to the left and right gutter. The line numbers
-- and mark category icons are rendered in the left gutter.
-- 
-- /Since: 2.8/
viewGetGutter ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Gtk.Enums.TextWindowType
    -- ^ /@windowType@/: the gutter window type.
    -> m GtkSource.Gutter.Gutter
    -- ^ __Returns:__ the t'GI.GtkSource.Objects.Gutter.Gutter'.
viewGetGutter :: a -> TextWindowType -> m Gutter
viewGetGutter a
view TextWindowType
windowType = IO Gutter -> m Gutter
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Gutter -> m Gutter) -> IO Gutter -> m Gutter
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let windowType' :: CUInt
windowType' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt)
-> (TextWindowType -> Int) -> TextWindowType -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. TextWindowType -> Int
forall a. Enum a => a -> Int
fromEnum) TextWindowType
windowType
    Ptr Gutter
result <- Ptr View -> CUInt -> IO (Ptr Gutter)
gtk_source_view_get_gutter Ptr View
view' CUInt
windowType'
    Text -> Ptr Gutter -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"viewGetGutter" Ptr Gutter
result
    Gutter
result' <- ((ManagedPtr Gutter -> Gutter) -> Ptr Gutter -> IO Gutter
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Gutter -> Gutter
GtkSource.Gutter.Gutter) Ptr Gutter
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Gutter -> IO Gutter
forall (m :: * -> *) a. Monad m => a -> m a
return Gutter
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetGutterMethodInfo
instance (signature ~ (Gtk.Enums.TextWindowType -> m GtkSource.Gutter.Gutter), MonadIO m, IsView a) => O.MethodInfo ViewGetGutterMethodInfo a signature where
    overloadedMethod = viewGetGutter

#endif

-- method View::get_highlight_current_line
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_highlight_current_line" gtk_source_view_get_highlight_current_line :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns whether the current line is highlighted.
viewGetHighlightCurrentLine ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if the current line is highlighted.
viewGetHighlightCurrentLine :: a -> m Bool
viewGetHighlightCurrentLine a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_highlight_current_line Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetHighlightCurrentLineMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetHighlightCurrentLineMethodInfo a signature where
    overloadedMethod = viewGetHighlightCurrentLine

#endif

-- method View::get_indent_on_tab
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_indent_on_tab" gtk_source_view_get_indent_on_tab :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns whether when the tab key is pressed the current selection
-- should get indented instead of replaced with the \\t character.
viewGetIndentOnTab ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if the selection is indented when tab is pressed.
viewGetIndentOnTab :: a -> m Bool
viewGetIndentOnTab a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_indent_on_tab Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetIndentOnTabMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetIndentOnTabMethodInfo a signature where
    overloadedMethod = viewGetIndentOnTab

#endif

-- method View::get_indent_width
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_indent_width" gtk_source_view_get_indent_width :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO Int32

-- | Returns the number of spaces to use for each step of indent.
-- See 'GI.GtkSource.Objects.View.viewSetIndentWidth' for details.
viewGetIndentWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Int32
    -- ^ __Returns:__ indent width.
viewGetIndentWidth :: a -> m Int32
viewGetIndentWidth a
view = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Int32
result <- Ptr View -> IO Int32
gtk_source_view_get_indent_width Ptr View
view'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result

#if defined(ENABLE_OVERLOADING)
data ViewGetIndentWidthMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsView a) => O.MethodInfo ViewGetIndentWidthMethodInfo a signature where
    overloadedMethod = viewGetIndentWidth

#endif

-- method View::get_insert_spaces_instead_of_tabs
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_insert_spaces_instead_of_tabs" gtk_source_view_get_insert_spaces_instead_of_tabs :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns whether when inserting a tabulator character it should
-- be replaced by a group of space characters.
viewGetInsertSpacesInsteadOfTabs ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if spaces are inserted instead of tabs.
viewGetInsertSpacesInsteadOfTabs :: a -> m Bool
viewGetInsertSpacesInsteadOfTabs a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_insert_spaces_instead_of_tabs Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetInsertSpacesInsteadOfTabsMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetInsertSpacesInsteadOfTabsMethodInfo a signature where
    overloadedMethod = viewGetInsertSpacesInsteadOfTabs

#endif

-- method View::get_mark_attributes
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "category"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the category." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "priority"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "place where priority of the category will be stored."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "GtkSource" , name = "MarkAttributes" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_mark_attributes" gtk_source_view_get_mark_attributes :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CString ->                              -- category : TBasicType TUTF8
    Int32 ->                                -- priority : TBasicType TInt
    IO (Ptr GtkSource.MarkAttributes.MarkAttributes)

-- | Gets attributes and priority for the /@category@/.
viewGetMarkAttributes ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> T.Text
    -- ^ /@category@/: the category.
    -> Int32
    -- ^ /@priority@/: place where priority of the category will be stored.
    -> m GtkSource.MarkAttributes.MarkAttributes
    -- ^ __Returns:__ t'GI.GtkSource.Objects.MarkAttributes.MarkAttributes' for the /@category@/.
    -- The object belongs to /@view@/, so it must not be unreffed.
viewGetMarkAttributes :: a -> Text -> Int32 -> m MarkAttributes
viewGetMarkAttributes a
view Text
category Int32
priority = IO MarkAttributes -> m MarkAttributes
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO MarkAttributes -> m MarkAttributes)
-> IO MarkAttributes -> m MarkAttributes
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CString
category' <- Text -> IO CString
textToCString Text
category
    Ptr MarkAttributes
result <- Ptr View -> CString -> Int32 -> IO (Ptr MarkAttributes)
gtk_source_view_get_mark_attributes Ptr View
view' CString
category' Int32
priority
    Text -> Ptr MarkAttributes -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"viewGetMarkAttributes" Ptr MarkAttributes
result
    MarkAttributes
result' <- ((ManagedPtr MarkAttributes -> MarkAttributes)
-> Ptr MarkAttributes -> IO MarkAttributes
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr MarkAttributes -> MarkAttributes
GtkSource.MarkAttributes.MarkAttributes) Ptr MarkAttributes
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
category'
    MarkAttributes -> IO MarkAttributes
forall (m :: * -> *) a. Monad m => a -> m a
return MarkAttributes
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetMarkAttributesMethodInfo
instance (signature ~ (T.Text -> Int32 -> m GtkSource.MarkAttributes.MarkAttributes), MonadIO m, IsView a) => O.MethodInfo ViewGetMarkAttributesMethodInfo a signature where
    overloadedMethod = viewGetMarkAttributes

#endif

-- method View::get_right_margin_position
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt)
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_right_margin_position" gtk_source_view_get_right_margin_position :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO Word32

-- | Gets the position of the right margin in the given /@view@/.
viewGetRightMarginPosition ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Word32
    -- ^ __Returns:__ the position of the right margin.
viewGetRightMarginPosition :: a -> m Word32
viewGetRightMarginPosition a
view = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Word32
result <- Ptr View -> IO Word32
gtk_source_view_get_right_margin_position Ptr View
view'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Word32 -> IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data ViewGetRightMarginPositionMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsView a) => O.MethodInfo ViewGetRightMarginPositionMethodInfo a signature where
    overloadedMethod = viewGetRightMarginPosition

#endif

-- method View::get_show_line_marks
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_show_line_marks" gtk_source_view_get_show_line_marks :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns whether line marks are displayed beside the text.
-- 
-- /Since: 2.2/
viewGetShowLineMarks ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if the line marks are displayed.
viewGetShowLineMarks :: a -> m Bool
viewGetShowLineMarks a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_show_line_marks Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetShowLineMarksMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetShowLineMarksMethodInfo a signature where
    overloadedMethod = viewGetShowLineMarks

#endif

-- method View::get_show_line_numbers
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_show_line_numbers" gtk_source_view_get_show_line_numbers :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns whether line numbers are displayed beside the text.
viewGetShowLineNumbers ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if the line numbers are displayed.
viewGetShowLineNumbers :: a -> m Bool
viewGetShowLineNumbers a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_show_line_numbers Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetShowLineNumbersMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetShowLineNumbersMethodInfo a signature where
    overloadedMethod = viewGetShowLineNumbers

#endif

-- method View::get_show_right_margin
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_show_right_margin" gtk_source_view_get_show_right_margin :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns whether a right margin is displayed.
viewGetShowRightMargin ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if the right margin is shown.
viewGetShowRightMargin :: a -> m Bool
viewGetShowRightMargin a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_show_right_margin Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetShowRightMarginMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetShowRightMarginMethodInfo a signature where
    overloadedMethod = viewGetShowRightMargin

#endif

-- method View::get_smart_backspace
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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_source_view_get_smart_backspace" gtk_source_view_get_smart_backspace :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CInt

-- | Returns 'P.True' if pressing the Backspace key will try to delete spaces
-- up to the previous tab stop.
-- 
-- /Since: 3.18/
viewGetSmartBackspace ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Bool
    -- ^ __Returns:__ 'P.True' if smart Backspace handling is enabled.
viewGetSmartBackspace :: a -> m Bool
viewGetSmartBackspace a
view = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CInt
result <- Ptr View -> IO CInt
gtk_source_view_get_smart_backspace Ptr View
view'
    let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetSmartBackspaceMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsView a) => O.MethodInfo ViewGetSmartBackspaceMethodInfo a signature where
    overloadedMethod = viewGetSmartBackspace

#endif

-- method View::get_smart_home_end
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "GtkSource" , name = "SmartHomeEndType" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_smart_home_end" gtk_source_view_get_smart_home_end :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO CUInt

-- | Returns a t'GI.GtkSource.Enums.SmartHomeEndType' end value specifying
-- how the cursor will move when HOME and END keys are pressed.
viewGetSmartHomeEnd ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m GtkSource.Enums.SmartHomeEndType
    -- ^ __Returns:__ a t'GI.GtkSource.Enums.SmartHomeEndType' value.
viewGetSmartHomeEnd :: a -> m SmartHomeEndType
viewGetSmartHomeEnd a
view = IO SmartHomeEndType -> m SmartHomeEndType
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SmartHomeEndType -> m SmartHomeEndType)
-> IO SmartHomeEndType -> m SmartHomeEndType
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CUInt
result <- Ptr View -> IO CUInt
gtk_source_view_get_smart_home_end Ptr View
view'
    let result' :: SmartHomeEndType
result' = (Int -> SmartHomeEndType
forall a. Enum a => Int -> a
toEnum (Int -> SmartHomeEndType)
-> (CUInt -> Int) -> CUInt -> SmartHomeEndType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CUInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    SmartHomeEndType -> IO SmartHomeEndType
forall (m :: * -> *) a. Monad m => a -> m a
return SmartHomeEndType
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetSmartHomeEndMethodInfo
instance (signature ~ (m GtkSource.Enums.SmartHomeEndType), MonadIO m, IsView a) => O.MethodInfo ViewGetSmartHomeEndMethodInfo a signature where
    overloadedMethod = viewGetSmartHomeEnd

#endif

-- method View::get_space_drawer
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just
--               (TInterface
--                  Name { namespace = "GtkSource" , name = "SpaceDrawer" })
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_space_drawer" gtk_source_view_get_space_drawer :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO (Ptr GtkSource.SpaceDrawer.SpaceDrawer)

-- | Gets the t'GI.GtkSource.Objects.SpaceDrawer.SpaceDrawer' associated with /@view@/. The returned object is
-- guaranteed to be the same for the lifetime of /@view@/. Each t'GI.GtkSource.Objects.View.View'
-- object has a different t'GI.GtkSource.Objects.SpaceDrawer.SpaceDrawer'.
-- 
-- /Since: 3.24/
viewGetSpaceDrawer ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m GtkSource.SpaceDrawer.SpaceDrawer
    -- ^ __Returns:__ the t'GI.GtkSource.Objects.SpaceDrawer.SpaceDrawer' associated with /@view@/.
viewGetSpaceDrawer :: a -> m SpaceDrawer
viewGetSpaceDrawer a
view = IO SpaceDrawer -> m SpaceDrawer
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SpaceDrawer -> m SpaceDrawer)
-> IO SpaceDrawer -> m SpaceDrawer
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr SpaceDrawer
result <- Ptr View -> IO (Ptr SpaceDrawer)
gtk_source_view_get_space_drawer Ptr View
view'
    Text -> Ptr SpaceDrawer -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"viewGetSpaceDrawer" Ptr SpaceDrawer
result
    SpaceDrawer
result' <- ((ManagedPtr SpaceDrawer -> SpaceDrawer)
-> Ptr SpaceDrawer -> IO SpaceDrawer
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr SpaceDrawer -> SpaceDrawer
GtkSource.SpaceDrawer.SpaceDrawer) Ptr SpaceDrawer
result
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    SpaceDrawer -> IO SpaceDrawer
forall (m :: * -> *) a. Monad m => a -> m a
return SpaceDrawer
result'

#if defined(ENABLE_OVERLOADING)
data ViewGetSpaceDrawerMethodInfo
instance (signature ~ (m GtkSource.SpaceDrawer.SpaceDrawer), MonadIO m, IsView a) => O.MethodInfo ViewGetSpaceDrawerMethodInfo a signature where
    overloadedMethod = viewGetSpaceDrawer

#endif

-- method View::get_tab_width
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt)
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_tab_width" gtk_source_view_get_tab_width :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    IO Word32

-- | Returns the width of tabulation in characters.
viewGetTabWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> m Word32
    -- ^ __Returns:__ width of tab.
viewGetTabWidth :: a -> m Word32
viewGetTabWidth a
view = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Word32
result <- Ptr View -> IO Word32
gtk_source_view_get_tab_width Ptr View
view'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    Word32 -> IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data ViewGetTabWidthMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsView a) => O.MethodInfo ViewGetTabWidthMethodInfo a signature where
    overloadedMethod = viewGetTabWidth

#endif

-- method View::get_visual_column
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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 @view."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Just (TBasicType TUInt)
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_get_visual_column" gtk_source_view_get_visual_column :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    Ptr Gtk.TextIter.TextIter ->            -- iter : TInterface (Name {namespace = "Gtk", name = "TextIter"})
    IO Word32

-- | Determines the visual column at /@iter@/ taking into consideration the
-- t'GI.GtkSource.Objects.View.View':@/tab-width/@ of /@view@/.
viewGetVisualColumn ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Gtk.TextIter.TextIter
    -- ^ /@iter@/: a position in /@view@/.
    -> m Word32
    -- ^ __Returns:__ the visual column at /@iter@/.
viewGetVisualColumn :: a -> TextIter -> m Word32
viewGetVisualColumn a
view TextIter
iter = IO Word32 -> m Word32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Word32 -> m Word32) -> IO Word32 -> m Word32
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr TextIter
iter' <- TextIter -> IO (Ptr TextIter)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TextIter
iter
    Word32
result <- Ptr View -> Ptr TextIter -> IO Word32
gtk_source_view_get_visual_column Ptr View
view' Ptr TextIter
iter'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    TextIter -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TextIter
iter
    Word32 -> IO Word32
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result

#if defined(ENABLE_OVERLOADING)
data ViewGetVisualColumnMethodInfo
instance (signature ~ (Gtk.TextIter.TextIter -> m Word32), MonadIO m, IsView a) => O.MethodInfo ViewGetVisualColumnMethodInfo a signature where
    overloadedMethod = viewGetVisualColumn

#endif

-- method View::indent_lines
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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 "#GtkTextIter of the first line to indent"
--                 , 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 "#GtkTextIter of the last line to indent"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_indent_lines" gtk_source_view_indent_lines :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    Ptr Gtk.TextIter.TextIter ->            -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"})
    Ptr Gtk.TextIter.TextIter ->            -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"})
    IO ()

-- | Inserts one indentation level at the beginning of the specified lines. The
-- empty lines are not indented.
-- 
-- /Since: 3.16/
viewIndentLines ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Gtk.TextIter.TextIter
    -- ^ /@start@/: t'GI.Gtk.Structs.TextIter.TextIter' of the first line to indent
    -> Gtk.TextIter.TextIter
    -- ^ /@end@/: t'GI.Gtk.Structs.TextIter.TextIter' of the last line to indent
    -> m ()
viewIndentLines :: a -> TextIter -> TextIter -> m ()
viewIndentLines a
view TextIter
start TextIter
end = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr TextIter
start' <- TextIter -> IO (Ptr TextIter)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TextIter
start
    Ptr TextIter
end' <- TextIter -> IO (Ptr TextIter)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TextIter
end
    Ptr View -> Ptr TextIter -> Ptr TextIter -> IO ()
gtk_source_view_indent_lines Ptr View
view' Ptr TextIter
start' Ptr TextIter
end'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    TextIter -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TextIter
start
    TextIter -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TextIter
end
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewIndentLinesMethodInfo
instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewIndentLinesMethodInfo a signature where
    overloadedMethod = viewIndentLines

#endif

-- method View::set_auto_indent
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "enable"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "whether to enable auto indentation."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_auto_indent" gtk_source_view_set_auto_indent :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- enable : TBasicType TBoolean
    IO ()

-- | If 'P.True' auto-indentation of text is enabled.
-- 
-- When Enter is pressed to create a new line, the auto-indentation inserts the
-- same indentation as the previous line. This is \<emphasis>not\<\/emphasis> a
-- \"smart indentation\" where an indentation level is added or removed depending
-- on the context.
viewSetAutoIndent ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@enable@/: whether to enable auto indentation.
    -> m ()
viewSetAutoIndent :: a -> Bool -> m ()
viewSetAutoIndent a
view Bool
enable = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let enable' :: CInt
enable' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
enable
    Ptr View -> CInt -> IO ()
gtk_source_view_set_auto_indent Ptr View
view' CInt
enable'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetAutoIndentMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetAutoIndentMethodInfo a signature where
    overloadedMethod = viewSetAutoIndent

#endif

-- method View::set_background_pattern
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "background_pattern"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "BackgroundPatternType" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the #GtkSourceBackgroundPatternType."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_background_pattern" gtk_source_view_set_background_pattern :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CUInt ->                                -- background_pattern : TInterface (Name {namespace = "GtkSource", name = "BackgroundPatternType"})
    IO ()

-- | Set if and how the background pattern should be displayed.
-- 
-- /Since: 3.16/
viewSetBackgroundPattern ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> GtkSource.Enums.BackgroundPatternType
    -- ^ /@backgroundPattern@/: the t'GI.GtkSource.Enums.BackgroundPatternType'.
    -> m ()
viewSetBackgroundPattern :: a -> BackgroundPatternType -> m ()
viewSetBackgroundPattern a
view BackgroundPatternType
backgroundPattern = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let backgroundPattern' :: CUInt
backgroundPattern' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt)
-> (BackgroundPatternType -> Int) -> BackgroundPatternType -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. BackgroundPatternType -> Int
forall a. Enum a => a -> Int
fromEnum) BackgroundPatternType
backgroundPattern
    Ptr View -> CUInt -> IO ()
gtk_source_view_set_background_pattern Ptr View
view' CUInt
backgroundPattern'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetBackgroundPatternMethodInfo
instance (signature ~ (GtkSource.Enums.BackgroundPatternType -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetBackgroundPatternMethodInfo a signature where
    overloadedMethod = viewSetBackgroundPattern

#endif

-- method View::set_draw_spaces
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "flags"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "DrawSpacesFlags" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just
--                       "#GtkSourceDrawSpacesFlags specifing how white spaces should\nbe displayed"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_draw_spaces" gtk_source_view_set_draw_spaces :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CUInt ->                                -- flags : TInterface (Name {namespace = "GtkSource", name = "DrawSpacesFlags"})
    IO ()

{-# DEPRECATED viewSetDrawSpaces ["(Since version 3.24)","Use 'GI.GtkSource.Objects.SpaceDrawer.spaceDrawerSetTypesForLocations'","instead."] #-}
-- | Set if and how the spaces should be visualized. Specifying /@flags@/ as 0 will
-- disable display of spaces.
-- 
-- For a finer-grained method, there is also the GtkSourceTag\'s
-- t'GI.GtkSource.Objects.Tag.Tag':@/draw-spaces/@ property.
viewSetDrawSpaces ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> [GtkSource.Flags.DrawSpacesFlags]
    -- ^ /@flags@/: t'GI.GtkSource.Flags.DrawSpacesFlags' specifing how white spaces should
    -- be displayed
    -> m ()
viewSetDrawSpaces :: a -> [DrawSpacesFlags] -> m ()
viewSetDrawSpaces a
view [DrawSpacesFlags]
flags = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let flags' :: CUInt
flags' = [DrawSpacesFlags] -> CUInt
forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [DrawSpacesFlags]
flags
    Ptr View -> CUInt -> IO ()
gtk_source_view_set_draw_spaces Ptr View
view' CUInt
flags'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetDrawSpacesMethodInfo
instance (signature ~ ([GtkSource.Flags.DrawSpacesFlags] -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetDrawSpacesMethodInfo a signature where
    overloadedMethod = viewSetDrawSpaces

#endif

-- method View::set_highlight_current_line
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "highlight"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "whether to highlight the current 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_source_view_set_highlight_current_line" gtk_source_view_set_highlight_current_line :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- highlight : TBasicType TBoolean
    IO ()

-- | If /@highlight@/ is 'P.True' the current line will be highlighted.
viewSetHighlightCurrentLine ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@highlight@/: whether to highlight the current line.
    -> m ()
viewSetHighlightCurrentLine :: a -> Bool -> m ()
viewSetHighlightCurrentLine a
view Bool
highlight = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let highlight' :: CInt
highlight' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
highlight
    Ptr View -> CInt -> IO ()
gtk_source_view_set_highlight_current_line Ptr View
view' CInt
highlight'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetHighlightCurrentLineMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetHighlightCurrentLineMethodInfo a signature where
    overloadedMethod = viewSetHighlightCurrentLine

#endif

-- method View::set_indent_on_tab
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "enable"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "whether to indent a block when tab is pressed."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_indent_on_tab" gtk_source_view_set_indent_on_tab :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- enable : TBasicType TBoolean
    IO ()

-- | If 'P.True', when the tab key is pressed when several lines are selected, the
-- selected lines are indented of one level instead of being replaced with a \\t
-- character. Shift+Tab unindents the selection.
-- 
-- If the first or last line is not selected completely, it is also indented or
-- unindented.
-- 
-- When the selection doesn\'t span several lines, the tab key always replaces
-- the selection with a normal \\t character.
viewSetIndentOnTab ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@enable@/: whether to indent a block when tab is pressed.
    -> m ()
viewSetIndentOnTab :: a -> Bool -> m ()
viewSetIndentOnTab a
view Bool
enable = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let enable' :: CInt
enable' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
enable
    Ptr View -> CInt -> IO ()
gtk_source_view_set_indent_on_tab Ptr View
view' CInt
enable'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetIndentOnTabMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetIndentOnTabMethodInfo a signature where
    overloadedMethod = viewSetIndentOnTab

#endif

-- method View::set_indent_width
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "width"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "indent width in characters."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_indent_width" gtk_source_view_set_indent_width :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    Int32 ->                                -- width : TBasicType TInt
    IO ()

-- | Sets the number of spaces to use for each step of indent when the tab key is
-- pressed. If /@width@/ is -1, the value of the t'GI.GtkSource.Objects.View.View':@/tab-width/@ property
-- will be used.
-- 
-- The t'GI.GtkSource.Objects.View.View':@/indent-width/@ interacts with the
-- t'GI.GtkSource.Objects.View.View':@/insert-spaces-instead-of-tabs/@ property and
-- t'GI.GtkSource.Objects.View.View':@/tab-width/@. An example will be clearer: if the
-- t'GI.GtkSource.Objects.View.View':@/indent-width/@ is 4 and
-- t'GI.GtkSource.Objects.View.View':@/tab-width/@ is 8 and
-- t'GI.GtkSource.Objects.View.View':@/insert-spaces-instead-of-tabs/@ is 'P.False', then pressing the tab
-- key at the beginning of a line will insert 4 spaces. So far so good. Pressing
-- the tab key a second time will remove the 4 spaces and insert a \\t character
-- instead (since t'GI.GtkSource.Objects.View.View':@/tab-width/@ is 8). On the other hand, if
-- t'GI.GtkSource.Objects.View.View':@/insert-spaces-instead-of-tabs/@ is 'P.True', the second tab key
-- pressed will insert 4 more spaces for a total of 8 spaces in the
-- t'GI.Gtk.Objects.TextBuffer.TextBuffer'.
-- 
-- The test-widget program (available in the GtkSourceView repository) may be
-- useful to better understand the indentation settings (enable the space
-- drawing!).
viewSetIndentWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Int32
    -- ^ /@width@/: indent width in characters.
    -> m ()
viewSetIndentWidth :: a -> Int32 -> m ()
viewSetIndentWidth a
view Int32
width = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr View -> ViewChangeNumberCallback
gtk_source_view_set_indent_width Ptr View
view' Int32
width
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetIndentWidthMethodInfo
instance (signature ~ (Int32 -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetIndentWidthMethodInfo a signature where
    overloadedMethod = viewSetIndentWidth

#endif

-- method View::set_insert_spaces_instead_of_tabs
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "enable"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "whether to insert spaces instead of tabs."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_insert_spaces_instead_of_tabs" gtk_source_view_set_insert_spaces_instead_of_tabs :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- enable : TBasicType TBoolean
    IO ()

-- | If 'P.True' a tab key pressed is replaced by a group of space characters. Of
-- course it is still possible to insert a real \\t programmatically with the
-- t'GI.Gtk.Objects.TextBuffer.TextBuffer' API.
viewSetInsertSpacesInsteadOfTabs ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@enable@/: whether to insert spaces instead of tabs.
    -> m ()
viewSetInsertSpacesInsteadOfTabs :: a -> Bool -> m ()
viewSetInsertSpacesInsteadOfTabs a
view Bool
enable = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let enable' :: CInt
enable' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
enable
    Ptr View -> CInt -> IO ()
gtk_source_view_set_insert_spaces_instead_of_tabs Ptr View
view' CInt
enable'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetInsertSpacesInsteadOfTabsMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetInsertSpacesInsteadOfTabsMethodInfo a signature where
    overloadedMethod = viewSetInsertSpacesInsteadOfTabs

#endif

-- method View::set_mark_attributes
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "category"
--           , argType = TBasicType TUTF8
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "the category." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "attributes"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "MarkAttributes" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "mark attributes." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "priority"
--           , argType = TBasicType TInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "priority of the category."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_mark_attributes" gtk_source_view_set_mark_attributes :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CString ->                              -- category : TBasicType TUTF8
    Ptr GtkSource.MarkAttributes.MarkAttributes -> -- attributes : TInterface (Name {namespace = "GtkSource", name = "MarkAttributes"})
    Int32 ->                                -- priority : TBasicType TInt
    IO ()

-- | Sets attributes and priority for the /@category@/.
viewSetMarkAttributes ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a, GtkSource.MarkAttributes.IsMarkAttributes b) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> T.Text
    -- ^ /@category@/: the category.
    -> b
    -- ^ /@attributes@/: mark attributes.
    -> Int32
    -- ^ /@priority@/: priority of the category.
    -> m ()
viewSetMarkAttributes :: a -> Text -> b -> Int32 -> m ()
viewSetMarkAttributes a
view Text
category b
attributes Int32
priority = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    CString
category' <- Text -> IO CString
textToCString Text
category
    Ptr MarkAttributes
attributes' <- b -> IO (Ptr MarkAttributes)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
attributes
    Ptr View
-> CString -> Ptr MarkAttributes -> ViewChangeNumberCallback
gtk_source_view_set_mark_attributes Ptr View
view' CString
category' Ptr MarkAttributes
attributes' Int32
priority
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
attributes
    CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
category'
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetMarkAttributesMethodInfo
instance (signature ~ (T.Text -> b -> Int32 -> m ()), MonadIO m, IsView a, GtkSource.MarkAttributes.IsMarkAttributes b) => O.MethodInfo ViewSetMarkAttributesMethodInfo a signature where
    overloadedMethod = viewSetMarkAttributes

#endif

-- method View::set_right_margin_position
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "pos"
--           , argType = TBasicType TUInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "the width in characters where to position the right margin."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_right_margin_position" gtk_source_view_set_right_margin_position :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    Word32 ->                               -- pos : TBasicType TUInt
    IO ()

-- | Sets the position of the right margin in the given /@view@/.
viewSetRightMarginPosition ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Word32
    -- ^ /@pos@/: the width in characters where to position the right margin.
    -> m ()
viewSetRightMarginPosition :: a -> Word32 -> m ()
viewSetRightMarginPosition a
view Word32
pos = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr View -> Word32 -> IO ()
gtk_source_view_set_right_margin_position Ptr View
view' Word32
pos
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetRightMarginPositionMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetRightMarginPositionMethodInfo a signature where
    overloadedMethod = viewSetRightMarginPosition

#endif

-- method View::set_show_line_marks
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "show"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "whether line marks should be displayed."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_show_line_marks" gtk_source_view_set_show_line_marks :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- show : TBasicType TBoolean
    IO ()

-- | If 'P.True' line marks will be displayed beside the text.
-- 
-- /Since: 2.2/
viewSetShowLineMarks ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@show@/: whether line marks should be displayed.
    -> m ()
viewSetShowLineMarks :: a -> Bool -> m ()
viewSetShowLineMarks a
view Bool
show_ = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let show_' :: CInt
show_' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
show_
    Ptr View -> CInt -> IO ()
gtk_source_view_set_show_line_marks Ptr View
view' CInt
show_'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetShowLineMarksMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetShowLineMarksMethodInfo a signature where
    overloadedMethod = viewSetShowLineMarks

#endif

-- method View::set_show_line_numbers
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "show"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "whether line numbers should be displayed."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_show_line_numbers" gtk_source_view_set_show_line_numbers :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- show : TBasicType TBoolean
    IO ()

-- | If 'P.True' line numbers will be displayed beside the text.
viewSetShowLineNumbers ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@show@/: whether line numbers should be displayed.
    -> m ()
viewSetShowLineNumbers :: a -> Bool -> m ()
viewSetShowLineNumbers a
view Bool
show_ = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let show_' :: CInt
show_' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
show_
    Ptr View -> CInt -> IO ()
gtk_source_view_set_show_line_numbers Ptr View
view' CInt
show_'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetShowLineNumbersMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetShowLineNumbersMethodInfo a signature where
    overloadedMethod = viewSetShowLineNumbers

#endif

-- method View::set_show_right_margin
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "show"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "whether to show a right margin."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_show_right_margin" gtk_source_view_set_show_right_margin :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- show : TBasicType TBoolean
    IO ()

-- | If 'P.True' a right margin is displayed.
viewSetShowRightMargin ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@show@/: whether to show a right margin.
    -> m ()
viewSetShowRightMargin :: a -> Bool -> m ()
viewSetShowRightMargin a
view Bool
show_ = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let show_' :: CInt
show_' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
show_
    Ptr View -> CInt -> IO ()
gtk_source_view_set_show_right_margin Ptr View
view' CInt
show_'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetShowRightMarginMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetShowRightMarginMethodInfo a signature where
    overloadedMethod = viewSetShowRightMargin

#endif

-- method View::set_smart_backspace
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "smart_backspace"
--           , argType = TBasicType TBoolean
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "whether to enable smart Backspace handling."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_smart_backspace" gtk_source_view_set_smart_backspace :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CInt ->                                 -- smart_backspace : TBasicType TBoolean
    IO ()

-- | When set to 'P.True', pressing the Backspace key will try to delete spaces
-- up to the previous tab stop.
-- 
-- /Since: 3.18/
viewSetSmartBackspace ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Bool
    -- ^ /@smartBackspace@/: whether to enable smart Backspace handling.
    -> m ()
viewSetSmartBackspace :: a -> Bool -> m ()
viewSetSmartBackspace a
view Bool
smartBackspace = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let smartBackspace' :: CInt
smartBackspace' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
smartBackspace
    Ptr View -> CInt -> IO ()
gtk_source_view_set_smart_backspace Ptr View
view' CInt
smartBackspace'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetSmartBackspaceMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetSmartBackspaceMethodInfo a signature where
    overloadedMethod = viewSetSmartBackspace

#endif

-- method View::set_smart_home_end
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "smart_home_end"
--           , argType =
--               TInterface
--                 Name { namespace = "GtkSource" , name = "SmartHomeEndType" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText =
--                     Just "the desired behavior among #GtkSourceSmartHomeEndType."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_smart_home_end" gtk_source_view_set_smart_home_end :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    CUInt ->                                -- smart_home_end : TInterface (Name {namespace = "GtkSource", name = "SmartHomeEndType"})
    IO ()

-- | Set the desired movement of the cursor when HOME and END keys
-- are pressed.
viewSetSmartHomeEnd ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> GtkSource.Enums.SmartHomeEndType
    -- ^ /@smartHomeEnd@/: the desired behavior among t'GI.GtkSource.Enums.SmartHomeEndType'.
    -> m ()
viewSetSmartHomeEnd :: a -> SmartHomeEndType -> m ()
viewSetSmartHomeEnd a
view SmartHomeEndType
smartHomeEnd = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    let smartHomeEnd' :: CUInt
smartHomeEnd' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt)
-> (SmartHomeEndType -> Int) -> SmartHomeEndType -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. SmartHomeEndType -> Int
forall a. Enum a => a -> Int
fromEnum) SmartHomeEndType
smartHomeEnd
    Ptr View -> CUInt -> IO ()
gtk_source_view_set_smart_home_end Ptr View
view' CUInt
smartHomeEnd'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetSmartHomeEndMethodInfo
instance (signature ~ (GtkSource.Enums.SmartHomeEndType -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetSmartHomeEndMethodInfo a signature where
    overloadedMethod = viewSetSmartHomeEnd

#endif

-- method View::set_tab_width
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , sinceVersion = Nothing }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       , Arg
--           { argCName = "width"
--           , argType = TBasicType TUInt
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "width of tab in characters."
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_set_tab_width" gtk_source_view_set_tab_width :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    Word32 ->                               -- width : TBasicType TUInt
    IO ()

-- | Sets the width of tabulation in characters. The t'GI.Gtk.Objects.TextBuffer.TextBuffer' still contains
-- \\t characters, but they can take a different visual width in a t'GI.GtkSource.Objects.View.View'
-- widget.
viewSetTabWidth ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Word32
    -- ^ /@width@/: width of tab in characters.
    -> m ()
viewSetTabWidth :: a -> Word32 -> m ()
viewSetTabWidth a
view Word32
width = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr View -> Word32 -> IO ()
gtk_source_view_set_tab_width Ptr View
view' Word32
width
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewSetTabWidthMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewSetTabWidthMethodInfo a signature where
    overloadedMethod = viewSetTabWidth

#endif

-- method View::unindent_lines
-- method type : OrdinaryMethod
-- Args: [ Arg
--           { argCName = "view"
--           , argType =
--               TInterface Name { namespace = "GtkSource" , name = "View" }
--           , direction = DirectionIn
--           , mayBeNull = False
--           , argDoc =
--               Documentation
--                 { rawDocText = Just "a #GtkSourceView." , 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 "#GtkTextIter of the first line to indent"
--                 , 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 "#GtkTextIter of the last line to indent"
--                 , sinceVersion = Nothing
--                 }
--           , argScope = ScopeTypeInvalid
--           , argClosure = -1
--           , argDestroy = -1
--           , argCallerAllocates = False
--           , transfer = TransferNothing
--           }
--       ]
-- Lengths: []
-- returnType: Nothing
-- throws : False
-- Skip return : False

foreign import ccall "gtk_source_view_unindent_lines" gtk_source_view_unindent_lines :: 
    Ptr View ->                             -- view : TInterface (Name {namespace = "GtkSource", name = "View"})
    Ptr Gtk.TextIter.TextIter ->            -- start : TInterface (Name {namespace = "Gtk", name = "TextIter"})
    Ptr Gtk.TextIter.TextIter ->            -- end : TInterface (Name {namespace = "Gtk", name = "TextIter"})
    IO ()

-- | Removes one indentation level at the beginning of the
-- specified lines.
-- 
-- /Since: 3.16/
viewUnindentLines ::
    (B.CallStack.HasCallStack, MonadIO m, IsView a) =>
    a
    -- ^ /@view@/: a t'GI.GtkSource.Objects.View.View'.
    -> Gtk.TextIter.TextIter
    -- ^ /@start@/: t'GI.Gtk.Structs.TextIter.TextIter' of the first line to indent
    -> Gtk.TextIter.TextIter
    -- ^ /@end@/: t'GI.Gtk.Structs.TextIter.TextIter' of the last line to indent
    -> m ()
viewUnindentLines :: a -> TextIter -> TextIter -> m ()
viewUnindentLines a
view TextIter
start TextIter
end = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
    Ptr View
view' <- a -> IO (Ptr View)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
view
    Ptr TextIter
start' <- TextIter -> IO (Ptr TextIter)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TextIter
start
    Ptr TextIter
end' <- TextIter -> IO (Ptr TextIter)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr TextIter
end
    Ptr View -> Ptr TextIter -> Ptr TextIter -> IO ()
gtk_source_view_unindent_lines Ptr View
view' Ptr TextIter
start' Ptr TextIter
end'
    a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
view
    TextIter -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TextIter
start
    TextIter -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr TextIter
end
    () -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()

#if defined(ENABLE_OVERLOADING)
data ViewUnindentLinesMethodInfo
instance (signature ~ (Gtk.TextIter.TextIter -> Gtk.TextIter.TextIter -> m ()), MonadIO m, IsView a) => O.MethodInfo ViewUnindentLinesMethodInfo a signature where
    overloadedMethod = viewUnindentLines

#endif