The type selector contains all the available EiffelVision 2 types supported by EiffelBuild. These are the basic building blocks for your system.
The types are organized into three groups - Primitives, Containers and Items. All types that may be used in EiffelBuild have a text in uppercase, corresponding to their type in EiffelVision 2 . For example, looking at the screenshot above, the
Creating a new object
Objects are the building blocks used in EiffelBuild to construct your interface. To create a new object for use in your system, pick the type corresponding to the type of object you wish to create,and drop onto an object representation. If an object is full, or does not allow other objects of the new type to be contained, then you will not be able to drop on it.
For example, if you have just started a new project, pick HORIZONTAL_BOX from the type selector, and drop it on the
This shows how simple it is to Build new objects in EiffelBuild, you just need access to the parent object to drop the selected type into.
You may drop an object directly from the Type Selector into the widget selector which creates the object as a "top level object" ensuring that upon generation, it is represented by an individual set of classes. These top level objects may then be re-used within your interface as desired.
Changing the type of an existing object
Why would you want to change the type of an existing object , when you could just delete it and create a new object ?
Imagine you have spent some time constructing a complicated interface. You have an EV_VERTICAL_BOX with children many levels deep. You realize that you wanted the
To perform a type change, pick the object that you wish to change, and drop it on an item in the type selector representing the desired new type. All existing children of the old object will be automatically re-parented in the new object.
The following rules govern if the type of an existing object may be changed to a new type: