CreateAddon (XSIApplication)
Description
Creates a new add-on package object to be used to package plug-ins. For example, you can package SPDL files, presets, layouts, toolbars, custom commands, devices, library files, etc.
For more information on the kinds of items that can be part of and add-on package, see siAddonItemType.
Note: In many cases it can be easier to create an add-on by calling PackageAddon.
C# Syntax
Addon XSIApplication.CreateAddon();
Return Value
Examples
Python Example
#
# This example demonstrates how to install an add-on package.
#
import os # for directory handling
from win32com.client import constants as c
# **********************************
# This function just provide the means to remove the details of
# creating the HTML page.
def makeHTMLPage() :
# Build the filename & path
sUserPath = Application.InstallationPath( c.siUserPath )
sHelpFileName = XSIUtils.BuildPath( sUserPath, "Data", "HelpMe.html" )
# Create a standard hello world script file
fHWFile = open( sHelpFileName, "w" )
fHWFile.write( "<html>\n" )
fHWFile.write( "<head>\n" )
fHWFile.write( "\t<title>Help Page for Testing Add-ons</title>\n" )
fHWFile.write( "</head>" )
fHWFile.write( "<body>\n" )
fHWFile.write( "\n<p>Help! I'm trapped inside this HTML code!</p>\n" )
fHWFile.write( "</body>\n" )
fHWFile.write( "</html>" )
fHWFile.close()
# Return the name of the new html page
return sHelpFileName
# **********************************
# Get the first available workgroup as the add-on destination
sPath = Application.InstallationPath( c.siWorkgroupPath )
if not sPath :
# If the workgroup doesn't already exist, then add it
tmppath = XSIUtils.BuildPath( Application.InstallationPath(c.siUserPath), "TempWorkgrp" )
if ( not os.access(tmppath, os.F_OK) ) :
os.mkdir( tmppath )
Application.AddWorkgroup( tmppath )
sPath = Application.InstallationPath( c.siWorkgroupPath )
sHTMLName = makeHTMLPage()
# Create the add-on package object
oAddOn = Application.CreateAddon()
# Add the HTML page to the add-on package
oAddOn.AddOtherItem( sHTMLName )
# Save the package in the Addons directory
sPath = XSIUtils.BuildPath( sPath, "Addons" )
XSIUtils.EnsureFolderExists( sPath )
sAddOnFileName = XSIUtils.BuildPath( sPath, "myHelpPkg.xsiaddon" )
oAddOn.Save( sAddOnFileName )
Application.LogMessage( "Created add-on file: " + sAddOnFileName )
# Install the add-on package containing the HTML page
Application.InstallAddOn( sAddOnFileName, c.siWorkgroupAddonPath )
# Comment out the following line if you want to see the add-on file
# (you will have to uninstall the add-on manually):
Application.UnInstallAddon( sAddOnFileName )
#INFO : <YourWorkgrpPath>\Addons\myHelpPkg.xsiaddon
SOFTIMAGE|XSI v6.01