Skip to content

Commit 48f27a8

Browse files
committed
Review reference guides
1 parent 3835bd7 commit 48f27a8

3 files changed

Lines changed: 19 additions & 23 deletions

File tree

content/en/docs/apidocs-mxsdk/apidocs/studio-pro-11/extensibility-api/csharp/extensibility-api-reference-guide/extension-points.md

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,34 +7,31 @@ weight: 9
77

88
## Introduction
99

10-
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`](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI/ExtensionBase.md) base class, and contain a few virtual or abstract members.
10+
Extension points allow you to hook functionality into various areas of the Studio Pro IDE. `ExtensionPoint` is a base class that extension developers can inherit from. Once inherited, your functionality will be loaded by Studio Pro. These classes all have the `*Extension` suffix, inherit from the [`ExtensionBase`](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI/ExtensionBase.md) base class, and include a few virtual or abstract members.
1111

12-
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.
12+
`ExtensionPoint` is the only way to add custom behavior to Studio Pro. All other APIs provided solely to support the implementation or expression of these behaviors.
1313

14-
To be injected, your class must be decorated with [ExportAttribute](https://docs.microsoft.com/en-us/dotnet/api/system.composition.exportattribute?view=dotnet-plat-ext-6.0)
15-
like in the example above. This attribute is part of [Managed Extensibility Framework](https://docs.microsoft.com/en-us/dotnet/framework/mef/)
16-
that is employed by Studio Pro.
14+
To be injected, your class must be decorated with the [ExportAttribute](https://docs.microsoft.com/en-us/dotnet/api/system.composition.exportattribute?view=dotnet-plat-ext-6.0),
15+
as shown in the example above. This attribute is part of the [Managed Extensibility Framework](https://docs.microsoft.com/en-us/dotnet/framework/mef/) that is used by Studio Pro.
1716

1817
## List of Available Extension Points
1918

2019
### Studio Pro UI Extensions
2120

22-
* [ContextMenuExtension](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/ContextMenuExtension-1.md) – This allows injecting new context menu items into model elements.
23-
24-
* [MenuExtension](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/MenuExtension.md) – This allows injecting new menu items into Studio Pro menu bar.
25-
21+
* [ContextMenuExtension](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/ContextMenuExtension-1.md) – allows injecting new context menu items into model elements
22+
* [MenuExtension](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/MenuExtension.md) – allows injecting new menu items into the Studio Pro menu bar
2623
* [DockablePaneExtension](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI.DockablePane/DockablePaneExtension.md) – allows introducing new
27-
[dockable pane](/refguide/studio-pro-overview/#panes) like Connector or Documentation. Panes integrate with Studio Pro
24+
[dockable pane](/refguide/studio-pro-overview/#panes), like Connector or Documentation; panes integrate with Studio Pro
2825
[layout system](/refguide/view-menu/#layout-of-panes) automatically.
2926

30-
{{% alert color="info" %}}It is advised to introduce a new **View** menu item for each pane, so that Studio Pro users have a way to open it.{{% /alert %}}
27+
{{% alert color="info" %}}It is advised to introduce a new **View** menu item for each pane so Studio Pro users have a way to open it.{{% /alert %}}
3128

32-
Additionally, there are additional features that provide access to the following:
29+
There are additional features that provide access to the following:
3330

3431
* [Studio Pro configuration](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI/ExtensionBase/Configuration.md)
3532
* [The currently opened app](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI/UIExtensionBase/CurrentApp.md), as well as event subscription mechanism to that app
36-
* Events can be subscribed to by using the subscribe and unsubscribe methods exposed in [UIExtensionBase](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI/UIExtensionBase.md).
33+
* Events can be subscribed to by using the subscribe and unsubscribe methods exposed in [UIExtensionBase](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.UI/UIExtensionBase.md)
3734

3835
### Studio Pro and MxBuild Extensions
3936

40-
* [ConsistencyCheckExtension](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.ConsistencyCheck/ConsistencyCheckExtension-1.md)This allows injecting custom logic into the [Consistency check](/refguide/consistency-errors/) process.
37+
* [ConsistencyCheckExtension](https://github.com/mendix/ExtensionAPI-Samples/blob/main/API%20Reference/Mendix.StudioPro.ExtensionsAPI.ConsistencyCheck/ConsistencyCheckExtension-1.md) – allows injecting custom logic into the [Consistency check](/refguide/consistency-errors/) process

content/en/docs/apidocs-mxsdk/apidocs/studio-pro-11/extensibility-api/csharp/extensibility-api-reference-guide/services.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ weight: 10
77

88
## Introduction
99

10-
A Studio Pro service is an interface that exposes some core Studio Pro functionality to extensions. These interfaces are named `I*Service` and can be found in `Mendix.StudioPro.ExtensionsAPI.Services` or `Mendix.StudioPro.ExtensionsAPI.UI.Services` namespaces. It can be injected using the Microsoft Extensions Framework, also referred to as MEF. For more information about MEF and how to use it please refer to the official [Microsoft documentation](https://learn.microsoft.com/en-us/dotnet/framework/mef/)
10+
A Studio Pro service is an interface that exposes some core Studio Pro functionality to extensions. These interfaces are named `I*Service` and can be found in `Mendix.StudioPro.ExtensionsAPI.Services` or `Mendix.StudioPro.ExtensionsAPI.UI.Services` namespaces. It can be injected using the Microsoft Extensions Framework, also referred to as MEF. For more information about MEF and how to use it, refer to the official [Microsoft documentation](https://learn.microsoft.com/en-us/dotnet/framework/mef/)
1111

1212
{{% alert color="info" %}}You should not implement these interfaces in your production code, although it is possible to make sense to do so for unit testing purposes.{{% /alert %}}
1313

content/en/docs/apidocs-mxsdk/apidocs/studio-pro-11/extensibility-api/csharp/extensibility-api-reference-guide/web-view.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,19 @@ weight: 12
77

88
## Introduction
99

10-
In all places where the Studio Pro Extensibility API allows you to add custom UI, you can use web technology to implement the UI.
10+
Wherever the Studio Pro Extensibility API allows you to add custom UI, you can implement it using web technologies.
1111

12-
Studio Pro contains a built-in web view that you can leverage to show your web-based UI.
13-
Studio Pro also contains a built-in web server that can be used to serve the web UI, as well as to serve data to the web UI.
12+
Studio Pro includes a built-in web view for displaying your web-based UI. It also provides a built-in web server that can be used to serve both the web UI and the data it requires.
1413

15-
In addition, there is a two-way message passing mechanism for direct communication between the web content and the C# part of your extension.
14+
Additionally, a two-way message passing mechanism enables direct communication between the web content and the C# part of your extension.
1615

1716
## Showing a Web View in the UI
1817

19-
There are a number of places where the Studio Pro Extensibility API allows you to add custom UI.
18+
There are a number of places where the Extensibility API allows you to add custom UI.
2019

21-
Typically, the Extensibility API requires you to return a view model for your UI, and for every view model type, there is a corresponding base class for showing the UI in a web view.
20+
Typically, the Extensibility API requires you to return a view model for your UI. Every view model type has a corresponding base class used to display the UI in a web view.
2221

23-
The following table shows the APIs that allow you to add custom UI, and the corresponding view model base class:
22+
The table below lists the APIs that support custom UI and the corresponding view model base class:
2423

2524
| UI element | API for adding UI | Base class for view model |
2625
|--------------------------------|------------------------------------------|--------------------------------|
@@ -51,7 +50,7 @@ For serving content to the web view and communicating both ways with it, see [Bu
5150

5251
If your pane or tab was open when Studio Pro was closed, your web content might fail to load when you reopen Studio Pro. This is because the `WebServerBaseUrl` property is null due to timing issues in the startup sequence.
5352

54-
To resolve this, listen to `OnWebServerBaseUrlChanged` in your `WebServerExtension`. This will get the URL when it gets re-initialized.
53+
To resolve this, listen to `OnWebServerBaseUrlChanged` in your `WebServerExtension`. This will get the URL when it is reinitialized.
5554

5655
You can use the following code:
5756

0 commit comments

Comments
 (0)