cellLayoutSetDataFunction :: (MonadIO m,
                            IsCellLayout self,
                            IsCellRenderer cell,
                            IsTreeModel (model row),
                            IsTypedTreeModel model)
 => self
 -> cell   -- ^ @cell@ - A 'CellRenderer'.
 -> model row -- ^ @model@ - A model containing rows of type @row@.
 -> (row -> IO ()) -- ^ Function to set data on the cell renderer.
 -> m ()
cellLayoutSetDataFunction self cell model callback =
  cellLayoutSetDataFunc' self cell model $ \iter -> do
    row <- customStoreGetRow model iter
    callback row

-- | Install a function that looks up a row in the model and sets the
-- attributes of the 'CellRenderer' @cell@ using the row's content.
--
cellLayoutSetDataFunction :: (MonadIO m,
                            IsCellLayout self,
                            IsCellRenderer cell,
                            IsTreeModel (model row),
                            IsTypedTreeModel model)
 => self
 -> cell   -- ^ @cell@ - A 'CellRenderer'.
 -> model row -- ^ @model@ - A model containing rows of type @row@.
 -> (row -> IO ()) -- ^ Function to set data on the cell renderer.
 -> m ()
cellLayoutSetDataFunction self cell model callback =
  cellLayoutSetDataFunc' self cell model $ \iter -> do
    row <- customStoreGetRow model iter
    callback row

-- | Install a function that looks up a row in the model and sets the
-- attributes of the 'CellRenderer' @cell@ using the row's content.
--
cellLayoutSetDataFunction self cell model callback =
  cellLayoutSetDataFunc' self cell model $ \iter -> do
    row <- customStoreGetRow model iter
    callback row

-- | Install a function that looks up a row in the model and sets the
-- attributes of the 'CellRenderer' @cell@ using the row's content.
--