gi-gtk-declarative-0.3.0: Declarative GTK+ programming in Haskell

Safe HaskellNone
LanguageHaskell2010

GI.Gtk.Declarative.Container

Description

Implementations for common Gtk.Container.

Synopsis

Documentation

data Container widget children event Source #

Declarative version of a container widget, i.e. a widget with zero or more child widgets. The type of children is parameterized, and differs across the supported container widgets, as some containers require specific types of child widgets. These type relations are decided by IsContainer, and instances can found in GI.Gtk.Declarative.Container.Patch.

Instances
Functor (Container widget children) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container

Methods

fmap :: (a -> b) -> Container widget children a -> Container widget children b #

(<$) :: a -> Container widget children b -> Container widget children a #

(Patchable child, Typeable child, IsContainer container child) => Patchable (Container container (Children child)) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container

Methods

create :: Container container (Children child) e -> IO SomeState Source #

patch :: SomeState -> Container container (Children child) e1 -> Container container (Children child) e2 -> Patch Source #

(Typeable child, EventSource child) => EventSource (Container widget (Children child)) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container

Methods

subscribe :: Container widget (Children child) event -> SomeState -> (event -> IO ()) -> IO Subscription Source #

(Typeable widget, Typeable children, Patchable (Container widget children), EventSource (Container widget children), Functor (Container widget children)) => FromWidget (Container widget children) Widget Source # 
Instance details

Defined in GI.Gtk.Declarative.Container

Methods

fromWidget :: (Typeable (Container widget children), Typeable event) => Container widget children event -> Widget event Source #

a ~ b => FromWidget (Container a children) (Container b children) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container

Methods

fromWidget :: (Typeable (Container a children), Typeable event) => Container a children event -> Container b children event Source #

container Source #

Arguments

:: (Patchable (Container widget (Children child)), Typeable widget, Typeable child, Typeable event, Functor child, IsWidget widget, IsContainer widget, FromWidget (Container widget (Children child)) target, ToChildren widget parent child) 
=> (ManagedPtr widget -> widget)

A container widget constructor from the underlying gi-gtk library.

-> Vector (Attribute widget event)

Attributes.

-> parent (child event)

The container's child widgets, in a MarkupOf builder.

-> target event

The target, whose type is decided by FromWidget.

Construct a container widget, i.e. a widget with zero or more children.

data Children child event Source #

Common collection type for child widgets, used when patching containers.

Instances
Functor child => Functor (Children child) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container.Class

Methods

fmap :: (a -> b) -> Children child a -> Children child b #

(<$) :: a -> Children child b -> Children child a #

(Patchable child, Typeable child, IsContainer container child) => Patchable (Container container (Children child)) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container

Methods

create :: Container container (Children child) e -> IO SomeState Source #

patch :: SomeState -> Container container (Children child) e1 -> Container container (Children child) e2 -> Patch Source #

(Typeable child, EventSource child) => EventSource (Container widget (Children child)) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container

Methods

subscribe :: Container widget (Children child) event -> SomeState -> (event -> IO ()) -> IO Subscription Source #

class ToChildren widget parent child | widget -> parent, widget -> child where Source #

Converts a specific collection type to Children.

Methods

toChildren :: (ManagedPtr widget -> widget) -> parent (child event) -> Children child event Source #

toChildren :: parent ~ [] => (ManagedPtr widget -> widget) -> parent (child event) -> Children child event Source #

Instances
ToChildren Box [] BoxChild Source # 
Instance details

Defined in GI.Gtk.Declarative.Container.Box

Methods

toChildren :: (ManagedPtr Box -> Box) -> [BoxChild event] -> Children BoxChild event Source #

ToChildren Menu [] MenuItem Source # 
Instance details

Defined in GI.Gtk.Declarative.Container.MenuItem

Methods

toChildren :: (ManagedPtr Menu -> Menu) -> [MenuItem event] -> Children MenuItem event Source #

ToChildren MenuBar [] MenuItem Source # 
Instance details

Defined in GI.Gtk.Declarative.Container.MenuItem

Methods

toChildren :: (ManagedPtr MenuBar -> MenuBar) -> [MenuItem event] -> Children MenuItem event Source #

ToChildren ListBox [] (Bin ListBoxRow Widget) Source # 
Instance details

Defined in GI.Gtk.Declarative.Container.ListBox

Methods

toChildren :: (ManagedPtr ListBox -> ListBox) -> [Bin ListBoxRow Widget event] -> Children (Bin ListBoxRow Widget) event Source #