PtGroup

Gamma/Photon: Using Gamma™ with the Photon microGUIŽ, Version 4.0
Prev |  | Next

# `PtGroup`

`PtGroup` -- groups widgets and manages their geometry.

## Synopsis

    class PtGroup PtContainer
    {
        group_flags;          // flag  (Pt_ARG_GROUP_FLAGS)
        group_horz_align;     // unsigned short  (Pt_ARG_GROUP_HORZ_ALIGN)
        group_orientation;    // unsigned short  (Pt_ARG_GROUP_ORIENTATION)
        group_rows_cols;      // unsigned short  (Pt_ARG_GROUP_ROWS_COLS)
        group_spacing;        // unsigned short  (Pt_ARG_GROUP_SPACING)
        group_vert_align;     // unsigned short  (Pt_ARG_GROUP_VERT_ALIGN)
    }

## Base Classes

`PtWidget` <-- `PtBasic` <-- `PtContainer` <-- `PtGroup`

## Derived Classes

`PtMenu`, `PtMenuBar`

## Description

This widget is an invisible container that groups widgets into columns, rows, or a matrix, and manages their geometry. It permits exclusive or group selection of widgets.

| For detailed information, please refer to PtGroup in the Photon documentation.

## Instance Variables

group_flags

  This instance variable controls the behavior of the group, and may be a combination of zero or more of the following flags:

  Constant | Description
  --- | ---
  `Pt_GROUP_EXCLUSIVE` | Only one child can be selected at a time.
  `Pt_GROUP_EQUAL_SIZE` | All children are forced to be the same height and width.
  `Pt_GROUP_NO_SELECT_ALLOWED` | Allows unselecting a child (click on it) without selecting another child.
  `Pt_GROUP_NO_KEYS` | Blocks any group use of keys.
  `Pt_GROUP_NO_KEY_WRAP_HORIZONTAL` | Blocks keys for horizontal wrap.
  `Pt_GROUP_NO_KEY_WRAP_VERTICAL` | Blocks keys for vertical wrap.
  `Pt_GROUP_NO_KEY_WRAP` | Blocks keys for horizontal and vertical wrap.

  | Among the next 4 flags, you should not set `EQUAL_SIZE` and `STRETCH` flags for the same direction.

  `Pt_GROUP_EQUAL_SIZE_HORIZONTAL` | Keeps all children in the group the same width.
  `Pt_GROUP_EQUAL_SIZE_VERTICAL` | Keeps all children in the group the same height.
  `Pt_GROUP_STRETCH_HORIZONTAL` | Fills the group canvas horizontally by stretching right-hand children.
  `Pt_GROUP_STRETCH_VERTICAL` | Fills the group canvas vertically by stretching bottom children.
  `Pt_GROUP_STRETCH` | Fills the canvas in the orientation direction by stretching the widgets of that edge.
  `Pt_GROUP_STRETCH_FILL` | Stretch Fill

group_horz_align

  This instance variable specifies horizontal alignment of the group as a whole, and may have one of the following values:

  Constant | Description
  --- | ---
  `Pt_GROUP_HORZ_NONE` | No horizontal repositioning for the group.
  `Pt_GROUP_HORZ_CENTER` | The group is centered horizontally.
  `Pt_GROUP_HORZ_LEFT` | The group is aligned to the left.
  `Pt_GROUP_HORZ_RIGHT` | The group is aligned to the right.

group_orientation

  This instance variable re-aligns child widgets into rows or columns, and may have one of the following values:

  Constant | Description
  --- | ---
  `Pt_GROUP_HORIZONTAL` | Children of group are aligned in a row.
  `Pt_GROUP_VERTICAL` | Children of group are aligned in a column.
  `Pt_GROUP_ASIS` | Children of group are not aligned.

group_rows_cols

  A number specifying the number of rows or columns that the children are arranged into, for the relevant `group_orientation` chosen.

group_spacing

  A number specifying the number of pixels to separate each child of the group in both the x and y directions.

group_vert_align

  This instance variable specifies vertical alignment of the group as a whole, and may have one of the following values:

  Constant | Description
  --- | ---
  `Pt_GROUP_VERT_NONE` | No vertical repositioning of the group.
  `Pt_GROUP_VERT_CENTER` | The group is centered vertically.
  `Pt_GROUP_VERT_TOP` | The group is aligned to the top.
  `Pt_GROUP_VERT_BOTTOM` | The group is aligned to the bottom.

Prev | Home | Next
`PtGrid` | Up | `PtHtml`

Copyright 1995-2002 by Cogent Real-Time Systems, Inc.