### TryInsertAfterStart Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IMicroflowService/TryInsertAfterStart.md Inserts activities in the microflow directly after the start event. ```APIDOC ## TryInsertAfterStart ### Description Inserts activities in the microflow directly after the start event. ### Method Signature ```csharp public bool TryInsertAfterStart(IMicroflow microflow, params IActivity[] activities) ``` ### Parameters * **microflow** (IMicroflow) - Microflow to which activities are added. * **activities** (params IActivity[]) - List of activities to add after the start event. ``` -------------------------------- ### IModule.FromAppStore Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Projects/IModule/FromAppStore.md Indicates whether the module was installed from the Marketplace. ```APIDOC ## IModule.FromAppStore Property ### Description Indicates whether the module was installed from the Marketplace. ### Property Signature ```csharp public bool FromAppStore { get; set; } ``` ### Usage This property is a boolean value that can be read or set. It is part of the `IModule` interface. ``` -------------------------------- ### StartTransaction Method Signature Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model/IModel/StartTransaction.md Defines the signature for starting a transaction with a descriptive string. ```csharp public ITransaction StartTransaction(string description) ``` -------------------------------- ### EarliestSupportedLegacyMendixVersion Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/IConfiguration/EarliestSupportedLegacyMendixVersion.md Gets the earliest compatible version of Studio Pro in the semver v2 format `major.minor.patch`. ```APIDOC ## Property `EarliestSupportedLegacyMendixVersion` ### Description Gets the earliest compatible version of Studio Pro in the semver v2 format `major.minor.patch`. ### Type `string` ### Access Read-only ``` -------------------------------- ### IConfiguration.Theme Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/IConfiguration/Theme.md Gets the user interface theme currently in use. ```APIDOC ## IConfiguration.Theme Property ### Description Gets the user interface theme currently in use. ### Signature ```csharp public ThemeSupport Theme { get; } ``` ### See Also * enum [ThemeSupport](../ThemeSupport.md) * interface [IConfiguration](../IConfiguration.md) * namespace [Mendix.StudioPro.ExtensionsAPI](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### TryImportApp Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Services/IAppService.md Try to import a mpk project file as a new app. The user will get a dialog asking how to import the app. ```APIDOC ## TryImportApp ### Description Try to import a mpk project file as a new app. The user will get a dialog asking how to import the app. ### Method [Method signature or details if available, otherwise omit] ### Parameters [Parameters if available, otherwise omit] ### Request Example [Request example if available, otherwise omit] ### Response [Response details if available, otherwise omit] ### Response Example [Response example if available, otherwise omit] ``` -------------------------------- ### Get All Project Documents Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Projects/IProject/GetProjectDocuments.md Call this method to retrieve all documents associated with the project, including settings. No parameters are required. ```csharp public IReadOnlyList GetProjectDocuments() ``` -------------------------------- ### LatestSupportedLegacyMendixVersion Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/IConfiguration/LatestSupportedLegacyMendixVersion.md Gets the latest compatible version of Studio Pro in the semver v2 format `major.minor.patch`. ```APIDOC ## LatestSupportedLegacyMendixVersion Property ### Description Gets the latest compatible version of Studio Pro in the semver v2 format `major.minor.patch`. ### Property Type `string` ### Example ```csharp string latestVersion = configuration.LatestSupportedLegacyMendixVersion; ``` ### See Also * interface [IConfiguration](../IConfiguration.md) * namespace [Mendix.StudioPro.ExtensionsAPI](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### BuildTag Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/IConfiguration/BuildTag.md Gets the tag uniquely identifying the Studio Pro build. ```APIDOC ## BuildTag Property ### Description Gets the tag uniquely identifying the Studio Pro build. ### Signature ```csharp public string BuildTag { get; } ``` ### Return Value A string representing the unique build tag. ``` -------------------------------- ### Get Data Storage GUID of an Association Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IAssociation/DataStorageGuid.md Retrieve the unique GUID that identifies an association in the Mendix Runtime database. This property is read-only. ```csharp public Guid DataStorageGuid { get; } ``` -------------------------------- ### InitializeWebServer Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.WebServer/WebServerExtension.md This method is called once to allow the extension to configure the built-in web server of Studio Pro. Use this method to add routes to the web server. ```APIDOC ## InitializeWebServer ### Description This method is called once to allow this extension to configure the built-in web server of Studio Pro. Use this method to add routes to the web server. ### Method abstract ### Parameters This method does not take any parameters. ### Remarks This method is intended to be overridden by derived classes to add custom routes. ``` -------------------------------- ### InitializeWebServer Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.WebServer/WebServerExtension/InitializeWebServer.md This method is called once to allow extensions to configure the built-in web server of Studio Pro. Use this method to add routes to the web server. ```APIDOC ## InitializeWebServer ### Description This method is called once to allow this extension to configure the built-in web server of Studio Pro. Use this method to add routes to the web server. ### Method Signature ```csharp public abstract void InitializeWebServer(IWebServer webServer) ``` ### Parameters #### webServer - **webServer** (IWebServer) - Description: An object representing the internal web server of Studio Pro. ### Remarks This method is called at most once after the extension is loaded. ``` -------------------------------- ### IQualifiedName.Name Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model/IQualifiedName/Name.md Gets the name of the referenced object. For example, 'MyHomePage'. ```APIDOC ## IQualifiedName.Name Property ### Description Gets the name of the referenced object. For example, `MyHomePage`. ### Signature ```csharp public string Name { get; } ``` ### See Also * interface [IQualifiedName](../IQualifiedName.md) * namespace [Mendix.StudioPro.ExtensionsAPI.Model](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### InitWebView Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.DockablePane/WebViewDockablePaneViewModel/InitWebView.md Initializes the WebView with the provided IWebView instance. ```APIDOC ## InitWebView Method ### Description Initializes the WebView dockable pane with a given `IWebView` instance. ### Method Signature ```csharp public abstract void InitWebView(IWebView webView) ``` ### Parameters * **webView** (`IWebView`) - The `IWebView` instance to be initialized. ``` -------------------------------- ### Get Model Structure ID Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.UntypedModel/IModelStructure/ID.md Access the unique Guid identifier for a model structure. This property is read-only. ```csharp public Guid ID { get; } ``` -------------------------------- ### Create StudioProImage from File Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Drawing/StudioProImage/StudioProImage.md Use this constructor to create a StudioProImage object by providing the path to an image file. Ensure the file exists at the specified location. ```csharp public StudioProImage(string filename) ``` -------------------------------- ### AfterStartupMicroflow Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Settings/IRuntimeSettings/AfterStartupMicroflow.md Gets or sets the microflow to be executed after the runtime has started. This property returns an `IQualifiedName` which represents the qualified name of the microflow. ```APIDOC ## Property: AfterStartupMicroflow ### Description Gets or sets the microflow to be executed after the runtime has started. ### Type `IQualifiedName?` ### Remarks This property allows you to configure a microflow that will automatically run once the application runtime has successfully initialized. It returns a qualified name that uniquely identifies the microflow within the project. ### See Also * interface [IQualifiedName<T>](../../Mendix.StudioPro.ExtensionsAPI.Model/IQualifiedName-1.md) * interface [IMicroflow](../../Mendix.StudioPro.ExtensionsAPI.Model.Microflows/IMicroflow.md) * interface [IRuntimeSettings](../IRuntimeSettings.md) ``` -------------------------------- ### Get or Set WebView Address Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.WebView/IWebView/Address.md Use this property to get or set the current URI displayed in the web view. Setting the address will trigger a navigation to the new URI. ```csharp public Uri Address { get; set; } ``` -------------------------------- ### InitWebView Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.DockablePane/WebViewDockablePaneViewModel.md Initializes the web view within the dockable pane. This method is abstract and must be implemented by derived classes. ```APIDOC ## InitWebView ### Description Initializes the web view for the dockable pane. ### Method Signature ```csharp abstract void InitWebView(...) ``` ### Remarks This is an abstract method that needs to be implemented by concrete subclasses of `WebViewDockablePaneViewModel`. ``` -------------------------------- ### Get the Active Document Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Events/ActiveDocumentChanged/GetDocument.md Call this method to get the IAbstractUnit of the currently active document. It requires an IProject object as input. Returns null if the document is unsupported or not available. ```csharp public IAbstractUnit? GetDocument(IProject project) ``` -------------------------------- ### IAttribute.Name Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IAttribute/Name.md Gets or sets the name of the attribute. ```APIDOC ## IAttribute.Name Property ### Description Gets or sets the name of the attribute. ### Syntax ```csharp public string Name { get; set; } ``` ### See Also * interface [IAttribute](../IAttribute.md) * namespace [Mendix.StudioPro.ExtensionsAPI.Model.DomainModels](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### BackgroundJobStep Constructor Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.BackgroundJobs/BackgroundJobStep/BackgroundJobStep.md Initializes a new instance of the `BackgroundJobStep` class with a title, description, and a function to execute. ```APIDOC ## BackgroundJobStep Constructor ### Description Initializes a new instance of the `BackgroundJobStep` class. ### Signature ```csharp public BackgroundJobStep(string title, string description, Func function) ``` ### Parameters #### Parameters - **title** (string) - Required - The title of the step. It must be a non-empty string. - **description** (string) - Required - The description of the step. It must be a non-empty string. - **function** (Func) - Required - The function of the step. It should return a boolean value. ### Exceptions #### Exceptions - **ArgumentNullException** - When *title* or *description* is null. ``` -------------------------------- ### ExecutePreviewAction Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Services/IRuntimeService/ExecutePreviewAction.md Executes a preview action with the specified name and parameters. The actionName must start with "preview_". ```APIDOC ## ExecutePreviewAction ### Description Executes a preview action. ### Method Signature ```csharp public JsonElement? ExecutePreviewAction(string actionName, IDictionary parameters) ``` ### Parameters #### Parameters - **actionName** (string) - Required - Name of the action. Must start with with "preview_". - **parameters** (IDictionary) - Required - Parameter keys and values. ### Return Value The JSON that the preview action returned. ### Exceptions #### ArgumentException Thrown when actionName does not start with "preview_". #### InvalidOperationException When the current app is not running locally. ``` -------------------------------- ### Association Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/AssociationMemberChangeType.md Gets the association associated with this AssociationMemberChangeType. ```APIDOC ## Association Property ### Description Gets the association associated with this AssociationMemberChangeType. ### Parameters #### Path Parameters - **association** (IAssociation) - Required - Description for the association property. ``` -------------------------------- ### StudioProImage Constructor (File) Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Drawing/StudioProImage/StudioProImage.md Creates a Studio Pro image from a specified file path. ```APIDOC ## StudioProImage constructor (1 of 2) Creates a Studio Pro image from a file. ```csharp public StudioProImage(string filename) ``` ### Parameters #### Path Parameters - **filename** (string) - Required - The path to the file that contains the image. ``` -------------------------------- ### PopulateWebNavigationWith Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/INavigationManagerService/PopulateWebNavigationWith.md Adds page shortcuts to a navigation profile. This method takes an IModel and a collection of pages with their captions as input. ```APIDOC ## PopulateWebNavigationWith ### Description Allows to add page shortcuts to a navigation profile. ### Method Signature ```csharp public void PopulateWebNavigationWith(IModel model, params (string caption, IPage page)[] pages) ``` ### Parameters - **model** (IModel) - The model to which you are going to add the navigation items. - **pages** (params (string caption, IPage page)[]) - A parameterized array of pages that are going to be added to the responsive web navigation profile. ``` -------------------------------- ### IEnumerationValue.QualifiedName Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Enumerations/IEnumerationValue/QualifiedName.md Gets the qualified name of the enumeration value. ```APIDOC ## IEnumerationValue.QualifiedName Property ### Description Gets the qualified name of the enumeration value. ### Property Type [IQualifiedName](../../Mendix.StudioPro.ExtensionsAPI.Model/IQualifiedName-1.md)<[IEnumerationValue](../IEnumerationValue.md)> ``` -------------------------------- ### IAssociation.Documentation Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IAssociation/Documentation.md Gets or sets the documentation string for the association. ```APIDOC ## IAssociation.Documentation Property ### Description The documentation of the association. ### Property `public string Documentation { get; set; }` ``` -------------------------------- ### IConfigurationService.Configuration Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IConfigurationService/Configuration.md Retrieves the current Studio Pro configuration. ```APIDOC ## IConfigurationService.Configuration Property ### Description Provides access to the current Studio Pro `IConfiguration` object. ### Property `Configuration` (IConfiguration) - Read-only property that returns the current configuration. ### Usage ```csharp // Assuming 'configurationService' is an instance of IConfigurationService IConfiguration currentConfiguration = configurationService.Configuration; ``` ### See Also * interface [IConfiguration](../../Mendix.StudioPro.ExtensionsAPI/IConfiguration.md) * interface [IConfigurationService](../IConfigurationService.md) * namespace [Mendix.StudioPro.ExtensionsAPI.Services](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### StudioProImage Constructor Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Drawing/StudioProImage.md Creates a Studio Pro image from a file. ```APIDOC ## StudioProImage() ### Description Creates a Studio Pro image from a file. ### Method Constructor ### Parameters This constructor does not have any explicitly documented parameters in the source. ### Request Example ```csharp var image = new StudioProImage("path/to/your/image.png"); ``` ### Response This is a constructor, it does not return a value in the traditional sense but initializes an object. ``` -------------------------------- ### Location.Y Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model/Location.md Gets or sets the Y axis coordinate of the Location. ```APIDOC ## Location.Y ### Description Gets or sets the Y axis coordinate. ### Property public double Y { get; set; } ``` -------------------------------- ### IConstant.DefaultValue Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Constants/IConstant/DefaultValue.md Gets or sets the default value of the constant. ```APIDOC ## IConstant.DefaultValue Property ### Description Gets or sets the default value of the constant. ### Syntax ```csharp public string DefaultValue { get; set; } ``` ``` -------------------------------- ### ExtensionBase.Configuration Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/ExtensionBase/Configuration.md The `Configuration` property provides access to the current Studio Pro configuration. It is a read-only property of type `IConfiguration`. ```APIDOC ## ExtensionBase.Configuration Property ### Description Provides access to the current Studio Pro configuration. ### Syntax ```csharp protected IConfiguration Configuration { get; } ``` ### Exceptions * **InvalidOperationException**: Thrown when attempting to access this property in the constructor of the extension. ### Remarks This property is not available until the extension has been fully constructed. For accessing configuration in the constructor, use `IConfigurationService`. ### See Also * interface `IConfiguration` * class `ExtensionBase` * namespace `Mendix.StudioPro.ExtensionsAPI` ``` -------------------------------- ### StartTransaction Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model/IModel/StartTransaction.md Starts a transaction which wraps model changes. Any modification to the model must be done within a transaction. ```APIDOC ## StartTransaction ### Description Starts a transaction which wraps model changes. This description is visible to Studio Pro user in Edit -> Undo menu. ### Method Signature ```csharp public ITransaction StartTransaction(string description) ``` ### Parameters #### Path Parameters - **description** (string) - Required - Description of the operation performed on the model. This description is visible to Studio Pro user in Edit -> Undo menu. ### Return Value - **ITransaction** - Represents the transaction. ### Exceptions - **ArgumentNullException**: Thrown when `description` is null or empty. - **InvalidOperationException**: Thrown when another transaction is already running. ### Remarks Any modification to the model must be done within a transaction otherwise an InvalidOperationException is thrown. There can be only a single active (i.e. not committed or rolled back) ITransaction for the whole app. Transactions do not isolate changes, but group them. Thus, any change to a model is immediately visible to all code working with the model. When a transaction is rolled back, all changes are reverted. ### Example ```csharp using (var transaction = model.StartTransaction("rename folder")) { folder.Name = "New_Name"; transaction.Commit(); } ``` ``` -------------------------------- ### InitWebView Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Tab/WebViewTabViewModel.md Initializes the WebView within the tab. This method is abstract and must be implemented by derived classes. ```APIDOC ## InitWebView ### Description Initializes the WebView for this tab. This method is intended to be overridden by derived classes to provide specific WebView initialization logic. ### Method Signature ```csharp abstract void InitWebView(...) ``` ### Remarks This is an abstract method, meaning concrete implementations must provide the actual logic for initializing the `IWebView` component. ``` -------------------------------- ### Message Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.WebView/MessageReceivedEventArgs/Message.md Gets the message that was sent from the web view. ```APIDOC ## Message Property ### Description Gets the message that was sent from the web view. ### Signature ```csharp public string Message { get; } ``` ``` -------------------------------- ### IConfigurationService Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IConfigurationService.md Provides access to the global Studio Pro configurations. ```APIDOC ## Interface: IConfigurationService ### Description Provides access to the global Studio Pro configurations that can depend on environment or user-defined settings. ### Members #### Configuration Property ##### Description Current Studio Pro [`IConfiguration`](../Mendix.StudioPro.ExtensionsAPI/IConfiguration.md). ##### Type [`IConfiguration`](../Mendix.StudioPro.ExtensionsAPI/IConfiguration.md) ##### Access Read-only ``` -------------------------------- ### ICustomSetting.Value Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Settings/ICustomSetting/Value.md Gets or sets the string value of the custom setting. ```APIDOC ## ICustomSetting.Value Property ### Description Gets or sets the string value of the custom setting. ### Property `string Value { get; set; }` ``` -------------------------------- ### ApplicationRootUrl Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Settings/IConfiguration/ApplicationRootUrl.md Gets or sets the root URL of the application. ```APIDOC ## ApplicationRootUrl Property ### Description Gets or sets the root URL of the application. ### Signature ```csharp public string ApplicationRootUrl { get; set; } ``` ``` -------------------------------- ### Attribute Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/AttributeMemberChangeType.md Gets the IAttribute associated with this change type. ```APIDOC ## Attribute { get; } ### Description Gets the [`IAttribute`](../Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IAttribute.md) associated with this change type. ``` -------------------------------- ### Create StudioProImage from Assembly Resource Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Drawing/StudioProImage/StudioProImage.md Use this constructor to create a StudioProImage object from an image resource embedded within an assembly. Provide the resource path and the Assembly instance. ```csharp public StudioProImage(string resourcePath, Assembly assembly) ``` -------------------------------- ### Get Target Services Environment Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/IConfiguration/TargetServices.md Retrieve the current target services environment configuration for Studio Pro. This property is read-only. ```csharp public ServicesEnvironment TargetServices { get; } ``` -------------------------------- ### MenuViewModel Constructor (Action) Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/MenuViewModel/MenuViewModel.md Creates a new MenuViewModel that performs a specific action when clicked. ```APIDOC ## MenuViewModel constructor (1 of 2) Create a new [`MenuViewModel`](../MenuViewModel.md) that will perform an action when clicked. ```csharp public MenuViewModel(string caption, Action action) ``` ### Parameters #### Path Parameters - **caption** (string) - Required - The caption of the menu. - **action** (Action) - Required - The action the menu will perform when clicked. ``` -------------------------------- ### DataType.Empty Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DataTypes/DataType/Empty.md Gets a data type representing the empty value. ```APIDOC ## DataType.Empty Property ### Description Gets a data type representing the empty value. ### Signature ```csharp public static EmptyType Empty { get; } ``` ``` -------------------------------- ### GetSettingsParts Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Settings/IProjectSettings.md Retrieves the settings parts associated with the project. ```APIDOC ## GetSettingsParts() ### Description Retrieves the settings parts associated with the project. ### Method Invoke the GetSettingsParts method on an IProjectSettings object. ### Parameters This method does not take any parameters. ### Response The method returns a collection of settings parts. ``` -------------------------------- ### Location.X Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model/Location.md Gets or sets the X axis coordinate of the Location. ```APIDOC ## Location.X ### Description Gets or sets the X axis coordinate. ### Property public double X { get; set; } ``` -------------------------------- ### ICodeActionParameter.Name Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.CodeActions/ICodeActionParameter/Name.md Gets or sets the name of the code action parameter. ```APIDOC ## ICodeActionParameter.Name Property ### Description Gets or sets the name of the code action parameter. ### Syntax ```csharp public string Name { get; set; } ``` ``` -------------------------------- ### IHttpClient.Timeout Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/IHttpClient/Timeout.md Gets or sets the timespan to wait before the request times out. ```APIDOC ## IHttpClient.Timeout Property ### Description Gets or sets the timespan to wait before the request times out. ### Property Signature ```csharp TimeSpan Timeout { get; set; } ``` ### Usage This property is part of the `IHttpClient` interface and can be used to configure the timeout for HTTP requests. **Example:** ```csharp // Assuming 'httpClient' is an instance of IHttpClient httpClient.Timeout = TimeSpan.FromSeconds(30); TimeSpan currentTimeout = httpClient.Timeout; ``` ``` -------------------------------- ### StudioProImage Constructor (Assembly Resource) Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Drawing/StudioProImage/StudioProImage.md Creates a Studio Pro image from a resource within an assembly (.dll file). ```APIDOC ## StudioProImage constructor (2 of 2) Creates a Studio Pro image from a resource in an assembly (.dll file). ```csharp public StudioProImage(string resourcePath, Assembly assembly) ``` ### Parameters #### Path Parameters - **resourcePath** (string) - Required - The resource path in the assembly - **assembly** (Assembly) - Required - The Assembly instance that contains the resource. ``` -------------------------------- ### C# Signature for TryInsertAfterStart Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IMicroflowService/TryInsertAfterStart.md This is the method signature for TryInsertAfterStart in C#. It takes an IMicroflow object and a variable number of IActivity objects as parameters. It returns a boolean indicating success or failure. ```csharp public bool TryInsertAfterStart(IMicroflow microflow, params IActivity[] activities) ``` -------------------------------- ### MenuViewModel Constructor with Action Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/MenuViewModel/MenuViewModel.md Use this constructor to create a menu item that performs a specific action when clicked. Provide a caption and the action delegate. ```csharp public MenuViewModel(string caption, Action action) ``` -------------------------------- ### Get Commit Author Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.VersionControl/ICommit/Author.md Retrieves the author of a commit. This property is read-only. ```csharp public string Author { get; } ``` -------------------------------- ### InitWebView Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Dialogs/WebViewModalDialogViewModel.md Initializes the WebView component within the modal dialog. This method is called internally to set up the web view before it is displayed. ```APIDOC ## InitWebView(IWebView webView) ### Description Initializes the WebView component within the modal dialog. ### Parameters * **webView** (IWebView) - The WebView instance to be initialized. ``` -------------------------------- ### Title Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Tab/TabViewModelBase/Title.md Gets or sets the title of the tab, which is displayed in its header. ```APIDOC ## Title Property ### Description Gets or sets the title of the tab displayed in its header. ### Syntax ```csharp public string Title { get; set; } ``` ### Exceptions | Exception Type | Condition | | ------------------- | ------------------------ | | ArgumentNullException | Passed value is null or empty. | ### See Also * class [TabViewModelBase](../TabViewModelBase.md) * namespace [Mendix.StudioPro.ExtensionsAPI.UI.Tab](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### Title Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Dialogs/ModalDialogViewModelBase/Title.md Gets or sets the title of the dialog. It is empty by default. ```APIDOC ## Title Property ### Description Gets or sets the title of the dialog. It is empty by default. ### Syntax ```csharp public string Title { get; } ``` ### Exceptions | Exception Type | Condition | | ------------------- | -------------------------------------------- | | ArgumentNullException | Passed value in the constructor is null or empty. | ### See Also * class [ModalDialogViewModelBase](../ModalDialogViewModelBase.md) * namespace [Mendix.StudioPro.ExtensionsAPI.UI.Dialogs](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### MenuViewModel Constructors Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/MenuViewModel.md Creates a new MenuViewModel that will perform an action when clicked. ```APIDOC ## MenuViewModel() ### Description Creates a new [`MenuViewModel`](./MenuViewModel.md) that will perform an action when clicked. ### Parameters None ``` ```APIDOC ## MenuViewModel(Action) ### Description Creates a new [`MenuViewModel`](./MenuViewModel.md) that will perform the specified action when clicked. ### Parameters * **action** (Action) - The action to perform when the menu is clicked. ``` -------------------------------- ### DataType Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/ReduceListFunction.md Gets the data type of the elements in the list being reduced. ```APIDOC ## DataType ### Description Gets the data type of the elements within the list that is undergoing the reduce operation. ### Property Type [DataType](ReduceListFunction/DataType.md) ``` -------------------------------- ### IAggregateListAction.InputListVariableName Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/IAggregateListAction/InputListVariableName.md Gets or sets the name of the variable that holds the list to be aggregated. ```APIDOC ## IAggregateListAction.InputListVariableName Property ### Description Gets or sets the name of the variable that holds the list to be aggregated. ### Syntax ```csharp public string InputListVariableName { get; set; } ``` ### Property Value System.String The name of the input list variable. ``` -------------------------------- ### InitWebView Method Signature Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Dialogs/WebViewModalDialogViewModel/InitWebView.md This is the abstract method signature for InitWebView. Implementations will define how to initialize the web view. ```csharp public abstract void InitWebView(IWebView webView) ``` -------------------------------- ### CreateHttpClient Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IHttpClientService.md Obtain an HttpClient instance that Studio Pro manages for socket allocation. ```APIDOC ## CreateHttpClient() ### Description Let Studio Pro create an HttpClient that manages socket allocation robustly within the application. ### Method ```csharp public System.Net.Http.HttpClient CreateHttpClient() ``` ### Returns An `HttpClient` instance managed by Studio Pro. ``` -------------------------------- ### IAssociation.ParentDeleteBehavior Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IAssociation/ParentDeleteBehavior.md Gets or sets the behavior that occurs when deleting the parent association. ```APIDOC ## IAssociation.ParentDeleteBehavior Property The [`behavior`](../DeletingBehavior.md) which occurs when deleting the parent association. ```csharp public DeletingBehavior ParentDeleteBehavior { get; set; } ``` ### See Also * enum [DeletingBehavior](../DeletingBehavior.md) * interface [IAssociation](../IAssociation.md) * namespace [Mendix.StudioPro.ExtensionsAPI.Model.DomainModels](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### Create Microflows Programmatically with IMicroflowService Source: https://context7.com/mendix/extensionapi-samples/llms.txt Demonstrates how to create microflows, define parameters and return values, and insert microflow call activities using the IMicroflowService. Ensure all calls are made within a transaction on IModel. ```csharp using System.ComponentModel.Composition; using Mendix.StudioPro.ExtensionsAPI.Model; using Mendix.StudioPro.ExtensionsAPI.Model.DataTypes; using Mendix.StudioPro.ExtensionsAPI.Model.Microflows; using Mendix.StudioPro.ExtensionsAPI.Model.Projects; using Mendix.StudioPro.ExtensionsAPI.Services; [Export(typeof(MicroflowBuilder))] [method: ImportingConstructor] public class MicroflowBuilder(IMicroflowService microflowService, IMicroflowExpressionService expressionService) { public void Build(IModel currentApp) { var module = currentApp.Root.GetModules().Single(m => m.Name == "MyFirstModule"); using var tx = currentApp.StartTransaction("Create calculation microflows"); // --- Helper microflow: MultiplicationMicroflow(a: Integer, b: Integer): Integer --- var mulMicroflow = microflowService.CreateMicroflow( currentApp, module, "MultiplicationMicroflow", new MicroflowReturnValue(DataType.Integer, expressionService.CreateFromString("$a * $b")), ("a", DataType.Integer), ("b", DataType.Integer)); // --- Helper microflow: AdditionMicroflow(x: Decimal, y: Decimal): Decimal --- var addMicroflow = microflowService.CreateMicroflow( currentApp, module, "AdditionMicroflow", new MicroflowReturnValue(DataType.Decimal, expressionService.CreateFromString("$x + $y")), ("x", DataType.Decimal), ("y", DataType.Decimal)); // --- Calling microflow: Microflow(): Boolean --- var callerMicroflow = microflowService.CreateMicroflow( currentApp, module, "CallerMicroflow", new MicroflowReturnValue(DataType.Boolean, expressionService.CreateFromString("($mulResult - round($addResult) > 0)"))); // Insert a call to MultiplicationMicroflow after start var mulCallActivity = currentApp.Create(); var mulCallAction = currentApp.Create(); mulCallAction.MicroflowCall = currentApp.Create(); mulCallAction.MicroflowCall.Microflow = mulMicroflow.QualifiedName; mulCallAction.OutputVariableName = "mulResult"; foreach (var (name, expr) in new[] { ("a", "10"), ("b", "100") }) { var param = microflowService.GetParameters(mulMicroflow).Single(p => p.Name == name); var mapping = currentApp.Create(); mapping.Argument = expressionService.CreateFromString(expr); mapping.Parameter = param.QualifiedName; mulCallAction.MicroflowCall.AddParameterMapping(mapping); } mulCallActivity.Action = mulCallAction; microflowService.TryInsertAfterStart(callerMicroflow, mulCallActivity); tx.Commit(); // Result: three microflows created in MyFirstModule with proper parameters, // return types, and a call activity wired up programmatically. } } ``` -------------------------------- ### Get Documents by Type Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Projects/IProject/GetDocuments.md Retrieves documents of a specific type from the project, grouped by module. This overload filters documents based on the provided document type. ```csharp public Dictionary> GetDocuments(Type documentType) ``` -------------------------------- ### GetConfigurations Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Settings/IConfigurationSettings.md Retrieves all available configurations. ```APIDOC ## GetConfigurations ### Description Retrieves all available configurations. ### Method Signature `GetConfigurations()` ``` -------------------------------- ### CurrentLanguage Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI/IConfiguration/CurrentLanguage.md Gets the current language for the UI of Studio Pro. ```APIDOC ## CurrentLanguage Property ### Description Gets the current language for the UI of Studio Pro. ### Signature ```csharp public CultureInfo CurrentLanguage { get; } ``` ### Return Value Returns a `CultureInfo` object representing the current UI language. ``` -------------------------------- ### Accessing Studio Pro Configuration Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IConfigurationService/Configuration.md This C# code snippet demonstrates how to access the current Studio Pro configuration through the `Configuration` property of the `IConfigurationService`. This property returns an `IConfiguration` object. ```csharp public IConfiguration Configuration { get; } ``` -------------------------------- ### InitialValueExpression Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/ReduceListFunction.md Gets the expression that defines the initial value for the reduce operation. ```APIDOC ## InitialValueExpression ### Description Retrieves the expression that specifies the starting value for the reduce operation. This value is used as the initial accumulator in the reduction process. ### Property Type [InitialValueExpression](ReduceListFunction/InitialValueExpression.md) ``` -------------------------------- ### IMicroflowService - Creating Microflows Source: https://context7.com/mendix/extensionapi-samples/llms.txt Demonstrates how to create new microflows with parameters and return values using the IMicroflowService. It also shows how to insert activities, such as microflow calls, into a microflow. ```APIDOC ## IMicroflowService — Creating and manipulating microflows Injected service that creates microflows with parameters and return values, inserts activities, and queries existing microflow content. All calls must be made inside a transaction on `IModel`. ```csharp using System.ComponentModel.Composition; using Mendix.StudioPro.ExtensionsAPI.Model; using Mendix.StudioPro.ExtensionsAPI.Model.DataTypes; using Mendix.StudioPro.ExtensionsAPI.Model.Microflows; using Mendix.StudioPro.ExtensionsAPI.Model.Projects; using Mendix.StudioPro.ExtensionsAPI.Services; [Export(typeof(MicroflowBuilder))] [method: ImportingConstructor] public class MicroflowBuilder(IMicroflowService microflowService, IMicroflowExpressionService expressionService) { public void Build(IModel currentApp) { var module = currentApp.Root.GetModules().Single(m => m.Name == "MyFirstModule"); using var tx = currentApp.StartTransaction("Create calculation microflows"); // --- Helper microflow: MultiplicationMicroflow(a: Integer, b: Integer): Integer --- var mulMicroflow = microflowService.CreateMicroflow( currentApp, module, "MultiplicationMicroflow", new MicroflowReturnValue(DataType.Integer, expressionService.CreateFromString("$a * $b")), ("a", DataType.Integer), ("b", DataType.Integer)); // --- Helper microflow: AdditionMicroflow(x: Decimal, y: Decimal): Decimal --- var addMicroflow = microflowService.CreateMicroflow( currentApp, module, "AdditionMicroflow", new MicroflowReturnValue(DataType.Decimal, expressionService.CreateFromString("$x + $y")), ("x", DataType.Decimal), ("y", DataType.Decimal)); // --- Calling microflow: Microflow(): Boolean --- var callerMicroflow = microflowService.CreateMicroflow( currentApp, module, "CallerMicroflow", new MicroflowReturnValue(DataType.Boolean, expressionService.CreateFromString("($mulResult - round($addResult) > 0)"))); // Insert a call to MultiplicationMicroflow after start var mulCallActivity = currentApp.Create(); var mulCallAction = currentApp.Create(); mulCallAction.MicroflowCall = currentApp.Create(); mulCallAction.MicroflowCall.Microflow = mulMicroflow.QualifiedName; mulCallAction.OutputVariableName = "mulResult"; foreach (var (name, expr) in new[] { ("a", "10"), ("b", "100") }) { var param = microflowService.GetParameters(mulMicroflow).Single(p => p.Name == name); var mapping = currentApp.Create(); mapping.Argument = expressionService.CreateFromString(expr); mapping.Parameter = param.QualifiedName; mulCallAction.MicroflowCall.AddParameterMapping(mapping); } mulCallActivity.Action = mulCallAction; microflowService.TryInsertAfterStart(callerMicroflow, mulCallActivity); tx.Commit(); // Result: three microflows created in MyFirstModule with proper parameters, // return types, and a call activity wired up programmatically. } } ``` ``` -------------------------------- ### IActionActivity.Caption Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/IActionActivity/Caption.md Gets or sets the caption (display name) of the action activity in a microflow. ```APIDOC ## IActionActivity.Caption Property ### Description Gets or sets the caption (display name) of the action activity within a microflow. This property is used to define the text that appears for the activity in the microflow editor. ### Property Type `string` ### Access Modifiers `public string { get; set; }` ### Example Usage ```csharp // Assuming 'actionActivity' is an instance of IActionActivity string currentCaption = actionActivity.Caption; actionActivity.Caption = "New Action Name"; ``` ### See Also * interface `IActionActivity` * namespace `Mendix.StudioPro.ExtensionsAPI.Model.Microflows` ``` -------------------------------- ### DataType.Float Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DataTypes/DataType/Float.md Gets a data type representing the Float primitive data type. ```APIDOC ## DataType.Float ### Description Gets a data type representing the Float primitive data type. ### Method Signature ```csharp public static FloatType Float { get; } ``` ### Returns A `FloatType` object representing the Float primitive data type. ``` -------------------------------- ### DockablePaneExtension.Open Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.DockablePane/DockablePaneExtension/Open.md Creates a DockablePaneViewModelBase when a pane is opened. This method is called every time the pane is opened, and the pane can be opened automatically on extension load if it has been previously opened by a Studio Pro user. ```APIDOC ## Open ### Description Creates a `DockablePaneViewModelBase` when a pane is opened. ### Method Signature ```csharp public abstract DockablePaneViewModelBase Open() ``` ### Remarks This method is called every time when the pane is opened. Note that the pane can be opened automatically on extension load, if it has been previously opened by Studio Pro user. ``` -------------------------------- ### MenuViewModel Constructor (Submenus) Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Menu/MenuViewModel/MenuViewModel.md Creates a new MenuViewModel that contains submenus. This menu does not perform an action itself. ```APIDOC ## MenuViewModel constructor (2 of 2) Create a new [`MenuViewModel`](../MenuViewModel.md) that contains submenus. This menu does not perform an action. ```csharp public MenuViewModel(string caption, IEnumerable subMenus) ``` ### Parameters #### Path Parameters - **caption** (string) - Required - The caption of the menu. - **subMenus** (IEnumerable) - Required - The list of submenus. They can also contain other submenus or perform an action. ### Exceptions #### InvalidOperationException - **condition**: It throws an exception if passing in an empty list of submenus. ``` -------------------------------- ### IConstant.ExposedToClient Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Constants/IConstant/ExposedToClient.md Gets or sets a value indicating whether the constant is exposed to the client. ```APIDOC ## IConstant.ExposedToClient Property ### Description Gets or sets a value indicating whether the constant is exposed to the client. ### Syntax ```csharp public bool ExposedToClient { get; set; } ``` ``` -------------------------------- ### Subscribe to Studio Pro Event (No Arguments) Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI/UIExtensionBase/Subscribe.md Subscribe to a Studio Pro event without expecting event arguments. The provided action is executed when the event occurs. ```csharp protected IEventSubscription Subscribe(Action onEvent) where TEvent : IEvent ``` -------------------------------- ### Accessing the Name Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model/IQualifiedName/Name.md Retrieves the name of the referenced object. For example, 'MyHomePage'. ```csharp public string Name { get; } ``` -------------------------------- ### TryImportApp Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Services/IAppService/TryImportApp.md Attempts to import an MPK project file as a new application. The user will be presented with a dialog to configure the import process. ```APIDOC ## TryImportApp ### Description Attempts to import an MPK project file as a new application. The user will be presented with a dialog to configure the import process. ### Method Signature ```csharp public bool TryImportApp(IModel model, string mpkFilePath, string name) ``` ### Parameters #### Path Parameters * None #### Query Parameters * None #### Request Body * None ### Parameters - **model** (IModel) - Required - Reference to the current model. - **mpkFilePath** (string) - Required - Path to the MPK file that should be imported. - **name** (string) - Required - Suggested name for the new app. ### Return Value - **bool** - True if the import was successful, false otherwise. ### Exceptions - **ArgumentNullException**: Thrown if `name` or `mpkFilePath` is null or empty. - **ArgumentException**: Thrown if `mpkFilePath` does not exist. - **InvalidOperationException**: Thrown if the `model` has a pending transaction which is not allowed. ### Remarks It is recommended to use a temporary directory for `mpkFilePath` and remove the file after the import process is complete. ``` -------------------------------- ### IConfigurationService Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.md Provides access to the global Studio Pro configurations that can depend on environment or user-defined settings. ```APIDOC ## IConfigurationService ### Description Provides access to the global Studio Pro configurations that can depend on environment or user-defined settings. ### Methods (Specific methods not detailed in the source) ``` -------------------------------- ### DataStorageGuid Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IAttribute/DataStorageGuid.md Retrieves the unique GUID of an attribute as stored in the Mendix Runtime database. ```APIDOC ## DataStorageGuid Property ### Description Gets the Data Storage GUID of this attribute. This is the GUID that identifies this attribute in the Mendix Runtime database. ### Signature ```csharp public Guid DataStorageGuid { get; } ``` ``` -------------------------------- ### Subscribe to Studio Pro Event (With Arguments) Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI/UIExtensionBase/Subscribe.md Subscribe to a Studio Pro event that includes event arguments. The provided action receives the event arguments when the event occurs. ```csharp protected IEventSubscription Subscribe(Action onEvent) where TEvent : IEvent ``` -------------------------------- ### DataStorageGuid Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IAssociation/DataStorageGuid.md Retrieves the unique GUID of an association as stored in the Mendix Runtime database. ```APIDOC ## DataStorageGuid Property ### Description Gets the Data Storage GUID of this association. This is the GUID that identifies this association in the Mendix Runtime database. ### Property Type `Guid` ### Usage ```csharp public Guid DataStorageGuid { get; } ``` ``` -------------------------------- ### Embed Web View in a Dockable Pane Source: https://context7.com/mendix/extensionapi-samples/llms.txt Create a persistent side panel by subclassing DockablePaneExtension and returning a WebViewDockablePaneViewModel. Open the pane programmatically via IDockingWindowService. ```csharp using System.ComponentModel.Composition; using Mendix.StudioPro.ExtensionsAPI.UI.DockablePane; using Mendix.StudioPro.ExtensionsAPI.UI.Menu; using Mendix.StudioPro.ExtensionsAPI.UI.Services; using Mendix.StudioPro.ExtensionsAPI.UI.WebView; // 1. Define the pane [Export(typeof(DockablePaneExtension))] public class MyDockablePaneExtension : DockablePaneExtension { public const string ID = "my-dockable-pane"; public override string Id => ID; public override DockablePaneViewModelBase Open() => new MyDockablePaneWebViewModel("https://mendix.com"); } // 2. Define the web view model public class MyDockablePaneWebViewModel(string homePage) : WebViewDockablePaneViewModel { public override void InitWebView(IWebView webView) => webView.Address = new Uri(homePage); } // 3. Open it from a menu [Export(typeof(MenuExtension))] public class PaneMenuExtension(IDockingWindowService dockingWindowService, IMessageBoxService messageBoxService) : MenuExtension { public override IEnumerable GetMenus() { yield return new MenuViewModel("Say Hello", () => messageBoxService.ShowInformation("Hello World!")); yield return new MenuViewModel("Open My Dockable Pane", () => dockingWindowService.OpenPane(MyDockablePaneExtension.ID)); } } // Result: a dockable pane opens in Studio Pro displaying https://mendix.com ``` -------------------------------- ### ReturnVariableName Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/IMicroflowBase/ReturnVariableName.md Gets or sets the name of the variable that will hold the return value of the microflow. ```APIDOC ## ReturnVariableName Property ### Description Gets or sets the name of the variable that will hold the return value of the microflow. ### Signature ```csharp public string ReturnVariableName { get; set; } ``` ``` -------------------------------- ### Initialize Microflow with Parameters Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IMicroflowService/Initialize.md Initializes a microflow with specified parameters. Ensure the microflow is added to the app model first. The parameters define the name and data type for each input in the microflow. ```csharp public void Initialize(IMicroflow microflow, params (string name, DataType type)[] parameters) ``` -------------------------------- ### IActionActivity.Disabled Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.Microflows/IActionActivity/Disabled.md Gets or sets a value indicating whether the action activity is disabled. ```csharp public bool Disabled { get; set; } ``` -------------------------------- ### BackgroundJobStep Constructor Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.BackgroundJobs/BackgroundJobStep/BackgroundJobStep.md Initializes a new instance of the BackgroundJobStep class. Use this to define a step in a background job with a title, description, and the logic to execute. ```csharp public BackgroundJobStep(string title, string description, Func function) ``` -------------------------------- ### LocalizeDate Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DomainModels/IDateTimeAttributeType/LocalizeDate.md Gets or sets a value indicating whether the date-time attribute should be localized. ```APIDOC ## LocalizeDate Property ### Description Gets or sets a value indicating whether the date-time attribute should be localized. ### Syntax ```csharp public bool LocalizeDate { get; set; } ``` ### Type `bool` ### Remarks This property determines if the date-time values stored in the attribute should be adjusted based on the user's locale or time zone settings. ``` -------------------------------- ### DataType.Binary Property Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DataTypes/DataType/Binary.md Gets a data type representing the Binary primitive data type. ```APIDOC ## DataType.Binary Property Gets a data type representing the Binary primitive data type. ```csharp public static BinaryType Binary { get; } ``` ### See Also * class [BinaryType](../BinaryType.md) * class [DataType](../DataType.md) * namespace [Mendix.StudioPro.ExtensionsAPI.Model.DataTypes](../../Mendix.StudioPro.ExtensionsAPI.md) ``` -------------------------------- ### ShowQuestion Method Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.UI.Services/IMessageBoxService/ShowQuestion.md Displays a message box with a question, optional details, custom buttons, and a default button. ```APIDOC ## ShowQuestion ### Description Shows a message box with a question icon and the question provided. ### Method Signature ```csharp public string ShowQuestion(string question, string? details = null, string[]? buttons = null, string? defaultButton = null) ``` ### Parameters #### question (string) - Required the question to ask the user. #### details (string) - Optional optional extra information, which will be shown after the user clicks "Show Details" button. #### buttons (string[]) - Optional optional list of buttons instead of the default 'Close' button. #### defaultButton (string) - Optional optional button with keyboard focus when the dialog opens. It must be from the supplied list of buttons. ### Return Value (string) - the text of the button which was clicked, as the answer to the question. If user did not provide custom buttons, it will be 'Close'. ``` -------------------------------- ### CreateHttpClient Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Services/IHttpClientService/CreateHttpClient.md Creates an HttpClient instance managed by Studio Pro for robust socket allocation. ```APIDOC ## CreateHttpClient ### Description Let Studio Pro create an HttpClient that manages socket allocation robustly within the application. ### Method Signature ```csharp public IHttpClient CreateHttpClient() ``` ### Returns An instance of `IHttpClient` that is managed by Studio Pro for robust socket allocation. ``` -------------------------------- ### DataType.Enumeration Source: https://github.com/mendix/extensionapi-samples/blob/main/API Reference/Mendix.StudioPro.ExtensionsAPI.Model.DataTypes/DataType/Enumeration.md Gets a data type representing a specific enumeration defined in an app model. ```APIDOC ## DataType.Enumeration ### Description Gets a data type representing a specific enumeration defined in an app model. ### Method Signature ```csharp public static EnumerationType Enumeration(IQualifiedName enumeration) ``` ### Parameters #### Path Parameters - **enumeration** (IQualifiedName) - Required - The qualified name of the enumeration. ### See Also * class [EnumerationType](../EnumerationType.md) * interface [IQualifiedName<T>](../../Mendix.StudioPro.ExtensionsAPI.Model/IQualifiedName-1.md) * interface [IEnumeration](../../Mendix.StudioPro.ExtensionsAPI.Model.Enumerations/IEnumeration.md) * class [DataType](../DataType.md) * namespace [Mendix.StudioPro.ExtensionsAPI.Model.DataTypes](../../Mendix.StudioPro.ExtensionsAPI.md) ```