




A subclass of 
simple-layout
 that displays only one of its children at a time, and provides functionality for switching the displayed child to one of the other children.
The 
switchable-layout
 has a 
description
 which is its list of children. The argument 
visible-child
 specifies the initially visible child (which defaults to the first of the children). 
switchable-layout
 inherits all of its layout behavior from simple-layout as it only ever lays out one child at a time. 
(setq children (list
(make-instance 'capi:push-button
:text "Press Me")
(make-instance 'capi:list-panel
:items '(1 2 3 4 5))))
(setq layout (capi:contain
(make-instance
'capi:switchable-layout
:description children)))
(capi:apply-in-pane-process
layout #'(setf capi:switchable-layout-visible-child)
(second children) layout)
(capi:apply-in-pane-process
layout #'(setf capi:switchable-layout-visible-child)
(first children) layout)
There is a further example in the file 
examples/capi/layouts/switchable.lisp
.