Extension XML

Format of customized extension.xml files.

XML Overview

The extension manager allows for additional plugin features to be loaded into the application through .xml, scripts, and resources. The extension .xml structure consists of a single top file which references all of the required resources by relative path of the extension folder.

extension.xml Example

The following is an example of a extension.xml file:
<section name="Extension">

	<entry name="name"			value="Extension Capture Ribbon Demo" />
	<entry name="resources"			value="images" />
	<entry name="minProductVersion" value="2022.2" />
	<entry name="version"			value="1.0" />
	<entry name="author"			value="Altair" />
	<entry name="description"		value="HyperWorks extension demo showing you how to incorporate your custom content in the application ribbon.&#xD;&#xD;Contains captues image features for three different clients: HyperMesh, HyperView and HyperGraph." />
	<entry name="supportedClient"		value="HyperWorksDesktop" />
	<entry name="tclscript"			value="global-init.tcl" />
	
	<section name="profile" value="HyperMesh">
		<entry name="ribbonxml"		value="hm/hm-ribbon.xml" />
	</section>

	<section name="profile" value="HyperView">
		<entry name="ribbonxml" 	value="hv/hv-ribbon.xml" />
	</section>

	<section name="profile" value="HyperGraph">
		<entry name="ribbonxml" 	value="hg/hg-ribbon.xml" />
	</section>

</section>

Tags

section

Base container for the extension.
Attributes
name
Children
entry

entry

Each individual reference entry for the add on specified by name value pairs.
Attributes
name, value
Children
None

Options

profile

Supported HyperWorks client (HyperMesh, HyperView, HyperGraph, and so on)

name

Unique identifier for the extension

displayName

Name displayed in the extension manager

version

Version displayed in the extension manager

script

Relative path to the Python script invoked on load

resources

Relative path to the folder containing images and other resource files

Defaults to resources folder

workflowhelp

Relative path to the workflowhelp .xml file

minProductVersion

Minimum HyperWorks version required for the extension to be loaded

version

Version of the extension

removable

Disable the Remove button

supportedClient

Application for which the extension is supported (HyperWorks Desktop, Inspire, and so on)

documentation

Relative path to the help .html file which will be loaded using the description link

contexts

Relative path to the folder containing context scripts

Defaults to context folder

tclscript

Relative path to the .tcl script invoked on load

ribbonxml

Relative path to the ribbon .xml file

toolbars

Relative path to the directory which contains the toolbar.xml file

Example XML
<section name="Extension">

    <entry name="name" value="Postprocessing in HV, HG, MV" />
    <entry name="displayName" value="Postprocessing in HV, HG, MV" />
    <entry name="resources" value="images" />
    
    <entry name="workflowhelp" value="contexts/workflowhelp.xml" />
    <entry name="minProductVersion" value="HWX Version 2022" />
    <entry name="version" value="2.0" />
    <entry name="supportedClient" value="HyperWorksDesktop" />
    <entry name="script" value="pyscript.py" />
    <entry name="documentation" value="documentation/index.html" />
    <entry name="removable" value="false"/>
    <entry name="tclscript" value="global-init.tcl" />

    <section name="profile" value="HyperMesh">
        <entry name="ribbonxml" value="hm/hm-ribbon.xml" />
        <entry name="tclscript" value="hm/hm-init.tcl" />
        <entry name="toolbars" value="hm/toolbars" />
        <entry name="contexts" value="hm/contexts" />
    </section>

    <section name="profile" value="HyperView">
        <entry name="ribbonxml" value="hv/hv-ribbon.xml" />
        <entry name="tclscript" value="hv/hv-init.tcl" />
    </section>

    <section name="profile" value="HyperGraph">
        <entry name="ribbonxml" value="hg/hg-ribbon.xml" />
        <entry name="tclscript" value="hg/hg-init.tcl" />
        <entry name="toolbars" value="hg/toolbars" />
    </section>

    <section name="profile" value="MotionView">