JSScriptingSuite.h File Reference

This file contains all the public definitions and structures related to using the JavaScript engine. More...

#include "ASTypes.h"
#include "ASPragma.h"
#include "SPFiles.h"

Go to the source code of this file.

Data Structures

struct  JSScriptingSuite4
 The set of routines available in Version 4 of the JavaScript suite. More...
struct  JSScriptingSuite3
 The set of routines available in Version 3 of the JavaScript suite. More...
struct  JSScriptingSuite2
 The set of routines available in Version 2 of the JavaScript suite. More...
struct  JSScriptingSuite1
 The set of routines available in Version 1 of the JavaScript suite. More...
struct  ScriptValueSuite1
struct  LiveObjectScriptSuite1

Defines

#define kJSScriptingSuite   "JavaScript Scripting Suite"
 Unique identifier for the JavaScript Scripting Suite.
#define kJSScriptingSuiteVersion4   4L
#define kJSScriptingSuiteVersion3   3L
#define kJSScriptingSuiteVersion2   2L
#define kJSScriptingSuiteVersion1   1L
#define kJSScriptingSuiteVersion   kJSScriptingSuiteVersion3
#define kJSScriptingVersion   kJSScriptingSuiteVersion
JavaScript Error Codes

Standard errors that are returned: kSPBadParameterError kSPTroubleInitializingError

Suite specific errors:

#define kJSScriptExecutionError   'ScEr'
 Error executing the script code.
#define kJSScriptInternalError   'ScIE'
 Internal error executing the script code.
#define kJSScriptGeneralError   'ScGr'
 General error executing the script code.
#define kJSScriptCantCreateEngine   'ScCJ'
 Engine cannot be created at this time.
#define kJSScriptBadEnginReference   'ScBR'
 Engine reference is not valid.
#define kJSScriptLanguageNotSupported   'Sc!s'
 Language is not supported.
#define kJSBufferTooSmall   'Sbts'
 Buffer is too small error executing the script code.

Typedefs

typedef struct _t_JSEngine * JSEngineRef
 Opaque ID for JavaScript engine.

JavaScript Execution Modes

#define kScriptValueSuite   "Script Value Suite"
 Unique identifier for the Script Value suite.
#define kScriptValueSuiteVersion1   1L
#define kLiveObjectScriptSuite   "LiveObject Script Suite"
 Unique identifier for the JavaScript Scripting Suite.
#define kLiveObjectScriptSuiteVersion1   1L
enum  JavaScriptExecutionMode {
  kJSExecutionModeNoDebug = 1,
  kJSExecutionModeDebugOnError = 2,
  kJSExecutionModeDebugAtBeginning = 3
}
enum  {
  kScriptValue_Undefined,
  kScriptValue_Null,
  kScriptValue_Boolean,
  kScriptValue_Number,
  kScriptValue_String,
  kScriptValue_Array,
  kScriptValue_Object,
  kScriptValue_ByteArray
}
enum  {
  kScriptValue_Double,
  kScriptValue_Int32,
  kScriptValue_UInt32,
  kScriptValue_Int64
}
typedef struct
Opaque_ScriptValueRef * 
ScriptValueRef
typedef SPInt32 ScriptValueType
typedef SPInt32 ScriptValueNumericType
typedef SPBoolean(* ScriptKeyIterator )(SPUInt32, const char *, void *userData)

Detailed Description

This file contains all the public definitions and structures related to using the JavaScript engine.

The JavaScript suite is a set of routines to execute JavaScript code in a plug-in. These routines allow you to acquire, execute and release a JavaScript engine. Use the JSScriptingSuite2 suite to get a JavaScript engine and execute scripting code. The JavaScript suite is available in Adobe Photoshop 12.0 and later.


Define Documentation

#define kJSScriptingSuite   "JavaScript Scripting Suite"

Unique identifier for the JavaScript Scripting Suite.

#define kJSScriptingSuiteVersion4   4L
#define kJSScriptingSuiteVersion3   3L
#define kJSScriptingSuiteVersion2   2L
#define kJSScriptingSuiteVersion1   1L
#define kJSScriptExecutionError   'ScEr'

Error executing the script code.

#define kJSScriptInternalError   'ScIE'

Internal error executing the script code.

#define kJSScriptGeneralError   'ScGr'

General error executing the script code.

#define kJSScriptCantCreateEngine   'ScCJ'

Engine cannot be created at this time.

#define kJSScriptBadEnginReference   'ScBR'

Engine reference is not valid.

#define kJSScriptLanguageNotSupported   'Sc!s'

Language is not supported.

#define kJSBufferTooSmall   'Sbts'

Buffer is too small error executing the script code.

#define kScriptValueSuite   "Script Value Suite"

Unique identifier for the Script Value suite.

#define kScriptValueSuiteVersion1   1L
#define kLiveObjectScriptSuite   "LiveObject Script Suite"

Unique identifier for the JavaScript Scripting Suite.


Typedef Documentation

typedef struct _t_JSEngine* JSEngineRef

Opaque ID for JavaScript engine.

typedef struct Opaque_ScriptValueRef* ScriptValueRef
typedef SPInt32 ScriptValueType
typedef SPInt32 ScriptValueNumericType
typedef SPBoolean(* ScriptKeyIterator)(SPUInt32, const char *, void *userData)

Enumeration Type Documentation

Enumerator:
kJSExecutionModeNoDebug 

Never stop in the debugger.

kJSExecutionModeDebugOnError 

Stop in the debugger if an error is encountered.

kJSExecutionModeDebugAtBeginning 

Stop in the debugger immediately.

anonymous enum
Enumerator:
kScriptValue_Undefined 
kScriptValue_Null 
kScriptValue_Boolean 
kScriptValue_Number 
kScriptValue_String 
kScriptValue_Array 
kScriptValue_Object 
kScriptValue_ByteArray 
anonymous enum
Enumerator:
kScriptValue_Double 
kScriptValue_Int32 
kScriptValue_UInt32 
kScriptValue_Int64