| Stability | provisional |
|---|---|
| Portability | portable (depends on GHC) |
| Safe Haskell | None |
| Language | Haskell2010 |
Data.GI.Gtk.ModelView.TreeModel
Description
The tree interface used by TreeView.
Synopsis
- afterTreeModelRowChanged :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowChangedCallback -> m SignalHandlerId
- afterTreeModelRowDeleted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowDeletedCallback -> m SignalHandlerId
- afterTreeModelRowHasChildToggled :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowHasChildToggledCallback -> m SignalHandlerId
- afterTreeModelRowInserted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowInsertedCallback -> m SignalHandlerId
- genClosure_TreeModelRowChanged :: TreeModelRowChangedCallback -> IO Closure
- genClosure_TreeModelRowDeleted :: TreeModelRowDeletedCallback -> IO Closure
- genClosure_TreeModelRowHasChildToggled :: TreeModelRowHasChildToggledCallback -> IO Closure
- genClosure_TreeModelRowInserted :: TreeModelRowInsertedCallback -> IO Closure
- mk_TreeModelRowChangedCallback :: C_TreeModelRowChangedCallback -> IO (FunPtr C_TreeModelRowChangedCallback)
- mk_TreeModelRowDeletedCallback :: C_TreeModelRowDeletedCallback -> IO (FunPtr C_TreeModelRowDeletedCallback)
- mk_TreeModelRowHasChildToggledCallback :: C_TreeModelRowHasChildToggledCallback -> IO (FunPtr C_TreeModelRowHasChildToggledCallback)
- mk_TreeModelRowInsertedCallback :: C_TreeModelRowInsertedCallback -> IO (FunPtr C_TreeModelRowInsertedCallback)
- noTreeModel :: Maybe TreeModel
- noTreeModelRowChangedCallback :: Maybe TreeModelRowChangedCallback
- noTreeModelRowDeletedCallback :: Maybe TreeModelRowDeletedCallback
- noTreeModelRowHasChildToggledCallback :: Maybe TreeModelRowHasChildToggledCallback
- noTreeModelRowInsertedCallback :: Maybe TreeModelRowInsertedCallback
- onTreeModelRowChanged :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowChangedCallback -> m SignalHandlerId
- onTreeModelRowDeleted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowDeletedCallback -> m SignalHandlerId
- onTreeModelRowHasChildToggled :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowHasChildToggledCallback -> m SignalHandlerId
- onTreeModelRowInserted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowInsertedCallback -> m SignalHandlerId
- toTreeModel :: (MonadIO m, IsTreeModel o) => o -> m TreeModel
- treeModelFilterNew :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreePath -> m TreeModel
- treeModelForeach :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeModelForeachFunc -> m ()
- treeModelGetColumnType :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Int32 -> m GType
- treeModelGetFlags :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m [TreeModelFlags]
- treeModelGetIterFirst :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m (Bool, TreeIter)
- treeModelGetIterFromString :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Text -> m (Bool, TreeIter)
- treeModelGetNColumns :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m Int32
- treeModelGetPath :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m TreePath
- treeModelGetStringFromIter :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Text
- treeModelIterChildren :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreeIter -> m (Bool, TreeIter)
- treeModelIterHasChild :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Bool
- treeModelIterNChildren :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreeIter -> m Int32
- treeModelIterNext :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Bool
- treeModelIterNthChild :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreeIter -> Int32 -> m (Bool, TreeIter)
- treeModelIterParent :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m (Bool, TreeIter)
- treeModelIterPrevious :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Bool
- treeModelRefNode :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m ()
- treeModelRowChanged :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> TreeIter -> m ()
- treeModelRowDeleted :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> m ()
- treeModelRowHasChildToggled :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> TreeIter -> m ()
- treeModelRowInserted :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> TreeIter -> m ()
- treeModelRowsReordered :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> Maybe TreeIter -> [Int32] -> m ()
- treeModelSortNewWithModel :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m TreeModel
- treeModelUnrefNode :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m ()
- wrap_TreeModelRowChangedCallback :: TreeModelRowChangedCallback -> C_TreeModelRowChangedCallback
- wrap_TreeModelRowDeletedCallback :: TreeModelRowDeletedCallback -> C_TreeModelRowDeletedCallback
- wrap_TreeModelRowHasChildToggledCallback :: TreeModelRowHasChildToggledCallback -> C_TreeModelRowHasChildToggledCallback
- wrap_TreeModelRowInsertedCallback :: TreeModelRowInsertedCallback -> C_TreeModelRowInsertedCallback
- type C_TreeModelRowChangedCallback = Ptr () -> Ptr TreePath -> Ptr TreeIter -> Ptr () -> IO ()
- type C_TreeModelRowDeletedCallback = Ptr () -> Ptr TreePath -> Ptr () -> IO ()
- type C_TreeModelRowHasChildToggledCallback = Ptr () -> Ptr TreePath -> Ptr TreeIter -> Ptr () -> IO ()
- type C_TreeModelRowInsertedCallback = Ptr () -> Ptr TreePath -> Ptr TreeIter -> Ptr () -> IO ()
- class GObject o => IsTreeModel o
- newtype TreeModel = TreeModel (ManagedPtr TreeModel)
- data TreeModelFilterNewMethodInfo
- data TreeModelForeachMethodInfo
- data TreeModelGetColumnTypeMethodInfo
- data TreeModelGetFlagsMethodInfo
- data TreeModelGetIterFirstMethodInfo
- data TreeModelGetIterFromStringMethodInfo
- data TreeModelGetIterMethodInfo
- data TreeModelGetNColumnsMethodInfo
- data TreeModelGetPathMethodInfo
- data TreeModelGetStringFromIterMethodInfo
- data TreeModelGetValueMethodInfo
- data TreeModelIterChildrenMethodInfo
- data TreeModelIterHasChildMethodInfo
- data TreeModelIterNChildrenMethodInfo
- data TreeModelIterNextMethodInfo
- data TreeModelIterNthChildMethodInfo
- data TreeModelIterParentMethodInfo
- data TreeModelIterPreviousMethodInfo
- data TreeModelRefNodeMethodInfo
- type TreeModelRowChangedCallback = TreePath -> TreeIter -> IO ()
- data TreeModelRowChangedMethodInfo
- data TreeModelRowChangedSignalInfo
- type TreeModelRowDeletedCallback = TreePath -> IO ()
- data TreeModelRowDeletedMethodInfo
- data TreeModelRowDeletedSignalInfo
- type TreeModelRowHasChildToggledCallback = TreePath -> TreeIter -> IO ()
- data TreeModelRowHasChildToggledMethodInfo
- data TreeModelRowHasChildToggledSignalInfo
- type TreeModelRowInsertedCallback = TreePath -> TreeIter -> IO ()
- data TreeModelRowInsertedMethodInfo
- data TreeModelRowInsertedSignalInfo
- data TreeModelRowsReorderedMethodInfo
- data TreeModelSortNewWithModelMethodInfo
- data TreeModelUnrefNodeMethodInfo
- data ColumnId row ty
- makeColumnIdInt :: Int32 -> ColumnId row Int32
- makeColumnIdBool :: Int32 -> ColumnId row Bool
- makeColumnIdString :: Int32 -> ColumnId row Text
- makeColumnIdPixbuf :: Int32 -> ColumnId row Pixbuf
- invalidColumnId :: ColumnId row ty
- columnIdToNumber :: ColumnId row ty -> Int32
- stringToTreePath :: Text -> [Int32]
- treeModelGetValue :: IsTreeModel self => self -> TreeIter -> ColumnId row ty -> IO ty
- treeModelGetIter :: (MonadIO m, IsTreeModel model) => model -> TreePath -> m (Maybe TreeIter)
Detail
The TreeModel interface defines a generic storage object for use by the
TreeView and similar widgets. Specifically, the functions in defined here
are used by Gtk's widgets to access the stored data. Thus, rather than
calling these functions, an application programmer has to implement them.
While the module Data.GI.Gtk.ModelView.CustomStore provides the
necessary functions to implement the TreeMode interface, it is often
sufficient to use the wo implementations that come with gi-gtk-hs, namely are
ListStore and TreeStore.
The model is represented as a hierarchical tree of values. It is important to note that this interface only provides a way of examining a model and observing changes. The implementation of each individual model decides how and if changes are made.
Two generic models are provided that implement the TreeModel interface:
the TreeStore and the ListStore. To use these, the developer simply
inserts data into these models as necessary. These models provide the data
structure as well as the TreeModel interface. In fact, they implement
other interfaces, making drag and drop and storing data trivial.
A TreeModel stores records of the same type. Each record is referred to
as row, just like in a relational database. Defining how the information of
a row is displayed can be done in two ways: If the widget displays data
using CellRenderer or one of its
derivatives, it is possible to state how a row is mapped to the attributes
of a renderer using the
cellLayoutSetAttributes function.
Some widgets do not use
CellRenderers to display their
data. In this case an extraction function can be defined that maps a row to
one of a few basic types (like Strings or Ints). This extraction
function is associated with a ColumnId using
treeModelSetColumn. The latter can
be set in the widget for the property that should be set. The widget then
uses the function treeModelGetValue and the ColumnId to extract the
value from the model. As the name suggests, using ColumnIds creates a
view of the data as if each row were divided into a well-defined set of
columns, again, like a relational database.
Models are accessed on a node level of granularity. There are two index
types used to reference a particular node in a model. They are the
TreePath and the TreeIter. Most of the interface consists of operations
on a TreeIter.
A path is essentially a potential node. It is a location on a model that
may or may not actually correspond to a node on a specific model. A
TreePath is in fact a synonym for a list of Ints and hence are easy to
manipulate. Each number refers to the offset at that level. Thus, the path
[0] refers to the root node and the path [2,4] refers to the fifth
child of the third node.
By contrast, a TreeIter is a reference to a specific node on a specific
model. It is an abstract data type filled in by the model. One can convert
a path to an iterator by calling treeModelGetIter. These iterators are
the primary way of accessing a model and are similar to the iterators used
by TextBuffer. The model interface defines a set of operations using them
for navigating the model. Iterators are expected to always be valid for as
long as the model is unchanged (and doesn't emit a signal).
Class Hierarchy
| GInterface | +----TreeModel | +--------TypedTreeModel
afterTreeModelRowChanged :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowChangedCallback -> m SignalHandlerId #
afterTreeModelRowDeleted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowDeletedCallback -> m SignalHandlerId #
afterTreeModelRowHasChildToggled :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowHasChildToggledCallback -> m SignalHandlerId #
afterTreeModelRowInserted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowInsertedCallback -> m SignalHandlerId #
mk_TreeModelRowChangedCallback :: C_TreeModelRowChangedCallback -> IO (FunPtr C_TreeModelRowChangedCallback) #
mk_TreeModelRowDeletedCallback :: C_TreeModelRowDeletedCallback -> IO (FunPtr C_TreeModelRowDeletedCallback) #
mk_TreeModelRowHasChildToggledCallback :: C_TreeModelRowHasChildToggledCallback -> IO (FunPtr C_TreeModelRowHasChildToggledCallback) #
mk_TreeModelRowInsertedCallback :: C_TreeModelRowInsertedCallback -> IO (FunPtr C_TreeModelRowInsertedCallback) #
onTreeModelRowChanged :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowChangedCallback -> m SignalHandlerId #
onTreeModelRowDeleted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowDeletedCallback -> m SignalHandlerId #
onTreeModelRowHasChildToggled :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowHasChildToggledCallback -> m SignalHandlerId #
onTreeModelRowInserted :: (IsTreeModel a, MonadIO m) => a -> TreeModelRowInsertedCallback -> m SignalHandlerId #
toTreeModel :: (MonadIO m, IsTreeModel o) => o -> m TreeModel #
treeModelFilterNew :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreePath -> m TreeModel #
treeModelForeach :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeModelForeachFunc -> m () #
treeModelGetColumnType :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Int32 -> m GType #
treeModelGetFlags :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m [TreeModelFlags] #
treeModelGetIterFirst :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m (Bool, TreeIter) #
treeModelGetIterFromString :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Text -> m (Bool, TreeIter) #
treeModelGetNColumns :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m Int32 #
treeModelGetPath :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m TreePath #
treeModelGetStringFromIter :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Text #
treeModelIterChildren :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreeIter -> m (Bool, TreeIter) #
treeModelIterHasChild :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Bool #
treeModelIterNChildren :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreeIter -> m Int32 #
treeModelIterNext :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Bool #
treeModelIterNthChild :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> Maybe TreeIter -> Int32 -> m (Bool, TreeIter) #
treeModelIterParent :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m (Bool, TreeIter) #
treeModelIterPrevious :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m Bool #
treeModelRefNode :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m () #
treeModelRowChanged :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> TreeIter -> m () #
treeModelRowDeleted :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> m () #
treeModelRowHasChildToggled :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> TreeIter -> m () #
treeModelRowInserted :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> TreeIter -> m () #
treeModelRowsReordered :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreePath -> Maybe TreeIter -> [Int32] -> m () #
treeModelSortNewWithModel :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> m TreeModel #
treeModelUnrefNode :: (HasCallStack, MonadIO m, IsTreeModel a) => a -> TreeIter -> m () #
wrap_TreeModelRowHasChildToggledCallback :: TreeModelRowHasChildToggledCallback -> C_TreeModelRowHasChildToggledCallback #
wrap_TreeModelRowInsertedCallback :: TreeModelRowInsertedCallback -> C_TreeModelRowInsertedCallback #
type C_TreeModelRowHasChildToggledCallback = Ptr () -> Ptr TreePath -> Ptr TreeIter -> Ptr () -> IO () #
class GObject o => IsTreeModel o #
Instances
| (GObject a, (UnknownAncestorError TreeModel a :: Constraint)) => IsTreeModel a | |
Defined in GI.Gtk.Interfaces.TreeModel | |
| IsTreeModel TreeModel | |
Defined in GI.Gtk.Interfaces.TreeModel | |
| IsTreeModel TreeSortable | |
Defined in GI.Gtk.Interfaces.TreeSortable | |
| IsTreeModel ListStore | |
Defined in GI.Gtk.Objects.ListStore | |
| IsTreeModel TreeModelFilter | |
Defined in GI.Gtk.Objects.TreeModelFilter | |
| IsTreeModel TreeModelSort | |
Defined in GI.Gtk.Objects.TreeModelSort | |
| IsTreeModel TreeStore | |
Defined in GI.Gtk.Objects.TreeStore | |
| IsTreeModel (TypedTreeModelSort row) Source # | |
Defined in Data.GI.Gtk.ModelView.Types | |
| IsTreeModel (SeqStore a) Source # | |
Defined in Data.GI.Gtk.ModelView.SeqStore | |
| IsTreeModel (ForestStore a) Source # | |
Defined in Data.GI.Gtk.ModelView.ForestStore | |
| IsTreeModel (CustomStore private row) Source # | |
Defined in Data.GI.Gtk.ModelView.CustomStore | |
Constructors
| TreeModel (ManagedPtr TreeModel) |
Instances
| GObject TreeModel | |
Defined in GI.Gtk.Interfaces.TreeModel Methods gobjectType :: TreeModel -> IO GType # | |
| IsTreeModel TreeModel | |
Defined in GI.Gtk.Interfaces.TreeModel | |
| IsObject TreeModel | |
Defined in GI.Gtk.Interfaces.TreeModel | |
| (info ~ ResolveTreeModelMethod t TreeModel, MethodInfo info TreeModel p) => IsLabel t (TreeModel -> p) | |
Defined in GI.Gtk.Interfaces.TreeModel | |
| (info ~ ResolveTreeModelMethod t TreeModel, MethodInfo info TreeModel p) => IsLabelProxy t (TreeModel -> p) | |
Defined in GI.Gtk.Interfaces.TreeModel Methods fromLabelProxy :: Proxy t -> TreeModel -> p # | |
| HasAttributeList TreeModel | |
Defined in GI.Gtk.Interfaces.TreeModel | |
| type AttributeList TreeModel | |
Defined in GI.Gtk.Interfaces.TreeModel | |
| type SignalList TreeModel | |
Defined in GI.Gtk.Interfaces.TreeModel | |
data TreeModelFilterNewMethodInfo #
Instances
| (signature ~ (Maybe TreePath -> m TreeModel), MonadIO m, IsTreeModel a) => MethodInfo TreeModelFilterNewMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelFilterNewMethodInfo -> a -> signature # | |
data TreeModelForeachMethodInfo #
Instances
| (signature ~ (TreeModelForeachFunc -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelForeachMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelForeachMethodInfo -> a -> signature # | |
data TreeModelGetColumnTypeMethodInfo #
Instances
| (signature ~ (Int32 -> m GType), MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetColumnTypeMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetColumnTypeMethodInfo -> a -> signature # | |
data TreeModelGetFlagsMethodInfo #
Instances
| (signature ~ m [TreeModelFlags], MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetFlagsMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetFlagsMethodInfo -> a -> signature # | |
data TreeModelGetIterFirstMethodInfo #
Instances
| (signature ~ m (Bool, TreeIter), MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetIterFirstMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetIterFirstMethodInfo -> a -> signature # | |
data TreeModelGetIterFromStringMethodInfo #
Instances
| (signature ~ (Text -> m (Bool, TreeIter)), MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetIterFromStringMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetIterFromStringMethodInfo -> a -> signature # | |
data TreeModelGetIterMethodInfo #
Instances
| (signature ~ (TreePath -> m (Bool, TreeIter)), MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetIterMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetIterMethodInfo -> a -> signature # | |
data TreeModelGetNColumnsMethodInfo #
Instances
| (signature ~ m Int32, MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetNColumnsMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetNColumnsMethodInfo -> a -> signature # | |
data TreeModelGetPathMethodInfo #
Instances
| (signature ~ (TreeIter -> m TreePath), MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetPathMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetPathMethodInfo -> a -> signature # | |
data TreeModelGetStringFromIterMethodInfo #
Instances
| (signature ~ (TreeIter -> m Text), MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetStringFromIterMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetStringFromIterMethodInfo -> a -> signature # | |
data TreeModelGetValueMethodInfo #
Instances
| (signature ~ (TreeIter -> Int32 -> m GValue), MonadIO m, IsTreeModel a) => MethodInfo TreeModelGetValueMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelGetValueMethodInfo -> a -> signature # | |
data TreeModelIterChildrenMethodInfo #
Instances
| (signature ~ (Maybe TreeIter -> m (Bool, TreeIter)), MonadIO m, IsTreeModel a) => MethodInfo TreeModelIterChildrenMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelIterChildrenMethodInfo -> a -> signature # | |
data TreeModelIterHasChildMethodInfo #
Instances
| (signature ~ (TreeIter -> m Bool), MonadIO m, IsTreeModel a) => MethodInfo TreeModelIterHasChildMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelIterHasChildMethodInfo -> a -> signature # | |
data TreeModelIterNChildrenMethodInfo #
Instances
| (signature ~ (Maybe TreeIter -> m Int32), MonadIO m, IsTreeModel a) => MethodInfo TreeModelIterNChildrenMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelIterNChildrenMethodInfo -> a -> signature # | |
data TreeModelIterNextMethodInfo #
Instances
| (signature ~ (TreeIter -> m Bool), MonadIO m, IsTreeModel a) => MethodInfo TreeModelIterNextMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelIterNextMethodInfo -> a -> signature # | |
data TreeModelIterNthChildMethodInfo #
Instances
| (signature ~ (Maybe TreeIter -> Int32 -> m (Bool, TreeIter)), MonadIO m, IsTreeModel a) => MethodInfo TreeModelIterNthChildMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelIterNthChildMethodInfo -> a -> signature # | |
data TreeModelIterParentMethodInfo #
Instances
| (signature ~ (TreeIter -> m (Bool, TreeIter)), MonadIO m, IsTreeModel a) => MethodInfo TreeModelIterParentMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelIterParentMethodInfo -> a -> signature # | |
data TreeModelIterPreviousMethodInfo #
Instances
| (signature ~ (TreeIter -> m Bool), MonadIO m, IsTreeModel a) => MethodInfo TreeModelIterPreviousMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelIterPreviousMethodInfo -> a -> signature # | |
data TreeModelRefNodeMethodInfo #
Instances
| (signature ~ (TreeIter -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelRefNodeMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelRefNodeMethodInfo -> a -> signature # | |
type TreeModelRowChangedCallback = TreePath -> TreeIter -> IO () #
data TreeModelRowChangedMethodInfo #
Instances
| (signature ~ (TreePath -> TreeIter -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelRowChangedMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelRowChangedMethodInfo -> a -> signature # | |
data TreeModelRowChangedSignalInfo #
Instances
| SignalInfo TreeModelRowChangedSignalInfo | |
Defined in GI.Gtk.Interfaces.TreeModel Associated Types type HaskellCallbackType TreeModelRowChangedSignalInfo :: Type # Methods connectSignal :: GObject o => SignalProxy o TreeModelRowChangedSignalInfo -> o -> HaskellCallbackType TreeModelRowChangedSignalInfo -> SignalConnectMode -> IO SignalHandlerId # | |
| type HaskellCallbackType TreeModelRowChangedSignalInfo | |
type TreeModelRowDeletedCallback = TreePath -> IO () #
data TreeModelRowDeletedMethodInfo #
Instances
| (signature ~ (TreePath -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelRowDeletedMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelRowDeletedMethodInfo -> a -> signature # | |
data TreeModelRowDeletedSignalInfo #
Instances
| SignalInfo TreeModelRowDeletedSignalInfo | |
Defined in GI.Gtk.Interfaces.TreeModel Associated Types type HaskellCallbackType TreeModelRowDeletedSignalInfo :: Type # Methods connectSignal :: GObject o => SignalProxy o TreeModelRowDeletedSignalInfo -> o -> HaskellCallbackType TreeModelRowDeletedSignalInfo -> SignalConnectMode -> IO SignalHandlerId # | |
| type HaskellCallbackType TreeModelRowDeletedSignalInfo | |
type TreeModelRowHasChildToggledCallback = TreePath -> TreeIter -> IO () #
data TreeModelRowHasChildToggledMethodInfo #
Instances
| (signature ~ (TreePath -> TreeIter -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelRowHasChildToggledMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelRowHasChildToggledMethodInfo -> a -> signature # | |
data TreeModelRowHasChildToggledSignalInfo #
Instances
| SignalInfo TreeModelRowHasChildToggledSignalInfo | |
Defined in GI.Gtk.Interfaces.TreeModel Associated Types type HaskellCallbackType TreeModelRowHasChildToggledSignalInfo :: Type # Methods connectSignal :: GObject o => SignalProxy o TreeModelRowHasChildToggledSignalInfo -> o -> HaskellCallbackType TreeModelRowHasChildToggledSignalInfo -> SignalConnectMode -> IO SignalHandlerId # | |
| type HaskellCallbackType TreeModelRowHasChildToggledSignalInfo | |
type TreeModelRowInsertedCallback = TreePath -> TreeIter -> IO () #
data TreeModelRowInsertedMethodInfo #
Instances
| (signature ~ (TreePath -> TreeIter -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelRowInsertedMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelRowInsertedMethodInfo -> a -> signature # | |
data TreeModelRowInsertedSignalInfo #
Instances
| SignalInfo TreeModelRowInsertedSignalInfo | |
Defined in GI.Gtk.Interfaces.TreeModel Associated Types type HaskellCallbackType TreeModelRowInsertedSignalInfo :: Type # Methods connectSignal :: GObject o => SignalProxy o TreeModelRowInsertedSignalInfo -> o -> HaskellCallbackType TreeModelRowInsertedSignalInfo -> SignalConnectMode -> IO SignalHandlerId # | |
| type HaskellCallbackType TreeModelRowInsertedSignalInfo | |
data TreeModelRowsReorderedMethodInfo #
Instances
| (signature ~ (TreePath -> Maybe TreeIter -> [Int32] -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelRowsReorderedMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelRowsReorderedMethodInfo -> a -> signature # | |
data TreeModelSortNewWithModelMethodInfo #
Instances
| (signature ~ m TreeModel, MonadIO m, IsTreeModel a) => MethodInfo TreeModelSortNewWithModelMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelSortNewWithModelMethodInfo -> a -> signature # | |
data TreeModelUnrefNodeMethodInfo #
Instances
| (signature ~ (TreeIter -> m ()), MonadIO m, IsTreeModel a) => MethodInfo TreeModelUnrefNodeMethodInfo a signature | |
Defined in GI.Gtk.Interfaces.TreeModel Methods overloadedMethod :: MethodProxy TreeModelUnrefNodeMethodInfo -> a -> signature # | |
Constructors
invalidColumnId :: ColumnId row ty Source #
The invalid ColumnId. Widgets use this value if no column id has
been set.
Methods
stringToTreePath :: Text -> [Int32] Source #
Convert a comma or colon separated string into a TreePath. Any
non-digit characters are assumed to separate indices, thus, the function
always is always successful.
Arguments
| :: IsTreeModel self | |
| => self | |
| -> TreeIter | |
| -> ColumnId row ty |
|
| -> IO ty |
Read the value of at a specific column and TreeIter.
treeModelGetIter :: (MonadIO m, IsTreeModel model) => model -> TreePath -> m (Maybe TreeIter) Source #
Gets the a TreeIter or Nothing if the path is invalid or empty