Skip to main content

File preparation

When developing a scripted extension, create a development folder in any location and prepare the following files.

  • Required files
    • Manifest file (manifest.json) ・ ・ ・ Definition of extension
    • Script file ・ ・ ・ C# script file that is the entry point
    • Locale file (locale.*.json) ・ ・ ・ Definition for each localized language (required only for multilingual support)

For example, when developing an extension named helloworld in a scripted manner, the basic file structure is as follows.

helloworld /
manifest.json
main.cs
locale.en.json (for multilingual)
locale.ja.json (for multilingual)
resources /
button.png

Manifest file

  • The Next Design extension always requires one file named manifest.json. This is called the Manifest.
  • This manifest contains the following definitions:
    • Overview of extensions
    • File name that is the entry point
    • life cycle
    • Extension points for UI, events, and commands
  • Use UTF-8 as the character code of the manifest file.
  • The icon image on the ribbon specified in the manifest is prepared as a PNG format file.
{
"name": "Hello World",
"main": "main.cs",
"lifecycle": "application",

"extensionPoints": {
...
}
}

For more information on manifests, see Manifest Reference.

Script file

  • Implement the handler called from the extension point defined in the manifest in the script file.
  • A file that implements a handler called from an extension point is called a entry point.
  • Only one entry point can be specified in the manifest. All handlers should be implemented at one entry point.
//Command handler public function
public void SayHello (ICommandContext context, ICommandParams paramemters)
{
App.Window.UI.ShowInformationDialog ("Hello!", "Hello World");
}

For more information on handlers, see Implementing Handlers with Scripts below.

Prepare a locale file (optional)

  • If the extension is multilingual, define a locale file named locale. {Lang} .json for each localized language.
  • For more information on multilingual support, see Multilingual Support.