Skip to content

IDEA Graphic Editing Framework

He, Jiehui edited this page Feb 20, 2025 · 1 revision

Overview

An Eclipse GEF like framework but used in IDEA plugin development. Overall structure is below.

Top extend point

  • Editor, panel, context providers
  • Model creation action

Actions

Common actions that:

  • support dialog and input text
  • Assign, open and removal of implementation class and method
  • Generate Code
  • Work with command

Commands

Common commands and utilities:

  • Command chain
  • Create, delete connection and reconnect
  • Create, delete and move node

Figures

Figures, anchor and layouts:

  • Connection
  • Arrow
  • Rectangle and Rounded rectangle
  • Icon, text and label
  • Chopbox and midpoint anchor
  • Freeform, border and toolbar layout

Model

Common graphic model:

  • Diagram
  • Node, composite node
  • Node connection

Parts

The controller in the MVC, very similar to Eclipse GEF to minimize transport effort:

  • Diagram part
  • Node, composite node part
  • Connection part

Treeparts

Similar to parts

Policies

Layout policies for :

  • Node
  • Node container
  • Connection

Route

Common connection route:

  • Bend point
  • Lighting
  • Right angle

Util

Common utilities for:

  • Model properties
  • Property to XML mapping
  • Property descriptor
  • Property editor
  • Xml helper