| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
GI.Gtk.Declarative.Container.Patch
Description
This module implements the patch algorithm for containers.
Synopsis
- class IsContainer container child | container -> child where
- appendChild :: container -> child event -> Widget -> IO ()
- replaceChild :: container -> child event -> Int32 -> Widget -> Widget -> IO ()
- patchInContainer :: (IsWidget container, IsContainer container, Patchable child, IsContainer container child) => StateTree ContainerState container child event cs -> container -> Vector (child e1) -> Vector (child e2) -> IO (StateTree ContainerState container child event cs)
Documentation
class IsContainer container child | container -> child where Source #
Describes supported GTK+ containers and their specialized APIs for appending and replacing child widgets.
Methods
Arguments
| :: container | Container widget |
| -> child event | Declarative child widget |
| -> Widget | GTK child widget to append |
| -> IO () |
Append a child widget to the container.
Arguments
| :: container | Container widget |
| -> child event | Declarative child widget |
| -> Int32 | Index to replace at |
| -> Widget | Old GTK widget to replace |
| -> Widget | New GTK widget to replace with |
| -> IO () |
Replace the child widget at the given index in the container.
Instances
| IsContainer Grid GridChild Source # | |
| IsContainer MenuBar MenuItem Source # | |
| IsContainer Notebook Widget Source # | |
| IsContainer Paned Pane Source # | |
| IsContainer MenuShell MenuItem Source # | |
| IsContainer Menu MenuItem Source # | |
| IsContainer Box BoxChild Source # | |
| IsContainer ListBox (Bin ListBoxRow) Source # | |
Defined in GI.Gtk.Declarative.Container.ListBox Methods appendChild :: ListBox -> Bin ListBoxRow event -> Widget -> IO () Source # replaceChild :: ListBox -> Bin ListBoxRow event -> Int32 -> Widget -> Widget -> IO () Source # | |
patchInContainer :: (IsWidget container, IsContainer container, Patchable child, IsContainer container child) => StateTree ContainerState container child event cs -> container -> Vector (child e1) -> Vector (child e2) -> IO (StateTree ContainerState container child event cs) Source #
Patch all children in a container. This does not feature any ID checking, as seen in React, so reordering children in a container can produce many updates.