Acknowledgments | p. xv |
Introduction | p. xix |
Beginning Dreamweaver Extensibility | p. 1 |
What Is an Extension? | p. 2 |
What Kinds of Extensions Are There? | p. 4 |
Behaviors | p. 5 |
Objects | p. 5 |
Commands | p. 6 |
Data Sources | p. 6 |
Server Behaviors | p. 7 |
Browser Profiles | p. 7 |
Floaters | p. 7 |
Inspectors | p. 8 |
Menus | p. 8 |
Server Models | p. 8 |
Third-Party Tags | p. 9 |
Translators | p. 9 |
Reports | p. 9 |
References | p. 9 |
Building Extensions | p. 10 |
The Configurations Folder | p. 11 |
The User Interface | p. 11 |
JavaScript Code | p. 13 |
The Document Object Model | p. 13 |
Selections and Offsets | p. 14 |
Nodes | p. 16 |
Dot Notation | p. 17 |
JavaScript API Methods | p. 19 |
Shared Folder Functions | p. 21 |
Display Help | p. 21 |
What to Take Away from this Chapter | p. 23 |
Extending Dreamweaver Documents | p. 23 |
Objects and Behaviors | p. 25 |
Objects | p. 26 |
A More Complex Object | p. 31 |
Coding Your Object | p. 33 |
Third-Party Tags and XML | p. 38 |
Behaviors | p. 40 |
Behavior Functions | p. 40 |
The BUDAlert Behavior | p. 41 |
A More Complex Behavior | p. 45 |
Focus Field | p. 45 |
Focus Field Functions | p. 47 |
The onLoad Event | p. 49 |
The Focus Field Behavior | p. 49 |
Focus Field Behavior Functions | p. 52 |
Some General Observations about Focus Field | p. 55 |
What to Take Away from this Chapter | p. 57 |
Exercises | p. 58 |
Commands | p. 59 |
Using Commands | p. 60 |
The Command API | p. 61 |
Menu-Location=None | p. 63 |
Creating a Basic Command | p. 64 |
Buttons in Command Files | p. 66 |
Using Regular Expressions in Commands | p. 69 |
Making History Commands | p. 72 |
Copying a History Command to the Clipboard | p. 73 |
Using Commands from Other Extensions | p. 73 |
Recursion | p. 74 |
Adding Head Code | p. 75 |
Building the Extension | p. 76 |
The User Interface | p. 80 |
Menu Commands | p. 82 |
Creating the Set Text Editor Prefs Command | p. 83 |
The Design Notes Functions | p. 85 |
Updating the User Interface | p. 86 |
Creating the Menu Items | p. 87 |
The Open With Command | p. 88 |
What to Take Away from this Chapter | p. 91 |
Exercises | p. 92 |
Property Inspectors and Floaters | p. 93 |
Property Inspectors | p. 94 |
The Interface of a Property Inspector | p. 94 |
Inspecting the Selection | p. 97 |
Form Inspector | p. 98 |
The canInspectSelection Function | p. 102 |
The inspectSelection Function | p. 103 |
Other Custom Support Functions | p. 105 |
Floaters | p. 108 |
Creating an HTML Mini Editor | p. 108 |
Running Commands from a Floater | p. 111 |
Creating an Extension Mini Editor | p. 114 |
What to Take Away from this Chapter | p. 120 |
Exercises | p. 120 |
Introduction to UltraDev Extensions | p. 123 |
How Is UltraDev Different from Dreamweaver? | p. 124 |
Server Behaviors | p. 124 |
Steps for Building a Server Behavior Extension | p. 126 |
Your Final Code: The First Step | p. 128 |
Accessing the Server Behavior Builder (SBB) | p. 129 |
Creating the Code Blocks | p. 131 |
Generating the Interface | p. 133 |
Adding JavaScript to the Auto-Generated File | p. 136 |
XML Files | p. 137 |
Extending the Server Behavior Builder (SBB) | p. 141 |
Other UltraDev Extensions | p. 146 |
Data Sources | p. 146 |
Connections | p. 146 |
Server Formats | p. 147 |
Server Models | p. 148 |
What to Take Away from this Chapter | p. 148 |
Exercises | p. 149 |
The Dreamweaver Menus and Extension Packaging | p. 151 |
The menus.xml File | p. 152 |
Packaging Extensions | p. 152 |
Main Tag | p. 153 |
Products and Authors Tags | p. 153 |
Description of the Extension | p. 154 |
Putting Your Files into the Extension Package | p. 154 |
Changing the Dreamweaver Menus | p. 156 |
Wrapping Up the Package | p. 157 |
Using Shared Files in Your Extension Package | p. 159 |
Extension Organization | p. 161 |
Adding Your Own Menu and Menu Items | p. 162 |
Adding an Item to the Context Menus | p. 165 |
Using the MXI File Creator Packager Extension | p. 168 |
What to Take Away from this Chapter | p. 175 |
Exercises | p. 175 |
Testing and Deploying Extensions | p. 177 |
Testing and Debugging the Extension | p. 178 |
Using Alert Boxes | p. 179 |
Using Eval and Trace Console | p. 182 |
The Public Domain Extension Debugger Extension | p. 186 |
Repackaging and Version Control for Extensions | p. 187 |
Deploying the Extension | p. 188 |
The Macromedia Exchange | p. 189 |
Downloading Extensions | p. 190 |
Uploading Extensions | p. 192 |
Other Options | p. 197 |
What to Take Away from this book | p. 197 |
Shared Functions Reference | p. 199 |
Shared CMN Folder Functions | p. 200 |
Shared\MM\Scripts\CMN#Ul.js | p. 200 |
Shared\MM\Scripts\CMN#doclnfo.js | p. 201 |
Shared\MM\Scripts\CMN\DOM.js | p. 203 |
Shared\MM\Scripts\CMN\file.js | p. 204 |
Shared\MM\Scripts\CMN\form.js | p. 206 |
Shared\MM\Scripts\CMN\insertion.js | p. 206 |
Shared\MM\Scripts\CMN#string.js | p. 207 |
Shared Class Folder | p. 208 |
UltraDev Shared Files | p. 209 |
Other Important Files | p. 210 |
Extensions.txt | p. 211 |
SourceFormat.txt | p. 211 |
TagAttributeList.txt | p. 212 |
localTextDW.htm and localTextUltraDev.htm | p. 212 |
Summary | p. 213 |
Further Reading | p. 215 |
Web Sites | p. 216 |
Books | p. 217 |
Index | p. 123 |
Table of Contents provided by Syndetics. All Rights Reserved. |