Namespace: DuESF

DuESF

The Duduf ExtendScript Framework.
by RxLaboratory and Duduf.
WARNING: all objects marked deprecated will be removed in the version 1.1.0 of the framework.
Version:
  • 1.0.0
Author:
  • Nicolas Dufresne and contributors
License:
  • GPL-3.0
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program. If not, see http://www.gnu.org/licenses/.

Example

// Encapsulate everything to avoid global variables!
// The parameter is either undefined (stand alone script) or the panel containing the ui (ScriptUI)
(function(thisObj)
{
     // Include the framework
     #include "DuESF.jsxinc";
     
     // Running the init() method of DuAEF is required to setup everything properly.
     DuESF.init( "YourScriptName", "1.0.0", "YourCompanyName" );
     
     // These info can be used by the framework to improve UX, but they're optional
     DuESF.chatURL = 'http://chat.rxlab.info'; // A link to a live-chat server like Discord or Slack...
     DuESF.bugReportURL = 'https://github.com/RxLaboratory/DuAEF_Dugr/issues/new/choose'; // A link to a bug report form
     DuESF.featureRequestURL = 'https://github.com/RxLaboratory/DuAEF_Dugr/issues/new/choose'; // A link to a feature request form
     DuESF.aboutURL = 'http://rxlaboratory.org/tools/dugr'; // A link to the webpage about your script
     DuESF.docURL = 'http://dugr.rxlab.guide'; // A link to the documentation of the script
     DuESF.scriptAbout = 'Duduf Groups: group After Effects layers!'; // A short string describing your script
     DuESF.companyURL = 'https://rxlaboratory.org'; // A link to your company's website
     DuESF.rxVersionURL = 'http://version.rxlab.io' // A link to an RxVersion server to check for updates
     
     // Build your UI here, declare your methods, etc.

     // This will be our main panel
     var ui = DuScriptUI.scriptPanel( thisObj, true, true, new File($.fileName) );
     ui.addCommonSettings(); // Automatically adds the language settings, location of the settings file, etc

     DuScriptUI.staticText( ui.settingsGroup, "Hello world of settings!" ); // Adds a static text to the settings panel
     DuScriptUI.staticText( ui.mainGroup, "Hello worlds!" ); // Adds a static text to the main panel
     
     // When you're ready to display everything
     DuScriptUI.showUI(ui);

     // Note that if you don't have a UI or if you don't use DuScriptUI to show it,
     // you HAVE TO run this method before running any other function:
     // DuESF.enterRunTime();
 
})(this);

Members

staticDuESF.aboutURLstring

The url about the script

staticDuESF.bugReportURLstring

The url for reporting bugs

staticDuESF.chatURLstring

The url for a chat server about the script

staticDuESF.companyIconstring

An icon for this company

staticDuESF.companyNamestring

The name of the company/organisation/individual developping this tool

staticDuESF.companyURLstring

The URL to the company's website

staticDuESF.debugBoolean

Set to true and enable debug mode if you're a developper

staticDuESF.docURLstring

The url to the documentation of the script

staticDuESF.donateURLstring

The url for donations, support, like...

staticDuESF.featureRequestURLstring

The url for requesting features

static,readonlyDuESF.fileFile

The current DuESF File

staticDuESF.forumURLstring

The url for the forum about the script

staticDuESF.hostDuESF.HostApplication

The host application

static,readonlyDuESF.HostApplicationstring

The applicatiosns DuESF can be used with.
Properties:
Name Type Default Description
AFTER_EFFECTS string after-effects
ILLUSTRATOR string illustrator
PHOTOSHOP string photoshop
INDESIGN string indesign

staticDuESF.hostVersion

The version of the host application

staticDuESF.rxVersionURLstring

The URL to a rxVersion server used to check for updates

staticDuESF.scriptAboutstring

The text about the script

static,readonlyDuESF.scriptFirstRunboolean

True if the script is run for the first time (new or the version has changed since last run)

staticDuESF.scriptIconstring

An icon for this script

static,readonlyDuESF.scriptNamestring

The name of the script using this instance of DuESF. Must be set by DuESF.init.

staticDuESF.scriptSettingsDuSettings

The settings to store the script specific settings.

static,readonlyDuESF.scriptVersionDuVersion

The version of the script using this instance of DuESF. Must be set by DuESF.init.

static,readonlyDuESF.Stateint

Enum for states.
Properties:
Name Type Default Description
NOT_SET int -1
INIT int 0
RUNTIME int 1

staticDuESF.stateDuESF.State

The current state of the script
Default Value:
  • DuESF.State.NOT_SET

static,readonlyDuESF.versionDuVersion

The Current DuESF Version

Methods

staticDuESF.delete()

D:/DEV_SRC/RxOT/DuPSF/tools/output/DuPSF.jsxinc, line 296
Removes all DuESF parts from memory. Call this if you've updated before you reload DuESF.

staticDuESF.enterRunTime()

D:/DEV_SRC/RxOT/DuPSF/tools/output/DuPSF.jsxinc, line 284
This method has to be called once at the end of the script, when everything is ready and the main UI visible (after any prompt or setup during startup).

staticDuESF.init(hostApplication, scriptName, scriptVersion, companyName)

D:/DEV_SRC/RxOT/DuPSF/tools/output/DuPSF.jsxinc, line 246
This method has to be called once at the very beginning of the script, just after the inclusion of DuESF #include DuESF.jsxinc
Name Type Default Description
hostApplication DuESF.host The host application of the script.
scriptName string "DuESF" optional The name of your script, as it has to be displayed in the UI and the filesystem
scriptVersion string "0.0.0" optional The version of your script, in the form "XX.XX.XX-Comment", for example "1.0.12-Beta". The "-Comment" part is optional.
companyName string "RxLaboratory" optional The name of the company/organisation/individual developping this script.