# Containers

The following interface elements are not visible, but control the positioning of visible elements:

IupBackgroundBox | - | Creates a simple native container with no decorations.
IupCbox | - | Creates a void container for positioning elements in absolute coordinates. It is a concrete layout container.
IupHbox | - | Creates a void container for composing elements horizontally.
IupFill | - | Creates void element, which dynamically occupies empty spaces always trying to expand itself.
IupGridBox | - | Creates a void container for composing elements in a regular grid.
IupMultiBox | - | Creates a void container for composing elements in a irregular grid.
IupNormalizer | - | Sets the widths, heights, or both to the largest size in the specified list.
IupRadio | - | Creates a void container for grouping mutually exclusive toggles.
IupVbox | - | Creates a void container for composing elements vertically.
IupZbox | - | Creates a void container for composing elements in hidden layers with only one layer visible.

All visible interface elements must ultimately belong to an IupDialog.

IupDialog | - | Create a native standard window. This is the mandatory top-level container for any and all application-defined windows.
IupDetachBox | - | Creates a detachable void container.
Iup[GL]Expander | - | Creates a void container that can interactively show or hide its child.
Iup[Flat]Frame | - | Creates a native container, which draws a frame with a title around its child.
IupSbox | - | Creates a void container that allows its child to be resized.
IupScrollBox | - | Creates a native container that allows its child to be scrolled.
IupSplit | - | Creates a void container that split its client area in two.
IupTabs | - | Creates a tab control (like IupZbox, but interactively visibile)

Several pre-defined dialogs are provided:

IupAlarm | - | Show a modal dialog containing a message and up to three buttons.
IupMessage | - | Show a modal dialog containing a message with an OK button.
IupFileDlg | - | Creates the File Dialog element.
IupFontDlg | - | Creates a Font Dialog element, for selecting a font.
IupGetColor | - | Shows a modal dialog which allows the user to select a color.
IupGetParam | - | Shows a modal dialog for capturing parameter values using several types of controls.
IupGetText | - | Shows a modal dialog to edit a multiline text.
IupListDialog | - | Shows a modal dialog to select items from a simple or multiple selection list.
IupProgressDlg | - | Creates a progress dialog for displaying the progress of an operation.
IupLayoutDialog | - | Creates a Layout Dialog to visually edit the layout of another dialog in run time.
IupGlobalsDialog | - | Creates an Globals Dialog to check and edit global attributes, functions (read-only) and names (read-only) in run time.
IupElementPropertiesDialog | - | Creates an Element Properties Dialog to edit the properties of an element in run time.
IupClassInfoDialog | - | Creates an Iup Class Information dialog to show all registered classes, class attributes and callbacks.

The following routines can be used for managing elements.

IupAppend | - | Inserts an interface element at the end of the container, after the last element of the container.
IupDetach | - | Detaches an interface element from its parent.
IupInsert | - | Inserts an interface element before another child of the container.
IupReparent | - | Moves an interface element from one position in the hierarchy tree to another.
IupGetDialog | - | Returns the handle of the dialog that contains that interface element.
IupGetBrother | - | Returns either brother of an element.
IupGetChild | - | Returns a child of the control given its position.
IupGetChildCount | - | Returns the number of children of the given control.
IupGetChildPos | - | Returns the position of a child of the given control.
IupGetNextChild | - | Returns the next child of the specified control given its brother.
IupGetDialogChild | - | Returns the identifier of the child element with the specified name.
IupGetParent | - | Returns the parent of a control.