Gtk2HsContentsIndex
Graphics.UI.Gtk.ModelView.TreeModelSort
Portabilityportable (depends on GHC)
Stabilityprovisional
Maintainergtk2hs-users@lists.sourceforge.net
Contents
Detail
Class Hierarchy
Types
Constructors
Methods
Description
A TreeModel which makes an underlying tree model sortable
Synopsis
data TreeModelSort
class GObjectClass o => TreeModelSortClass o
castToTreeModelSort :: GObjectClass obj => obj -> TreeModelSort
toTreeModelSort :: TreeModelSortClass o => o -> TreeModelSort
treeModelSortNewWithModel :: TreeModelClass childModel => childModel -> IO TreeModelSort
treeModelSortGetModel :: TreeModelSortClass self => self -> IO TreeModel
treeModelSortConvertChildPathToPath :: TreeModelSortClass self => self -> TreePath -> IO TreePath
treeModelSortConvertPathToChildPath :: TreeModelSortClass self => self -> TreePath -> IO TreePath
treeModelSortConvertChildIterToIter :: TreeModelSortClass self => self -> TreeIter -> IO TreeIter
treeModelSortConvertIterToChildIter :: TreeModelSortClass self => self -> TreeIter -> IO TreeIter
treeModelSortResetDefaultSortFunc :: TreeModelSortClass self => self -> IO ()
treeModelSortClearCache :: TreeModelSortClass self => self -> IO ()
treeModelSortIterIsValid :: TreeModelSortClass self => self -> TreeIter -> IO Bool
Detail
The TreeModelSort is a model which implements the TreeSortable interface. It does not hold any data itself, but rather is created with a child model and proxies its data. It has identical column types to this child model, and the changes in the child are propagated. The primary purpose of this model is to provide a way to sort a different model without modifying it.
Class Hierarchy
 |  GObject
 |   +----TreeModelSort
 
Types
data TreeModelSort
show/hide Instances
class GObjectClass o => TreeModelSortClass o
show/hide Instances
castToTreeModelSort :: GObjectClass obj => obj -> TreeModelSort
toTreeModelSort :: TreeModelSortClass o => o -> TreeModelSort
Constructors
treeModelSortNewWithModel :: TreeModelClass childModel => childModel -> IO TreeModelSort
Creates a new TreeModelSort, that will be a sorted view of the given model.
Methods
treeModelSortGetModel :: TreeModelSortClass self => self -> IO TreeModel
Returns the underlying model the TreeModelSort is sorting.
treeModelSortConvertChildPathToPath :: TreeModelSortClass self => self -> TreePath -> IO TreePath

Converts the given path to a path relative to the given sorted model.

  • The given path points to a row in the child model. The returned path will point to the same row in the sorted model.
treeModelSortConvertPathToChildPath :: TreeModelSortClass self => self -> TreePath -> IO TreePath
Converts path in the sorted model to a path on the unsorted model on which the given TreeModelSort is based. That is, the given path points to a location in the given TreeModelSort. The returned path will point to the same location in the underlying unsorted model.
treeModelSortConvertChildIterToIter :: TreeModelSortClass self => self -> TreeIter -> IO TreeIter
Return an iterator in the sorted model that points to the row pointed to by the given iter from the unsorted model.
treeModelSortConvertIterToChildIter :: TreeModelSortClass self => self -> TreeIter -> IO TreeIter
Return an iterator in the unsorted model that points to the row pointed to by the given iter from the sorted model.
treeModelSortResetDefaultSortFunc :: TreeModelSortClass self => self -> IO ()
This resets the default sort function to be in the 'unsorted' state. That is, it is in the same order as the child model. It will re-sort the model to be in the same order as the child model only if the TreeModelSort is in 'unsorted' state.
treeModelSortClearCache :: TreeModelSortClass self => self -> IO ()

Clear the cache of unref'd iterators.

  • This function should almost never be called. It clears the TreeModelSort of any cached iterators that haven't been reffed with treeModelRefNode. This might be useful if the child model being sorted is static (and doesn't change often) and there has been a lot of unreffed access to nodes. As a side effect of this function, all unreffed iters will be invalid.
treeModelSortIterIsValid
:: TreeModelSortClass self
=> self
-> TreeIteriter - A TreeIter.
-> IO Boolreturns True if the iter is valid, False if the iter is invalid.

Checks if the given iter is a valid iter for this TreeModelSort.

  • WARNING: This function is slow. Only use it for debugging and/or testing purposes.
  • Available since Gtk+ version 2.2
Produced by Haddock version 0.8