In elastic windows window contents area is surrounded by borders on four sides. The top border is thicker than others, containing the title, a gadget to the left of the title, and a pump gadget at the rightmost position.
The left gadget is used to invoke a menu for some of the window operations, whereas the borders are mainly used for resize operations. Basically, the border is dragged using the mouse, until the appropriate size is reached. Immediate visual feedback is provided during the operation using animations that slowly stretch the border. The corners of the border are used for diagonal resizing, while the rest of the border is used for one-dimensional resizing.
Borders are also used to indicate hierarchical groupings of windows. Border coloring gradually changes as shown in Figure 1 according to the level of the window in the hierarchy to make groupings recognizable. Border thickness may result in more space being used for borders instead of useful information. During our design, we have found that borders as thin as 4-5 pixels are easily operable.
Pressing the left (right) button on the pump gadget causes the window size to be enlarged (reduced) in all directions according to the direction of the press.
Only windows at the leaf level contain information. Windows at higher levels are group windows containing subwindows.