## class Fl_Pack

### Class Hierarchy

    Fl_Group
       |
       +----Fl_Pack

### Include Files

    #include <FL/Fl_Pack.H>

### Description

This widget was designed to add the functionality of compressing and aligning widgets.

If `type()` is `FL_HORIZONTAL` all the children are resized to the height of the `Fl_Pack`, and are moved next to each other horizontally. If `type()` is not `FL_HORIZONTAL` then the children are resized to the width and are stacked below each other. Then the `Fl_Pack` resizes itself to surround the child widgets.

This widget is needed for the `Fl_Tabs`. In addition you may want to put the `Fl_Pack` inside an `Fl_Scroll`.

### Methods

- Fl_Pack
- ~Fl_Pack
- spacing

#### Fl_Pack::Fl_Pack(int x, int y, int w, int h, const char *label = 0)

Creates a new `Fl_Pack` widget using the given position, size, and label string. The default boxtype is `FL_NO_BOX`.

#### virtual Fl_Pack::~Fl_Pack()

The destructor also deletes all the children. This allows a whole tree to be deleted at once, without having to keep a pointer to all the children in the user code. A kludge has been done so the `Fl_Pack` and all of it's children can be automatic (local) variables, but you must declare the `Fl_Pack`first, so that it is destroyed last.

#### int Fl_Pack::spacing() const
void Fl_Pack::spacing(int)

Gets or sets the number of extra pixels of blank space that are added between the children.