<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

	<head>
		<meta http-equiv="content-type" content="text/html;charset=UTF-8"/>
		<meta name="generator" content="Adobe GoLive"/>
		<title>Dialog Editor Sample Extension</title>
	</head>

	<body>
		<hr/>
		<p>ADOBE SYSTEMS INCORPORATED</p>
		<p>Copyright 2000-2003 Adobe Systems Incorporated<br/>
			All Rights Reserved</p>
		<p>NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms of the Adobe license agreement accompanying it. If you have received this file from a source other than Adobe, then your use, modification, or distribution of it requires the prior written permission of Adobe.</p>
		<hr/>
		<p><b>Extension Name:</b> Dialog Editor</p>
		<p><b>Folder name:</b> Dialog Editor</p>
		<hr/>
		<p><b>Description:</b></p>
		<p>This extension may be used to design dialog boxes for Extensions.</p>
		<p>On the Objects Palette, select the Dialog Editor tab. In a new document, drag the layout grid onto the page. Drag the Dialog objects onto the grid. Use the Inspector to access and view the object properties. All JSXControl objects except for type frame are represented.</p>
		<p>The frame control is not implemented because it is usually placed behind other controls -- this is not possible to do on a layout grid. In addition, a frame control with width or height of 0 represents a line. To insert a frame control in a dialog, manually insert the markup in source view; it is not recommended that the control be inserted on a layout grid.</p>
		<hr/>
		<p><b>Module Definition:</b></p>
		<jsxmodule debug="false" info="$$$/extendscript/DialogEditor/info=The Dialog Editor Objects Palette may be used to design dialog boxes for SDK extensions." name="Dialog Editor" version="1.0"/>
		<p><b>Scripts:</b></p>
		<script><![CDATA[
//--------------------------------------------------------------------
// GLOBAL VARIABLES
//--------------------------------------------------------------------

// define global variables here


//--------------------------------------------------------------------
// CALLBACK FUNCTIONS
//--------------------------------------------------------------------


//---------------------------------------------------------
// boxResized - called when the size of the box has changed
//
// Description:
//   Use this event to record the changes in the markup code, 
//   and/or recalculate the contents of the box.
//
// Warning: see documentation for warnings about reparsing 
//   and downloading a file.

function boxResized(box, width, height) 
{
	// set the new box size
	box.element.width = width;
	box.element.height = height;

	// set inspector
	if (box.inspector != null) {
		box.inspector.cWidth.value = box.width;
		box.inspector.cHeight.value = box.height;
	}
}


//---------------------------------------------------------
// controlSignal -  called when the state of a control has changed
//
// Description:
//   Use to extract the state of the control, and react to the state
//   change.
//
// Warning: see documentation for warnings about reparse, 
//   reformat, setInnerHTML, and setOuterHTML.

function controlSignal(control)
{
	// an inspector control has been activated
	var box = control.parent.box;
	switch (control.name) {
	case "cX":		
		box.x = box.element.posx = control.value; 
		break;
	case "cY":		
		box.y = box.element.posy = control.value; 
		break;
	case "cWidth":	
		box.width = box.element.width = control.value; 
		break;
	case "cHeight":	
		box.height = box.element.height = control.value; 
		break;
	case "cHalign":	
		box.element.halign = control.value; 
		break;
	case "cValign":	
		box.element.valign = control.value; 
		break;
	case "cName":	
		box.element.name = control.value; 
		break;
	case "cValue":	
		box.element.value = control.value;
		if (box.element.type == "color") 
			inspector.cColor.value = control.value;
		break;
	case "cGroup":
		box.element.group = control.value;
		break;
	case "cColor":	
		box.element.value = inspector.cValue.value = control.value; 
		break;
	}
	// display the changes
	box.refresh();
}



//----------------------------------------------------
// parseBox - called when GoLive parses a custom element
//
// Description:
//   Use it to initialize the box (i.e., set height and width)
//
// Parameters:
//	reason:
//		1: document is being read
//		2: custom element dropped from Objects palette or pasted 
//		    from clipboard
// 		3: box was repositioned
//

function parseBox(box, reason) 
{	
	switch (box.element.tagName)
	{
		case 'jsxcontrol':
			// set up the initial size of the box. Do height first to avoid repositioning in a grid.
			box.height = box.element.height;
			box.width = box.element.width;
		break;
		
	}

	
}


//---------------------------------------------------------
// drawBox - called when a custom box is about to be drawn
//
// Description:
//   Use the draw object for creating the visual representation
// of the element.
//
// Warning: see documentation for warnings about reparsing 
//   and downloading a file.

function drawBox(box, draw)
{
	draw.textFont ("ApplicationFont");
	
	switch (box.element.tagName)
	{
		case 'jsxcontrol':
			drawControl (box, draw);
		break;
	
	}
}


//---------------------------------------------------------
// inspectBox - called before the inpsector for a custom box is  
//   displayed
//

function inspectBox(box) 
{
	// set the position
	inspector.cX.value = box.element.posx;
	inspector.cY.value = box.element.posy;
	/// set the size
	inspector.cWidth.value = box.width;
	inspector.cHeight.value = box.height;
	// set the alignment
	inspector.cHalign.value = (box.element.halign == undefined) ? "left" : box.element.halign;
	inspector.cValign.value = (box.element.valign == undefined) ? "top"  : box.element.valign;
	// name and value
	inspector.cName.value   = (box.element.name == undefined)   ? ""     : box.element.name;
	inspector.cValue.value  = (box.element.value == undefined)  ? ""     : box.element.value;
	// enable group for radio button
	if (box.element.name == "radio") {
		inspector.cGroup.value = box.element.group;
		inspector.cGroup.enabled = inspector.cGroupLbl.enabled = true;
	}
	else {
		inspector.cGroup.value = "";
		inspector.cGroup.enabled = inspector.cGroupLbl.enabled = false;
	}
	var cEnabled = false;
	// set specific elements
	switch (box.element.type) {
	case "color":	
		inspector.cColor.value = box.element.value; cEnabled = true; 
		break;
	}
	inspector.cColorLbl.enabled =
	inspector.cColor.enabled = cEnabled;
}



//--------------------------------------------------------------------
// Custom Function
//--------------------------------------------------------------------


//--------------------------------------------------------------------
// button -
// draw a button object. Use outer for the outer frame, inner for the inner area.
// If raised is true, draw raised, otherwise lowered.

function drawControl (box, draw)
{
	switch (box.element.type.toLowerCase()) {
	case "button":			
		drawButton (box, draw); 
		break;
	case "check":
	case "checkbox":		
		drawCheck (box, draw); 
		break;
	case "radio":
	case "radiobutton":		
		drawRadio (box, draw); 
		break;
	case "edit":	
	case "password":		
		drawEdit (box, draw, false); 
		break;
	case "editarea":		
		drawEdit (box, draw, false); 
		break;
	case "preview":		
		drawPreview (box, draw); 
		break;
	case "source":		
		drawSource (box, draw); 
		break;
	case "tree":		
		drawTree (box, draw); 
		break;
	case "frame":		
		drawFrame (box, draw); 
		break;
	case "buttonedit":		
		drawEdit (box, draw, true); 
		break;
	case "static":			
		drawStatic (box, draw); 
		break;
	case "color":			
		drawColor (box, draw); 
		break;
	case "urlgetter":		
		drawGetter (box, draw); 
		break;
	case "popup":			
		drawPopup (box, draw); 
		break;
	case "list":
		drawList(box, draw);
		break;
	case "progressbar":
		drawButton (box, draw); 
		break;
	case "line":
		drawLine (box, draw); 
		break;
	case "slider":			
		drawSlider (box, draw); 
		break;
	case "scrollbar":			
		drawScrollbar (box, draw); 
		break;

	}
}


//--------------------------------------------------------------------
// button -
// draw a button object. Use outer for the outer frame, inner for the inner area.
// If raised is true, draw raised, otherwise lowered.

function button (draw, x, y, w, h, outer, inner, raised) 
{
	if (outer != undefined) {
		draw.setColor (outer);
		draw.frameRect (x, y, w, h);
	}
	draw.setColor (raised ? "white" : "gray");
	draw.moveTo (x+1, y+h-2);
	draw.lineTo (x+1, y+1);
	draw.lineTo (x+w-2, y+1);
	draw.setColor (raised ? "gray" : "white");
	draw.lineTo (x+w-2, y+h-2);
	draw.lineTo (x+1, y+h-2);
	try {
		draw.setColor (inner);
	}
	catch (err) {
		writeln(err);
		draw.setColor("white");
	}
	draw.fillRect (x+2, y+2, w-4, h-4);
	draw.setColor ("black");
}


function drawButton (box, draw) 
{
	// draw a basic button in black and silver
	var w = box.width-1, h = box.height-1;
	button (draw, 0, 0, w, h, "black", "silver", true);
	// draw the centered text
	var sw = draw.stringWidth (box.element.value);
	var sh = draw.stringHeight(box.element.value);
	draw.moveTo ((w-sw)/2, (h-sh)/2);
	draw.drawString (box.element.value);
}


function drawSlider (box, draw) 
{
	// draw a basic button in black and silver
	var w = box.width-1, h = box.height-1;
	button (draw, 0, 0, w, h, "black", "silver", true);
	// draw the centered text
	var sw = draw.stringWidth (box.element.value);
	var sh = draw.stringHeight(box.element.value);
	draw.moveTo ((w-sw)/2, (h-sh)/2);
	draw.drawString (box.element.type);
}


function drawScrollbar (box, draw) 
{
	// draw a basic button in black and silver
	var w = box.width-1, h = box.height-1;
	button (draw, 0, 0, w, h, "black", "silver", true);
	// draw the centered text
	var sw = draw.stringWidth (box.element.value);
	var sh = draw.stringHeight(box.element.value);
	draw.moveTo ((w-sw)/2, (h-sh)/2);
	draw.drawString (box.element.type);
}


function drawCheck (box, draw) 
{
	// silver background
	var w = box.width-1, h = box.height-1;
	draw.setColor ("silver");
	draw.fillRect (0, 0, w, h);
	// the click rect of the check box
	var x = 5, y = (h-12)/2;
	draw.setColor ("white");
	draw.fillRect (x, y, 12, 12);
	// the frame of that rect
	draw.setColor ("black");
	draw.frameRect (x, y, 12, 12);
	// the text right to the box
	var sh = draw.stringHeight(box.element.value);
	draw.moveTo (20, (h-sh)/2);
	draw.drawString (box.element.value);
}


function drawColor (box, draw) 
{
	// an inward button with the current color as background
	var w = box.width-1;
	var h = box.height-1;
	var inner = box.element.value;
	if (box.element.value == "" || box.element.value == null) {
		inner = "white";
	}
	button (draw, 0, 0, w, h, "black", inner, false);

	// the text right to the box
	draw.moveTo (4, 3);
	draw.drawString (box.element.type);
}


function drawEdit (box, draw, btn) 
{
	// an inward button with white interior
	var w = box.width-1;
	var h = box.height-1;
	button (draw, 0, 0, w, h, "black", "white", false);
	// the text
	draw.moveTo (3, 3);
	draw.drawString (box.element.value);
	if (btn)
		// the button for a button edit
		button (draw, w-15, 1, 15, h-1, undefined, "silver", true);
}


function drawTree (box, draw) 
{
	// an inward button with white interior
	var w = box.width-1;
	var h = box.height-1;
	button (draw, 0, 0, w, h, "black", "white", false);
	// the text
	draw.moveTo (3, 3);
	draw.drawString (box.element.type);
}


function drawSource (box, draw) 
{
	// an inward button with white interior
	var w = box.width-1;
	var h = box.height-1;
	button (draw, 0, 0, w, h, "black", "white", false);
	// the text
	draw.moveTo (3, 3);
	draw.drawString (box.element.type);
}


function drawFrame (box, draw) 
{
	// an inward button with white interior
	var w = box.width-1;
	var h = box.height-1;
	button (draw, 0, 0, w, h, "black", "white", false);
	// the text
	draw.moveTo (3, 3);
	draw.drawString (box.element.type);
}


function drawPreview (box, draw) 
{
	// an inward button with white interior
	var w = box.width-1;
	var h = box.height-1;
	button (draw, 0, 0, w, h, "black", "white", false);
	// the text
	draw.moveTo (3, 3);
	draw.drawString (box.element.type);
}


function drawGetter (box, draw) 
{
	// an inward button with white interior
	var w = box.width-1;
	var h = box.height-1;
	var sh = draw.stringHeight(box.element.value);
	button (draw, 0, 0, w, h, "black", "white", false);
	// the text
	draw.moveTo (16, (h-sh)/2);
	draw.drawString (box.element.value);
	// the left button
	button (draw, 1, 1, 14, h-1, undefined, "white", true);
	// two right buttons
	button (draw, w-24, 1, 13, h-1, undefined, "silver", true);
	button (draw, w-13, 1, 13, h-1, undefined, "silver", true);
}


function drawList (box, draw) 
{
	// an inward button with white interior
	var w = box.width-1;
	var h = box.height-1;
	button (draw, 0, 0, w, h, "black", "white", false);
	// the text
	draw.moveTo (3, 3);
	draw.drawString (box.element.value);
}


function drawPopup (box, draw) 
{
	var w = box.width-1;
	var h = box.height-1;
	var sh = draw.stringHeight(box.element.value);
	if (app.osVersion.indexOf ("Mac") == 0) {
		// Mac version: a silver button with a triangle
		button (draw, 0, 0, w, h, "black", "silver", true);
		draw.moveTo (5, (h-sh)/2);
		draw.drawString (box.element.value);
		triangle (draw, w-11, (h-4)/2);
	}
	else {
		// Windows version: An edit box with a triangle
		drawEdit (box, draw, true);
		triangle (draw, w-11, (h-4)/2);
	}
}


function drawRadio (box, draw) 
{
	// silver background
	var w = box.width-1;
	var h = box.height-1;
	draw.setColor ("silver");
	// the radio button background
	draw.fillRect (0, 0, w, h);
	var x = 5, y = (h-12)/2;
	draw.setColor ("white");
	draw.fillOval (x, y, 12, 12);
	// the frame
	draw.setColor ("black");
	draw.frameOval (x, y, 12, 12);
	// the inner dot
	draw.fillOval (x+3, y+3, 6, 6);
	// the text right to the box
	var sh = draw.stringHeight(box.element.value);
	draw.moveTo (20, (h-sh)/2);
	draw.drawString (box.element.value);
}


function drawStatic (box, draw) 
{
	// silver background
	var w = box.width-1;
	var h = box.height-1;
	draw.setColor ("silver");
	draw.fillRect (0, 0, w, h);
	// and text
	draw.moveTo (0, 0);
	draw.setColor ("black");
	draw.drawString (box.element.value);
}


function drawLine (box, draw) 
{
	var w = box.width-1;
	var h = box.height-1;
	draw.moveTo (1, 1);
	draw.setColor ("black");
	if (w>h)
		draw.lineTo (w,1)
	else
		draw.lineTo (1,h);
}


function triangle (draw, x, y) 
{
	var w = 7;
	for (i=0; i<4; i++) {
		draw.moveTo (x, y);
		draw.lineTo (x+w, y);
		x++; 
		y++; 
		w -= 2;
	}
}
]]>
		</script>
		<hr/>
		<p><b>User Interface Tags:</b></p>
		<p><b>Image</b> Define images here. These are referenced by the picture attribute of the jsxpaletteentry and jsxpalettegroup tags.</p>
		<img src="Images/groupicon.gif" name="palettegroupIcon"/>
		<p><img src="Images/button.gif" name="buttonIcon"/>
		<img src="Images/buttonedit.gif" name="btneditIcon"/>
		<img src="Images/check.gif" name="checkIcon"/>
		<img src="Images/color.gif" name="colorIcon"/>
		<img src="Images/edit.gif" name="editIcon"/>
		<img src="Images/editarea.gif" name="editareaIcon"/>
		<img src="Images/grid.gif" name="gridIcon"/>
		<img src="Images/frame.gif" name="frameIcon"/>
		<img src="Images/line.gif" name="lineIcon"/>
		<img src="Images/linelayout.gif" name="linelayoutIcon"/>
		<img src="Images/list.gif" name="listIcon"/>
		<img src="Images/password.gif" name="passwordIcon"/>
		<img src="Images/popup.gif" name="popupIcon"/>
		<img src="Images/preview.gif" name="previewIcon"/>
		<img src="Images/progressbar.gif" name="progressbarIcon"/>
		<img src="Images/radio.gif" name="radiobuttonIcon"/>
		<img src="Images/scrollbar.gif" name="scrollbarIcon"/>
		<img src="Images/slider.gif" name="sliderIcon"/>
		<img src="Images/source.gif" name="sourceIcon"/>
		<img src="Images/static.gif" name="staticIcon"/>
		<img src="Images/tabview.gif" name="tabviewIcon"/>
		<img src="Images/tree.gif" name="treeIcon"/>
		<img src="Images/urlgetter.gif" name="urlgetterIcon"/>
		<img src="Images/view.gif" name="viewIcon"/></p>
		<p><img src="Images/buttonR.gif" name="buttonIconHilite"/>
		<img src="Images/buttoneditR.gif" name="btneditIconHilite"/>
		<img src="Images/checkR.gif" name="checkIconHilite"/>
		<img src="Images/colorR.gif" name="colorIconHilite"/>
		<img src="Images/editR.gif" name="editIconHilite"/>
		<img src="Images/editareaR.gif" name="editareaIconHilite"/>
		<img src="Images/gridR.gif" name="gridIconHilite"/>
		<img src="Images/frameR.gif" name="frameIconHilite"/>
		<img src="Images/lineR.gif" name="lineIconHilite"/>
		<img src="Images/linelayoutR.gif" name="linelayoutIconHilite"/>
		<img src="Images/listR.gif" name="listIconHilite"/>
		<img src="Images/passwordR.gif" name="passwordIconHilite"/>
		<img src="Images/popupR.gif" name="popupIconHilite"/>
		<img src="Images/previewR.gif" name="previewIconHilite"/>
		<img src="Images/progressbarR.gif" name="progressbarIconHilite"/>
		<img src="Images/radioR.gif" name="radiobuttonIconHilite"/>
		<img src="Images/scrollbarR.gif" name="scrollbarIconHilite"/>
		<img src="Images/sliderR.gif" name="sliderIconHilite"/>
		<img src="Images/sourceR.gif" name="sourceIconHilite"/>
		<img src="Images/staticR.gif" name="staticIconHilite"/>
		<img src="Images/tabviewR.gif" name="tabviewIconHilite"/>
		<img src="Images/treeR.gif" name="treeIconHilite"/>
		<img src="Images/urlgetterR.gif" name="urlgetterIconHilite"/>
		<img src="Images/viewR.gif" name="viewIconHilite"/></p>
		<p><b>Custom Tags</b> Define custom tags attributes in the jsxelement tag.</p>
		<jsxelement classid="control" tagname="jsxcontrol" type="plain"/>
		<p><b>Inspectors</b> Define Inspectors for custom tags</p>
		<jsxinspector classid="control" height="200" name="inspector" title="$$$/extendscript/DialogEditor/ControlInspector=Control Inspector" width="215">
			<table width="215" border="0" cellspacing="0" cellpadding="0" cool="cool" gridx="5" gridy="5" height="200" showgridx="yes" showgridy="yes" usegridx="yes" usegridy="yes">
				<tr height="10">
					<td rowspan="15" width="10" height="199"></td>
					<td rowspan="2" width="45" height="14"></td>
					<td width="55" height="10"></td>
					<td rowspan="2" colspan="2" width="45" height="14"></td>
					<td colspan="2" width="59" height="10"></td>
					<td width="1" height="10"><spacer height="10" type="block" width="1"/></td>
				</tr>
				<tr height="4">
					<td rowspan="2" align="left" valign="top" width="55" height="22" xpos="55">
						<jsxcontrol height="19" name="cX" posx="55" posy="10" type="buttonedit" width="50"></jsxcontrol>
					</td>
					<td rowspan="2" colspan="2" align="left" valign="top" width="59" height="22" xpos="155">
						<jsxcontrol halign="right" height="19" name="cWidth" posx="155" posy="10" type="buttonedit" width="50"></jsxcontrol>
					</td>
					<td width="1" height="4"><spacer height="4" type="block" width="1"/></td>
				</tr>
				<tr height="18">
					<td align="left" valign="top" width="45" height="18" xpos="10">
						<jsxcontrol height="14" posx="10" posy="14" type="static" value="X" width="40"></jsxcontrol>
					</td>
					<td colspan="2" align="left" valign="top" width="45" height="18" xpos="110">
						<jsxcontrol halign="right" height="14" posx="110" posy="14" type="static" value="Width" width="40"></jsxcontrol>
					</td>
					<td width="1" height="18"><spacer height="18" type="block" width="1"/></td>
				</tr>
				<tr height="4">
					<td width="45" height="4"></td>
					<td rowspan="2" align="left" valign="top" width="55" height="22" xpos="55">
						<jsxcontrol height="19" name="cY" posx="55" posy="32" type="buttonedit" width="50"></jsxcontrol>
					</td>
					<td colspan="2" width="45" height="4"></td>
					<td rowspan="2" colspan="2" align="left" valign="top" width="59" height="22" xpos="155">
						<jsxcontrol halign="right" height="19" name="cHeight" posx="155" posy="32" type="buttonedit" width="50"></jsxcontrol>
					</td>
					<td width="1" height="4"><spacer height="4" type="block" width="1"/></td>
				</tr>
				<tr height="18">
					<td align="left" valign="top" width="45" height="18" xpos="10">
						<jsxcontrol height="14" posx="10" posy="36" type="static" value="Y" width="40"></jsxcontrol>
					</td>
					<td colspan="2" align="left" valign="top" width="45" height="18" xpos="110">
						<jsxcontrol halign="right" height="14" posx="110" posy="36" type="static" value="Height" width="40"></jsxcontrol>
					</td>
					<td width="1" height="18"><spacer height="18" type="block" width="1"/></td>
				</tr>
				<tr height="4">
					<td width="45" height="4"></td>
					<td rowspan="2" colspan="2" align="left" valign="top" width="60" height="22" xpos="55">
						<jsxcontrol height="19" name="cHalign" posx="55" posy="54" type="popup" value="left,center,right,scale" width="60"></jsxcontrol>
					</td>
					<td width="40" height="4"></td>
					<td rowspan="10" width="20" height="145"></td>
					<td rowspan="2" align="left" valign="top" width="39" height="22" xpos="175">
						<jsxcontrol halign="right" height="19" name="cColor" posx="175" posy="54" type="color" width="30"></jsxcontrol>
					</td>
					<td width="1" height="4"><spacer height="4" type="block" width="1"/></td>
				</tr>
				<tr height="18">
					<td align="left" valign="top" width="45" height="18" xpos="10">
						<jsxcontrol height="14" posx="10" posy="58" type="static" value="hAlign" width="40"></jsxcontrol>
					</td>
					<td align="left" valign="top" width="40" height="18" xpos="115">
						<jsxcontrol halign="right" height="14" name="cColorLbl" posx="115" posy="58" type="static" value="Color" width="40"></jsxcontrol>
					</td>
					<td width="1" height="18"><spacer height="18" type="block" width="1"/></td>
				</tr>
				<tr height="4">
					<td width="45" height="4"></td>
					<td rowspan="2" colspan="2" align="left" valign="top" width="60" height="22" xpos="55">
						<jsxcontrol height="19" name="cValign" posx="55" posy="76" type="popup" value="top,center,bottom,scale" width="60"></jsxcontrol>
					</td>
					<td rowspan="2" width="40" height="22"></td>
					<td rowspan="8" width="39" height="123"></td>
					<td width="1" height="4"><spacer height="4" type="block" width="1"/></td>
				</tr>
				<tr height="18">
					<td align="left" valign="top" width="45" height="18" xpos="10">
						<jsxcontrol height="14" posx="10" posy="80" type="static" value="vAlign" width="40"></jsxcontrol>
					</td>
					<td width="1" height="18"><spacer height="18" type="block" width="1"/></td>
				</tr>
				<tr height="4">
					<td width="45" height="4"></td>
					<td rowspan="2" colspan="3" align="left" valign="top" width="100" height="22" xpos="55">
						<jsxcontrol halign="scale" height="19" name="cName" posx="55" posy="98" type="buttonedit" width="100"></jsxcontrol>
					</td>
					<td width="1" height="4"><spacer height="4" type="block" width="1"/></td>
				</tr>
				<tr height="18">
					<td align="left" valign="top" width="45" height="18" xpos="10">
						<jsxcontrol height="14" posx="10" posy="102" type="static" value="Name" width="40"></jsxcontrol>
					</td>
					<td width="1" height="18"><spacer height="18" type="block" width="1"/></td>
				</tr>
				<tr height="4">
					<td width="45" height="4"></td>
					<td rowspan="2" colspan="3" align="left" valign="top" width="100" height="20" xpos="55">
						<jsxcontrol halign="scale" height="19" name="cValue" posx="55" posy="120" type="buttonedit" width="100"></jsxcontrol>
					</td>
					<td width="1" height="4"><spacer height="4" type="block" width="1"/></td>
				</tr>
				<tr height="16">
					<td align="left" valign="top" width="45" height="16" xpos="10">
						<jsxcontrol height="14" posx="10" posy="124" type="static" value="Value" width="40"></jsxcontrol>
					</td>
					<td width="1" height="16"><spacer height="16" type="block" width="1"/></td>
				</tr>
				<tr height="6">
					<td width="45" height="6"></td>
					<td rowspan="2" colspan="3" align="left" valign="top" width="100" height="59" xpos="55">
						<jsxcontrol halign="scale" height="19" name="cGroup" posx="55" posy="142" type="buttonedit" value="" width="100"></jsxcontrol>
					</td>
					<td width="1" height="6"><spacer height="6" type="block" width="1"/></td>
				</tr>
				<tr height="53">
					<td align="left" valign="top" width="45" height="53" xpos="10">
						<jsxcontrol height="16" name="cGroupLbl" posx="10" posy="146" type="static" value="Group" width="40"></jsxcontrol>
					</td>
					<td width="1" height="53"><spacer height="53" type="block" width="1"/></td>
				</tr>
				<tr cntrlrow="cntrlrow" height="1">
					<td width="10" height="1"><spacer height="1" type="block" width="10"/></td>
					<td width="45" height="1"><spacer height="1" type="block" width="45"/></td>
					<td width="55" height="1"><spacer height="1" type="block" width="55"/></td>
					<td width="5" height="1"><spacer height="1" type="block" width="5"/></td>
					<td width="40" height="1"><spacer height="1" type="block" width="40"/></td>
					<td width="20" height="1"><spacer height="1" type="block" width="20"/></td>
					<td width="39" height="1"><spacer height="1" type="block" width="39"/></td>
					<td width="1" height="1"></td>
				</tr>
			</table>
		</jsxinspector>
		<p><b>JSXLocale</b> Specify localized versions of strings used in menu items, dialogs, alerts, etc.</p>
		<jsxlocale src="locale.html"></jsxlocale>
		<p><b>Palette Group</b> Define a new tab for the Object Palette, or add to an existing tab.</p>
		<jsxpalettegroup display="$$$/extendscript/DialogEditor/DialogEditor=Dialog Editor" name="DlgEdit" order="3000" picture="palettegroupIcon" taborder="3100">
			<jsxpaletteentry display="$$$/extendscript/DialogEditor/DialoGrid=Dialog Grid" picture="gridIcon" hilitepicture="gridIconHilite">
				<table width="201" border="0" cellspacing="0" cellpadding="0" cool="cool" gridx="5" gridy="5" height="201" showgridx="showgridx" showgridy="showgridy" usegridx="usegridx" usegridy="usegridy">
					<tr height="200">
						<td width="200" height="200"></td>
						<td width="1" height="200"><spacer height="200" type="block" width="1"/></td>
					</tr>
					<tr cntrlrow="cntrlrow" height="1">
						<td width="200" height="1"><spacer height="1" type="block" width="200"/></td>
						<td width="1" height="1"></td>
					</tr>
				</table>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/Button=Button" picture="buttonIcon" hilitepicture="buttonIconHilite">
				<jsxcontrol height="19" name="dialogok" posx="3" posy="3" type="button" value="Button" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/CheckBox=Check Box" picture="checkIcon" hilitepicture="checkIconHilite">
				<jsxcontrol height="19" name="check" posx="3" posy="3" type="checkbox" value="Check Box" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/RadioButton=Radio Button" picture="radiobuttonIcon" hilitepicture="radiobuttonIconHilite">
				<jsxcontrol height="19" name="radio" group="radiogroup" posx="3" posy="3" type="radiobutton" value="Radio" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/EditField=Edit Field" picture="editIcon" hilitepicture="editIconHilite">
				<jsxcontrol height="19" name="edit" posx="3" posy="3" type="edit" value="Edit" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/PasswordField=Password Field" picture="passwordIcon" hilitepicture="passwordIconHilite">
				<jsxcontrol height="19" name="passwdEdit" posx="3" posy="3" type="password" value="Password" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/ButtonEditField=Button Edit Field" picture="btneditIcon" hilitepicture="btneditIconHilite">
				<jsxcontrol height="19" name="btnEdit" posx="3" posy="3" type="buttonedit" value="Button Edit" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/EditArea=Edit Area" picture="editareaIcon" hilitepicture="editareaIconHilite">
				<jsxcontrol height="80" name="editArea" posx="3" posy="3" type="editarea" value="Edit Area" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/StaticText=Static Text" picture="staticIcon" hilitepicture="staticIconHilite">
				<jsxcontrol height="16" name="static" posx="3" posy="3" type="static" value="Static" width="40"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/ColorField=Color Field" picture="colorIcon" hilitepicture="colorIconHilite">
				<jsxcontrol height="19" name="color" posx="3" posy="3" type="color" value="red" width="30"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/URLGetter=URL Getter" picture="urlgetterIcon" hilitepicture="urlgetterIconHilite">
				<jsxcontrol height="19" name="getter" posx="3" posy="3" type="urlgetter" value="URLGetter" width="100"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/Popup=Popup" picture="popupIcon" hilitepicture="popupIconHilite">
				<jsxcontrol height="19" name="popup" posx="3" posy="3" type="popup" value="Popup" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/ListBox=List Box" picture="listIcon" hilitepicture="listIconHilite">
				<jsxcontrol height="80" name="list" posx="3" posy="3" type="list" value="List Box" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/Line=Line" picture="lineIcon" hilitepicture="lineIconHilite">
				<jsxcontrol height="4" name="line" posx="3" posy="3" type="line" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/Frame=Frame" picture="frameIcon" hilitepicture="frameIconHilite">
				<jsxcontrol height="80" name="frame" posx="3" posy="3" type="frame" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/AutoLayoutLine=Auto Layout Line" picture="linelayoutIcon" hilitepicture="linelayoutIconHilite">
				<jsxlayoutline direction="false" x="3" y="3" length="20"/>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/PreviewControl=Preview Control" picture="previewIcon" hilitepicture="previewIconHilite">
				<jsxcontrol height="80" name="preview" posx="3" posy="3" type="preview" value="www" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/ProgressBar=Progress Bar" picture="progressbarIcon" hilitepicture="progressbarIconHilite">
				<jsxcontrol height="19" name="progressbar" posx="3" posy="3" type="progressbar" value="Progress" width="100"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/ScrollBar=Scroll Bar" picture="scrollbarIcon" hilitepicture="scrollbarIconHilite">
				<jsxcontrol height="80" name="scrollbar" posx="3" posy="3" type="scrollbar" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/SliderControl=Slider Control" picture="sliderIcon" hilitepicture="sliderIconHilite">
				<jsxcontrol height="80" name="slider" posx="3" posy="3" type="slider" value="Slider" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/SourceEditControl=Source Edit Control" picture="sourceIcon" hilitepicture="sourceIconHilite">
				<jsxcontrol height="80" name="source" posx="3" posy="3" type="source" value="Source" width="80"></jsxcontrol>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/TreeControl=Tree Control" picture="treeIcon" hilitepicture="treeIconHilite">
				<jsxcontrol name="hierarchy" type="hierarchy" value="items" posx="3" posy="3" width="100" height="200" halign="scale" valign="scale">
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/View=View" picture="viewIcon" hilitepicture="viewIconHilite">
				<jsxview height="10" name="viewName" picture="imagename" posx="3" posy="3" title="View Title" width="10">
					<!-- View definition here -->
				</jsxview>
			</jsxpaletteentry>
			<jsxpaletteentry classid="control" display="$$$/extendscript/DialogEditor/TabView=Tab View" picture="tabviewIcon" hilitepicture="tabviewIconHilite">
				<jsxtabview height="20" name="viewName" title="View Title" posx="3" posy="3" width="20">
					<!-- View definitions here -->
				</jsxtabview>
			</jsxpaletteentry>
		</jsxpalettegroup>
		<p></p>
	</body>

</html>