Eclipse 4 is the next generation platform for building Eclipse-based tools and rich client desktop applications. This new release makes it easier for developers to develop and assemble applications and tools based on the Eclipse platform.
Eclipse 4 introduces the following:
- a model-based user interface and a new CSS-based declarative mechanism for application styling. These facilities make it easier to design and customize an application user interface. This also adds greater flexibility to UI layout, making it easier to make a user interface look different from an IDE.
- a new services-oriented programming model that makes it easier to use discreet application services of the Eclipse platform.
Source material: http://wiki.eclipse.org/E4/UI/Modeled_UI
- Modeled UI
- Contributing to the Model
- Model Fragments
- Creating Model Elements at Runtime
- Modifying the Model
- Listening to Model Changes
- Defining the Application Layout
- Creating an e4xmi File
- Creating the Model Instance Programmatically
- Customizing the Behaviour
- Drag and Drop
- Extending the Model
- Defining New Model Elements
- Suggesting Behaviour with Tags
- Abstract Elements
- Concrete Elements
- Shared Elements
- Best Practices
With the Eclipse 4 Application Platform, the UI model has been separated from how the model is rendered. Eclipse 4 ships with a standard SWT renderer, defined in org.eclipse.e4.ui.workbench.renderer.swt.
Renderers are installed through the XXX extension point. See YYY for an example of how to add a renderer.
What is the difference between #visible and #toBeRendered?
#visible captures whether the rendered UI elements are in presentation or hidden from view. With the SWT renderer, when #visible = false, then the element's widgets are reparented to an invisible shell; the widget is still alive, but won't be seen.
#toBeRendered captures whether this UI element should be rendered; it serves as an instruction to the renderer as to whether the element should or should not be rendered. When set to true, the renderer should explicitly When set to false, all resources are removed and nulled.
Source material: http://wiki.eclipse.org/E4/Eclipse_Application_Services
- The "Twenty Things"
- Obtaining Services
- Contributing Services
- OSGi Services
- Common Services
- Workbench Services
- List of All Provided Services