Package muntjac :: Package ui
[hide private]
[frames] | no frames]

Package ui

source code

Provides interfaces and classes in Muntjac.

Package Specification

Interface hierarchy

The IComponent interface is the top-level interface which must be implemented by all user interface components in Muntjac. It defines the common properties of the components and how the framework will handle them. Most simple components, such as Button, for example, do not need to implement the lower-level interfaces described below. Notice that also the classes and interfaces required by the component event framework are defined in IComponent.

The next level in the component hierarchy are the classes implementing the IComponentContainer interface. It adds the capacity to contain other components to IComponent with a simple API.

The third and last level is the ILayout, which adds the concept of location to the components contained in a IComponentContainer. It can be used to create containers which contents can be positioned.

Component class hierarchy

At the top level is AbstractComponent which implements the IComponent interface. As the name suggests it is abstract, but it does include a default implementation for all methods defined in Component so that a component is free to override only those functionalities it needs.

As seen in the picture, AbstractComponent serves as the superclass for several "real" components, but it also has a some abstract extensions. AbstractComponentContainer serves as the root class for all components (for example, panels and windows) who can contain other components. AbstractField, on the other hand, implements several interfaces to provide a base class for components that are used for data display and manipulation.

Submodules [hide private]

Variables [hide private]
  __package__ = None
hash(x)