Class poly push button:

a clickable polygon area
Properties:
class class This property must be set to poly push button.
bounds rectangle
enabled* boolean, integer or list [W]
contents* list of integer The coordinates of the polygon's vertices. (the bounding rectangle)
Return value:
boolean True if this button was used to dismiss the dialog, otherwise false.

Example:

	-- A triangular push button
{class:poly push button, bounds:[195, 30, 340, 150], contents:[0, 0, 145, 60, 60, 120, 0, 0]}

A poly push button is a transparent polygonal area that behaves like a push button. It may be used to effect arbitrary shaped, push button like, dialog items in combination with parts of or whole pict, icon and static text dialog items. In order to activate the button the user must click the mouse within the button's polygon as defined by its contents property, or within the rectangle defined by its bounds property if no contents property is specified.

The contents property defines the coordinates of the vertices of the polygon. It consists of a list of pairs of integers that specify the x and y coordinates of each vertex. The first pair must be duplicated exactly by the last pair i.e. [x1, y1, x2, y2, ..., xn, yn, x1, y1]. Thus a list of 8 integers (4 vertices) defines a triangle. The coordinates of each vertex are specified relative to the top-left corner of the bounds rectangle. This means the button can be relocated by simply using a different bounds setting.



Class poly toggle button:

a toggling polygon area
Properties:
class class This property must be set to poly toggle button.
bounds rectangle
enabled* boolean, integer or list [W]
value* boolean If true then the button is drawn highlighted. (false) [R/W]
contents* list of integer The coordinates of the vertices.
Return value:
boolean The current state of the button.

Example:

	-- A triangular toggle button
{class:poly toggle button, bounds:[195, 30, 340, 150], contents:[0, 0, 145, 60, 60, 120, 0, 0]}

A poly toggle button is a transparent polygonal area, similar to a poly push button, that behaves like a check box (or toggling button). Alternate clicks toggle it between on & off states. In its off state the button is transparent (invisible). In its on state all pixels within its polygon have their colour inverted. See class poly push button for more details.



Class poly sticky button:

a sticky polygon area
Properties:
class class This property must be set to poly sticky button.
bounds rectangle
enabled* boolean, integer or list [W]
value* boolean If true then the button is drawn highlighted. (false) [R/W]
contents* list of integer The coordinates of the vertices.
Return value:
boolean The current state of the button.

Example:

	-- A triangular sticky button
{class:poly sticky button, bounds:[195, 30, 340, 150], contents:[0, 0, 145, 60, 60, 120, 0, 0]}

A poly sticky button is a transparent polygonal area, similar to a poly push button, that behaves like a single radio button dialog item. Clicking the button places it in the on state (value = true) where it will remain unless reset by a script. In its off state (value = false) the button is transparent (invisible). In its on state all pixels within its polygon have their colour inverted. See class poly push button for more details.



Class poly radio button:

a radio polygon area
Properties:
class class This property must be set to poly radio button.
bounds rectangle
enabled* boolean, integer or list [W]
value* boolean If true then the button is drawn highlighted. (false) [R/W]
contents* list of integer The coordinates of the vertices.
Return value:
boolean The current state of the button.

Example:

	-- A triangular radio button
{class:poly radio button, bounds:[195, 30, 340, 150], contents:[0, 0, 145, 60, 60, 120, 0, 0]}

A poly radio button is a transparent polygonal area, similar to a poly push button, that behaves like a radio button dialog item. Clicking the button switches the previously on member of the group off (value = false) and places this button in the on state (value = true).

In its off state the button is transparent (invisible). In its on state all pixels within its polygon have their colour inverted. A contiguous set of adjacent poly radio button dialog items form a group. Poly radio button groups are delimited by any other type of dialog item. See class poly push button for more details.



Class movie controller:

a QuickTime movie controller
Properties:
class class This property must be set to movie controller.
bounds rectangle
enabled* boolean, integer or list [W]
contents alias The file containing the movie.
flags* integer Various flags that control the display of the movie controller. (2)
Return value:
null This class of item returns nothing.

A movie controller dialog item enables the display of any standard QuickTime movie within a dialog. The flags property allows the specification of a number of display options.

The optional flags property is constructed by adding any combination of the following values together (or setting it to 0 if none are required):

1 Add this value to flags to make the movie controller place the movie into the upper-left corner of the display rectangle specified by the bounds property. The movie is scaled to fit into the rectangle. Note that the control portion of the controller may fall outside of the bounds, depending upon the results of the scaling operation.
2 Add this value to flags to make the movie controller resize the movie to fit into the display rectangle specified by the bounds property after it places the control portion of the controller into the rectangle. This is the default.
If you add this to flags and add 1, the movie controller resizes the movie to fit into the specified bounds rectangle and places the control portion of the controller outside of the rectangle.
4 Controls whether the movie controller uses a badge. If you add in this flag, the dialog item displays the movie with a badge whenever the controller portion is not displayed. If you don't set this, the dialog item does not use a badge.
8 Controls whether the controller portion is visible. If you don't add this flag, the dialog item displays the controller along with the movie. If you add this flag, it does not display the controller. If you have added 4 to flags, specifying that it uses a badge, the dialog item displays a badge whenever the controller is not visible.
16 Specifies whether the dialog item displays a frame around the movie as part of the controller. If you add this to flags, the dialog item displays a frame around the movie, including the movie's name. If you don't add this flag, the dialog item does not display a frame as part of the controller.


Class font spec:

a text font specification
Properties:
name* string Name of the font family for this font spec. ("" [maps to the system font]).
size* integer The point size of the text. (0 [means use the system font size which is usually 12])
style* style An integer, style name or list of style names indicating the style of the text. (plain)
color* RGB colour The colour of the text in [red, green, blue] format, where 0 is no colour and 65535 is maximum colour. ([0, 0, 0] [= black])

Example:

	-- This is the default system font spec:
set font1 to {name:"", size:0, style:plain, color:[0, 0, 0]}
	-- It is equivalent to this font spec on Roman script systems:
set font2 to {name:"Chicago", size:12, style:plain, color:[0, 0, 0]}
	-- This font spec produces this style of text
set font3 to {name:"Geneva", size:9, style:[bold, underline]}

A font spec can be used to override the default settings for the context (and all sub-contexts) within which it is specified. That is the global default font (the font parameter of dd auto dialog) overrides the system font spec for all DD dialogs, the dialog default font (the font property of a dialog) overrides the global font spec for all text in that dialog, and the font property of a static text overrides the dialog default font for that static text item. Where a partial font spec is used the missing parts are automatically filled in from the next larger context.

Note: Currently the color property is not used by control items which always display text in black.

Note: A later release of DD may include a justification property in font spec objects.

The Global Font Spec Table

This section describes the global font spec table (font table) that is specified via the with fonts parameter of dd install and dd auto dialog. This is the preferred way of specifying fonts in DD v0.7. The font table provides a hierarchical font specification system that is both flexible and consistent (if initially not completely obvious).

The flexibility comes from the ability of any dialog item to use any font spec (in the font table) by simply setting its font property to the required entry's index. The font table is specified as a list of font specs and null objects. A null indicates that that font spec should inherit all its properties. The font table may contain up to 20 such entries (numbered 1 to 20). All font specs are initially defined to have the same default property settings as the system font (as described in the Class font spec section above).

Further, if the first font spec is redefined then font specs 2 - 20 all default to it initially. Thus, as different classes of dialog item default to using different font specs from the font table, they all initially default to using the system font, unless you define font spec 1 to not be null, unless you define their default font spec to not be null, unless you give them an explicit font spec via their font property.

The tree diagram below shows the font spec inheritance hierarchy in a graphical form. Font spec properties that are not redefined are inherited. Any font spec property definitions further down the hierarchy (to the right) override those defined further up the hierarchy (to the left). The rightmost items are the dialog item classes that inherit the font specs to their left by default, and the properties that are drawn using those font specs.

Example 1:

	dd install with fonts [null, {name:"Helvetica", style:bold}, null, null, {name:"Geneva", size:9}]

This will cause the names of all control items to appear in 12pt Helvetica-Bold and all other text to appear in the System font, unless their dialog item definitions explicitly specify the font property to be 2 (12pt Helvetica-Bold) or 5 (9pt Geneva).

Example 2:

	dd install with fonts [{name:"Times"}]

This will cause all text within the subsequently created DD windows to appear in 12pt Times-Roman, regardless of any font spec indexes specified in any dialog item definitions, i.e. it redefines the global font.


The Global Font Spec Hierarchy


Dependencies

This section explains how dependencies (i.e. the enabled property) works. It does not need to be understood completely if you only need to create simple dialog boxes.

Item dependencies allow interactive dialog items to be dynamically enabled or disabled automatically dependent on the state of one or more other items. e.g. The OK push button could be disabled (greyed out) until some text is entered into a text field (as in the password dialog example below). The dependencies of all items are re-evaluated whenever the state of any item changes.

There are four types of dependency: none, initial, single item and multiple items. By default a dialog item has no dependencies i.e. it has no enabled property and it is always active. An expression that evaluates to true or false may be used to set the initial value of an enabled property.

This expression is evaluated only once when the dialog item list is constructed e.g. enabled:(current date) >= date "1/1/2000". A single item (simple) dependency consists of the enabled property being a single integer which gives the index of the dialog item upon which this item depends. (An item's index is determined by the position of the item in the contents property of the dialog record passed to dd auto dialog or dd make dialog.)

Negative values indicate inverse dependencies. i.e. if item 4 is a check box then an item with property enabled:4 would be enabled only when the check box is checked, and an item with property enabled:-4 would be enabled only when the check box is not checked (unchecked).

Values with a magnitude greater than 255 are used to indicate a dependency on a sub-item (such as a radio button or pop up menu item). e.g. a value n = 522 is interpreted as dialog item no. = |n| mod 256 = 10, sub-item no. = |n| div 256 = 2. The following function will calculate the numbers for you:

on SubItem(itemNo, subItem)
	return itemNo + subItem * 256
end SubItem

A multiple item (complex) dependency consists of the enabled property being a list composed of an enumeration name (dOr or dAnd) followed by one or more integers as described for the simple dependency e.g. enabled:[dAnd, 3, -5] enables this item only when dialog item 3 is on and dialog item 5 is off.

How an item's on/off state is determined depends on the item's class, as follows:
Class On when Off when Comments
push button never always actionless buttons only
push button after being clicked before being clicked sub-dialog buttons only
push button action returned != null otherwise handler script buttons only
check box checked not checked  
radio button highlighted not highlighted  
radio group never always  
radio group button selected not selected 
generic control value != 0 value = 0 
pop up never always 
pop up item selected not selected 
list box has a selection has no selection 
list box item selected not selected 
text field contains text empty 
password field contains text empty 
static text never always 
group box never always 
pict never always 
icon never always 
dummy dependencies evaluate to true dependencies evaluate to false 
color picker never always 
gauge never always 
icon button highlighted not highlighted 
poly button highlighted not highlighted 
movie controller never always 

 



Error Codes

Dialog Director may return a number of error codes that are not part of the standard Mac OS/AppleScript repertoire. These error codes are defined in this section.

Code Description
1 The user terminated the dialog by typing <command> + <control> + 'Q'.
2 The script tried to open more dialogs then the maximum allowed.
3 The script called dd interact with user when there were no open dialogs.
4 The global font table is initially too long or has overflowed.
5 QuickTime is not installed. Unable to use movie controller item.
6 Too many, too few, or odd number of polygon coordinates in poly button contents.
7 The Text Services Manager is not installed. Unable to use floating windows.


Dialog Dumper

Dialog Dumper is an applet which is a part of the Dialog Director distribution. Dialog Dumper allows you to automatically convert standard Mac OS application dialog boxes into AppleScripts that can be used in conjunction with Dialog Director to create interactive dialogs.

The advantage of this is that these dialog boxes can be created and edited using Apple's ResEdit application. ResEdit provides a user interface for the interactive editing of dialog layouts via direct manipulation.

This section provides a very brief description of the current features and functions of Dialog Dumper. Many thanks to Christopher R. Green for his help in the development and testing of Dialog Dumper.

What You Get

Dialog Dumper is written entirely in AppleScript and, naturally, uses Dialog Director to provide its user interface. Along, with the applet, the full source code of the script used in the applet is included in the text file "Dialog Dumper.as" and the resources used by Dialog Dumper to initially create its own user interface are in the file "Dialog Dumper.rsrc".

You are free to customise it to your own particular needs. To create the applet the script was saved from the Script Editor as a 'Run Only' application, with 'Stay Open' and 'Never Show Startup Screen' options checked, and the minimum and preferred memory requirements set to 600K. A couple of example dialog resource files are also included.

What You Need to Run

To use Dialog Dumper you are required to have the following scripting additions installed on your computer:
* Dialog Director v0.7
* Resource Utilities (included with Dialog Director)
* Jon's Commands, from:
ftp://mirror.apple.com/mirrors/gaea.scriptweb.com/applescript/osaxen/
or
ftp://ftp.cadence.com/pfterry/applescript/osaxen/
* Programmer's Tool, from:
ftp://mirror.apple.com//mirrors/gaea.scriptweb.com/applescript/osaxen/pgmTool.sit.hqx
or
ftp://ftp.cadence.com/pfterry/applescript/osaxen/pgmTool.sit.hqx

What It Does

Dialog Dumper reads each 'DLOG' resource in turn from a resource file and processes its contents and the contents of an associated 'DITL' resource. It also extracts information from 'CNTL' and 'MENU' resources referenced by dialog items in a 'DITL' resource. It is possible to use Dialog Dumper to convert dialogs taken directly from applications, desk accessories, etc. However, they should be copied into a new resource file before use.

This release of Dialog Dumper supports the following Dialog Director features through the user interface: Dialog Dumper uses the following information from the 'DLOG' resource in its code generation: Dialog Dumper generates code for the following dialog item classes. This information is extracted from the 'DITL' resource (and from additional control 'CNTL' resources where stated):

How to Use It

To use Dialog Dumper simply drop the resource file containing the dialog(s) on the Dialog Dumper application icon (or launch Dialog Dumper and select an appropriate file). You will be presented with the following dialog (or something similar):

See elsewhere in this User Guide for details of the meanings of the settings. Make your settings and then click To Clipboard to write the script to the clipboard, or To File... to write the script to a file of your choosing. If the script is written to a file then any existing file will be completely overwritten. Any settings you make are preserved and re-presented the next time a file is to be processed. Dialog Dumper stays open after processing a file so it does not need to be re-launched each time it is needed. If the Live Mode option is selected then the script generated contains a loop that repeats until a push button in the dialog or the window's close box is clicked.

Introductory Examples

1. Very simple dialog

set dlog to {size:[320, 95], contents:[
	{class:push button, bounds:[250, 65, 310, 85], name:"OK"}, 
	{class:push button, bounds:[170, 65, 230, 85], name:"Cancel"}, 
	{class:static text, bounds:[10, 10, 310, 10 + 32], contents:"A very simple dialog box."}] 
		}

set dVals to dd auto dialog dlog

This creates a small dialog window in the centre of the main screen containing some static text above OK and Cancel push buttons.

The OK push button is item 1, the Cancel push button is item 2, and the static text is item 3 because that is the order they are defined in dlog's contents list. Clicking the OK button yields the result:

2. Simple password dialog

property dPassword : {size:[260, 95], contents:[
	{class:push button, bounds:[190, 65, 250, 85], name:"OK", enabled:3}, 
	{class:push button, bounds:[110, 65, 170, 85], name:"Cancel"}, 
	{class:password field, bounds:[10, 36, 250, 36 + 16], name bounds:
		[10, 10, 250, 26], name:"Enter Password:", value:""}] 
	, timeout after:60}

set [ok, cancel, thePassword] to dd auto dialog dPassword

if ok then
	display dialog thePassword -- OK was pressed
else if cancel then
	beep -- Cancel was pressed
else
	display dialog "The dialog timeout was reached." -- Timeout
end if

This creates a small dialog window in the centre of the main screen containing a password field below a prompt and below that are two push buttons. The OK button has a default border and is greyed out/disabled until some text is entered into the password field.

If no push button is pressed within 60 seconds the dialog is automatically dismissed as specified by the timeout after:60 property. Note that this example has the dialog record (dPassword) defined as a property as opposed to the variable used in example 1.

This helps speed up execution but only where the dialog record is constant. The dialog window should initially look like this:

{true, false, null, {416, 397, 736, 492}}	-- [ OK button, Cancel button, static text, dialog window's bounds ]

Clicking the Cancel button yields the result:

{false, true, null, {416, 397, 736, 492}}

As you can see, dd auto dialog returns a list of four items, one for each dialog item passed to it via the contents property and one that represents the final bounding rectangle of the dialog window. In this example the third item will always be null because static text items have no value property.

The values of items 1 and 2 allow you to determine which push button was used to dismiss the dialog. The dismissing push button always returns true (whether invoked via the mouse or keyboard), and all other push button's return false. This allows you to write the following sort of code:

set dVals to dd auto dialog dlog

if item 1 of dVals then
	-- OK was pressed
else if item 2 of dVals then
	-- Cancel was pressed
end if

Alternatively you can write the code like this:

set [ok, cancel] to dd auto dialog dlog

if ok then
	-- OK was pressed
else if cancel then
	-- Cancel was pressed
end if

Note that in this example the OK button (being the first push button) defaults to the default button and the second push button defaults to the cancel/escape button. These could be reversed by including default item:2 in the dialog record passed to dd auto dialog.


After typing some text and selecting it the dialog window might appear as below. Note that any character typed will appear as a bullet, and that the OK button is now enabled.


Changing the above script to set the grayscale parameter to true and the initial value of the password field item to "Test":

	...
	{class:password field, bounds:[10, 36, 250, 36 + 16], name bounds:
		[10, 10, 250, 26], name:"Enter Password:", value:"Test"}] 
	...

get dd auto dialog dPassword with grayscale

should produce a dialog window that initially looks like this (if the Appearance Manager is installed):


Contents of 'Examples' Folder

All the example scripts expect that Dialog Director v0.7 and all the standard scripting additions are correctly installed in the "Scripting Additions" folder. Additionally all examples are working and designed to be run from within Script Editor unless otherwise stated.

File Description Requires
Alert.as Utility handler that Displays a new (Mac OS 8) style alert.  
Calc Total.as Dialog that calculates the total of 5 text fields containing numbers. Includes error handling and user feedback.  
Check List.as Displays a list which when double-clicked toggles on & off check marks. Returns a list of the checked items' indexes.  
ChooseList.as Utility handler that given a list returns the user's selection.  
Currency Converter.as Enter an amount in a foreign currency and an exchange rate and hit enter.  
Currency Converter.rsrc The resources used by Dialog Dumper to create the above. ResEdit
Current App.as A simple floating window that displays the name of the app it's running in and that of the front most app. GTQ Scripting Lib's Application Info osax
Database.as An incomplete database user interface system that given a few properties will automatically construct a suitable dialog.  
DD Connect To.as Based on Apple's, Mac OS 8, "Connect To..." applet. This displays a modeless window which can be left open with an editable, saveable, loadable list of your favourite URLs. Mac OS 8 / Internet Scripting osax and Internet Config
DD Connect To... The ready to run applet version of the above script. Mac OS 8
Default Button.as Demos the effect of different settings of the 'default item' dialog property.  
DisplayDialog.as A simple "display dialog" like utility handler.  
Documents+ The ready to run applet version of the script below. For best results copy and rename before using.  
Documents+.as A floating palette displaying 12 buttons waiting for you to place your favourite applications & documents.  
EditFontSpec.as A utility handler that given a Font Spec record presents a dialog that allows the user to edit the record and then returns a new one. Deals with font style as a number, name or name list and validation and error reporting of user entered font size.  
Expand.as A simple progress window that may be expanded while running to show additional, dynamically updated, info.  
Expand.rsrc The resources used by Dialog Dumper to create the above. ResEdit
Flashing Text.as A "Hello World!" example that you can't possibly ignore!  
FMP Browser The ready to run applet version of the script below. FileMaker Pro 3 or 4
FMP Browser.as A floating palette for FileMaker Pro that provides record navigation services for all FMP databases. Additionally if a database contains a calc. cell: "Index"=Status(CurrentRecordNumber), then it also displays "record-number of record-count" record info. FileMaker Pro 3 or 4
Gauge (Auto).as An auto dialog that demos gauges and named actions that access global properties and modify the active dialog.  
Gauge (Live).as A live dialog version of the above.  
GetFontSpec.as Presents a dialog that allows the user to define a Font Spec record which is then returned.  
Growing Text.as If "Flashing Text.as" didn't catch your attention then this should!  
HTML Palette The ready to run applet version of the script below. ClarisWorks 4 & Jon's Commands osax
HTML Palette.as A floating palette for ClarisWorks supplying HTML tag insertion. ClarisWorks 4 & Jon's Commands osax
Icon Buttons.as A plethora of icon buttons. The ultimate icon button demo.  
IconListDemo.as Demos icon list box, multi-column list box and dynamically setting the value of a list box/icon list box.  
Icons & Picts.as Shows how to read icons and pictures from a resource file for inclusion in a dialog. Resource Utilities osax
Icons & Picts.rsrc The resources used by the above script. ResEdit
Internet Assistant.as Complex interview style demo using multiple dialog pages (via dd create/dd delete), polygon buttons & consistent text styles.  
Kibbles.as Demos a stoppable, progressive, task and the Alert() handler.  
List Demo.as Demos how to construct/de-construct a sub-list from a main list.  
Menu+.as Similar to the script below but plus a text field item?  
Menu.as A utility handler that, given a list, presents a dialog containing an array of up to 20 radio buttons, and returns the user's selection.  
Message.as A window that scrolls a message across the screen.  
More Choices.as Demos a dialog that has a "More Choices" button that adds items to the dialog, repositions others to make space and renames itself to "Fewer Choices". This button then deletes the added items and resets the positions of the moved items.  
More Choices.rsrc The resources used by Dialog Dumper to create the above. ResEdit
More Lists.as Demos how to create a multi-column list that can be sorted by clicking a column title. Includes code for doing a fast sort of a list of lists using any item as the sort key.  
Multi-Column Lists.as Displays a dialog containing 2 list boxes with the same contents. The first is single column, the second is multi-column. Also demos use of font specs.  
Multi-Dialogs.as Creates multiple dialog windows which are all live.  
Name & Password.as Simple dialog box that requires entry of a name and password before the OK button is enabled or the dialog times out.  
Noughts & Crosses.as An example of an Os and Xs game for 2 players.  
Open In Bkgnd.as Illustrates which window styles may be opened in a background application without that app requesting attention from the user.  
Password.as The essential "hidden password" dialog (in white and greyscale).  
Pets+.as A improved pets dialog.  
Pets.as The original pets dialog.  
Poly Buttons.as Demos various transparent polygon button classes.  
Pop-Up Menus.as Demos both "standard" and "type-in" style pop-up menus.  
PPPalette.as A floating palette that allows the opening & closing and display the status of your PPP internet connection. Open Transport/PPP and Apple's PPP Commands osax
Progress.as A set of four progress dialog utility handlers and a demo.  
Progress 1.as A very simple progress dialog.  
Progress 2.as Another simple progress dialog.  
QuickTime.as A simple demo that plays a QuickTime movie of your choice. QuickTime
Remember Pos.as Shows the correct way to remember the last position of a window and restore it the next time the window is opened which is not affected by the screen size of the Mac used to compile the script.  
ResBrowser.as Displays a pop-up menu of the resource type in a given file and a multi-column list box describing each resource. Resource Utilities osax
SaveChanges.as A utility handler that presents a standard "Save Changes" dialog.  
Search osaxen.as Based on Gregory Charles Rivers's original script. This script searches the current scripting additions for a word (or partial word) and displays the results in a dynamically constructed dialog that grows to fit the results. programmer's tool osax and Scriptable Finder
Set Folder Windows The ready to run droplet version of the script below. Scriptable Finder
Set Folder Windows.as Andy Bachorski's script with a DD user interface by me. Scriptable Finder
Set Name.as Script that makes buttons move about!  
Show Text Server applet version of "Show Text.as".  
Show Text Client.as Client script for the above "Show Text" server applet.  
Show Text.as When used with the client script above shows that you can send messages to the script of an applet displaying an auto dialog.  
Simple 2.as A simple auto dialog called twice with different "default item"s.  
Simplest.as The essential basic auto dialog.  
Sorted!.as Shows how to edit the contents of a list using a list box and do a fast sort on it to produce a second (destination) list.  
SuperCT2 The ready to run droplet version of the script below. Scriptable Finder
SuperCT2.as The latest incarnation of the ultimate AS file creator/type editor. Scriptable Finder
Switch Apps.as Presents a list box containing the currently running apps and activates the one chosen by the user. Scriptable Finder
Sys Folder.as Select an item in the System Folder!  
Test.as A window that floats above the Finder demonstrating a mishmash of DD features (including a surprising one).  
Timeout.as A script that demos the timeout feature and reports the results.  
*dd uninstall.as A utility script that is handy to keep open in your script editor. To be run if an erroneous script that you are developing exits leaving any DD windows lying around.  



Known Problems and Limitations

This section lists any known problems and limitations with this release of Dialog Director (in no particular order).

Other Scripting Additions

Scripting additions included as part of the Dialog Director v0.7 package: Scripting additions that are not currently part of this package: