gtk-0.13.6: Binding to the Gtk+ graphical user interface library.

Maintainergtk2hs-users@lists.sourceforge.net
Stabilityprovisional
Portabilityportable (depends on GHC)
Safe HaskellNone
LanguageHaskell98

Graphics.UI.Gtk.ModelView.ListStore

Contents

Description

Standard model to store list data.

Synopsis

Types

Constructors

listStoreNew :: [a] -> IO (ListStore a) Source

Create a new TreeModel that contains a list of elements.

listStoreNewDND Source

Arguments

:: [a]

the initial content of the model

-> Maybe (DragSourceIface ListStore a)

an optional interface for drags

-> Maybe (DragDestIface ListStore a)

an optional interface to handle drops

-> IO (ListStore a)

the new model

Create a new TreeModel that contains a list of elements. In addition, specify two interfaces for drag and drop.

Implementation of Interfaces

listStoreDefaultDragSourceIface :: DragSourceIface ListStore row Source

Default drag functions for ListStore. These functions allow the rows of the model to serve as drag source. Any row is allowed to be dragged and the data set in the SelectionDataM object is set with treeSetRowDragData, i.e. it contains the model and the TreePath to the row.

listStoreDefaultDragDestIface :: DragDestIface ListStore row Source

Default drop functions for ListStore. These functions accept a row and insert the row into the new location if it is dragged into a tree view that uses the same model.

Methods

listStoreIterToIndex :: TreeIter -> Int Source

Convert a TreeIter to an an index into the ListStore. Note that this function merely extracts the second element of the TreeIter.

listStoreGetValue :: ListStore a -> Int -> IO a Source

Extract the value at the given index.

listStoreSafeGetValue :: ListStore a -> Int -> IO (Maybe a) Source

Extract the value at the given index.

listStoreSetValue :: ListStore a -> Int -> a -> IO () Source

Update the value at the given index. The index must exist.

listStoreToList :: ListStore a -> IO [a] Source

Extract all data from the store.

listStoreGetSize :: ListStore a -> IO Int Source

Query the number of elements in the store.

listStoreInsert :: ListStore a -> Int -> a -> IO () Source

Insert an element in front of the given element. The element is appended if the index is greater or equal to the size of the list.

listStorePrepend :: ListStore a -> a -> IO () Source

Prepend the element to the store.

listStoreAppend :: ListStore a -> a -> IO Int Source

Append an element to the store. Returns the index of the inserted element.

listStoreRemove :: ListStore a -> Int -> IO () Source

Remove the element at the given index.

listStoreClear :: ListStore a -> IO () Source

Empty the store.