An interface engine provides animated views in a user interface. The interface
engine directs the operation of a rendering environment to create an interface
in a rendering area. The interface engine includes views, layouts, animators, and
constraints. Views identify child views and resources for display in the rendering
area. In response to events, such as user inputs, a view modifies itself by calling
layouts, animators, and constraints. A layout manages the attributes of a view's
child views, including child view position and size. An animator modifies the view's
appearance over a specified period of time. A constraint imposes limits on view
properties. In one implementation, an Internet site delivers an interface engine
to a browser to supply content and a user interface. A presentation server compiles
an interface engine description and specified resources into an interface engine.
The presentation server delivers the interface engine to the browser, which executes
the interface engine using a plug-in—eliminating excessive interface updates
found in traditional HTML pages.