Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | None |
Language | Haskell2010 |
TreeListModel
is a ListModel
implementation that can expand rows
by creating new child list models on demand.
Synopsis
- newtype TreeListModel = TreeListModel (ManagedPtr TreeListModel)
- class (GObject o, IsDescendantOf TreeListModel o) => IsTreeListModel o
- toTreeListModel :: (MonadIO m, IsTreeListModel o) => o -> m TreeListModel
- noTreeListModel :: Maybe TreeListModel
- treeListModelGetAutoexpand :: (HasCallStack, MonadIO m, IsTreeListModel a) => a -> m Bool
- treeListModelGetChildRow :: (HasCallStack, MonadIO m, IsTreeListModel a) => a -> Word32 -> m (Maybe TreeListRow)
- treeListModelGetModel :: (HasCallStack, MonadIO m, IsTreeListModel a) => a -> m ListModel
- treeListModelGetPassthrough :: (HasCallStack, MonadIO m, IsTreeListModel a) => a -> m Bool
- treeListModelGetRow :: (HasCallStack, MonadIO m, IsTreeListModel a) => a -> Word32 -> m (Maybe TreeListRow)
- treeListModelSetAutoexpand :: (HasCallStack, MonadIO m, IsTreeListModel a) => a -> Bool -> m ()
- constructTreeListModelAutoexpand :: IsTreeListModel o => Bool -> IO (GValueConstruct o)
- getTreeListModelAutoexpand :: (MonadIO m, IsTreeListModel o) => o -> m Bool
- setTreeListModelAutoexpand :: (MonadIO m, IsTreeListModel o) => o -> Bool -> m ()
- getTreeListModelModel :: (MonadIO m, IsTreeListModel o) => o -> m ListModel
- constructTreeListModelPassthrough :: IsTreeListModel o => Bool -> IO (GValueConstruct o)
- getTreeListModelPassthrough :: (MonadIO m, IsTreeListModel o) => o -> m Bool
Exported types
newtype TreeListModel Source #
Memory-managed wrapper type.
Instances
Eq TreeListModel Source # | |
Defined in GI.Gtk.Objects.TreeListModel (==) :: TreeListModel -> TreeListModel -> Bool # (/=) :: TreeListModel -> TreeListModel -> Bool # | |
IsGValue TreeListModel Source # | Convert |
Defined in GI.Gtk.Objects.TreeListModel toGValue :: TreeListModel -> IO GValue # fromGValue :: GValue -> IO TreeListModel # | |
GObject TreeListModel Source # | |
Defined in GI.Gtk.Objects.TreeListModel gobjectType :: IO GType # | |
HasParentTypes TreeListModel Source # | |
Defined in GI.Gtk.Objects.TreeListModel | |
type ParentTypes TreeListModel Source # | |
Defined in GI.Gtk.Objects.TreeListModel |
class (GObject o, IsDescendantOf TreeListModel o) => IsTreeListModel o Source #
Type class for types which can be safely cast to TreeListModel
, for instance with toTreeListModel
.
Instances
(GObject o, IsDescendantOf TreeListModel o) => IsTreeListModel o Source # | |
Defined in GI.Gtk.Objects.TreeListModel |
toTreeListModel :: (MonadIO m, IsTreeListModel o) => o -> m TreeListModel Source #
Cast to TreeListModel
, for types for which this is known to be safe. For general casts, use castTo
.
noTreeListModel :: Maybe TreeListModel Source #
A convenience alias for Nothing
:: Maybe
TreeListModel
.
Methods
Overloaded methods
getAutoexpand
treeListModelGetAutoexpand Source #
:: (HasCallStack, MonadIO m, IsTreeListModel a) | |
=> a |
|
-> m Bool | Returns: |
Gets whether the model is set to automatically expand new rows
that get added. This can be either rows added by changes to the
underlying models or via gtk_tree_list_model_set_expanded()
.
getChildRow
treeListModelGetChildRow Source #
:: (HasCallStack, MonadIO m, IsTreeListModel a) | |
=> a |
|
-> Word32 |
|
-> m (Maybe TreeListRow) | Returns: the child in |
Gets the row item corresponding to the child at index position
for
self
's root model.
If position
is greater than the number of children in the root model,
Nothing
is returned.
Do not confuse this function with treeListModelGetRow
.
getModel
treeListModelGetModel Source #
:: (HasCallStack, MonadIO m, IsTreeListModel a) | |
=> a |
|
-> m ListModel | Returns: the root model |
Gets the root model that self
was created with.
getPassthrough
treeListModelGetPassthrough Source #
:: (HasCallStack, MonadIO m, IsTreeListModel a) | |
=> a |
|
-> m Bool | Returns: |
If this function returns False
, the ListModel
functions for self
return custom TreeListRow
objects. You need to call
treeListRowGetItem
on these objects to get the original
item.
If True
, the values of the child models are passed through in their
original state. You then need to call treeListModelGetRow
to get the custom GtkTreeListRows
.
getRow
:: (HasCallStack, MonadIO m, IsTreeListModel a) | |
=> a |
|
-> Word32 |
|
-> m (Maybe TreeListRow) | Returns: The row item |
Gets the row object for the given row. If position
is greater than
the number of items in self
, Nothing
is returned.
The row object can be used to expand and collapse rows as well as to inspect its position in the tree. See its documentation for details.
This row object is persistent and will refer to the current item as
long as the row is present in self
, independent of other rows being
added or removed.
If self
is set to not be passthrough, this function is equivalent
to calling g_list_model_get_item()
.
Do not confuse this function with treeListModelGetChildRow
.
setAutoexpand
treeListModelSetAutoexpand Source #
:: (HasCallStack, MonadIO m, IsTreeListModel a) | |
=> a |
|
-> Bool |
|
-> m () |
If set to True
, the model will recursively expand all rows that
get added to the model. This can be either rows added by changes
to the underlying models or via gtk_tree_list_model_set_expanded()
.
Properties
autoexpand
If all rows should be expanded by default
constructTreeListModelAutoexpand :: IsTreeListModel o => Bool -> IO (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “autoexpand
” property. This is rarely needed directly, but it is used by new
.
getTreeListModelAutoexpand :: (MonadIO m, IsTreeListModel o) => o -> m Bool Source #
Get the value of the “autoexpand
” property.
When overloading is enabled, this is equivalent to
get
treeListModel #autoexpand
setTreeListModelAutoexpand :: (MonadIO m, IsTreeListModel o) => o -> Bool -> m () Source #
Set the value of the “autoexpand
” property.
When overloading is enabled, this is equivalent to
set
treeListModel [ #autoexpand:=
value ]
model
The root model displayed
getTreeListModelModel :: (MonadIO m, IsTreeListModel o) => o -> m ListModel Source #
Get the value of the “model
” property.
When overloading is enabled, this is equivalent to
get
treeListModel #model
passthrough
If False
, the ListModel
functions for this object return custom
TreeListRow
objects.
If True
, the values of the child models are pass through unmodified.
constructTreeListModelPassthrough :: IsTreeListModel o => Bool -> IO (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “passthrough
” property. This is rarely needed directly, but it is used by new
.
getTreeListModelPassthrough :: (MonadIO m, IsTreeListModel o) => o -> m Bool Source #
Get the value of the “passthrough
” property.
When overloading is enabled, this is equivalent to
get
treeListModel #passthrough