gi-gtk-0.3.18.13: GI/Gtk/Objects/ListStore.hs
{- |
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.ListStore
(
-- * Exported types
ListStore(..) ,
ListStoreK ,
toListStore ,
noListStore ,
-- * Methods
-- ** listStoreAppend
ListStoreAppendMethodInfo ,
listStoreAppend ,
-- ** listStoreClear
ListStoreClearMethodInfo ,
listStoreClear ,
-- ** listStoreInsert
ListStoreInsertMethodInfo ,
listStoreInsert ,
-- ** listStoreInsertAfter
ListStoreInsertAfterMethodInfo ,
listStoreInsertAfter ,
-- ** listStoreInsertBefore
ListStoreInsertBeforeMethodInfo ,
listStoreInsertBefore ,
-- ** listStoreInsertWithValuesv
ListStoreInsertWithValuesvMethodInfo ,
listStoreInsertWithValuesv ,
-- ** listStoreIterIsValid
ListStoreIterIsValidMethodInfo ,
listStoreIterIsValid ,
-- ** listStoreMoveAfter
ListStoreMoveAfterMethodInfo ,
listStoreMoveAfter ,
-- ** listStoreMoveBefore
ListStoreMoveBeforeMethodInfo ,
listStoreMoveBefore ,
-- ** listStoreNew
listStoreNew ,
-- ** listStorePrepend
ListStorePrependMethodInfo ,
listStorePrepend ,
-- ** listStoreRemove
ListStoreRemoveMethodInfo ,
listStoreRemove ,
-- ** listStoreReorder
ListStoreReorderMethodInfo ,
listStoreReorder ,
-- ** listStoreSet
ListStoreSetMethodInfo ,
listStoreSet ,
-- ** listStoreSetColumnTypes
ListStoreSetColumnTypesMethodInfo ,
listStoreSetColumnTypes ,
-- ** listStoreSetValue
ListStoreSetValueMethodInfo ,
listStoreSetValue ,
-- ** listStoreSwap
ListStoreSwapMethodInfo ,
listStoreSwap ,
) 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
newtype ListStore = ListStore (ForeignPtr ListStore)
foreign import ccall "gtk_list_store_get_type"
c_gtk_list_store_get_type :: IO GType
type instance ParentTypes ListStore = ListStoreParentTypes
type ListStoreParentTypes = '[GObject.Object, Buildable, TreeDragDest, TreeDragSource, TreeModel, TreeSortable]
instance GObject ListStore where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_gtk_list_store_get_type
class GObject o => ListStoreK o
instance (GObject o, IsDescendantOf ListStore o) => ListStoreK o
toListStore :: ListStoreK o => o -> IO ListStore
toListStore = unsafeCastTo ListStore
noListStore :: Maybe ListStore
noListStore = Nothing
type family ResolveListStoreMethod (t :: Symbol) (o :: *) :: * where
ResolveListStoreMethod "addChild" o = BuildableAddChildMethodInfo
ResolveListStoreMethod "append" o = ListStoreAppendMethodInfo
ResolveListStoreMethod "bindProperty" o = GObject.ObjectBindPropertyMethodInfo
ResolveListStoreMethod "bindPropertyFull" o = GObject.ObjectBindPropertyFullMethodInfo
ResolveListStoreMethod "clear" o = ListStoreClearMethodInfo
ResolveListStoreMethod "constructChild" o = BuildableConstructChildMethodInfo
ResolveListStoreMethod "customFinished" o = BuildableCustomFinishedMethodInfo
ResolveListStoreMethod "customTagEnd" o = BuildableCustomTagEndMethodInfo
ResolveListStoreMethod "customTagStart" o = BuildableCustomTagStartMethodInfo
ResolveListStoreMethod "dragDataDelete" o = TreeDragSourceDragDataDeleteMethodInfo
ResolveListStoreMethod "dragDataGet" o = TreeDragSourceDragDataGetMethodInfo
ResolveListStoreMethod "dragDataReceived" o = TreeDragDestDragDataReceivedMethodInfo
ResolveListStoreMethod "filterNew" o = TreeModelFilterNewMethodInfo
ResolveListStoreMethod "forceFloating" o = GObject.ObjectForceFloatingMethodInfo
ResolveListStoreMethod "foreach" o = TreeModelForeachMethodInfo
ResolveListStoreMethod "freezeNotify" o = GObject.ObjectFreezeNotifyMethodInfo
ResolveListStoreMethod "hasDefaultSortFunc" o = TreeSortableHasDefaultSortFuncMethodInfo
ResolveListStoreMethod "insert" o = ListStoreInsertMethodInfo
ResolveListStoreMethod "insertAfter" o = ListStoreInsertAfterMethodInfo
ResolveListStoreMethod "insertBefore" o = ListStoreInsertBeforeMethodInfo
ResolveListStoreMethod "insertWithValuesv" o = ListStoreInsertWithValuesvMethodInfo
ResolveListStoreMethod "isFloating" o = GObject.ObjectIsFloatingMethodInfo
ResolveListStoreMethod "iterChildren" o = TreeModelIterChildrenMethodInfo
ResolveListStoreMethod "iterHasChild" o = TreeModelIterHasChildMethodInfo
ResolveListStoreMethod "iterIsValid" o = ListStoreIterIsValidMethodInfo
ResolveListStoreMethod "iterNChildren" o = TreeModelIterNChildrenMethodInfo
ResolveListStoreMethod "iterNext" o = TreeModelIterNextMethodInfo
ResolveListStoreMethod "iterNthChild" o = TreeModelIterNthChildMethodInfo
ResolveListStoreMethod "iterParent" o = TreeModelIterParentMethodInfo
ResolveListStoreMethod "iterPrevious" o = TreeModelIterPreviousMethodInfo
ResolveListStoreMethod "moveAfter" o = ListStoreMoveAfterMethodInfo
ResolveListStoreMethod "moveBefore" o = ListStoreMoveBeforeMethodInfo
ResolveListStoreMethod "notify" o = GObject.ObjectNotifyMethodInfo
ResolveListStoreMethod "notifyByPspec" o = GObject.ObjectNotifyByPspecMethodInfo
ResolveListStoreMethod "parserFinished" o = BuildableParserFinishedMethodInfo
ResolveListStoreMethod "prepend" o = ListStorePrependMethodInfo
ResolveListStoreMethod "ref" o = GObject.ObjectRefMethodInfo
ResolveListStoreMethod "refNode" o = TreeModelRefNodeMethodInfo
ResolveListStoreMethod "refSink" o = GObject.ObjectRefSinkMethodInfo
ResolveListStoreMethod "remove" o = ListStoreRemoveMethodInfo
ResolveListStoreMethod "reorder" o = ListStoreReorderMethodInfo
ResolveListStoreMethod "replaceData" o = GObject.ObjectReplaceDataMethodInfo
ResolveListStoreMethod "replaceQdata" o = GObject.ObjectReplaceQdataMethodInfo
ResolveListStoreMethod "rowChanged" o = TreeModelRowChangedMethodInfo
ResolveListStoreMethod "rowDeleted" o = TreeModelRowDeletedMethodInfo
ResolveListStoreMethod "rowDraggable" o = TreeDragSourceRowDraggableMethodInfo
ResolveListStoreMethod "rowDropPossible" o = TreeDragDestRowDropPossibleMethodInfo
ResolveListStoreMethod "rowHasChildToggled" o = TreeModelRowHasChildToggledMethodInfo
ResolveListStoreMethod "rowInserted" o = TreeModelRowInsertedMethodInfo
ResolveListStoreMethod "rowsReordered" o = TreeModelRowsReorderedMethodInfo
ResolveListStoreMethod "runDispose" o = GObject.ObjectRunDisposeMethodInfo
ResolveListStoreMethod "set" o = ListStoreSetMethodInfo
ResolveListStoreMethod "sortColumnChanged" o = TreeSortableSortColumnChangedMethodInfo
ResolveListStoreMethod "sortNewWithModel" o = TreeModelSortNewWithModelMethodInfo
ResolveListStoreMethod "stealData" o = GObject.ObjectStealDataMethodInfo
ResolveListStoreMethod "stealQdata" o = GObject.ObjectStealQdataMethodInfo
ResolveListStoreMethod "swap" o = ListStoreSwapMethodInfo
ResolveListStoreMethod "thawNotify" o = GObject.ObjectThawNotifyMethodInfo
ResolveListStoreMethod "unref" o = GObject.ObjectUnrefMethodInfo
ResolveListStoreMethod "unrefNode" o = TreeModelUnrefNodeMethodInfo
ResolveListStoreMethod "watchClosure" o = GObject.ObjectWatchClosureMethodInfo
ResolveListStoreMethod "getColumnType" o = TreeModelGetColumnTypeMethodInfo
ResolveListStoreMethod "getData" o = GObject.ObjectGetDataMethodInfo
ResolveListStoreMethod "getFlags" o = TreeModelGetFlagsMethodInfo
ResolveListStoreMethod "getInternalChild" o = BuildableGetInternalChildMethodInfo
ResolveListStoreMethod "getIter" o = TreeModelGetIterMethodInfo
ResolveListStoreMethod "getIterFirst" o = TreeModelGetIterFirstMethodInfo
ResolveListStoreMethod "getIterFromString" o = TreeModelGetIterFromStringMethodInfo
ResolveListStoreMethod "getNColumns" o = TreeModelGetNColumnsMethodInfo
ResolveListStoreMethod "getName" o = BuildableGetNameMethodInfo
ResolveListStoreMethod "getPath" o = TreeModelGetPathMethodInfo
ResolveListStoreMethod "getProperty" o = GObject.ObjectGetPropertyMethodInfo
ResolveListStoreMethod "getQdata" o = GObject.ObjectGetQdataMethodInfo
ResolveListStoreMethod "getSortColumnId" o = TreeSortableGetSortColumnIdMethodInfo
ResolveListStoreMethod "getStringFromIter" o = TreeModelGetStringFromIterMethodInfo
ResolveListStoreMethod "getValue" o = TreeModelGetValueMethodInfo
ResolveListStoreMethod "setBuildableProperty" o = BuildableSetBuildablePropertyMethodInfo
ResolveListStoreMethod "setColumnTypes" o = ListStoreSetColumnTypesMethodInfo
ResolveListStoreMethod "setData" o = GObject.ObjectSetDataMethodInfo
ResolveListStoreMethod "setDefaultSortFunc" o = TreeSortableSetDefaultSortFuncMethodInfo
ResolveListStoreMethod "setName" o = BuildableSetNameMethodInfo
ResolveListStoreMethod "setProperty" o = GObject.ObjectSetPropertyMethodInfo
ResolveListStoreMethod "setSortColumnId" o = TreeSortableSetSortColumnIdMethodInfo
ResolveListStoreMethod "setSortFunc" o = TreeSortableSetSortFuncMethodInfo
ResolveListStoreMethod "setValue" o = ListStoreSetValueMethodInfo
ResolveListStoreMethod l o = MethodResolutionFailed l o
instance (info ~ ResolveListStoreMethod t ListStore, MethodInfo info ListStore p) => IsLabelProxy t (ListStore -> p) where
fromLabelProxy _ = overloadedMethod (MethodProxy :: MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveListStoreMethod t ListStore, MethodInfo info ListStore p) => IsLabel t (ListStore -> p) where
fromLabel _ = overloadedMethod (MethodProxy :: MethodProxy info)
#endif
type instance AttributeList ListStore = ListStoreAttributeList
type ListStoreAttributeList = ('[ ] :: [(Symbol, *)])
type instance SignalList ListStore = ListStoreSignalList
type ListStoreSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("rowChanged", TreeModelRowChangedSignalInfo), '("rowDeleted", TreeModelRowDeletedSignalInfo), '("rowHasChildToggled", TreeModelRowHasChildToggledSignalInfo), '("rowInserted", TreeModelRowInsertedSignalInfo), '("sortColumnChanged", TreeSortableSortColumnChangedSignalInfo)] :: [(Symbol, *)])
-- method ListStore::new
-- method type : Constructor
-- Args : [Arg {argCName = "n_columns", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "types", argType = TCArray False (-1) 0 (TBasicType TGType), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : [Arg {argCName = "n_columns", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- returnType : TInterface "Gtk" "ListStore"
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_newv" gtk_list_store_newv ::
Int32 -> -- n_columns : TBasicType TInt32
Ptr CGType -> -- types : TCArray False (-1) 0 (TBasicType TGType)
IO (Ptr ListStore)
listStoreNew ::
(MonadIO m) =>
[GType] -- types
-> m ListStore -- result
listStoreNew types = liftIO $ do
let nColumns = fromIntegral $ length types
types' <- (packMapStorableArray gtypeToCGType) types
result <- gtk_list_store_newv nColumns types'
checkUnexpectedReturnNULL "gtk_list_store_newv" result
result' <- (wrapObject ListStore) result
freeMem types'
return result'
-- method ListStore::append
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_append" gtk_list_store_append ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
IO ()
listStoreAppend ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> m (TreeIter) -- result
listStoreAppend _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter)
gtk_list_store_append _obj' iter
iter' <- (wrapBoxed TreeIter) iter
touchManagedPtr _obj
return iter'
data ListStoreAppendMethodInfo
instance (signature ~ (m (TreeIter)), MonadIO m, ListStoreK a) => MethodInfo ListStoreAppendMethodInfo a signature where
overloadedMethod _ = listStoreAppend
-- method ListStore::clear
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_clear" gtk_list_store_clear ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
IO ()
listStoreClear ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> m () -- result
listStoreClear _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
gtk_list_store_clear _obj'
touchManagedPtr _obj
return ()
data ListStoreClearMethodInfo
instance (signature ~ (m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreClearMethodInfo a signature where
overloadedMethod _ = listStoreClear
-- method ListStore::insert
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_insert" gtk_list_store_insert ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Int32 -> -- position : TBasicType TInt32
IO ()
listStoreInsert ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> Int32 -- position
-> m (TreeIter) -- result
listStoreInsert _obj position = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter)
gtk_list_store_insert _obj' iter position
iter' <- (wrapBoxed TreeIter) iter
touchManagedPtr _obj
return iter'
data ListStoreInsertMethodInfo
instance (signature ~ (Int32 -> m (TreeIter)), MonadIO m, ListStoreK a) => MethodInfo ListStoreInsertMethodInfo a signature where
overloadedMethod _ = listStoreInsert
-- method ListStore::insert_after
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "sibling", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_insert_after" gtk_list_store_insert_after ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Ptr TreeIter -> -- sibling : TInterface "Gtk" "TreeIter"
IO ()
listStoreInsertAfter ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> Maybe (TreeIter) -- sibling
-> m (TreeIter) -- result
listStoreInsertAfter _obj sibling = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter)
maybeSibling <- case sibling of
Nothing -> return nullPtr
Just jSibling -> do
let jSibling' = unsafeManagedPtrGetPtr jSibling
return jSibling'
gtk_list_store_insert_after _obj' iter maybeSibling
iter' <- (wrapBoxed TreeIter) iter
touchManagedPtr _obj
whenJust sibling touchManagedPtr
return iter'
data ListStoreInsertAfterMethodInfo
instance (signature ~ (Maybe (TreeIter) -> m (TreeIter)), MonadIO m, ListStoreK a) => MethodInfo ListStoreInsertAfterMethodInfo a signature where
overloadedMethod _ = listStoreInsertAfter
-- method ListStore::insert_before
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "sibling", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_insert_before" gtk_list_store_insert_before ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Ptr TreeIter -> -- sibling : TInterface "Gtk" "TreeIter"
IO ()
listStoreInsertBefore ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> Maybe (TreeIter) -- sibling
-> m (TreeIter) -- result
listStoreInsertBefore _obj sibling = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter)
maybeSibling <- case sibling of
Nothing -> return nullPtr
Just jSibling -> do
let jSibling' = unsafeManagedPtrGetPtr jSibling
return jSibling'
gtk_list_store_insert_before _obj' iter maybeSibling
iter' <- (wrapBoxed TreeIter) iter
touchManagedPtr _obj
whenJust sibling touchManagedPtr
return iter'
data ListStoreInsertBeforeMethodInfo
instance (signature ~ (Maybe (TreeIter) -> m (TreeIter)), MonadIO m, ListStoreK a) => MethodInfo ListStoreInsertBeforeMethodInfo a signature where
overloadedMethod _ = listStoreInsertBefore
-- method ListStore::insert_with_valuesv
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing},Arg {argCName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "columns", argType = TCArray False (-1) 5 (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "values", argType = TCArray False (-1) 5 (TInterface "GObject" "Value"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_values", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : [Arg {argCName = "n_values", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_values", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_insert_with_valuesv" gtk_list_store_insert_with_valuesv ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Int32 -> -- position : TBasicType TInt32
Ptr Int32 -> -- columns : TCArray False (-1) 5 (TBasicType TInt32)
Ptr GValue -> -- values : TCArray False (-1) 5 (TInterface "GObject" "Value")
Int32 -> -- n_values : TBasicType TInt32
IO ()
listStoreInsertWithValuesv ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> Int32 -- position
-> [Int32] -- columns
-> [GValue] -- values
-> m (TreeIter) -- result
listStoreInsertWithValuesv _obj position columns values = liftIO $ do
let nValues = fromIntegral $ length values
let columns_expected_length_ = fromIntegral $ length columns
when (columns_expected_length_ /= nValues) $
error "Gtk.listStoreInsertWithValuesv : length of 'columns' does not agree with that of 'values'."
let _obj' = unsafeManagedPtrCastPtr _obj
iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter)
columns' <- packStorableArray columns
let values' = map unsafeManagedPtrGetPtr values
values'' <- packBlockArray 24 values'
gtk_list_store_insert_with_valuesv _obj' iter position columns' values'' nValues
iter' <- (wrapBoxed TreeIter) iter
touchManagedPtr _obj
mapM_ touchManagedPtr values
freeMem columns'
freeMem values''
return iter'
data ListStoreInsertWithValuesvMethodInfo
instance (signature ~ (Int32 -> [Int32] -> [GValue] -> m (TreeIter)), MonadIO m, ListStoreK a) => MethodInfo ListStoreInsertWithValuesvMethodInfo a signature where
overloadedMethod _ = listStoreInsertWithValuesv
-- method ListStore::iter_is_valid
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_iter_is_valid" gtk_list_store_iter_is_valid ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
IO CInt
listStoreIterIsValid ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> TreeIter -- iter
-> m Bool -- result
listStoreIterIsValid _obj iter = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let iter' = unsafeManagedPtrGetPtr iter
result <- gtk_list_store_iter_is_valid _obj' iter'
let result' = (/= 0) result
touchManagedPtr _obj
touchManagedPtr iter
return result'
data ListStoreIterIsValidMethodInfo
instance (signature ~ (TreeIter -> m Bool), MonadIO m, ListStoreK a) => MethodInfo ListStoreIterIsValidMethodInfo a signature where
overloadedMethod _ = listStoreIterIsValid
-- method ListStore::move_after
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "position", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_move_after" gtk_list_store_move_after ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Ptr TreeIter -> -- position : TInterface "Gtk" "TreeIter"
IO ()
listStoreMoveAfter ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> TreeIter -- iter
-> Maybe (TreeIter) -- position
-> m () -- result
listStoreMoveAfter _obj iter position = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let iter' = unsafeManagedPtrGetPtr iter
maybePosition <- case position of
Nothing -> return nullPtr
Just jPosition -> do
let jPosition' = unsafeManagedPtrGetPtr jPosition
return jPosition'
gtk_list_store_move_after _obj' iter' maybePosition
touchManagedPtr _obj
touchManagedPtr iter
whenJust position touchManagedPtr
return ()
data ListStoreMoveAfterMethodInfo
instance (signature ~ (TreeIter -> Maybe (TreeIter) -> m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreMoveAfterMethodInfo a signature where
overloadedMethod _ = listStoreMoveAfter
-- method ListStore::move_before
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "position", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_move_before" gtk_list_store_move_before ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Ptr TreeIter -> -- position : TInterface "Gtk" "TreeIter"
IO ()
listStoreMoveBefore ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> TreeIter -- iter
-> Maybe (TreeIter) -- position
-> m () -- result
listStoreMoveBefore _obj iter position = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let iter' = unsafeManagedPtrGetPtr iter
maybePosition <- case position of
Nothing -> return nullPtr
Just jPosition -> do
let jPosition' = unsafeManagedPtrGetPtr jPosition
return jPosition'
gtk_list_store_move_before _obj' iter' maybePosition
touchManagedPtr _obj
touchManagedPtr iter
whenJust position touchManagedPtr
return ()
data ListStoreMoveBeforeMethodInfo
instance (signature ~ (TreeIter -> Maybe (TreeIter) -> m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreMoveBeforeMethodInfo a signature where
overloadedMethod _ = listStoreMoveBefore
-- method ListStore::prepend
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = True, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_prepend" gtk_list_store_prepend ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
IO ()
listStorePrepend ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> m (TreeIter) -- result
listStorePrepend _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter)
gtk_list_store_prepend _obj' iter
iter' <- (wrapBoxed TreeIter) iter
touchManagedPtr _obj
return iter'
data ListStorePrependMethodInfo
instance (signature ~ (m (TreeIter)), MonadIO m, ListStoreK a) => MethodInfo ListStorePrependMethodInfo a signature where
overloadedMethod _ = listStorePrepend
-- method ListStore::remove
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_remove" gtk_list_store_remove ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
IO CInt
listStoreRemove ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> TreeIter -- iter
-> m Bool -- result
listStoreRemove _obj iter = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let iter' = unsafeManagedPtrGetPtr iter
result <- gtk_list_store_remove _obj' iter'
let result' = (/= 0) result
touchManagedPtr _obj
touchManagedPtr iter
return result'
data ListStoreRemoveMethodInfo
instance (signature ~ (TreeIter -> m Bool), MonadIO m, ListStoreK a) => MethodInfo ListStoreRemoveMethodInfo a signature where
overloadedMethod _ = listStoreRemove
-- method ListStore::reorder
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "new_order", argType = TCArray True (-1) (-1) (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_reorder" gtk_list_store_reorder ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr Int32 -> -- new_order : TCArray True (-1) (-1) (TBasicType TInt32)
IO ()
listStoreReorder ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> [Int32] -- newOrder
-> m () -- result
listStoreReorder _obj newOrder = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
newOrder' <- packZeroTerminatedStorableArray newOrder
gtk_list_store_reorder _obj' newOrder'
touchManagedPtr _obj
freeMem newOrder'
return ()
data ListStoreReorderMethodInfo
instance (signature ~ ([Int32] -> m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreReorderMethodInfo a signature where
overloadedMethod _ = listStoreReorder
-- method ListStore::set_column_types
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_columns", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "types", argType = TCArray False (-1) 1 (TBasicType TGType), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : [Arg {argCName = "n_columns", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_set_column_types" gtk_list_store_set_column_types ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Int32 -> -- n_columns : TBasicType TInt32
Ptr CGType -> -- types : TCArray False (-1) 1 (TBasicType TGType)
IO ()
listStoreSetColumnTypes ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> [GType] -- types
-> m () -- result
listStoreSetColumnTypes _obj types = liftIO $ do
let nColumns = fromIntegral $ length types
let _obj' = unsafeManagedPtrCastPtr _obj
types' <- (packMapStorableArray gtypeToCGType) types
gtk_list_store_set_column_types _obj' nColumns types'
touchManagedPtr _obj
freeMem types'
return ()
data ListStoreSetColumnTypesMethodInfo
instance (signature ~ ([GType] -> m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreSetColumnTypesMethodInfo a signature where
overloadedMethod _ = listStoreSetColumnTypes
-- method ListStore::set_value
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "column", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TInterface "GObject" "Value", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_set_value" gtk_list_store_set_value ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Int32 -> -- column : TBasicType TInt32
Ptr GValue -> -- value : TInterface "GObject" "Value"
IO ()
listStoreSetValue ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> TreeIter -- iter
-> Int32 -- column
-> GValue -- value
-> m () -- result
listStoreSetValue _obj iter column value = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let iter' = unsafeManagedPtrGetPtr iter
let value' = unsafeManagedPtrGetPtr value
gtk_list_store_set_value _obj' iter' column value'
touchManagedPtr _obj
touchManagedPtr iter
touchManagedPtr value
return ()
data ListStoreSetValueMethodInfo
instance (signature ~ (TreeIter -> Int32 -> GValue -> m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreSetValueMethodInfo a signature where
overloadedMethod _ = listStoreSetValue
-- method ListStore::set
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "columns", argType = TCArray False (-1) 4 (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "values", argType = TCArray False (-1) 4 (TInterface "GObject" "Value"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_values", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : [Arg {argCName = "n_values", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_values", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_set_valuesv" gtk_list_store_set_valuesv ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter"
Ptr Int32 -> -- columns : TCArray False (-1) 4 (TBasicType TInt32)
Ptr GValue -> -- values : TCArray False (-1) 4 (TInterface "GObject" "Value")
Int32 -> -- n_values : TBasicType TInt32
IO ()
listStoreSet ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> TreeIter -- iter
-> [Int32] -- columns
-> [GValue] -- values
-> m () -- result
listStoreSet _obj iter columns values = liftIO $ do
let nValues = fromIntegral $ length values
let columns_expected_length_ = fromIntegral $ length columns
when (columns_expected_length_ /= nValues) $
error "Gtk.listStoreSet : length of 'columns' does not agree with that of 'values'."
let _obj' = unsafeManagedPtrCastPtr _obj
let iter' = unsafeManagedPtrGetPtr iter
columns' <- packStorableArray columns
let values' = map unsafeManagedPtrGetPtr values
values'' <- packBlockArray 24 values'
gtk_list_store_set_valuesv _obj' iter' columns' values'' nValues
touchManagedPtr _obj
touchManagedPtr iter
mapM_ touchManagedPtr values
freeMem columns'
freeMem values''
return ()
data ListStoreSetMethodInfo
instance (signature ~ (TreeIter -> [Int32] -> [GValue] -> m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreSetMethodInfo a signature where
overloadedMethod _ = listStoreSet
-- method ListStore::swap
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "_obj", argType = TInterface "Gtk" "ListStore", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "a", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "b", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "gtk_list_store_swap" gtk_list_store_swap ::
Ptr ListStore -> -- _obj : TInterface "Gtk" "ListStore"
Ptr TreeIter -> -- a : TInterface "Gtk" "TreeIter"
Ptr TreeIter -> -- b : TInterface "Gtk" "TreeIter"
IO ()
listStoreSwap ::
(MonadIO m, ListStoreK a) =>
a -- _obj
-> TreeIter -- a
-> TreeIter -- b
-> m () -- result
listStoreSwap _obj a b = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let a' = unsafeManagedPtrGetPtr a
let b' = unsafeManagedPtrGetPtr b
gtk_list_store_swap _obj' a' b'
touchManagedPtr _obj
touchManagedPtr a
touchManagedPtr b
return ()
data ListStoreSwapMethodInfo
instance (signature ~ (TreeIter -> TreeIter -> m ()), MonadIO m, ListStoreK a) => MethodInfo ListStoreSwapMethodInfo a signature where
overloadedMethod _ = listStoreSwap