Cells

Cells

Every control in IntraWeb is actually rendered into a Cell. This behaviour is transparent but is used to control positioning and other features.

Cell Type Varies

The type of cell that a control exists in depends on the layout that the control is a child of. Every layout has its own type of Cell. Some layouts use CellNone, in which the cell is virtual and in the HTML there actually is no element that corresponds to the cell.

Stack uses CellStack. The cell, although its type changes depending on the layout parent, can be accessed using the .Cell property of the layout. Because each layout has a different type of Cell, the properties of the .Cell also change depending on which layout container the controls are contained in.

ACORN 1.0 IWML 1.0
Page[]
  Stack[]
    Edit Hello World
    gap;
    Button
      Cell
        Width: 300
        HAlign: Right
      ]
      Text: OK
    ]
  ]
]

This makes the cell 300pt wide and aligns the Button to the right side of it. For the Fixed layout, Cell has X and Y properties that are not available in other Cells. Varying Cells allows each layout to add its own functionality to each child control.

Short Syntax

Cells can also be referenced using a short syntax as well: