Abstract
Eclipse GLSP is an open-source framework for efficiently developing graphical diagram editors for web- and cloud-based tools. GLSP adapts the advantages of LSP to graphical diagram editors. Thus, it clearly encapsulates the underlying business logic of your graphical language on a server, which communicates over a defined protocol with one or more diagram clients. This architecture not only allows for a better separation of concerns, it also makes your diagram implementation more easily transferable to other technologies in the future and greatly facilitates the migration of existing diagram implementations (e.g. GMF- or Sirius-based editors) to a modern UI platform (HTML5, CSS3, and SVG).
In this talk, we introduce the basic architecture of GLSP and demonstrate with common examples of how the framework can efficiently support the creation of custom diagram editors. This includes examples available as open-source as well as industrial applications of GLSP. As Eclipse GLSP moved to Eclipse only about 1 1/2 years ago and has been very actively developed since then, we will spend time specially focusing on more recently added features of GLSP including:
- native context menus, problem markers, navigation, …
- copy & paste support and custom model integration or editing behaviors
- custom protocol extensions to invoke domain-specific behavior on the server
Finally, we demonstrate one of the conceptual advantages of the architectural approach and show how the same GLSP editor can be integrated into Eclipse Theia, VS Code and even the Eclipse desktop IDE.
Biography
Philip Langer is a principal software architect and general manager of EclipseSource in Vienna. Since many years now, Philip has been passionate about the modeling technologies of the Eclipse ecosystem. More recently web-/cloud-based tool development has become one of his main focus areas. In his daily work, Philip supports organizations in building web-based domain-specific modeling and engineering tools, including graphical modeling editors, model diff/merge with Git, and much more. Philip is the project lead of the Eclipse Graphical Language Server Platform (GLSP), as well as of EMF.cloud and a committer on Sprotty, EMF Compare, and Papyrus.
More information can also be found on LinkedIn at helps: https://www.linkedin.com/in/philip-langer/
How to join the event:
To avoid security issues is now necessary to register for the meeting. The registration should be necessary just once and be valid for all the next meetings you will participate in. Follow these steps:
- Register yourself to the community on the Homepage
- You will receive a confirmation email containing all the information about joining the meeting.
- Add to your calendar
- Enjoy the talk and, if you feel like, discuss further on the community forum