Extension Points

Last modified: August 15, 2024

Introduction

Extension points allow you to hook functionality into various areas of the Studio Pro IDE. Extension point is a base class that you as an extension developer can inherit from. Your functionality will then be loaded by Studio Pro. These classes all have the *Extension suffix, inherit from ExtensionBase base class, and contain a few virtual or abstract members.

Extension point is the only way you can add a custom behavior to Studio Pro. The rest of the APIs are there only to aid with implementing or expressing these behaviors.

To be injected, your class must be decorated with ExportAttribute like in the example above. This attribute is part of Managed Extensibility Framework that is employed by Studio Pro.

List of Available Extension Points

Studio Pro UI Extensions

  • ContextMenuExtension – This allows injecting new context menu items into model elements.

  • MenuExtension – This allows injecting new menu items into Studio Pro menu bar.

  • DockablePaneExtension – allows introducing new dockable pane like Connector or Documentation. Panes integrate with Studio Pro layout system automatically.

Additionally, there are additional features that provide access to the following:

Studio Pro and MxBuild Extensions