About Distributing Tiles in a Cluster (DCL)

When laying out tiles in a dialog box, you need to arrange them into rows and columns based on the relative size of each tile.

The following DCL defines a row of three tiles that runs along the top of another tile:

: column {
  : row {
    : compact_tile {
    }
    : compact_tile {
    }
    : compact_tile {
    }
  }
  : large_tile {
  }
}

If the compact_tile components have fixed_width and the large_tile is wider than the minimum space required by the row of compact_tiles above it, the default horizontal alignment of this assembly appears as follows:

The leading edge of the first compact_tile in the row aligns with the leading edge of the large_tile, and the trailing edge of the last compact_tile aligns with the trailing edge of the large_tile. Tiles in between are distributed evenly. The situation with adjoining columns is analogous.

You can control the default distribution by using the spacer_0 and spacer_1 tiles, which are variants of the spacer tile defined in base.dcl.