| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
GI.Gtk.Declarative.Patch
Description
The central patching type class of this library.
Documentation
A possible action to take on an existing Widget, decided by the
patch method when comparing declarative widgets.
Constructors
| Modify (IO SomeState) | An |
| Replace (IO SomeState) | Replace the current |
| Keep | Do nothing, i.e. keep the |
class Patchable widget where Source #
A patchable widget is one that can create an underlying GTK widget, or
calculate a Patch to be applied to an existing GTK widget that was
previously created.
Methods
create :: widget e -> IO SomeState Source #
Given a declarative widget that is Patchable, return an IO action that
can create a new corresponding Widget. The created widget should be
use in corresponding patch modifications, until it is replaced.
patch :: SomeState -> widget e1 -> widget e2 -> Patch Source #
Given two declarative widgets of the same widget type (but not
necessarily of the same event types,) calculate a Patch.
Instances
| Patchable Widget Source # |
|
| Patchable BoxChild Source # | |
| Patchable Pane Source # | |
| Patchable MenuItem Source # | |
| Patchable (SingleWidget widget) Source # | |
Defined in GI.Gtk.Declarative.SingleWidget Methods create :: SingleWidget widget e -> IO SomeState Source # patch :: SomeState -> SingleWidget widget e1 -> SingleWidget widget e2 -> Patch Source # | |
| IsBin parent => Patchable (Bin parent) Source # | |
| IsWidget widget => Patchable (CustomWidget widget customData) Source # | |
Defined in GI.Gtk.Declarative.CustomWidget Methods create :: CustomWidget widget customData e -> IO SomeState Source # patch :: SomeState -> CustomWidget widget customData e1 -> CustomWidget widget customData e2 -> Patch Source # | |
| (Patchable child, Typeable child, IsContainer container child) => Patchable (Container container (Children child)) Source # | |