A tab panel arranges its subwindows in a single column, but also
includes a horizontal row of tabs at the top of the panel. See
also panel%.

The tab-panel% class does not implement the virtual
swapping of the panel content when a new tab is selected. Instead, it
merely invokes a callback procedure to indicate that a user changed
the tab selection.

Each string in choices can contain an ampersand, which (in the
future) may create a mnemonic for clicking the corresponding tab. A
double ampersand is converted to a single ampersand.

The callback procedure is called (with the event type
'tab-panel) when the user changes the tab selection.

If the style list includes 'no-border, no border is
drawn around the panel content. If style includes 'deleted, then the tab panel is created as hidden,
and it does not affect its parent’s geometry; the tab panel can be made active later by calling
parent’s add-child method.

The font argument determines the font for the control. For information about the enabled argument, see window<%>. For information about the horiz-margin and vert-margin
arguments, see subarea<%>. For information about the
min-width, min-height, stretchable-width, and
stretchable-height arguments, see area<%>.