Skip to main content

Eclipse EEF

Eclipse EEF (Extended Editing Framework) is an Eclipse-based framework for building form-based and domain-specific user interfaces for EMF-based models within Eclipse workbenches and RCP applications (UI framework / modeling tools).

  • Framework for creating form-based and domain-specific model editors on top of EMF (modeling / UI framework).
  • Generation and customization of properties views and user interfaces from EMF models and declarative descriptions (model-driven UI).
  • Integration with the Eclipse Modeling Framework and Eclipse workbench for editing and viewing structured data (Eclipse integration / modeling tools).
  • Support for extension and customization through Eclipse plugins and configuration models (extensibility / plugin ecosystem).
  • Tooling oriented to enterprise model-driven development and RCP-based applications that require structured editors (enterprise application tooling).

More About Eclipse EEF

Eclipse EEF (Extended Editing Framework) is a framework in the Eclipse ecosystem that focuses on building user interfaces for Eclipse Modeling Framework (EMF) models (modeling / UI framework). It targets scenarios where developers need to expose structured, model-based data through form-based editors or properties views inside the Eclipse workbench or Rich Client Platform (RCP) applications. EEF uses EMF models as the core description of domain data and offers mechanisms to derive or configure the corresponding user interface.

The framework is oriented to model-driven development (MDD / Maritime Domain Awareness (MDA) tooling), in which domain concepts are modeled with EMF and then used to generate or configure tooling. Eclipse EEF introduces an additional modeling layer to describe the UI, often referred to as an EEF model, which defines pages, groups, widgets, and their bindings to underlying EMF features (UI modeling). This model-driven approach allows separation between domain logic in EMF and interaction logic in the UI, while still keeping a tight linkage between the two through data binding.

A core capability of Eclipse EEF is the generation and customization of form-based editors and properties views (UI generation). Instead of hand-coding SWT or JFace components, developers describe the structure and behavior of forms declaratively in EEF models. The framework then renders these descriptions inside the Eclipse workbench, managing layout, widget configuration, and synchronization with EMF model elements (Eclipse integration). This reduces repetitive boilerplate work for model-based tooling and fosters consistency across editors that target related models.

EEF is delivered as a set of Eclipse plugins and integrates through the standard Eclipse extension mechanisms (plugin ecosystem). Existing EMF-based projects can include EEF to provide alternative editors, enriched properties views, or domain-specific configuration panels. Because it builds on EMF, EEF aligns with other modeling technologies in the Eclipse stack, such as code generators or graphical modeling tools, and can participate in composite tooling solutions where multiple editors and views share a common underlying model.

In enterprise environments, Eclipse EEF is used to build tailored tools for internal modeling, configuration, or domain-specific engineering workflows (enterprise application tooling). Organizations that adopt EMF to represent domain models can use EEF to expose these models to engineers, analysts, or administrators through consistent form-based UIs embedded in Eclipse-based Integrated Development Environments (IDEs) or standalone RCP applications. This fits use cases such as configuration consoles, metadata management tools, or domain-specific engineering workbenches where structured data editing is central.

From a categorization perspective, Eclipse EEF belongs to the Eclipse Modeling project space and sits at the intersection of UI frameworks and model-driven tooling (modeling / developer tooling). It addresses the problem of building user interfaces for EMF models without manually handling low-level widget code, while still allowing extension, customization, and integration through the Eclipse plugin model. For directories and taxonomies, it aligns with categories such as EMF-based tooling, form-based UI frameworks, and Eclipse RCP development utilities.