Application Model Basics
EarthCape uses a special data store with structured information about the UI - Application Model. This topic details how the Application Model information is collected, and how you can use it to customize the default UI.
Application Model Overview
When you run a Windows or Web client, the Application Model is used to create UI elements. For instance, when the framework creates a grid editor that displays a list of Contact objects, information for each column's visibility, location, caption and other settings is taken from the Application Model. The Application Model provides details on business classes, Controllers, Actions, Property Editors and other elements that provide or influence application functionality.
The Application Model information is generally represented by a tree. Tree nodes normally have a set of properties that actually specify the Application Model data. By default, the Application Model is organized in the following way: the root node (Application) and several child nodes (ActionDesign, BOModel, CreatableItems, ImageSources, NavigationItems, ViewItems, Views, etc.).
Application Model Customization
To view or customize the Application Model's data, use one of the following approaches.
You can run the Model Editor from any project of your Windows client application. Looking through the nodes (to the left) and their properties (to the right), you can see that most data has already been generated. For instance, the BOModel node provides information on all the business classes that are declared in your application and referenced modules.
You can customize any data that is not read-only. There are many examples of the Application Model customization in the Tutorial's UI Customization section.
The changes you make in the Model Editor are saved to the target Application Model
Note. You can customize the Application Model, either directly via the Model Editor invoked at run-time or indirectly - by modifying the layout, changing the skin, etc. End-user customizations are stored in the user's model] in a database.
Application Model's Layered Structure
While customizing the Application Model in different places of your application, you should be aware of the order in which the Model is generated. Internally, the Application Model has a layered structure.
At its base, there is the zero layer. The generation of this layer is based on the code of the application's referenced modules. Higher, there are layers for each module of the application. Then, there is a layer for the application model (separately for Windows and Web clients). At the top is the layer with end-user customizations.
For the administrators that have access to application model records there is a Navigation item under Administration/App model section: