{
	"dijit": {
		"location": "dijit",
		"resources": [
			"dijit\/Calendar.js",
			"dijit\/CheckedMenuItem.js",
			"dijit\/ColorPalette.js",
			"dijit\/Declaration.js",
			"dijit\/Dialog.js",
			"dijit\/DialogUnderlay.js",
			"dijit\/Editor.js",
			"dijit\/InlineEditBox.js",
			"dijit\/Menu.js",
			"dijit\/MenuBar.js",
			"dijit\/MenuBarItem.js",
			"dijit\/MenuItem.js",
			"dijit\/MenuSeparator.js",
			"dijit\/PopupMenuBarItem.js",
			"dijit\/PopupMenuItem.js",
			"dijit\/ProgressBar.js",
			"dijit\/TitlePane.js",
			"dijit\/Toolbar.js",
			"dijit\/ToolbarSeparator.js",
			"dijit\/Tooltip.js",
			"dijit\/TooltipDialog.js",
			"dijit\/Tree.js",
			"dijit\/_Calendar.js",
			"dijit\/_Contained.js",
			"dijit\/_Container.js",
			"dijit\/_CssStateMixin.js",
			"dijit\/_DialogMixin.js",
			"dijit\/_HasDropDown.js",
			"dijit\/_KeyNavContainer.js",
			"dijit\/_PaletteMixin.js",
			"dijit\/_Templated.js",
			"dijit\/_TimePicker.js",
			"dijit\/_Widget.js",
			"dijit\/_WidgetBase.js",
			"dijit\/_base\/focus.js",
			"dijit\/_base\/manager.js",
			"dijit\/_base\/place.js",
			"dijit\/_base\/popup.js",
			"dijit\/_base\/scroll.js",
			"dijit\/_base\/sniff.js",
			"dijit\/_base\/typematic.js",
			"dijit\/_base\/wai.js",
			"dijit\/_base\/window.js",
			"dijit\/_base.js",
			"dijit\/_editor\/RichText.js",
			"dijit\/_editor\/_Plugin.js",
			"dijit\/_editor\/html.js",
			"dijit\/_editor\/plugins\/AlwaysShowToolbar.js",
			"dijit\/_editor\/plugins\/EnterKeyHandling.js",
			"dijit\/_editor\/plugins\/FontChoice.js",
			"dijit\/_editor\/plugins\/FullScreen.js",
			"dijit\/_editor\/plugins\/LinkDialog.js",
			"dijit\/_editor\/plugins\/NewPage.js",
			"dijit\/_editor\/plugins\/Print.js",
			"dijit\/_editor\/plugins\/TabIndent.js",
			"dijit\/_editor\/plugins\/TextColor.js",
			"dijit\/_editor\/plugins\/ToggleDir.js",
			"dijit\/_editor\/plugins\/ViewSource.js",
			"dijit\/_editor\/range.js",
			"dijit\/_editor\/selection.js",
			"dijit\/_tree\/dndSource.js",
			"dijit\/dijit-all.js",
			"dijit\/dijit.js",
			"dijit\/form\/Button.js",
			"dijit\/form\/CheckBox.js",
			"dijit\/form\/ComboBox.js",
			"dijit\/form\/ComboButton.js",
			"dijit\/form\/CurrencyTextBox.js",
			"dijit\/form\/DateTextBox.js",
			"dijit\/form\/DropDownButton.js",
			"dijit\/form\/FilteringSelect.js",
			"dijit\/form\/Form.js",
			"dijit\/form\/HorizontalRule.js",
			"dijit\/form\/HorizontalRuleLabels.js",
			"dijit\/form\/HorizontalSlider.js",
			"dijit\/form\/MappedTextBox.js",
			"dijit\/form\/MultiSelect.js",
			"dijit\/form\/NumberSpinner.js",
			"dijit\/form\/NumberTextBox.js",
			"dijit\/form\/RadioButton.js",
			"dijit\/form\/RangeBoundTextBox.js",
			"dijit\/form\/Select.js",
			"dijit\/form\/SimpleTextarea.js",
			"dijit\/form\/Slider.js",
			"dijit\/form\/TextBox.js",
			"dijit\/form\/Textarea.js",
			"dijit\/form\/TimeTextBox.js",
			"dijit\/form\/ToggleButton.js",
			"dijit\/form\/ValidationTextBox.js",
			"dijit\/form\/VerticalRule.js",
			"dijit\/form\/VerticalRuleLabels.js",
			"dijit\/form\/VerticalSlider.js",
			"dijit\/form\/_DateTimeTextBox.js",
			"dijit\/form\/_FormMixin.js",
			"dijit\/form\/_FormSelectWidget.js",
			"dijit\/form\/_FormWidget.js",
			"dijit\/form\/_Spinner.js",
			"dijit\/layout\/AccordionContainer.js",
			"dijit\/layout\/AccordionPane.js",
			"dijit\/layout\/BorderContainer.js",
			"dijit\/layout\/ContentPane.js",
			"dijit\/layout\/LayoutContainer.js",
			"dijit\/layout\/LinkPane.js",
			"dijit\/layout\/ScrollingTabController.js",
			"dijit\/layout\/SplitContainer.js",
			"dijit\/layout\/StackContainer.js",
			"dijit\/layout\/StackController.js",
			"dijit\/layout\/TabContainer.js",
			"dijit\/layout\/TabController.js",
			"dijit\/layout\/_ContentPaneResizeMixin.js",
			"dijit\/layout\/_LayoutWidget.js",
			"dijit\/layout\/_TabContainerBase.js",
			"dijit\/robot.js",
			"dijit\/robotx.js",
			"dijit\/tree\/ForestStoreModel.js",
			"dijit\/tree\/TreeStoreModel.js",
			"dijit\/tree\/_dndContainer.js",
			"dijit\/tree\/_dndSelector.js",
			"dijit\/tree\/dndSource.js"
		],
		"provides": [
			"dijit.Calendar",
			"dijit.CheckedMenuItem",
			"dijit.ColorPalette",
			"dijit.Declaration",
			"dijit.Dialog",
			"dijit.DialogUnderlay",
			"dijit.Editor",
			"dijit.InlineEditBox",
			"dijit.Menu",
			"dijit.MenuBar",
			"dijit.MenuBarItem",
			"dijit.MenuItem",
			"dijit.MenuSeparator",
			"dijit.PopupMenuBarItem",
			"dijit.PopupMenuItem",
			"dijit.ProgressBar",
			"dijit.TitlePane",
			"dijit.Toolbar",
			"dijit.ToolbarSeparator",
			"dijit.Tooltip",
			"dijit.TooltipDialog",
			"dijit.Tree",
			"dijit._Calendar",
			"dijit._Contained",
			"dijit._Container",
			"dijit._CssStateMixin",
			"dijit._DialogMixin",
			"dijit._HasDropDown",
			"dijit._KeyNavContainer",
			"dijit._PaletteMixin",
			"dijit._Templated",
			"dijit._TimePicker",
			"dijit._Widget",
			"dijit._WidgetBase",
			"dijit._base.focus",
			"dijit._base.manager",
			"dijit._base.place",
			"dijit._base.popup",
			"dijit._base.scroll",
			"dijit._base.sniff",
			"dijit._base.typematic",
			"dijit._base.wai",
			"dijit._base.window",
			"dijit._base",
			"dijit._editor.RichText",
			"dijit._editor._Plugin",
			"dijit._editor.html",
			"dijit._editor.plugins.AlwaysShowToolbar",
			"dijit._editor.plugins.EnterKeyHandling",
			"dijit._editor.plugins.FontChoice",
			"dijit._editor.plugins.FullScreen",
			"dijit._editor.plugins.LinkDialog",
			"dijit._editor.plugins.NewPage",
			"dijit._editor.plugins.Print",
			"dijit._editor.plugins.TabIndent",
			"dijit._editor.plugins.TextColor",
			"dijit._editor.plugins.ToggleDir",
			"dijit._editor.plugins.ViewSource",
			"dijit._editor.range",
			"dijit._editor.selection",
			"dijit._tree.dndSource",
			"dijit.dijit-all",
			"dijit.dijit",
			"dijit.form.Button",
			"dijit.form.CheckBox",
			"dijit.form.ComboBox",
			"dijit.form.ComboButton",
			"dijit.form.CurrencyTextBox",
			"dijit.form.DateTextBox",
			"dijit.form.DropDownButton",
			"dijit.form.FilteringSelect",
			"dijit.form.Form",
			"dijit.form.HorizontalRule",
			"dijit.form.HorizontalRuleLabels",
			"dijit.form.HorizontalSlider",
			"dijit.form.MappedTextBox",
			"dijit.form.MultiSelect",
			"dijit.form.NumberSpinner",
			"dijit.form.NumberTextBox",
			"dijit.form.RadioButton",
			"dijit.form.RangeBoundTextBox",
			"dijit.form.Select",
			"dijit.form.SimpleTextarea",
			"dijit.form.Slider",
			"dijit.form.TextBox",
			"dijit.form.Textarea",
			"dijit.form.TimeTextBox",
			"dijit.form.ToggleButton",
			"dijit.form.ValidationTextBox",
			"dijit.form.VerticalRule",
			"dijit.form.VerticalRuleLabels",
			"dijit.form.VerticalSlider",
			"dijit.form._DateTimeTextBox",
			"dijit.form._FormMixin",
			"dijit.form._FormSelectWidget",
			"dijit.form._FormWidget",
			"dijit.form._Spinner",
			"dijit.layout.AccordionContainer",
			"dijit.layout.AccordionPane",
			"dijit.layout.BorderContainer",
			"dijit.layout.ContentPane",
			"dijit.layout.LayoutContainer",
			"dijit.layout.LinkPane",
			"dijit.layout.ScrollingTabController",
			"dijit.layout.SplitContainer",
			"dijit.layout.StackContainer",
			"dijit.layout.StackController",
			"dijit.layout.TabContainer",
			"dijit.layout.TabController",
			"dijit.layout._ContentPaneResizeMixin",
			"dijit.layout._LayoutWidget",
			"dijit.layout._TabContainerBase",
			"dijit.robot",
			"dijit.robotx",
			"dijit.tree.ForestStoreModel",
			"dijit.tree.TreeStoreModel",
			"dijit.tree._dndContainer",
			"dijit.tree._dndSelector",
			"dijit.tree.dndSource"
		],
		"properties": [
			{
				"name": "_dialogStack",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_masterTT",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_Calendar",
				"resources": [
					"dijit\/_Calendar.js"
				],
				"provides": [
					"dijit._Calendar"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "_lastKeyDownNode",
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_curFocus",
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"scope": "normal",
				"type": "DomNode",
				"private": true,
				"summary": "Currently focused item on screen"
			},
			{
				"name": "_prevFocus",
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"scope": "normal",
				"type": "DomNode",
				"private": true,
				"summary": "Previously focused item on screen"
			},
			{
				"name": "_activeStack",
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"scope": "normal",
				"type": "dijit._Widget[]",
				"private": true,
				"summary": "List of currently active widgets (focused widget and it's ancestors)"
			},
			{
				"name": "defaultDuration",
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"scope": "normal",
				"type": "Integer",
				"summary": "The default animation speed (in ms) to use for all Dijit\ntransitional animations, unless otherwise specified\non a per-instance basis. Defaults to 200, overrided by\n<code>djConfig.defaultDuration<\/code>"
			},
			{
				"name": "placementRegistry",
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "_frames",
				"resources": [
					"dijit\/_base\/popup.js"
				],
				"provides": [
					"dijit._base.popup"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "dijit-all",
				"resources": [
					"dijit\/dijit-all.js"
				],
				"provides": [
					"dijit.dijit-all"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "A rollup that includes every dijit. You probably don't need this."
			},
			{
				"name": "dijit",
				"resources": [
					"dijit\/dijit.js"
				],
				"provides": [
					"dijit.dijit"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "A roll-up for common dijit methods"
			},
			{
				"name": "demos",
				"resources": [
					"dijit\/resources\/_modules.js"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "Home of the official dijit demo code"
			},
			{
				"name": "robot",
				"resources": [
					"dijit\/robot.js"
				],
				"provides": [
					"dijit.robot"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "robotx",
				"resources": [
					"dijit\/robotx.js"
				],
				"provides": [
					"dijit.robotx"
				],
				"scope": "normal",
				"type": "Object"
			}
		],
		"methods": [
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "_underlay",
				"scope": "normal",
				"private": true,
				"summary": "A shared instance of a <code>dijit.DialogUnderlay<\/code>",
				"description": "A shared instance of a `dijit.DialogUnderlay` created and\nused by `dijit.Dialog`, though never created until some Dialog\nor subclass thereof is shown.",
				"parameters": [
					{
						"name": "kwArgs",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "showTooltip",
				"scope": "normal",
				"summary": "Display tooltip w\/specified contents in specified position.\nSee description of dijit.Tooltip.defaultPosition for details on position parameter.\nIf position is not specified then dijit.Tooltip.defaultPosition is used.",
				"parameters": [
					{
						"name": "innerHTML",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "aroundNode",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "position",
						"type": "String[]",
						"usage": "optional"
					},
					{
						"name": "rtl",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "hideTooltip",
				"scope": "normal",
				"summary": "Hide the tooltip",
				"parameters": [
					{
						"name": "aroundNode",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "_connectOnUseEventHandler",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "event",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "isCollapsed",
				"scope": "normal",
				"summary": "Returns true if there is no text selected"
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "getBookmark",
				"scope": "normal",
				"summary": "Retrieves a bookmark that can be used with moveToBookmark to return to the same range",
				"return-types": [
					{
						"type": "Object."
					},
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "moveToBookmark",
				"scope": "normal",
				"summary": "Moves current selection to a bookmark",
				"parameters": [
					{
						"name": "bookmark",
						"type": "Object",
						"usage": "required",
						"summary": "This should be a returned object from dijit.getBookmark()"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "getFocus",
				"scope": "normal",
				"summary": "Called as getFocus(), this returns an Object showing the current focus\nand selected text.\n\nCalled as getFocus(widget), where widget is a (widget representing) a button\nthat was just pressed, it returns where focus was before that button\nwas pressed.   (Pressing the button may have either shifted focus to the button,\nor removed focus altogether.)   In this case the selected text is not returned,\nsince it can't be accurately determined.",
				"return-description": "A handle to restore focus\/selection, to be passed to `dijit.focus`",
				"parameters": [
					{
						"name": "menu",
						"type": "Widget",
						"usage": "optional",
						"summary": "dijit._Widget or {domNode: DomNode} structure\nThe button that was just pressed.  If focus has disappeared or moved\nto this button, returns the previous focus.  In this case the bookmark\ninformation is already lost, and null is returned."
					},
					{
						"name": "openedForWindow",
						"type": "Window",
						"usage": "optional",
						"summary": "iframe in which menu was opened"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "focus",
				"scope": "normal",
				"summary": "Sets the focused node and the selection according to argument.\nTo set focus to an iframe's content, pass in the iframe itself.",
				"parameters": [
					{
						"name": "handle",
						"type": "Object",
						"usage": "required",
						"summary": "object returned by get(), or a DomNode"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "registerIframe",
				"scope": "normal",
				"summary": "Registers listeners on the specified iframe so that any click\nor focus event on that iframe (or anything in it) is reported\nas a focus\/click event on the &lt;iframe&gt; itself.",
				"description": "Currently only used by editor.",
				"return-description": "Handle to pass to unregisterIframe()",
				"parameters": [
					{
						"name": "iframe",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "unregisterIframe",
				"scope": "normal",
				"summary": "Unregisters listeners on the specified iframe created by registerIframe.\nAfter calling be sure to delete or null out the handle itself.",
				"parameters": [
					{
						"name": "handle",
						"type": "Object",
						"usage": "required",
						"summary": "Handle returned by registerIframe()"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "registerWin",
				"scope": "normal",
				"summary": "Registers listeners on the specified window (either the main\nwindow or an iframe's window) to detect when the user has clicked somewhere\nor focused somewhere.",
				"description": "Users should call registerIframe() instead of this method.",
				"return-description": "Handle to pass to unregisterWin()",
				"parameters": [
					{
						"name": "targetWindow",
						"type": "Window",
						"usage": "optional",
						"summary": "If specified this is the window associated with the iframe,\ni.e. iframe.contentWindow."
					},
					{
						"name": "effectiveNode",
						"type": "DomNode",
						"usage": "optional",
						"summary": "If specified, report any focus events inside targetWindow as\nan event on effectiveNode, rather than on evt.target."
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "unregisterWin",
				"scope": "normal",
				"summary": "Unregisters listeners on the specified window (either the main\nwindow or an iframe's window) according to handle returned from registerWin().\nAfter calling be sure to delete or null out the handle itself.",
				"parameters": [
					{
						"name": "handle",
						"type": "Handle",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "_onBlurNode",
				"scope": "normal",
				"private": true,
				"summary": "Called when focus leaves a node.\nUsually ignored, _unless_ it *isn't* follwed by touching another node,\nwhich indicates that we tabbed off the last field on the page,\nin which case every widget is marked inactive",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "_onTouchNode",
				"scope": "normal",
				"private": true,
				"summary": "Callback when node is focused or mouse-downed",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required",
						"summary": "The node that was touched."
					},
					{
						"name": "by",
						"type": "String",
						"usage": "required",
						"summary": "&quot;mouse&quot; if the focus\/touch was caused by a mouse down event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "_onFocusNode",
				"scope": "normal",
				"private": true,
				"summary": "Callback when node is focused",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/focus.js"
				],
				"provides": [
					"dijit._base.focus"
				],
				"name": "_setStack",
				"scope": "normal",
				"private": true,
				"summary": "The stack of active widgets has changed.  Send out appropriate events and records new stack.",
				"parameters": [
					{
						"name": "newStack",
						"type": "String[]",
						"usage": "required",
						"summary": "array of widget id's, starting from the top (outermost) widget"
					},
					{
						"name": "by",
						"type": "String",
						"usage": "required",
						"summary": "&quot;mouse&quot; if the focus\/touch was caused by a mouse down event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "byId",
				"scope": "normal",
				"summary": "Returns a widget by it's id, or if passed a widget, no-op (like dojo.byId())",
				"parameters": [
					{
						"name": "id",
						"type": "String|dijit._Widget",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "getUniqueId",
				"scope": "normal",
				"summary": "Generates a unique id for a given widgetType",
				"parameters": [
					{
						"name": "widgetType",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "findWidgets",
				"scope": "normal",
				"summary": "Search subtree under root returning widgets found.\nDoesn't search for nested widgets (ie, widgets inside other widgets).",
				"parameters": [
					{
						"name": "root",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "_destroyAll",
				"scope": "normal",
				"private": true,
				"summary": "Code to destroy all widgets and do other cleanup on page unload"
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "byNode",
				"scope": "normal",
				"summary": "Returns the widget corresponding to the given DOMNode",
				"parameters": [
					{
						"name": "node",
						"type": "DOMNode",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js",
					"dojox\/mobile\/_base.js"
				],
				"provides": [
					"dijit._base.manager",
					"dojox.mobile._base"
				],
				"name": "getEnclosingWidget",
				"scope": "normal",
				"summary": "Returns the widget whose DOM tree contains the specified DOMNode, or null if\nthe node is not contained within the DOM tree of any widget",
				"parameters": [
					{
						"name": "node",
						"type": "DOMNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "_isElementShown",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "hasDefaultTabStop",
				"scope": "normal",
				"summary": "Tests if element is tab-navigable even without an explicit tabIndex setting",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "isTabNavigable",
				"scope": "normal",
				"summary": "Tests if an element is tab-navigable",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "boolean"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "_getTabNavigable",
				"scope": "normal",
				"private": true,
				"summary": "Finds descendants of the specified root node.",
				"description": "Finds the following descendants of the specified root node:\n* the first tab-navigable element in document order\nwithout a tabIndex or with tabIndex=\"0\"\n* the last tab-navigable element in document order\nwithout a tabIndex or with tabIndex=\"0\"\n* the first element in document order with the lowest\npositive tabIndex value\n* the last element in document order with the highest\npositive tabIndex value",
				"parameters": [
					{
						"name": "root",
						"type": "DOMNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "getFirstInTabbingOrder",
				"scope": "normal",
				"summary": "Finds the descendant of the specified root node\nthat is first in the tabbing order",
				"parameters": [
					{
						"name": "root",
						"type": "String|DOMNode",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "DomNode"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js"
				],
				"provides": [
					"dijit._base.manager"
				],
				"name": "getLastInTabbingOrder",
				"scope": "normal",
				"summary": "Finds the descendant of the specified root node\nthat is last in the tabbing order",
				"parameters": [
					{
						"name": "root",
						"type": "String|DOMNode",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "DomNode"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "getViewport",
				"scope": "normal",
				"summary": "Returns the dimensions and scroll position of the viewable area of a browser window"
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "placeOnScreen",
				"scope": "normal",
				"summary": "Positions one of the node's corners at specified position\nsuch that node is fully visible in viewport.",
				"description": "NOTE: node is assumed to be absolutely or relatively positioned.",
				"examples": {
					"example": "Try to place node's top right corner at (10,20).\nIf that makes node go (partially) off screen, then try placing\nbottom left corner at (10,20).\n\tplaceOnScreen(node, {x: 10, y: 20}, [\"TR\", \"BL\"])"
				},
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "pos",
						"type": "dijit.__Position",
						"usage": "required",
						"summary": "Object like {x: 10, y: 20}"
					},
					{
						"name": "corners",
						"type": "String[]",
						"usage": "required",
						"summary": "Array of Strings representing order to try corners in, like [&quot;TR&quot;, &quot;BL&quot;].\nPossible values are:\n* &quot;BL&quot; - bottom left\n* &quot;BR&quot; - bottom right\n* &quot;TL&quot; - top left\n* &quot;TR&quot; - top right"
					},
					{
						"name": "padding",
						"type": "dijit.__Position",
						"usage": "optional",
						"summary": "set padding to put some buffer around the element you want to position."
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "_place",
				"scope": "normal",
				"private": true,
				"summary": "Given a list of spots to put node, put it at the first spot where it fits,\nof if it doesn't fit anywhere then the place with the least overflow",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "choices",
						"type": "Array",
						"usage": "required",
						"summary": "Array of elements like: {corner: 'TL', pos: {x: 10, y: 20} }\nAbove example says to put the top-left corner of the node at (10,20)"
					},
					{
						"name": "layoutNode",
						"type": "Function(node,",
						"usage": "required",
						"summary": "aroundNodeCorner, nodeCorner, size)\nfor things like tooltip, they are displayed differently (and have different dimensions)\nbased on their orientation relative to the parent.   This adjusts the popup based on orientation.\nIt also passes in the available size for the popup, which is useful for tooltips to\ntell them that their width is limited to a certain amount.   layoutNode() may return a value expressing\nhow much the popup had to be modified to fit into the available space.   This is used to determine\nwhat the best placement is."
					},
					{
						"name": "aroundNodeCoords",
						"type": "Object",
						"usage": "required",
						"summary": "Size of aroundNode, ex: {w: 200, h: 50}"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "placeOnScreenAroundNode",
				"scope": "normal",
				"summary": "Position node adjacent or kitty-corner to aroundNode\nsuch that it's fully visible in viewport.",
				"description": "Place node such that corner of node touches a corner of\naroundNode, and that node is fully visible.",
				"examples": {
					"example": "\tdijit.placeOnScreenAroundNode(node, aroundNode, {'BL':'TL', 'TR':'BR'});\nThis will try to position node such that node's top-left corner is at the same position\nas the bottom left corner of the aroundNode (ie, put node below\naroundNode, with left edges aligned).  If that fails it will try to put\nthe bottom-right corner of node where the top right corner of aroundNode is\n(ie, put node above aroundNode, with right edges aligned)"
				},
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "aroundNode",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "aroundCorners",
						"type": "Object",
						"usage": "required",
						"summary": "Ordered list of pairs of corners to try matching up.\nEach pair of corners is represented as a key\/value in the hash,\nwhere the key corresponds to the aroundNode's corner, and\nthe value corresponds to the node's corner:\n\n\t{ aroundNodeCorner1: nodeCorner1, aroundNodeCorner2: nodeCorner2, ...}\n\nThe following strings are used to represent the four corners:\n* &quot;BL&quot; - bottom left\n* &quot;BR&quot; - bottom right\n* &quot;TL&quot; - top left\n* &quot;TR&quot; - top right"
					},
					{
						"name": "layoutNode",
						"type": "Function",
						"usage": "optional",
						"summary": "Function(node, aroundNodeCorner, nodeCorner)\nFor things like tooltip, they are displayed differently (and have different dimensions)\nbased on their orientation relative to the parent.   This adjusts the popup based on orientation."
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "placeOnScreenAroundRectangle",
				"scope": "normal",
				"summary": "Like dijit.placeOnScreenAroundNode(), except that the &quot;around&quot;\nparameter is an arbitrary rectangle on the screen (x, y, width, height)\ninstead of a dom node.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "aroundRect",
						"type": "dijit.__Rectangle",
						"usage": "required"
					},
					{
						"name": "aroundCorners",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "layoutNode",
						"type": "Function",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "_placeOnScreenAroundRect",
				"scope": "normal",
				"private": true,
				"summary": "Like dijit.placeOnScreenAroundNode(), except it accepts coordinates\nof a rectangle to place node adjacent to.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "x",
						"type": "Number",
						"usage": "required"
					},
					{
						"name": "y",
						"type": "Number",
						"usage": "required"
					},
					{
						"name": "width",
						"type": "Number",
						"usage": "required"
					},
					{
						"name": "height",
						"type": "Number",
						"usage": "required"
					},
					{
						"name": "aroundCorners",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "layoutNode",
						"type": "Function",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "placeOnScreenAroundElement",
				"scope": "normal",
				"summary": "Like dijit.placeOnScreenAroundNode(), except it accepts an arbitrary object\nfor the &quot;around&quot; argument and finds a proper processor to place a node.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "aroundElement",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "aroundCorners",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "layoutNode",
						"type": "Function",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/place.js"
				],
				"provides": [
					"dijit._base.place"
				],
				"name": "getPopupAroundAlignment",
				"scope": "normal",
				"summary": "Transforms the passed array of preferred positions into a format suitable for passing as the aroundCorners argument to dijit.placeOnScreenAroundElement.",
				"parameters": [
					{
						"name": "position",
						"type": "Array",
						"usage": "required",
						"summary": "String[] This variable controls the position of the drop down.\nIt's an array of strings with the following values:\n\n* before: places drop down to the left of the target node\/widget, or to the right in\nthe case of RTL scripts like Hebrew and Arabic\n* after: places drop down to the right of the target node\/widget, or to the left in\nthe case of RTL scripts like Hebrew and Arabic\n* above: drop down goes above target node\n* below: drop down goes below target node\n\nThe list is positions is tried, in order, until a position is found where the drop down fits\nwithin the viewport."
					},
					{
						"name": "leftToRight",
						"type": "Boolean",
						"usage": "required",
						"summary": "Whether the popup will be displaying in leftToRight mode."
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/scroll.js"
				],
				"provides": [
					"dijit._base.scroll"
				],
				"name": "scrollIntoView",
				"scope": "normal",
				"summary": "Scroll the passed node into view, if it is not already.\nDeprecated, use <code>dojo.window.scrollIntoView<\/code> instead.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "pos",
						"type": "Object",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "hasWaiRole",
				"scope": "normal",
				"summary": "Determines if an element has a particular role.",
				"return-description": "True if elem has the specific role attribute and false if not.\nFor backwards compatibility if role parameter not provided,\nreturns true if has a role",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					},
					{
						"name": "role",
						"type": "String",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "getWaiRole",
				"scope": "normal",
				"summary": "Gets the role for an element (which should be a wai role).",
				"return-description": "The role of elem or an empty string if elem\ndoes not have a role.",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "setWaiRole",
				"scope": "normal",
				"summary": "Sets the role on an element.",
				"description": "Replace existing role attribute with new role.",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					},
					{
						"name": "role",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "removeWaiRole",
				"scope": "normal",
				"summary": "Removes the specified role from an element.\nRemoves role attribute if no specific role provided (for backwards compat.)",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					},
					{
						"name": "role",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "hasWaiState",
				"scope": "normal",
				"summary": "Determines if an element has a given state.",
				"description": "Checks for an attribute called \"aria-\"+state.",
				"return-description": "true if elem has a value for the given state and\nfalse if it does not.",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					},
					{
						"name": "state",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "getWaiState",
				"scope": "normal",
				"summary": "Gets the value of a state on an element.",
				"description": "Checks for an attribute called \"aria-\"+state.",
				"return-description": "The value of the requested state on elem\nor an empty string if elem has no value for state.",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					},
					{
						"name": "state",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "setWaiState",
				"scope": "normal",
				"summary": "Sets a state on an element.",
				"description": "Sets an attribute called \"aria-\"+state.",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					},
					{
						"name": "state",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "value",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/wai.js"
				],
				"provides": [
					"dijit._base.wai"
				],
				"name": "removeWaiState",
				"scope": "normal",
				"summary": "Removes a state from an element.",
				"description": "Sets an attribute called \"aria-\"+state.",
				"parameters": [
					{
						"name": "elem",
						"type": "Element",
						"usage": "required"
					},
					{
						"name": "state",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/window.js"
				],
				"provides": [
					"dijit._base.window"
				],
				"name": "getDocumentWindow",
				"scope": "normal",
				"parameters": [
					{
						"name": "doc",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/form\/TextBox.js"
				],
				"provides": [
					"dijit.form.TextBox"
				],
				"name": "selectInputText",
				"scope": "normal",
				"summary": "Select text in the input element argument, from start (default 0), to stop (default end).",
				"parameters": [
					{
						"name": "element",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "start",
						"type": "Number",
						"usage": "optional"
					},
					{
						"name": "stop",
						"type": "Number",
						"usage": "optional"
					}
				]
			}
		]
	},
	"dijit.Calendar": {
		"location": "dijit.Calendar",
		"resources": [
			"dijit\/Calendar.js"
		],
		"provides": [
			"dijit.Calendar"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "A simple GUI for choosing a date in the context of a monthly calendar.",
		"description": "A simple GUI for choosing a date in the context of a monthly calendar.\nThis widget can't be used in a form because it doesn't serialize the date to an\n`<input>` field.  For a form element, use dijit.form.DateTextBox instead.\n\nNote that the parser takes all dates attributes passed in the\n[RFC 3339 format](http:\/\/www.faqs.org\/rfcs\/rfc3339.html), e.g. `2005-06-30T08:05:00-07:00`\nso that they are serializable and locale-independent.",
		"examples": [
			"\tvar calendar = new dijit.Calendar({}, dojo.byId(\"calendarNode\"));",
			"\t<div dojoType=\"dijit.Calendar\"><\/div>"
		],
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._CssStateMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._CssStateMixin"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "widgetsInTemplate",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "value",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Date",
				"summary": "The currently selected Date, initially set to invalid date to indicate no selection.\n\n\nTODO: for 2.0 make this a string (ISO format) rather than a Date"
			},
			{
				"name": "datePackage",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "instance-prototype",
				"type": "String",
				"summary": "JavaScript namespace to find Calendar routines.  Uses Gregorian Calendar routines\nat dojo.date by default."
			},
			{
				"name": "dayWidth",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "How to represent the days of the week in the calendar header. See dojo.date.locale"
			},
			{
				"name": "tabIndex",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Order fields are traversed when user hits the tab key"
			},
			{
				"name": "currentFocus",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Date",
				"summary": "Date object containing the currently focused date, or the date which would be focused\nif the calendar itself was focused.   Also indicates which year and month to display,\ni.e. the current &quot;page&quot; the calendar is on."
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "_currentNode",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "dateClassObj",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "instance",
				"type": "Object"
			},
			{
				"name": "dateFuncObj",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "instance",
				"type": "Object"
			},
			{
				"name": "dateLocaleModule",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "instance",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor",
				"parameters": [
					{
						"name": "args",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_isValidDate",
				"scope": "prototype",
				"private": true,
				"summary": "Runs various tests on the value, checking that it's a valid date, rather\nthan blank or NaN.",
				"parameters": [
					{
						"name": "value",
						"type": "Date",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "setValue",
				"scope": "prototype",
				"summary": "Deprecated.   Use set('value', ...) instead.",
				"parameters": [
					{
						"name": "value",
						"type": "Date",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_getValueAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Support get('value')"
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_setValueAttr",
				"scope": "prototype",
				"summary": "Support set(&quot;value&quot;, ...)",
				"description": "Set the current date and update the UI.  If the date is disabled, the value will\nnot change, but the display will change to the corresponding month.",
				"parameters": [
					{
						"name": "value",
						"type": "Date|Number",
						"usage": "required",
						"summary": "Either a Date or the number of seconds since 1970."
					},
					{
						"name": "priorityChange",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_setText",
				"scope": "prototype",
				"private": true,
				"summary": "This just sets the content of node to the specified text.\nCan't do &quot;node.innerHTML=text&quot; because of an IE bug w\/tables, see #3434.",
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					},
					{
						"name": "text",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_populateGrid",
				"scope": "prototype",
				"private": true,
				"summary": "Fills in the calendar grid with each day (1-31)"
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "goToToday",
				"scope": "prototype",
				"summary": "Sets calendar's value to today's date"
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "constructor",
				"scope": "prototype",
				"parameters": [
					{
						"name": "args",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "postMixInProperties",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_adjustDisplay",
				"scope": "prototype",
				"private": true,
				"summary": "Moves calendar forwards or backwards by months or years",
				"parameters": [
					{
						"name": "part",
						"type": "String",
						"usage": "required",
						"summary": "&quot;month&quot; or &quot;year&quot;"
					},
					{
						"name": "amount",
						"type": "int",
						"usage": "required",
						"summary": "Number of months or years"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_setCurrentFocusAttr",
				"scope": "prototype",
				"private": true,
				"summary": "If the calendar currently has focus, then focuses specified date,\nchanging the currently displayed month\/year if necessary.\nIf the calendar doesn't have focus, updates currently\ndisplayed month\/year, and sets the cell that will get focus.",
				"parameters": [
					{
						"name": "date",
						"type": "Date",
						"usage": "required"
					},
					{
						"name": "forceFocus",
						"type": "Boolean",
						"usage": "required",
						"summary": "If true, will focus() the cell even if calendar itself doesn't have focus"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "focus",
				"scope": "prototype",
				"summary": "Focus the calendar by focusing one of the calendar cells"
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onMonthSelect",
				"scope": "prototype",
				"summary": "Handler for when user selects a month from the drop down list",
				"parameters": [
					{
						"name": "newMonth",
						"type": "Number",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onDayClick",
				"scope": "prototype",
				"summary": "Handler for day clicks, selects the date if appropriate",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onDayMouseOver",
				"scope": "prototype",
				"summary": "Handler for mouse over events on days, sets hovered style",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onDayMouseOut",
				"scope": "prototype",
				"summary": "Handler for mouse out events on days, clears hovered style",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onDayMouseDown",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onDayMouseUp",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "handleKey",
				"scope": "prototype",
				"summary": "Provides keyboard navigation of calendar.",
				"description": "Called from _onKeyPress() to handle keypress on a stand alone Calendar,\nand also from `dijit.form._DateTimeTextBox` to pass a keypress event\nfrom the `dijit.form.DateTextBox` to be handled in this widget",
				"return-description": "False if the key was recognized as a navigation key,\nto indicate that the event was handled by Calendar and shouldn't be propogated",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onKeyPress",
				"scope": "prototype",
				"private": true,
				"summary": "For handling keypress events on a stand alone calendar",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "onValueSelected",
				"scope": "prototype",
				"summary": "Notification that a date cell was selected.  It may be the same as the previous value.",
				"description": "Formerly used by `dijit.form._DateTimeTextBox` (and thus `dijit.form.DateTextBox`)\nto get notification when the user has clicked a date.  Now onExecute() (above) is used.",
				"parameters": [
					{
						"name": "date",
						"type": "Date",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "onChange",
				"scope": "prototype",
				"summary": "Called only when the selected date has changed",
				"parameters": [
					{
						"name": "date",
						"type": "Date",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_isSelectedDate",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Extension point so developers can subclass Calendar to\nsupport multiple (concurrently) selected dates",
				"parameters": [
					{
						"name": "dateObject",
						"type": "Date",
						"usage": "required"
					},
					{
						"name": "locale",
						"type": "String",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "isDisabledDate",
				"scope": "prototype",
				"tags": "extension",
				"summary": "May be overridden to disable certain dates in the calendar e.g. <code>isDisabledDate=dojo.date.locale.isWeekend<\/code>",
				"parameters": [
					{
						"name": "dateObject",
						"type": "Date",
						"usage": "required"
					},
					{
						"name": "locale",
						"type": "String",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "getClassForDate",
				"scope": "prototype",
				"tags": "extension",
				"summary": "May be overridden to return CSS classes to associate with the date entry for the given dateObject,\nfor example to indicate a holiday in specified locale.",
				"parameters": [
					{
						"name": "dateObject",
						"type": "Date",
						"usage": "required"
					},
					{
						"name": "locale",
						"type": "String",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			}
		]
	},
	"dijit.Calendar.cssStateNodes": {
		"location": "dijit.Calendar.cssStateNodes",
		"resources": [
			"dijit\/Calendar.js"
		],
		"provides": [
			"dijit.Calendar"
		],
		"properties": [
			{
				"name": "decrementMonth",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "normal",
				"type": "String"
			},
			{
				"name": "incrementMonth",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "normal",
				"type": "String"
			},
			{
				"name": "previousYearLabelNode",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "normal",
				"type": "String"
			},
			{
				"name": "nextYearLabelNode",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "normal",
				"type": "String"
			}
		]
	},
	"dijit.Calendar.monthDropDownButton.containerNode": {
		"location": "dijit.Calendar.monthDropDownButton.containerNode",
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.Calendar.monthDropDownButton": {
		"location": "dijit.Calendar.monthDropDownButton",
		"type": null,
		"properties": [
			{
				"name": "dropDown",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Object"
			}
		]
	},
	"dijit.Calendar._MonthDropDown": {
		"location": "dijit.Calendar._MonthDropDown",
		"resources": [
			"dijit\/Calendar.js"
		],
		"provides": [
			"dijit.Calendar"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "The month drop down",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				}
			]
		},
		"properties": [
			{
				"name": "months",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "String[]",
				"summary": "List of names of months, possibly w\/some undefined entries for Hebrew leap months\n(ex: [&quot;January&quot;, &quot;February&quot;, undefined, &quot;April&quot;, ...])"
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "String"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_setMonthsAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "months",
						"type": "String[]",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onClick",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "onChange",
				"scope": "prototype",
				"summary": "Callback when month is selected from drop down",
				"parameters": [
					{
						"name": "month",
						"type": "Number",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"name": "_onMenuHover",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.Calendar._MonthDropDown.domNode": {
		"location": "dijit.Calendar._MonthDropDown.domNode",
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/Calendar.js"
				],
				"provides": [
					"dijit.Calendar"
				],
				"scope": "prototype",
				"type": "Object"
			}
		]
	},
	"dijit.CheckedMenuItem": {
		"location": "dijit.CheckedMenuItem",
		"resources": [
			"dijit\/CheckedMenuItem.js"
		],
		"provides": [
			"dijit.CheckedMenuItem"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit.MenuItem",
		"summary": "A checkbox-like menu item for toggling on and off",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit.MenuItem"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/CheckedMenuItem.js"
				],
				"provides": [
					"dijit.CheckedMenuItem"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "checked",
				"resources": [
					"dijit\/CheckedMenuItem.js"
				],
				"provides": [
					"dijit.CheckedMenuItem"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Our checked state"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/CheckedMenuItem.js"
				],
				"provides": [
					"dijit.CheckedMenuItem"
				],
				"name": "_setCheckedAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook so attr('checked', bool) works.\nSets the class and state for the check box.",
				"parameters": [
					{
						"name": "checked",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/CheckedMenuItem.js"
				],
				"provides": [
					"dijit.CheckedMenuItem"
				],
				"name": "onChange",
				"scope": "prototype",
				"tags": "callback",
				"summary": "User defined function to handle check\/uncheck events",
				"parameters": [
					{
						"name": "checked",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/CheckedMenuItem.js"
				],
				"provides": [
					"dijit.CheckedMenuItem"
				],
				"name": "_onClick",
				"scope": "prototype",
				"private": true,
				"summary": "Clicking this item just toggles its state",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.ColorPalette": {
		"location": "dijit.ColorPalette",
		"resources": [
			"dijit\/ColorPalette.js"
		],
		"provides": [
			"dijit.ColorPalette"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "A keyboard accessible color-picking widget",
		"description": "Grid showing various colors, so the user can pick a certain color.\nCan be used standalone, or as a popup.",
		"examples": [
			"\t<div dojoType=\"dijit.ColorPalette\"><\/div>",
			"\tvar picker = new dijit.ColorPalette({ },srcNode);\n\tpicker.startup();"
		],
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._PaletteMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._PaletteMixin"
				}
			]
		},
		"properties": [
			{
				"name": "palette",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "prototype",
				"type": "String",
				"tags": "const",
				"summary": "Size of grid, either &quot;7x10&quot; or &quot;3x4&quot;."
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "The template of this widget."
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "dyeClass",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "prototype",
				"type": "String"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"name": "buildRendering",
				"scope": "prototype"
			}
		]
	},
	"dijit.ColorPalette._palettes": {
		"location": "dijit.ColorPalette._palettes",
		"resources": [
			"dijit\/ColorPalette.js"
		],
		"provides": [
			"dijit.ColorPalette"
		],
		"type": "Map",
		"summary": "This represents the value of the colors.\nThe first level is a hashmap of the different palettes available.\nThe next two dimensions represent the columns and rows of colors.",
		"properties": [
			{
				"name": "7x10",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "normal",
				"type": "Array",
				"privateparent": true
			},
			{
				"name": "3x4",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "normal",
				"type": "Array",
				"privateparent": true
			}
		]
	},
	"dijit.ColorPalette._imagePaths": {
		"location": "dijit.ColorPalette._imagePaths",
		"resources": [
			"dijit\/ColorPalette.js"
		],
		"provides": [
			"dijit.ColorPalette"
		],
		"type": "Map",
		"summary": "This is stores the path to the palette images",
		"properties": [
			{
				"name": "7x10",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "normal",
				"type": "Object",
				"privateparent": true
			},
			{
				"name": "3x4",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "normal",
				"type": "Object",
				"privateparent": true
			},
			{
				"name": "7x10-rtl",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "normal",
				"type": "Object",
				"privateparent": true
			},
			{
				"name": "3x4-rtl",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "normal",
				"type": "Object",
				"privateparent": true
			}
		]
	},
	"dijit._Color": {
		"location": "dijit._Color",
		"resources": [
			"dijit\/ColorPalette.js"
		],
		"provides": [
			"dijit.ColorPalette"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dojo.Color",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dojo.Color"
				}
			]
		},
		"properties": [
			{
				"name": "_alias",
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"scope": "instance",
				"type": null,
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor",
				"parameters": [
					{
						"name": "alias",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"name": "constructor",
				"scope": "prototype",
				"parameters": [
					{
						"name": "alias",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"name": "getValue",
				"scope": "prototype",
				"summary": "Note that although dijit._Color is initialized with a value like &quot;white&quot; getValue() always\nreturns a hex value"
			},
			{
				"resources": [
					"dijit\/ColorPalette.js"
				],
				"provides": [
					"dijit.ColorPalette"
				],
				"name": "fillCell",
				"scope": "prototype",
				"parameters": [
					{
						"name": "cell",
						"type": "DOMNode",
						"usage": "required"
					},
					{
						"name": "blankGif",
						"type": "String",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.Declaration": {
		"location": "dijit.Declaration",
		"resources": [
			"dijit\/Declaration.js"
		],
		"provides": [
			"dijit.Declaration"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "The Declaration widget allows a developer to declare new widget\nclasses directly from a snippet of markup.",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				}
			]
		},
		"properties": [
			{
				"name": "_noScript",
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"scope": "prototype",
				"type": "Boolean",
				"private": true,
				"summary": "Flag to parser to leave alone the script tags contained inside of me"
			},
			{
				"name": "stopParser",
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"scope": "prototype",
				"type": "Boolean",
				"private": true,
				"summary": "Flag to parser to not try and parse widgets declared inside of me"
			},
			{
				"name": "widgetClass",
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"scope": "prototype",
				"type": "String",
				"tags": "const",
				"summary": "Name of class being declared, ex: &quot;acme.myWidget&quot;"
			},
			{
				"name": "mixins",
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"scope": "prototype",
				"type": "String[]",
				"tags": "const",
				"summary": "List containing the prototype for this widget, and also any mixins,\nex: [&quot;dijit._Widget&quot;, &quot;dijit._Container&quot;]"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"name": "buildRendering",
				"scope": "prototype"
			}
		]
	},
	"dijit.Declaration.defaults": {
		"location": "dijit.Declaration.defaults",
		"resources": [
			"dijit\/Declaration.js"
		],
		"provides": [
			"dijit.Declaration"
		],
		"properties": [
			{
				"name": "widgetsInTemplate",
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_skipNodeCache",
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/Declaration.js"
				],
				"provides": [
					"dijit.Declaration"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._DialogBase": {
		"location": "dijit._DialogBase",
		"resources": [
			"dijit\/Dialog.js"
		],
		"provides": [
			"dijit.Dialog"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Templated",
		"summary": "A modal dialog Widget",
		"description": "Pops up a modal dialog window, blocking access to the screen\nand also graying out the screen Dialog is extended from\nContentPane so it supports all the same parameters (href, etc.)",
		"examples": [
			"\t<div dojoType=\"dijit.Dialog\" href=\"test.html\"><\/div>",
			"\tvar foo = new dijit.Dialog({ title: \"test dialog\", content: \"test content\" };\n\tdojo.body().appendChild(foo.domNode);\n\tfoo.startup();"
		],
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit.form._FormMixin.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._DialogMixin.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._CssStateMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit.form._FormMixin"
				},
				{
					"scope": "instance",
					"location": "dijit._DialogMixin"
				},
				{
					"scope": "instance",
					"location": "dijit._CssStateMixin"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "attributeMap",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "open",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "readonly",
				"summary": "True if Dialog is currently displayed on screen."
			},
			{
				"name": "duration",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "normal",
				"type": "Integer",
				"summary": "The time in milliseconds it takes the dialog to fade in and out"
			},
			{
				"name": "refocus",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "A Toggle to modify the default focus behavior of a Dialog, which\nis to re-focus the element which had focus before being opened.\nFalse will disable refocusing. Default: true"
			},
			{
				"name": "autofocus",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "A Toggle to modify the default focus behavior of a Dialog, which\nis to focus on the first dialog element after opening the dialog.\nFalse will disable autofocusing. Default: true"
			},
			{
				"name": "_firstFocusItem",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "DomNode",
				"tags": "readonly",
				"private": true,
				"summary": "The pointer to the first focusable node in the dialog.\nSet by <code>dijit._DialogMixin._getFocusItems<\/code>."
			},
			{
				"name": "_lastFocusItem",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "DomNode",
				"tags": "readonly",
				"private": true,
				"summary": "The pointer to which node has focus prior to our dialog.\nSet by <code>dijit._DialogMixin._getFocusItems<\/code>."
			},
			{
				"name": "doLayout",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Don't change this parameter from the default value.\nThis ContentPane parameter doesn't make sense for Dialog, since Dialog\nis never a child of a layout container, nor can you specify the size of\nDialog in order to control the size of an inner widget."
			},
			{
				"name": "draggable",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Toggles the moveable aspect of the Dialog. If true, Dialog\ncan be dragged by it's title. If false it will remain centered\nin the viewport."
			},
			{
				"name": "aria-describedby",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Allows the user to add an aria-describedby attribute onto the dialog.   The value should\nbe the id of the container element of text that describes the dialog purpose (usually\nthe first text in the dialog).\n&lt;div dojoType=&quot;dijit.Dialog&quot; aria-describedby=&quot;intro&quot; .....&gt;\n&lt;div id=&quot;intro&quot;&gt;Introductory text&lt;\/div&gt;\n&lt;div&gt;rest of dialog contents&lt;\/div&gt;\n&lt;\/div&gt;"
			},
			{
				"name": "_modalconnects",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Array",
				"private": true
			},
			{
				"name": "_relativePosition",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "domNode",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "_moveable",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			},
			{
				"name": "_dndListener",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "underlayAttrs",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_singleChildOriginalStyle",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			},
			{
				"name": "_alreadyInitialized",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_fadeInDeferred",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_fadeOutDeferred",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_scrollConnected",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": "bool",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "postMixInProperties",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "onLoad",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when data has been loaded from an href.\nUnlike most other callbacks, this function can be connected to (via <code>dojo.connect<\/code>)\nbut should *not* be overridden."
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "_endDrag",
				"scope": "prototype",
				"private": true,
				"summary": "Called after dragging the Dialog. Saves the position of the dialog in the viewport.",
				"parameters": [
					{
						"name": "e",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "_setup",
				"scope": "prototype",
				"private": true,
				"summary": "Stuff we need to do before showing the Dialog for the first\ntime (but we defer it until right beforehand, for\nperformance reasons)."
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "_size",
				"scope": "prototype",
				"private": true,
				"summary": "If necessary, shrink dialog contents so dialog fits in viewport"
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "_position",
				"scope": "prototype",
				"private": true,
				"summary": "Position modal dialog in the viewport. If no relative offset\nin the viewport has been determined (by dragging, for instance),\ncenter the node. Otherwise, use the Dialog's stored relative offset,\nand position the node to top: left: values based on the viewport."
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "_onKey",
				"scope": "prototype",
				"private": true,
				"summary": "Handles the keyboard events for accessibility reasons",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "just let it go"
					}
				]
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "show",
				"scope": "prototype",
				"summary": "Display the dialog",
				"return-description": "dojo.Deferred\nDeferred object that resolves when the display animation is complete"
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "hide",
				"scope": "prototype",
				"summary": "Hide the dialog",
				"return-description": "dojo.Deferred\nDeferred object that resolves when the hide animation is complete"
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "layout",
				"scope": "prototype",
				"private": true,
				"summary": "Position the Dialog and the underlay"
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "destroy",
				"scope": "prototype"
			}
		]
	},
	"dijit._DialogBase.cssStateNodes": {
		"location": "dijit._DialogBase.cssStateNodes",
		"resources": [
			"dijit\/Dialog.js"
		],
		"provides": [
			"dijit.Dialog"
		],
		"properties": [
			{
				"name": "closeButtonNode",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "normal",
				"type": "String"
			}
		]
	},
	"dijit._DialogBase._singleChild.domNode.style": {
		"location": "dijit._DialogBase._singleChild.domNode.style",
		"type": null,
		"properties": [
			{
				"name": "cssText",
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"scope": "prototype",
				"type": null,
				"privateparent": true
			}
		]
	},
	"dijit.Dialog": {
		"location": "dijit.Dialog",
		"resources": [
			"dijit\/Dialog.js"
		],
		"provides": [
			"dijit.Dialog"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit.layout.ContentPane",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._DialogBase.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit.layout.ContentPane"
				},
				{
					"scope": "instance",
					"location": "dijit._DialogBase"
				}
			]
		},
		"methods": [
			{
				"constructor": "constructor"
			}
		]
	},
	"dijit._DialogLevelManager": {
		"location": "dijit._DialogLevelManager",
		"resources": [
			"dijit\/Dialog.js"
		],
		"provides": [
			"dijit.Dialog"
		],
		"private": true,
		"summary": "Controls the various active &quot;levels&quot; on the page, starting with the\nstuff initially visible on the page (at z-index 0), and then having an entry for\neach Dialog shown.",
		"methods": [
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "show",
				"scope": "normal",
				"summary": "Call right before fade-in animation for new dialog.\nSaves current focus, displays\/adjusts underlay for new dialog,\nand sets the z-index of the dialog itself.\n\nNew dialog will be displayed on top of all currently displayed dialogs.\n\nCaller is responsible for setting focus in new dialog after the fade-in\nanimation completes.",
				"parameters": [
					{
						"name": "dialog",
						"type": "dijit._Widget",
						"usage": "required"
					},
					{
						"name": "underlayAttrs",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "hide",
				"scope": "normal",
				"summary": "Called when the specified dialog is hidden\/destroyed, after the fade-out\nanimation ends, in order to reset page focus, fix the underlay, etc.\nIf the specified dialog isn't open then does nothing.\n\nCaller is responsible for either setting display:none on the dialog domNode,\nor calling dijit.popup.hide(), or removing it from the page DOM.",
				"parameters": [
					{
						"name": "dialog",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Dialog.js"
				],
				"provides": [
					"dijit.Dialog"
				],
				"name": "isTop",
				"scope": "normal",
				"summary": "Returns true if specified Dialog is the top in the task",
				"parameters": [
					{
						"name": "dialog",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.DialogUnderlay": {
		"location": "dijit.DialogUnderlay",
		"resources": [
			"dijit\/DialogUnderlay.js"
		],
		"provides": [
			"dijit.DialogUnderlay"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "The component that blocks the screen behind a <code>dijit.Dialog<\/code>",
		"description": "A component used to block input behind a `dijit.Dialog`. Only a single\ninstance of this widget is created by `dijit.Dialog`, and saved as\na reference to be shared between all Dialogs as `dijit._underlay`\n\nThe underlay itself can be styled based on and id:\n\t#myDialog_underlay { background-color:red; }\n\nIn the case of `dijit.Dialog`, this id is based on the id of the Dialog,\nsuffixed with _underlay.",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "dialogId",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Id of the dialog.... DialogUnderlay's id is based on this id"
			},
			{
				"name": "class",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "This class name is used on the DialogUnderlay node, in addition to dijitDialogUnderlay"
			},
			{
				"name": "bgIframe",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"name": "_setDialogIdAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "id",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"name": "_setClassAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "clazz",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"name": "postCreate",
				"scope": "prototype",
				"summary": "Append the underlay to the body"
			},
			{
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"name": "layout",
				"scope": "prototype",
				"private": true,
				"summary": "Sets the background to the size of the viewport",
				"description": "Sets the background to the size of the viewport (rather than the size\nof the document) since we need to cover the whole browser window, even\nif the document is only a few lines long."
			},
			{
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"name": "show",
				"scope": "prototype",
				"summary": "Show the dialog underlay"
			},
			{
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"name": "hide",
				"scope": "prototype",
				"summary": "Hides the dialog underlay"
			}
		]
	},
	"dijit.DialogUnderlay.attributeMap": {
		"location": "dijit.DialogUnderlay.attributeMap",
		"resources": [
			"dijit\/DialogUnderlay.js"
		],
		"provides": [
			"dijit.DialogUnderlay"
		],
		"properties": [
			{
				"name": "id",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "normal",
				"type": "String"
			}
		]
	},
	"dijit.DialogUnderlay.node": {
		"location": "dijit.DialogUnderlay.node",
		"type": null,
		"properties": [
			{
				"name": "className",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.DialogUnderlay.domNode": {
		"location": "dijit.DialogUnderlay.domNode",
		"type": null
	},
	"dijit.DialogUnderlay.domNode.style": {
		"location": "dijit.DialogUnderlay.domNode.style",
		"resources": [
			"dijit\/DialogUnderlay.js"
		],
		"provides": [
			"dijit.DialogUnderlay"
		],
		"type": null,
		"properties": [
			{
				"name": "display",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "top",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "left",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.DialogUnderlay.node.style": {
		"location": "dijit.DialogUnderlay.node.style",
		"resources": [
			"dijit\/DialogUnderlay.js"
		],
		"provides": [
			"dijit.DialogUnderlay"
		],
		"type": null,
		"properties": [
			{
				"name": "width",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "height",
				"resources": [
					"dijit\/DialogUnderlay.js"
				],
				"provides": [
					"dijit.DialogUnderlay"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.Editor": {
		"location": "dijit.Editor",
		"resources": [
			"dijit\/Editor.js"
		],
		"provides": [
			"dijit.Editor"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._editor.RichText",
		"summary": "A rich text Editing widget",
		"description": "This widget provides basic WYSIWYG editing features, based on the browser's\nunderlying rich text editing capability, accompanied by a toolbar (`dijit.Toolbar`).\nA plugin model is available to extend the editor's capabilities as well as the\nthe options available in the toolbar.  Content generation may vary across\nbrowsers, and clipboard operations may have different results, to name\na few limitations.  Note: this widget should not be used with the HTML\n&lt;TEXTAREA&gt; tag -- see dijit._editor.RichText for details.",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._editor.RichText"
				}
			]
		},
		"properties": [
			{
				"name": "plugins",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "instance-prototype",
				"type": "Object[]",
				"tags": "const",
				"summary": "A list of plugin names (as strings) or instances (as objects)\nfor this widget.\n\nWhen declared in markup, it might look like:\n\tplugins=&quot;['bold',{name:'dijit._editor.plugins.FontChoice', command:'fontName', generic:true}]&quot;"
			},
			{
				"name": "extraPlugins",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object[]",
				"tags": "const",
				"summary": "A list of extra plugin names which will be appended to plugins array\n\n\nthe following 3 functions are required to make the editor play nice under a layout widget, see #4070"
			},
			{
				"name": "setValueDeferred",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_steps",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Array",
				"private": true
			},
			{
				"name": "_undoedSteps",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Array",
				"private": true
			},
			{
				"name": "commands",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "toolbar",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_plugins",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "instance-prototype",
				"type": "Array",
				"private": true
			},
			{
				"name": "_layoutMode",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "customUndo",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Whether we shall use custom undo\/redo support instead of the native\nbrowser support. By default, we now use custom undo.  It works better\nthan native browser support and provides a consistent behavior across\nbrowsers with a minimal performance hit.  We already had the hit on\nthe slowest browser, IE, anyway."
			},
			{
				"name": "editActionInterval",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "When using customUndo, not every keystroke will be saved as a step.\nInstead typing (including delete) will be grouped together: after\na user stops typing for editActionInterval seconds, a step will be\nsaved; if a user resume typing within editActionInterval seconds,\nthe timeout will be restarted. By default, editActionInterval is 3\nseconds."
			},
			{
				"name": "_inEditing",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "bool",
				"private": true
			},
			{
				"name": "_editTimer",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_undoRedoActive",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_savedSelection",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_editInterval",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "instance",
				"type": "Number",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "constructor",
				"scope": "prototype",
				"private": true,
				"summary": "Runs on widget initialization to setup arrays etc."
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "postMixInProperties",
				"scope": "prototype",
				"summary": "Extension to make sure a deferred is in place before certain functions\nexecute, like making sure all the plugins are properly inserted."
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "destroy",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "addPlugin",
				"scope": "prototype",
				"summary": "takes a plugin name as a string or a plugin instance and\nadds it to the toolbar and associates it with this editor\ninstance. The resulting plugin is added to the Editor's\nplugins array. If index is passed, it's placed in the plugins\narray at that index. No big magic, but a nice helper for\npassing in plugin names via markup.",
				"parameters": [
					{
						"name": "plugin",
						"type": "String||Object",
						"usage": "required",
						"summary": "String, args object or plugin instance\n\nargs:\nThis object will be passed to the plugin constructor"
					},
					{
						"name": "index",
						"type": "Integer",
						"usage": "optional",
						"summary": "Used when creating an instance from\nsomething already in this.plugins. Ensures that the new\ninstance is assigned to this.plugins at that index."
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "startup",
				"scope": "prototype",
				"tags": "console.log('startup',arguments);",
				"summary": "Exists to make Editor work as a child of a layout widget.\nDevelopers don't need to call this method."
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "resize",
				"scope": "prototype",
				"summary": "Resize the editor to the specified size, see <code>dijit.layout._LayoutWidget.resize<\/code>",
				"parameters": [
					{
						"name": "size",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "layout",
				"scope": "prototype",
				"summary": "Called from <code>dijit.layout._LayoutWidget.resize<\/code>.  This shouldn't be called directly"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_onIEMouseDown",
				"scope": "prototype",
				"private": true,
				"summary": "IE only to prevent 2 clicks to focus",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "onBeforeActivate",
				"scope": "prototype",
				"parameters": [
					{
						"name": "e",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "onBeforeDeactivate",
				"scope": "prototype",
				"private": true,
				"summary": "Called on IE right before focus is lost.   Saves the selected range.",
				"parameters": [
					{
						"name": "e",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "beginEditing",
				"scope": "prototype",
				"private": true,
				"summary": "Called to note that the user has started typing alphanumeric characters, if it's not already noted.\nDeals with saving undo; see editActionInterval parameter.",
				"parameters": [
					{
						"name": "cmd",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "execCommand",
				"scope": "prototype",
				"summary": "Main handler for executing any commands to the editor, like paste, bold, etc.\nCalled by plugins, but not meant to be called by end users.",
				"parameters": [
					{
						"name": "cmd",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "queryCommandEnabled",
				"scope": "prototype",
				"summary": "Returns true if specified editor command is enabled.\nUsed by the plugins to know when to highlight\/not highlight buttons.",
				"parameters": [
					{
						"name": "cmd",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_moveToBookmark",
				"scope": "prototype",
				"private": true,
				"summary": "Selects the text specified in bookmark b",
				"parameters": [
					{
						"name": "b",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_changeToStep",
				"scope": "prototype",
				"private": true,
				"summary": "Reverts editor to &quot;to&quot; setting, from the undo stack.",
				"parameters": [
					{
						"name": "from",
						"type": null,
						"usage": "required"
					},
					{
						"name": "to",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "undo",
				"scope": "prototype",
				"tags": "console.log('undo');",
				"private": true,
				"summary": "Handler for editor undo (ex: ctrl-z) operation"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "redo",
				"scope": "prototype",
				"tags": "console.log('redo');",
				"private": true,
				"summary": "Handler for editor redo (ex: ctrl-y) operation"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "endEditing",
				"scope": "prototype",
				"private": true,
				"summary": "Called to note that the user has stopped typing alphanumeric characters, if it's not already noted.\nDeals with saving undo; see editActionInterval parameter.",
				"parameters": [
					{
						"name": "ignore_caret",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_getBookmark",
				"scope": "prototype",
				"summary": "Get the currently selected text"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_beginEditing",
				"scope": "prototype",
				"private": true,
				"summary": "Called when the user starts typing alphanumeric characters.\nDeals with saving undo; see editActionInterval parameter.",
				"parameters": [
					{
						"name": "cmd",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_endEditing",
				"scope": "prototype",
				"tags": "Avoid filtering to make sure selections restore.",
				"private": true,
				"summary": "Called when the user stops typing alphanumeric characters.\nDeals with saving undo; see editActionInterval parameter.",
				"parameters": [
					{
						"name": "ignore_caret",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "onKeyDown",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for onkeydown event.",
				"parameters": [
					{
						"name": "e",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"summary": "Called from focus manager when focus has moved away from this editor"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_saveSelection",
				"scope": "prototype",
				"private": true,
				"summary": "Save the currently selected text in _savedSelection attribute"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_restoreSelection",
				"scope": "prototype",
				"private": true,
				"summary": "Re-select the text specified in _savedSelection attribute;\nsee _saveSelection()."
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "onClick",
				"scope": "prototype",
				"summary": "Handler for when editor is clicked"
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "replaceValue",
				"scope": "prototype",
				"summary": "over-ride of replaceValue to support custom undo and stack maintainence.",
				"parameters": [
					{
						"name": "html",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_setDisabledAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "value",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"name": "_setStateClass",
				"scope": "prototype",
				"private": true
			}
		]
	},
	"dijit.Editor.editingArea.style": {
		"location": "dijit.Editor.editingArea.style",
		"type": null,
		"properties": [
			{
				"name": "height",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.Editor.iframe.style": {
		"location": "dijit.Editor.iframe.style",
		"type": null,
		"properties": [
			{
				"name": "height",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.Editor.document": {
		"location": "dijit.Editor.document",
		"type": null
	},
	"dijit.Editor.document.body": {
		"location": "dijit.Editor.document.body",
		"resources": [
			"dijit\/Editor.js"
		],
		"provides": [
			"dijit.Editor"
		],
		"type": null,
		"properties": [
			{
				"name": "clientWidth",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "clientHeight",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "clientLeft",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "offsetWidth",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "offsetHeight",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "offsetLeft",
				"resources": [
					"dijit\/Editor.js"
				],
				"provides": [
					"dijit.Editor"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit._editor": {
		"location": "dijit._editor",
		"resources": [
			"dijit\/_editor\/RichText.js",
			"dijit\/_editor\/_Plugin.js",
			"dijit\/_editor\/html.js",
			"dijit\/_editor\/plugins\/AlwaysShowToolbar.js",
			"dijit\/_editor\/plugins\/EnterKeyHandling.js",
			"dijit\/_editor\/plugins\/FontChoice.js",
			"dijit\/_editor\/plugins\/FullScreen.js",
			"dijit\/_editor\/plugins\/LinkDialog.js",
			"dijit\/_editor\/plugins\/NewPage.js",
			"dijit\/_editor\/plugins\/Print.js",
			"dijit\/_editor\/plugins\/TabIndent.js",
			"dijit\/_editor\/plugins\/TextColor.js",
			"dijit\/_editor\/plugins\/ToggleDir.js",
			"dijit\/_editor\/plugins\/ViewSource.js",
			"dijit\/_editor\/range.js",
			"dijit\/_editor\/selection.js"
		],
		"provides": [
			"dijit._editor.RichText",
			"dijit._editor._Plugin",
			"dijit._editor.html",
			"dijit._editor.plugins.AlwaysShowToolbar",
			"dijit._editor.plugins.EnterKeyHandling",
			"dijit._editor.plugins.FontChoice",
			"dijit._editor.plugins.FullScreen",
			"dijit._editor.plugins.LinkDialog",
			"dijit._editor.plugins.NewPage",
			"dijit._editor.plugins.Print",
			"dijit._editor.plugins.TabIndent",
			"dijit._editor.plugins.TextColor",
			"dijit._editor.plugins.ToggleDir",
			"dijit._editor.plugins.ViewSource",
			"dijit._editor.range",
			"dijit._editor.selection"
		],
		"private": true,
		"properties": [
			{
				"name": "html",
				"resources": [
					"dijit\/_editor\/html.js"
				],
				"provides": [
					"dijit._editor.html"
				],
				"scope": "normal",
				"type": "Object",
				"privateparent": true
			},
			{
				"name": "range",
				"resources": [
					"dijit\/_editor\/range.js"
				],
				"provides": [
					"dijit._editor.range"
				],
				"scope": "normal",
				"type": "Object",
				"privateparent": true
			}
		],
		"methods": [
			{
				"resources": [
					"dijit\/_editor\/html.js"
				],
				"provides": [
					"dijit._editor.html"
				],
				"name": "escapeXml",
				"scope": "normal",
				"privateparent": true,
				"summary": "Adds escape sequences for special characters in XML: &amp;&lt;&gt;&quot;'\nOptionally skips escapes for single quotes",
				"parameters": [
					{
						"name": "str",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "noSingleQuotes",
						"type": "Boolean",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "string"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/html.js"
				],
				"provides": [
					"dijit._editor.html"
				],
				"name": "getNodeHtml",
				"scope": "normal",
				"privateparent": true,
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/html.js"
				],
				"provides": [
					"dijit._editor.html"
				],
				"name": "getChildrenHtml",
				"scope": "normal",
				"privateparent": true,
				"summary": "Returns the html content of a DomNode and children",
				"parameters": [
					{
						"name": "dom",
						"type": "DomNode",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			}
		]
	},
	"dijit._editor._Plugin": {
		"location": "dijit._editor._Plugin",
		"resources": [
			"dijit\/Editor.js",
			"dijit\/_editor\/_Plugin.js"
		],
		"provides": [
			"dijit.Editor",
			"dijit._editor._Plugin"
		],
		"type": "Function",
		"classlike": true,
		"private": true,
		"privateparent": true,
		"properties": [
			{
				"name": "editor",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": "dijit.Editor",
				"tags": "const",
				"privateparent": true,
				"summary": "Points to the parent editor"
			},
			{
				"name": "iconClassPrefix",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": "String",
				"tags": "const",
				"privateparent": true,
				"summary": "The CSS class name for the button node is formed from <code>iconClassPrefix<\/code> and <code>command<\/code>"
			},
			{
				"name": "button",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": "dijit._Widget",
				"privateparent": true,
				"summary": "Pointer to <code>dijit.form.Button<\/code> or other widget (ex: <code>dijit.form.FilteringSelect<\/code>)\nthat is added to the toolbar to control this plugin.\nIf not specified, will be created on initialization according to <code>buttonClass<\/code>"
			},
			{
				"name": "command",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": "String",
				"privateparent": true,
				"summary": "String like &quot;insertUnorderedList&quot;, &quot;outdent&quot;, &quot;justifyCenter&quot;, etc. that represents an editor command.\nPassed to editor.execCommand() if <code>useDefaultCommand<\/code> is true."
			},
			{
				"name": "useDefaultCommand",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": "Boolean",
				"privateparent": true,
				"summary": "If true, this plugin executes by calling Editor.execCommand() with the argument specified in <code>command<\/code>."
			},
			{
				"name": "buttonClass",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "normal",
				"type": "Widget",
				"privateparent": true,
				"summary": "Class\nClass of widget (ex: dijit.form.Button or dijit.form.FilteringSelect)\nthat is added to the toolbar to control this plugin.\nThis is used to instantiate the button, unless <code>button<\/code> itself is specified directly."
			},
			{
				"name": "disabled",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": "Boolean",
				"privateparent": true,
				"summary": "Flag to indicate if this plugin has been disabled and should do nothing\nhelps control button state, among other things.  Set via the setter api."
			},
			{
				"name": "enabled",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": null,
				"privateparent": true
			},
			{
				"name": "checked",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "prototype",
				"type": null,
				"privateparent": true
			},
			{
				"name": "_attrPairNames",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "instance-prototype",
				"type": "Object",
				"private": true,
				"privateparent": true
			},
			{
				"name": "params",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "instance",
				"type": "Object",
				"privateparent": true
			},
			{
				"name": "_connects",
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"scope": "instance",
				"type": "Array",
				"private": true,
				"privateparent": true
			}
		],
		"methods": [
			{
				"constructor": "constructor",
				"parameters": [
					{
						"name": "args",
						"type": "Object",
						"usage": "optional"
					},
					{
						"name": "node",
						"type": "DomNode",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "constructor",
				"scope": "prototype",
				"privateparent": true,
				"parameters": [
					{
						"name": "args",
						"type": "Object",
						"usage": "optional"
					},
					{
						"name": "node",
						"type": "DomNode",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "getLabel",
				"scope": "prototype",
				"private": true,
				"privateparent": true,
				"summary": "Returns the label to use for the button",
				"parameters": [
					{
						"name": "key",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "_initButton",
				"scope": "prototype",
				"tags": "extension",
				"privateparent": true,
				"summary": "Initialize the button or other widget that will control this plugin.\nThis code only works for plugins controlling built-in commands in the editor."
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "destroy",
				"scope": "prototype",
				"privateparent": true,
				"summary": "Destroy this plugin"
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "connect",
				"scope": "prototype",
				"privateparent": true,
				"summary": "Make a dojo.connect() that is automatically disconnected when this plugin is destroyed.\nSimilar to <code>dijit._Widget.connect<\/code>.",
				"parameters": [
					{
						"name": "o",
						"type": null,
						"usage": "required"
					},
					{
						"name": "f",
						"type": null,
						"usage": "required"
					},
					{
						"name": "tf",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "updateState",
				"scope": "prototype",
				"privateparent": true,
				"summary": "Change state of the plugin to respond to events in the editor.",
				"description": "This is called on meaningful events in the editor, such as change of selection\nor caret position (but not simple typing of alphanumeric keys).   It gives the\nplugin a chance to update the CSS of its button.\n\nFor example, the \"bold\" plugin will highlight\/unhighlight the bold button depending on whether the\ncharacters next to the caret are bold or not.\n\nOnly makes sense when `useDefaultCommand` is true, as it calls Editor.queryCommandEnabled(`command`)."
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "setEditor",
				"scope": "prototype",
				"privateparent": true,
				"summary": "Tell the plugin which Editor it is associated with.",
				"parameters": [
					{
						"name": "editor",
						"type": "dijit.Editor",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "setToolbar",
				"scope": "prototype",
				"privateparent": true,
				"summary": "Tell the plugin to add it's controller widget (often a button)\nto the toolbar.  Does nothing if there is no controller widget.",
				"parameters": [
					{
						"name": "toolbar",
						"type": "dijit.Toolbar",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "set",
				"scope": "prototype",
				"privateparent": true,
				"summary": "Set a property on a plugin",
				"description": "Sets named properties on a plugin which may potentially be handled by a\nsetter in the plugin.\nFor example, if the plugin has a properties \"foo\"\nand \"bar\" and a method named \"_setFooAttr\", calling:\n\tplugin.set(\"foo\", \"Howdy!\");\nwould be equivalent to writing:\n\tplugin._setFooAttr(\"Howdy!\");\nand:\n\tplugin.set(\"bar\", 3);\nwould be equivalent to writing:\n\tplugin.bar = 3;\n\nset() may also be called with a hash of name\/value pairs, ex:\n\tplugin.set({\n\t\tfoo: \"Howdy\",\n\t\tbar: 3\n\t})\nThis is equivalent to calling set(foo, \"Howdy\") and set(bar, 3)",
				"parameters": [
					{
						"name": "name",
						"type": "attribute",
						"usage": "required",
						"summary": "The property to set."
					},
					{
						"name": "value",
						"type": "anything",
						"usage": "required",
						"summary": "The value to set in the property."
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "get",
				"scope": "prototype",
				"privateparent": true,
				"summary": "Get a property from a plugin.",
				"description": "Get a named property from a plugin. The property may\npotentially be retrieved via a getter method. If no getter is defined, this\njust retrieves the object's property.\nFor example, if the plugin has a properties \"foo\"\nand \"bar\" and a method named \"_getFooAttr\", calling:\n\tplugin.get(\"foo\");\nwould be equivalent to writing:\n\tplugin._getFooAttr();\nand:\n\tplugin.get(\"bar\");\nwould be equivalent to writing:\n\tplugin.bar;",
				"parameters": [
					{
						"name": "name",
						"type": "The",
						"usage": "required",
						"summary": "property to get."
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "_setDisabledAttr",
				"scope": "prototype",
				"private": true,
				"privateparent": true,
				"summary": "Function to set the plugin state and call updateState to make sure the\nbutton is updated appropriately.",
				"parameters": [
					{
						"name": "disabled",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "_getAttrNames",
				"scope": "prototype",
				"private": true,
				"privateparent": true,
				"summary": "Helper function for get() and set().\nCaches attribute name values so we don't do the string ops every time.",
				"parameters": [
					{
						"name": "name",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_editor\/_Plugin.js"
				],
				"provides": [
					"dijit._editor._Plugin"
				],
				"name": "_set",
				"scope": "prototype",
				"private": true,
				"privateparent": true,
				"summary": "Helper function to set new value for specified attribute",
				"parameters": [
					{
						"name": "name",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "value",
						"type": "anything",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.InlineEditBox": {
		"location": "dijit.InlineEditBox",
		"resources": [
			"dijit\/InlineEditBox.js"
		],
		"provides": [
			"dijit.InlineEditBox"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "An element with in-line edit capabilites",
		"description": "Behavior for an existing node (`<p>`, `<div>`, `<span>`, etc.) so that\nwhen you click it, an editor shows up in place of the original\ntext.  Optionally, Save and Cancel button are displayed below the edit widget.\nWhen Save is clicked, the text is pulled from the edit\nwidget and redisplayed and the edit widget is again hidden.\nBy default a plain Textarea widget is used as the editor (or for\ninline values a TextBox), but you can specify an editor such as\ndijit.Editor (for editing HTML) or a Slider (for adjusting a number).\nAn edit widget must support the following API to be used:\n- displayedValue or value as initialization parameter,\nand available through set('displayedValue') \/ set('value')\n- void focus()\n- DOM-node focusNode = node containing editable text",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				}
			]
		},
		"properties": [
			{
				"name": "editing",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "readonly",
				"summary": "Is the node currently in edit mode?"
			},
			{
				"name": "autoSave",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Changing the value automatically saves it; don't have to push save button\n(and save button isn't even displayed)"
			},
			{
				"name": "buttonSave",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Save button label"
			},
			{
				"name": "buttonCancel",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Cancel button label"
			},
			{
				"name": "renderAsHtml",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Set this to true if the specified Editor's value should be interpreted as HTML\nrather than plain text (ex: <code>dijit.Editor<\/code>)"
			},
			{
				"name": "editor",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String|Function",
				"summary": "Class name (or reference to the Class) for Editor widget"
			},
			{
				"name": "editorWrapper",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String|Function",
				"summary": "Class name (or reference to the Class) for widget that wraps the editor widget, displaying save\/cancel\nbuttons."
			},
			{
				"name": "editorParams",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "instance-prototype",
				"type": "Object",
				"summary": "Set of parameters for editor, like {required: true}"
			},
			{
				"name": "disabled",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "If true, clicking the InlineEditBox to edit it will have no effect."
			},
			{
				"name": "width",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Width of editor.  By default it's width=100% (ie, block mode)."
			},
			{
				"name": "value",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "The display value of the widget in read-only mode"
			},
			{
				"name": "noValueIndicator",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String",
				"tags": "const",
				"summary": "The text that gets displayed when there is no value (so that the user has a place to click to edit)"
			},
			{
				"name": "_savedPosition",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_savedOpacity",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_savedTabIndex",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "onChange",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Set this handler to be notified of changes to value.",
				"parameters": [
					{
						"name": "value",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "onCancel",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Set this handler to be notified when editing is cancelled."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "constructor",
				"scope": "prototype",
				"private": true,
				"summary": "Sets up private arrays etc."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "postMixInProperties",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "setDisabled",
				"scope": "prototype",
				"summary": "Deprecated.   Use set('disabled', ...) instead.",
				"parameters": [
					{
						"name": "disabled",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_setDisabledAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook to make set(&quot;disabled&quot;, ...) work.\nSet disabled state of widget.",
				"parameters": [
					{
						"name": "disabled",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onMouseOver",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for onmouseover and onfocus event."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onMouseOut",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for onmouseout and onblur event."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onClick",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for onclick event.",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "edit",
				"scope": "prototype",
				"private": true,
				"summary": "Display the editor widget in place of the original (read only) markup."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"private": true,
				"summary": "Called when focus moves outside the InlineEditBox.\nPerforms garbage collection."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "destroy",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_showText",
				"scope": "prototype",
				"private": true,
				"summary": "Revert to display mode, and optionally focus on display node",
				"parameters": [
					{
						"name": "focus",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "save",
				"scope": "prototype",
				"private": true,
				"summary": "Save the contents of the editor and revert to display mode.",
				"parameters": [
					{
						"name": "focus",
						"type": "Boolean",
						"usage": "required",
						"summary": "Focus on the display mode text"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "setValue",
				"scope": "prototype",
				"summary": "Deprecated.   Use set('value', ...) instead.",
				"parameters": [
					{
						"name": "val",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_setValueAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook to make set(&quot;value&quot;, ...) work.\nInserts specified HTML value into this node, or an &quot;input needed&quot; character if node is blank.",
				"parameters": [
					{
						"name": "val",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "getValue",
				"scope": "prototype",
				"summary": "Deprecated.   Use get('value') instead."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "cancel",
				"scope": "prototype",
				"private": true,
				"summary": "Revert to display mode, discarding any changes made in the editor",
				"parameters": [
					{
						"name": "focus",
						"type": "Boolean",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.InlineEditBox.displayNode": {
		"location": "dijit.InlineEditBox.displayNode",
		"resources": [
			"dijit\/InlineEditBox.js"
		],
		"provides": [
			"dijit.InlineEditBox"
		],
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object"
			}
		]
	},
	"dijit.InlineEditBox.wrapperWidget": {
		"location": "dijit.InlineEditBox.wrapperWidget",
		"resources": [
			"dijit\/InlineEditBox.js"
		],
		"provides": [
			"dijit.InlineEditBox"
		],
		"properties": [
			{
				"name": "editWidget",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit._InlineEditor": {
		"location": "dijit._InlineEditor",
		"resources": [
			"dijit\/InlineEditBox.js"
		],
		"provides": [
			"dijit.InlineEditBox"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "Internal widget used by InlineEditBox, displayed when in editing mode\nto display the editor and maybe save\/cancel buttons.  Calling code should\nconnect to save\/cancel methods to detect when editing is finished\n\nHas mainly the same parameters as InlineEditBox, plus these values:\n\nstyle: Object\nSet of CSS attributes of display node, to replicate in editor\n\nvalue: String\nValue as an HTML string or plain text string, depending on renderAsHTML flag",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "widgetsInTemplate",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "messages",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "sourceStyle",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "editWidget",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "postMixInProperties",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onIntermediateChange",
				"scope": "prototype",
				"private": true,
				"summary": "Called for editor widgets that support the intermediateChanges=true flag as a way\nto detect when to enable\/disabled the save button",
				"parameters": [
					{
						"name": "val",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "destroy",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "getValue",
				"scope": "prototype",
				"summary": "Return the [display] value of the edit widget"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onKeyPress",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for keypress in the edit box in autoSave mode.",
				"description": "For autoSave widgets, if Esc\/Enter, call cancel\/save.",
				"parameters": [
					{
						"name": "e",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"private": true,
				"summary": "Called when focus moves outside the editor"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "_onChange",
				"scope": "prototype",
				"private": true,
				"summary": "Called when the underlying widget fires an onChange event,\nsuch as when the user selects a value from the drop down list of a ComboBox,\nwhich means that the user has finished entering the value and we should save."
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "enableSave",
				"scope": "prototype",
				"tags": "extension",
				"summary": "User overridable function returning a Boolean to indicate\nif the Save button should be enabled or not - usually due to invalid conditions"
			},
			{
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"name": "focus",
				"scope": "prototype",
				"summary": "Focus the edit widget."
			}
		]
	},
	"dijit._InlineEditor.inlineEditBox": {
		"location": "dijit._InlineEditor.inlineEditBox",
		"type": null,
		"properties": [
			{
				"name": "width",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit._InlineEditor.domNode.style": {
		"location": "dijit._InlineEditor.domNode.style",
		"type": null,
		"properties": [
			{
				"name": "display",
				"resources": [
					"dijit\/InlineEditBox.js"
				],
				"provides": [
					"dijit.InlineEditBox"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._MenuBase": {
		"location": "dijit._MenuBase",
		"resources": [
			"dijit\/Menu.js"
		],
		"provides": [
			"dijit.Menu"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "Base class for Menu and MenuBar",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._KeyNavContainer.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._KeyNavContainer"
				}
			]
		},
		"properties": [
			{
				"name": "parentMenu",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Widget",
				"tags": "readonly",
				"summary": "pointer to menu that displayed me"
			},
			{
				"name": "popupDelay",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "number of milliseconds before hovering (without clicking) causes the popup to automatically open."
			},
			{
				"name": "hover_timer",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_hoveredChild",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_focus_timer",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "isActive",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "bool"
			},
			{
				"name": "isShowingNow",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "bool"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "startup",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "onExecute",
				"scope": "prototype",
				"summary": "Attach point for notification about when a menu item has been executed.\nThis is an internal mechanism used for Menus to signal to their parent to\nclose them, because they are about to execute the onClick handler.   In\ngeneral developers should not attach to or override this method."
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "onCancel",
				"scope": "prototype",
				"summary": "Attach point for notification about when the user cancels the current menu\nThis is an internal mechanism used for Menus to signal to their parent to\nclose them.  In general developers should not attach to or override this method.",
				"parameters": [
					{
						"name": "closeAll",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_moveToPopup",
				"scope": "prototype",
				"private": true,
				"summary": "This handles the right arrow key (left arrow key on RTL systems),\nwhich will either open a submenu, or move to the next item in the\nancestor MenuBar",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_onPopupHover",
				"scope": "prototype",
				"private": true,
				"summary": "This handler is called when the mouse moves over the popup.",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "onItemHover",
				"scope": "prototype",
				"summary": "Called when cursor is over a MenuItem.",
				"parameters": [
					{
						"name": "item",
						"type": "MenuItem",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_onChildBlur",
				"scope": "prototype",
				"private": true,
				"summary": "Called when a child MenuItem becomes inactive because focus\nhas been removed from the MenuItem *and* it's descendant menus.",
				"parameters": [
					{
						"name": "item",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "onItemUnhover",
				"scope": "prototype",
				"summary": "Callback fires when mouse exits a MenuItem",
				"parameters": [
					{
						"name": "item",
						"type": "MenuItem",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_stopPopupTimer",
				"scope": "prototype",
				"private": true,
				"summary": "Cancels the popup timer because the user has stop hovering\non the MenuItem, etc."
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_stopPendingCloseTimer",
				"scope": "prototype",
				"private": true,
				"summary": "Cancels the pending-close timer because the close has been preempted",
				"parameters": [
					{
						"name": "popup",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_stopFocusTimer",
				"scope": "prototype",
				"private": true,
				"summary": "Cancels the pending-focus timer because the menu was closed before focus occured"
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_getTopMenu",
				"scope": "prototype",
				"private": true,
				"summary": "Returns the top menu in this chain of Menus"
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "onItemClick",
				"scope": "prototype",
				"private": true,
				"summary": "Handle clicks on an item.",
				"parameters": [
					{
						"name": "item",
						"type": "dijit._Widget",
						"usage": "required"
					},
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_openPopup",
				"scope": "prototype",
				"summary": "Open the popup to the side of\/underneath the current menu item",
				"return-types": [
					{
						"type": "the focused child lost focus since the timer was started"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_markActive",
				"scope": "prototype",
				"private": true,
				"summary": "Mark this menu's state as active.\nCalled when this Menu gets focus from:\n1) clicking it (mouse or via space\/arrow key)\n2) being opened by a parent menu.\nThis is not called just from mouse hover.\nFocusing a menu via TAB does NOT automatically set isActive\nsince TAB is a navigation operation and not a selection one.\nFor Windows apps, pressing the ALT key focuses the menubar\nmenus (similar to TAB navigation) but the menu is not active\n(ie no dropdown) until an item is clicked."
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "onOpen",
				"scope": "prototype",
				"private": true,
				"summary": "Callback when this menu is opened.\nThis is called by the popup manager as notification that the menu\nwas opened.",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_markInactive",
				"scope": "prototype",
				"private": true,
				"summary": "Mark this menu's state as inactive."
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "onClose",
				"scope": "prototype",
				"private": true,
				"summary": "Callback when this menu is closed.\nThis is called by the popup manager as notification that the menu\nwas closed."
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_closeChild",
				"scope": "prototype",
				"private": true,
				"summary": "Called when submenu is clicked or focus is lost.  Close hierarchy of menus."
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_onItemFocus",
				"scope": "prototype",
				"private": true,
				"summary": "Called when child of this Menu gets focus from:\n1) clicking it\n2) tabbing into it\n3) being opened by a parent menu.\nThis is not called just from mouse hover.",
				"parameters": [
					{
						"name": "item",
						"type": "MenuItem",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"summary": "Called when focus is moved away from this Menu and it's submenus."
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_cleanUp",
				"scope": "prototype",
				"private": true,
				"summary": "Called when the user is done with this menu.  Closes hierarchy of menus."
			}
		]
	},
	"dijit._MenuBase.currentPopup": {
		"location": "dijit._MenuBase.currentPopup",
		"resources": [
			"dijit\/Menu.js"
		],
		"provides": [
			"dijit.Menu"
		]
	},
	"dijit._MenuBase.currentPopup.parentMenu": {
		"location": "dijit._MenuBase.currentPopup.parentMenu",
		"resources": [
			"dijit\/Menu.js"
		],
		"provides": [
			"dijit.Menu"
		],
		"type": null,
		"properties": [
			{
				"name": "focusedChild",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit._MenuBase.focusedChild": {
		"location": "dijit._MenuBase.focusedChild",
		"resources": [
			"dijit\/Menu.js"
		],
		"provides": [
			"dijit.Menu"
		]
	},
	"dijit._MenuBase.focusedChild.popup": {
		"location": "dijit._MenuBase.focusedChild.popup",
		"resources": [
			"dijit\/Menu.js"
		],
		"provides": [
			"dijit.Menu"
		],
		"type": null,
		"properties": [
			{
				"name": "parentMenu",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "from_item",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "_focus_timer",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			}
		]
	},
	"dijit.Menu": {
		"location": "dijit.Menu",
		"resources": [
			"dijit\/Menu.js",
			"dojox\/widget\/PlaceholderMenuItem.js"
		],
		"provides": [
			"dijit.Menu",
			"dojox.widget.PlaceholderMenuItem"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._MenuBase",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._MenuBase"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "targetNodeIds",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "String[]",
				"tags": "const",
				"summary": "Array of dom node ids of nodes to attach to.\nFill this with nodeIds upon widget creation and it becomes context menu for those nodes."
			},
			{
				"name": "contextMenuForWindow",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "const",
				"summary": "If true, right clicking anywhere on the window will cause this context menu to open.\nIf false, must specify targetNodeIds."
			},
			{
				"name": "leftClickToOpen",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "const",
				"summary": "If true, menu will open on left click instead of right click, similiar to a file menu."
			},
			{
				"name": "refocus",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "When this menu closes, re-focus the element which had focus before it was opened."
			},
			{
				"name": "_openSubMenuKey",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			},
			{
				"name": "_closeSubMenuKey",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			},
			{
				"name": "_openTimer",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_bindings",
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"scope": "instance",
				"type": "Array",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "constructor",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_onKeyPress",
				"scope": "prototype",
				"summary": "Handle keyboard based menu navigation.",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_iframeContentWindow",
				"scope": "prototype",
				"private": true,
				"summary": "Returns the window reference of the passed iframe",
				"parameters": [
					{
						"name": "iframe_el",
						"type": "HTMLIFrameElement",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Window"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_iframeContentDocument",
				"scope": "prototype",
				"summary": "Returns a reference to the document object inside iframe_el",
				"parameters": [
					{
						"name": "iframe_el",
						"type": "HTMLIFrameElement",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "HTMLDocument"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "bindDomNode",
				"scope": "prototype",
				"summary": "Attach menu to given node",
				"parameters": [
					{
						"name": "node",
						"type": "String|DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "unBindDomNode",
				"scope": "prototype",
				"summary": "Detach menu from given node",
				"parameters": [
					{
						"name": "nodeName",
						"type": "String|DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_scheduleOpen",
				"scope": "prototype",
				"private": true,
				"summary": "Set timer to display myself.  Using a timer rather than displaying immediately solves\ntwo problems:\n\n1. IE: without the delay, focus work in &quot;open&quot; causes the system\ncontext menu to appear in spite of stopEvent.\n\n2. Avoid double-shows on linux, where shift-F10 generates an oncontextmenu event\neven after a dojo.stopEvent(e).  (Shift-F10 on windows doesn't generate the\noncontextmenu event.)",
				"parameters": [
					{
						"name": "target",
						"type": "DomNode",
						"usage": "optional"
					},
					{
						"name": "iframe",
						"type": "DomNode",
						"usage": "optional"
					},
					{
						"name": "coords",
						"type": "Object",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_openMyself",
				"scope": "prototype",
				"private": true,
				"summary": "Internal function for opening myself when the user does a right-click or something similar.",
				"parameters": [
					{
						"name": "args",
						"type": "This",
						"usage": "required",
						"summary": "is an Object containing:\n* target:\nThe node that is being clicked\n* iframe:\nIf an &lt;iframe&gt; is being clicked, iframe points to that iframe\n* coords:\nPut menu at specified x\/y position in viewport, or if iframe is\nspecified, then relative to iframe.\n\n_openMyself() formerly took the event object, and since various code references\nevt.target (after connecting to _openMyself()), using an Object for parameters\n(so that old code still works)."
					}
				]
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"private": true
			},
			{
				"resources": [
					"dijit\/Menu.js"
				],
				"provides": [
					"dijit.Menu"
				],
				"name": "uninitialize",
				"scope": "prototype"
			},
			{
				"resources": [
					"dojox\/widget\/PlaceholderMenuItem.js"
				],
				"provides": [
					"dojox.widget.PlaceholderMenuItem"
				],
				"name": "getPlaceholders",
				"scope": "prototype",
				"summary": "Returns an array of placeholders with the given label.  There\ncan be multiples.",
				"return-description": "An array of placeholders that match the given label",
				"parameters": [
					{
						"name": "label",
						"type": "String",
						"usage": "optional",
						"summary": "Label to search for - if not specified, then all placeholders\nare returned"
					}
				],
				"return-types": [
					{
						"type": "dojox.widget.PlaceholderMenuItem[]"
					}
				]
			}
		]
	},
	"dijit.MenuBar": {
		"location": "dijit.MenuBar",
		"resources": [
			"dijit\/MenuBar.js"
		],
		"provides": [
			"dijit.MenuBar"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._MenuBase",
		"summary": "A menu bar, listing menu choices horizontally, like the &quot;File&quot; menu in most desktop applications",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._MenuBase"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "_isMenuBar",
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "This is a MenuBar widget, not a (vertical) Menu widget."
			},
			{
				"name": "_orient",
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "focusedChild",
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"scope": "prototype",
				"type": null
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"name": "focusChild",
				"scope": "prototype",
				"parameters": [
					{
						"name": "item",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"name": "_onKeyPress",
				"scope": "prototype",
				"summary": "Handle keyboard based menu navigation.",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuBar.js"
				],
				"provides": [
					"dijit.MenuBar"
				],
				"name": "onItemClick",
				"scope": "prototype",
				"private": true,
				"summary": "Handle clicks on an item. Cancels a dropdown if already open.",
				"parameters": [
					{
						"name": "item",
						"type": "dijit._Widget",
						"usage": "required"
					},
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			}
		]
	},
	"dojo": {
		"location": "dojo",
		"resources": [
			"dojo\/AdapterRegistry.js",
			"dojo\/DeferredList.js",
			"dojo\/NodeList-data.js",
			"dojo\/NodeList-fx.js",
			"dojo\/NodeList-html.js",
			"dojo\/NodeList-manipulate.js",
			"dojo\/NodeList-traverse.js",
			"dojo\/Stateful.js",
			"dojo\/_base\/Color.js",
			"dojo\/_base\/Deferred.js",
			"dojo\/_base\/NodeList.js",
			"dojo\/_base\/_loader\/hostenv_ff_ext.js",
			"dojo\/_base\/_loader\/loader.js",
			"dojo\/_base\/_loader\/loader_debug.js",
			"dojo\/_base\/_loader\/loader_xd.js",
			"dojo\/_base\/array.js",
			"dojo\/_base\/connect.js",
			"dojo\/_base\/declare.js",
			"dojo\/_base\/event.js",
			"dojo\/_base\/fx.js",
			"dojo\/_base\/html.js",
			"dojo\/_base\/json.js",
			"dojo\/_base\/lang.js",
			"dojo\/_base\/query-sizzle.js",
			"dojo\/_base\/query.js",
			"dojo\/_base\/window.js",
			"dojo\/_base\/xhr.js",
			"dojo\/_firebug\/firebug.js",
			"dojo\/back.js",
			"dojo\/behavior.js",
			"dojo\/cache.js",
			"dojo\/cldr\/monetary.js",
			"dojo\/cldr\/supplemental.js",
			"dojo\/colors.js",
			"dojo\/cookie.js",
			"dojo\/currency.js",
			"dojo\/data\/ItemFileReadStore.js",
			"dojo\/data\/ItemFileWriteStore.js",
			"dojo\/data\/ObjectStore.js",
			"dojo\/data\/api\/Identity.js",
			"dojo\/data\/api\/Notification.js",
			"dojo\/data\/api\/Read.js",
			"dojo\/data\/api\/Request.js",
			"dojo\/data\/api\/Write.js",
			"dojo\/data\/util\/filter.js",
			"dojo\/data\/util\/simpleFetch.js",
			"dojo\/data\/util\/sorter.js",
			"dojo\/date\/locale.js",
			"dojo\/date\/stamp.js",
			"dojo\/date.js",
			"dojo\/dnd\/Avatar.js",
			"dojo\/dnd\/Container.js",
			"dojo\/dnd\/Manager.js",
			"dojo\/dnd\/Moveable.js",
			"dojo\/dnd\/Mover.js",
			"dojo\/dnd\/Selector.js",
			"dojo\/dnd\/Source.js",
			"dojo\/dnd\/TimedMoveable.js",
			"dojo\/dnd\/autoscroll.js",
			"dojo\/dnd\/common.js",
			"dojo\/dnd\/move.js",
			"dojo\/fx\/Toggler.js",
			"dojo\/fx\/easing.js",
			"dojo\/fx.js",
			"dojo\/gears.js",
			"dojo\/hash.js",
			"dojo\/html.js",
			"dojo\/io\/iframe.js",
			"dojo\/io\/script.js",
			"dojo\/jaxer.js",
			"dojo\/number.js",
			"dojo\/parser.js",
			"dojo\/regexp.js",
			"dojo\/robot.js",
			"dojo\/robotx.js",
			"dojo\/rpc\/JsonService.js",
			"dojo\/rpc\/JsonpService.js",
			"dojo\/rpc\/RpcService.js",
			"dojo\/store\/Cache.js",
			"dojo\/store\/DataStore.js",
			"dojo\/store\/JsonRest.js",
			"dojo\/store\/Memory.js",
			"dojo\/store\/Observable.js",
			"dojo\/store\/util\/QueryResults.js",
			"dojo\/store\/util\/SimpleQueryEngine.js",
			"dojo\/string.js",
			"dojo\/uacss.js",
			"dojo\/window.js",
			"dojox\/charting\/widget\/Chart.js",
			"dojox\/charting\/widget\/Sparkline.js",
			"dojox\/fx\/style.js",
			"dojox\/gfx\/canvas.js",
			"dojox\/gfx\/fx.js",
			"dojox\/gfx\/gradient.js",
			"dojox\/gfx\/gradutils.js",
			"dojox\/gfx\/silverlight.js",
			"dojox\/gfx\/svg.js",
			"dojox\/gfx\/utils.js",
			"dojox\/gfx\/vml.js",
			"dojox\/grid\/TreeGrid.js",
			"dojox\/lang\/aspect.js",
			"dojox\/lang\/async\/event.js",
			"dojox\/lang\/async\/timeout.js",
			"dojox\/lang\/async\/topic.js",
			"dojox\/lang\/async.js",
			"dojox\/lang\/functional\/array.js",
			"dojox\/lang\/functional\/fold.js",
			"dojox\/lang\/functional\/object.js",
			"dojox\/lang\/functional\/reversed.js",
			"dojox\/lang\/functional\/scan.js",
			"dojox\/lang\/functional\/sequence.js",
			"dojox\/mobile\/parser.js",
			"dojox\/mobile\/scrollable.js",
			"dojox\/xml\/widgetParser.js"
		],
		"provides": [
			"dojo.AdapterRegistry",
			"dojo.DeferredList",
			"dojo.NodeList-data",
			"dojo.NodeList-fx",
			"dojo.NodeList-html",
			"dojo.NodeList-manipulate",
			"dojo.NodeList-traverse",
			"dojo.Stateful",
			"dojo._base.Color",
			"dojo._base.Deferred",
			"dojo._base.NodeList",
			"dojo._base._loader.loader_debug",
			"dojo._base._loader.loader_xd",
			"dojo._base.array",
			"dojo._base.connect",
			"dojo._base.declare",
			"dojo._base.event",
			"dojo._base.fx",
			"dojo._base.html",
			"dojo._base.json",
			"dojo._base.lang",
			"dojo._base.query",
			"dojo._base.window",
			"dojo._base.xhr",
			"dojo._firebug.firebug",
			"dojo.back",
			"dojo.behavior",
			"dojo.cache",
			"dojo.cldr.monetary",
			"dojo.cldr.supplemental",
			"dojo.colors",
			"dojo.cookie",
			"dojo.currency",
			"dojo.data.ItemFileReadStore",
			"dojo.data.ItemFileWriteStore",
			"dojo.data.ObjectStore",
			"dojo.data.api.Identity",
			"dojo.data.api.Notification",
			"dojo.data.api.Read",
			"dojo.data.api.Request",
			"dojo.data.api.Write",
			"dojo.data.util.filter",
			"dojo.data.util.simpleFetch",
			"dojo.data.util.sorter",
			"dojo.date.locale",
			"dojo.date.stamp",
			"dojo.date",
			"dojo.dnd.Avatar",
			"dojo.dnd.Container",
			"dojo.dnd.Manager",
			"dojo.dnd.Moveable",
			"dojo.dnd.Mover",
			"dojo.dnd.Selector",
			"dojo.dnd.Source",
			"dojo.dnd.TimedMoveable",
			"dojo.dnd.autoscroll",
			"dojo.dnd.common",
			"dojo.dnd.move",
			"dojo.fx.Toggler",
			"dojo.fx.easing",
			"dojo.fx",
			"dojo.gears",
			"dojo.hash",
			"dojo.html",
			"dojo.io.iframe",
			"dojo.io.script",
			"dojo.jaxer",
			"dojo.number",
			"dojo.parser",
			"dojo.regexp",
			"dojo.robot",
			"dojo.robotx",
			"dojo.rpc.JsonService",
			"dojo.rpc.JsonpService",
			"dojo.rpc.RpcService",
			"dojo.store.Cache",
			"dojo.store.DataStore",
			"dojo.store.JsonRest",
			"dojo.store.Memory",
			"dojo.store.Observable",
			"dojo.store.util.QueryResults",
			"dojo.store.util.SimpleQueryEngine",
			"dojo.string",
			"dojo.uacss",
			"dojo.window",
			"dojox.charting.widget.Chart",
			"dojox.charting.widget.Sparkline",
			"dojox.fx.style",
			"dojox.gfx.canvas",
			"dojox.gfx.fx",
			"dojox.gfx.gradient",
			"dojox.gfx.gradutils",
			"dojox.gfx.silverlight",
			"dojox.gfx.svg",
			"dojox.gfx.utils",
			"dojox.gfx.vml",
			"dojox.grid.TreeGrid",
			"dojox.lang.aspect",
			"dojox.lang.async.event",
			"dojox.lang.async.timeout",
			"dojox.lang.async.topic",
			"dojox.lang.async",
			"dojox.lang.functional.array",
			"dojox.lang.functional.fold",
			"dojox.lang.functional.object",
			"dojox.lang.functional.reversed",
			"dojox.lang.functional.scan",
			"dojox.lang.functional.sequence",
			"dojox.mobile.scrollable",
			"dojox.xml.widgetParser"
		],
		"properties": [
			{
				"name": "_nodeDataCache",
				"resources": [
					"dojo\/NodeList-data.js"
				],
				"provides": [
					"dojo.NodeList-data"
				],
				"scope": "normal",
				"type": "Object",
				"private": true,
				"summary": "An alias to the private dataCache for NodeList-data. NEVER USE THIS!\nThis private is only exposed for the benefit of unit testing, and is\nremoved during the build process."
			},
			{
				"name": "NodeList-data",
				"resources": [
					"dojo\/NodeList-data.js"
				],
				"provides": [
					"dojo.NodeList-data"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "NodeList-fx",
				"resources": [
					"dojo\/NodeList-fx.js"
				],
				"provides": [
					"dojo.NodeList-fx"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "Adds dojo.fx animation support to dojo.query()"
			},
			{
				"name": "NodeList-html",
				"resources": [
					"dojo\/NodeList-html.js"
				],
				"provides": [
					"dojo.NodeList-html"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "Adds a chainable html method to dojo.query() \/ Nodelist instances for setting\/replacing node content"
			},
			{
				"name": "NodeList-manipulate",
				"resources": [
					"dojo\/NodeList-manipulate.js"
				],
				"provides": [
					"dojo.NodeList-manipulate"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "Adds a chainable methods to dojo.query() \/ Nodelist instances for manipulating HTML\nand DOM nodes and their properties."
			},
			{
				"name": "NodeList-traverse",
				"resources": [
					"dojo\/NodeList-traverse.js"
				],
				"provides": [
					"dojo.NodeList-traverse"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "Adds a chainable methods to dojo.query() \/ Nodelist instances for traversing the DOM"
			},
			{
				"name": "_NodeListCtor",
				"resources": [
					"dojo\/_base\/NodeList.js"
				],
				"provides": [
					"dojo._base.NodeList"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "isBrowser",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "_name",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/_base\/_loader\/hostenv_rhino.js",
					"dojo\/_base\/_loader\/hostenv_spidermonkey.js"
				],
				"scope": "normal",
				"type": "String",
				"private": true
			},
			{
				"name": "baseUrl",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/_base\/_loader\/hostenv_rhino.js",
					"dojo\/_base\/_loader\/hostenv_spidermonkey.js",
					"dojo\/_base\/_loader\/loader_xd.js",
					"dojo\/resources\/_modules.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "String",
				"summary": "The root relative path to dojo.js (as a string)"
			},
			{
				"name": "isMozilla",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "isMoz",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "isFF",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/uacss.js"
				],
				"provides": [
					"dojo.uacss"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "isQuirks",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/_base\/window.js"
				],
				"provides": [
					"dojo._base.window"
				],
				"scope": "normal",
				"type": "bool"
			},
			{
				"name": "locale",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/_base\/_loader\/hostenv_rhino.js"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "_windowUnloaders",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_defaultContext",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_initFired",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"scope": "normal",
				"type": "bool",
				"private": true
			},
			{
				"name": "isRhino",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_rhino.js"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "_timeouts",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_rhino.js"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "isSpidermonkey",
				"resources": [
					"dojo\/_base\/_loader\/hostenv_spidermonkey.js"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "Detect spidermonkey"
			},
			{
				"name": "_loadedModules",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_inFlightCount",
				"resources": [
					"dojo\/_base\/_loader\/loader.js",
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Number",
				"private": true
			},
			{
				"name": "_hasResource",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_loadedUrls",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_postLoad",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "bool",
				"private": true
			},
			{
				"name": "_loaders",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_unloaders",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_loadNotifying",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "bool",
				"private": true
			},
			{
				"name": "_global_omit_module_check",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": "bool",
				"private": true
			},
			{
				"name": "requireAfterIf",
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "nonDebugProvide",
				"resources": [
					"dojo\/_base\/_loader\/loader_debug.js"
				],
				"provides": [
					"dojo._base._loader.loader_debug"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "_xdDebugScopeChecked",
				"resources": [
					"dojo\/_base\/_loader\/loader_debug.js"
				],
				"provides": [
					"dojo._base._loader.loader_debug"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_isXDomain",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "bool",
				"private": true
			},
			{
				"name": "_xdInFlight",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_xdOrderedReqs",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_xdDepMap",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_xdContents",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Array",
				"private": true
			},
			{
				"name": "_xdTimer",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Number",
				"private": true
			},
			{
				"name": "_xdCharSet",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "String",
				"private": true
			},
			{
				"name": "_xdStartTime",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_headElement",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "_xdReqLoc",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "_xdBundleMap",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_xdRealRequireLocalization",
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "_topics",
				"resources": [
					"dojo\/_base\/connect.js"
				],
				"provides": [
					"dojo._base.connect"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "subscribe",
				"scope": "normal",
				"type": null
			},
			{
				"name": "unsubscribe",
				"scope": "normal",
				"type": null
			},
			{
				"name": "publish",
				"scope": "normal",
				"type": null
			},
			{
				"name": "_mixin",
				"resources": [
					"dojo\/_base\/declare.js",
					"dojo\/_base\/fx.js"
				],
				"provides": [
					"dojo._base.declare",
					"dojo._base.fx"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "_ieListenersName",
				"resources": [
					"dojo\/_base\/event.js"
				],
				"provides": [
					"dojo._base.event"
				],
				"scope": "normal",
				"type": "String",
				"private": true
			},
			{
				"name": "_Animation",
				"resources": [
					"dojo\/_base\/fx.js"
				],
				"provides": [
					"dojo._base.fx"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "boxModel",
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"scope": "normal",
				"type": "String"
			},
			{
				"name": "toJsonIndentStr",
				"resources": [
					"dojo\/_base\/json.js"
				],
				"provides": [
					"dojo._base.json"
				],
				"scope": "normal",
				"type": "String"
			},
			{
				"name": "_delegate",
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			},
			{
				"name": "_bodyLtr",
				"resources": [
					"dojo\/_base\/window.js"
				],
				"provides": [
					"dojo._base.window"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "_blockAsync",
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"scope": "normal",
				"type": "bool",
				"private": true
			},
			{
				"name": "jaxer",
				"resources": [
					"dojo\/jaxer.js"
				],
				"provides": [
					"dojo.jaxer"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "robot",
				"resources": [
					"dojo\/robot.js"
				],
				"provides": [
					"dojo.robot"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "robotx",
				"resources": [
					"dojo\/robotx.js"
				],
				"provides": [
					"dojo.robotx"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "tests",
				"resources": [
					"dojo\/tests.js"
				],
				"scope": "normal",
				"type": "Object",
				"summary": "D.O.H. Test files for Dojo unit testing."
			},
			{
				"name": "isIE",
				"resources": [
					"dojo\/uacss.js",
					"dojo\/window.js"
				],
				"provides": [
					"dojo.uacss",
					"dojo.window"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "isOpera",
				"resources": [
					"dojo\/uacss.js"
				],
				"provides": [
					"dojo.uacss"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "uacss",
				"resources": [
					"dojo\/uacss.js"
				],
				"provides": [
					"dojo.uacss"
				],
				"scope": "normal",
				"type": "Object"
			},
			{
				"name": "isWebKit",
				"resources": [
					"dojo\/window.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo.window",
					"dojox.mobile.scrollable"
				],
				"scope": "normal",
				"type": "bool"
			},
			{
				"name": "isBB",
				"resources": [
					"dojox\/mobile\/_base.js"
				],
				"provides": [
					"dojox.mobile._base"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "_oldConnect",
				"resources": [
					"dojox\/mobile\/app\/_event.js"
				],
				"provides": [
					"dojox.mobile.app._event"
				],
				"scope": "normal",
				"type": null,
				"private": true
			},
			{
				"name": "_defaultXhr",
				"resources": [
					"dojox\/rpc\/Client.js"
				],
				"provides": [
					"dojox.rpc.Client"
				],
				"scope": "normal",
				"type": null,
				"private": true
			}
		],
		"methods": [
			{
				"resources": [
					"dijit\/_base\/manager.js",
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dijit._base.manager",
					"dojo._base.html"
				],
				"name": "attr",
				"scope": "normal",
				"summary": "Gets or sets an attribute on an HTML element.",
				"description": "Handles normalized getting and setting of attributes on DOM\nNodes. If 2 arguments are passed, and a the second argumnt is a\nstring, acts as a getter.\n\nIf a third argument is passed, or if the second argument is a\nmap of attributes, acts as a setter.\n\nWhen passing functions as values, note that they will not be\ndirectly assigned to slots on the node, but rather the default\nbehavior will be removed and the new behavior will be added\nusing `dojo.connect()`, meaning that event handler properties\nwill be normalized and that some caveats with regards to\nnon-standard behaviors for onsubmit apply. Namely that you\nshould cancel form submission using `dojo.stopEvent()` on the\npassed event object instead of returning a boolean value from\nthe handler itself.",
				"examples": [
					"\t\/\/ get the current value of the \"foo\" attribute on a node\n\tdojo.attr(dojo.byId(\"nodeId\"), \"foo\");\n\t\/\/ or we can just pass the id:\n\tdojo.attr(\"nodeId\", \"foo\");",
					"\t\/\/ use attr() to set the tab index\n\tdojo.attr(\"nodeId\", \"tabIndex\", 3);",
					"Set multiple values at once, including event handlers:\n\tdojo.attr(\"formId\", {\n\t\t\"foo\": \"bar\",\n\t\t\"tabIndex\": -1,\n\t\t\"method\": \"POST\",\n\t\t\"onsubmit\": function(e){\n\t\t\t\/\/ stop submitting the form. Note that the IE behavior\n\t\t\t\/\/ of returning true or false will have no effect here\n\t\t\t\/\/ since our handler is connect()ed to the built-in\n\t\t\t\/\/ onsubmit behavior and so we need to use\n\t\t\t\/\/ dojo.stopEvent() to ensure that the submission\n\t\t\t\/\/ doesn't proceed.\n\t\t\tdojo.stopEvent(e);\n\n\t\t\t\/\/ submit the form with Ajax\n\t\t\tdojo.xhrPost({ form: \"formId\" });\n\t\t}\n\t});",
					"Style is s special case: Only set with an object hash of styles\n\tdojo.attr(\"someNode\",{\n\t\tid:\"bar\",\n\t\tstyle:{\n\t\t\twidth:\"200px\", height:\"100px\", color:\"#000\"\n\t\t}\n\t});",
					"Again, only set style as an object hash of styles:\n\tvar obj = { color:\"#fff\", backgroundColor:\"#000\" };\n\tdojo.attr(\"someNode\", \"style\", obj);\n\n\t\/\/ though shorter to use `dojo.style()` in this case:\n\tdojo.style(\"someNode\", obj);"
				],
				"return-description": "when used as a getter, the value of the requested attribute\nor null if that attribute does not have a specified or\ndefault value;\n\nwhen used as a setter, the DOM node",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to the element to get or set the attribute on"
					},
					{
						"name": "name",
						"type": "String|Object",
						"usage": "required",
						"summary": "the name of the attribute to get or set."
					},
					{
						"name": "value",
						"type": "String",
						"usage": "optional",
						"summary": "The value to set for the attribute"
					}
				],
				"return-types": [
					{
						"type": "DomNode"
					},
					{
						"type": "Anything"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js",
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dijit._base.manager",
					"dojo._base.html"
				],
				"name": "hasAttr",
				"scope": "normal",
				"summary": "Returns true if the requested attribute is specified on the\ngiven element, and false otherwise.",
				"return-description": "true if the requested attribute is specified on the\ngiven element, and false otherwise",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to the element to check"
					},
					{
						"name": "name",
						"type": "String",
						"usage": "required",
						"summary": "the name of the attribute"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dijit\/_base\/manager.js",
					"dojo\/_base\/html.js",
					"dojox\/html\/ext-dojo\/style.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dijit._base.manager",
					"dojo._base.html",
					"dojox.html.ext-dojo.style",
					"dojox.mobile.scrollable"
				],
				"name": "style",
				"scope": "normal",
				"summary": "Accesses styles on a node. If 2 arguments are\npassed, acts as a getter. If 3 arguments are passed, acts\nas a setter.",
				"description": "Getting the style value uses the computed style for the node, so the value\nwill be a calculated value, not just the immediate node.style value.\nAlso when getting values, use specific style names,\nlike \"borderBottomWidth\" instead of \"border\" since compound values like\n\"border\" are not necessarily reflected as expected.\nIf you want to get node dimensions, use `dojo.marginBox()`,\n`dojo.contentBox()` or `dojo.position()`.",
				"examples": [
					"Passing only an ID or node returns the computed style object of\nthe node:\n\tdojo.style(\"thinger\");",
					"Passing a node and a style property returns the current\nnormalized, computed value for that property:\n\tdojo.style(\"thinger\", \"opacity\"); \/\/ 1 by default",
					"Passing a node, a style property, and a value changes the\ncurrent display of the node and returns the new computed value\n\tdojo.style(\"thinger\", \"opacity\", 0.5); \/\/ == 0.5",
					"Passing a node, an object-style style property sets each of the values in turn and returns the computed style object of the node:\n\tdojo.style(\"thinger\", {\n\t\t\"opacity\": 0.5,\n\t\t\"border\": \"3px solid black\",\n\t\t\"height\": \"300px\"\n\t});",
					"When the CSS style property is hyphenated, the JavaScript property is camelCased.\nfont-size becomes fontSize, and so on.\n\tdojo.style(\"thinger\",{\n\t\tfontSize:\"14pt\",\n\t\tletterSpacing:\"1.2em\"\n\t});",
					"dojo.NodeList implements .style() using the same syntax, omitting the \"node\" parameter, calling\ndojo.style() on every element of the list. See: `dojo.query()` and `dojo.NodeList()`\n\tdojo.query(\".someClassName\").style(\"visibility\",\"hidden\");\n\t\/\/ or\n\tdojo.query(\"#baz > div\").style({\n\t\topacity:0.75,\n\t\tfontSize:\"13pt\"\n\t});"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to node to get\/set style for"
					},
					{
						"name": "style",
						"type": "String|Object",
						"usage": "optional",
						"summary": "the style property to set in DOM-accessor format\n(&quot;borderWidth&quot;, not &quot;border-width&quot;) or an object with key\/value\npairs suitable for setting each property."
					},
					{
						"name": "value",
						"type": "String",
						"usage": "optional",
						"summary": "If passed, sets value on the node for style, handling\ncross-browser concerns.  When setting a pixel value,\nbe sure to include &quot;px&quot; in the value. For instance, top: &quot;200px&quot;.\nOtherwise, in some cases, some browsers will not apply the style."
					}
				]
			},
			{
				"resources": [
					"dojo\/NodeList-data.js"
				],
				"provides": [
					"dojo.NodeList-data"
				],
				"name": "_nodeData",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					},
					{
						"name": "key",
						"type": null,
						"usage": "required"
					},
					{
						"name": "value",
						"type": null,
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Object"
					},
					{
						"type": "Anything"
					},
					{
						"type": "Nothing"
					}
				]
			},
			{
				"resources": [
					"dojo\/NodeList-data.js"
				],
				"provides": [
					"dojo.NodeList-data"
				],
				"name": "_removeNodeData",
				"scope": "normal",
				"private": true,
				"summary": "Remove some data from this node",
				"parameters": [
					{
						"name": "node",
						"type": "String|DomNode",
						"usage": "required",
						"summary": "The node reference to remove data from"
					},
					{
						"name": "key",
						"type": "String",
						"usage": "optional",
						"summary": "If omitted, remove all data in this dataset.\nIf passed, remove only the passed <code>key<\/code> in the associated dataset"
					}
				]
			},
			{
				"resources": [
					"dojo\/NodeList-data.js"
				],
				"provides": [
					"dojo.NodeList-data"
				],
				"name": "_gcNodeData",
				"scope": "normal",
				"private": true,
				"summary": "super expensive: GC all data in the data for nodes that no longer exist in the dom.",
				"description": "super expensive: GC all data in the data for nodes that no longer exist in the dom.\nMUCH safer to do this yourself, manually, on a per-node basis (via `NodeList.removeData()`)\nprovided as a stop-gap for exceptionally large\/complex applications with constantly changing\ncontent regions (eg: a dijit.layout.ContentPane with replacing data)\nThere is NO automatic GC going on. If you dojo.destroy() a node, you should _removeNodeData\nprior to destruction."
			},
			{
				"resources": [
					"dojo\/_base\/Color.js"
				],
				"provides": [
					"dojo._base.Color"
				],
				"name": "blendColors",
				"scope": "normal",
				"summary": "Blend colors end and start with weight from 0 to 1, 0.5 being a 50\/50 blend,\ncan reuse a previously allocated dojo.Color object for the result",
				"parameters": [
					{
						"name": "start",
						"type": "dojo.Color",
						"usage": "required"
					},
					{
						"name": "end",
						"type": "dojo.Color",
						"usage": "required"
					},
					{
						"name": "weight",
						"type": "Number",
						"usage": "required"
					},
					{
						"name": "obj",
						"type": "dojo.Color",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "dojo.Color"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/Color.js",
					"dojo\/colors.js"
				],
				"provides": [
					"dojo._base.Color",
					"dojo.colors"
				],
				"name": "colorFromRgb",
				"scope": "normal",
				"summary": "get rgb(a) array from css-style color declarations",
				"description": "this function can handle all 4 CSS3 Color Module formats: rgb,\nrgba, hsl, hsla, including rgb(a) with percentage values.",
				"return-description": "A dojo.Color object. If obj is passed, it will be the return value.",
				"parameters": [
					{
						"name": "color",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "obj",
						"type": "dojo.Color",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "dojo.Color"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/Color.js"
				],
				"provides": [
					"dojo._base.Color"
				],
				"name": "colorFromHex",
				"scope": "normal",
				"summary": "Converts a hex string with a '#' prefix to a color object.\nSupports 12-bit #rgb shorthand. Optionally accepts a\n<code>dojo.Color<\/code> object to update with the parsed value.",
				"examples": [
					" var thing = dojo.colorFromHex(\"#ededed\"); \/\/ grey, longhand",
					" var thing = dojo.colorFromHex(\"#000\"); \/\/ black, shorthand"
				],
				"return-description": "A dojo.Color object. If obj is passed, it will be the return value.",
				"parameters": [
					{
						"name": "color",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "obj",
						"type": "dojo.Color",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "dojo.Color"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/Color.js"
				],
				"provides": [
					"dojo._base.Color"
				],
				"name": "colorFromArray",
				"scope": "normal",
				"summary": "Builds a <code>dojo.Color<\/code> from a 3 or 4 element array, mapping each\nelement in sequence to the rgb(a) values of the color.",
				"examples": {
					"example": " var myColor = dojo.colorFromArray([237,237,237,0.5]); \/\/ grey, 50% alpha"
				},
				"return-description": "A dojo.Color object. If obj is passed, it will be the return value.",
				"parameters": [
					{
						"name": "a",
						"type": "Array",
						"usage": "required"
					},
					{
						"name": "obj",
						"type": "dojo.Color",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "dojo.Color"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/Color.js"
				],
				"provides": [
					"dojo._base.Color"
				],
				"name": "colorFromString",
				"scope": "normal",
				"summary": "Parses <code>str<\/code> for a color value. Accepts hex, rgb, and rgba\nstyle color values.",
				"description": "Acceptable input values for str may include arrays of any form\naccepted by dojo.colorFromArray, hex strings such as \"#aaaaaa\", or\nrgb or rgba strings such as \"rgb(133, 200, 16)\" or \"rgba(10, 10,\n10, 50)\"",
				"return-description": "A dojo.Color object. If obj is passed, it will be the return value.",
				"parameters": [
					{
						"name": "str",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "obj",
						"type": "dojo.Color",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/Deferred.js"
				],
				"provides": [
					"dojo._base.Deferred"
				],
				"name": "when",
				"scope": "normal",
				"summary": "This provides normalization between normal synchronous values and\nasynchronous promises, so you can interact with them in a common way",
				"examples": {
					"example": "\tfunction printFirstAndList(items){\n\t\tdojo.when(findFirst(items), console.log);\n\t\tdojo.when(findLast(items), console.log);\n\t}\n\tfunction findFirst(items){\n\t\treturn dojo.when(items, function(items){\n\t\t\treturn items[0];\n\t\t});\n\t}\n\tfunction findLast(items){\n\t\treturn dojo.when(items, function(items){\n\t\t\treturn items[items.length];\n\t\t});\n\t}\nAnd now all three of his functions can be used sync or async.\n\tprintFirstAndLast([1,2,3,4]) will work just as well as\n\tprintFirstAndLast(dojo.xhrGet(...));"
				},
				"parameters": [
					{
						"name": "promiseOrValue",
						"type": null,
						"usage": "required"
					},
					{
						"name": "callback",
						"type": "Function",
						"usage": "optional"
					},
					{
						"name": "errback",
						"type": "Function",
						"usage": "optional"
					},
					{
						"name": "progressHandler",
						"type": "Function",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojox\/io\/proxy\/xip.js",
					"dojox\/jq.js"
				],
				"provides": [
					"dojox.io.proxy.xip",
					"dojox.jq"
				],
				"name": "_xhrObj",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "args",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/_base\/_loader\/hostenv_rhino.js",
					"dojo\/_base\/_loader\/hostenv_spidermonkey.js",
					"dojo\/_base\/_loader\/loader.js",
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_loadUri",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function. Overrides loadUri() from loader.js.\nxd loading requires slightly different behavior from loadPath().",
				"description": "Wanted to override getText(), but it is used by\nthe widget code in too many, synchronous ways right now.",
				"parameters": [
					{
						"name": "uri",
						"type": "String",
						"usage": "required",
						"summary": "a uri which points at the script to be loaded"
					},
					{
						"name": "cb",
						"type": "Function",
						"usage": "required",
						"summary": "a callback function to process the result of evaluating the script\nas an expression, typically used by the resource bundle loader to\nload JSON-style resources"
					},
					{
						"name": "currentIsXDomain",
						"type": "boolean",
						"usage": "required"
					},
					{
						"name": "module",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					},
					{
						"type": "Boolean: contents? true : false"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"name": "_isDocumentOk",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "http",
						"type": null,
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/_base\/_loader\/hostenv_rhino.js"
				],
				"name": "_getText",
				"scope": "normal",
				"private": true,
				"summary": "Read the contents of the specified uri and return those contents.",
				"return-description": "The response text. null is returned when there is a\nfailure and failure is okay (an exception otherwise)",
				"parameters": [
					{
						"name": "uri",
						"type": "URI",
						"usage": "required",
						"summary": "A relative or absolute uri."
					},
					{
						"name": "fail_ok",
						"type": "Boolean",
						"usage": "required",
						"summary": "Default false. If fail_ok and loading fails, return null\ninstead of throwing."
					}
				],
				"return-types": [
					{
						"type": "null"
					},
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"name": "windowUnloaded",
				"scope": "normal",
				"summary": "signal fired by impending window destruction. You may use\ndojo.addOnWIndowUnload() or dojo.connect() to this method to perform\npage\/application cleanup methods. See dojo.addOnWindowUnload for more info."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"name": "addOnWindowUnload",
				"scope": "normal",
				"summary": "registers a function to be triggered when window.onunload fires.\nBe careful trying to modify the DOM or access JavaScript properties\nduring this phase of page unloading: they may not always be available.\nConsider dojo.addOnUnload() if you need to modify the DOM or do heavy\nJavaScript work.",
				"examples": {
					"example": "\tdojo.addOnWindowUnload(functionPointer)\n\tdojo.addOnWindowUnload(object, \"functionName\")\n\tdojo.addOnWindowUnload(object, function(){ \/* ... *\/});"
				},
				"parameters": [
					{
						"name": "obj",
						"type": "Object",
						"usage": "optional"
					},
					{
						"name": "functionName",
						"type": "String|Function",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"name": "pushContext",
				"scope": "normal",
				"summary": "causes subsequent calls to Dojo methods to assume the\npassed object and, optionally, document as the default\nscopes to use. A 2-element array of the previous global and\ndocument are returned.",
				"description": "dojo.pushContext treats contexts as a stack. The\nauto-detected contexts which are initially provided using\ndojo.setContext() require authors to keep state in order to\n\"return\" to a previous context, whereas the\ndojo.pushContext and dojo.popContext methods provide a more\nnatural way to augment blocks of code to ensure that they\nexecute in a different window or frame without issue. If\ncalled without any arguments, the default context (the\ncontext when Dojo is first loaded) is instead pushed into\nthe stack. If only a single string is passed, a node in the\nintitial context's document is looked up and its\ncontextWindow and contextDocument properties are used as\nthe context to push. This means that iframes can be given\nan ID and code can be executed in the scope of the iframe's\ndocument in subsequent calls easily.",
				"parameters": [
					{
						"name": "g",
						"type": "Object|String",
						"usage": "optional",
						"summary": "The global context. If a string, the id of the frame to\nsearch for a context and document."
					},
					{
						"name": "d",
						"type": "MDocumentElement",
						"usage": "optional",
						"summary": "The document element to execute subsequent code with."
					}
				],
				"return-types": [
					{
						"type": "Array"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"name": "popContext",
				"scope": "normal",
				"summary": "If the context stack contains elements, ensure that\nsubsequent code executes in the *previous* context to the\ncurrent context. The current context set ([global,\ndocument]) is returned."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js"
				],
				"name": "_inContext",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "g",
						"type": null,
						"usage": "required"
					},
					{
						"name": "d",
						"type": null,
						"usage": "required"
					},
					{
						"name": "f",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_ff_ext.js",
					"dojo\/jaxer.js"
				],
				"provides": [
					"dojo.jaxer"
				],
				"name": "_loadInit",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "e",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_rhino.js",
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "byId",
				"scope": "normal",
				"summary": "Returns DOM node with matching <code>id<\/code> attribute or <code>null<\/code>\nif not found. If <code>id<\/code> is a DomNode, this function is a no-op.",
				"examples": [
					"Look up a node by ID:\n\tvar n = dojo.byId(\"foo\");",
					"Check if a node exists, and use it.\n\tvar n = dojo.byId(\"bar\");\n\tif(n){ doStuff() ... }",
					"Allow string or DomNode references to be passed to a custom function:\n\tvar foo = function(nodeOrId){\n\t\tnodeOrId = dojo.byId(nodeOrId);\n\t\t\/\/ ... more stuff\n\t}"
				],
				"parameters": [
					{
						"name": "id",
						"type": "String|DOMNode",
						"usage": "required",
						"summary": "A string to match an HTML id attribute or a reference to a DOM Node"
					},
					{
						"name": "doc",
						"type": "Document",
						"usage": "required",
						"summary": "Document to work in. Defaults to the current value of\ndojo.doc.  Can be used to retrieve\nnode references from other documents."
					}
				],
				"return-types": [
					{
						"type": "assume it's a node"
					},
					{
						"type": "DomNode"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_rhino.js"
				],
				"name": "_isLocalUrl",
				"scope": "normal",
				"private": true,
				"summary": "determines if URI is local or not.",
				"parameters": [
					{
						"name": "uri",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_rhino.js",
					"dojo\/_base\/_loader\/hostenv_spidermonkey.js"
				],
				"name": "exit",
				"scope": "normal",
				"parameters": [
					{
						"name": "exitcode",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_rhino.js",
					"dojo\/_base\/window.js"
				],
				"provides": [
					"dojo._base.window"
				],
				"name": "body",
				"scope": "normal",
				"summary": "Return the body element of the document\nreturn the body object associated with dojo.doc",
				"examples": {
					"example": "\tdojo.body().appendChild(dojo.doc.createElement('div'));"
				},
				"return-types": [
					{
						"type": "Node"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/hostenv_spidermonkey.js"
				],
				"name": "_spidermonkeyCurrentFile",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "depth",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_moduleHasPrefix",
				"scope": "normal",
				"private": true,
				"summary": "checks to see if module has been established",
				"parameters": [
					{
						"name": "module",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_getModulePrefix",
				"scope": "normal",
				"private": true,
				"summary": "gets the prefix associated with module",
				"parameters": [
					{
						"name": "module",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js",
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_loadPath",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function. Overrides loadPath() from loader.js.\nxd loading requires slightly different behavior from loadPath().",
				"description": "Loads and interprets the script located at relpath, which is\nrelative to the script root directory.  If the script is found but\nits interpretation causes a runtime exception, that exception is\nnot caught by us, so the caller will see it.  We return a true\nvalue if and only if the script is found.",
				"parameters": [
					{
						"name": "relpath",
						"type": "String",
						"usage": "required",
						"summary": "A relative path to a script (no leading '\/', and typically ending\nin '.js')."
					},
					{
						"name": "module",
						"type": "String",
						"usage": "optional",
						"summary": "A module whose existance to check for after loading a path.  Can be\nused to determine success or failure of the load."
					},
					{
						"name": "cb",
						"type": "Function",
						"usage": "optional",
						"summary": "a callback function to pass the result of evaluating the script"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_loadUriAndCheck",
				"scope": "normal",
				"private": true,
				"summary": "calls loadUri then findModule and returns true if both succeed",
				"parameters": [
					{
						"name": "uri",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "moduleName",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "cb",
						"type": "Function",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "loaded",
				"scope": "normal",
				"summary": "signal fired when initial environment and package loading is\ncomplete. You should use dojo.addOnLoad() instead of doing a\ndirect dojo.connect() to this method in order to handle\ninitialization tasks that require the environment to be\ninitialized. In a browser host,\tdeclarative widgets will\nbe constructed when this function finishes runing."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "unloaded",
				"scope": "normal",
				"summary": "signal fired by impending environment destruction. You should use\ndojo.addOnUnload() instead of doing a direct dojo.connect() to this\nmethod to perform page\/application cleanup methods. See\ndojo.addOnUnload for more info."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_onto",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "arr",
						"type": null,
						"usage": "required"
					},
					{
						"name": "obj",
						"type": null,
						"usage": "required"
					},
					{
						"name": "fn",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "ready",
				"scope": "normal"
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "addOnLoad",
				"scope": "normal",
				"summary": "Registers a function to be triggered after the DOM and dojo.require() calls\nhave finished loading.",
				"description": "Registers a function to be triggered after the DOM has finished\nloading and `dojo.require` modules have loaded. Widgets declared in markup\nhave been instantiated if `djConfig.parseOnLoad` is true when this fires.\n\nImages and CSS files may or may not have finished downloading when\nthe specified function is called.  (Note that widgets' CSS and HTML\ncode is guaranteed to be downloaded before said widgets are\ninstantiated, though including css resouces BEFORE any script elements\nis highly recommended).",
				"examples": [
					"Register an anonymous function to run when everything is ready\n\tdojo.addOnLoad(function(){ doStuff(); });",
					"Register a function to run when everything is ready by pointer:\n\tvar init = function(){ doStuff(); }\n\tdojo.addOnLoad(init);",
					"Register a function to run scoped to `object`, either by name or anonymously:\n\tdojo.addOnLoad(object, \"functionName\");\n\tdojo.addOnLoad(object, function(){ doStuff(); });"
				],
				"parameters": [
					{
						"name": "obj",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "functionName",
						"type": "String|Function",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_modulesLoaded",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_callLoaded",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_getModuleSymbols",
				"scope": "normal",
				"private": true,
				"summary": "Converts a module name in dotted JS notation to an array\nrepresenting the path in the source tree",
				"parameters": [
					{
						"name": "modulename",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Array"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "loadInit",
				"scope": "normal",
				"summary": "Executes a function that needs to be executed for the loader's dojo.requireIf\nresolutions to work. This is needed mostly for the xdomain loader case where\na function needs to be executed to set up the possible values for a dojo.requireIf\ncall.",
				"description": "This function is mainly a marker for the xdomain loader to know parts of\ncode that needs be executed outside the function wrappper that is placed around modules.\nThe init function could be executed more than once, and it should make no assumptions\non what is loaded, or what modules are available. Only the functionality in Dojo Base\nis allowed to be used. Avoid using this method. For a valid use case,\nsee the source for dojox.gfx.",
				"parameters": [
					{
						"name": "init",
						"type": "Function",
						"usage": "required",
						"summary": "a function reference. Executed immediately."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "_loadModule",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js",
					"dojox\/lang\/docs.js"
				],
				"provides": [
					"dojox.lang.docs"
				],
				"name": "require",
				"scope": "normal",
				"summary": "loads a Javascript module from the appropriate URI",
				"description": "Modules are loaded via dojo.require by using one of two loaders: the normal loader\nand the xdomain loader. The xdomain loader is used when dojo was built with a\ncustom build that specified loader=xdomain and the module lives on a modulePath\nthat is a whole URL, with protocol and a domain. The versions of Dojo that are on\nthe Google and AOL CDNs use the xdomain loader.\n\nIf the module is loaded via the xdomain loader, it is an asynchronous load, since\nthe module is added via a dynamically created script tag. This\nmeans that dojo.require() can return before the module has loaded. However, this\nshould only happen in the case where you do dojo.require calls in the top-level\nHTML page, or if you purposely avoid the loader checking for dojo.require\ndependencies in your module by using a syntax like dojo[\"require\"] to load the module.\n\nSometimes it is useful to not have the loader detect the dojo.require calls in the\nmodule so that you can dynamically load the modules as a result of an action on the\npage, instead of right at module load time.\n\nAlso, for script blocks in an HTML page, the loader does not pre-process them, so\nit does not know to download the modules before the dojo.require calls occur.\n\nSo, in those two cases, when you want on-the-fly module loading or for script blocks\nin the HTML page, special care must be taken if the dojo.required code is loaded\nasynchronously. To make sure you can execute code that depends on the dojo.required\nmodules, be sure to add the code that depends on the modules in a dojo.addOnLoad()\ncallback. dojo.addOnLoad waits for all outstanding modules to finish loading before\nexecuting.\n\nThis type of syntax works with both xdomain and normal loaders, so it is good\npractice to always use this idiom for on-the-fly code loading and in HTML script\nblocks. If at some point you change loaders and where the code is loaded from,\nit will all still work.\n\nMore on how dojo.require\n`dojo.require(\"A.B\")` first checks to see if symbol A.B is\ndefined. If it is, it is simply returned (nothing to do).\n\nIf it is not defined, it will look for `A\/B.js` in the script root\ndirectory.\n\n`dojo.require` throws an exception if it cannot find a file\nto load, or if the symbol `A.B` is not defined after loading.\n\nIt returns the object `A.B`, but note the caveats above about on-the-fly loading and\nHTML script blocks when the xdomain loader is loading a module.\n\n`dojo.require()` does nothing about importing symbols into\nthe current namespace.  It is presumed that the caller will\ntake care of that.",
				"examples": [
					"To use dojo.require in conjunction with dojo.ready:\n\n\tdojo.require(\"foo\");\n\tdojo.require(\"bar\");\n\tdojo.addOnLoad(function(){\n\t\t\/\/you can now safely do something with foo and bar\n\t});",
					"For example, to import all symbols into a local block, you might write:\n\n\twith (dojo.require(\"A.B\")) {\n\t\t...\n\t}\n\nAnd to import just the leaf symbol to a local variable:\n\n\tvar B = dojo.require(\"A.B\");\n\t..."
				],
				"return-description": "the required namespace object",
				"parameters": [
					{
						"name": "moduleName",
						"type": "String",
						"usage": "required",
						"summary": "module name to load, using periods for separators,\ne.g. &quot;dojo.date.locale&quot;.  Module paths are de-referenced by dojo's\ninternal mapping of locations to names and are disambiguated by\nlongest prefix. See <code>dojo.registerModulePath()<\/code> for details on\nregistering new modules."
					},
					{
						"name": "omitModuleCheck",
						"type": "Boolean",
						"usage": "optional",
						"summary": "if <code>true<\/code>, omitModuleCheck skips the step of ensuring that the\nloaded file actually defines the symbol it is referenced by.\nFor example if it called as <code>dojo.require(&quot;a.b.c&quot;)<\/code> and the\nfile located at <code>a\/b\/c.js<\/code> does not define an object <code>a.b.c<\/code>,\nand exception will be throws whereas no exception is raised\nwhen called as <code>dojo.require(&quot;a.b.c&quot;, true)<\/code>"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js",
					"dojo\/_base\/_loader\/loader_debug.js"
				],
				"provides": [
					"dojo._base._loader.loader_debug"
				],
				"name": "provide",
				"scope": "normal",
				"summary": "Register a resource with the package system. Works in conjunction with <code>dojo.require<\/code>",
				"description": "Each javascript source file is called a resource.  When a\nresource is loaded by the browser, `dojo.provide()` registers\nthat it has been loaded.\n\nEach javascript source file must have at least one\n`dojo.provide()` call at the top of the file, corresponding to\nthe file name.  For example, `js\/dojo\/foo.js` must have\n`dojo.provide(\"dojo.foo\");` before any calls to\n`dojo.require()` are made.\n\nFor backwards compatibility reasons, in addition to registering\nthe resource, `dojo.provide()` also ensures that the javascript\nobject for the module exists.  For example,\n`dojo.provide(\"dojox.data.FlickrStore\")`, in addition to\nregistering that `FlickrStore.js` is a resource for the\n`dojox.data` module, will ensure that the `dojox.data`\njavascript object exists, so that calls like\n`dojo.data.foo = function(){ ... }` don't fail.\n\nIn the case of a build where multiple javascript source files\nare combined into one bigger file (similar to a .lib or .jar\nfile), that file may contain multiple dojo.provide() calls, to\nnote that it includes multiple resources.",
				"examples": {
					"example": "Safely create a `my` object, and make dojo.require(\"my.CustomModule\") work\n\tdojo.provide(\"my.CustomModule\");"
				},
				"parameters": [
					{
						"name": "resourceName",
						"type": "String",
						"usage": "required",
						"summary": "A dot-sperated string identifying a resource."
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "platformRequire",
				"scope": "normal",
				"summary": "require one or more modules based on which host environment\nDojo is currently operating in",
				"description": "This method takes a \"map\" of arrays which one can use to\noptionally load dojo modules. The map is indexed by the\npossible dojo.name_ values, with two additional values:\n\"default\" and \"common\". The items in the \"default\" array will\nbe loaded if none of the other items have been choosen based on\ndojo.name_, set by your host environment. The items in the\n\"common\" array will *always* be loaded, regardless of which\nlist is chosen.",
				"examples": {
					"example": "\tdojo.platformRequire({\n\t\tbrowser: [\n\t\t\t\"foo.sample\", \/\/ simple module\n\t\t\t\"foo.test\",\n\t\t\t[\"foo.bar.baz\", true] \/\/ skip object check in _loadModule (dojo.require)\n\t\t],\n\t\tdefault: [ \"foo.sample._base\" ],\n\t\tcommon: [ \"important.module.common\" ]\n\t});"
				},
				"parameters": [
					{
						"name": "modMap",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "requireIf",
				"scope": "normal",
				"summary": "If the condition is true then call <code>dojo.require()<\/code> for the specified\nresource",
				"examples": {
					"example": "\tdojo.requireIf(dojo.isBrowser, \"my.special.Module\");"
				},
				"parameters": [
					{
						"name": "condition",
						"type": "Boolean",
						"usage": "required"
					},
					{
						"name": "resourceName",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "registerModulePath",
				"scope": "normal",
				"summary": "Maps a module name to a path",
				"description": "An unregistered module is given the default path of ..\/[module],\nrelative to Dojo root. For example, module acme is mapped to\n..\/acme.  If you want to use a different module name, use\ndojo.registerModulePath.",
				"examples": {
					"example": "If your dojo.js is located at this location in the web root:\n\t\/myapp\/js\/dojo\/dojo\/dojo.js\nand your modules are located at:\n\t\/myapp\/js\/foo\/bar.js\n\t\/myapp\/js\/foo\/baz.js\n\t\/myapp\/js\/foo\/thud\/xyzzy.js\nYour application can tell Dojo to locate the \"foo\" namespace by calling:\n\tdojo.registerModulePath(\"foo\", \"..\/..\/foo\");\nAt which point you can then use dojo.require() to load the\nmodules (assuming they provide() the same things which are\nrequired). The full code might be:\n\t<script type=\"text\/javascript\"\n\t\tsrc=\"\/myapp\/js\/dojo\/dojo\/dojo.js\"><\/script>\n\t<script type=\"text\/javascript\">\n\t\tdojo.registerModulePath(\"foo\", \"..\/..\/foo\");\n\t\tdojo.require(\"foo.bar\");\n\t\tdojo.require(\"foo.baz\");\n\t\tdojo.require(\"foo.thud.xyzzy\");\n\t<\/script>"
				},
				"parameters": [
					{
						"name": "module",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "prefix",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js",
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "requireLocalization",
				"scope": "normal",
				"summary": "loads a bundle intelligently based on whether the module is\nlocal or xd. Overrides the local-case implementation.",
				"description": "Load translated resource bundles provided underneath the \"nls\"\ndirectory within a package.  Translated resources may be located in\ndifferent packages throughout the source tree.\n\nEach directory is named for a locale as specified by RFC 3066,\n(http:\/\/www.ietf.org\/rfc\/rfc3066.txt), normalized in lowercase.\nNote that the two bundles in the example do not define all the\nsame variants.  For a given locale, bundles will be loaded for\nthat locale and all more general locales above it, including a\nfallback at the root directory.  For example, a declaration for\nthe \"de-at\" locale will first load `nls\/de-at\/bundleone.js`,\nthen `nls\/de\/bundleone.js` and finally `nls\/bundleone.js`.  The\ndata will be flattened into a single Object so that lookups\nwill follow this cascading pattern.  An optional build step can\npreload the bundles to avoid data redundancy and the multiple\nnetwork hits normally required to load these resources.",
				"examples": {
					"example": "A particular widget may define one or more resource bundles,\nstructured in a program as follows, where moduleName is\nmycode.mywidget and bundleNames available include bundleone and\nbundletwo:\n\t\t...\n\tmycode\/\n\t\tmywidget\/\n\t\t\tnls\/\n\t\t\t\tbundleone.js (the fallback translation, English in this example)\n\t\t\t\tbundletwo.js (also a fallback translation)\n\t\t\t\tde\/\n\t\t\t\t\tbundleone.js\n\t\t\t\t\tbundletwo.js\n\t\t\t\tde-at\/\n\t\t\t\t\tbundleone.js\n\t\t\t\ten\/\n\t\t\t\t\t(empty; use the fallback translation)\n\t\t\t\ten-us\/\n\t\t\t\t\tbundleone.js\n\t\t\t\ten-gb\/\n\t\t\t\t\tbundleone.js\n\t\t\t\tes\/\n\t\t\t\t\tbundleone.js\n\t\t\t\t\tbundletwo.js\n\t\t\t\t  ...etc\n\t\t\t\t..."
				},
				"parameters": [
					{
						"name": "moduleName",
						"type": "String",
						"usage": "required",
						"summary": "name of the package containing the &quot;nls&quot; directory in which the\nbundle is found"
					},
					{
						"name": "bundleName",
						"type": "String",
						"usage": "required",
						"summary": "bundle name, i.e. the filename without the '.js' suffix. Using &quot;nls&quot; as a\na bundle name is not supported, since &quot;nls&quot; is the name of the folder\nthat holds bundles. Using &quot;nls&quot; as the bundle name will cause problems\nwith the custom build."
					},
					{
						"name": "locale",
						"type": "String",
						"usage": "optional",
						"summary": "the locale to load (optional)  By default, the browser's user\nlocale as defined by dojo.locale"
					},
					{
						"name": "availableFlatLocales",
						"type": "String",
						"usage": "optional",
						"summary": "A comma-separated list of the available, flattened locales for this\nbundle. This argument should only be set by the build process."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader.js"
				],
				"name": "moduleUrl",
				"scope": "normal",
				"summary": "Returns a <code>dojo._Url<\/code> object relative to a module.",
				"examples": [
					"\tvar pngPath = dojo.moduleUrl(\"acme\",\"images\/small.png\");\n\tconsole.dir(pngPath); \/\/ list the object properties\n\t\/\/ create an image and set it's source to pngPath's value:\n\tvar img = document.createElement(\"img\");\n\t\/\/ NOTE: we assign the string representation of the url object\n\timg.src = pngPath.toString();\n\t\/\/ add our image to the document\n\tdojo.body().appendChild(img);",
					"you may de-reference as far as you like down the package\nhierarchy.  This is sometimes handy to avoid lenghty relative\nurls or for building portable sub-packages. In this example,\nthe `acme.widget` and `acme.util` directories may be located\nunder different roots (see `dojo.registerModulePath`) but the\nthe modules which reference them can be unaware of their\nrelative locations on the filesystem:\n\t\/\/ somewhere in a configuration block\n\tdojo.registerModulePath(\"acme.widget\", \"..\/..\/acme\/widget\");\n\tdojo.registerModulePath(\"acme.util\", \"..\/..\/util\");\n\n\t\/\/ ...\n\n\t\/\/ code in a module using acme resources\n\tvar tmpltPath = dojo.moduleUrl(\"acme.widget\",\"templates\/template.html\");\n\tvar dataPath = dojo.moduleUrl(\"acme.util\",\"resources\/data.json\");"
				],
				"parameters": [
					{
						"name": "module",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "url",
						"type": "dojo._Url||String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo._Url"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_debug.js"
				],
				"provides": [
					"dojo._base._loader.loader_debug"
				],
				"name": "_xdDebugFileLoaded",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "resourceName",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdReset",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function. Resets the xd state."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdClearInterval",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function.\nClears the interval timer used to check on the\nstatus of in-flight xd module resource requests."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdCreateResource",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function. Creates an xd module source given an\nnon-xd module contents.",
				"parameters": [
					{
						"name": "contents",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "resourceName",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "resourcePath",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdExtractLoadInits",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "fileContents",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdIsXDomainPath",
				"scope": "normal",
				"private": true,
				"summary": "Figure out whether the path is local or x-domain\nIf there is a colon before the first \/ then, we have a URL with a protocol.",
				"parameters": [
					{
						"name": "relpath",
						"type": "string",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdResourceLoaded",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function. Called by an xd module resource when\nit has been loaded via a script tag.",
				"parameters": [
					{
						"name": "res",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdLoadFlattenedBundle",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function. Used when loading\na flattened localized bundle via a script tag.",
				"parameters": [
					{
						"name": "moduleName",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "bundleName",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "locale",
						"type": "String",
						"usage": "optional"
					},
					{
						"name": "bundleData",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdInitExtraLocales",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "xdRequireLocalization",
				"scope": "normal",
				"summary": "Internal xd loader function. The xd version of dojo.requireLocalization.",
				"parameters": [
					{
						"name": "m",
						"type": null,
						"usage": "required"
					},
					{
						"name": "b",
						"type": null,
						"usage": "required"
					},
					{
						"name": "locale",
						"type": "String",
						"usage": "optional"
					},
					{
						"name": "fLocales",
						"type": null,
						"usage": "required"
					},
					{
						"name": "moduleName",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "bundleName",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "availableFlatLocales",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdUnpackDependency",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function. Determines what to do with a dependency\nthat was listed in an xd version of a module contents.",
				"parameters": [
					{
						"name": "dep",
						"type": "Array",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdWalkReqs",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function.\nWalks the requires and evaluates module resource contents in\nthe right order."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdEvalReqs",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function.\nDoes a depth first, breadth second search and eval of required modules.",
				"parameters": [
					{
						"name": "reqChain",
						"type": "Array",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdWatchInFlight",
				"scope": "normal",
				"private": true,
				"summary": "Internal xd loader function.\nMonitors in-flight requests for xd module resources."
			},
			{
				"resources": [
					"dojo\/_base\/_loader\/loader_xd.js"
				],
				"provides": [
					"dojo._base._loader.loader_xd"
				],
				"name": "_xdNotifyLoaded",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/array.js"
				],
				"provides": [
					"dojo._base.array"
				],
				"name": "indexOf",
				"scope": "normal",
				"summary": "locates the first index of the provided value in the\npassed array. If the value is not found, -1 is returned.",
				"description": "This method corresponds to the JavaScript 1.6 Array.indexOf method, with one difference: when\nrun over sparse arrays, the Dojo function invokes the callback for every index whereas JavaScript\n1.6's indexOf skips the holes in the sparse array.\nFor details on this method, see:\nhttps:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Objects\/Array\/indexOf",
				"parameters": [
					{
						"name": "array",
						"type": "Array",
						"usage": "required"
					},
					{
						"name": "value",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "fromIndex",
						"type": "Integer",
						"usage": "optional"
					},
					{
						"name": "findLast",
						"type": "Boolean",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "Number"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/array.js"
				],
				"provides": [
					"dojo._base.array"
				],
				"name": "lastIndexOf",
				"scope": "normal",
				"summary": "locates the last index of the provided value in the passed\narray. If the value is not found, -1 is returned.",
				"description": "This method corresponds to the JavaScript 1.6 Array.lastIndexOf method, with one difference: when\nrun over sparse arrays, the Dojo function invokes the callback for every index whereas JavaScript\n1.6's lastIndexOf skips the holes in the sparse array.\nFor details on this method, see:\nhttps:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Objects\/Array\/lastIndexOf",
				"parameters": [
					{
						"name": "array",
						"type": "Array",
						"usage": "required"
					},
					{
						"name": "value",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "fromIndex",
						"type": "Integer",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "Number"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/array.js",
					"dojox\/lang\/async.js"
				],
				"provides": [
					"dojo._base.array",
					"dojox.lang.async"
				],
				"name": "forEach",
				"scope": "normal",
				"summary": "for every item in arr, callback is invoked. Return values are ignored.\nIf you want to break out of the loop, consider using dojo.every() or dojo.some().\nforEach does not allow breaking out of the loop over the items in arr.",
				"description": "This function corresponds to the JavaScript 1.6 Array.forEach() method, with one difference: when\nrun over sparse arrays, this implemenation passes the \"holes\" in the sparse array to\nthe callback function with a value of undefined. JavaScript 1.6's forEach skips the holes in the sparse array.\nFor more details, see:\nhttps:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Objects\/Array\/forEach",
				"examples": [
					"\t\/\/ log out all members of the array:\n\tdojo.forEach(\n\t\t[ \"thinger\", \"blah\", \"howdy\", 10 ],\n\t\tfunction(item){\n\t\t\tconsole.log(item);\n\t\t}\n\t);",
					"\t\/\/ log out the members and their indexes\n\tdojo.forEach(\n\t\t[ \"thinger\", \"blah\", \"howdy\", 10 ],\n\t\tfunction(item, idx, arr){\n\t\t\tconsole.log(item, \"at index:\", idx);\n\t\t}\n\t);",
					"\t\/\/ use a scoped object member as the callback\n\n\tvar obj = {\n\t\tprefix: \"logged via obj.callback:\",\n\t\tcallback: function(item){\n\t\t\tconsole.log(this.prefix, item);\n\t\t}\n\t};\n\n\t\/\/ specifying the scope function executes the callback in that scope\n\tdojo.forEach(\n\t\t[ \"thinger\", \"blah\", \"howdy\", 10 ],\n\t\tobj.callback,\n\t\tobj\n\t);\n\n\t\/\/ alternately, we can accomplish the same thing with dojo.hitch()\n\tdojo.forEach(\n\t\t[ \"thinger\", \"blah\", \"howdy\", 10 ],\n\t\tdojo.hitch(obj, \"callback\")\n\t);"
				],
				"parameters": [
					{
						"name": "arr",
						"type": "Array|String",
						"usage": "required",
						"summary": "the array to iterate over. If a string, operates on individual characters."
					},
					{
						"name": "callback",
						"type": "Function|String",
						"usage": "required",
						"summary": "a function is invoked with three arguments: item, index, and array"
					},
					{
						"name": "thisObject",
						"type": "Object",
						"usage": "optional",
						"summary": "may be used to scope the call to callback"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/array.js"
				],
				"provides": [
					"dojo._base.array"
				],
				"name": "every",
				"scope": "normal",
				"summary": "Determines whether or not every item in arr satisfies the\ncondition implemented by callback.",
				"description": "This function corresponds to the JavaScript 1.6 Array.every() method, with one difference: when\nrun over sparse arrays, this implemenation passes the \"holes\" in the sparse array to\nthe callback function with a value of undefined. JavaScript 1.6's every skips the holes in the sparse array.\nFor more details, see:\nhttps:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Objects\/Array\/every",
				"examples": [
					"\t\/\/ returns false\n\tdojo.every([1, 2, 3, 4], function(item){ return item>1; });",
					"\t\/\/ returns true\n\tdojo.every([1, 2, 3, 4], function(item){ return item>0; });"
				],
				"parameters": [
					{
						"name": "arr",
						"type": "Array|String",
						"usage": "required",
						"summary": "the array to iterate on. If a string, operates on individual characters."
					},
					{
						"name": "callback",
						"type": "Function|String",
						"usage": "required",
						"summary": "a function is invoked with three arguments: item, index,\nand array and returns true if the condition is met."
					},
					{
						"name": "thisObject",
						"type": "Object",
						"usage": "optional",
						"summary": "may be used to scope the call to callback"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/array.js",
					"dojox\/lang\/async.js"
				],
				"provides": [
					"dojo._base.array",
					"dojox.lang.async"
				],
				"name": "some",
				"scope": "normal",
				"summary": "Determines whether or not any item in arr satisfies the\ncondition implemented by callback.",
				"description": "This function corresponds to the JavaScript 1.6 Array.some() method, with one difference: when\nrun over sparse arrays, this implemenation passes the \"holes\" in the sparse array to\nthe callback function with a value of undefined. JavaScript 1.6's some skips the holes in the sparse array.\nFor more details, see:\nhttps:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Objects\/Array\/some",
				"examples": [
					"\t\/\/ is true\n\tdojo.some([1, 2, 3, 4], function(item){ return item>1; });",
					"\t\/\/ is false\n\tdojo.some([1, 2, 3, 4], function(item){ return item<1; });"
				],
				"parameters": [
					{
						"name": "arr",
						"type": "Array|String",
						"usage": "required",
						"summary": "the array to iterate over. If a string, operates on individual characters."
					},
					{
						"name": "callback",
						"type": "Function|String",
						"usage": "required",
						"summary": "a function is invoked with three arguments: item, index,\nand array and returns true if the condition is met."
					},
					{
						"name": "thisObject",
						"type": "Object",
						"usage": "optional",
						"summary": "may be used to scope the call to callback"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/array.js"
				],
				"provides": [
					"dojo._base.array"
				],
				"name": "map",
				"scope": "normal",
				"summary": "applies callback to each element of arr and returns\nan Array with the results",
				"description": "This function corresponds to the JavaScript 1.6 Array.map() method, with one difference: when\nrun over sparse arrays, this implemenation passes the \"holes\" in the sparse array to\nthe callback function with a value of undefined. JavaScript 1.6's map skips the holes in the sparse array.\nFor more details, see:\nhttps:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Objects\/Array\/map",
				"examples": {
					"example": "\t\/\/ returns [2, 3, 4, 5]\n\tdojo.map([1, 2, 3, 4], function(item){ return item+1 });"
				},
				"parameters": [
					{
						"name": "arr",
						"type": "Array|String",
						"usage": "required",
						"summary": "the array to iterate on. If a string, operates on\nindividual characters."
					},
					{
						"name": "callback",
						"type": "Function|String",
						"usage": "required",
						"summary": "a function is invoked with three arguments, (item, index,\narray),  and returns a value"
					},
					{
						"name": "thisObject",
						"type": "Function",
						"usage": "optional",
						"summary": "may be used to scope the call to callback"
					}
				],
				"return-types": [
					{
						"type": "Array"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/array.js"
				],
				"provides": [
					"dojo._base.array"
				],
				"name": "filter",
				"scope": "normal",
				"summary": "Returns a new Array with those items from arr that match the\ncondition implemented by callback.",
				"description": "This function corresponds to the JavaScript 1.6 Array.filter() method, with one difference: when\nrun over sparse arrays, this implemenation passes the \"holes\" in the sparse array to\nthe callback function with a value of undefined. JavaScript 1.6's filter skips the holes in the sparse array.\nFor more details, see:\nhttps:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Objects\/Array\/filter",
				"examples": {
					"example": "\t\/\/ returns [2, 3, 4]\n\tdojo.filter([1, 2, 3, 4], function(item){ return item>1; });"
				},
				"parameters": [
					{
						"name": "arr",
						"type": "Array",
						"usage": "required",
						"summary": "the array to iterate over."
					},
					{
						"name": "callback",
						"type": "Function|String",
						"usage": "required",
						"summary": "a function that is invoked with three arguments (item,\nindex, array). The return of this function is expected to\nbe a boolean which determines whether the passed-in item\nwill be included in the returned array."
					},
					{
						"name": "thisObject",
						"type": "Object",
						"usage": "optional",
						"summary": "may be used to scope the call to callback"
					}
				],
				"return-types": [
					{
						"type": "Array"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/connect.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo._base.connect",
					"dojox.mobile.scrollable"
				],
				"name": "connect",
				"scope": "normal",
				"summary": "<code>dojo.connect<\/code> is the core event handling and delegation method in\nDojo. It allows one function to &quot;listen in&quot; on the execution of\nany other, triggering the second whenever the first is called. Many\nlisteners may be attached to a function, and source functions may\nbe either regular function calls or DOM events.",
				"description": "Connects listeners to actions, so that after event fires, a\nlistener is called with the same arguments passed to the original\nfunction.\n\nSince `dojo.connect` allows the source of events to be either a\n\"regular\" JavaScript function or a DOM event, it provides a uniform\ninterface for listening to all the types of events that an\napplication is likely to deal with though a single, unified\ninterface. DOM programmers may want to think of it as\n\"addEventListener for everything and anything\".\n\nWhen setting up a connection, the `event` parameter must be a\nstring that is the name of the method\/event to be listened for. If\n`obj` is null, `dojo.global` is assumed, meaning that connections\nto global methods are supported but also that you may inadvertently\nconnect to a global by passing an incorrect object name or invalid\nreference.\n\n`dojo.connect` generally is forgiving. If you pass the name of a\nfunction or method that does not yet exist on `obj`, connect will\nnot fail, but will instead set up a stub method. Similarly, null\narguments may simply be omitted such that fewer than 4 arguments\nmay be required to set up a connection See the examples for details.\n\nThe return value is a handle that is needed to\nremove this connection with `dojo.disconnect`.",
				"examples": [
					"When obj.onchange(), do ui.update():\n\tdojo.connect(obj, \"onchange\", ui, \"update\");\n\tdojo.connect(obj, \"onchange\", ui, ui.update); \/\/ same",
					"Using return value for disconnect:\n\tvar link = dojo.connect(obj, \"onchange\", ui, \"update\");\n\t...\n\tdojo.disconnect(link);",
					"When onglobalevent executes, watcher.handler is invoked:\n\tdojo.connect(null, \"onglobalevent\", watcher, \"handler\");",
					"When ob.onCustomEvent executes, customEventHandler is invoked:\n\tdojo.connect(ob, \"onCustomEvent\", null, \"customEventHandler\");\n\tdojo.connect(ob, \"onCustomEvent\", \"customEventHandler\"); \/\/ same",
					"When ob.onCustomEvent executes, customEventHandler is invoked\nwith the same scope (this):\n\tdojo.connect(ob, \"onCustomEvent\", null, customEventHandler);\n\tdojo.connect(ob, \"onCustomEvent\", customEventHandler); \/\/ same",
					"When globalEvent executes, globalHandler is invoked\nwith the same scope (this):\n\tdojo.connect(null, \"globalEvent\", null, globalHandler);\n\tdojo.connect(\"globalEvent\", globalHandler); \/\/ same"
				],
				"parameters": [
					{
						"name": "obj",
						"type": "Object|null",
						"usage": "required",
						"summary": "The source object for the event function.\nDefaults to <code>dojo.global<\/code> if null.\nIf obj is a DOM node, the connection is delegated\nto the DOM event manager (unless dontFix is true)."
					},
					{
						"name": "event",
						"type": "String",
						"usage": "required",
						"summary": "name of the event function in obj.\nI.e. identifies a property <code>obj[event]<\/code>."
					},
					{
						"name": "context",
						"type": "Object|null",
						"usage": "required",
						"summary": "The object that method will receive as &quot;this&quot;.\n\nIf context is null and method is a function, then method\ninherits the context of event.\n\nIf method is a string then context must be the source\nobject object for method (context[method]). If context is null,\ndojo.global is used."
					},
					{
						"name": "method",
						"type": "String|Function",
						"usage": "required",
						"summary": "A function reference, or name of a function in context.\nThe function identified by method fires after event does.\nmethod receives the same arguments as the event.\nSee context argument comments for information on method's scope."
					},
					{
						"name": "dontFix",
						"type": "Boolean",
						"usage": "optional",
						"summary": "If obj is a DOM node, set dontFix to true to prevent delegation\nof this connection to the DOM event manager."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/connect.js",
					"dojo\/_base\/event.js",
					"dojox\/mobile\/app\/_event.js"
				],
				"provides": [
					"dojo._base.connect",
					"dojo._base.event",
					"dojox.mobile.app._event"
				],
				"name": "_connect",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "obj",
						"type": null,
						"usage": "required"
					},
					{
						"name": "event",
						"type": null,
						"usage": "required"
					},
					{
						"name": "context",
						"type": null,
						"usage": "required"
					},
					{
						"name": "method",
						"type": null,
						"usage": "required"
					},
					{
						"name": "dontFix",
						"type": null,
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Handle"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/connect.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo._base.connect",
					"dojox.mobile.scrollable"
				],
				"name": "disconnect",
				"scope": "normal",
				"summary": "Remove a link created by dojo.connect.",
				"description": "Removes the connection between event and the method referenced by handle.",
				"parameters": [
					{
						"name": "handle",
						"type": "Handle",
						"usage": "required",
						"summary": "the return value of the dojo.connect call that created the connection."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/connect.js",
					"dojo\/_base\/event.js"
				],
				"provides": [
					"dojo._base.connect",
					"dojo._base.event"
				],
				"name": "_disconnect",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "obj",
						"type": null,
						"usage": "required"
					},
					{
						"name": "event",
						"type": null,
						"usage": "required"
					},
					{
						"name": "handle",
						"type": null,
						"usage": "required"
					},
					{
						"name": "listener",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/connect.js"
				],
				"provides": [
					"dojo._base.connect"
				],
				"name": "connectPublisher",
				"scope": "normal",
				"summary": "Ensure that every time obj.event() is called, a message is published\non the topic. Returns a handle which can be passed to\ndojo.disconnect() to disable subsequent automatic publication on\nthe topic.",
				"examples": {
					"example": "\tdojo.connectPublisher(\"\/ajax\/start\", dojo, \"xhrGet\");"
				},
				"parameters": [
					{
						"name": "topic",
						"type": "String",
						"usage": "required",
						"summary": "The name of the topic to publish."
					},
					{
						"name": "obj",
						"type": "Object|null",
						"usage": "required",
						"summary": "The source object for the event function. Defaults to dojo.global\nif null."
					},
					{
						"name": "event",
						"type": "String",
						"usage": "required",
						"summary": "The name of the event function in obj.\nI.e. identifies a property obj[event]."
					}
				],
				"return-types": [
					{
						"type": "Handle"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/declare.js",
					"dojox\/lang\/docs.js",
					"dojox\/lang\/typed.js"
				],
				"provides": [
					"dojo._base.declare",
					"dojox.lang.docs",
					"dojox.lang.typed"
				],
				"name": "declare",
				"scope": "normal",
				"summary": "Create a feature-rich constructor from compact notation.",
				"description": "Create a constructor using a compact notation for inheritance and\nprototype extension.\n\nMixin ancestors provide a type of multiple inheritance.\nPrototypes of mixin ancestors are copied to the new class:\nchanges to mixin prototypes will not affect classes to which\nthey have been mixed in.\n\nAncestors can be compound classes created by this version of\ndojo.declare. In complex cases all base classes are going to be\nlinearized according to C3 MRO algorithm\n(see http:\/\/www.python.org\/download\/releases\/2.3\/mro\/ for more\ndetails).\n\n\"className\" is cached in \"declaredClass\" property of the new class,\nif it was supplied. The immediate super class will be cached in\n\"superclass\" property of the new class.\n\nMethods in \"props\" will be copied and modified: \"nom\" property\n(the declared name of the method) will be added to all copied\nfunctions to help identify them for the internal machinery. Be\nvery careful, while reusing methods: if you use the same\nfunction under different names, it can produce errors in some\ncases.\n\nIt is possible to use constructors created \"manually\" (without\ndojo.declare) as bases. They will be called as usual during the\ncreation of an instance, their methods will be chained, and even\ncalled by \"this.inherited()\".\n\nSpecial property \"-chains-\" governs how to chain methods. It is\na dictionary, which uses method names as keys, and hint strings\nas values. If a hint string is \"after\", this method will be\ncalled after methods of its base classes. If a hint string is\n\"before\", this method will be called before methods of its base\nclasses.\n\nIf \"constructor\" is not mentioned in \"-chains-\" property, it will\nbe chained using the legacy mode: using \"after\" chaining,\ncalling preamble() method before each constructor, if available,\nand calling postscript() after all constructors were executed.\nIf the hint is \"after\", it is chained as a regular method, but\npostscript() will be called after the chain of constructors.\n\"constructor\" cannot be chained \"before\", but it allows\na special hint string: \"manual\", which means that constructors\nare not going to be chained in any way, and programmer will call\nthem manually using this.inherited(). In the latter case\npostscript() will be called after the construction.\n\nAll chaining hints are \"inherited\" from base classes and\npotentially can be overridden. Be very careful when overriding\nhints! Make sure that all chained methods can work in a proposed\nmanner of chaining.\n\nOnce a method was chained, it is impossible to unchain it. The\nonly exception is \"constructor\". You don't need to define a\nmethod in order to supply a chaining hint.\n\nIf a method is chained, it cannot use this.inherited() because\nall other methods in the hierarchy will be called automatically.\n\nUsually constructors and initializers of any kind are chained\nusing \"after\" and destructors of any kind are chained as\n\"before\". Note that chaining assumes that chained methods do not\nreturn any value: any returned value will be discarded.",
				"examples": [
					"\tdojo.declare(\"my.classes.bar\", my.classes.foo, {\n\t\t\/\/ properties to be added to the class prototype\n\t\tsomeValue: 2,\n\t\t\/\/ initialization function\n\t\tconstructor: function(){\n\t\t\tthis.myComplicatedObject = new ReallyComplicatedObject();\n\t\t},\n\t\t\/\/ other functions\n\t\tsomeMethod: function(){\n\t\t\tdoStuff();\n\t\t}\n\t});",
					"\tvar MyBase = dojo.declare(null, {\n\t\t\/\/ constructor, properties, and methods go here\n\t\t\/\/ ...\n\t});\n\tvar MyClass1 = dojo.declare(MyBase, {\n\t\t\/\/ constructor, properties, and methods go here\n\t\t\/\/ ...\n\t});\n\tvar MyClass2 = dojo.declare(MyBase, {\n\t\t\/\/ constructor, properties, and methods go here\n\t\t\/\/ ...\n\t});\n\tvar MyDiamond = dojo.declare([MyClass1, MyClass2], {\n\t\t\/\/ constructor, properties, and methods go here\n\t\t\/\/ ...\n\t});",
					"\tvar F = function(){ console.log(\"raw constructor\"); };\n\tF.prototype.method = function(){\n\t\tconsole.log(\"raw method\");\n\t};\n\tvar A = dojo.declare(F, {\n\t\tconstructor: function(){\n\t\t\tconsole.log(\"A.constructor\");\n\t\t},\n\t\tmethod: function(){\n\t\t\tconsole.log(\"before calling F.method...\");\n\t\t\tthis.inherited(arguments);\n\t\t\tconsole.log(\"...back in A\");\n\t\t}\n\t});\n\tnew A().method();\n\t\/\/ will print:\n\t\/\/ raw constructor\n\t\/\/ A.constructor\n\t\/\/ before calling F.method...\n\t\/\/ raw method\n\t\/\/ ...back in A",
					"\tvar A = dojo.declare(null, {\n\t\t\"-chains-\": {\n\t\t\tdestroy: \"before\"\n\t\t}\n\t});\n\tvar B = dojo.declare(A, {\n\t\tconstructor: function(){\n\t\t\tconsole.log(\"B.constructor\");\n\t\t},\n\t\tdestroy: function(){\n\t\t\tconsole.log(\"B.destroy\");\n\t\t}\n\t});\n\tvar C = dojo.declare(B, {\n\t\tconstructor: function(){\n\t\t\tconsole.log(\"C.constructor\");\n\t\t},\n\t\tdestroy: function(){\n\t\t\tconsole.log(\"C.destroy\");\n\t\t}\n\t});\n\tnew C().destroy();\n\t\/\/ prints:\n\t\/\/ B.constructor\n\t\/\/ C.constructor\n\t\/\/ C.destroy\n\t\/\/ B.destroy",
					"\tvar A = dojo.declare(null, {\n\t\t\"-chains-\": {\n\t\t\tconstructor: \"manual\"\n\t\t}\n\t});\n\tvar B = dojo.declare(A, {\n\t\tconstructor: function(){\n\t\t\t\/\/ ...\n\t\t\t\/\/ call the base constructor with new parameters\n\t\t\tthis.inherited(arguments, [1, 2, 3]);\n\t\t\t\/\/ ...\n\t\t}\n\t});",
					"\tvar A = dojo.declare(null, {\n\t\t\"-chains-\": {\n\t\t\tm1: \"before\"\n\t\t},\n\t\tm1: function(){\n\t\t\tconsole.log(\"A.m1\");\n\t\t},\n\t\tm2: function(){\n\t\t\tconsole.log(\"A.m2\");\n\t\t}\n\t});\n\tvar B = dojo.declare(A, {\n\t\t\"-chains-\": {\n\t\t\tm2: \"after\"\n\t\t},\n\t\tm1: function(){\n\t\t\tconsole.log(\"B.m1\");\n\t\t},\n\t\tm2: function(){\n\t\t\tconsole.log(\"B.m2\");\n\t\t}\n\t});\n\tvar x = new B();\n\tx.m1();\n\t\/\/ prints:\n\t\/\/ B.m1\n\t\/\/ A.m1\n\tx.m2();\n\t\/\/ prints:\n\t\/\/ A.m2\n\t\/\/ B.m2"
				],
				"return-description": "New constructor function.",
				"parameters": [
					{
						"name": "className",
						"type": "String:",
						"usage": "optional",
						"summary": "The optional name of the constructor (loosely, a &quot;class&quot;)\nstored in the &quot;declaredClass&quot; property in the created prototype.\nIt will be used as a global name for a created constructor."
					},
					{
						"name": "superclass",
						"type": "Function|Function[]:",
						"usage": "required",
						"summary": "May be null, a Function, or an Array of Functions. This argument\nspecifies a list of bases (the left-most one is the most deepest\nbase)."
					},
					{
						"name": "props",
						"type": "Object:",
						"usage": "required",
						"summary": "An object whose properties are copied to the created prototype.\nAdd an instance-initialization function by making it a property\nnamed &quot;constructor&quot;."
					}
				],
				"return-types": [
					{
						"type": "Function"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/declare.js"
				],
				"provides": [
					"dojo._base.declare"
				],
				"name": "safeMixin",
				"scope": "normal",
				"summary": "Mix in properties skipping a constructor and decorating functions\nlike it is done by dojo.declare.",
				"description": "This function is used to mix in properties like dojo._mixin does,\nbut it skips a constructor property and decorates functions like\ndojo.declare does.\n\nIt is meant to be used with classes and objects produced with\ndojo.declare. Functions mixed in with dojo.safeMixin can use\nthis.inherited() like normal methods.\n\nThis function is used to implement extend() method of a constructor\nproduced with dojo.declare().",
				"examples": {
					"example": "\tvar A = dojo.declare(null, {\n\t\tm1: function(){\n\t\t\tconsole.log(\"A.m1\");\n\t\t},\n\t\tm2: function(){\n\t\t\tconsole.log(\"A.m2\");\n\t\t}\n\t});\n\tvar B = dojo.declare(A, {\n\t\tm1: function(){\n\t\t\tthis.inherited(arguments);\n\t\t\tconsole.log(\"B.m1\");\n\t\t}\n\t});\n\tB.extend({\n\t\tm2: function(){\n\t\t\tthis.inherited(arguments);\n\t\t\tconsole.log(\"B.m2\");\n\t\t}\n\t});\n\tvar x = new B();\n\tdojo.safeMixin(x, {\n\t\tm1: function(){\n\t\t\tthis.inherited(arguments);\n\t\t\tconsole.log(\"X.m1\");\n\t\t},\n\t\tm2: function(){\n\t\t\tthis.inherited(arguments);\n\t\t\tconsole.log(\"X.m2\");\n\t\t}\n\t});\n\tx.m2();\n\t\/\/ prints:\n\t\/\/ A.m1\n\t\/\/ B.m1\n\t\/\/ X.m1"
				},
				"parameters": [
					{
						"name": "target",
						"type": "Object",
						"usage": "required",
						"summary": "Target object to accept new properties."
					},
					{
						"name": "source",
						"type": "Object",
						"usage": "required",
						"summary": "Source object for new properties."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/event.js"
				],
				"provides": [
					"dojo._base.event"
				],
				"name": "fixEvent",
				"scope": "normal",
				"summary": "normalizes properties on the event object including event\nbubbling methods, keystroke normalization, and x\/y positions",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required",
						"summary": "native event object"
					},
					{
						"name": "sender",
						"type": "DOMNode",
						"usage": "required",
						"summary": "node to treat as &quot;currentTarget&quot;"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/event.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo._base.event",
					"dojox.mobile.scrollable"
				],
				"name": "stopEvent",
				"scope": "normal",
				"summary": "prevents propagation and clobbers the default action of the\npassed event",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required",
						"summary": "The event object. If omitted, window.event is used on IE."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/event.js",
					"dojox\/grid\/_Grid.js"
				],
				"provides": [
					"dojo._base.event",
					"dojox.grid._Grid"
				],
				"name": "isCopyKey",
				"scope": "normal",
				"summary": "Checks an event for the copy key (meta on Mac, and ctrl anywhere else)",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required",
						"summary": "Event object to examine"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/event.js"
				],
				"provides": [
					"dojo._base.event"
				],
				"name": "_ieDispatcher",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "args",
						"type": null,
						"usage": "required"
					},
					{
						"name": "sender",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/event.js"
				],
				"provides": [
					"dojo._base.event"
				],
				"name": "_getIeDispatcher",
				"scope": "normal",
				"private": true,
				"return-types": [
					{
						"type": "function"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/fx.js"
				],
				"provides": [
					"dojo._base.fx"
				],
				"name": "_fade",
				"scope": "normal",
				"private": true,
				"summary": "Returns an animation that will fade the node defined by\nargs.node from the start to end values passed (args.start\nargs.end) (end is mandatory, start is optional)",
				"parameters": [
					{
						"name": "args",
						"type": "Object",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Animation"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/fx.js"
				],
				"provides": [
					"dojo._base.fx"
				],
				"name": "fadeIn",
				"scope": "normal",
				"summary": "Returns an animation that will fade node defined in 'args' from\nits current opacity to fully opaque.",
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__FadeArgs",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Animation"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/fx.js"
				],
				"provides": [
					"dojo._base.fx"
				],
				"name": "fadeOut",
				"scope": "normal",
				"summary": "Returns an animation that will fade node defined in 'args'\nfrom its current opacity to fully transparent.",
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__FadeArgs",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Animation"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/fx.js"
				],
				"provides": [
					"dojo._base.fx"
				],
				"name": "_defaultEasing",
				"scope": "normal",
				"private": true,
				"summary": "The default easing function for dojo.Animation(s)",
				"parameters": [
					{
						"name": "n",
						"type": "Decimal",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/fx.js",
					"dojox\/fx\/ext-dojo\/complex.js"
				],
				"provides": [
					"dojo._base.fx",
					"dojox.fx.ext-dojo.complex"
				],
				"name": "animateProperty",
				"scope": "normal",
				"summary": "An extension of dojo.animateProperty which adds functionality\nthat animates a &quot;complex property&quot;. The primary example is the\nclip style: rect(10px 30px 10px 50px).\nNote this can also be used with (and is actually intended for)\nCSS3 properties, such as transform:\ntransform: rotate(10deg) translateX(0px)",
				"description": "The standard animation doesn't know what to do with something like\nrect(...). This class identifies complex properties by they being a\nstring and having parenthesis. If so, that property is made into a\ndojox.fx._Complex object and the getValue() is obtained from\nthere.",
				"examples": [
					"A simple animation that changes the width of the specified node.\n\tdojo.animateProperty({\n\t\tnode: \"nodeId\",\n\t\tproperties: { width: 400 },\n\t}).play();\nDojo figures out the start value for the width and converts the\ninteger specified for the width to the more expressive but\nverbose form `{ width: { end: '400', units: 'px' } }` which you\ncan also specify directly. Defaults to 'px' if ommitted.",
					"Animate width, height, and padding over 2 seconds... the\npedantic way:\n\tdojo.animateProperty({ node: node, duration:2000,\n\t\tproperties: {\n\t\t\twidth: { start: '200', end: '400', units:\"px\" },\n\t\t\theight: { start:'200', end: '400', units:\"px\" },\n\t\t\tpaddingTop: { start:'5', end:'50', units:\"px\" }\n\t\t}\n\t}).play();\nNote 'paddingTop' is used over 'padding-top'. Multi-name CSS properties\nare written using \"mixed case\", as the hyphen is illegal as an object key.",
					"Plug in a different easing function and register a callback for\nwhen the animation ends. Easing functions accept values between\nzero and one and return a value on that basis. In this case, an\nexponential-in curve.\n\tdojo.animateProperty({\n\t\tnode: \"nodeId\",\n\t\t\/\/ dojo figures out the start value\n\t\tproperties: { width: { end: 400 } },\n\t\teasing: function(n){\n\t\t\treturn (n==0) ? 0 : Math.pow(2, 10 * (n - 1));\n\t\t},\n\t\tonEnd: function(node){\n\t\t\t\/\/ called when the animation finishes. The animation\n\t\t\t\/\/ target is passed to this function\n\t\t}\n\t}).play(500); \/\/ delay playing half a second",
					"Like all `dojo.Animation`s, animateProperty returns a handle to the\nAnimation instance, which fires the events common to Dojo FX. Use `dojo.connect`\nto access these events outside of the Animation definiton:\n\tvar anim = dojo.animateProperty({\n\t\tnode:\"someId\",\n\t\tproperties:{\n\t\t\twidth:400, height:500\n\t\t}\n\t});\n\tdojo.connect(anim,\"onEnd\", function(){\n\t\tconsole.log(\"animation ended\");\n\t});\n\t\/\/ play the animation now:\n\tanim.play();",
					"Each property can be a function whose return value is substituted along.\nAdditionally, each measurement (eg: start, end) can be a function. The node\nreference is passed direcly to callbacks.\n\tdojo.animateProperty({\n\t\tnode:\"mine\",\n\t\tproperties:{\n\t\t\theight:function(node){\n\t\t\t\t\/\/ shrink this node by 50%\n\t\t\t\treturn dojo.position(node).h \/ 2\n\t\t\t},\n\t\t\twidth:{\n\t\t\t\tstart:function(node){ return 100; },\n\t\t\t\tend:function(node){ return 200; }\n\t\t\t}\n\t\t}\n\t}).play();",
					"\tvar ani = dojo.animateProperty({\n\t\tnode:dojo.byId(\"myDiv\"),\n\t\tduration:600,\n\t\tproperties:{\n\t\t\tclip:{start:'rect(0px 50px 50px 0px)', end:'rect(10px 30px 30px 10px)'}\n\t\t}\n\t}).play();"
				],
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__AnimArgs",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Animation"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/fx.js"
				],
				"provides": [
					"dojo._base.fx"
				],
				"name": "anim",
				"scope": "normal",
				"summary": "A simpler interface to <code>dojo.animateProperty()<\/code>, also returns\nan instance of <code>dojo.Animation<\/code> but begins the animation\nimmediately, unlike nearly every other Dojo animation API.",
				"description": "`dojo.anim` is a simpler (but somewhat less powerful) version\nof `dojo.animateProperty`.  It uses defaults for many basic properties\nand allows for positional parameters to be used in place of the\npacked \"property bag\" which is used for other Dojo animation\nmethods.\n\nThe `dojo.Animation` object returned from `dojo.anim` will be\nalready playing when it is returned from this function, so\ncalling play() on it again is (usually) a no-op.",
				"examples": [
					"Fade out a node\n\tdojo.anim(\"id\", { opacity: 0 });",
					"Fade out a node over a full second\n\tdojo.anim(\"id\", { opacity: 0 }, 1000);"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DOMNode|String",
						"usage": "required",
						"summary": "a DOM node or the id of a node to animate CSS properties on"
					},
					{
						"name": "properties",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "duration",
						"type": "Integer",
						"usage": "optional",
						"summary": "The number of milliseconds over which the animation\nshould run. Defaults to the global animation default duration\n(350ms)."
					},
					{
						"name": "easing",
						"type": "Function",
						"usage": "optional",
						"summary": "An easing function over which to calculate acceleration\nand deceleration of the animation through its duration.\nA default easing algorithm is provided, but you may\nplug in any you wish. A large selection of easing algorithms\nare available in <code>dojo.fx.easing<\/code>."
					},
					{
						"name": "onEnd",
						"type": "Function",
						"usage": "optional",
						"summary": "A function to be called when the animation finishes\nrunning."
					},
					{
						"name": "delay",
						"type": "Integer",
						"usage": "optional",
						"summary": "The number of milliseconds to delay beginning the\nanimation by. The default is 0."
					}
				],
				"return-types": [
					{
						"type": "dojo.Animation"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_destroyElement",
				"scope": "normal",
				"private": true,
				"summary": "Existing alias for <code>dojo.destroy<\/code>. Deprecated, will be removed\nin 2.0",
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "destroy",
				"scope": "normal",
				"summary": "Removes a node from its parent, clobbering it and all of its\nchildren.",
				"description": "Removes a node from its parent, clobbering it and all of its\nchildren. Function only works with DomNodes, and returns nothing.",
				"examples": [
					"Destroy a node byId:\n\tdojo.destroy(\"someId\");",
					"Destroy all nodes in a list by reference:\n\tdojo.query(\".someNode\").forEach(dojo.destroy);"
				],
				"parameters": [
					{
						"name": "node",
						"type": "String|DomNode",
						"usage": "required",
						"summary": "A String ID or DomNode reference of the element to be destroyed"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "isDescendant",
				"scope": "normal",
				"summary": "Returns true if node is a descendant of ancestor",
				"examples": {
					"example": "Test is node id=\"bar\" is a descendant of node id=\"foo\"\n\tif(dojo.isDescendant(\"bar\", \"foo\")){ ... }"
				},
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "string id or node reference to test"
					},
					{
						"name": "ancestor",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "string id or node reference of potential parent to test against"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "setSelectable",
				"scope": "normal",
				"summary": "Enable or disable selection on a node",
				"examples": [
					"Make the node id=\"bar\" unselectable\n\tdojo.setSelectable(\"bar\");",
					"Make the node id=\"bar\" selectable\n\tdojo.setSelectable(\"bar\", true);"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to node"
					},
					{
						"name": "selectable",
						"type": "Boolean",
						"usage": "required",
						"summary": "state to put the node in. false indicates unselectable, true\nallows selection."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js",
					"dojox\/html\/ellipsis.js"
				],
				"provides": [
					"dojo._base.html",
					"dojox.html.ellipsis"
				],
				"name": "place",
				"scope": "normal",
				"summary": "Attempt to insert node into the DOM, choosing from various positioning options.\nReturns the first argument resolved to a DOM node.",
				"examples": [
					"Place a node by string id as the last child of another node by string id:\n\tdojo.place(\"someNode\", \"anotherNode\");",
					"Place a node by string id before another node by string id\n\tdojo.place(\"someNode\", \"anotherNode\", \"before\");",
					"Create a Node, and place it in the body element (last child):\n\tdojo.place(\"<div><\/div>\", dojo.body());",
					"Put a new LI as the first child of a list by id:\n\tdojo.place(\"<li><\/li>\", \"someUl\", \"first\");"
				],
				"return-description": "DomNode\nReturned values is the first argument resolved to a DOM node.\n\n.place() is also a method of `dojo.NodeList`, allowing `dojo.query` node lookups.",
				"parameters": [
					{
						"name": "node",
						"type": "String|DomNode",
						"usage": "required",
						"summary": "id or node reference, or HTML fragment starting with &quot;&lt;&quot; to place relative to refNode"
					},
					{
						"name": "refNode",
						"type": "String|DomNode",
						"usage": "required",
						"summary": "id or node reference to use as basis for placement"
					},
					{
						"name": "position",
						"type": "String|Number",
						"usage": "optional",
						"summary": "string noting the position of node relative to refNode or a\nnumber indicating the location in the childNodes collection of refNode.\nAccepted string values are:\n\t* before\n\t* after\n\t* replace\n\t* only\n\t* first\n\t* last\n&quot;first&quot; and &quot;last&quot; indicate positions as children of refNode, &quot;replace&quot; replaces refNode,\n&quot;only&quot; replaces all children.  position defaults to &quot;last&quot; if not specified"
					}
				],
				"return-types": [
					{
						"type": "DomNode"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "getComputedStyle",
				"scope": "normal",
				"summary": "Returns a &quot;computed style&quot; object.",
				"description": "Gets a \"computed style\" object which can be used to gather\ninformation about the current state of the rendered node.\n\nNote that this may behave differently on different browsers.\nValues may have different formats and value encodings across\nbrowsers.\n\nNote also that this method is expensive.  Wherever possible,\nreuse the returned object.\n\nUse the dojo.style() method for more consistent (pixelized)\nreturn values.",
				"examples": [
					"\tdojo.getComputedStyle(dojo.byId('foo')).borderWidth;",
					"Reusing the returned object, avoiding multiple lookups:\n\tvar cs = dojo.getComputedStyle(dojo.byId(\"someNode\"));\n\tvar w = cs.width, h = cs.height;"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DOMNode",
						"usage": "required",
						"summary": "A reference to a DOM node. Does NOT support taking an\nID string for speed reasons."
					}
				],
				"return-types": [
					{
						"type": "CSS2Properties"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_toPixelValue",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "element",
						"type": null,
						"usage": "required"
					},
					{
						"name": "value",
						"type": null,
						"usage": "required"
					},
					{
						"name": "avalue",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getOpacity",
				"scope": "normal",
				"private": true,
				"summary": "Returns the current opacity of the passed node as a\nfloating-point value between 0 and 1.",
				"return-description": "Number between 0 and 1",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required",
						"summary": "a reference to a DOM node. Does NOT support taking an\nID string for speed reasons."
					}
				],
				"return-types": [
					{
						"type": "Number"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_setOpacity",
				"scope": "normal",
				"private": true,
				"summary": "set the opacity of the passed node portably. Returns the\nnew opacity of the node.",
				"return-description": "Number between 0 and 1",
				"parameters": [
					{
						"name": "node",
						"type": "DOMNode",
						"usage": "required",
						"summary": "a reference to a DOM node. Does NOT support taking an\nID string for performance reasons."
					},
					{
						"name": "opacity",
						"type": "Number",
						"usage": "required",
						"summary": "A Number between 0 and 1. 0 specifies transparent."
					}
				],
				"return-types": [
					{
						"type": "Number"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getPadExtents",
				"scope": "normal",
				"private": true,
				"summary": "Returns object with special values specifically useful for node\nfitting.",
				"description": "Returns an object with `w`, `h`, `l`, `t` properties:\n\t\tl\/t = left\/top padding (respectively)\n\t\tw = the total of the left and right padding\n\t\th = the total of the top and bottom padding\nIf 'node' has position, l\/t forms the origin for child nodes.\nThe w\/h are used for calculating boxes.\nNormally application code will not need to invoke this\ndirectly, and will use the ...box... functions instead.",
				"parameters": [
					{
						"name": "n",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getBorderExtents",
				"scope": "normal",
				"private": true,
				"summary": "returns an object with properties useful for noting the border\ndimensions.",
				"description": "* l\/t = the sum of left\/top border (respectively)\n* w = the sum of the left and right border\n* h = the sum of the top and bottom border\n\nThe w\/h are used for calculating boxes.\nNormally application code will not need to invoke this\ndirectly, and will use the ...box... functions instead.",
				"parameters": [
					{
						"name": "n",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getPadBorderExtents",
				"scope": "normal",
				"private": true,
				"summary": "Returns object with properties useful for box fitting with\nregards to padding.",
				"description": "* l\/t = the sum of left\/top padding and left\/top border (respectively)\n* w = the sum of the left and right padding and border\n* h = the sum of the top and bottom padding and border\n\nThe w\/h are used for calculating boxes.\nNormally application code will not need to invoke this\ndirectly, and will use the ...box... functions instead.",
				"parameters": [
					{
						"name": "n",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getMarginExtents",
				"scope": "normal",
				"private": true,
				"summary": "returns object with properties useful for box fitting with\nregards to box margins (i.e., the outer-box).\n\n* l\/t = marginLeft, marginTop, respectively\n* w = total width, margin inclusive\n* h = total height, margin inclusive\n\nThe w\/h are used for calculating boxes.\nNormally application code will not need to invoke this\ndirectly, and will use the ...box... functions instead.",
				"parameters": [
					{
						"name": "n",
						"type": null,
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getMarginBox",
				"scope": "normal",
				"private": true,
				"summary": "returns an object that encodes the width, height, left and top\npositions of the node's margin box.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getMarginSize",
				"scope": "normal",
				"private": true,
				"summary": "returns an object that encodes the width and height of\nthe node's margin box",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getContentBox",
				"scope": "normal",
				"private": true,
				"summary": "Returns an object that encodes the width, height, left and top\npositions of the node's content box, irrespective of the\ncurrent box model.",
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getBorderBox",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_setBox",
				"scope": "normal",
				"private": true,
				"summary": "sets width\/height\/left\/top in the current (native) box-model\ndimentions. Uses the unit passed in u.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required",
						"summary": "DOM Node reference. Id string not supported for performance\nreasons."
					},
					{
						"name": "l",
						"type": "Number",
						"usage": "optional",
						"summary": "left offset from parent."
					},
					{
						"name": "t",
						"type": "Number",
						"usage": "optional",
						"summary": "top offset from parent."
					},
					{
						"name": "w",
						"type": "Number",
						"usage": "optional",
						"summary": "width in current box model."
					},
					{
						"name": "h",
						"type": "Number",
						"usage": "optional",
						"summary": "width in current box model."
					},
					{
						"name": "u",
						"type": "String",
						"usage": "optional",
						"summary": "unit measure to use for other measures. Defaults to &quot;px&quot;."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_isButtonTag",
				"scope": "normal",
				"private": true,
				"summary": "True if the node is BUTTON or INPUT.type=&quot;button&quot;.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_usesBorderBox",
				"scope": "normal",
				"private": true,
				"summary": "True if the node uses border-box layout.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_setContentSize",
				"scope": "normal",
				"private": true,
				"summary": "Sets the size of the node's contents, irrespective of margins,\npadding, or borders.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "widthPx",
						"type": "Number",
						"usage": "required"
					},
					{
						"name": "heightPx",
						"type": "Number",
						"usage": "required"
					},
					{
						"name": "computedStyle",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_setMarginBox",
				"scope": "normal",
				"private": true,
				"summary": "sets the size of the node's margin box and placement\n(left\/top), irrespective of box model. Think of it as a\npassthrough to dojo._setBox that handles box-model vagaries for\nyou.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "leftPx",
						"type": "Number",
						"usage": "optional"
					},
					{
						"name": "topPx",
						"type": "Number",
						"usage": "optional"
					},
					{
						"name": "widthPx",
						"type": "Number",
						"usage": "optional"
					},
					{
						"name": "heightPx",
						"type": "Number",
						"usage": "optional"
					},
					{
						"name": "computedStyle",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "marginBox",
				"scope": "normal",
				"summary": "Getter\/setter for the margin-box of node.",
				"description": "Getter\/setter for the margin-box of node.\nReturns an object in the expected format of box (regardless\nif box is passed). The object might look like:\n`{ l: 50, t: 200, w: 300: h: 150 }`\nfor a node offset from its parent 50px to the left, 200px from\nthe top with a margin width of 300px and a margin-height of\n150px.",
				"examples": [
					"Retrieve the marginbox of a passed node\n\tvar box = dojo.marginBox(\"someNodeId\");\n\tconsole.dir(box);",
					"Set a node's marginbox to the size of another node\n\tvar box = dojo.marginBox(\"someNodeId\");\n\tdojo.marginBox(\"someOtherNode\", box);"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to DOM Node to get\/set box for"
					},
					{
						"name": "box",
						"type": "Object",
						"usage": "optional",
						"summary": "If passed, denotes that dojo.marginBox() should\nupdate\/set the margin box for node. Box is an object in the\nabove format. All properties are optional if passed."
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "contentBox",
				"scope": "normal",
				"summary": "Getter\/setter for the content-box of node.",
				"description": "Returns an object in the expected format of box (regardless if box is passed).\nThe object might look like:\n`{ l: 50, t: 200, w: 300: h: 150 }`\nfor a node offset from its parent 50px to the left, 200px from\nthe top with a content width of 300px and a content-height of\n150px. Note that the content box may have a much larger border\nor margin box, depending on the box model currently in use and\nCSS values set\/inherited for node.\nWhile the getter will return top and left values, the\nsetter only accepts setting the width and height.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to DOM Node to get\/set box for"
					},
					{
						"name": "box",
						"type": "Object",
						"usage": "optional",
						"summary": "If passed, denotes that dojo.contentBox() should\nupdate\/set the content box for node. Box is an object in the\nabove format, but only w (width) and h (height) are supported.\nAll properties are optional if passed."
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_docScroll",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_isBodyLtr",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_getIeDocumentElementOffset",
				"scope": "normal",
				"private": true,
				"summary": "returns the offset in x and y from the document body to the\nvisual edge of the page",
				"description": "The following values in IE contain an offset:\n\t\tevent.clientX\n\t\tevent.clientY\n\t\tnode.getBoundingClientRect().left\n\t\tnode.getBoundingClientRect().top\nBut other position related values do not contain this offset,\nsuch as node.offsetLeft, node.offsetTop, node.style.left and\nnode.style.top. The offset is always (2, 2) in LTR direction.\nWhen the body is in RTL direction, the offset counts the width\nof left scroll bar's width.  This function computes the actual\noffset."
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_fixIeBiDiScrollLeft",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "scrollLeft",
						"type": "Integer",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Integer"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_abs",
				"scope": "normal",
				"private": true
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "position",
				"scope": "normal",
				"summary": "Gets the position and size of the passed element relative to\nthe viewport (if includeScroll==false), or relative to the\ndocument root (if includeScroll==true).",
				"description": "Returns an object of the form:\n{ x: 100, y: 300, w: 20, h: 15 }\nIf includeScroll==true, the x and y values will include any\ndocument offsets that may affect the position relative to the\nviewport.\nUses the border-box model (inclusive of border and padding but\nnot margin).  Does not act as a setter.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "includeScroll",
						"type": "Boolean",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "coords",
				"scope": "normal",
				"summary": "Deprecated: Use position() for border-box x\/y\/w\/h\nor marginBox() for margin-box w\/h\/l\/t.\nReturns an object representing a node's size and position.",
				"description": "Returns an object that measures margin-box (w)idth\/(h)eight\nand absolute position x\/y of the border-box. Also returned\nis computed (l)eft and (t)op values in pixels from the\nnode's offsetParent as returned from marginBox().\nReturn value will be in the form:\n\t\t\t{ l: 50, t: 200, w: 300: h: 150, x: 100, y: 300 }\nDoes not act as a setter. If includeScroll is passed, the x and\ny params are affected as one would expect in dojo.position().",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required"
					},
					{
						"name": "includeScroll",
						"type": "Boolean",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "removeAttr",
				"scope": "normal",
				"summary": "Removes an attribute from an HTML element.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to the element to remove the attribute from"
					},
					{
						"name": "name",
						"type": "String",
						"usage": "required",
						"summary": "the name of the attribute to remove"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "getNodeProp",
				"scope": "normal",
				"summary": "Returns an effective value of a property or an attribute.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "id or reference to the element to remove the attribute from"
					},
					{
						"name": "name",
						"type": "String",
						"usage": "required",
						"summary": "the name of the attribute"
					}
				],
				"return-types": [
					{
						"type": "Anything"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js",
					"dojox\/html\/ellipsis.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo._base.html",
					"dojox.html.ellipsis",
					"dojox.mobile.scrollable"
				],
				"name": "create",
				"scope": "normal",
				"summary": "Create an element, allowing for optional attribute decoration\nand placement.",
				"description": "A DOM Element creation function. A shorthand method for creating a node or\na fragment, and allowing for a convenient optional attribute setting step,\nas well as an optional DOM placement reference.\n\nAttributes are set by passing the optional object through `dojo.attr`.\nSee `dojo.attr` for noted caveats and nuances, and API if applicable.\n\nPlacement is done via `dojo.place`, assuming the new node to be the action\nnode, passing along the optional reference node and position.",
				"examples": [
					"Create a DIV:\n\tvar n = dojo.create(\"div\");",
					"Create a DIV with content:\n\tvar n = dojo.create(\"div\", { innerHTML:\"<p>hi<\/p>\" });",
					"Place a new DIV in the BODY, with no attributes set\n\tvar n = dojo.create(\"div\", null, dojo.body());",
					"Create an UL, and populate it with LI's. Place the list as the first-child of a\nnode with id=\"someId\":\n\tvar ul = dojo.create(\"ul\", null, \"someId\", \"first\");\n\tvar items = [\"one\", \"two\", \"three\", \"four\"];\n\tdojo.forEach(items, function(data){\n\t\tdojo.create(\"li\", { innerHTML: data }, ul);\n\t});",
					"Create an anchor, with an href. Place in BODY:\n\tdojo.create(\"a\", { href:\"foo.html\", title:\"Goto FOO!\" }, dojo.body());",
					"Create a `dojo.NodeList()` from a new element (for syntatic sugar):\n\tdojo.query(dojo.create('div'))\n\t\t.addClass(\"newDiv\")\n\t\t.onclick(function(e){ console.log('clicked', e.target) })\n\t\t.place(\"#someNode\"); \/\/ redundant, but cleaner."
				],
				"return-description": "DomNode",
				"parameters": [
					{
						"name": "tag",
						"type": "String|DomNode",
						"usage": "required",
						"summary": "A string of the element to create (eg: &quot;div&quot;, &quot;a&quot;, &quot;p&quot;, &quot;li&quot;, &quot;script&quot;, &quot;br&quot;),\nor an existing DOM node to process."
					},
					{
						"name": "attrs",
						"type": "Object",
						"usage": "required",
						"summary": "An object-hash of attributes to set on the newly created node.\nCan be null, if you don't want to set any attributes\/styles.\nSee: <code>dojo.attr<\/code> for a description of available attributes."
					},
					{
						"name": "refNode",
						"type": "String|DomNode",
						"usage": "optional",
						"summary": "Optional reference node. Used by <code>dojo.place<\/code> to place the newly created\nnode somewhere in the dom relative to refNode. Can be a DomNode reference\nor String ID of a node."
					},
					{
						"name": "pos",
						"type": "String",
						"usage": "optional",
						"summary": "Optional positional reference. Defaults to &quot;last&quot; by way of <code>dojo.place<\/code>,\nthough can be set to &quot;first&quot;,&quot;after&quot;,&quot;before&quot;,&quot;last&quot;, &quot;replace&quot; or &quot;only&quot;\nto further control the placement of the new node relative to the refNode.\n'refNode' is required if a 'pos' is specified."
					}
				],
				"return-types": [
					{
						"type": "DomNode"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "empty",
				"scope": "normal",
				"summary": "safely removes all children of the node.",
				"examples": [
					"Destroy node's children byId:\n\tdojo.empty(\"someId\");",
					"Destroy all nodes' children in a list by reference:\n\tdojo.query(\".someNode\").forEach(dojo.empty);"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DOMNode|String",
						"usage": "required",
						"summary": "a reference to a DOM node or an id."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "_toDom",
				"scope": "normal",
				"private": true,
				"summary": "converts HTML string into DOM nodes.",
				"examples": {
					"example": "Create a table row:\n\tvar tr = dojo._toDom(\"<tr><td>First!<\/td><\/tr>\");"
				},
				"return-description": "DocumentFragment",
				"parameters": [
					{
						"name": "frag",
						"type": "String",
						"usage": "required",
						"summary": "the HTML fragment"
					},
					{
						"name": "doc",
						"type": "DocumentNode",
						"usage": "optional",
						"summary": "optional document to use when creating DOM nodes, defaults to\ndojo.doc if not specified."
					}
				],
				"return-types": [
					{
						"type": "DOMNode"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js",
					"dojox\/html\/ellipsis.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo._base.html",
					"dojox.html.ellipsis",
					"dojox.mobile.scrollable"
				],
				"name": "hasClass",
				"scope": "normal",
				"summary": "Returns whether or not the specified classes are a portion of the\nclass list currently applied to the node.",
				"examples": {
					"example": "Do something if a node with id=\"someNode\" has class=\"aSillyClassName\" present\n\tif(dojo.hasClass(\"someNode\",\"aSillyClassName\")){ ... }"
				},
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "String ID or DomNode reference to check the class for."
					},
					{
						"name": "classStr",
						"type": "String",
						"usage": "required",
						"summary": "A string class name to look for."
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo._base.html",
					"dojox.mobile.scrollable"
				],
				"name": "addClass",
				"scope": "normal",
				"summary": "Adds the specified classes to the end of the class list on the\npassed node. Will not re-apply duplicate classes.",
				"examples": [
					"Add a class to some node:\n\tdojo.addClass(\"someNode\", \"anewClass\");",
					"Add two classes at once:\n\tdojo.addClass(\"someNode\", \"firstClass secondClass\");",
					"Add two classes at once (using array):\n\tdojo.addClass(\"someNode\", [\"firstClass\", \"secondClass\"]);",
					"Available in `dojo.NodeList` for multiple additions\n\tdojo.query(\"ul > li\").addClass(\"firstLevel\");"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "String ID or DomNode reference to add a class string too"
					},
					{
						"name": "classStr",
						"type": "String|Array",
						"usage": "required",
						"summary": "A String class name to add, or several space-separated class names,\nor an array of class names."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js",
					"dojox\/mobile\/scrollable.js"
				],
				"provides": [
					"dojo._base.html",
					"dojox.mobile.scrollable"
				],
				"name": "removeClass",
				"scope": "normal",
				"summary": "Removes the specified classes from node. No <code>dojo.hasClass<\/code>\ncheck is required.",
				"examples": [
					"Remove a class from some node:\n\tdojo.removeClass(\"someNode\", \"firstClass\");",
					"Remove two classes from some node:\n\tdojo.removeClass(\"someNode\", \"firstClass secondClass\");",
					"Remove two classes from some node (using array):\n\tdojo.removeClass(\"someNode\", [\"firstClass\", \"secondClass\"]);",
					"Remove all classes from some node:\n\tdojo.removeClass(\"someNode\");",
					"Available in `dojo.NodeList()` for multiple removal\n\tdojo.query(\".foo\").removeClass(\"foo\");"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "String ID or DomNode reference to remove the class from."
					},
					{
						"name": "classStr",
						"type": "String|Array",
						"usage": "optional",
						"summary": "An optional String class name to remove, or several space-separated\nclass names, or an array of class names. If omitted, all class names\nwill be deleted."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "replaceClass",
				"scope": "normal",
				"summary": "Replaces one or more classes on a node if not present.\nOperates more quickly than calling dojo.removeClass and dojo.addClass",
				"examples": [
					"\tdojo.replaceClass(\"someNode\", \"add1 add2\", \"remove1 remove2\");",
					"Replace all classes with addMe\n\tdojo.replaceClass(\"someNode\", \"addMe\");",
					"Available in `dojo.NodeList()` for multiple toggles\n\tdojo.query(\".findMe\").replaceClass(\"addMe\", \"removeMe\");"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required",
						"summary": "String ID or DomNode reference to remove the class from."
					},
					{
						"name": "addClassStr",
						"type": "String|Array",
						"usage": "required",
						"summary": "A String class name to add, or several space-separated class names,\nor an array of class names."
					},
					{
						"name": "removeClassStr",
						"type": "String|Array",
						"usage": "optional",
						"summary": "A String class name to remove, or several space-separated class names,\nor an array of class names."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/html.js"
				],
				"provides": [
					"dojo._base.html"
				],
				"name": "toggleClass",
				"scope": "normal",
				"summary": "Adds a class to node if not present, or removes if present.\nPass a boolean condition if you want to explicitly add or remove.",
				"examples": [
					"\tdojo.toggleClass(\"someNode\", \"hovered\");",
					"Forcefully add a class\n\tdojo.toggleClass(\"someNode\", \"hovered\", true);",
					"Available in `dojo.NodeList()` for multiple toggles\n\tdojo.query(\".toggleMe\").toggleClass(\"toggleMe\");"
				],
				"parameters": [
					{
						"name": "node",
						"type": "DomNode|String",
						"usage": "required"
					},
					{
						"name": "classStr",
						"type": "String|Array",
						"usage": "required"
					},
					{
						"name": "condition",
						"type": "Boolean",
						"usage": "optional",
						"summary": "If passed, true means to add the class, false means to remove."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/json.js"
				],
				"provides": [
					"dojo._base.json"
				],
				"name": "fromJson",
				"scope": "normal",
				"summary": "Parses a [JSON](http:\/\/json.org) string to return a JavaScript object.",
				"description": "Throws for invalid JSON strings, but it does not use a strict JSON parser. It\ndelegates to eval().  The content passed to this method must therefore come\nfrom a trusted source.",
				"parameters": [
					{
						"name": "json",
						"type": "String",
						"usage": "required",
						"summary": "a string literal of a JSON item, for instance:\n<code>'{ &quot;foo&quot;: [ &quot;bar&quot;, 1, { &quot;baz&quot;: &quot;thud&quot; } ] }'<\/code>"
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/json.js"
				],
				"provides": [
					"dojo._base.json"
				],
				"name": "_escapeString",
				"scope": "normal",
				"private": true,
				"summary": "Adds escape sequences for non-visual characters, double quote and\nbackslash and surrounds with double quotes to form a valid string\nliteral.",
				"parameters": [
					{
						"name": "str",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/json.js"
				],
				"provides": [
					"dojo._base.json"
				],
				"name": "toJson",
				"scope": "normal",
				"summary": "Returns a [JSON](http:\/\/json.org) serialization of an object.",
				"description": "Returns a [JSON](http:\/\/json.org) serialization of an object.\nNote that this doesn't check for infinite recursion, so don't do that!",
				"examples": [
					"simple serialization of a trivial object\n\tvar jsonStr = dojo.toJson({ howdy: \"stranger!\", isStrange: true });\n\tdoh.is('{\"howdy\":\"stranger!\",\"isStrange\":true}', jsonStr);",
					"a custom serializer for an objects of a particular class:\n\tdojo.declare(\"Furby\", null, {\n\t\tfurbies: \"are strange\",\n\t\tfurbyCount: 10,\n\t\t__json__: function(){\n\t\t},\n\t});"
				],
				"parameters": [
					{
						"name": "it",
						"type": "Object",
						"usage": "required",
						"summary": "an object to be serialized. Objects may define their own\nserialization via a special &quot;__json__&quot; or &quot;json&quot; function\nproperty. If a specialized serializer has been defined, it will\nbe used as a fallback."
					},
					{
						"name": "prettyPrint",
						"type": "Boolean",
						"usage": "optional",
						"summary": "if true, we indent objects and arrays to make the output prettier.\nThe variable <code>dojo.toJsonIndentStr<\/code> is used as the indent string --\nto use something other than the default (tab), change that variable\nbefore calling dojo.toJson()."
					},
					{
						"name": "_indentStr",
						"type": "String",
						"usage": "optional",
						"summary": "private variable for recursive calls when pretty printing, do not use."
					}
				],
				"return-types": [
					{
						"type": "null"
					},
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "isString",
				"scope": "normal",
				"summary": "Return true if it is a String",
				"parameters": [
					{
						"name": "it",
						"type": "anything",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "isArray",
				"scope": "normal",
				"summary": "Return true if it is an Array.\nDoes not work on Arrays created in other windows.",
				"parameters": [
					{
						"name": "it",
						"type": "anything",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js",
					"dojox\/lang\/oo\/aop.js",
					"dojox\/lang\/oo\/general.js"
				],
				"provides": [
					"dojo._base.lang",
					"dojox.lang.oo.aop",
					"dojox.lang.oo.general"
				],
				"name": "isFunction",
				"scope": "normal",
				"summary": "Return true if it is a Function",
				"parameters": [
					{
						"name": "it",
						"type": "anything",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "isObject",
				"scope": "normal",
				"summary": "Returns true if it is a JavaScript object (or an Array, a Function\nor null)",
				"parameters": [
					{
						"name": "it",
						"type": "anything",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "isArrayLike",
				"scope": "normal",
				"summary": "similar to dojo.isArray() but more permissive",
				"description": "Doesn't strongly test for \"arrayness\".  Instead, settles for \"isn't\na string or number and has a length property\". Arguments objects\nand DOM collections will return true when passed to\ndojo.isArrayLike(), but will return false when passed to\ndojo.isArray().",
				"return-description": "If it walks like a duck and quacks like a duck, return `true`",
				"parameters": [
					{
						"name": "it",
						"type": "anything",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "isAlien",
				"scope": "normal",
				"summary": "Returns true if it is a built-in function or some other kind of\noddball that *should* report as a function but doesn't",
				"parameters": [
					{
						"name": "it",
						"type": "anything",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "extend",
				"scope": "normal",
				"summary": "Adds all properties and methods of props to constructor's\nprototype, making them available to all instances created with\nconstructor.",
				"parameters": [
					{
						"name": "constructor",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "props",
						"type": "Object",
						"usage": "one-or-more"
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "_hitchArgs",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "scope",
						"type": null,
						"usage": "required"
					},
					{
						"name": "method",
						"type": ",",
						"usage": "one-or-more"
					}
				],
				"return-types": [
					{
						"type": "mixed"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "hitch",
				"scope": "normal",
				"summary": "Returns a function that will only ever execute in the a given scope.\nThis allows for easy use of object member functions\nin callbacks and other places in which the &quot;this&quot; keyword may\notherwise not reference the expected scope.\nAny number of default positional arguments may be passed as parameters\nbeyond &quot;method&quot;.\nEach of these values will be used to &quot;placehold&quot; (similar to curry)\nfor the hitched function.",
				"examples": [
					"\tdojo.hitch(foo, \"bar\")();\nruns foo.bar() in the scope of foo",
					"\tdojo.hitch(foo, myFunction);\nreturns a function that runs myFunction in the scope of foo",
					"Expansion on the default positional arguments passed along from\nhitch. Passed args are mixed first, additional args after.\n\tvar foo = { bar: function(a, b, c){ console.log(a, b, c); } };\n\tvar fn = dojo.hitch(foo, \"bar\", 1, 2);\n\tfn(3); \/\/ logs \"1, 2, 3\"",
					"\tvar foo = { bar: 2 };\n\tdojo.hitch(foo, function(){ this.bar = 10; })();\nexecute an anonymous function in scope of foo"
				],
				"parameters": [
					{
						"name": "scope",
						"type": "Object",
						"usage": "required",
						"summary": "The scope to use when method executes. If method is a string,\nscope is also the object containing method."
					},
					{
						"name": "method",
						"type": "Function|String",
						"usage": "required",
						"summary": "A function to be hitched to scope, or the name of the method in\nscope to be hitched."
					}
				],
				"return-types": [
					{
						"type": "Function"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js",
					"dojox\/date\/relative.js"
				],
				"provides": [
					"dojo._base.lang",
					"dojox.date.relative"
				],
				"name": "delegate",
				"scope": "normal",
				"summary": "Returns a new object which &quot;looks&quot; to obj for properties which it\ndoes not have a value for. Optionally takes a bag of properties to\nseed the returned object with initially.",
				"description": "This is a small implementaton of the Boodman\/Crockford delegation\npattern in JavaScript. An intermediate object constructor mediates\nthe prototype chain for the returned object, using it to delegate\ndown to obj for property lookup when object-local lookup fails.\nThis can be thought of similarly to ES4's \"wrap\", save that it does\nnot act on types but rather on pure objects.",
				"examples": {
					"example": "\tvar foo = { bar: \"baz\" };\n\tvar thinger = dojo.delegate(foo, { thud: \"xyzzy\"});\n\tthinger.bar == \"baz\"; \/\/ delegated to foo\n\tfoo.thud == undefined; \/\/ by definition\n\tthinger.thud == \"xyzzy\"; \/\/ mixed in from props\n\tfoo.bar = \"thonk\";\n\tthinger.bar == \"thonk\"; \/\/ still delegated to foo's bar"
				},
				"return-description": "an Object of anonymous type",
				"parameters": [
					{
						"name": "obj",
						"type": "The",
						"usage": "required",
						"summary": "object to delegate to for properties not found directly on the\nreturn object or in props."
					},
					{
						"name": "props",
						"type": "an",
						"usage": "required",
						"summary": "object containing properties to assign to the returned object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "_toArray",
				"scope": "normal",
				"private": true,
				"summary": "Converts an array-like object (i.e. arguments, DOMCollection) to an\narray. Returns a new Array with the elements of obj.",
				"parameters": [
					{
						"name": "obj",
						"type": "Object",
						"usage": "required",
						"summary": "the object to &quot;arrayify&quot;. We expect the object to have, at a\nminimum, a length property which corresponds to integer-indexed\nproperties."
					},
					{
						"name": "offset",
						"type": "Number",
						"usage": "optional",
						"summary": "the location in obj to start iterating from. Defaults to 0.\nOptional."
					},
					{
						"name": "startWith",
						"type": "Array",
						"usage": "optional",
						"summary": "An array to pack with the properties of obj. If provided,\nproperties in obj are appended at the end of startWith and\nstartWith is the returned array."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "partial",
				"scope": "normal",
				"summary": "similar to hitch() except that the scope object is left to be\nwhatever the execution context eventually becomes.",
				"description": "Calling dojo.partial is the functional equivalent of calling:\n\tdojo.hitch(null, funcName, ...);",
				"parameters": [
					{
						"name": "method",
						"type": "Function|String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Function"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "clone",
				"scope": "normal",
				"summary": "Clones objects (including DOM nodes) and all children.\nWarning: do not clone cyclic structures.",
				"parameters": [
					{
						"name": "o",
						"type": "anything",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "anything"
					},
					{
						"type": "Node"
					},
					{
						"type": "Date"
					},
					{
						"type": "RegExp"
					},
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "trim",
				"scope": "normal",
				"summary": "Trims whitespace from both sides of the string",
				"description": "This version of trim() was selected for inclusion into the base due\nto its compact size and relatively good performance\n(see [Steven Levithan's blog](http:\/\/blog.stevenlevithan.com\/archives\/faster-trim-javascript)\nUses String.prototype.trim instead, if available.\nThe fastest but longest version of this function is located at\ndojo.string.trim()",
				"return-description": "String\nReturns the trimmed string",
				"parameters": [
					{
						"name": "str",
						"type": "String",
						"usage": "required",
						"summary": "String to be trimmed"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/lang.js"
				],
				"provides": [
					"dojo._base.lang"
				],
				"name": "replace",
				"scope": "normal",
				"summary": "Performs parameterized substitutions on a string. Throws an\nexception if any parameter is unmatched.",
				"examples": [
					"\t\/\/ uses a dictionary for substitutions:\n\tdojo.replace(\"Hello, {name.first} {name.last} AKA {nick}!\",\n\t  {\n\t    nick: \"Bob\",\n\t    name: {\n\t      first:  \"Robert\",\n\t      middle: \"X\",\n\t      last:   \"Cringely\"\n\t    }\n\t  });\n\t\/\/ returns: Hello, Robert Cringely AKA Bob!",
					"\t\/\/ uses an array for substitutions:\n\tdojo.replace(\"Hello, {0} {2}!\",\n\t  [\"Robert\", \"X\", \"Cringely\"]);\n\t\/\/ returns: Hello, Robert Cringely!",
					"\t\/\/ uses a function for substitutions:\n\tfunction sum(a){\n\t  var t = 0;\n\t  dojo.forEach(a, function(x){ t += x; });\n\t  return t;\n\t}\n\tdojo.replace(\n\t  \"{count} payments averaging {avg} USD per payment.\",\n\t  dojo.hitch(\n\t    { payments: [11, 16, 12] },\n\t    function(_, key){\n\t      switch(key){\n\t        case \"count\": return this.payments.length;\n\t        case \"min\":   return Math.min.apply(Math, this.payments);\n\t        case \"max\":   return Math.max.apply(Math, this.payments);\n\t        case \"sum\":   return sum(this.payments);\n\t        case \"avg\":   return sum(this.payments) \/ this.payments.length;\n\t      }\n\t    }\n\t  )\n\t);\n\t\/\/ prints: 3 payments averaging 13 USD per payment.",
					"\t\/\/ uses an alternative PHP-like pattern for substitutions:\n\tdojo.replace(\"Hello, ${0} ${2}!\",\n\t  [\"Robert\", \"X\", \"Cringely\"], \/\\$\\{([^\\}]+)\\}\/g);\n\t\/\/ returns: Hello, Robert Cringely!"
				],
				"return-description": "String\nReturns the substituted string.",
				"parameters": [
					{
						"name": "tmpl",
						"type": "String",
						"usage": "required",
						"summary": "String to be used as a template."
					},
					{
						"name": "map",
						"type": "Object|Function",
						"usage": "required",
						"summary": "If an object, it is used as a dictionary to look up substitutions.\nIf a function, it is called for every substitution with following\nparameters: a whole match, a name, an offset, and the whole template\nstring (see https:\/\/developer.mozilla.org\/en\/Core_JavaScript_1.5_Reference\/Global_Objects\/String\/replace\nfor more details)."
					},
					{
						"name": "pattern",
						"type": "RegEx",
						"usage": "optional",
						"summary": "Optional regular expression objects that overrides the default pattern.\nMust be global and match one item. The default is: \/\\{([^\\}]+)\\}\/g,\nwhich matches patterns like that: &quot;{xxx}&quot;, where &quot;xxx&quot; is any sequence\nof characters, which doesn't include &quot;}&quot;."
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/window.js"
				],
				"provides": [
					"dojo._base.window"
				],
				"name": "setContext",
				"scope": "normal",
				"summary": "changes the behavior of many core Dojo functions that deal with\nnamespace and DOM lookup, changing them to work in a new global\ncontext (e.g., an iframe). The varibles dojo.global and dojo.doc\nare modified as a result of calling this function and the result of\n<code>dojo.body()<\/code> likewise differs.",
				"parameters": [
					{
						"name": "globalObject",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "globalDocument",
						"type": "DocumentElement",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/window.js"
				],
				"provides": [
					"dojo._base.window"
				],
				"name": "withGlobal",
				"scope": "normal",
				"summary": "Invoke callback with globalObject as dojo.global and\nglobalObject.document as dojo.doc.",
				"description": "Invoke callback with globalObject as dojo.global and\nglobalObject.document as dojo.doc. If provided, globalObject\nwill be executed in the context of object thisObject\nWhen callback() returns or throws an error, the dojo.global\nand dojo.doc will be restored to its previous state.",
				"parameters": [
					{
						"name": "globalObject",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "callback",
						"type": "Function",
						"usage": "required"
					},
					{
						"name": "thisObject",
						"type": "Object",
						"usage": "optional"
					},
					{
						"name": "cbArguments",
						"type": "Array",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/window.js"
				],
				"provides": [
					"dojo._base.window"
				],
				"name": "withDoc",
				"scope": "normal",
				"summary": "Invoke callback with documentObject as dojo.doc.",
				"description": "Invoke callback with documentObject as dojo.doc. If provided,\ncallback will be executed in the context of object thisObject\nWhen callback() returns or throws an error, the dojo.doc will\nbe restored to its previous state.",
				"parameters": [
					{
						"name": "documentObject",
						"type": "DocumentElement",
						"usage": "required"
					},
					{
						"name": "callback",
						"type": "Function",
						"usage": "required"
					},
					{
						"name": "thisObject",
						"type": "Object",
						"usage": "optional"
					},
					{
						"name": "cbArguments",
						"type": "Array",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "fieldToObject",
				"scope": "normal",
				"summary": "Serialize a form field to a JavaScript object.",
				"description": "Returns the value encoded in a form field as\nas a string or an array of strings. Disabled form elements\nand unchecked radio and checkboxes are skipped.\tMulti-select\nelements are returned as an array of string values.",
				"parameters": [
					{
						"name": "inputNode",
						"type": "DOMNode||String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "formToObject",
				"scope": "normal",
				"summary": "Serialize a form node to a JavaScript object.",
				"description": "Returns the values encoded in an HTML form as\nstring properties in an object which it then returns. Disabled form\nelements, buttons, and other non-value form elements are skipped.\nMulti-select elements are returned as an array of string values.",
				"examples": {
					"example": "This form:\n\t<form id=\"test_form\">\n\t\t<input type=\"text\" name=\"blah\" value=\"blah\">\n\t\t<input type=\"text\" name=\"no_value\" value=\"blah\" disabled>\n\t\t<input type=\"button\" name=\"no_value2\" value=\"blah\">\n\t\t<select type=\"select\" multiple name=\"multi\" size=\"5\">\n\t\t\t<option value=\"blah\">blah<\/option>\n\t\t\t<option value=\"thud\" selected>thud<\/option>\n\t\t\t<option value=\"thonk\" selected>thonk<\/option>\n\t\t<\/select>\n\t<\/form>\n\nyields this object structure as the result of a call to\nformToObject():\n\n\t{\n\t\tblah: \"blah\",\n\t\tmulti: [\n\t\t\t\"thud\",\n\t\t\t\"thonk\"\n\t\t]\n\t};"
				},
				"parameters": [
					{
						"name": "formNode",
						"type": "DOMNode||String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "objectToQuery",
				"scope": "normal",
				"summary": "takes a name\/value mapping object and returns a string representing\na URL-encoded version of that object.",
				"examples": {
					"example": "this object:\n\n\t{\n\t\tblah: \"blah\",\n\t\tmulti: [\n\t\t\t\"thud\",\n\t\t\t\"thonk\"\n\t\t]\n\t};\n\nyields the following query string:\n\n\t\"blah=blah&multi=thud&multi=thonk\""
				},
				"parameters": [
					{
						"name": "map",
						"type": "Object",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "formToQuery",
				"scope": "normal",
				"summary": "Returns a URL-encoded string representing the form passed as either a\nnode or string ID identifying the form to serialize",
				"parameters": [
					{
						"name": "formNode",
						"type": "DOMNode||String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "formToJson",
				"scope": "normal",
				"summary": "Create a serialized JSON string from a form node or string\nID identifying the form to serialize",
				"parameters": [
					{
						"name": "formNode",
						"type": "DOMNode||String",
						"usage": "required"
					},
					{
						"name": "prettyPrint",
						"type": "Boolean",
						"usage": "optional"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "queryToObject",
				"scope": "normal",
				"summary": "Create an object representing a de-serialized query section of a\nURL. Query keys with multiple values are returned in an array.",
				"examples": {
					"example": "This string:\n\n\t\t\"foo=bar&foo=baz&thinger=%20spaces%20=blah&zonk=blarg&\"\n\nresults in this object structure:\n\n\t\t{\n\t\t\tfoo: [ \"bar\", \"baz\" ],\n\t\t\tthinger: \" spaces =blah\",\n\t\t\tzonk: \"blarg\"\n\t\t}\n\nNote that spaces and other urlencoded entities are correctly\nhandled."
				},
				"parameters": [
					{
						"name": "str",
						"type": "String",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "Object"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "_ioSetArgs",
				"scope": "normal",
				"private": true,
				"summary": "sets up the Deferred and ioArgs property on the Deferred so it\ncan be used in an io call.",
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__IoArgs",
						"usage": "required",
						"summary": "The args object passed into the public io call. Recognized properties on\nthe args object are:"
					},
					{
						"name": "canceller",
						"type": "Function",
						"usage": "required",
						"summary": "The canceller function used for the Deferred object. The function\nwill receive one argument, the Deferred object that is related to the\ncanceller."
					},
					{
						"name": "okHandler",
						"type": "Function",
						"usage": "required",
						"summary": "The first OK callback to be registered with Deferred. It has the opportunity\nto transform the OK response. It will receive one argument -- the Deferred\nobject returned from this function."
					},
					{
						"name": "errHandler",
						"type": "Function",
						"usage": "required",
						"summary": "The first error callback to be registered with Deferred. It has the opportunity\nto do cleanup on an error. It will receive two arguments: error (the\nError object) and dfd, the Deferred object returned from this function."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "_ioCancelAll",
				"scope": "normal",
				"private": true,
				"summary": "Cancels all pending IO requests, regardless of IO type\n(xhr, script, iframe)."
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "_ioNotifyStart",
				"scope": "normal",
				"private": true,
				"summary": "If dojo.publish is available, publish topics\nabout the start of a request queue and\/or the\nthe beginning of request.",
				"description": "Used by IO transports. An IO transport should\ncall this method before making the network connection.",
				"parameters": [
					{
						"name": "dfd",
						"type": "Deferred",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "_ioWatch",
				"scope": "normal",
				"private": true,
				"summary": "Watches the io request represented by dfd to see if it completes.",
				"parameters": [
					{
						"name": "dfd",
						"type": "Deferred",
						"usage": "required",
						"summary": "The Deferred object to watch."
					},
					{
						"name": "validCheck",
						"type": "Function",
						"usage": "required",
						"summary": "Function used to check if the IO request is still valid. Gets the dfd\nobject as its only argument."
					},
					{
						"name": "ioCheck",
						"type": "Function",
						"usage": "required",
						"summary": "Function used to check if basic IO call worked. Gets the dfd\nobject as its only argument."
					},
					{
						"name": "resHandle",
						"type": "Function",
						"usage": "required",
						"summary": "Function used to process response. Gets the dfd\nobject as its only argument."
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "_ioAddQueryToUrl",
				"scope": "normal",
				"private": true,
				"summary": "Adds query params discovered by the io deferred construction to the URL.\nOnly use this for operations which are fundamentally GET-type operations.",
				"parameters": [
					{
						"name": "ioArgs",
						"type": "dojo.__IoCallbackArgs",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js",
					"dojox\/data\/PersevereStore.js",
					"dojox\/rpc\/Client.js"
				],
				"provides": [
					"dojo._base.xhr",
					"dojox.data.PersevereStore",
					"dojox.rpc.Client"
				],
				"name": "xhr",
				"scope": "normal",
				"summary": "Sends an HTTP request with the given method.",
				"description": "Sends an HTTP request with the given method.\nSee also dojo.xhrGet(), xhrPost(), xhrPut() and dojo.xhrDelete() for shortcuts\nfor those HTTP methods. There are also methods for \"raw\" PUT and POST methods\nvia dojo.rawXhrPut() and dojo.rawXhrPost() respectively.",
				"parameters": [
					{
						"name": "method",
						"type": "String",
						"usage": "required",
						"summary": "HTTP method to be used, such as GET, POST, PUT, DELETE.  Should be uppercase."
					},
					{
						"name": "args",
						"type": "dojo.__XhrArgs",
						"usage": "required"
					},
					{
						"name": "hasBody",
						"type": "Boolean",
						"usage": "optional",
						"summary": "If the request has an HTTP body, then pass true for hasBody."
					}
				],
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "xhrGet",
				"scope": "normal",
				"summary": "Sends an HTTP GET request to the server.",
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__XhrArgs",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "rawXhrPost",
				"scope": "normal"
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "xhrPost",
				"scope": "normal",
				"summary": "Sends an HTTP POST request to the server. In addtion to the properties\nlisted for the dojo.__XhrArgs type, the following property is allowed:\npostData:\nString. Send raw data in the body of the POST request.",
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__XhrArgs",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "rawXhrPut",
				"scope": "normal"
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "xhrPut",
				"scope": "normal",
				"summary": "Sends an HTTP PUT request to the server. In addtion to the properties\nlisted for the dojo.__XhrArgs type, the following property is allowed:\nputData:\nString. Send raw data in the body of the PUT request.",
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__XhrArgs",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dojo\/_base\/xhr.js"
				],
				"provides": [
					"dojo._base.xhr"
				],
				"name": "xhrDelete",
				"scope": "normal",
				"summary": "Sends an HTTP DELETE request to the server.",
				"parameters": [
					{
						"name": "args",
						"type": "dojo.__XhrArgs",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dojo\/_firebug\/firebug.js"
				],
				"provides": [
					"dojo._firebug.firebug"
				],
				"name": "deprecated",
				"scope": "normal",
				"summary": "Log a debug message to indicate that a behavior has been\ndeprecated.",
				"parameters": [
					{
						"name": "behaviour",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "extra",
						"type": "String",
						"usage": "optional",
						"summary": "Text to append to the message."
					},
					{
						"name": "removal",
						"type": "String",
						"usage": "optional",
						"summary": "Text to indicate when in the future the behavior will be removed."
					}
				]
			},
			{
				"resources": [
					"dojo\/_firebug\/firebug.js"
				],
				"provides": [
					"dojo._firebug.firebug"
				],
				"name": "experimental",
				"scope": "normal",
				"summary": "Marks code as experimental.",
				"description": "This can be used to mark a function, file, or module as\nexperimental.  Experimental code is not ready to be used, and the\nAPIs are subject to change without notice.  Experimental code may be\ncompleted deleted without going through the normal deprecation\nprocess.",
				"examples": [
					"\tdojo.experimental(\"dojo.data.Result\");",
					"\tdojo.experimental(\"dojo.weather.toKelvin()\", \"PENDING approval from NOAA\");"
				],
				"parameters": [
					{
						"name": "moduleName",
						"type": "String",
						"usage": "required",
						"summary": "The name of a module, or the name of a module file or a specific\nfunction"
					},
					{
						"name": "extra",
						"type": "String",
						"usage": "optional",
						"summary": "some additional message for the user"
					}
				]
			},
			{
				"resources": [
					"dojo\/back.js"
				],
				"provides": [
					"dojo.back"
				],
				"name": "__backArgs",
				"scope": "normal",
				"private": true,
				"parameters": [
					{
						"name": "kwArgs",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojo\/hash.js"
				],
				"provides": [
					"dojo.hash"
				],
				"name": "hash",
				"scope": "normal",
				"summary": "Gets or sets the hash string.",
				"description": "Handles getting and setting of location.hash.\n- If no arguments are passed, acts as a getter.\n- If a string is passed, acts as a setter.",
				"return-description": "when used as a getter, returns the current hash string.\nwhen used as a setter, returns the new hash string.",
				"parameters": [
					{
						"name": "hash",
						"type": "String",
						"usage": "optional",
						"summary": "the hash is set - #string."
					},
					{
						"name": "replace",
						"type": "Boolean",
						"usage": "optional",
						"summary": "If true, updates the hash value in the current history\nstate instead of creating a new history state."
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			}
		]
	},
	"dijit._MenuBarItemMixin": {
		"location": "dijit._MenuBarItemMixin",
		"resources": [
			"dijit\/MenuBarItem.js"
		],
		"provides": [
			"dijit.MenuBarItem"
		],
		"type": "Function",
		"classlike": true,
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/MenuBarItem.js"
				],
				"provides": [
					"dijit.MenuBarItem"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "attributeMap",
				"resources": [
					"dijit\/MenuBarItem.js"
				],
				"provides": [
					"dijit.MenuBarItem"
				],
				"scope": "prototype",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			}
		]
	},
	"dijit.MenuBarItem": {
		"location": "dijit.MenuBarItem",
		"resources": [
			"dijit\/MenuBarItem.js"
		],
		"provides": [
			"dijit.MenuBarItem"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit.MenuItem",
		"summary": "Item in a MenuBar that's clickable, and doesn't spawn a submenu when pressed (or hovered)",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._MenuBarItemMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit.MenuItem"
				},
				{
					"scope": "instance",
					"location": "dijit._MenuBarItemMixin"
				}
			]
		},
		"methods": [
			{
				"constructor": "constructor"
			}
		]
	},
	"dijit.MenuItem": {
		"location": "dijit.MenuItem",
		"resources": [
			"dijit\/MenuItem.js"
		],
		"provides": [
			"dijit.MenuItem"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "A line item in a Menu Widget",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._Contained.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._CssStateMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._Contained"
				},
				{
					"scope": "instance",
					"location": "dijit._CssStateMixin"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "attributeMap",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "label",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Menu text"
			},
			{
				"name": "iconClass",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Class to apply to DOMNode to make it display an icon."
			},
			{
				"name": "accelKey",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Text for the accelerator (shortcut) key combination.\nNote that although Menu can display accelerator keys there\nis no infrastructure to actually catch and execute these\naccelerators."
			},
			{
				"name": "disabled",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "If true, the menu item is disabled.\nIf false, the menu item is enabled."
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_fillContent",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "source",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_onHover",
				"scope": "prototype",
				"summary": "Handler when mouse is moved onto menu item"
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_onUnhover",
				"scope": "prototype",
				"summary": "Handler when mouse is moved off of menu item,\npossibly to a child menu, or maybe to a sibling\nmenuitem or somewhere else entirely."
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_onClick",
				"scope": "prototype",
				"private": true,
				"summary": "Internal handler for click events on MenuItem.",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "onClick",
				"scope": "prototype",
				"tags": "callback",
				"summary": "User defined function to handle clicks",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "focus",
				"scope": "prototype",
				"summary": "Focus on this MenuItem"
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_onFocus",
				"scope": "prototype",
				"summary": "This is called by the focus manager when focus\ngoes to this MenuItem or a child menu."
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_setSelected",
				"scope": "prototype",
				"private": true,
				"summary": "Indicate that this node is the currently selected one",
				"parameters": [
					{
						"name": "selected",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "setLabel",
				"scope": "prototype",
				"summary": "Deprecated.   Use set('label', ...) instead.",
				"parameters": [
					{
						"name": "content",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "setDisabled",
				"scope": "prototype",
				"summary": "Deprecated.   Use set('disabled', bool) instead.",
				"parameters": [
					{
						"name": "disabled",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_setDisabledAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook for attr('disabled', ...) to work.\nEnable or disable this menu item.",
				"parameters": [
					{
						"name": "value",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"name": "_setAccelKeyAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook for attr('accelKey', ...) to work.\nSet accelKey on this menu item.",
				"parameters": [
					{
						"name": "value",
						"type": "String",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.MenuItem.accelKeyNode.style": {
		"location": "dijit.MenuItem.accelKeyNode.style",
		"type": null,
		"properties": [
			{
				"name": "display",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit.MenuItem.accelKeyNode": {
		"location": "dijit.MenuItem.accelKeyNode",
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/MenuItem.js"
				],
				"provides": [
					"dijit.MenuItem"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit.MenuSeparator": {
		"location": "dijit.MenuSeparator",
		"resources": [
			"dijit\/MenuSeparator.js"
		],
		"provides": [
			"dijit.MenuSeparator"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "A line between two menu items",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._Contained.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._Contained"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/MenuSeparator.js"
				],
				"provides": [
					"dijit.MenuSeparator"
				],
				"scope": "prototype",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/MenuSeparator.js"
				],
				"provides": [
					"dijit.MenuSeparator"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/MenuSeparator.js"
				],
				"provides": [
					"dijit.MenuSeparator"
				],
				"name": "isFocusable",
				"scope": "prototype",
				"summary": "Override to always return false",
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			}
		]
	},
	"dijit.PopupMenuBarItem": {
		"location": "dijit.PopupMenuBarItem",
		"resources": [
			"dijit\/PopupMenuBarItem.js"
		],
		"provides": [
			"dijit.PopupMenuBarItem"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit.PopupMenuItem",
		"summary": "Item in a MenuBar like &quot;File&quot; or &quot;Edit&quot;, that spawns a submenu when pressed (or hovered)",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._MenuBarItemMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit.PopupMenuItem"
				},
				{
					"scope": "instance",
					"location": "dijit._MenuBarItemMixin"
				}
			]
		},
		"methods": [
			{
				"constructor": "constructor"
			}
		]
	},
	"dijit.PopupMenuItem": {
		"location": "dijit.PopupMenuItem",
		"resources": [
			"dijit\/PopupMenuItem.js"
		],
		"provides": [
			"dijit.PopupMenuItem"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit.MenuItem",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit.MenuItem"
				}
			]
		},
		"properties": [
			{
				"name": "dropDownContainer",
				"resources": [
					"dijit\/PopupMenuItem.js"
				],
				"provides": [
					"dijit.PopupMenuItem"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "popup",
				"resources": [
					"dijit\/PopupMenuItem.js"
				],
				"provides": [
					"dijit.PopupMenuItem"
				],
				"scope": "prototype",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/PopupMenuItem.js"
				],
				"provides": [
					"dijit.PopupMenuItem"
				],
				"name": "_fillContent",
				"scope": "prototype",
				"summary": "When Menu is declared in markup, this code gets the menu label and\nthe popup widget from the srcNodeRef.",
				"description": "srcNodeRefinnerHTML contains both the menu item text and a popup widget\nThe first part holds the menu item text and the second part is the popup",
				"examples": {
					"example": "\t<div dojoType=\"dijit.PopupMenuItem\">\n\t\t<span>pick me<\/span>\n\t\t<popup> ... <\/popup>\n\t<\/div>"
				}
			},
			{
				"resources": [
					"dijit\/PopupMenuItem.js"
				],
				"provides": [
					"dijit.PopupMenuItem"
				],
				"name": "startup",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/PopupMenuItem.js"
				],
				"provides": [
					"dijit.PopupMenuItem"
				],
				"name": "destroyDescendants",
				"scope": "prototype"
			}
		]
	},
	"dijit.PopupMenuItem.popup.domNode.style": {
		"location": "dijit.PopupMenuItem.popup.domNode.style",
		"type": null,
		"properties": [
			{
				"name": "display",
				"resources": [
					"dijit\/PopupMenuItem.js"
				],
				"provides": [
					"dijit.PopupMenuItem"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.ProgressBar": {
		"location": "dijit.ProgressBar",
		"resources": [
			"dijit\/ProgressBar.js"
		],
		"provides": [
			"dijit.ProgressBar"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "A progress indication widget, showing the amount completed\n(often the percentage completed) of a task.",
		"examples": {
			"example": "\t<div dojoType=\"ProgressBar\"\n\t\t places=\"0\"\n\t\t value=\"...\" maximum=\"...\">\n\t<\/div>"
		},
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				}
			]
		},
		"properties": [
			{
				"name": "progress",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "String",
				"tags": "const",
				"summary": "(Percentage or Number)\nNumber or percentage indicating amount of task completed.\nDeprecated.   Use &quot;value&quot; instead."
			},
			{
				"name": "value",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "(Percentage or Number)\nNumber or percentage indicating amount of task completed.\nWith &quot;%&quot;: percentage value, 0% &lt;= progress &lt;= 100%, or\nwithout &quot;%&quot;: absolute value, 0 &lt;= progress &lt;= maximum.\nInfinity means that the progress bar is indeterminate."
			},
			{
				"name": "maximum",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "Float",
				"tags": "const",
				"summary": "Max sample number"
			},
			{
				"name": "places",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "Number",
				"tags": "const",
				"summary": "Number of places to show in values; 0 by default"
			},
			{
				"name": "indeterminate",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "const",
				"summary": "If false: show progress value (number or percentage).\nIf true: show that a process is underway but that the amount completed is unknown.\nDeprecated.   Use &quot;value&quot; instead."
			},
			{
				"name": "label",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Label on progress bar.   Defaults to percentage for determinate progress bar and\nblank for indeterminate progress bar."
			},
			{
				"name": "name",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "this is the field name (for a form) if set. This needs to be set if you want to use\nthis widget in a dijit.form.Form widget (such as dijit.Dialog)"
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_indeterminateHighContrastImagePath",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "dojo._URL",
				"private": true,
				"summary": "URL to image to use for indeterminate progress bar when display is in high contrast mode"
			},
			{
				"name": "internalProgress",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "domNode",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": null
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "postMixInProperties",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "update",
				"scope": "prototype",
				"private": true,
				"summary": "Internal method to change attributes of ProgressBar, similar to set(hash).  Users should call\nset(&quot;value&quot;, ...) rather than calling this method directly.",
				"examples": {
					"example": "\tmyProgressBar.update({'indeterminate': true});\n\tmyProgressBar.update({'progress': 80});\n\tmyProgressBar.update({'indeterminate': true, label:\"Loading ...\" })"
				},
				"parameters": [
					{
						"name": "attributes",
						"type": "Object",
						"usage": "optional",
						"summary": "May provide progress and\/or maximum properties on this parameter;\nsee attribute specs for details."
					}
				]
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "_setValueAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "v",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "_setLabelAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "label",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "_setIndeterminateAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "indeterminate",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "report",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Generates message to show inside progress bar (normally indicating amount of task completed).\nMay be overridden.",
				"parameters": [
					{
						"name": "percent",
						"type": "float",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"name": "onChange",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Callback fired when progress updates."
			}
		]
	},
	"dijit.ProgressBar.labelNode": {
		"location": "dijit.ProgressBar.labelNode",
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "Object"
			}
		]
	},
	"dijit.ProgressBar.internalProgress.style": {
		"location": "dijit.ProgressBar.internalProgress.style",
		"type": null,
		"properties": [
			{
				"name": "width",
				"resources": [
					"dijit\/ProgressBar.js"
				],
				"provides": [
					"dijit.ProgressBar"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.TitlePane": {
		"location": "dijit.TitlePane",
		"resources": [
			"dijit\/TitlePane.js",
			"dojox\/widget\/TitleGroup.js"
		],
		"provides": [
			"dijit.TitlePane",
			"dojox.widget.TitleGroup"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit.layout.ContentPane",
		"summary": "A pane with a title on top, that can be expanded or collapsed.",
		"description": "An accessible container with a title Heading, and a content\nsection that slides open and closed. TitlePane is an extension to\n`dijit.layout.ContentPane`, providing all the useful content-control aspects from it.",
		"examples": [
			" \t\/\/ load a TitlePane from remote file:\n\tvar foo = new dijit.TitlePane({ href: \"foobar.html\", title:\"Title\" });\n\tfoo.startup();",
			"\t<!-- markup href example: -->\n\t<div dojoType=\"dijit.TitlePane\" href=\"foobar.html\" title=\"Title\"><\/div>",
			"\t<!-- markup with inline data -->\n \t<div dojoType=\"dijit.TitlePane\" title=\"Title\">\n\t\t<p>I am content<\/p>\n\t<\/div>"
		],
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._CssStateMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit.layout.ContentPane"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._CssStateMixin"
				}
			]
		},
		"properties": [
			{
				"name": "title",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Title of the pane"
			},
			{
				"name": "open",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Whether pane is opened or closed."
			},
			{
				"name": "toggleable",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Whether pane can be opened or closed by clicking the title bar."
			},
			{
				"name": "tabIndex",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Tabindex setting for the title (so users can tab to the title then\nuse space\/enter to open\/close the title pane)"
			},
			{
				"name": "duration",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "normal",
				"type": "Integer",
				"summary": "Time in milliseconds to fade in\/fade out"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "The root className to be placed on this widget's domNode."
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "attributeMap",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "hideNode",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "wipeNode",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "_wipeIn",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_wipeOut",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "titleBarNode",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_titleBarClass",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "String",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "_setOpenAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook to make set(&quot;open&quot;, boolean) control the open\/closed state of the pane.",
				"parameters": [
					{
						"name": "open",
						"type": "Boolean",
						"usage": "required",
						"summary": "True if you want to open the pane, false if you want to close it."
					},
					{
						"name": "animate",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "_setToggleableAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook to make set(&quot;toggleable&quot;, boolean) work.",
				"parameters": [
					{
						"name": "canToggle",
						"type": "Boolean",
						"usage": "required",
						"summary": "True to allow user to open\/close pane by clicking title bar."
					}
				]
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "_setContentAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Hook to make set(&quot;content&quot;, ...) work.\nTypically called when an href is loaded.  Our job is to make the animation smooth.",
				"parameters": [
					{
						"name": "content",
						"type": "String|DomNode|Nodelist",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "toggle",
				"scope": "prototype",
				"private": true,
				"summary": "Switches between opened and closed state"
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "_setCss",
				"scope": "prototype",
				"private": true,
				"summary": "Set the open\/close css state for the TitlePane"
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "_onTitleKey",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for when user hits a key",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "_onTitleClick",
				"scope": "prototype",
				"private": true,
				"summary": "Handler when user clicks the title bar"
			},
			{
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"name": "setTitle",
				"scope": "prototype",
				"summary": "Deprecated.  Use set('title', ...) instead.",
				"parameters": [
					{
						"name": "title",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dojox\/widget\/TitleGroup.js"
				],
				"provides": [
					"dojox.widget.TitleGroup"
				],
				"name": "_dxfindParent",
				"scope": "normal",
				"private": true,
				"summary": "TitlePane's MUST be first-children of a TitleGroup. only used by\n<code>dojox.widget.TitleGroup<\/code>. Find a possible parent TitleGroup of a TitlePane"
			}
		]
	},
	"dijit.TitlePane.hideNode.style": {
		"location": "dijit.TitlePane.hideNode.style",
		"type": null,
		"properties": [
			{
				"name": "display",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit.TitlePane.wipeNode.style": {
		"location": "dijit.TitlePane.wipeNode.style",
		"type": null,
		"properties": [
			{
				"name": "display",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit.TitlePane.arrowNodeInner": {
		"location": "dijit.TitlePane.arrowNodeInner",
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/TitlePane.js"
				],
				"provides": [
					"dijit.TitlePane"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit.Toolbar": {
		"location": "dijit.Toolbar",
		"resources": [
			"dijit\/Toolbar.js"
		],
		"provides": [
			"dijit.Toolbar"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "A Toolbar widget, used to hold things like <code>dijit.Editor<\/code> buttons",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._KeyNavContainer.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._KeyNavContainer"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/Toolbar.js"
				],
				"provides": [
					"dijit.Toolbar"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/Toolbar.js"
				],
				"provides": [
					"dijit.Toolbar"
				],
				"scope": "prototype",
				"type": "String"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Toolbar.js"
				],
				"provides": [
					"dijit.Toolbar"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Toolbar.js"
				],
				"provides": [
					"dijit.Toolbar"
				],
				"name": "startup",
				"scope": "prototype"
			}
		]
	},
	"dijit.ToolbarSeparator": {
		"location": "dijit.ToolbarSeparator",
		"resources": [
			"dijit\/ToolbarSeparator.js"
		],
		"provides": [
			"dijit.ToolbarSeparator"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "A spacer between two <code>dijit.Toolbar<\/code> items",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				}
			]
		},
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/ToolbarSeparator.js"
				],
				"provides": [
					"dijit.ToolbarSeparator"
				],
				"scope": "prototype",
				"type": "String"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/ToolbarSeparator.js"
				],
				"provides": [
					"dijit.ToolbarSeparator"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/ToolbarSeparator.js"
				],
				"provides": [
					"dijit.ToolbarSeparator"
				],
				"name": "isFocusable",
				"scope": "prototype",
				"summary": "This widget isn't focusable, so pass along that fact."
			}
		]
	},
	"dijit._MasterTooltip": {
		"location": "dijit._MasterTooltip",
		"resources": [
			"dijit\/Tooltip.js"
		],
		"provides": [
			"dijit.Tooltip"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "Internal widget that holds the actual tooltip markup,\nwhich occurs once per page.\nCalled by Tooltip widgets which are just containers to hold\nthe markup",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				}
			]
		},
		"properties": [
			{
				"name": "duration",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "normal",
				"type": "Integer",
				"summary": "Milliseconds to fade in\/fade out"
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "bgIframe",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "fadeIn",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "fadeOut",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_onDeck",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "isShowingNow",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "bool"
			},
			{
				"name": "aroundNode",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "show",
				"scope": "prototype",
				"summary": "Display tooltip w\/specified contents to right of specified node\n(To left if there's no space on the right, or if rtl == true)",
				"parameters": [
					{
						"name": "innerHTML",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "aroundNode",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "position",
						"type": "String[]",
						"usage": "optional"
					},
					{
						"name": "rtl",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "orient",
				"scope": "prototype",
				"summary": "Private function to set CSS for tooltip node based on which position it's in.\nThis is called by the dijit popup code.   It will also reduce the tooltip's\nwidth to whatever width is available",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "aroundCorner",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "tooltipCorner",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "spaceAvailable",
						"type": "Object",
						"usage": "required"
					},
					{
						"name": "aroundNodeCoords",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onShow",
				"scope": "prototype",
				"summary": "Called at end of fade-in operation"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "hide",
				"scope": "prototype",
				"summary": "Hide the tooltip",
				"parameters": [
					{
						"name": "aroundNode",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onHide",
				"scope": "prototype",
				"summary": "Called at end of fade-out operation"
			}
		]
	},
	"dijit._MasterTooltip.domNode": {
		"location": "dijit._MasterTooltip.domNode",
		"type": null,
		"properties": [
			{
				"name": "width",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._MasterTooltip.containerNode": {
		"location": "dijit._MasterTooltip.containerNode",
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._MasterTooltip.connectorNode.style": {
		"location": "dijit._MasterTooltip.connectorNode.style",
		"type": null,
		"properties": [
			{
				"name": "top",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "bottom",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._MasterTooltip.domNode.style": {
		"location": "dijit._MasterTooltip.domNode.style",
		"type": null,
		"properties": [
			{
				"name": "width",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "filter",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "cssText",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._MasterTooltip.containerNode.style": {
		"location": "dijit._MasterTooltip.containerNode.style",
		"type": null,
		"properties": [
			{
				"name": "overflow",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._MasterTooltip.connectorNode": {
		"location": "dijit._MasterTooltip.connectorNode",
		"type": null,
		"properties": [
			{
				"name": "offsetHeight",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit.Tooltip": {
		"location": "dijit.Tooltip",
		"resources": [
			"dijit\/Tooltip.js"
		],
		"provides": [
			"dijit.Tooltip"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "Pops up a tooltip (a help message) when you hover over a node.",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				}
			]
		},
		"properties": [
			{
				"name": "label",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Text to display in the tooltip.\nSpecified as innerHTML when creating the widget from markup."
			},
			{
				"name": "showDelay",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Number of milliseconds to wait after hovering over\/focusing on the object, before\nthe tooltip is displayed."
			},
			{
				"name": "connectId",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String|String[]",
				"summary": "Id of domNode(s) to attach the tooltip to.\nWhen user hovers over specified dom node, the tooltip will appear."
			},
			{
				"name": "position",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "String[]",
				"summary": "See description of <code>dijit.Tooltip.defaultPosition<\/code> for details on position parameter."
			},
			{
				"name": "_connections",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_connectIds",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			},
			{
				"name": "_focus",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "bool",
				"private": true
			},
			{
				"name": "_showTimer",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_connectNode",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			},
			{
				"name": "defaultPosition",
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"scope": "normal",
				"type": "Array"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_setConnectIdAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Connect to node(s) (specified by id)",
				"parameters": [
					{
						"name": "newId",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "addTarget",
				"scope": "prototype",
				"summary": "Attach tooltip to specified node if it's not already connected",
				"parameters": [
					{
						"name": "node",
						"type": "DOMNODE",
						"usage": "required",
						"summary": "|| String"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "removeTarget",
				"scope": "prototype",
				"summary": "Detach tooltip from specified node",
				"parameters": [
					{
						"name": "node",
						"type": "DOMNODE",
						"usage": "required",
						"summary": "|| String"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "startup",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onTargetMouseEnter",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for mouseenter event on the target node",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onTargetMouseLeave",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for mouseleave event on the target node",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onTargetFocus",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for focus event on the target node",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onTargetBlur",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for blur event on the target node",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onHover",
				"scope": "prototype",
				"private": true,
				"summary": "Despite the name of this method, it actually handles both hover and focus\nevents on the target node, setting a timer to show the tooltip.",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "_onUnHover",
				"scope": "prototype",
				"private": true,
				"summary": "Despite the name of this method, it actually handles both mouseleave and blur\nevents on the target node, hiding the tooltip.",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "open",
				"scope": "prototype",
				"private": true,
				"summary": "Display the tooltip; usually not called directly.",
				"parameters": [
					{
						"name": "target",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "close",
				"scope": "prototype",
				"private": true,
				"summary": "Hide the tooltip or cancel timer for show of tooltip"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "onShow",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when the tooltip is shown",
				"parameters": [
					{
						"name": "target",
						"type": null,
						"usage": "required"
					},
					{
						"name": "position",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "onHide",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when the tooltip is hidden"
			},
			{
				"resources": [
					"dijit\/Tooltip.js"
				],
				"provides": [
					"dijit.Tooltip"
				],
				"name": "uninitialize",
				"scope": "prototype"
			}
		]
	},
	"dijit.TooltipDialog": {
		"location": "dijit.TooltipDialog",
		"resources": [
			"dijit\/TooltipDialog.js"
		],
		"provides": [
			"dijit.TooltipDialog"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit.layout.ContentPane",
		"summary": "Pops up a dialog that appears like a Tooltip",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit.form._FormMixin.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._DialogMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit.layout.ContentPane"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit.form._FormMixin"
				},
				{
					"scope": "instance",
					"location": "dijit._DialogMixin"
				}
			]
		},
		"properties": [
			{
				"name": "title",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Description of tooltip dialog (required for a11y)"
			},
			{
				"name": "doLayout",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Don't change this parameter from the default value.\nThis ContentPane parameter doesn't make sense for TooltipDialog, since TooltipDialog\nis never a child of a layout container, nor can you specify the size of\nTooltipDialog in order to control the size of an inner widget."
			},
			{
				"name": "autofocus",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "A Toggle to modify the default focus behavior of a Dialog, which\nis to focus on the first dialog element after opening the dialog.\nFalse will disable autofocusing. Default: true"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "The root className to use for the various states of this widget"
			},
			{
				"name": "_firstFocusItem",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": "[readonly]",
				"private": true,
				"summary": "DomNode\nThe pointer to the first focusable node in the dialog.\nSet by <code>dijit._DialogMixin._getFocusItems<\/code>."
			},
			{
				"name": "_lastFocusItem",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": "[readonly]",
				"private": true,
				"summary": "DomNode\nThe pointer to which node has focus prior to our dialog.\nSet by <code>dijit._DialogMixin._getFocusItems<\/code>."
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_currentOrientClass",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"name": "_setTitleAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "title",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"name": "orient",
				"scope": "prototype",
				"summary": "Configure widget to be displayed in given position relative to the button.\nThis is called from the dijit.popup code, and should not be called\ndirectly.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					},
					{
						"name": "aroundCorner",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "corner",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"name": "focus",
				"scope": "prototype",
				"summary": "Focus on first field"
			},
			{
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"name": "onOpen",
				"scope": "prototype",
				"summary": "Called when dialog is displayed.\nThis is called from the dijit.popup code, and should not be called directly.",
				"parameters": [
					{
						"name": "pos",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"name": "onClose",
				"scope": "prototype",
				"summary": "Called when dialog is hidden.\nThis is called from the dijit.popup code, and should not be called directly."
			},
			{
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"name": "_onKey",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for keyboard events",
				"description": "Keep keyboard focus in dialog; close dialog on escape key",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.TooltipDialog.containerNode": {
		"location": "dijit.TooltipDialog.containerNode",
		"type": null,
		"properties": [
			{
				"name": "title",
				"resources": [
					"dijit\/TooltipDialog.js"
				],
				"provides": [
					"dijit.TooltipDialog"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit._TreeNode": {
		"location": "dijit._TreeNode",
		"resources": [
			"dijit\/Tree.js"
		],
		"provides": [
			"dijit.Tree"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "Single node within a tree.   This class is used internally\nby Tree and should not be accessed directly.",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._Container.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._Contained.prototype"
				},
				{
					"scope": "prototype",
					"location": "dijit._CssStateMixin.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				},
				{
					"scope": "instance",
					"location": "dijit._Container"
				},
				{
					"scope": "instance",
					"location": "dijit._Contained"
				},
				{
					"scope": "instance",
					"location": "dijit._CssStateMixin"
				}
			]
		},
		"properties": [
			{
				"name": "item",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "dojo.data.Item",
				"tags": "const",
				"summary": "the dojo.data entry this tree represents"
			},
			{
				"name": "isTreeNode",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Indicates that this is a TreeNode.   Used by <code>dijit.Tree<\/code> only,\nshould not be accessed directly."
			},
			{
				"name": "label",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Text of this tree node"
			},
			{
				"name": "isExpandable",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"private": true,
				"summary": "This node has children, so show the expando node (+ sign)"
			},
			{
				"name": "isExpanded",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "readonly",
				"summary": "This node is currently expanded (ie, opened)"
			},
			{
				"name": "state",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String",
				"private": true,
				"summary": "Dynamic loading-related stuff.\nWhen an empty folder node appears, it is &quot;UNCHECKED&quot; first,\nthen after dojo.data query it becomes &quot;LOADING&quot; and, finally &quot;LOADED&quot;"
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "baseClass",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "attributeMap",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_expandDeferred",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_wipeOut",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "indent",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Levels from this node to the root node"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setIndentAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Tell this node how many levels it should be indented",
				"description": "0 for top level nodes, 1 for their children, 2 for their\ngrandchildren, etc.",
				"parameters": [
					{
						"name": "indent",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "markProcessing",
				"scope": "prototype",
				"private": true,
				"summary": "Visually denote that tree is loading data, etc."
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "unmarkProcessing",
				"scope": "prototype",
				"private": true,
				"summary": "Clear markup from markProcessing() call"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_updateItemClasses",
				"scope": "prototype",
				"private": true,
				"summary": "Set appropriate CSS classes for icon and label dom node\n(used to allow for item updates to change respective CSS)",
				"parameters": [
					{
						"name": "item",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_applyClassAndStyle",
				"scope": "prototype",
				"private": true,
				"summary": "Set the appropriate CSS classes and styles for labels, icons and rows.",
				"parameters": [
					{
						"name": "item",
						"type": "The",
						"usage": "required",
						"summary": "data item."
					},
					{
						"name": "lower",
						"type": "The",
						"usage": "required",
						"summary": "lower case attribute to use, e.g. 'icon', 'label' or 'row'."
					},
					{
						"name": "upper",
						"type": "The",
						"usage": "required",
						"summary": "upper case attribute to use, e.g. 'Icon', 'Label' or 'Row'."
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_updateLayout",
				"scope": "prototype",
				"private": true,
				"summary": "Set appropriate CSS classes for this.domNode"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setExpando",
				"scope": "prototype",
				"private": true,
				"summary": "Set the right image for the expando node",
				"parameters": [
					{
						"name": "processing",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "expand",
				"scope": "prototype",
				"summary": "Show my children",
				"return-description": "Deferred that fires when expansion is complete",
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "collapse",
				"scope": "prototype",
				"summary": "Collapse this node (if it's expanded)"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "setChildItems",
				"scope": "prototype",
				"summary": "Sets the child items of this node, removing\/adding nodes\nfrom current children to match specified items[] array.\nAlso, if this.persist == true, expands any children that were previously\nopened.",
				"return-description": "Deferred object that fires after all previously opened children\nhave been expanded again (or fires instantly if there are no such children).",
				"parameters": [
					{
						"name": "items",
						"type": "Object[]",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getTreePath",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getIdentity",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "removeChild",
				"scope": "prototype",
				"parameters": [
					{
						"name": "node",
						"type": "treeNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "makeExpandable",
				"scope": "prototype",
				"summary": "if this node wasn't already showing the expando node,\nturn it into one and call _setExpando()"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onLabelFocus",
				"scope": "prototype",
				"private": true,
				"summary": "Called when this row is focused (possibly programatically)\nNote that we aren't using _onFocus() builtin to dijit\nbecause it's called when focus is moved to a descendant TreeNode.",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "setSelected",
				"scope": "prototype",
				"summary": "A Tree has a (single) currently selected node.\nMark that this node is\/isn't that currently selected node.",
				"description": "In particular, setting a node as selected involves setting tabIndex\nso that when user tabs to the tree, focus will go to that node (only).",
				"parameters": [
					{
						"name": "selected",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "setFocusable",
				"scope": "prototype",
				"summary": "A Tree has a (single) node that's focusable.\nMark that this node is\/isn't that currently focsuable node.",
				"description": "In particular, setting a node as selected involves setting tabIndex\nso that when user tabs to the tree, focus will go to that node (only).",
				"parameters": [
					{
						"name": "selected",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onClick",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for onclick event on a node",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onDblClick",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for ondblclick event on a node",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onMouseEnter",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for onmouseenter event on a node",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onMouseLeave",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for onmouseenter event on a node",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit._TreeNode.cssStateNodes": {
		"location": "dijit._TreeNode.cssStateNodes",
		"resources": [
			"dijit\/Tree.js"
		],
		"provides": [
			"dijit.Tree"
		],
		"properties": [
			{
				"name": "rowNode",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "normal",
				"type": "String"
			},
			{
				"name": "labelNode",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "normal",
				"type": "String"
			}
		]
	},
	"dijit._TreeNode.tree": {
		"location": "dijit._TreeNode.tree",
		"resources": [
			"dijit\/Tree.js"
		],
		"provides": [
			"dijit.Tree"
		],
		"type": null,
		"properties": [
			{
				"name": "model",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "lastFocused",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit._TreeNode.expandoNodeText": {
		"location": "dijit._TreeNode.expandoNodeText",
		"type": null,
		"properties": [
			{
				"name": "innerHTML",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit.Tree": {
		"location": "dijit.Tree",
		"resources": [
			"dijit\/Tree.js"
		],
		"provides": [
			"dijit.Tree"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Widget",
		"summary": "This widget displays hierarchical data from a store.",
		"mixins": {
			"prototype": [
				{
					"scope": "prototype",
					"location": "dijit._Templated.prototype"
				}
			],
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Widget"
				},
				{
					"scope": "instance",
					"location": "dijit._Templated"
				}
			]
		},
		"properties": [
			{
				"name": "store",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String||dojo.data.Store",
				"summary": "Deprecated.  Use &quot;model&quot; parameter instead.\nThe store to get data to display in the tree."
			},
			{
				"name": "model",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "dijit.Tree.model",
				"summary": "Interface to read tree data, get notifications of changes to tree data,\nand for handling drop operations (i.e drag and drop onto the tree)"
			},
			{
				"name": "query",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "anything",
				"summary": "Deprecated.  User should specify query to the model directly instead.\nSpecifies datastore query to return the root item or top items for the tree."
			},
			{
				"name": "label",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Deprecated.  Use dijit.tree.ForestStoreModel directly instead.\nUsed in conjunction with query parameter.\nIf a query is specified (rather than a root node id), and a label is also specified,\nthen a fake root node is created and displayed, with this label."
			},
			{
				"name": "showRoot",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "const",
				"summary": "Should the root node be displayed, or hidden?"
			},
			{
				"name": "childrenAttr",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String[]",
				"summary": "Deprecated.   This information should be specified in the model.\nOne ore more attributes that holds children of a tree node"
			},
			{
				"name": "paths",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String[][]",
				"summary": "or Item[][]\nFull paths from rootNode to selected nodes expressed as array of items or array of ids.\nSince setting the paths may be asynchronous (because ofwaiting on dojo.data), set(&quot;paths&quot;, ...)\nreturns a Deferred to indicate when the set is complete."
			},
			{
				"name": "path",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String[]",
				"summary": "or Item[]\nBackward compatible singular variant of paths."
			},
			{
				"name": "selectedItems",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Item[]",
				"tags": "readonly",
				"summary": "The currently selected items in this tree.\nThis property can only be set (via set('selectedItems', ...)) when that item is already\nvisible in the tree.   (I.e. the tree has already been expanded to show that node.)\nShould generally use <code>paths<\/code> attribute to set the selected items instead."
			},
			{
				"name": "selectedItem",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Item",
				"tags": "readonly",
				"summary": "Backward compatible singular variant of selectedItems."
			},
			{
				"name": "openOnClick",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "If true, clicking a folder node's label will open it, rather than calling onClick()"
			},
			{
				"name": "openOnDblClick",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "If true, double-clicking a folder node's label will open it, rather than calling onDblClick()"
			},
			{
				"name": "templateString",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "persist",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Enables\/disables use of cookies for state saving."
			},
			{
				"name": "autoExpand",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Fully expand the tree on load.   Overrides <code>persist<\/code>."
			},
			{
				"name": "dndController",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Class name to use as as the dnd controller.  Specifying this class enables DnD.\nGenerally you should specify this as &quot;dijit.tree.dndSource&quot;.\nDefault of &quot;dijit.tree._dndSelector&quot; handles selection only (no actual DnD)."
			},
			{
				"name": "dndParams",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Array"
			},
			{
				"name": "dragThreshold",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Number of pixels mouse moves before it's considered the start of a drag operation"
			},
			{
				"name": "betweenThreshold",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Set to a positive value to allow drag and drop &quot;between&quot; nodes.\n\nIf during DnD mouse is over a (target) node but less than betweenThreshold\npixels from the bottom edge, dropping the the dragged node will make it\nthe next sibling of the target node, rather than the child.\n\nSimilarly, if mouse is over a target node but less that betweenThreshold\npixels from the top edge, dropping the dragged node will make it\nthe target node's previous sibling rather than the target node's child."
			},
			{
				"name": "_nodePixelIndent",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Integer",
				"private": true,
				"summary": "Number of pixels to indent tree nodes (relative to parent node).\nDefault is 19 but can be overridden by setting CSS class dijitTreeIndent\nand calling resize() or startup() on tree after it's in the DOM."
			},
			{
				"name": "tree",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object"
			},
			{
				"name": "_itemNodesMap",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "cookieName",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "_loadDeferred",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_v10Compat",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_keyHandlerMap",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			},
			{
				"name": "multiCharSearchDuration",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Number",
				"summary": "If multiple characters are typed where each keystroke happens within\nmultiCharSearchDuration of the previous keystroke,\nsearch for nodes matching all the keystrokes.\n\nFor example, typing &quot;ab&quot; will search for entries starting with\n&quot;ab&quot; unless the delay between &quot;a&quot; and &quot;b&quot; is greater than multiCharSearchDuration."
			},
			{
				"name": "_curSearch",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "lastFocused",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "_openedItemIds",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "rootNode",
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"scope": "prototype",
				"type": "Object"
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "onDndDrop",
				"scope": "prototype",
				"summary": "Parameter to dndController, see <code>dijit.tree.dndSource.onDndDrop<\/code>.\nGenerally this doesn't need to be set."
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "itemCreator",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Returns objects passed to <code>Tree.model.newItem()<\/code> based on DnD nodes\ndropped onto the tree.   Developer must override this method to enable\ndropping from external sources onto this Tree, unless the Tree.model's items\nhappen to look like {id: 123, name: &quot;Apple&quot; } with no other attributes.",
				"description": "For each node in nodes[], which came from source, create a hash of name\/value\npairs to be passed to Tree.model.newItem().  Returns array of those hashes.",
				"return-description": "Object[]\nArray of name\/value hashes for each new item to be added to the Tree, like:\n\t[\n\t\t{ id: 123, label: \"apple\", foo: \"bar\" },\n\t\t{ id: 456, label: \"pear\", zaz: \"bam\" }\n\t]",
				"parameters": [
					{
						"name": "nodes",
						"type": "DomNode[]",
						"usage": "required",
						"summary": "The DOMNodes dragged from the source container"
					},
					{
						"name": "target",
						"type": "DomNode",
						"usage": "required",
						"summary": "The target TreeNode.rowNode"
					},
					{
						"name": "source",
						"type": "dojo.dnd.Source",
						"usage": "required",
						"summary": "The source container the nodes were dragged from, perhaps another Tree or a plain dojo.dnd.Source"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "onDndCancel",
				"scope": "prototype",
				"summary": "Parameter to dndController, see <code>dijit.tree.dndSource.onDndCancel<\/code>.\nGenerally this doesn't need to be set."
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "checkAcceptance",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Checks if the Tree itself can accept nodes from this source",
				"parameters": [
					{
						"name": "source",
						"type": "dijit.tree._dndSource",
						"usage": "required",
						"summary": "The source which provides items"
					},
					{
						"name": "nodes",
						"type": "DOMNode[]",
						"usage": "required",
						"summary": "Array of DOM nodes corresponding to nodes being dropped, dijitTreeRow nodes if\nsource is a dijit.Tree."
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "checkItemAcceptance",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Stub function to be overridden if one wants to check for the ability to drop at the node\/item level",
				"description": "In the base case, this is called to check if target can become a child of source.\nWhen betweenThreshold is set, position=\"before\" or \"after\" means that we\nare asking if the source node can be dropped before\/after the target node.",
				"parameters": [
					{
						"name": "target",
						"type": "DOMNode",
						"usage": "required",
						"summary": "The dijitTreeRoot DOM node inside of the TreeNode that we are dropping on to\nUse dijit.getEnclosingWidget(target) to get the TreeNode."
					},
					{
						"name": "source",
						"type": "dijit.tree.dndSource",
						"usage": "required",
						"summary": "The (set of) nodes we are dropping"
					},
					{
						"name": "position",
						"type": "String",
						"usage": "required",
						"summary": "&quot;over&quot;, &quot;before&quot;, or &quot;after&quot;"
					}
				],
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_publish",
				"scope": "prototype",
				"private": true,
				"summary": "Publish a message for this widget\/topic",
				"parameters": [
					{
						"name": "topicName",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "postMixInProperties",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_store2model",
				"scope": "prototype",
				"private": true,
				"summary": "User specified a store&amp;query rather than model, so create model from store\/query"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "onLoad",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when tree finishes loading and expanding.",
				"description": "If persist == true the loading may encompass many levels of fetches\nfrom the data store, each asynchronous.   Waits for all to finish."
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_load",
				"scope": "prototype",
				"private": true,
				"summary": "Initial load of the tree.\nLoad root node (possibly hidden) and it's children."
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getNodesByItem",
				"scope": "prototype",
				"summary": "Returns all tree nodes that refer to an item",
				"return-description": "Array of tree nodes that refer to passed item",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required",
						"summary": "or id"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setSelectedItemAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required",
						"summary": "or id"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setSelectedItemsAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Select tree nodes related to passed items.\nWARNING: if model use multi-parented items or desired tree node isn't already loaded\nbehavior is undefined. Use set('paths', ...) instead.",
				"parameters": [
					{
						"name": "items",
						"type": "dojo.data.Items",
						"usage": "required",
						"summary": "or ids"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setPathAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Singular variant of _setPathsAttr",
				"parameters": [
					{
						"name": "path",
						"type": "Item[]",
						"usage": "required",
						"summary": "|| String[]"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setPathsAttr",
				"scope": "prototype",
				"private": true,
				"summary": "Select the tree nodes identified by passed paths.",
				"return-description": "Deferred to indicate when the set is complete",
				"parameters": [
					{
						"name": "paths",
						"type": "Item[][]",
						"usage": "required",
						"summary": "Array of arrays of items or item id's"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setSelectedNodeAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_setSelectedNodesAttr",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "nodes",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "mayHaveChildren",
				"scope": "prototype",
				"summary": "Deprecated.   This should be specified on the model itself.\n\nOverridable function to tell if an item has or may have children.\nControls whether or not +\/- expando icon is shown.\n(For efficiency reasons we may not want to check if an element actually\nhas children until user clicks the expando node)",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getItemChildren",
				"scope": "prototype",
				"summary": "Deprecated.   This should be specified on the model itself.\n\nOverridable function that return array of child items of given parent item,\nor if parentItem==null then return top items in tree",
				"parameters": [
					{
						"name": "parentItem",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "onComplete",
						"type": "function(items)",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getLabel",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to get the label for a tree node (given the item)",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getIconClass",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to return CSS class name to display icon",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "opened",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getLabelClass",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to return CSS class name to display label",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "opened",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getRowClass",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to return CSS class name to display row",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "opened",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getIconStyle",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to return CSS styles to display icon",
				"return-description": "Object suitable for input to dojo.style() like {backgroundImage: \"url(...)\"}",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "opened",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getLabelStyle",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to return CSS styles to display label",
				"return-description": "Object suitable for input to dojo.style() like {color: \"red\", background: \"green\"}",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "opened",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getRowStyle",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to return CSS styles to display row",
				"return-description": "Object suitable for input to dojo.style() like {background-color: \"#bbb\"}",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "opened",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "getTooltip",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Overridable function to get the tooltip for a tree node (given the item)",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data.Item",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "String"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onKeyPress",
				"scope": "prototype",
				"private": true,
				"summary": "Translates keypress events into commands for the controller",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onEnterKey",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onDownArrow",
				"scope": "prototype",
				"private": true,
				"summary": "down arrow pressed; get next visible node, set focus there",
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onUpArrow",
				"scope": "prototype",
				"private": true,
				"summary": "Up arrow pressed; move to previous visible node",
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onRightArrow",
				"scope": "prototype",
				"private": true,
				"summary": "Right arrow pressed; go to child node",
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onLeftArrow",
				"scope": "prototype",
				"private": true,
				"summary": "Left arrow pressed.\nIf not collapsed, collapse, else move to parent.",
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onHomeKey",
				"scope": "prototype",
				"private": true,
				"summary": "Home key pressed; get first visible node, and set focus there"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onEndKey",
				"scope": "prototype",
				"private": true,
				"summary": "End key pressed; go to last visible node.",
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onLetterKeyNav",
				"scope": "prototype",
				"private": true,
				"summary": "Called when user presses a prinatable key; search for node starting with recently typed letters.",
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required",
						"summary": "Like { node: TreeNode, key: 'a' } where key is the key the user pressed."
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "isExpandoNode",
				"scope": "prototype",
				"summary": "check whether a dom node is the expandoNode for a particular TreeNode widget",
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					},
					{
						"name": "widget",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onClick",
				"scope": "prototype",
				"private": true,
				"summary": "Translates click events into commands for the controller to process",
				"parameters": [
					{
						"name": "nodeWidget",
						"type": "TreeNode",
						"usage": "required"
					},
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onDblClick",
				"scope": "prototype",
				"private": true,
				"summary": "Translates double-click events into commands for the controller to process",
				"parameters": [
					{
						"name": "nodeWidget",
						"type": "TreeNode",
						"usage": "required"
					},
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onExpandoClick",
				"scope": "prototype",
				"private": true,
				"summary": "User clicked the +\/- icon; expand or collapse my children.",
				"parameters": [
					{
						"name": "message",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "onClick",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Callback when a tree node is clicked",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data",
						"usage": "required"
					},
					{
						"name": "node",
						"type": "TreeNode",
						"usage": "required"
					},
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "onDblClick",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Callback when a tree node is double-clicked",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data",
						"usage": "required"
					},
					{
						"name": "node",
						"type": "TreeNode",
						"usage": "required"
					},
					{
						"name": "evt",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "onOpen",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Callback when a node is opened",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data",
						"usage": "required"
					},
					{
						"name": "node",
						"type": "TreeNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "onClose",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Callback when a node is closed",
				"parameters": [
					{
						"name": "item",
						"type": "dojo.data",
						"usage": "required"
					},
					{
						"name": "node",
						"type": "TreeNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_getNextNode",
				"scope": "prototype",
				"private": true,
				"summary": "Get next visible node",
				"parameters": [
					{
						"name": "node",
						"type": null,
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "_TreeNode"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_getRootOrFirstNode",
				"scope": "prototype",
				"private": true,
				"summary": "Get first visible node"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_collapseNode",
				"scope": "prototype",
				"private": true,
				"summary": "Called when the user has requested to collapse the node",
				"parameters": [
					{
						"name": "node",
						"type": "_TreeNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_expandNode",
				"scope": "prototype",
				"private": true,
				"summary": "Called when the user has requested to expand the node",
				"return-description": "Deferred that fires when the node is loaded and opened and (if persist=true) all it's descendants\nthat were previously opened too",
				"parameters": [
					{
						"name": "node",
						"type": "_TreeNode",
						"usage": "required"
					},
					{
						"name": "recursive",
						"type": "Boolean",
						"usage": "optional",
						"summary": "Internal flag used when _expandNode() calls itself, don't set."
					}
				],
				"return-types": [
					{
						"type": "dojo.Deferred"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "focusNode",
				"scope": "prototype",
				"summary": "Focus on the specified node (which must be visible)",
				"parameters": [
					{
						"name": "node",
						"type": "_tree.Node",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onNodeFocus",
				"scope": "prototype",
				"private": true,
				"summary": "Called when a TreeNode gets focus, either by user clicking\nit, or programatically by arrow key handling code.",
				"description": "It marks that the current node is the selected one, and the previously\nselected node no longer is.",
				"parameters": [
					{
						"name": "node",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onNodeMouseEnter",
				"scope": "prototype",
				"private": true,
				"summary": "Called when mouse is over a node (onmouseenter event),\nthis is monitored by the DND code",
				"parameters": [
					{
						"name": "node",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onNodeMouseLeave",
				"scope": "prototype",
				"private": true,
				"summary": "Called when mouse leaves a node (onmouseleave event),\nthis is monitored by the DND code",
				"parameters": [
					{
						"name": "node",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onItemChange",
				"scope": "prototype",
				"private": true,
				"summary": "Processes notification of a change to an item's scalar values like label",
				"parameters": [
					{
						"name": "item",
						"type": "Item",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onItemChildrenChange",
				"scope": "prototype",
				"private": true,
				"summary": "Processes notification of a change to an item's children",
				"parameters": [
					{
						"name": "parent",
						"type": "dojo.data.Item",
						"usage": "required"
					},
					{
						"name": "newChildrenList",
						"type": "dojo.data.Item[]",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_onItemDelete",
				"scope": "prototype",
				"private": true,
				"summary": "Processes notification of a deletion of an item",
				"parameters": [
					{
						"name": "item",
						"type": "Item",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_initState",
				"scope": "prototype",
				"private": true,
				"summary": "Load in which nodes should be opened automatically"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_state",
				"scope": "prototype",
				"private": true,
				"summary": "Query or set expanded state for an item,",
				"parameters": [
					{
						"name": "item",
						"type": null,
						"usage": "required"
					},
					{
						"name": "expanded",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_saveState",
				"scope": "prototype",
				"private": true,
				"summary": "Create and save a cookie with the currently expanded nodes identifiers"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "destroy",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "destroyRecursive",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "resize",
				"scope": "prototype",
				"parameters": [
					{
						"name": "changeSize",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/Tree.js"
				],
				"provides": [
					"dijit.Tree"
				],
				"name": "_createTreeNode",
				"scope": "prototype",
				"private": true,
				"summary": "creates a TreeNode",
				"description": "Developers can override this method to define their own TreeNode class;\nHowever it will probably be removed in a future release in favor of a way\nof just specifying a widget for the label, rather than one that contains\nthe children too.",
				"parameters": [
					{
						"name": "args",
						"type": "Object",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit._Contained": {
		"location": "dijit._Contained",
		"resources": [
			"dijit\/_Contained.js"
		],
		"provides": [
			"dijit._Contained"
		],
		"type": "Function",
		"classlike": true,
		"summary": "Mixin for widgets that are children of a container widget",
		"examples": {
			"example": " \t\/\/ make a basic custom widget that knows about it's parents\n\tdojo.declare(\"my.customClass\",[dijit._Widget,dijit._Contained],{});"
		},
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_Contained.js"
				],
				"provides": [
					"dijit._Contained"
				],
				"name": "getParent",
				"scope": "prototype",
				"summary": "Returns the parent widget of this widget, assuming the parent\nspecifies isContainer"
			},
			{
				"resources": [
					"dijit\/_Contained.js"
				],
				"provides": [
					"dijit._Contained"
				],
				"name": "_getSibling",
				"scope": "prototype",
				"private": true,
				"summary": "Returns next or previous sibling",
				"parameters": [
					{
						"name": "which",
						"type": "String",
						"usage": "required",
						"summary": "Either &quot;next&quot; or &quot;previous&quot;"
					}
				],
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Contained.js"
				],
				"provides": [
					"dijit._Contained"
				],
				"name": "getPreviousSibling",
				"scope": "prototype",
				"summary": "Returns null if this is the first child of the parent,\notherwise returns the next element sibling to the &quot;left&quot;.",
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Contained.js"
				],
				"provides": [
					"dijit._Contained"
				],
				"name": "getNextSibling",
				"scope": "prototype",
				"summary": "Returns null if this is the last child of the parent,\notherwise returns the next element sibling to the &quot;right&quot;.",
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Contained.js"
				],
				"provides": [
					"dijit._Contained"
				],
				"name": "getIndexInParent",
				"scope": "prototype",
				"summary": "Returns the index of this widget within its container parent.\nIt returns -1 if the parent does not exist, or if the parent\nis not a dijit._Container",
				"return-types": [
					{
						"type": "int"
					}
				]
			}
		]
	},
	"dijit._Container": {
		"location": "dijit._Container",
		"resources": [
			"dijit\/_Container.js"
		],
		"provides": [
			"dijit._Container"
		],
		"type": "Function",
		"classlike": true,
		"summary": "Mixin for widgets that contain a set of widget children.",
		"description": "Use this mixin for widgets that needs to know about and\nkeep track of their widget children. Suitable for widgets like BorderContainer\nand TabContainer which contain (only) a set of child widgets.\n\nIt's not suitable for widgets like ContentPane\nwhich contains mixed HTML (plain DOM nodes in addition to widgets),\nand where contained widgets are not necessarily directly below\nthis.containerNode.   In that case calls like addChild(node, position)\nwouldn't make sense.",
		"properties": [
			{
				"name": "isContainer",
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Indicates that this widget acts as a &quot;parent&quot; to the descendant widgets.\nWhen the parent is started it will call startup() on the child widgets.\nSee also <code>isLayoutContainer<\/code>."
			},
			{
				"name": "containerNode",
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"scope": "prototype",
				"type": null
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "addChild",
				"scope": "prototype",
				"summary": "Makes the given widget a child of this widget.",
				"description": "Inserts specified child widget's dom node as a child of this widget's\ncontainer node, and possibly does other processing (such as layout).",
				"parameters": [
					{
						"name": "widget",
						"type": "dijit._Widget",
						"usage": "required"
					},
					{
						"name": "insertIndex",
						"type": "int",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "removeChild",
				"scope": "prototype",
				"summary": "Removes the passed widget instance from this widget but does\nnot destroy it.  You can also pass in an integer indicating\nthe index within the container to remove",
				"parameters": [
					{
						"name": "widget",
						"type": "Widget",
						"usage": "required",
						"summary": "or int"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "hasChildren",
				"scope": "prototype",
				"summary": "Returns true if widget has children, i.e. if this.containerNode contains something.",
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "destroyDescendants",
				"scope": "prototype",
				"summary": "Destroys all the widgets inside this.containerNode,\nbut not this widget itself",
				"parameters": [
					{
						"name": "preserveDom",
						"type": "Boolean",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "_getSiblingOfChild",
				"scope": "prototype",
				"private": true,
				"summary": "Get the next or previous widget sibling of child",
				"parameters": [
					{
						"name": "child",
						"type": "dijit._Widget",
						"usage": "required"
					},
					{
						"name": "dir",
						"type": "int",
						"usage": "required",
						"summary": "if 1, get the next sibling\nif -1, get the previous sibling"
					}
				],
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "getIndexOfChild",
				"scope": "prototype",
				"summary": "Gets the index of the child in this container or -1 if not found",
				"parameters": [
					{
						"name": "child",
						"type": "dijit._Widget",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "int"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Container.js"
				],
				"provides": [
					"dijit._Container"
				],
				"name": "startup",
				"scope": "prototype",
				"summary": "Called after all the widgets have been instantiated and their\ndom nodes have been inserted somewhere under dojo.doc.body.\n\nWidgets should override this method to do any initialization\ndependent on other widgets existing, and then call\nthis superclass method to finish things off.\n\nstartup() in subclasses shouldn't do anything\nsize related because the size of the widget hasn't been set yet."
			}
		]
	},
	"dijit._CssStateMixin": {
		"location": "dijit._CssStateMixin",
		"resources": [
			"dijit\/_CssStateMixin.js"
		],
		"provides": [
			"dijit._CssStateMixin"
		],
		"type": "Function",
		"classlike": true,
		"summary": "Mixin for widgets to set CSS classes on the widget DOM nodes depending on hover\/mouse press\/focus\nstate changes, and also higher-level state changes such becoming disabled or selected.",
		"description": "By mixing this class into your widget, and setting the this.baseClass attribute, it will automatically\nmaintain CSS classes on the widget root node (this.domNode) depending on hover,\nactive, focus, etc. state.   Ex: with a baseClass of dijitButton, it will apply the classes\ndijitButtonHovered and dijitButtonActive, as the user moves the mouse over the widget and clicks it.\n\nIt also sets CSS like dijitButtonDisabled based on widget semantic state.\n\nBy setting the cssStateNodes attribute, a widget can also track events on subnodes (like buttons\nwithin the widget).",
		"properties": [
			{
				"name": "cssStateNodes",
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"scope": "prototype",
				"type": "Object",
				"summary": "List of sub-nodes within the widget that need CSS classes applied on mouse hover\/press and focus\n.\nEach entry in the hash is a an attachpoint names (like &quot;upArrowButton&quot;) mapped to a CSS class names\n(like &quot;dijitUpArrowButton&quot;). Example:\n\t\t{\n\t\t\t&quot;upArrowButton&quot;: &quot;dijitUpArrowButton&quot;,\n\t\t\t&quot;downArrowButton&quot;: &quot;dijitDownArrowButton&quot;\n\t\t}\nThe above will set the CSS class dijitUpArrowButton to the this.upArrowButton DOMNode when it\nis hovered, etc."
			},
			{
				"name": "hovering",
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "readonly",
				"summary": "True if cursor is over this widget"
			},
			{
				"name": "active",
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "readonly",
				"summary": "True if mouse was pressed while over this widget, and hasn't been released yet"
			},
			{
				"name": "_mouseDown",
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_stateClasses",
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"name": "_applyAttributes",
				"scope": "prototype",
				"private": true
			},
			{
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"name": "_cssMouseEvent",
				"scope": "prototype",
				"private": true,
				"summary": "Sets hovering and active properties depending on mouse state,\nwhich triggers _setStateClass() to set appropriate CSS classes for this.domNode.",
				"parameters": [
					{
						"name": "event",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"name": "_setStateClass",
				"scope": "prototype",
				"private": true,
				"summary": "Update the visual state of the widget by setting the css classes on this.domNode\n(or this.stateNode if defined) by combining this.baseClass with\nvarious suffixes that represent the current widget state(s).",
				"description": "In the case where a widget has multiple\nstates, it sets the class based on all possible\ncombinations.  For example, an invalid form widget that is being hovered\nwill be \"dijitInput dijitInputInvalid dijitInputHover dijitInputInvalidHover\".\n\nThe widget may have one or more of the following states, determined\nby this.state, this.checked, this.valid, and this.selected:\n- Error - ValidationTextBox sets this.state to \"Error\" if the current input value is invalid\n- Incomplete - ValidationTextBox sets this.state to \"Incomplete\" if the current input value is not finished yet\n- Checked - ex: a checkmark or a ToggleButton in a checked state, will have this.checked==true\n- Selected - ex: currently selected tab will have this.selected==true\n\nIn addition, it may have one or more of the following states,\nbased on this.disabled and flags set in _onMouse (this.active, this.hovering) and from focus manager (this.focused):\n- Disabled\t- if the widget is disabled\n- Active\t\t- if the mouse (or space\/enter key?) is being pressed down\n- Focused\t\t- if the widget has focus\n- Hover\t\t- if the mouse is over the widget"
			},
			{
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"name": "_trackMouseState",
				"scope": "prototype",
				"private": true,
				"summary": "Track mouse\/focus events on specified node and set CSS class on that node to indicate\ncurrent state.   Usually not called directly, but via cssStateNodes attribute.",
				"description": "Given class=foo, will set the following CSS class on the node\n- fooActive: if the user is currently pressing down the mouse button while over the node\n- fooHover: if the user is hovering the mouse over the node, but not pressing down a button\n- fooFocus: if the node is focused\n\nNote that it won't set any classes if the widget is disabled.",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required",
						"summary": "Should be a sub-node of the widget, not the top node (this.domNode), since the top node\nis handled specially and automatically just by mixing in this class."
					},
					{
						"name": "clazz",
						"type": "String",
						"usage": "required",
						"summary": "CSS class name (ex: dijitSliderUpArrow)."
					}
				]
			}
		]
	},
	"dijit._CssStateMixin.stateNode": {
		"location": "dijit._CssStateMixin.stateNode",
		"resources": [
			"dijit\/_CssStateMixin.js"
		],
		"provides": [
			"dijit._CssStateMixin"
		],
		"properties": [
			{
				"name": "className",
				"resources": [
					"dijit\/_CssStateMixin.js"
				],
				"provides": [
					"dijit._CssStateMixin"
				],
				"scope": "prototype",
				"type": "Object"
			}
		]
	},
	"dijit._DialogMixin": {
		"location": "dijit._DialogMixin",
		"resources": [
			"dijit\/_DialogMixin.js"
		],
		"provides": [
			"dijit._DialogMixin"
		],
		"type": "Function",
		"classlike": true,
		"summary": "This provides functions useful to Dialog and TooltipDialog",
		"properties": [
			{
				"name": "attributeMap",
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"scope": "normal",
				"type": null
			},
			{
				"name": "_firstFocusItem",
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_lastFocusItem",
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"name": "execute",
				"scope": "prototype",
				"summary": "Callback when the user hits the submit button.\nOverride this method to handle Dialog execution.",
				"description": "After the user has pressed the submit button, the Dialog\nfirst calls onExecute() to notify the container to hide the\ndialog and restore focus to wherever it used to be.\n\n*Then* this method is called.\ntype:\ncallback",
				"parameters": [
					{
						"name": "formContents",
						"type": "Object",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"name": "onCancel",
				"scope": "prototype",
				"summary": "Called when user has pressed the Dialog's cancel button, to notify container.",
				"description": "Developer shouldn't override or connect to this method;\nit's a private communication device between the TooltipDialog\nand the thing that opened it (ex: `dijit.form.DropDownButton`)\ntype:\nprotected"
			},
			{
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"name": "onExecute",
				"scope": "prototype",
				"summary": "Called when user has pressed the dialog's OK button, to notify container.",
				"description": "Developer shouldn't override or connect to this method;\nit's a private communication device between the TooltipDialog\nand the thing that opened it (ex: `dijit.form.DropDownButton`)\ntype:\nprotected"
			},
			{
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"name": "_onSubmit",
				"scope": "prototype",
				"private": true,
				"summary": "Callback when user hits submit button\ntype:\nprotected"
			},
			{
				"resources": [
					"dijit\/_DialogMixin.js"
				],
				"provides": [
					"dijit._DialogMixin"
				],
				"name": "_getFocusItems",
				"scope": "prototype",
				"summary": "Finds focusable items in dialog,\nand sets this._firstFocusItem and this._lastFocusItem"
			}
		]
	},
	"dijit._HasDropDown": {
		"location": "dijit._HasDropDown",
		"resources": [
			"dijit\/_HasDropDown.js"
		],
		"provides": [
			"dijit._HasDropDown"
		],
		"type": "Function",
		"classlike": true,
		"summary": "Mixin for widgets that need drop down ability.",
		"properties": [
			{
				"name": "_buttonNode",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "DomNode",
				"summary": "The button\/icon\/node to click to display the drop down.\nCan be set via a dojoAttachPoint assignment.\nIf missing, then either focusNode or domNode (if focusNode is also missing) will be used."
			},
			{
				"name": "_arrowWrapperNode",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "DomNode",
				"summary": "Will set CSS class dijitUpArrow, dijitDownArrow, dijitRightArrow etc. on this node depending\non where the drop down is set to be positioned.\nCan be set via a dojoAttachPoint assignment.\nIf missing, then _buttonNode will be used."
			},
			{
				"name": "_popupStateNode",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "DomNode",
				"summary": "The node to set the popupActive class on.\nCan be set via a dojoAttachPoint assignment.\nIf missing, then focusNode or _buttonNode (if focusNode is missing) will be used."
			},
			{
				"name": "_aroundNode",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "DomNode",
				"summary": "The node to display the popup around.\nCan be set via a dojoAttachPoint assignment.\nIf missing, then domNode will be used."
			},
			{
				"name": "autoWidth",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Set to true to make the drop down at least as wide as this\nwidget.  Set to false if the drop down should just be its\ndefault width"
			},
			{
				"name": "forceWidth",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Set to true to make the drop down exactly as wide as this\nwidget.  Overrides autoWidth."
			},
			{
				"name": "maxHeight",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "The max height for our dropdown.\nAny dropdown taller than this will have scrollbars.\nSet to 0 for no max height, or -1 to limit height to available space in viewport"
			},
			{
				"name": "_stopClickEvents",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Boolean",
				"private": true,
				"summary": "When set to false, the click events will not be stopped, in\ncase you want to use them in your subwidget"
			},
			{
				"name": "_docHandler",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_preparedNode",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_explicitDDWidth",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_explicitDDHeight",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_opened",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "bool",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "_onDropDownMouseDown",
				"scope": "prototype",
				"private": true,
				"summary": "Callback when the user mousedown's on the arrow icon",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "_onDropDownMouseUp",
				"scope": "prototype",
				"private": true,
				"summary": "Callback when the user lifts their mouse after mouse down on the arrow icon.\nIf the drop is a simple menu and the mouse is over the menu, we execute it, otherwise, we focus our\ndropDown node.  If the event is missing, then we are not\na mouseup event.\n\nThis is useful for the common mouse movement pattern\nwith native browser &lt;select&gt; nodes:\n1. mouse down on the select node (probably on the arrow)\n2. move mouse to a menu item while holding down the mouse button\n3. mouse up.  this selects the menu item as though the user had clicked it.",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "_onDropDownClick",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "buildRendering",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "postCreate",
				"scope": "prototype",
				"summary": "set up nodes and connect our mouse and keypress events"
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "destroy",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "_onKey",
				"scope": "prototype",
				"private": true,
				"summary": "Callback when the user presses a key while focused on the button node",
				"parameters": [
					{
						"name": "e",
						"type": "Event",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"private": true,
				"summary": "Called magically when focus has shifted away from this widget and it's dropdown"
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "isLoaded",
				"scope": "prototype",
				"summary": "Returns whether or not the dropdown is loaded.  This can\nbe overridden in order to force a call to loadDropDown()."
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "loadDropDown",
				"scope": "prototype",
				"summary": "Loads the data for the dropdown, and at some point, calls\nthe given callback.   This is basically a callback when the\nuser presses the down arrow button to open the drop down.",
				"parameters": [
					{
						"name": "loadCallback",
						"type": "Function",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "toggleDropDown",
				"scope": "prototype",
				"summary": "Callback when the user presses the down arrow button or presses\nthe down arrow key to open\/close the drop down.\nToggle the drop-down widget; if it is up, close it, if not, open it"
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "openDropDown",
				"scope": "prototype",
				"summary": "Opens the dropdown for this widget.   To be called only when this.dropDown\nhas been created and is ready to display (ie, it's data is loaded).",
				"return-description": "return value of dijit.popup.open()"
			},
			{
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"name": "closeDropDown",
				"scope": "prototype",
				"summary": "Closes the drop down on this widget",
				"parameters": [
					{
						"name": "focus",
						"type": "Boolean",
						"usage": "required",
						"summary": "If true, refocuses the button widget"
					}
				]
			}
		]
	},
	"dijit._HasDropDown.dropDownPosition": {
		"location": "dijit._HasDropDown.dropDownPosition",
		"resources": [
			"dijit\/_HasDropDown.js"
		],
		"provides": [
			"dijit._HasDropDown"
		],
		"type": "String[]",
		"tags": "const",
		"summary": "This variable controls the position of the drop down.\nIt's an array of strings with the following values:\n\n* before: places drop down to the left of the target node\/widget, or to the right in\nthe case of RTL scripts like Hebrew and Arabic\n* after: places drop down to the right of the target node\/widget, or to the left in\nthe case of RTL scripts like Hebrew and Arabic\n* above: drop down goes above target node\n* below: drop down goes below target node\n\nThe list is positions is tried, in order, until a position is found where the drop down fits\nwithin the viewport.",
		"properties": [
			{
				"name": 0,
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": "String"
			}
		]
	},
	"dijit._HasDropDown.dropDown": {
		"location": "dijit._HasDropDown.dropDown",
		"resources": [
			"dijit\/_HasDropDown.js"
		],
		"provides": [
			"dijit._HasDropDown"
		],
		"type": "Widget",
		"summary": "The widget to display as a popup.  This widget *must* be\ndefined before the startup function is called.",
		"properties": [
			{
				"name": "domNode",
				"resources": [
					"dijit\/_HasDropDown.js"
				],
				"provides": [
					"dijit._HasDropDown"
				],
				"scope": "prototype",
				"type": null
			}
		]
	},
	"dijit._KeyNavContainer": {
		"location": "dijit._KeyNavContainer",
		"resources": [
			"dijit\/_KeyNavContainer.js"
		],
		"provides": [
			"dijit._KeyNavContainer"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._Container",
		"summary": "A _Container with keyboard navigation of its children.",
		"description": "To use this mixin, call connectKeyNavHandlers() in\npostCreate() and call startupKeyNavChildren() in startup().\nIt provides normalized keyboard and focusing code for Container\nwidgets.",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._Container"
				}
			]
		},
		"properties": [
			{
				"name": "focusedChild",
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"scope": "prototype",
				"type": "Widget",
				"summary": "The currently focused child widget, or null if there isn't one"
			},
			{
				"name": "tabIndex",
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Tab index of the container; same as HTML tabIndex attribute.\nNote then when user tabs into the container, focus is immediately\nmoved to the first item in the container."
			},
			{
				"name": "_keyNavCodes",
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "connectKeyNavHandlers",
				"scope": "prototype",
				"summary": "Call in postCreate() to attach the keyboard handlers\nto the container.\npreKeyCodes: dojo.keys[]\nKey codes for navigating to the previous child.",
				"parameters": [
					{
						"name": "prevKeyCodes",
						"type": "dojo.keys[]",
						"usage": "required"
					},
					{
						"name": "nextKeyCodes",
						"type": "dojo.keys[]",
						"usage": "required",
						"summary": "Key codes for navigating to the next child."
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "startupKeyNavChildren",
				"scope": "prototype",
				"summary": "Call in startup() to set child tabindexes to -1"
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "addChild",
				"scope": "prototype",
				"summary": "Add a child to our _Container",
				"parameters": [
					{
						"name": "widget",
						"type": "dijit._Widget",
						"usage": "required"
					},
					{
						"name": "insertIndex",
						"type": "int",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "focus",
				"scope": "prototype",
				"summary": "Default focus() implementation: focus the first child."
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "focusFirstChild",
				"scope": "prototype",
				"summary": "Focus the first focusable child in the container."
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "focusLastChild",
				"scope": "prototype",
				"summary": "Focus the last focusable child in the container."
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "focusNext",
				"scope": "prototype",
				"summary": "Focus the next widget"
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "focusPrev",
				"scope": "prototype",
				"summary": "Focus the last focusable node in the previous widget\n(ex: go to the ComboButton icon section rather than button section)"
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "focusChild",
				"scope": "prototype",
				"summary": "Focus widget.",
				"parameters": [
					{
						"name": "widget",
						"type": "dijit._Widget",
						"usage": "required",
						"summary": "Reference to container's child widget"
					},
					{
						"name": "last",
						"type": "Boolean",
						"usage": "required",
						"summary": "If true and if widget has multiple focusable nodes, focus the\nlast one instead of the first one"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_startupChild",
				"scope": "prototype",
				"private": true,
				"summary": "Setup for each child widget",
				"description": "Sets tabIndex=-1 on each child, so that the tab key will\nleave the container rather than visiting each child.",
				"parameters": [
					{
						"name": "widget",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_onContainerFocus",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for when the container gets focus",
				"description": "Initially the container itself has a tabIndex, but when it gets\nfocus, switch focus to first child...",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"private": true,
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_onContainerKeypress",
				"scope": "prototype",
				"private": true,
				"summary": "When a key is pressed, if it's an arrow key etc. then\nit's handled here.",
				"parameters": [
					{
						"name": "evt",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_onChildBlur",
				"scope": "prototype",
				"summary": "Called when focus leaves a child widget to go\nto a sibling widget.",
				"parameters": [
					{
						"name": "widget",
						"type": "dijit._Widget",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_getFirstFocusableChild",
				"scope": "prototype",
				"private": true,
				"summary": "Returns first child that can be focused",
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_getLastFocusableChild",
				"scope": "prototype",
				"private": true,
				"summary": "Returns last child that can be focused",
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			},
			{
				"resources": [
					"dijit\/_KeyNavContainer.js"
				],
				"provides": [
					"dijit._KeyNavContainer"
				],
				"name": "_getNextFocusableChild",
				"scope": "prototype",
				"private": true,
				"summary": "Returns the next or previous focusable child, compared\nto &quot;child&quot;",
				"parameters": [
					{
						"name": "child",
						"type": "Widget",
						"usage": "required",
						"summary": "The current widget"
					},
					{
						"name": "dir",
						"type": "Integer",
						"usage": "required",
						"summary": "* 1 = after\n* -1 = before"
					}
				],
				"return-types": [
					{
						"type": "dijit._Widget"
					}
				]
			}
		]
	},
	"dijit._PaletteMixin": {
		"location": "dijit._PaletteMixin",
		"resources": [
			"dijit\/_PaletteMixin.js"
		],
		"provides": [
			"dijit._PaletteMixin"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._CssStateMixin",
		"summary": "A keyboard accessible palette, for picking a color\/emoticon\/etc.",
		"description": "A mixin for a grid showing various entities, so the user can pick a certain entity.",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._CssStateMixin"
				}
			]
		},
		"properties": [
			{
				"name": "defaultTimeout",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "Number",
				"summary": "Number of milliseconds before a held key or button becomes typematic"
			},
			{
				"name": "timeoutChangeRate",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "Number",
				"summary": "Fraction of time used to change the typematic timer between events\n1.0 means that each typematic event fires at defaultTimeout intervals\n&lt; 1.0 means that each typematic event fires at an increasing faster rate"
			},
			{
				"name": "value",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Currently selected color\/emoticon\/etc."
			},
			{
				"name": "_selectedCell",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "Integer",
				"private": true,
				"summary": "Index of the currently selected cell. Initially, none selected"
			},
			{
				"name": "_currentFocus",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "DomNode",
				"private": true,
				"summary": "The currently focused cell (if the palette itself has focus), or otherwise\nthe cell to be focused when the palette itself gets focus.\nDifferent from value, which represents the selected (i.e. clicked) cell."
			},
			{
				"name": "_xDim",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "This is the number of cells horizontally across."
			},
			{
				"name": "_yDim",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "This is the number of cells vertically down."
			},
			{
				"name": "tabIndex",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Widget tab index."
			},
			{
				"name": "cellClass",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "CSS class applied to each cell in the palette"
			},
			{
				"name": "dyeClass",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Name of javascript class for Object created for each cell of the palette.\ndyeClass should implements dijit.Dye interface"
			},
			{
				"name": "_cells",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": "Array",
				"private": true
			},
			{
				"name": "_blankGif",
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"scope": "prototype",
				"type": null,
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "_preparePalette",
				"scope": "prototype",
				"private": true,
				"summary": "Subclass must call _preparePalette() from postCreate(), passing in the tooltip\nfor each cell",
				"parameters": [
					{
						"name": "choices",
						"type": "String[][]",
						"usage": "required",
						"summary": "id's for each cell of the palette, used to create Dye JS object for each cell"
					},
					{
						"name": "titles",
						"type": "String[]",
						"usage": "required",
						"summary": "Localized tooltip for each cell"
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "postCreate",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "focus",
				"scope": "prototype",
				"summary": "Focus this widget.  Puts focus on the most recently focused cell."
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "_onCellClick",
				"scope": "prototype",
				"private": true,
				"summary": "Handler for click, enter key &amp; space key. Selects the cell.",
				"parameters": [
					{
						"name": "evt",
						"type": "Event",
						"usage": "required",
						"summary": "The event."
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "_setCurrent",
				"scope": "prototype",
				"summary": "Sets which node is the focused cell.",
				"description": "At any point in time there's exactly one\ncell with tabIndex != -1.   If focus is inside the palette then\nfocus is on that cell.\n\nAfter calling this method, arrow key handlers and mouse click handlers\nshould focus the cell in a setTimeout().",
				"parameters": [
					{
						"name": "node",
						"type": "DomNode",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "_setValueAttr",
				"scope": "prototype",
				"summary": "This selects a cell. It triggers the onChange event.",
				"parameters": [
					{
						"name": "value",
						"type": "String",
						"usage": "required",
						"summary": "value of the cell to select"
					},
					{
						"name": "priorityChange",
						"type": "Optional",
						"usage": "required",
						"summary": "parameter used to tell the select whether or not to fire\nonChange event."
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "onChange",
				"scope": "prototype",
				"summary": "Callback when a cell is selected.",
				"parameters": [
					{
						"name": "value",
						"type": "String",
						"usage": "required",
						"summary": "Value corresponding to cell."
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "_navigateByKey",
				"scope": "prototype",
				"private": true,
				"summary": "This is the callback for typematic.\nIt changes the focus and the highlighed cell.",
				"parameters": [
					{
						"name": "increment",
						"type": "How",
						"usage": "required",
						"summary": "much the key is navigated."
					},
					{
						"name": "typeCount",
						"type": "How",
						"usage": "required",
						"summary": "many times typematic has fired."
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "_getDye",
				"scope": "prototype",
				"private": true,
				"summary": "Get JS object for given cell DOMNode",
				"parameters": [
					{
						"name": "cell",
						"type": "DomNode",
						"usage": "required"
					}
				]
			}
		]
	},
	"dijit.Dye": {
		"location": "dijit.Dye",
		"resources": [
			"dijit\/_PaletteMixin.js"
		],
		"provides": [
			"dijit._PaletteMixin"
		],
		"type": "Function",
		"classlike": true,
		"summary": "Interface for the JS Object associated with a palette cell (i.e. DOMNode)",
		"methods": [
			{
				"constructor": "constructor",
				"parameters": [
					{
						"name": "alias",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "constructor",
				"scope": "prototype",
				"summary": "Initialize according to value or alias like &quot;white&quot;",
				"parameters": [
					{
						"name": "alias",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "getValue",
				"scope": "prototype",
				"summary": "Return &quot;value&quot; of cell; meaning of &quot;value&quot; varies by subclass.",
				"description": "For example color hex value, emoticon ascii value etc, entity hex value."
			},
			{
				"resources": [
					"dijit\/_PaletteMixin.js"
				],
				"provides": [
					"dijit._PaletteMixin"
				],
				"name": "fillCell",
				"scope": "prototype",
				"summary": "Add cell DOMNode inner structure",
				"parameters": [
					{
						"name": "cell",
						"type": "DomNode",
						"usage": "required",
						"summary": "The surrounding cell"
					},
					{
						"name": "blankGif",
						"type": "String",
						"usage": "required",
						"summary": "URL for blank cell image"
					}
				]
			}
		]
	},
	"dijit._Widget": {
		"location": "dijit._Widget",
		"resources": [
			"dijit\/_Templated.js",
			"dijit\/_Widget.js",
			"dijit\/layout\/BorderContainer.js",
			"dijit\/layout\/LayoutContainer.js",
			"dijit\/layout\/SplitContainer.js",
			"dijit\/layout\/StackContainer.js",
			"dojox\/form\/manager\/_Mixin.js",
			"dojox\/layout\/GridContainerLite.js",
			"dojox\/layout\/RadioGroup.js",
			"dojox\/layout\/TableContainer.js",
			"dojox\/layout\/ToggleSplitter.js",
			"dojox\/mdnd\/AreaManager.js"
		],
		"provides": [
			"dijit._Templated",
			"dijit._Widget",
			"dijit.layout.BorderContainer",
			"dijit.layout.LayoutContainer",
			"dijit.layout.SplitContainer",
			"dijit.layout.StackContainer",
			"dojox.form.manager._Mixin",
			"dojox.layout.GridContainerLite",
			"dojox.layout.RadioGroup",
			"dojox.layout.TableContainer",
			"dojox.layout.ToggleSplitter",
			"dojox.mdnd.AreaManager"
		],
		"type": "Function",
		"classlike": true,
		"superclass": "dijit._WidgetBase",
		"summary": "Base class for all Dijit widgets.\n\nExtends _WidgetBase, adding support for:\n- deferred connections\nA call like dojo.connect(myWidget, &quot;onMouseMove&quot;, func)\nwill essentially do a dojo.connect(myWidget.domNode, &quot;onMouseMove&quot;, func)\n- ondijitclick\nSupport new dojoAttachEvent=&quot;ondijitclick: ...&quot; that is triggered by a mouse click or a SPACE\/ENTER keypress\n- focus related functions\nIn particular, the onFocus()\/onBlur() callbacks.   Driven internally by\ndijit\/_base\/focus.js.\n- deprecated methods\n- onShow(), onHide(), onClose()\n\nAlso, by loading code in dijit\/_base, turns on:\n- browser sniffing (putting browser id like .dj_ie on &lt;html&gt; node)\n- high contrast mode sniffing (add .dijit_a11y class to &lt;body&gt; if machine is in high contrast mode)",
		"mixins": {
			"instance": [
				{
					"scope": "instance",
					"location": "dijit._WidgetBase"
				}
			]
		},
		"properties": [
			{
				"name": "dojoAttachEvent",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "dojoAttachPoint",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "waiRole",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "waiState",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "focused",
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "readonly",
				"summary": "This widget or a widget it contains has focus, or is &quot;active&quot; because\nit was recently clicked."
			},
			{
				"name": "nodesWithKeyClick",
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"scope": "prototype",
				"type": "String[]",
				"private": true,
				"summary": "List of nodes that correctly handle click events via native browser support,\nand don't need dijit's help"
			},
			{
				"name": "region",
				"resources": [
					"dijit\/layout\/BorderContainer.js"
				],
				"provides": [
					"dijit.layout.BorderContainer"
				],
				"scope": "prototype",
				"type": "String",
				"tags": "const",
				"summary": "Parameter for children of <code>dijit.layout.BorderContainer<\/code>.\nValues: &quot;top&quot;, &quot;bottom&quot;, &quot;leading&quot;, &quot;trailing&quot;, &quot;left&quot;, &quot;right&quot;, &quot;center&quot;.\nSee the <code>dijit.layout.BorderContainer<\/code> description for details."
			},
			{
				"name": "layoutPriority",
				"resources": [
					"dijit\/layout\/BorderContainer.js"
				],
				"provides": [
					"dijit.layout.BorderContainer"
				],
				"scope": "prototype",
				"type": "Number",
				"tags": "const",
				"summary": "Parameter for children of <code>dijit.layout.BorderContainer<\/code>.\nChildren with a higher layoutPriority will be placed closer to the BorderContainer center,\nbetween children with a lower layoutPriority."
			},
			{
				"name": "splitter",
				"resources": [
					"dijit\/layout\/BorderContainer.js"
				],
				"provides": [
					"dijit.layout.BorderContainer"
				],
				"scope": "prototype",
				"type": "Boolean",
				"tags": "const",
				"summary": "Parameter for child of <code>dijit.layout.BorderContainer<\/code> where region != &quot;center&quot;.\nIf true, enables user to resize the widget by putting a draggable splitter between\nthis widget and the region=center widget."
			},
			{
				"name": "minSize",
				"resources": [
					"dijit\/layout\/BorderContainer.js"
				],
				"provides": [
					"dijit.layout.BorderContainer"
				],
				"scope": "prototype",
				"type": "Number",
				"tags": "const",
				"summary": "Parameter for children of <code>dijit.layout.BorderContainer<\/code>.\nSpecifies a minimum size (in pixels) for this widget when resized by a splitter."
			},
			{
				"name": "maxSize",
				"resources": [
					"dijit\/layout\/BorderContainer.js"
				],
				"provides": [
					"dijit.layout.BorderContainer"
				],
				"scope": "normal",
				"type": "Number",
				"tags": "const",
				"summary": "Parameter for children of <code>dijit.layout.BorderContainer<\/code>.\nSpecifies a maximum size (in pixels) for this widget when resized by a splitter."
			},
			{
				"name": "layoutAlign",
				"resources": [
					"dijit\/layout\/LayoutContainer.js"
				],
				"provides": [
					"dijit.layout.LayoutContainer"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "&quot;none&quot;, &quot;left&quot;, &quot;right&quot;, &quot;bottom&quot;, &quot;top&quot;, and &quot;client&quot;.\nSee the LayoutContainer description for details on this parameter."
			},
			{
				"name": "sizeMin",
				"resources": [
					"dijit\/layout\/SplitContainer.js"
				],
				"provides": [
					"dijit.layout.SplitContainer"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Deprecated.  Parameter for children of <code>dijit.layout.SplitContainer<\/code>.\nMinimum size (width or height) of a child of a SplitContainer.\nThe value is relative to other children's sizeShare properties."
			},
			{
				"name": "sizeShare",
				"resources": [
					"dijit\/layout\/SplitContainer.js"
				],
				"provides": [
					"dijit.layout.SplitContainer"
				],
				"scope": "prototype",
				"type": "Integer",
				"summary": "Deprecated.  Parameter for children of <code>dijit.layout.SplitContainer<\/code>.\nSize (width or height) of a child of a SplitContainer.\nThe value is relative to other children's sizeShare properties.\nFor example, if there are two children and each has sizeShare=10, then\neach takes up 50% of the available space."
			},
			{
				"name": "selected",
				"resources": [
					"dijit\/layout\/StackContainer.js"
				],
				"provides": [
					"dijit.layout.StackContainer"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Parameter for children of <code>dijit.layout.StackContainer<\/code> or subclasses.\nSpecifies that this widget should be the initially displayed pane.\nNote: to change the selected child use <code>dijit.layout.StackContainer.selectChild<\/code>"
			},
			{
				"name": "closable",
				"resources": [
					"dijit\/layout\/StackContainer.js"
				],
				"provides": [
					"dijit.layout.StackContainer"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Parameter for children of <code>dijit.layout.StackContainer<\/code> or subclasses.\nTrue if user can close (destroy) this child, such as (for example) clicking the X on the tab."
			},
			{
				"name": "iconClass",
				"resources": [
					"dijit\/layout\/StackContainer.js"
				],
				"provides": [
					"dijit.layout.StackContainer"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Parameter for children of <code>dijit.layout.StackContainer<\/code> or subclasses.\nCSS Class specifying icon to use in label associated with this pane."
			},
			{
				"name": "showTitle",
				"resources": [
					"dijit\/layout\/StackContainer.js"
				],
				"provides": [
					"dijit.layout.StackContainer"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Parameter for children of <code>dijit.layout.StackContainer<\/code> or subclasses.\nWhen true, display title of this widget as tab label etc., rather than just using\nicon specified in iconClass"
			},
			{
				"name": "observer",
				"resources": [
					"dojox\/form\/manager\/_Mixin.js"
				],
				"provides": [
					"dojox.form.manager._Mixin"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "column",
				"resources": [
					"dojox\/layout\/GridContainerLite.js"
				],
				"provides": [
					"dojox.layout.GridContainerLite"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Column of the grid to place the widget.\nDefined only if dojo.require(&quot;dojox.layout.GridContainerLite&quot;) is done."
			},
			{
				"name": "dragRestriction",
				"resources": [
					"dojox\/layout\/GridContainerLite.js"
				],
				"provides": [
					"dojox.layout.GridContainerLite"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "If true, the widget can not be draggable.\nDefined only if dojo.require(&quot;dojox.layout.GridContainerLite&quot;) is done."
			},
			{
				"name": "slideFrom",
				"resources": [
					"dojox\/layout\/RadioGroup.js"
				],
				"provides": [
					"dojox.layout.RadioGroup"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "A parameter needed by RadioGroupSlide only. An optional paramter to force\nthe ContentPane to slide in from a set direction. Defaults\nto &quot;random&quot;, or specify one of &quot;top&quot;, &quot;left&quot;, &quot;right&quot;, &quot;bottom&quot;\nto slideFrom top, left, right, or bottom."
			},
			{
				"name": "label",
				"resources": [
					"dojox\/layout\/TableContainer.js"
				],
				"provides": [
					"dojox.layout.TableContainer"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "The label to display for a given widget"
			},
			{
				"name": "title",
				"resources": [
					"dojox\/layout\/TableContainer.js"
				],
				"provides": [
					"dojox.layout.TableContainer"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "The label to display for a given widget.  This is interchangeable\nwith the 'label' parameter, as some widgets already have a use\nfor the 'label', and this can be used instead to avoid conflicts."
			},
			{
				"name": "spanLabel",
				"resources": [
					"dojox\/layout\/TableContainer.js"
				],
				"provides": [
					"dojox.layout.TableContainer"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Setting spanLabel to true makes the widget take up both the\nlabel and value cells. Defaults to false."
			},
			{
				"name": "colspan",
				"resources": [
					"dojox\/layout\/TableContainer.js"
				],
				"provides": [
					"dojox.layout.TableContainer"
				],
				"scope": "prototype",
				"type": "Number",
				"summary": "The number of columns this widget should span."
			},
			{
				"name": "toggleSplitterOpen",
				"resources": [
					"dojox\/layout\/ToggleSplitter.js"
				],
				"provides": [
					"dojox.layout.ToggleSplitter"
				],
				"scope": "prototype",
				"type": "Boolean"
			},
			{
				"name": "toggleSplitterClosedThreshold",
				"resources": [
					"dojox\/layout\/ToggleSplitter.js"
				],
				"provides": [
					"dojox.layout.ToggleSplitter"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "a css size value (e.g. &quot;100px&quot;)"
			},
			{
				"name": "toggleSplitterOpenSize",
				"resources": [
					"dojox\/layout\/ToggleSplitter.js"
				],
				"provides": [
					"dojox.layout.ToggleSplitter"
				],
				"scope": "prototype",
				"type": "String"
			},
			{
				"name": "dndType",
				"resources": [
					"dojox\/mdnd\/AreaManager.js"
				],
				"provides": [
					"dojox.mdnd.AreaManager"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Defines a type of widget."
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onClick",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of mouse click events.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onDblClick",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of mouse double click events.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onKeyDown",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of keys being pressed down.",
				"parameters": [
					{
						"name": "event",
						"type": "key",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onKeyPress",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of printable keys being typed.",
				"parameters": [
					{
						"name": "event",
						"type": "key",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onKeyUp",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of keys being released.",
				"parameters": [
					{
						"name": "event",
						"type": "key",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onMouseDown",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of when the mouse button is pressed down.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onMouseMove",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of when the mouse moves over nodes contained within this widget.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onMouseOut",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of when the mouse moves off of nodes contained within this widget.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onMouseOver",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of when the mouse moves onto nodes contained within this widget.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onMouseLeave",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of when the mouse moves off of this widget.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onMouseEnter",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of when the mouse moves onto this widget.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onMouseUp",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Connect to this function to receive notifications of when the mouse button is released.",
				"parameters": [
					{
						"name": "event",
						"type": "mouse",
						"usage": "required",
						"summary": "Event"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "create",
				"scope": "prototype",
				"parameters": [
					{
						"name": "params",
						"type": "Object",
						"usage": "optional"
					},
					{
						"name": "srcNodeRef",
						"type": "DomNode|String",
						"usage": "optional"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "_onConnect",
				"scope": "prototype",
				"private": true,
				"summary": "Called when someone connects to one of my handlers.\n&quot;Turn on&quot; that handler if it isn't active yet.\n\nThis is also called for every single initialization parameter\nso need to do nothing for parameters like &quot;id&quot;.",
				"parameters": [
					{
						"name": "event",
						"type": "String",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "isFocusable",
				"scope": "prototype",
				"summary": "Return true if this widget can currently be focused\nand false if not"
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onFocus",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when the widget becomes &quot;active&quot; because\nit or a widget inside of it either has focus, or has recently\nbeen clicked."
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onBlur",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when the widget stops being &quot;active&quot; because\nfocus moved to something outside of it, or the user\nclicked somewhere outside of it, or the widget was\nhidden."
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "_onFocus",
				"scope": "prototype",
				"summary": "This is where widgets do processing for when they are active,\nsuch as changing CSS classes.  See onFocus() for more details.",
				"parameters": [
					{
						"name": "e",
						"type": null,
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "_onBlur",
				"scope": "prototype",
				"summary": "This is where widgets do processing for when they stop being active,\nsuch as changing CSS classes.  See onBlur() for more details."
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "setAttribute",
				"scope": "prototype",
				"summary": "Deprecated.  Use set() instead.",
				"parameters": [
					{
						"name": "attr",
						"type": "String",
						"usage": "required"
					},
					{
						"name": "value",
						"type": "anything",
						"usage": "required"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "attr",
				"scope": "prototype",
				"summary": "Set or get properties on a widget instance.",
				"description": "This method is deprecated, use get() or set() directly.",
				"parameters": [
					{
						"name": "name",
						"type": "String|Object",
						"usage": "required",
						"summary": "The property to get or set. If an object is passed here and not\na string, its keys are used as names of attributes to be set\nand the value of the object as values to set in the widget."
					},
					{
						"name": "value",
						"type": "Object",
						"usage": "optional",
						"summary": "Optional. If provided, attr() operates as a setter. If omitted,\nthe current value of the named property is returned."
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "connect",
				"scope": "prototype",
				"summary": "Connects specified obj\/event to specified method of this object\nand registers for disconnect() on widget destroy.",
				"description": "Provide widget-specific analog to dojo.connect, except with the\nimplicit use of this widget as the target object.\nThis version of connect also provides a special \"ondijitclick\"\nevent which triggers on a click or space or enter keyup.\nEvents connected with `this.connect` are disconnected upon\ndestruction.",
				"examples": {
					"example": "\tvar btn = new dijit.form.Button();\n\t\/\/ when foo.bar() is called, call the listener we're going to\n\t\/\/ provide in the scope of btn\n\tbtn.connect(foo, \"bar\", function(){\n\t\tconsole.debug(this.toString());\n\t});"
				},
				"return-description": "A handle that can be passed to `disconnect` in order to disconnect before\nthe widget is destroyed.",
				"parameters": [
					{
						"name": "obj",
						"type": "Object|null",
						"usage": "required"
					},
					{
						"name": "event",
						"type": "String|Function",
						"usage": "required"
					},
					{
						"name": "method",
						"type": "String|Function",
						"usage": "required"
					}
				],
				"return-types": [
					{
						"type": "_Widget.Handle"
					}
				]
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "_onShow",
				"scope": "prototype",
				"private": true,
				"summary": "Internal method called when this widget is made visible.\nSee <code>onShow<\/code> for details."
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onShow",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when this widget becomes the selected pane in a\n<code>dijit.layout.TabContainer<\/code>, <code>dijit.layout.StackContainer<\/code>,\n<code>dijit.layout.AccordionContainer<\/code>, etc.\n\nAlso called to indicate display of a <code>dijit.Dialog<\/code>, <code>dijit.TooltipDialog<\/code>, or <code>dijit.TitlePane<\/code>."
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onHide",
				"scope": "prototype",
				"tags": "callback",
				"summary": "Called when another widget becomes the selected pane in a\n<code>dijit.layout.TabContainer<\/code>, <code>dijit.layout.StackContainer<\/code>,\n<code>dijit.layout.AccordionContainer<\/code>, etc.\n\nAlso called to indicate hide of a <code>dijit.Dialog<\/code>, <code>dijit.TooltipDialog<\/code>, or <code>dijit.TitlePane<\/code>."
			},
			{
				"resources": [
					"dijit\/_Widget.js"
				],
				"provides": [
					"dijit._Widget"
				],
				"name": "onClose",
				"scope": "prototype",
				"tags": "extension",
				"summary": "Called when this widget is being displayed as a popup (ex: a Calendar popped\nup from a DateTextBox), and it is hidden.\nThis is called from the dijit.popup code, and should not be called directly.\n\nAlso used as a parameter for children of <code>dijit.layout.StackContainer<\/code> or subclasses.\nCallback if a user tries to close the child.   Child will be closed if this function returns true.",
				"return-types": [
					{
						"type": "Boolean"
					}
				]
			}
		]
	},
	"dijit._Templated": {
		"location": "dijit._Templated",
		"resources": [
			"dijit\/_Templated.js"
		],
		"provides": [
			"dijit._Templated"
		],
		"type": "Function",
		"classlike": true,
		"summary": "Mixin for widgets that are instantiated from a template",
		"properties": [
			{
				"name": "templateString",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "A string that represents the widget template. Pre-empts the\ntemplatePath. In builds that have their strings &quot;interned&quot;, the\ntemplatePath is converted to an inline templateString, thereby\npreventing a synchronous network call.\n\nUse in conjunction with dojo.cache() to load from a file."
			},
			{
				"name": "templatePath",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "String",
				"summary": "Path to template (HTML file) for this widget relative to dojo.baseUrl.\nDeprecated: use templateString with dojo.cache() instead."
			},
			{
				"name": "widgetsInTemplate",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "Boolean",
				"summary": "Should we parse the template to find widgets that might be\ndeclared in markup inside it?  False by default."
			},
			{
				"name": "_skipNodeCache",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "bool",
				"private": true
			},
			{
				"name": "_earlyTemplatedStartup",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "Boolean",
				"private": true,
				"summary": "A fallback to preserve the 1.0 - 1.3 behavior of children in\ntemplates having their startup called before the parent widget\nfires postCreate. Defaults to 'false', causing child widgets to\nhave their .startup() called immediately before a parent widget\n.startup(), but always after the parent .postCreate(). Set to\n'true' to re-enable to previous, arguably broken, behavior."
			},
			{
				"name": "_attachPoints",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "instance-prototype",
				"type": "String[]",
				"private": true,
				"summary": "List of widget attribute names associated with dojoAttachPoint=... in the\ntemplate, ex: [&quot;containerNode&quot;, &quot;labelNode&quot;]"
			},
			{
				"name": "_attachEvents",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "instance-prototype",
				"type": "Handle[]",
				"private": true,
				"summary": "List of connections associated with dojoAttachEvent=... in the\ntemplate"
			},
			{
				"name": "declaredClass",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "domNode",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "_startupWidgets",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "_supportingWidgets",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": "Object",
				"private": true
			},
			{
				"name": "containerNode",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "prototype",
				"type": null
			},
			{
				"name": "_templateCache",
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"scope": "normal",
				"type": "Object",
				"private": true
			}
		],
		"methods": [
			{
				"constructor": "constructor"
			},
			{
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"name": "constructor",
				"scope": "prototype"
			},
			{
				"resources": [
					"dijit\/_Templated.js"
				],
				"provides": [
					"dijit._Templated"
				],
				"name": "_stringRepl",
				"scope": "prototype",
				"private": true,
				"summary": "Does substitution of ${foo} type properties in
