{- |
Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License    : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}

module GI.Gtk.Objects.CellRendererText
    ( 

-- * Exported types
    CellRendererText(..)                    ,
    CellRendererTextK                       ,
    toCellRendererText                      ,
    noCellRendererText                      ,


 -- * Methods
-- ** cellRendererTextNew
    cellRendererTextNew                     ,


-- ** cellRendererTextSetFixedHeightFromFont
    cellRendererTextSetFixedHeightFromFont  ,




 -- * Properties
-- ** AlignSet
    CellRendererTextAlignSetPropertyInfo    ,
    constructCellRendererTextAlignSet       ,
    getCellRendererTextAlignSet             ,
    setCellRendererTextAlignSet             ,


-- ** Alignment
    CellRendererTextAlignmentPropertyInfo   ,
    constructCellRendererTextAlignment      ,
    getCellRendererTextAlignment            ,
    setCellRendererTextAlignment            ,


-- ** Attributes
    CellRendererTextAttributesPropertyInfo  ,
    constructCellRendererTextAttributes     ,
    getCellRendererTextAttributes           ,
    setCellRendererTextAttributes           ,


-- ** Background
    CellRendererTextBackgroundPropertyInfo  ,
    constructCellRendererTextBackground     ,
    setCellRendererTextBackground           ,


-- ** BackgroundGdk
    CellRendererTextBackgroundGdkPropertyInfo,
    constructCellRendererTextBackgroundGdk  ,
    getCellRendererTextBackgroundGdk        ,
    setCellRendererTextBackgroundGdk        ,


-- ** BackgroundRgba
    CellRendererTextBackgroundRgbaPropertyInfo,
    constructCellRendererTextBackgroundRgba ,
    getCellRendererTextBackgroundRgba       ,
    setCellRendererTextBackgroundRgba       ,


-- ** BackgroundSet
    CellRendererTextBackgroundSetPropertyInfo,
    constructCellRendererTextBackgroundSet  ,
    getCellRendererTextBackgroundSet        ,
    setCellRendererTextBackgroundSet        ,


-- ** Editable
    CellRendererTextEditablePropertyInfo    ,
    constructCellRendererTextEditable       ,
    getCellRendererTextEditable             ,
    setCellRendererTextEditable             ,


-- ** EditableSet
    CellRendererTextEditableSetPropertyInfo ,
    constructCellRendererTextEditableSet    ,
    getCellRendererTextEditableSet          ,
    setCellRendererTextEditableSet          ,


-- ** Ellipsize
    CellRendererTextEllipsizePropertyInfo   ,
    constructCellRendererTextEllipsize      ,
    getCellRendererTextEllipsize            ,
    setCellRendererTextEllipsize            ,


-- ** EllipsizeSet
    CellRendererTextEllipsizeSetPropertyInfo,
    constructCellRendererTextEllipsizeSet   ,
    getCellRendererTextEllipsizeSet         ,
    setCellRendererTextEllipsizeSet         ,


-- ** Family
    CellRendererTextFamilyPropertyInfo      ,
    constructCellRendererTextFamily         ,
    getCellRendererTextFamily               ,
    setCellRendererTextFamily               ,


-- ** FamilySet
    CellRendererTextFamilySetPropertyInfo   ,
    constructCellRendererTextFamilySet      ,
    getCellRendererTextFamilySet            ,
    setCellRendererTextFamilySet            ,


-- ** Font
    CellRendererTextFontPropertyInfo        ,
    constructCellRendererTextFont           ,
    getCellRendererTextFont                 ,
    setCellRendererTextFont                 ,


-- ** FontDesc
    CellRendererTextFontDescPropertyInfo    ,
    constructCellRendererTextFontDesc       ,
    getCellRendererTextFontDesc             ,
    setCellRendererTextFontDesc             ,


-- ** Foreground
    CellRendererTextForegroundPropertyInfo  ,
    constructCellRendererTextForeground     ,
    setCellRendererTextForeground           ,


-- ** ForegroundGdk
    CellRendererTextForegroundGdkPropertyInfo,
    constructCellRendererTextForegroundGdk  ,
    getCellRendererTextForegroundGdk        ,
    setCellRendererTextForegroundGdk        ,


-- ** ForegroundRgba
    CellRendererTextForegroundRgbaPropertyInfo,
    constructCellRendererTextForegroundRgba ,
    getCellRendererTextForegroundRgba       ,
    setCellRendererTextForegroundRgba       ,


-- ** ForegroundSet
    CellRendererTextForegroundSetPropertyInfo,
    constructCellRendererTextForegroundSet  ,
    getCellRendererTextForegroundSet        ,
    setCellRendererTextForegroundSet        ,


-- ** Language
    CellRendererTextLanguagePropertyInfo    ,
    constructCellRendererTextLanguage       ,
    getCellRendererTextLanguage             ,
    setCellRendererTextLanguage             ,


-- ** LanguageSet
    CellRendererTextLanguageSetPropertyInfo ,
    constructCellRendererTextLanguageSet    ,
    getCellRendererTextLanguageSet          ,
    setCellRendererTextLanguageSet          ,


-- ** Markup
    CellRendererTextMarkupPropertyInfo      ,
    constructCellRendererTextMarkup         ,
    setCellRendererTextMarkup               ,


-- ** MaxWidthChars
    CellRendererTextMaxWidthCharsPropertyInfo,
    constructCellRendererTextMaxWidthChars  ,
    getCellRendererTextMaxWidthChars        ,
    setCellRendererTextMaxWidthChars        ,


-- ** PlaceholderText
    CellRendererTextPlaceholderTextPropertyInfo,
    constructCellRendererTextPlaceholderText,
    getCellRendererTextPlaceholderText      ,
    setCellRendererTextPlaceholderText      ,


-- ** Rise
    CellRendererTextRisePropertyInfo        ,
    constructCellRendererTextRise           ,
    getCellRendererTextRise                 ,
    setCellRendererTextRise                 ,


-- ** RiseSet
    CellRendererTextRiseSetPropertyInfo     ,
    constructCellRendererTextRiseSet        ,
    getCellRendererTextRiseSet              ,
    setCellRendererTextRiseSet              ,


-- ** Scale
    CellRendererTextScalePropertyInfo       ,
    constructCellRendererTextScale          ,
    getCellRendererTextScale                ,
    setCellRendererTextScale                ,


-- ** ScaleSet
    CellRendererTextScaleSetPropertyInfo    ,
    constructCellRendererTextScaleSet       ,
    getCellRendererTextScaleSet             ,
    setCellRendererTextScaleSet             ,


-- ** SingleParagraphMode
    CellRendererTextSingleParagraphModePropertyInfo,
    constructCellRendererTextSingleParagraphMode,
    getCellRendererTextSingleParagraphMode  ,
    setCellRendererTextSingleParagraphMode  ,


-- ** Size
    CellRendererTextSizePropertyInfo        ,
    constructCellRendererTextSize           ,
    getCellRendererTextSize                 ,
    setCellRendererTextSize                 ,


-- ** SizePoints
    CellRendererTextSizePointsPropertyInfo  ,
    constructCellRendererTextSizePoints     ,
    getCellRendererTextSizePoints           ,
    setCellRendererTextSizePoints           ,


-- ** SizeSet
    CellRendererTextSizeSetPropertyInfo     ,
    constructCellRendererTextSizeSet        ,
    getCellRendererTextSizeSet              ,
    setCellRendererTextSizeSet              ,


-- ** Stretch
    CellRendererTextStretchPropertyInfo     ,
    constructCellRendererTextStretch        ,
    getCellRendererTextStretch              ,
    setCellRendererTextStretch              ,


-- ** StretchSet
    CellRendererTextStretchSetPropertyInfo  ,
    constructCellRendererTextStretchSet     ,
    getCellRendererTextStretchSet           ,
    setCellRendererTextStretchSet           ,


-- ** Strikethrough
    CellRendererTextStrikethroughPropertyInfo,
    constructCellRendererTextStrikethrough  ,
    getCellRendererTextStrikethrough        ,
    setCellRendererTextStrikethrough        ,


-- ** StrikethroughSet
    CellRendererTextStrikethroughSetPropertyInfo,
    constructCellRendererTextStrikethroughSet,
    getCellRendererTextStrikethroughSet     ,
    setCellRendererTextStrikethroughSet     ,


-- ** Style
    CellRendererTextStylePropertyInfo       ,
    constructCellRendererTextStyle          ,
    getCellRendererTextStyle                ,
    setCellRendererTextStyle                ,


-- ** StyleSet
    CellRendererTextStyleSetPropertyInfo    ,
    constructCellRendererTextStyleSet       ,
    getCellRendererTextStyleSet             ,
    setCellRendererTextStyleSet             ,


-- ** Text
    CellRendererTextTextPropertyInfo        ,
    constructCellRendererTextText           ,
    getCellRendererTextText                 ,
    setCellRendererTextText                 ,


-- ** Underline
    CellRendererTextUnderlinePropertyInfo   ,
    constructCellRendererTextUnderline      ,
    getCellRendererTextUnderline            ,
    setCellRendererTextUnderline            ,


-- ** UnderlineSet
    CellRendererTextUnderlineSetPropertyInfo,
    constructCellRendererTextUnderlineSet   ,
    getCellRendererTextUnderlineSet         ,
    setCellRendererTextUnderlineSet         ,


-- ** Variant
    CellRendererTextVariantPropertyInfo     ,
    constructCellRendererTextVariant        ,
    getCellRendererTextVariant              ,
    setCellRendererTextVariant              ,


-- ** VariantSet
    CellRendererTextVariantSetPropertyInfo  ,
    constructCellRendererTextVariantSet     ,
    getCellRendererTextVariantSet           ,
    setCellRendererTextVariantSet           ,


-- ** Weight
    CellRendererTextWeightPropertyInfo      ,
    constructCellRendererTextWeight         ,
    getCellRendererTextWeight               ,
    setCellRendererTextWeight               ,


-- ** WeightSet
    CellRendererTextWeightSetPropertyInfo   ,
    constructCellRendererTextWeightSet      ,
    getCellRendererTextWeightSet            ,
    setCellRendererTextWeightSet            ,


-- ** WidthChars
    CellRendererTextWidthCharsPropertyInfo  ,
    constructCellRendererTextWidthChars     ,
    getCellRendererTextWidthChars           ,
    setCellRendererTextWidthChars           ,


-- ** WrapMode
    CellRendererTextWrapModePropertyInfo    ,
    constructCellRendererTextWrapMode       ,
    getCellRendererTextWrapMode             ,
    setCellRendererTextWrapMode             ,


-- ** WrapWidth
    CellRendererTextWrapWidthPropertyInfo   ,
    constructCellRendererTextWrapWidth      ,
    getCellRendererTextWrapWidth            ,
    setCellRendererTextWrapWidth            ,




 -- * Signals
-- ** Edited
    CellRendererTextEditedCallback          ,
    CellRendererTextEditedCallbackC         ,
    CellRendererTextEditedSignalInfo        ,
    afterCellRendererTextEdited             ,
    cellRendererTextEditedCallbackWrapper   ,
    cellRendererTextEditedClosure           ,
    mkCellRendererTextEditedCallback        ,
    noCellRendererTextEditedCallback        ,
    onCellRendererTextEdited                ,




    ) where

import Prelude ()
import Data.GI.Base.ShortPrelude

import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map

import GI.Gtk.Types
import GI.Gtk.Callbacks
import qualified GI.GObject as GObject
import qualified GI.Gdk as Gdk
import qualified GI.Pango as Pango

newtype CellRendererText = CellRendererText (ForeignPtr CellRendererText)
foreign import ccall "gtk_cell_renderer_text_get_type"
    c_gtk_cell_renderer_text_get_type :: IO GType

type instance ParentTypes CellRendererText = CellRendererTextParentTypes
type CellRendererTextParentTypes = '[CellRenderer, GObject.Object]

instance GObject CellRendererText where
    gobjectIsInitiallyUnowned _ = True
    gobjectType _ = c_gtk_cell_renderer_text_get_type
    

class GObject o => CellRendererTextK o
instance (GObject o, IsDescendantOf CellRendererText o) => CellRendererTextK o

toCellRendererText :: CellRendererTextK o => o -> IO CellRendererText
toCellRendererText = unsafeCastTo CellRendererText

noCellRendererText :: Maybe CellRendererText
noCellRendererText = Nothing

-- signal CellRendererText::edited
type CellRendererTextEditedCallback =
    T.Text ->
    T.Text ->
    IO ()

noCellRendererTextEditedCallback :: Maybe CellRendererTextEditedCallback
noCellRendererTextEditedCallback = Nothing

type CellRendererTextEditedCallbackC =
    Ptr () ->                               -- object
    CString ->
    CString ->
    Ptr () ->                               -- user_data
    IO ()

foreign import ccall "wrapper"
    mkCellRendererTextEditedCallback :: CellRendererTextEditedCallbackC -> IO (FunPtr CellRendererTextEditedCallbackC)

cellRendererTextEditedClosure :: CellRendererTextEditedCallback -> IO Closure
cellRendererTextEditedClosure cb = newCClosure =<< mkCellRendererTextEditedCallback wrapped
    where wrapped = cellRendererTextEditedCallbackWrapper cb

cellRendererTextEditedCallbackWrapper ::
    CellRendererTextEditedCallback ->
    Ptr () ->
    CString ->
    CString ->
    Ptr () ->
    IO ()
cellRendererTextEditedCallbackWrapper _cb _ path new_text _ = do
    path' <- cstringToText path
    new_text' <- cstringToText new_text
    _cb  path' new_text'

onCellRendererTextEdited :: (GObject a, MonadIO m) => a -> CellRendererTextEditedCallback -> m SignalHandlerId
onCellRendererTextEdited obj cb = liftIO $ connectCellRendererTextEdited obj cb SignalConnectBefore
afterCellRendererTextEdited :: (GObject a, MonadIO m) => a -> CellRendererTextEditedCallback -> m SignalHandlerId
afterCellRendererTextEdited obj cb = connectCellRendererTextEdited obj cb SignalConnectAfter

connectCellRendererTextEdited :: (GObject a, MonadIO m) =>
                                 a -> CellRendererTextEditedCallback -> SignalConnectMode -> m SignalHandlerId
connectCellRendererTextEdited obj cb after = liftIO $ do
    cb' <- mkCellRendererTextEditedCallback (cellRendererTextEditedCallbackWrapper cb)
    connectSignalFunPtr obj "edited" cb' after

-- VVV Prop "align-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextAlignSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextAlignSet obj = liftIO $ getObjectPropertyBool obj "align-set"

setCellRendererTextAlignSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextAlignSet obj val = liftIO $ setObjectPropertyBool obj "align-set" val

constructCellRendererTextAlignSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextAlignSet val = constructObjectPropertyBool "align-set" val

data CellRendererTextAlignSetPropertyInfo
instance AttrInfo CellRendererTextAlignSetPropertyInfo where
    type AttrAllowedOps CellRendererTextAlignSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextAlignSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextAlignSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextAlignSetPropertyInfo = Bool
    type AttrLabel CellRendererTextAlignSetPropertyInfo = "CellRendererText::align-set"
    attrGet _ = getCellRendererTextAlignSet
    attrSet _ = setCellRendererTextAlignSet
    attrConstruct _ = constructCellRendererTextAlignSet

-- VVV Prop "alignment"
   -- Type: TInterface "Pango" "Alignment"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextAlignment :: (MonadIO m, CellRendererTextK o) => o -> m Pango.Alignment
getCellRendererTextAlignment obj = liftIO $ getObjectPropertyEnum obj "alignment"

setCellRendererTextAlignment :: (MonadIO m, CellRendererTextK o) => o -> Pango.Alignment -> m ()
setCellRendererTextAlignment obj val = liftIO $ setObjectPropertyEnum obj "alignment" val

constructCellRendererTextAlignment :: Pango.Alignment -> IO ([Char], GValue)
constructCellRendererTextAlignment val = constructObjectPropertyEnum "alignment" val

data CellRendererTextAlignmentPropertyInfo
instance AttrInfo CellRendererTextAlignmentPropertyInfo where
    type AttrAllowedOps CellRendererTextAlignmentPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextAlignmentPropertyInfo = (~) Pango.Alignment
    type AttrBaseTypeConstraint CellRendererTextAlignmentPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextAlignmentPropertyInfo = Pango.Alignment
    type AttrLabel CellRendererTextAlignmentPropertyInfo = "CellRendererText::alignment"
    attrGet _ = getCellRendererTextAlignment
    attrSet _ = setCellRendererTextAlignment
    attrConstruct _ = constructCellRendererTextAlignment

-- VVV Prop "attributes"
   -- Type: TInterface "Pango" "AttrList"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextAttributes :: (MonadIO m, CellRendererTextK o) => o -> m Pango.AttrList
getCellRendererTextAttributes obj = liftIO $ getObjectPropertyBoxed obj "attributes" Pango.AttrList

setCellRendererTextAttributes :: (MonadIO m, CellRendererTextK o) => o -> Pango.AttrList -> m ()
setCellRendererTextAttributes obj val = liftIO $ setObjectPropertyBoxed obj "attributes" val

constructCellRendererTextAttributes :: Pango.AttrList -> IO ([Char], GValue)
constructCellRendererTextAttributes val = constructObjectPropertyBoxed "attributes" val

data CellRendererTextAttributesPropertyInfo
instance AttrInfo CellRendererTextAttributesPropertyInfo where
    type AttrAllowedOps CellRendererTextAttributesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextAttributesPropertyInfo = (~) Pango.AttrList
    type AttrBaseTypeConstraint CellRendererTextAttributesPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextAttributesPropertyInfo = Pango.AttrList
    type AttrLabel CellRendererTextAttributesPropertyInfo = "CellRendererText::attributes"
    attrGet _ = getCellRendererTextAttributes
    attrSet _ = setCellRendererTextAttributes
    attrConstruct _ = constructCellRendererTextAttributes

-- VVV Prop "background"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyWritable]

setCellRendererTextBackground :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextBackground obj val = liftIO $ setObjectPropertyString obj "background" val

constructCellRendererTextBackground :: T.Text -> IO ([Char], GValue)
constructCellRendererTextBackground val = constructObjectPropertyString "background" val

data CellRendererTextBackgroundPropertyInfo
instance AttrInfo CellRendererTextBackgroundPropertyInfo where
    type AttrAllowedOps CellRendererTextBackgroundPropertyInfo = '[ 'AttrSet, 'AttrConstruct]
    type AttrSetTypeConstraint CellRendererTextBackgroundPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextBackgroundPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextBackgroundPropertyInfo = ()
    type AttrLabel CellRendererTextBackgroundPropertyInfo = "CellRendererText::background"
    attrGet _ = undefined
    attrSet _ = setCellRendererTextBackground
    attrConstruct _ = constructCellRendererTextBackground

-- VVV Prop "background-gdk"
   -- Type: TInterface "Gdk" "Color"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextBackgroundGdk :: (MonadIO m, CellRendererTextK o) => o -> m Gdk.Color
getCellRendererTextBackgroundGdk obj = liftIO $ getObjectPropertyBoxed obj "background-gdk" Gdk.Color

setCellRendererTextBackgroundGdk :: (MonadIO m, CellRendererTextK o) => o -> Gdk.Color -> m ()
setCellRendererTextBackgroundGdk obj val = liftIO $ setObjectPropertyBoxed obj "background-gdk" val

constructCellRendererTextBackgroundGdk :: Gdk.Color -> IO ([Char], GValue)
constructCellRendererTextBackgroundGdk val = constructObjectPropertyBoxed "background-gdk" val

data CellRendererTextBackgroundGdkPropertyInfo
instance AttrInfo CellRendererTextBackgroundGdkPropertyInfo where
    type AttrAllowedOps CellRendererTextBackgroundGdkPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextBackgroundGdkPropertyInfo = (~) Gdk.Color
    type AttrBaseTypeConstraint CellRendererTextBackgroundGdkPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextBackgroundGdkPropertyInfo = Gdk.Color
    type AttrLabel CellRendererTextBackgroundGdkPropertyInfo = "CellRendererText::background-gdk"
    attrGet _ = getCellRendererTextBackgroundGdk
    attrSet _ = setCellRendererTextBackgroundGdk
    attrConstruct _ = constructCellRendererTextBackgroundGdk

-- VVV Prop "background-rgba"
   -- Type: TInterface "Gdk" "RGBA"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextBackgroundRgba :: (MonadIO m, CellRendererTextK o) => o -> m Gdk.RGBA
getCellRendererTextBackgroundRgba obj = liftIO $ getObjectPropertyBoxed obj "background-rgba" Gdk.RGBA

setCellRendererTextBackgroundRgba :: (MonadIO m, CellRendererTextK o) => o -> Gdk.RGBA -> m ()
setCellRendererTextBackgroundRgba obj val = liftIO $ setObjectPropertyBoxed obj "background-rgba" val

constructCellRendererTextBackgroundRgba :: Gdk.RGBA -> IO ([Char], GValue)
constructCellRendererTextBackgroundRgba val = constructObjectPropertyBoxed "background-rgba" val

data CellRendererTextBackgroundRgbaPropertyInfo
instance AttrInfo CellRendererTextBackgroundRgbaPropertyInfo where
    type AttrAllowedOps CellRendererTextBackgroundRgbaPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextBackgroundRgbaPropertyInfo = (~) Gdk.RGBA
    type AttrBaseTypeConstraint CellRendererTextBackgroundRgbaPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextBackgroundRgbaPropertyInfo = Gdk.RGBA
    type AttrLabel CellRendererTextBackgroundRgbaPropertyInfo = "CellRendererText::background-rgba"
    attrGet _ = getCellRendererTextBackgroundRgba
    attrSet _ = setCellRendererTextBackgroundRgba
    attrConstruct _ = constructCellRendererTextBackgroundRgba

-- VVV Prop "background-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextBackgroundSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextBackgroundSet obj = liftIO $ getObjectPropertyBool obj "background-set"

setCellRendererTextBackgroundSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextBackgroundSet obj val = liftIO $ setObjectPropertyBool obj "background-set" val

constructCellRendererTextBackgroundSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextBackgroundSet val = constructObjectPropertyBool "background-set" val

data CellRendererTextBackgroundSetPropertyInfo
instance AttrInfo CellRendererTextBackgroundSetPropertyInfo where
    type AttrAllowedOps CellRendererTextBackgroundSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextBackgroundSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextBackgroundSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextBackgroundSetPropertyInfo = Bool
    type AttrLabel CellRendererTextBackgroundSetPropertyInfo = "CellRendererText::background-set"
    attrGet _ = getCellRendererTextBackgroundSet
    attrSet _ = setCellRendererTextBackgroundSet
    attrConstruct _ = constructCellRendererTextBackgroundSet

-- VVV Prop "editable"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextEditable :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextEditable obj = liftIO $ getObjectPropertyBool obj "editable"

setCellRendererTextEditable :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextEditable obj val = liftIO $ setObjectPropertyBool obj "editable" val

constructCellRendererTextEditable :: Bool -> IO ([Char], GValue)
constructCellRendererTextEditable val = constructObjectPropertyBool "editable" val

data CellRendererTextEditablePropertyInfo
instance AttrInfo CellRendererTextEditablePropertyInfo where
    type AttrAllowedOps CellRendererTextEditablePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextEditablePropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextEditablePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextEditablePropertyInfo = Bool
    type AttrLabel CellRendererTextEditablePropertyInfo = "CellRendererText::editable"
    attrGet _ = getCellRendererTextEditable
    attrSet _ = setCellRendererTextEditable
    attrConstruct _ = constructCellRendererTextEditable

-- VVV Prop "editable-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextEditableSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextEditableSet obj = liftIO $ getObjectPropertyBool obj "editable-set"

setCellRendererTextEditableSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextEditableSet obj val = liftIO $ setObjectPropertyBool obj "editable-set" val

constructCellRendererTextEditableSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextEditableSet val = constructObjectPropertyBool "editable-set" val

data CellRendererTextEditableSetPropertyInfo
instance AttrInfo CellRendererTextEditableSetPropertyInfo where
    type AttrAllowedOps CellRendererTextEditableSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextEditableSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextEditableSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextEditableSetPropertyInfo = Bool
    type AttrLabel CellRendererTextEditableSetPropertyInfo = "CellRendererText::editable-set"
    attrGet _ = getCellRendererTextEditableSet
    attrSet _ = setCellRendererTextEditableSet
    attrConstruct _ = constructCellRendererTextEditableSet

-- VVV Prop "ellipsize"
   -- Type: TInterface "Pango" "EllipsizeMode"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextEllipsize :: (MonadIO m, CellRendererTextK o) => o -> m Pango.EllipsizeMode
getCellRendererTextEllipsize obj = liftIO $ getObjectPropertyEnum obj "ellipsize"

setCellRendererTextEllipsize :: (MonadIO m, CellRendererTextK o) => o -> Pango.EllipsizeMode -> m ()
setCellRendererTextEllipsize obj val = liftIO $ setObjectPropertyEnum obj "ellipsize" val

constructCellRendererTextEllipsize :: Pango.EllipsizeMode -> IO ([Char], GValue)
constructCellRendererTextEllipsize val = constructObjectPropertyEnum "ellipsize" val

data CellRendererTextEllipsizePropertyInfo
instance AttrInfo CellRendererTextEllipsizePropertyInfo where
    type AttrAllowedOps CellRendererTextEllipsizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextEllipsizePropertyInfo = (~) Pango.EllipsizeMode
    type AttrBaseTypeConstraint CellRendererTextEllipsizePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextEllipsizePropertyInfo = Pango.EllipsizeMode
    type AttrLabel CellRendererTextEllipsizePropertyInfo = "CellRendererText::ellipsize"
    attrGet _ = getCellRendererTextEllipsize
    attrSet _ = setCellRendererTextEllipsize
    attrConstruct _ = constructCellRendererTextEllipsize

-- VVV Prop "ellipsize-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextEllipsizeSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextEllipsizeSet obj = liftIO $ getObjectPropertyBool obj "ellipsize-set"

setCellRendererTextEllipsizeSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextEllipsizeSet obj val = liftIO $ setObjectPropertyBool obj "ellipsize-set" val

constructCellRendererTextEllipsizeSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextEllipsizeSet val = constructObjectPropertyBool "ellipsize-set" val

data CellRendererTextEllipsizeSetPropertyInfo
instance AttrInfo CellRendererTextEllipsizeSetPropertyInfo where
    type AttrAllowedOps CellRendererTextEllipsizeSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextEllipsizeSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextEllipsizeSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextEllipsizeSetPropertyInfo = Bool
    type AttrLabel CellRendererTextEllipsizeSetPropertyInfo = "CellRendererText::ellipsize-set"
    attrGet _ = getCellRendererTextEllipsizeSet
    attrSet _ = setCellRendererTextEllipsizeSet
    attrConstruct _ = constructCellRendererTextEllipsizeSet

-- VVV Prop "family"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextFamily :: (MonadIO m, CellRendererTextK o) => o -> m T.Text
getCellRendererTextFamily obj = liftIO $ getObjectPropertyString obj "family"

setCellRendererTextFamily :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextFamily obj val = liftIO $ setObjectPropertyString obj "family" val

constructCellRendererTextFamily :: T.Text -> IO ([Char], GValue)
constructCellRendererTextFamily val = constructObjectPropertyString "family" val

data CellRendererTextFamilyPropertyInfo
instance AttrInfo CellRendererTextFamilyPropertyInfo where
    type AttrAllowedOps CellRendererTextFamilyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextFamilyPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextFamilyPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextFamilyPropertyInfo = T.Text
    type AttrLabel CellRendererTextFamilyPropertyInfo = "CellRendererText::family"
    attrGet _ = getCellRendererTextFamily
    attrSet _ = setCellRendererTextFamily
    attrConstruct _ = constructCellRendererTextFamily

-- VVV Prop "family-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextFamilySet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextFamilySet obj = liftIO $ getObjectPropertyBool obj "family-set"

setCellRendererTextFamilySet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextFamilySet obj val = liftIO $ setObjectPropertyBool obj "family-set" val

constructCellRendererTextFamilySet :: Bool -> IO ([Char], GValue)
constructCellRendererTextFamilySet val = constructObjectPropertyBool "family-set" val

data CellRendererTextFamilySetPropertyInfo
instance AttrInfo CellRendererTextFamilySetPropertyInfo where
    type AttrAllowedOps CellRendererTextFamilySetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextFamilySetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextFamilySetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextFamilySetPropertyInfo = Bool
    type AttrLabel CellRendererTextFamilySetPropertyInfo = "CellRendererText::family-set"
    attrGet _ = getCellRendererTextFamilySet
    attrSet _ = setCellRendererTextFamilySet
    attrConstruct _ = constructCellRendererTextFamilySet

-- VVV Prop "font"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextFont :: (MonadIO m, CellRendererTextK o) => o -> m T.Text
getCellRendererTextFont obj = liftIO $ getObjectPropertyString obj "font"

setCellRendererTextFont :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextFont obj val = liftIO $ setObjectPropertyString obj "font" val

constructCellRendererTextFont :: T.Text -> IO ([Char], GValue)
constructCellRendererTextFont val = constructObjectPropertyString "font" val

data CellRendererTextFontPropertyInfo
instance AttrInfo CellRendererTextFontPropertyInfo where
    type AttrAllowedOps CellRendererTextFontPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextFontPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextFontPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextFontPropertyInfo = T.Text
    type AttrLabel CellRendererTextFontPropertyInfo = "CellRendererText::font"
    attrGet _ = getCellRendererTextFont
    attrSet _ = setCellRendererTextFont
    attrConstruct _ = constructCellRendererTextFont

-- VVV Prop "font-desc"
   -- Type: TInterface "Pango" "FontDescription"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextFontDesc :: (MonadIO m, CellRendererTextK o) => o -> m Pango.FontDescription
getCellRendererTextFontDesc obj = liftIO $ getObjectPropertyBoxed obj "font-desc" Pango.FontDescription

setCellRendererTextFontDesc :: (MonadIO m, CellRendererTextK o) => o -> Pango.FontDescription -> m ()
setCellRendererTextFontDesc obj val = liftIO $ setObjectPropertyBoxed obj "font-desc" val

constructCellRendererTextFontDesc :: Pango.FontDescription -> IO ([Char], GValue)
constructCellRendererTextFontDesc val = constructObjectPropertyBoxed "font-desc" val

data CellRendererTextFontDescPropertyInfo
instance AttrInfo CellRendererTextFontDescPropertyInfo where
    type AttrAllowedOps CellRendererTextFontDescPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextFontDescPropertyInfo = (~) Pango.FontDescription
    type AttrBaseTypeConstraint CellRendererTextFontDescPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextFontDescPropertyInfo = Pango.FontDescription
    type AttrLabel CellRendererTextFontDescPropertyInfo = "CellRendererText::font-desc"
    attrGet _ = getCellRendererTextFontDesc
    attrSet _ = setCellRendererTextFontDesc
    attrConstruct _ = constructCellRendererTextFontDesc

-- VVV Prop "foreground"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyWritable]

setCellRendererTextForeground :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextForeground obj val = liftIO $ setObjectPropertyString obj "foreground" val

constructCellRendererTextForeground :: T.Text -> IO ([Char], GValue)
constructCellRendererTextForeground val = constructObjectPropertyString "foreground" val

data CellRendererTextForegroundPropertyInfo
instance AttrInfo CellRendererTextForegroundPropertyInfo where
    type AttrAllowedOps CellRendererTextForegroundPropertyInfo = '[ 'AttrSet, 'AttrConstruct]
    type AttrSetTypeConstraint CellRendererTextForegroundPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextForegroundPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextForegroundPropertyInfo = ()
    type AttrLabel CellRendererTextForegroundPropertyInfo = "CellRendererText::foreground"
    attrGet _ = undefined
    attrSet _ = setCellRendererTextForeground
    attrConstruct _ = constructCellRendererTextForeground

-- VVV Prop "foreground-gdk"
   -- Type: TInterface "Gdk" "Color"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextForegroundGdk :: (MonadIO m, CellRendererTextK o) => o -> m Gdk.Color
getCellRendererTextForegroundGdk obj = liftIO $ getObjectPropertyBoxed obj "foreground-gdk" Gdk.Color

setCellRendererTextForegroundGdk :: (MonadIO m, CellRendererTextK o) => o -> Gdk.Color -> m ()
setCellRendererTextForegroundGdk obj val = liftIO $ setObjectPropertyBoxed obj "foreground-gdk" val

constructCellRendererTextForegroundGdk :: Gdk.Color -> IO ([Char], GValue)
constructCellRendererTextForegroundGdk val = constructObjectPropertyBoxed "foreground-gdk" val

data CellRendererTextForegroundGdkPropertyInfo
instance AttrInfo CellRendererTextForegroundGdkPropertyInfo where
    type AttrAllowedOps CellRendererTextForegroundGdkPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextForegroundGdkPropertyInfo = (~) Gdk.Color
    type AttrBaseTypeConstraint CellRendererTextForegroundGdkPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextForegroundGdkPropertyInfo = Gdk.Color
    type AttrLabel CellRendererTextForegroundGdkPropertyInfo = "CellRendererText::foreground-gdk"
    attrGet _ = getCellRendererTextForegroundGdk
    attrSet _ = setCellRendererTextForegroundGdk
    attrConstruct _ = constructCellRendererTextForegroundGdk

-- VVV Prop "foreground-rgba"
   -- Type: TInterface "Gdk" "RGBA"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextForegroundRgba :: (MonadIO m, CellRendererTextK o) => o -> m Gdk.RGBA
getCellRendererTextForegroundRgba obj = liftIO $ getObjectPropertyBoxed obj "foreground-rgba" Gdk.RGBA

setCellRendererTextForegroundRgba :: (MonadIO m, CellRendererTextK o) => o -> Gdk.RGBA -> m ()
setCellRendererTextForegroundRgba obj val = liftIO $ setObjectPropertyBoxed obj "foreground-rgba" val

constructCellRendererTextForegroundRgba :: Gdk.RGBA -> IO ([Char], GValue)
constructCellRendererTextForegroundRgba val = constructObjectPropertyBoxed "foreground-rgba" val

data CellRendererTextForegroundRgbaPropertyInfo
instance AttrInfo CellRendererTextForegroundRgbaPropertyInfo where
    type AttrAllowedOps CellRendererTextForegroundRgbaPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextForegroundRgbaPropertyInfo = (~) Gdk.RGBA
    type AttrBaseTypeConstraint CellRendererTextForegroundRgbaPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextForegroundRgbaPropertyInfo = Gdk.RGBA
    type AttrLabel CellRendererTextForegroundRgbaPropertyInfo = "CellRendererText::foreground-rgba"
    attrGet _ = getCellRendererTextForegroundRgba
    attrSet _ = setCellRendererTextForegroundRgba
    attrConstruct _ = constructCellRendererTextForegroundRgba

-- VVV Prop "foreground-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextForegroundSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextForegroundSet obj = liftIO $ getObjectPropertyBool obj "foreground-set"

setCellRendererTextForegroundSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextForegroundSet obj val = liftIO $ setObjectPropertyBool obj "foreground-set" val

constructCellRendererTextForegroundSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextForegroundSet val = constructObjectPropertyBool "foreground-set" val

data CellRendererTextForegroundSetPropertyInfo
instance AttrInfo CellRendererTextForegroundSetPropertyInfo where
    type AttrAllowedOps CellRendererTextForegroundSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextForegroundSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextForegroundSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextForegroundSetPropertyInfo = Bool
    type AttrLabel CellRendererTextForegroundSetPropertyInfo = "CellRendererText::foreground-set"
    attrGet _ = getCellRendererTextForegroundSet
    attrSet _ = setCellRendererTextForegroundSet
    attrConstruct _ = constructCellRendererTextForegroundSet

-- VVV Prop "language"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextLanguage :: (MonadIO m, CellRendererTextK o) => o -> m T.Text
getCellRendererTextLanguage obj = liftIO $ getObjectPropertyString obj "language"

setCellRendererTextLanguage :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextLanguage obj val = liftIO $ setObjectPropertyString obj "language" val

constructCellRendererTextLanguage :: T.Text -> IO ([Char], GValue)
constructCellRendererTextLanguage val = constructObjectPropertyString "language" val

data CellRendererTextLanguagePropertyInfo
instance AttrInfo CellRendererTextLanguagePropertyInfo where
    type AttrAllowedOps CellRendererTextLanguagePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextLanguagePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextLanguagePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextLanguagePropertyInfo = T.Text
    type AttrLabel CellRendererTextLanguagePropertyInfo = "CellRendererText::language"
    attrGet _ = getCellRendererTextLanguage
    attrSet _ = setCellRendererTextLanguage
    attrConstruct _ = constructCellRendererTextLanguage

-- VVV Prop "language-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextLanguageSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextLanguageSet obj = liftIO $ getObjectPropertyBool obj "language-set"

setCellRendererTextLanguageSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextLanguageSet obj val = liftIO $ setObjectPropertyBool obj "language-set" val

constructCellRendererTextLanguageSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextLanguageSet val = constructObjectPropertyBool "language-set" val

data CellRendererTextLanguageSetPropertyInfo
instance AttrInfo CellRendererTextLanguageSetPropertyInfo where
    type AttrAllowedOps CellRendererTextLanguageSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextLanguageSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextLanguageSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextLanguageSetPropertyInfo = Bool
    type AttrLabel CellRendererTextLanguageSetPropertyInfo = "CellRendererText::language-set"
    attrGet _ = getCellRendererTextLanguageSet
    attrSet _ = setCellRendererTextLanguageSet
    attrConstruct _ = constructCellRendererTextLanguageSet

-- VVV Prop "markup"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyWritable]

setCellRendererTextMarkup :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextMarkup obj val = liftIO $ setObjectPropertyString obj "markup" val

constructCellRendererTextMarkup :: T.Text -> IO ([Char], GValue)
constructCellRendererTextMarkup val = constructObjectPropertyString "markup" val

data CellRendererTextMarkupPropertyInfo
instance AttrInfo CellRendererTextMarkupPropertyInfo where
    type AttrAllowedOps CellRendererTextMarkupPropertyInfo = '[ 'AttrSet, 'AttrConstruct]
    type AttrSetTypeConstraint CellRendererTextMarkupPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextMarkupPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextMarkupPropertyInfo = ()
    type AttrLabel CellRendererTextMarkupPropertyInfo = "CellRendererText::markup"
    attrGet _ = undefined
    attrSet _ = setCellRendererTextMarkup
    attrConstruct _ = constructCellRendererTextMarkup

-- VVV Prop "max-width-chars"
   -- Type: TBasicType TInt32
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextMaxWidthChars :: (MonadIO m, CellRendererTextK o) => o -> m Int32
getCellRendererTextMaxWidthChars obj = liftIO $ getObjectPropertyCInt obj "max-width-chars"

setCellRendererTextMaxWidthChars :: (MonadIO m, CellRendererTextK o) => o -> Int32 -> m ()
setCellRendererTextMaxWidthChars obj val = liftIO $ setObjectPropertyCInt obj "max-width-chars" val

constructCellRendererTextMaxWidthChars :: Int32 -> IO ([Char], GValue)
constructCellRendererTextMaxWidthChars val = constructObjectPropertyCInt "max-width-chars" val

data CellRendererTextMaxWidthCharsPropertyInfo
instance AttrInfo CellRendererTextMaxWidthCharsPropertyInfo where
    type AttrAllowedOps CellRendererTextMaxWidthCharsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextMaxWidthCharsPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint CellRendererTextMaxWidthCharsPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextMaxWidthCharsPropertyInfo = Int32
    type AttrLabel CellRendererTextMaxWidthCharsPropertyInfo = "CellRendererText::max-width-chars"
    attrGet _ = getCellRendererTextMaxWidthChars
    attrSet _ = setCellRendererTextMaxWidthChars
    attrConstruct _ = constructCellRendererTextMaxWidthChars

-- VVV Prop "placeholder-text"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextPlaceholderText :: (MonadIO m, CellRendererTextK o) => o -> m T.Text
getCellRendererTextPlaceholderText obj = liftIO $ getObjectPropertyString obj "placeholder-text"

setCellRendererTextPlaceholderText :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextPlaceholderText obj val = liftIO $ setObjectPropertyString obj "placeholder-text" val

constructCellRendererTextPlaceholderText :: T.Text -> IO ([Char], GValue)
constructCellRendererTextPlaceholderText val = constructObjectPropertyString "placeholder-text" val

data CellRendererTextPlaceholderTextPropertyInfo
instance AttrInfo CellRendererTextPlaceholderTextPropertyInfo where
    type AttrAllowedOps CellRendererTextPlaceholderTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextPlaceholderTextPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextPlaceholderTextPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextPlaceholderTextPropertyInfo = T.Text
    type AttrLabel CellRendererTextPlaceholderTextPropertyInfo = "CellRendererText::placeholder-text"
    attrGet _ = getCellRendererTextPlaceholderText
    attrSet _ = setCellRendererTextPlaceholderText
    attrConstruct _ = constructCellRendererTextPlaceholderText

-- VVV Prop "rise"
   -- Type: TBasicType TInt32
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextRise :: (MonadIO m, CellRendererTextK o) => o -> m Int32
getCellRendererTextRise obj = liftIO $ getObjectPropertyCInt obj "rise"

setCellRendererTextRise :: (MonadIO m, CellRendererTextK o) => o -> Int32 -> m ()
setCellRendererTextRise obj val = liftIO $ setObjectPropertyCInt obj "rise" val

constructCellRendererTextRise :: Int32 -> IO ([Char], GValue)
constructCellRendererTextRise val = constructObjectPropertyCInt "rise" val

data CellRendererTextRisePropertyInfo
instance AttrInfo CellRendererTextRisePropertyInfo where
    type AttrAllowedOps CellRendererTextRisePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextRisePropertyInfo = (~) Int32
    type AttrBaseTypeConstraint CellRendererTextRisePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextRisePropertyInfo = Int32
    type AttrLabel CellRendererTextRisePropertyInfo = "CellRendererText::rise"
    attrGet _ = getCellRendererTextRise
    attrSet _ = setCellRendererTextRise
    attrConstruct _ = constructCellRendererTextRise

-- VVV Prop "rise-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextRiseSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextRiseSet obj = liftIO $ getObjectPropertyBool obj "rise-set"

setCellRendererTextRiseSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextRiseSet obj val = liftIO $ setObjectPropertyBool obj "rise-set" val

constructCellRendererTextRiseSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextRiseSet val = constructObjectPropertyBool "rise-set" val

data CellRendererTextRiseSetPropertyInfo
instance AttrInfo CellRendererTextRiseSetPropertyInfo where
    type AttrAllowedOps CellRendererTextRiseSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextRiseSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextRiseSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextRiseSetPropertyInfo = Bool
    type AttrLabel CellRendererTextRiseSetPropertyInfo = "CellRendererText::rise-set"
    attrGet _ = getCellRendererTextRiseSet
    attrSet _ = setCellRendererTextRiseSet
    attrConstruct _ = constructCellRendererTextRiseSet

-- VVV Prop "scale"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextScale :: (MonadIO m, CellRendererTextK o) => o -> m Double
getCellRendererTextScale obj = liftIO $ getObjectPropertyDouble obj "scale"

setCellRendererTextScale :: (MonadIO m, CellRendererTextK o) => o -> Double -> m ()
setCellRendererTextScale obj val = liftIO $ setObjectPropertyDouble obj "scale" val

constructCellRendererTextScale :: Double -> IO ([Char], GValue)
constructCellRendererTextScale val = constructObjectPropertyDouble "scale" val

data CellRendererTextScalePropertyInfo
instance AttrInfo CellRendererTextScalePropertyInfo where
    type AttrAllowedOps CellRendererTextScalePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextScalePropertyInfo = (~) Double
    type AttrBaseTypeConstraint CellRendererTextScalePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextScalePropertyInfo = Double
    type AttrLabel CellRendererTextScalePropertyInfo = "CellRendererText::scale"
    attrGet _ = getCellRendererTextScale
    attrSet _ = setCellRendererTextScale
    attrConstruct _ = constructCellRendererTextScale

-- VVV Prop "scale-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextScaleSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextScaleSet obj = liftIO $ getObjectPropertyBool obj "scale-set"

setCellRendererTextScaleSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextScaleSet obj val = liftIO $ setObjectPropertyBool obj "scale-set" val

constructCellRendererTextScaleSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextScaleSet val = constructObjectPropertyBool "scale-set" val

data CellRendererTextScaleSetPropertyInfo
instance AttrInfo CellRendererTextScaleSetPropertyInfo where
    type AttrAllowedOps CellRendererTextScaleSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextScaleSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextScaleSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextScaleSetPropertyInfo = Bool
    type AttrLabel CellRendererTextScaleSetPropertyInfo = "CellRendererText::scale-set"
    attrGet _ = getCellRendererTextScaleSet
    attrSet _ = setCellRendererTextScaleSet
    attrConstruct _ = constructCellRendererTextScaleSet

-- VVV Prop "single-paragraph-mode"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextSingleParagraphMode :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextSingleParagraphMode obj = liftIO $ getObjectPropertyBool obj "single-paragraph-mode"

setCellRendererTextSingleParagraphMode :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextSingleParagraphMode obj val = liftIO $ setObjectPropertyBool obj "single-paragraph-mode" val

constructCellRendererTextSingleParagraphMode :: Bool -> IO ([Char], GValue)
constructCellRendererTextSingleParagraphMode val = constructObjectPropertyBool "single-paragraph-mode" val

data CellRendererTextSingleParagraphModePropertyInfo
instance AttrInfo CellRendererTextSingleParagraphModePropertyInfo where
    type AttrAllowedOps CellRendererTextSingleParagraphModePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextSingleParagraphModePropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextSingleParagraphModePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextSingleParagraphModePropertyInfo = Bool
    type AttrLabel CellRendererTextSingleParagraphModePropertyInfo = "CellRendererText::single-paragraph-mode"
    attrGet _ = getCellRendererTextSingleParagraphMode
    attrSet _ = setCellRendererTextSingleParagraphMode
    attrConstruct _ = constructCellRendererTextSingleParagraphMode

-- VVV Prop "size"
   -- Type: TBasicType TInt32
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextSize :: (MonadIO m, CellRendererTextK o) => o -> m Int32
getCellRendererTextSize obj = liftIO $ getObjectPropertyCInt obj "size"

setCellRendererTextSize :: (MonadIO m, CellRendererTextK o) => o -> Int32 -> m ()
setCellRendererTextSize obj val = liftIO $ setObjectPropertyCInt obj "size" val

constructCellRendererTextSize :: Int32 -> IO ([Char], GValue)
constructCellRendererTextSize val = constructObjectPropertyCInt "size" val

data CellRendererTextSizePropertyInfo
instance AttrInfo CellRendererTextSizePropertyInfo where
    type AttrAllowedOps CellRendererTextSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextSizePropertyInfo = (~) Int32
    type AttrBaseTypeConstraint CellRendererTextSizePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextSizePropertyInfo = Int32
    type AttrLabel CellRendererTextSizePropertyInfo = "CellRendererText::size"
    attrGet _ = getCellRendererTextSize
    attrSet _ = setCellRendererTextSize
    attrConstruct _ = constructCellRendererTextSize

-- VVV Prop "size-points"
   -- Type: TBasicType TDouble
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextSizePoints :: (MonadIO m, CellRendererTextK o) => o -> m Double
getCellRendererTextSizePoints obj = liftIO $ getObjectPropertyDouble obj "size-points"

setCellRendererTextSizePoints :: (MonadIO m, CellRendererTextK o) => o -> Double -> m ()
setCellRendererTextSizePoints obj val = liftIO $ setObjectPropertyDouble obj "size-points" val

constructCellRendererTextSizePoints :: Double -> IO ([Char], GValue)
constructCellRendererTextSizePoints val = constructObjectPropertyDouble "size-points" val

data CellRendererTextSizePointsPropertyInfo
instance AttrInfo CellRendererTextSizePointsPropertyInfo where
    type AttrAllowedOps CellRendererTextSizePointsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextSizePointsPropertyInfo = (~) Double
    type AttrBaseTypeConstraint CellRendererTextSizePointsPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextSizePointsPropertyInfo = Double
    type AttrLabel CellRendererTextSizePointsPropertyInfo = "CellRendererText::size-points"
    attrGet _ = getCellRendererTextSizePoints
    attrSet _ = setCellRendererTextSizePoints
    attrConstruct _ = constructCellRendererTextSizePoints

-- VVV Prop "size-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextSizeSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextSizeSet obj = liftIO $ getObjectPropertyBool obj "size-set"

setCellRendererTextSizeSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextSizeSet obj val = liftIO $ setObjectPropertyBool obj "size-set" val

constructCellRendererTextSizeSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextSizeSet val = constructObjectPropertyBool "size-set" val

data CellRendererTextSizeSetPropertyInfo
instance AttrInfo CellRendererTextSizeSetPropertyInfo where
    type AttrAllowedOps CellRendererTextSizeSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextSizeSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextSizeSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextSizeSetPropertyInfo = Bool
    type AttrLabel CellRendererTextSizeSetPropertyInfo = "CellRendererText::size-set"
    attrGet _ = getCellRendererTextSizeSet
    attrSet _ = setCellRendererTextSizeSet
    attrConstruct _ = constructCellRendererTextSizeSet

-- VVV Prop "stretch"
   -- Type: TInterface "Pango" "Stretch"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextStretch :: (MonadIO m, CellRendererTextK o) => o -> m Pango.Stretch
getCellRendererTextStretch obj = liftIO $ getObjectPropertyEnum obj "stretch"

setCellRendererTextStretch :: (MonadIO m, CellRendererTextK o) => o -> Pango.Stretch -> m ()
setCellRendererTextStretch obj val = liftIO $ setObjectPropertyEnum obj "stretch" val

constructCellRendererTextStretch :: Pango.Stretch -> IO ([Char], GValue)
constructCellRendererTextStretch val = constructObjectPropertyEnum "stretch" val

data CellRendererTextStretchPropertyInfo
instance AttrInfo CellRendererTextStretchPropertyInfo where
    type AttrAllowedOps CellRendererTextStretchPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextStretchPropertyInfo = (~) Pango.Stretch
    type AttrBaseTypeConstraint CellRendererTextStretchPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextStretchPropertyInfo = Pango.Stretch
    type AttrLabel CellRendererTextStretchPropertyInfo = "CellRendererText::stretch"
    attrGet _ = getCellRendererTextStretch
    attrSet _ = setCellRendererTextStretch
    attrConstruct _ = constructCellRendererTextStretch

-- VVV Prop "stretch-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextStretchSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextStretchSet obj = liftIO $ getObjectPropertyBool obj "stretch-set"

setCellRendererTextStretchSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextStretchSet obj val = liftIO $ setObjectPropertyBool obj "stretch-set" val

constructCellRendererTextStretchSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextStretchSet val = constructObjectPropertyBool "stretch-set" val

data CellRendererTextStretchSetPropertyInfo
instance AttrInfo CellRendererTextStretchSetPropertyInfo where
    type AttrAllowedOps CellRendererTextStretchSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextStretchSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextStretchSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextStretchSetPropertyInfo = Bool
    type AttrLabel CellRendererTextStretchSetPropertyInfo = "CellRendererText::stretch-set"
    attrGet _ = getCellRendererTextStretchSet
    attrSet _ = setCellRendererTextStretchSet
    attrConstruct _ = constructCellRendererTextStretchSet

-- VVV Prop "strikethrough"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextStrikethrough :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextStrikethrough obj = liftIO $ getObjectPropertyBool obj "strikethrough"

setCellRendererTextStrikethrough :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextStrikethrough obj val = liftIO $ setObjectPropertyBool obj "strikethrough" val

constructCellRendererTextStrikethrough :: Bool -> IO ([Char], GValue)
constructCellRendererTextStrikethrough val = constructObjectPropertyBool "strikethrough" val

data CellRendererTextStrikethroughPropertyInfo
instance AttrInfo CellRendererTextStrikethroughPropertyInfo where
    type AttrAllowedOps CellRendererTextStrikethroughPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextStrikethroughPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextStrikethroughPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextStrikethroughPropertyInfo = Bool
    type AttrLabel CellRendererTextStrikethroughPropertyInfo = "CellRendererText::strikethrough"
    attrGet _ = getCellRendererTextStrikethrough
    attrSet _ = setCellRendererTextStrikethrough
    attrConstruct _ = constructCellRendererTextStrikethrough

-- VVV Prop "strikethrough-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextStrikethroughSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextStrikethroughSet obj = liftIO $ getObjectPropertyBool obj "strikethrough-set"

setCellRendererTextStrikethroughSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextStrikethroughSet obj val = liftIO $ setObjectPropertyBool obj "strikethrough-set" val

constructCellRendererTextStrikethroughSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextStrikethroughSet val = constructObjectPropertyBool "strikethrough-set" val

data CellRendererTextStrikethroughSetPropertyInfo
instance AttrInfo CellRendererTextStrikethroughSetPropertyInfo where
    type AttrAllowedOps CellRendererTextStrikethroughSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextStrikethroughSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextStrikethroughSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextStrikethroughSetPropertyInfo = Bool
    type AttrLabel CellRendererTextStrikethroughSetPropertyInfo = "CellRendererText::strikethrough-set"
    attrGet _ = getCellRendererTextStrikethroughSet
    attrSet _ = setCellRendererTextStrikethroughSet
    attrConstruct _ = constructCellRendererTextStrikethroughSet

-- VVV Prop "style"
   -- Type: TInterface "Pango" "Style"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextStyle :: (MonadIO m, CellRendererTextK o) => o -> m Pango.Style
getCellRendererTextStyle obj = liftIO $ getObjectPropertyEnum obj "style"

setCellRendererTextStyle :: (MonadIO m, CellRendererTextK o) => o -> Pango.Style -> m ()
setCellRendererTextStyle obj val = liftIO $ setObjectPropertyEnum obj "style" val

constructCellRendererTextStyle :: Pango.Style -> IO ([Char], GValue)
constructCellRendererTextStyle val = constructObjectPropertyEnum "style" val

data CellRendererTextStylePropertyInfo
instance AttrInfo CellRendererTextStylePropertyInfo where
    type AttrAllowedOps CellRendererTextStylePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextStylePropertyInfo = (~) Pango.Style
    type AttrBaseTypeConstraint CellRendererTextStylePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextStylePropertyInfo = Pango.Style
    type AttrLabel CellRendererTextStylePropertyInfo = "CellRendererText::style"
    attrGet _ = getCellRendererTextStyle
    attrSet _ = setCellRendererTextStyle
    attrConstruct _ = constructCellRendererTextStyle

-- VVV Prop "style-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextStyleSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextStyleSet obj = liftIO $ getObjectPropertyBool obj "style-set"

setCellRendererTextStyleSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextStyleSet obj val = liftIO $ setObjectPropertyBool obj "style-set" val

constructCellRendererTextStyleSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextStyleSet val = constructObjectPropertyBool "style-set" val

data CellRendererTextStyleSetPropertyInfo
instance AttrInfo CellRendererTextStyleSetPropertyInfo where
    type AttrAllowedOps CellRendererTextStyleSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextStyleSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextStyleSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextStyleSetPropertyInfo = Bool
    type AttrLabel CellRendererTextStyleSetPropertyInfo = "CellRendererText::style-set"
    attrGet _ = getCellRendererTextStyleSet
    attrSet _ = setCellRendererTextStyleSet
    attrConstruct _ = constructCellRendererTextStyleSet

-- VVV Prop "text"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextText :: (MonadIO m, CellRendererTextK o) => o -> m T.Text
getCellRendererTextText obj = liftIO $ getObjectPropertyString obj "text"

setCellRendererTextText :: (MonadIO m, CellRendererTextK o) => o -> T.Text -> m ()
setCellRendererTextText obj val = liftIO $ setObjectPropertyString obj "text" val

constructCellRendererTextText :: T.Text -> IO ([Char], GValue)
constructCellRendererTextText val = constructObjectPropertyString "text" val

data CellRendererTextTextPropertyInfo
instance AttrInfo CellRendererTextTextPropertyInfo where
    type AttrAllowedOps CellRendererTextTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextTextPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint CellRendererTextTextPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextTextPropertyInfo = T.Text
    type AttrLabel CellRendererTextTextPropertyInfo = "CellRendererText::text"
    attrGet _ = getCellRendererTextText
    attrSet _ = setCellRendererTextText
    attrConstruct _ = constructCellRendererTextText

-- VVV Prop "underline"
   -- Type: TInterface "Pango" "Underline"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextUnderline :: (MonadIO m, CellRendererTextK o) => o -> m Pango.Underline
getCellRendererTextUnderline obj = liftIO $ getObjectPropertyEnum obj "underline"

setCellRendererTextUnderline :: (MonadIO m, CellRendererTextK o) => o -> Pango.Underline -> m ()
setCellRendererTextUnderline obj val = liftIO $ setObjectPropertyEnum obj "underline" val

constructCellRendererTextUnderline :: Pango.Underline -> IO ([Char], GValue)
constructCellRendererTextUnderline val = constructObjectPropertyEnum "underline" val

data CellRendererTextUnderlinePropertyInfo
instance AttrInfo CellRendererTextUnderlinePropertyInfo where
    type AttrAllowedOps CellRendererTextUnderlinePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextUnderlinePropertyInfo = (~) Pango.Underline
    type AttrBaseTypeConstraint CellRendererTextUnderlinePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextUnderlinePropertyInfo = Pango.Underline
    type AttrLabel CellRendererTextUnderlinePropertyInfo = "CellRendererText::underline"
    attrGet _ = getCellRendererTextUnderline
    attrSet _ = setCellRendererTextUnderline
    attrConstruct _ = constructCellRendererTextUnderline

-- VVV Prop "underline-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextUnderlineSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextUnderlineSet obj = liftIO $ getObjectPropertyBool obj "underline-set"

setCellRendererTextUnderlineSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextUnderlineSet obj val = liftIO $ setObjectPropertyBool obj "underline-set" val

constructCellRendererTextUnderlineSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextUnderlineSet val = constructObjectPropertyBool "underline-set" val

data CellRendererTextUnderlineSetPropertyInfo
instance AttrInfo CellRendererTextUnderlineSetPropertyInfo where
    type AttrAllowedOps CellRendererTextUnderlineSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextUnderlineSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextUnderlineSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextUnderlineSetPropertyInfo = Bool
    type AttrLabel CellRendererTextUnderlineSetPropertyInfo = "CellRendererText::underline-set"
    attrGet _ = getCellRendererTextUnderlineSet
    attrSet _ = setCellRendererTextUnderlineSet
    attrConstruct _ = constructCellRendererTextUnderlineSet

-- VVV Prop "variant"
   -- Type: TInterface "Pango" "Variant"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextVariant :: (MonadIO m, CellRendererTextK o) => o -> m Pango.Variant
getCellRendererTextVariant obj = liftIO $ getObjectPropertyEnum obj "variant"

setCellRendererTextVariant :: (MonadIO m, CellRendererTextK o) => o -> Pango.Variant -> m ()
setCellRendererTextVariant obj val = liftIO $ setObjectPropertyEnum obj "variant" val

constructCellRendererTextVariant :: Pango.Variant -> IO ([Char], GValue)
constructCellRendererTextVariant val = constructObjectPropertyEnum "variant" val

data CellRendererTextVariantPropertyInfo
instance AttrInfo CellRendererTextVariantPropertyInfo where
    type AttrAllowedOps CellRendererTextVariantPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextVariantPropertyInfo = (~) Pango.Variant
    type AttrBaseTypeConstraint CellRendererTextVariantPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextVariantPropertyInfo = Pango.Variant
    type AttrLabel CellRendererTextVariantPropertyInfo = "CellRendererText::variant"
    attrGet _ = getCellRendererTextVariant
    attrSet _ = setCellRendererTextVariant
    attrConstruct _ = constructCellRendererTextVariant

-- VVV Prop "variant-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextVariantSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextVariantSet obj = liftIO $ getObjectPropertyBool obj "variant-set"

setCellRendererTextVariantSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextVariantSet obj val = liftIO $ setObjectPropertyBool obj "variant-set" val

constructCellRendererTextVariantSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextVariantSet val = constructObjectPropertyBool "variant-set" val

data CellRendererTextVariantSetPropertyInfo
instance AttrInfo CellRendererTextVariantSetPropertyInfo where
    type AttrAllowedOps CellRendererTextVariantSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextVariantSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextVariantSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextVariantSetPropertyInfo = Bool
    type AttrLabel CellRendererTextVariantSetPropertyInfo = "CellRendererText::variant-set"
    attrGet _ = getCellRendererTextVariantSet
    attrSet _ = setCellRendererTextVariantSet
    attrConstruct _ = constructCellRendererTextVariantSet

-- VVV Prop "weight"
   -- Type: TBasicType TInt32
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextWeight :: (MonadIO m, CellRendererTextK o) => o -> m Int32
getCellRendererTextWeight obj = liftIO $ getObjectPropertyCInt obj "weight"

setCellRendererTextWeight :: (MonadIO m, CellRendererTextK o) => o -> Int32 -> m ()
setCellRendererTextWeight obj val = liftIO $ setObjectPropertyCInt obj "weight" val

constructCellRendererTextWeight :: Int32 -> IO ([Char], GValue)
constructCellRendererTextWeight val = constructObjectPropertyCInt "weight" val

data CellRendererTextWeightPropertyInfo
instance AttrInfo CellRendererTextWeightPropertyInfo where
    type AttrAllowedOps CellRendererTextWeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextWeightPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint CellRendererTextWeightPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextWeightPropertyInfo = Int32
    type AttrLabel CellRendererTextWeightPropertyInfo = "CellRendererText::weight"
    attrGet _ = getCellRendererTextWeight
    attrSet _ = setCellRendererTextWeight
    attrConstruct _ = constructCellRendererTextWeight

-- VVV Prop "weight-set"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextWeightSet :: (MonadIO m, CellRendererTextK o) => o -> m Bool
getCellRendererTextWeightSet obj = liftIO $ getObjectPropertyBool obj "weight-set"

setCellRendererTextWeightSet :: (MonadIO m, CellRendererTextK o) => o -> Bool -> m ()
setCellRendererTextWeightSet obj val = liftIO $ setObjectPropertyBool obj "weight-set" val

constructCellRendererTextWeightSet :: Bool -> IO ([Char], GValue)
constructCellRendererTextWeightSet val = constructObjectPropertyBool "weight-set" val

data CellRendererTextWeightSetPropertyInfo
instance AttrInfo CellRendererTextWeightSetPropertyInfo where
    type AttrAllowedOps CellRendererTextWeightSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextWeightSetPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint CellRendererTextWeightSetPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextWeightSetPropertyInfo = Bool
    type AttrLabel CellRendererTextWeightSetPropertyInfo = "CellRendererText::weight-set"
    attrGet _ = getCellRendererTextWeightSet
    attrSet _ = setCellRendererTextWeightSet
    attrConstruct _ = constructCellRendererTextWeightSet

-- VVV Prop "width-chars"
   -- Type: TBasicType TInt32
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextWidthChars :: (MonadIO m, CellRendererTextK o) => o -> m Int32
getCellRendererTextWidthChars obj = liftIO $ getObjectPropertyCInt obj "width-chars"

setCellRendererTextWidthChars :: (MonadIO m, CellRendererTextK o) => o -> Int32 -> m ()
setCellRendererTextWidthChars obj val = liftIO $ setObjectPropertyCInt obj "width-chars" val

constructCellRendererTextWidthChars :: Int32 -> IO ([Char], GValue)
constructCellRendererTextWidthChars val = constructObjectPropertyCInt "width-chars" val

data CellRendererTextWidthCharsPropertyInfo
instance AttrInfo CellRendererTextWidthCharsPropertyInfo where
    type AttrAllowedOps CellRendererTextWidthCharsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextWidthCharsPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint CellRendererTextWidthCharsPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextWidthCharsPropertyInfo = Int32
    type AttrLabel CellRendererTextWidthCharsPropertyInfo = "CellRendererText::width-chars"
    attrGet _ = getCellRendererTextWidthChars
    attrSet _ = setCellRendererTextWidthChars
    attrConstruct _ = constructCellRendererTextWidthChars

-- VVV Prop "wrap-mode"
   -- Type: TInterface "Pango" "WrapMode"
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextWrapMode :: (MonadIO m, CellRendererTextK o) => o -> m Pango.WrapMode
getCellRendererTextWrapMode obj = liftIO $ getObjectPropertyEnum obj "wrap-mode"

setCellRendererTextWrapMode :: (MonadIO m, CellRendererTextK o) => o -> Pango.WrapMode -> m ()
setCellRendererTextWrapMode obj val = liftIO $ setObjectPropertyEnum obj "wrap-mode" val

constructCellRendererTextWrapMode :: Pango.WrapMode -> IO ([Char], GValue)
constructCellRendererTextWrapMode val = constructObjectPropertyEnum "wrap-mode" val

data CellRendererTextWrapModePropertyInfo
instance AttrInfo CellRendererTextWrapModePropertyInfo where
    type AttrAllowedOps CellRendererTextWrapModePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextWrapModePropertyInfo = (~) Pango.WrapMode
    type AttrBaseTypeConstraint CellRendererTextWrapModePropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextWrapModePropertyInfo = Pango.WrapMode
    type AttrLabel CellRendererTextWrapModePropertyInfo = "CellRendererText::wrap-mode"
    attrGet _ = getCellRendererTextWrapMode
    attrSet _ = setCellRendererTextWrapMode
    attrConstruct _ = constructCellRendererTextWrapMode

-- VVV Prop "wrap-width"
   -- Type: TBasicType TInt32
   -- Flags: [PropertyReadable,PropertyWritable]

getCellRendererTextWrapWidth :: (MonadIO m, CellRendererTextK o) => o -> m Int32
getCellRendererTextWrapWidth obj = liftIO $ getObjectPropertyCInt obj "wrap-width"

setCellRendererTextWrapWidth :: (MonadIO m, CellRendererTextK o) => o -> Int32 -> m ()
setCellRendererTextWrapWidth obj val = liftIO $ setObjectPropertyCInt obj "wrap-width" val

constructCellRendererTextWrapWidth :: Int32 -> IO ([Char], GValue)
constructCellRendererTextWrapWidth val = constructObjectPropertyCInt "wrap-width" val

data CellRendererTextWrapWidthPropertyInfo
instance AttrInfo CellRendererTextWrapWidthPropertyInfo where
    type AttrAllowedOps CellRendererTextWrapWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint CellRendererTextWrapWidthPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint CellRendererTextWrapWidthPropertyInfo = CellRendererTextK
    type AttrGetType CellRendererTextWrapWidthPropertyInfo = Int32
    type AttrLabel CellRendererTextWrapWidthPropertyInfo = "CellRendererText::wrap-width"
    attrGet _ = getCellRendererTextWrapWidth
    attrSet _ = setCellRendererTextWrapWidth
    attrConstruct _ = constructCellRendererTextWrapWidth

type instance AttributeList CellRendererText = CellRendererTextAttributeList
type CellRendererTextAttributeList = ('[ '("align-set", CellRendererTextAlignSetPropertyInfo), '("alignment", CellRendererTextAlignmentPropertyInfo), '("attributes", CellRendererTextAttributesPropertyInfo), '("background", CellRendererTextBackgroundPropertyInfo), '("background-gdk", CellRendererTextBackgroundGdkPropertyInfo), '("background-rgba", CellRendererTextBackgroundRgbaPropertyInfo), '("background-set", CellRendererTextBackgroundSetPropertyInfo), '("cell-background", CellRendererCellBackgroundPropertyInfo), '("cell-background-gdk", CellRendererCellBackgroundGdkPropertyInfo), '("cell-background-rgba", CellRendererCellBackgroundRgbaPropertyInfo), '("cell-background-set", CellRendererCellBackgroundSetPropertyInfo), '("editable", CellRendererTextEditablePropertyInfo), '("editable-set", CellRendererTextEditableSetPropertyInfo), '("editing", CellRendererEditingPropertyInfo), '("ellipsize", CellRendererTextEllipsizePropertyInfo), '("ellipsize-set", CellRendererTextEllipsizeSetPropertyInfo), '("family", CellRendererTextFamilyPropertyInfo), '("family-set", CellRendererTextFamilySetPropertyInfo), '("font", CellRendererTextFontPropertyInfo), '("font-desc", CellRendererTextFontDescPropertyInfo), '("foreground", CellRendererTextForegroundPropertyInfo), '("foreground-gdk", CellRendererTextForegroundGdkPropertyInfo), '("foreground-rgba", CellRendererTextForegroundRgbaPropertyInfo), '("foreground-set", CellRendererTextForegroundSetPropertyInfo), '("height", CellRendererHeightPropertyInfo), '("is-expanded", CellRendererIsExpandedPropertyInfo), '("is-expander", CellRendererIsExpanderPropertyInfo), '("language", CellRendererTextLanguagePropertyInfo), '("language-set", CellRendererTextLanguageSetPropertyInfo), '("markup", CellRendererTextMarkupPropertyInfo), '("max-width-chars", CellRendererTextMaxWidthCharsPropertyInfo), '("mode", CellRendererModePropertyInfo), '("placeholder-text", CellRendererTextPlaceholderTextPropertyInfo), '("rise", CellRendererTextRisePropertyInfo), '("rise-set", CellRendererTextRiseSetPropertyInfo), '("scale", CellRendererTextScalePropertyInfo), '("scale-set", CellRendererTextScaleSetPropertyInfo), '("sensitive", CellRendererSensitivePropertyInfo), '("single-paragraph-mode", CellRendererTextSingleParagraphModePropertyInfo), '("size", CellRendererTextSizePropertyInfo), '("size-points", CellRendererTextSizePointsPropertyInfo), '("size-set", CellRendererTextSizeSetPropertyInfo), '("stretch", CellRendererTextStretchPropertyInfo), '("stretch-set", CellRendererTextStretchSetPropertyInfo), '("strikethrough", CellRendererTextStrikethroughPropertyInfo), '("strikethrough-set", CellRendererTextStrikethroughSetPropertyInfo), '("style", CellRendererTextStylePropertyInfo), '("style-set", CellRendererTextStyleSetPropertyInfo), '("text", CellRendererTextTextPropertyInfo), '("underline", CellRendererTextUnderlinePropertyInfo), '("underline-set", CellRendererTextUnderlineSetPropertyInfo), '("variant", CellRendererTextVariantPropertyInfo), '("variant-set", CellRendererTextVariantSetPropertyInfo), '("visible", CellRendererVisiblePropertyInfo), '("weight", CellRendererTextWeightPropertyInfo), '("weight-set", CellRendererTextWeightSetPropertyInfo), '("width", CellRendererWidthPropertyInfo), '("width-chars", CellRendererTextWidthCharsPropertyInfo), '("wrap-mode", CellRendererTextWrapModePropertyInfo), '("wrap-width", CellRendererTextWrapWidthPropertyInfo), '("xalign", CellRendererXalignPropertyInfo), '("xpad", CellRendererXpadPropertyInfo), '("yalign", CellRendererYalignPropertyInfo), '("ypad", CellRendererYpadPropertyInfo)] :: [(Symbol, *)])

data CellRendererTextEditedSignalInfo
instance SignalInfo CellRendererTextEditedSignalInfo where
    type HaskellCallbackType CellRendererTextEditedSignalInfo = CellRendererTextEditedCallback
    connectSignal _ = connectCellRendererTextEdited

type instance SignalList CellRendererText = CellRendererTextSignalList
type CellRendererTextSignalList = ('[ '("edited", CellRendererTextEditedSignalInfo), '("editing-canceled", CellRendererEditingCanceledSignalInfo), '("editing-started", CellRendererEditingStartedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])

-- method CellRendererText::new
-- method type : Constructor
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TInterface "Gtk" "CellRendererText"
-- throws : False
-- Skip return : False

foreign import ccall "gtk_cell_renderer_text_new" gtk_cell_renderer_text_new :: 
    IO (Ptr CellRendererText)


cellRendererTextNew ::
    (MonadIO m) =>
    m CellRendererText
cellRendererTextNew  = liftIO $ do
    result <- gtk_cell_renderer_text_new
    checkUnexpectedReturnNULL "gtk_cell_renderer_text_new" result
    result' <- (newObject CellRendererText) result
    return result'

-- method CellRendererText::set_fixed_height_from_font
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "number_of_rows", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "number_of_rows", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False

foreign import ccall "gtk_cell_renderer_text_set_fixed_height_from_font" gtk_cell_renderer_text_set_fixed_height_from_font :: 
    Ptr CellRendererText ->                 -- _obj : TInterface "Gtk" "CellRendererText"
    Int32 ->                                -- number_of_rows : TBasicType TInt32
    IO ()


cellRendererTextSetFixedHeightFromFont ::
    (MonadIO m, CellRendererTextK a) =>
    a ->                                    -- _obj
    Int32 ->                                -- number_of_rows
    m ()
cellRendererTextSetFixedHeightFromFont _obj number_of_rows = liftIO $ do
    let _obj' = unsafeManagedPtrCastPtr _obj
    gtk_cell_renderer_text_set_fixed_height_from_font _obj' number_of_rows
    touchManagedPtr _obj
    return ()