Each top-level window in a Vexi UI is called a surface. There are two kinds of surfaces, frames and windows.

Surface Frames

Frames usually have a platform-specific titlebar and border.

To create a new frame, put the intended root box to vexi.ui.frame.

For example, from within the intended root template:

vexi.ui.frame = thisbox;

Surface Windows

Windows never have any additional platform-specific decorations.

To create a new frame, put the intended root box to vexi.ui.window.

For example:

vexi.ui.window = thisbox;

Surface Behaviour

Whenever we refer to the size or position of a surface, we are referring to the size or position of the UI-accessible portion of the surface; this does not include any platform-specific decorations. This means that if you set the position of a frame to (0,0), the platform-specific titlebar will actually be off the screen on most platforms (it will be above and to the left of the top-left corner of the screen).

Surfaces are not actual vexiscript objects; you can not obtain a reference to a surface. However, each surface is uniquely identified by its root box.


Copyright © 2011 The Vexi Project (