Class: CONTAINER

Documentation

Allow multiple components to share the same place. The container component serves to manage a set of components which share the same place in the UI. Of the components under the containers control only one (the current-component) is generally rendered. The container component class is generally used as the super class for navigatation components and tabbed-pane like components. Each contained component has a "label" associated with it which is used to retrieve a particular component and switch components. Labels are compared with container.label-test. The :contents inintarg, if provided, must be a list (tag . component).

Slots

  • CONTENTS - An alist of (label . component) holding the controlled components.
  • CURRENT-COMPONENT-NAME - The label of the current component.
  • LABEL-TEST - Function used to compare two labels.

Hierachy

Precedence List

  • STANDARD-COMPONENT

Sub Classes

Source

(defclass container ()
  ((contents :accessor container.contents :initform '()
             :initarg :contents
             :documentation "An alist of (label . component) holding the controlled components.")
   (current-component-name :accessor container.current-component-name
                           :initarg :current-component-name
                           :backtrack t
                           :documentation "The label of the current component."
                           :initform nil)
   (label-test :accessor container.label-test
               :documentation "Function used to compare two labels."
               :initarg :label-test
               :initform #'eql))
  (:metaclass standard-component-class)
  (:documentation "Allow multiple components to share the same place.

The container component serves to manage a set of components
which share the same place in the UI. Of the components under the
containers control only one (the current-component) is generally
rendered.

The container component class is generally used as the super
class for navigatation components and tabbed-pane like
components.

Each contained component has a \"label\" associated with it which
is used to retrieve a particular component and switch
components. Labels are compared with container.label-test.

The :contents inintarg, if provided, must be a list (tag .
component)."))
Source Context