Extension apis, How dreamweaver processes javascript in extensions – Adobe Extending Dreamweaver CS4 User Manual
Page 85
79
EXTENDING DREAMWEAVER CS4
Extending Dreamweaver
Extension APIs
The extension APIs provide you with the functions that Dreamweaver calls to implement each type of extension. You
must write the bodies of these functions as described for each extension type and specify the return values that
Dreamweaver expects.
If you are a developer who wants to work directly in the C programming language, there is a C extensibility API that
lets you create dynamic link libraries (DLLs). The functionality that is provided in these APIs wraps your C DLLs in
JavaScript so that your extension can work seamlessly in Dreamweaver.
The documentation of extension APIs outlines what each function does, when Dreamweaver calls it, and what value
Dreamweaver expects it to return.
See the Dreamweaver API Reference for information about the Utility API and the JavaScript API, which provide
functions that you can use to perform specific tasks in your extensions.
How Dreamweaver processes JavaScript in extensions
Dreamweaver checks the Configuration/extension_type folder during startup. If it encounters an extension file within
the folder, Dreamweaver processes the JavaScript by completing the following steps:
•
Compiling everything between the beginning and ending
SCRIPT
tags
•
Executing any code within
SCRIPT
tags that is not part of a function declaration
Note: This procedure is necessary during startup because some extensions might require global variables to initialize.
Dreamweaver performs the following actions for any external JavaScript files that are specified in the
SRC
attributes of
SCRIPT
tags:
•
Reads in the file
•
Compiles the code
•
Executes the procedures
Note: If any JavaScript code in your extension file contains the string ", the JavaScript interpreter reads the string as an
ending
script
tag and reports an unterminated string literal error. To avoid this problem, break the string into pieces
and concatenate them like this:
"<' + '/SCRIPT>".
Dreamweaver executes code in the
onLoad
event handler (if one appears in the
body
tag) when the user selects the
command or action from a menu for the Command and Behavior action extension types.
Dreamweaver executes code in the
onLoad
event handler in the
body
tag if the body of the document contains a form
for object extensions.
Dreamweaver ignores the
onLoad
handler on the
body
tag in the following extensions:
•
Data translator
•
Property inspector
•
Floating panel
For all extensions, Dreamweaver executes code in other event handlers (for example,
onBlur="alert('This is a
required field.')"
) when the user interacts with the form fields to which they are attached.
Dreamweaver supports the use of event handlers within links. Event handlers in links must use syntax, as shown in the
following example: