<?xml version="1.0" encoding="UTF-8"?>
<javascript>
	<object location="dijit">
		<resources>
			<resource>dijit/Calendar.js</resource>
			<resource>dijit/CheckedMenuItem.js</resource>
			<resource>dijit/ColorPalette.js</resource>
			<resource>dijit/Declaration.js</resource>
			<resource>dijit/Dialog.js</resource>
			<resource>dijit/DialogUnderlay.js</resource>
			<resource>dijit/Editor.js</resource>
			<resource>dijit/InlineEditBox.js</resource>
			<resource>dijit/Menu.js</resource>
			<resource>dijit/MenuBar.js</resource>
			<resource>dijit/MenuBarItem.js</resource>
			<resource>dijit/MenuItem.js</resource>
			<resource>dijit/MenuSeparator.js</resource>
			<resource>dijit/PopupMenuBarItem.js</resource>
			<resource>dijit/PopupMenuItem.js</resource>
			<resource>dijit/ProgressBar.js</resource>
			<resource>dijit/TitlePane.js</resource>
			<resource>dijit/Toolbar.js</resource>
			<resource>dijit/ToolbarSeparator.js</resource>
			<resource>dijit/Tooltip.js</resource>
			<resource>dijit/TooltipDialog.js</resource>
			<resource>dijit/Tree.js</resource>
			<resource>dijit/_Calendar.js</resource>
			<resource>dijit/_Contained.js</resource>
			<resource>dijit/_Container.js</resource>
			<resource>dijit/_CssStateMixin.js</resource>
			<resource>dijit/_DialogMixin.js</resource>
			<resource>dijit/_HasDropDown.js</resource>
			<resource>dijit/_KeyNavContainer.js</resource>
			<resource>dijit/_PaletteMixin.js</resource>
			<resource>dijit/_Templated.js</resource>
			<resource>dijit/_TimePicker.js</resource>
			<resource>dijit/_Widget.js</resource>
			<resource>dijit/_WidgetBase.js</resource>
			<resource>dijit/_base/focus.js</resource>
			<resource>dijit/_base/manager.js</resource>
			<resource>dijit/_base/place.js</resource>
			<resource>dijit/_base/popup.js</resource>
			<resource>dijit/_base/scroll.js</resource>
			<resource>dijit/_base/sniff.js</resource>
			<resource>dijit/_base/typematic.js</resource>
			<resource>dijit/_base/wai.js</resource>
			<resource>dijit/_base/window.js</resource>
			<resource>dijit/_base.js</resource>
			<resource>dijit/_editor/RichText.js</resource>
			<resource>dijit/_editor/_Plugin.js</resource>
			<resource>dijit/_editor/html.js</resource>
			<resource>dijit/_editor/plugins/AlwaysShowToolbar.js</resource>
			<resource>dijit/_editor/plugins/EnterKeyHandling.js</resource>
			<resource>dijit/_editor/plugins/FontChoice.js</resource>
			<resource>dijit/_editor/plugins/FullScreen.js</resource>
			<resource>dijit/_editor/plugins/LinkDialog.js</resource>
			<resource>dijit/_editor/plugins/NewPage.js</resource>
			<resource>dijit/_editor/plugins/Print.js</resource>
			<resource>dijit/_editor/plugins/TabIndent.js</resource>
			<resource>dijit/_editor/plugins/TextColor.js</resource>
			<resource>dijit/_editor/plugins/ToggleDir.js</resource>
			<resource>dijit/_editor/plugins/ViewSource.js</resource>
			<resource>dijit/_editor/range.js</resource>
			<resource>dijit/_editor/selection.js</resource>
			<resource>dijit/_tree/dndSource.js</resource>
			<resource>dijit/dijit-all.js</resource>
			<resource>dijit/dijit.js</resource>
			<resource>dijit/form/Button.js</resource>
			<resource>dijit/form/CheckBox.js</resource>
			<resource>dijit/form/ComboBox.js</resource>
			<resource>dijit/form/ComboButton.js</resource>
			<resource>dijit/form/CurrencyTextBox.js</resource>
			<resource>dijit/form/DateTextBox.js</resource>
			<resource>dijit/form/DropDownButton.js</resource>
			<resource>dijit/form/FilteringSelect.js</resource>
			<resource>dijit/form/Form.js</resource>
			<resource>dijit/form/HorizontalRule.js</resource>
			<resource>dijit/form/HorizontalRuleLabels.js</resource>
			<resource>dijit/form/HorizontalSlider.js</resource>
			<resource>dijit/form/MappedTextBox.js</resource>
			<resource>dijit/form/MultiSelect.js</resource>
			<resource>dijit/form/NumberSpinner.js</resource>
			<resource>dijit/form/NumberTextBox.js</resource>
			<resource>dijit/form/RadioButton.js</resource>
			<resource>dijit/form/RangeBoundTextBox.js</resource>
			<resource>dijit/form/Select.js</resource>
			<resource>dijit/form/SimpleTextarea.js</resource>
			<resource>dijit/form/Slider.js</resource>
			<resource>dijit/form/TextBox.js</resource>
			<resource>dijit/form/Textarea.js</resource>
			<resource>dijit/form/TimeTextBox.js</resource>
			<resource>dijit/form/ToggleButton.js</resource>
			<resource>dijit/form/ValidationTextBox.js</resource>
			<resource>dijit/form/VerticalRule.js</resource>
			<resource>dijit/form/VerticalRuleLabels.js</resource>
			<resource>dijit/form/VerticalSlider.js</resource>
			<resource>dijit/form/_DateTimeTextBox.js</resource>
			<resource>dijit/form/_FormMixin.js</resource>
			<resource>dijit/form/_FormSelectWidget.js</resource>
			<resource>dijit/form/_FormWidget.js</resource>
			<resource>dijit/form/_Spinner.js</resource>
			<resource>dijit/layout/AccordionContainer.js</resource>
			<resource>dijit/layout/AccordionPane.js</resource>
			<resource>dijit/layout/BorderContainer.js</resource>
			<resource>dijit/layout/ContentPane.js</resource>
			<resource>dijit/layout/LayoutContainer.js</resource>
			<resource>dijit/layout/LinkPane.js</resource>
			<resource>dijit/layout/ScrollingTabController.js</resource>
			<resource>dijit/layout/SplitContainer.js</resource>
			<resource>dijit/layout/StackContainer.js</resource>
			<resource>dijit/layout/StackController.js</resource>
			<resource>dijit/layout/TabContainer.js</resource>
			<resource>dijit/layout/TabController.js</resource>
			<resource>dijit/layout/_ContentPaneResizeMixin.js</resource>
			<resource>dijit/layout/_LayoutWidget.js</resource>
			<resource>dijit/layout/_TabContainerBase.js</resource>
			<resource>dijit/robot.js</resource>
			<resource>dijit/robotx.js</resource>
			<resource>dijit/tree/ForestStoreModel.js</resource>
			<resource>dijit/tree/TreeStoreModel.js</resource>
			<resource>dijit/tree/_dndContainer.js</resource>
			<resource>dijit/tree/_dndSelector.js</resource>
			<resource>dijit/tree/dndSource.js</resource>
		</resources>
		<provides>
			<provide>dijit.Calendar</provide>
			<provide>dijit.CheckedMenuItem</provide>
			<provide>dijit.ColorPalette</provide>
			<provide>dijit.Declaration</provide>
			<provide>dijit.Dialog</provide>
			<provide>dijit.DialogUnderlay</provide>
			<provide>dijit.Editor</provide>
			<provide>dijit.InlineEditBox</provide>
			<provide>dijit.Menu</provide>
			<provide>dijit.MenuBar</provide>
			<provide>dijit.MenuBarItem</provide>
			<provide>dijit.MenuItem</provide>
			<provide>dijit.MenuSeparator</provide>
			<provide>dijit.PopupMenuBarItem</provide>
			<provide>dijit.PopupMenuItem</provide>
			<provide>dijit.ProgressBar</provide>
			<provide>dijit.TitlePane</provide>
			<provide>dijit.Toolbar</provide>
			<provide>dijit.ToolbarSeparator</provide>
			<provide>dijit.Tooltip</provide>
			<provide>dijit.TooltipDialog</provide>
			<provide>dijit.Tree</provide>
			<provide>dijit._Calendar</provide>
			<provide>dijit._Contained</provide>
			<provide>dijit._Container</provide>
			<provide>dijit._CssStateMixin</provide>
			<provide>dijit._DialogMixin</provide>
			<provide>dijit._HasDropDown</provide>
			<provide>dijit._KeyNavContainer</provide>
			<provide>dijit._PaletteMixin</provide>
			<provide>dijit._Templated</provide>
			<provide>dijit._TimePicker</provide>
			<provide>dijit._Widget</provide>
			<provide>dijit._WidgetBase</provide>
			<provide>dijit._base.focus</provide>
			<provide>dijit._base.manager</provide>
			<provide>dijit._base.place</provide>
			<provide>dijit._base.popup</provide>
			<provide>dijit._base.scroll</provide>
			<provide>dijit._base.sniff</provide>
			<provide>dijit._base.typematic</provide>
			<provide>dijit._base.wai</provide>
			<provide>dijit._base.window</provide>
			<provide>dijit._base</provide>
			<provide>dijit._editor.RichText</provide>
			<provide>dijit._editor._Plugin</provide>
			<provide>dijit._editor.html</provide>
			<provide>dijit._editor.plugins.AlwaysShowToolbar</provide>
			<provide>dijit._editor.plugins.EnterKeyHandling</provide>
			<provide>dijit._editor.plugins.FontChoice</provide>
			<provide>dijit._editor.plugins.FullScreen</provide>
			<provide>dijit._editor.plugins.LinkDialog</provide>
			<provide>dijit._editor.plugins.NewPage</provide>
			<provide>dijit._editor.plugins.Print</provide>
			<provide>dijit._editor.plugins.TabIndent</provide>
			<provide>dijit._editor.plugins.TextColor</provide>
			<provide>dijit._editor.plugins.ToggleDir</provide>
			<provide>dijit._editor.plugins.ViewSource</provide>
			<provide>dijit._editor.range</provide>
			<provide>dijit._editor.selection</provide>
			<provide>dijit._tree.dndSource</provide>
			<provide>dijit.dijit-all</provide>
			<provide>dijit.dijit</provide>
			<provide>dijit.form.Button</provide>
			<provide>dijit.form.CheckBox</provide>
			<provide>dijit.form.ComboBox</provide>
			<provide>dijit.form.ComboButton</provide>
			<provide>dijit.form.CurrencyTextBox</provide>
			<provide>dijit.form.DateTextBox</provide>
			<provide>dijit.form.DropDownButton</provide>
			<provide>dijit.form.FilteringSelect</provide>
			<provide>dijit.form.Form</provide>
			<provide>dijit.form.HorizontalRule</provide>
			<provide>dijit.form.HorizontalRuleLabels</provide>
			<provide>dijit.form.HorizontalSlider</provide>
			<provide>dijit.form.MappedTextBox</provide>
			<provide>dijit.form.MultiSelect</provide>
			<provide>dijit.form.NumberSpinner</provide>
			<provide>dijit.form.NumberTextBox</provide>
			<provide>dijit.form.RadioButton</provide>
			<provide>dijit.form.RangeBoundTextBox</provide>
			<provide>dijit.form.Select</provide>
			<provide>dijit.form.SimpleTextarea</provide>
			<provide>dijit.form.Slider</provide>
			<provide>dijit.form.TextBox</provide>
			<provide>dijit.form.Textarea</provide>
			<provide>dijit.form.TimeTextBox</provide>
			<provide>dijit.form.ToggleButton</provide>
			<provide>dijit.form.ValidationTextBox</provide>
			<provide>dijit.form.VerticalRule</provide>
			<provide>dijit.form.VerticalRuleLabels</provide>
			<provide>dijit.form.VerticalSlider</provide>
			<provide>dijit.form._DateTimeTextBox</provide>
			<provide>dijit.form._FormMixin</provide>
			<provide>dijit.form._FormSelectWidget</provide>
			<provide>dijit.form._FormWidget</provide>
			<provide>dijit.form._Spinner</provide>
			<provide>dijit.layout.AccordionContainer</provide>
			<provide>dijit.layout.AccordionPane</provide>
			<provide>dijit.layout.BorderContainer</provide>
			<provide>dijit.layout.ContentPane</provide>
			<provide>dijit.layout.LayoutContainer</provide>
			<provide>dijit.layout.LinkPane</provide>
			<provide>dijit.layout.ScrollingTabController</provide>
			<provide>dijit.layout.SplitContainer</provide>
			<provide>dijit.layout.StackContainer</provide>
			<provide>dijit.layout.StackController</provide>
			<provide>dijit.layout.TabContainer</provide>
			<provide>dijit.layout.TabController</provide>
			<provide>dijit.layout._ContentPaneResizeMixin</provide>
			<provide>dijit.layout._LayoutWidget</provide>
			<provide>dijit.layout._TabContainerBase</provide>
			<provide>dijit.robot</provide>
			<provide>dijit.robotx</provide>
			<provide>dijit.tree.ForestStoreModel</provide>
			<provide>dijit.tree.TreeStoreModel</provide>
			<provide>dijit.tree._dndContainer</provide>
			<provide>dijit.tree._dndSelector</provide>
			<provide>dijit.tree.dndSource</provide>
		</provides>
		<properties>
			<property name="_dialogStack" scope="normal" type="Array" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_masterTT" scope="normal" type="Object" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="_Calendar" scope="normal" type="" private="true">
				<resources>
					<resource>dijit/_Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit._Calendar</provide>
				</provides>
			</property>
			<property name="_lastKeyDownNode" scope="normal" type="Object" private="true">
				<resources>
					<resource>dijit/_Widget.js</resource>
				</resources>
				<provides>
					<provide>dijit._Widget</provide>
				</provides>
			</property>
			<property name="_curFocus" scope="normal" type="DomNode" private="true">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Currently focused item on screen</summary>
			</property>
			<property name="_prevFocus" scope="normal" type="DomNode" private="true">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Previously focused item on screen</summary>
			</property>
			<property name="_activeStack" scope="normal" type="dijit._Widget[]" private="true">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>List of currently active widgets (focused widget and it's ancestors)</summary>
			</property>
			<property name="defaultDuration" scope="normal" type="Integer">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>The default animation speed (in ms) to use for all Dijit
	transitional animations, unless otherwise specified
	on a per-instance basis. Defaults to 200, overrided by
	&lt;code&gt;djConfig.defaultDuration&lt;/code&gt;</summary>
			</property>
			<property name="placementRegistry" scope="normal" type="Object">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
			</property>
			<property name="_frames" scope="normal" type="Object" private="true">
				<resources>
					<resource>dijit/_base/popup.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.popup</provide>
				</provides>
			</property>
			<property name="dijit-all" scope="normal" type="Object">
				<resources>
					<resource>dijit/dijit-all.js</resource>
				</resources>
				<provides>
					<provide>dijit.dijit-all</provide>
				</provides>
				<summary>A rollup that includes every dijit. You probably don't need this.</summary>
			</property>
			<property name="dijit" scope="normal" type="Object">
				<resources>
					<resource>dijit/dijit.js</resource>
				</resources>
				<provides>
					<provide>dijit.dijit</provide>
				</provides>
				<summary>A roll-up for common dijit methods</summary>
			</property>
			<property name="demos" scope="normal" type="Object">
				<resources>
					<resource>dijit/resources/_modules.js</resource>
				</resources>
				<summary>Home of the official dijit demo code</summary>
			</property>
			<property name="robot" scope="normal" type="Object">
				<resources>
					<resource>dijit/robot.js</resource>
				</resources>
				<provides>
					<provide>dijit.robot</provide>
				</provides>
			</property>
			<property name="robotx" scope="normal" type="Object">
				<resources>
					<resource>dijit/robotx.js</resource>
				</resources>
				<provides>
					<provide>dijit.robotx</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method name="_underlay" scope="normal" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>A shared instance of a &lt;code&gt;dijit.DialogUnderlay&lt;/code&gt;</summary>
				<description>A shared instance of a `dijit.DialogUnderlay` created and
	used by `dijit.Dialog`, though never created until some Dialog
	or subclass thereof is shown.</description>
				<parameters>
					<parameter name="kwArgs" type="" usage="required"/>
				</parameters>
			</method>
			<method name="showTooltip" scope="normal">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Display tooltip w/specified contents in specified position.
	See description of dijit.Tooltip.defaultPosition for details on position parameter.
	If position is not specified then dijit.Tooltip.defaultPosition is used.</summary>
				<parameters>
					<parameter name="innerHTML" type="String" usage="required"/>
					<parameter name="aroundNode" type="DomNode" usage="required"/>
					<parameter name="position" type="String[]" usage="optional"/>
					<parameter name="rtl" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="hideTooltip" scope="normal">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Hide the tooltip</summary>
				<parameters>
					<parameter name="aroundNode" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_connectOnUseEventHandler" scope="normal" private="true">
				<resources>
					<resource>dijit/_Widget.js</resource>
				</resources>
				<provides>
					<provide>dijit._Widget</provide>
				</provides>
				<parameters>
					<parameter name="event" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="isCollapsed" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Returns true if there is no text selected</summary>
			</method>
			<method name="getBookmark" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Retrieves a bookmark that can be used with moveToBookmark to return to the same range</summary>
				<return-types>
					<return-type type="Object."/>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="moveToBookmark" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Moves current selection to a bookmark</summary>
				<parameters>
					<parameter name="bookmark" type="Object" usage="required">
						<summary>This should be a returned object from dijit.getBookmark()</summary>
					</parameter>
				</parameters>
			</method>
			<method name="getFocus" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Called as getFocus(), this returns an Object showing the current focus
	and selected text.
	Called as getFocus(widget), where widget is a (widget representing) a button
	that was just pressed, it returns where focus was before that button
	was pressed.   (Pressing the button may have either shifted focus to the button,
	or removed focus altogether.)   In this case the selected text is not returned,
	since it can't be accurately determined.</summary>
				<return-description>A handle to restore focus/selection, to be passed to `dijit.focus`</return-description>
				<parameters>
					<parameter name="menu" type="Widget" usage="optional">
						<summary>dijit._Widget or {domNode: DomNode} structure
	The button that was just pressed.  If focus has disappeared or moved
	to this button, returns the previous focus.  In this case the bookmark
	information is already lost, and null is returned.</summary>
					</parameter>
					<parameter name="openedForWindow" type="Window" usage="optional">
						<summary>iframe in which menu was opened</summary>
					</parameter>
				</parameters>
			</method>
			<method name="focus" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Sets the focused node and the selection according to argument.
	To set focus to an iframe's content, pass in the iframe itself.</summary>
				<parameters>
					<parameter name="handle" type="Object" usage="required">
						<summary>object returned by get(), or a DomNode</summary>
					</parameter>
				</parameters>
			</method>
			<method name="registerIframe" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Registers listeners on the specified iframe so that any click
	or focus event on that iframe (or anything in it) is reported
	as a focus/click event on the &amp;lt;iframe&amp;gt; itself.</summary>
				<description>Currently only used by editor.</description>
				<return-description>Handle to pass to unregisterIframe()</return-description>
				<parameters>
					<parameter name="iframe" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="unregisterIframe" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Unregisters listeners on the specified iframe created by registerIframe.
	After calling be sure to delete or null out the handle itself.</summary>
				<parameters>
					<parameter name="handle" type="Object" usage="required">
						<summary>Handle returned by registerIframe()</summary>
					</parameter>
				</parameters>
			</method>
			<method name="registerWin" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Registers listeners on the specified window (either the main
	window or an iframe's window) to detect when the user has clicked somewhere
	or focused somewhere.</summary>
				<description>Users should call registerIframe() instead of this method.</description>
				<return-description>Handle to pass to unregisterWin()</return-description>
				<parameters>
					<parameter name="targetWindow" type="Window" usage="optional">
						<summary>If specified this is the window associated with the iframe,
	i.e. iframe.contentWindow.</summary>
					</parameter>
					<parameter name="effectiveNode" type="DomNode" usage="optional">
						<summary>If specified, report any focus events inside targetWindow as
	an event on effectiveNode, rather than on evt.target.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="unregisterWin" scope="normal">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Unregisters listeners on the specified window (either the main
	window or an iframe's window) according to handle returned from registerWin().
	After calling be sure to delete or null out the handle itself.</summary>
				<parameters>
					<parameter name="handle" type="Handle" usage="required"/>
				</parameters>
			</method>
			<method name="_onBlurNode" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Called when focus leaves a node.
	Usually ignored, _unless_ it *isn't* follwed by touching another node,
	which indicates that we tabbed off the last field on the page,
	in which case every widget is marked inactive</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="_onTouchNode" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Callback when node is focused or mouse-downed</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required">
						<summary>The node that was touched.</summary>
					</parameter>
					<parameter name="by" type="String" usage="required">
						<summary>&amp;quot;mouse&amp;quot; if the focus/touch was caused by a mouse down event</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_onFocusNode" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>Callback when node is focused</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="_setStack" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/focus.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.focus</provide>
				</provides>
				<summary>The stack of active widgets has changed.  Send out appropriate events and records new stack.</summary>
				<parameters>
					<parameter name="newStack" type="String[]" usage="required">
						<summary>array of widget id's, starting from the top (outermost) widget</summary>
					</parameter>
					<parameter name="by" type="String" usage="required">
						<summary>&amp;quot;mouse&amp;quot; if the focus/touch was caused by a mouse down event</summary>
					</parameter>
				</parameters>
			</method>
			<method name="byId" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Returns a widget by it's id, or if passed a widget, no-op (like dojo.byId())</summary>
				<parameters>
					<parameter name="id" type="String|dijit._Widget" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dijit._Widget"/>
				</return-types>
			</method>
			<method name="getUniqueId" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Generates a unique id for a given widgetType</summary>
				<parameters>
					<parameter name="widgetType" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="findWidgets" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Search subtree under root returning widgets found.
	Doesn't search for nested widgets (ie, widgets inside other widgets).</summary>
				<parameters>
					<parameter name="root" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="_destroyAll" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Code to destroy all widgets and do other cleanup on page unload</summary>
			</method>
			<method name="byNode" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Returns the widget corresponding to the given DOMNode</summary>
				<parameters>
					<parameter name="node" type="DOMNode" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dijit._Widget"/>
				</return-types>
			</method>
			<method name="getEnclosingWidget" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
					<resource>dojox/mobile/_base.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
					<provide>dojox.mobile._base</provide>
				</provides>
				<summary>Returns the widget whose DOM tree contains the specified DOMNode, or null if
	the node is not contained within the DOM tree of any widget</summary>
				<parameters>
					<parameter name="node" type="DOMNode" usage="required"/>
				</parameters>
			</method>
			<method name="_isElementShown" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
				</parameters>
			</method>
			<method name="hasDefaultTabStop" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Tests if element is tab-navigable even without an explicit tabIndex setting</summary>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
				</parameters>
			</method>
			<method name="isTabNavigable" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Tests if an element is tab-navigable</summary>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="boolean"/>
				</return-types>
			</method>
			<method name="_getTabNavigable" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Finds descendants of the specified root node.</summary>
				<description>Finds the following descendants of the specified root node:
	* the first tab-navigable element in document order
	without a tabIndex or with tabIndex="0"
	* the last tab-navigable element in document order
	without a tabIndex or with tabIndex="0"
	* the first element in document order with the lowest
	positive tabIndex value
	* the last element in document order with the highest
	positive tabIndex value</description>
				<parameters>
					<parameter name="root" type="DOMNode" usage="required"/>
				</parameters>
			</method>
			<method name="getFirstInTabbingOrder" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Finds the descendant of the specified root node
	that is first in the tabbing order</summary>
				<parameters>
					<parameter name="root" type="String|DOMNode" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="DomNode"/>
				</return-types>
			</method>
			<method name="getLastInTabbingOrder" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
				</provides>
				<summary>Finds the descendant of the specified root node
	that is last in the tabbing order</summary>
				<parameters>
					<parameter name="root" type="String|DOMNode" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="DomNode"/>
				</return-types>
			</method>
			<method name="getViewport" scope="normal">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Returns the dimensions and scroll position of the viewable area of a browser window</summary>
			</method>
			<method name="placeOnScreen" scope="normal">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Positions one of the node's corners at specified position
	such that node is fully visible in viewport.</summary>
				<description>NOTE: node is assumed to be absolutely or relatively positioned.</description>
				<examples>
					<example>Try to place node's top right corner at (10,20).
	If that makes node go (partially) off screen, then try placing
	bottom left corner at (10,20).
		placeOnScreen(node, {x: 10, y: 20}, ["TR", "BL"])</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="pos" type="dijit.__Position" usage="required">
						<summary>Object like {x: 10, y: 20}</summary>
					</parameter>
					<parameter name="corners" type="String[]" usage="required">
						<summary>Array of Strings representing order to try corners in, like [&amp;quot;TR&amp;quot;, &amp;quot;BL&amp;quot;].
	Possible values are:
	* &amp;quot;BL&amp;quot; - bottom left
	* &amp;quot;BR&amp;quot; - bottom right
	* &amp;quot;TL&amp;quot; - top left
	* &amp;quot;TR&amp;quot; - top right</summary>
					</parameter>
					<parameter name="padding" type="dijit.__Position" usage="optional">
						<summary>set padding to put some buffer around the element you want to position.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_place" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Given a list of spots to put node, put it at the first spot where it fits,
	of if it doesn't fit anywhere then the place with the least overflow</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="choices" type="Array" usage="required">
						<summary>Array of elements like: {corner: 'TL', pos: {x: 10, y: 20} }
	Above example says to put the top-left corner of the node at (10,20)</summary>
					</parameter>
					<parameter name="layoutNode" type="Function(node," usage="required">
						<summary>aroundNodeCorner, nodeCorner, size)
	for things like tooltip, they are displayed differently (and have different dimensions)
	based on their orientation relative to the parent.   This adjusts the popup based on orientation.
	It also passes in the available size for the popup, which is useful for tooltips to
	tell them that their width is limited to a certain amount.   layoutNode() may return a value expressing
	how much the popup had to be modified to fit into the available space.   This is used to determine
	what the best placement is.</summary>
					</parameter>
					<parameter name="aroundNodeCoords" type="Object" usage="required">
						<summary>Size of aroundNode, ex: {w: 200, h: 50}</summary>
					</parameter>
				</parameters>
			</method>
			<method name="placeOnScreenAroundNode" scope="normal">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Position node adjacent or kitty-corner to aroundNode
	such that it's fully visible in viewport.</summary>
				<description>Place node such that corner of node touches a corner of
	aroundNode, and that node is fully visible.</description>
				<examples>
					<example>	dijit.placeOnScreenAroundNode(node, aroundNode, {'BL':'TL', 'TR':'BR'});
	This will try to position node such that node's top-left corner is at the same position
	as the bottom left corner of the aroundNode (ie, put node below
	aroundNode, with left edges aligned).  If that fails it will try to put
	the bottom-right corner of node where the top right corner of aroundNode is
	(ie, put node above aroundNode, with right edges aligned)</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="aroundNode" type="DomNode" usage="required"/>
					<parameter name="aroundCorners" type="Object" usage="required">
						<summary>Ordered list of pairs of corners to try matching up.
	Each pair of corners is represented as a key/value in the hash,
	where the key corresponds to the aroundNode's corner, and
	the value corresponds to the node's corner:
		{ aroundNodeCorner1: nodeCorner1, aroundNodeCorner2: nodeCorner2, ...}
	The following strings are used to represent the four corners:
	* &amp;quot;BL&amp;quot; - bottom left
	* &amp;quot;BR&amp;quot; - bottom right
	* &amp;quot;TL&amp;quot; - top left
	* &amp;quot;TR&amp;quot; - top right</summary>
					</parameter>
					<parameter name="layoutNode" type="Function" usage="optional">
						<summary>Function(node, aroundNodeCorner, nodeCorner)
	For things like tooltip, they are displayed differently (and have different dimensions)
	based on their orientation relative to the parent.   This adjusts the popup based on orientation.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="placeOnScreenAroundRectangle" scope="normal">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Like dijit.placeOnScreenAroundNode(), except that the &amp;quot;around&amp;quot;
	parameter is an arbitrary rectangle on the screen (x, y, width, height)
	instead of a dom node.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="aroundRect" type="dijit.__Rectangle" usage="required"/>
					<parameter name="aroundCorners" type="Object" usage="required"/>
					<parameter name="layoutNode" type="Function" usage="required"/>
				</parameters>
			</method>
			<method name="_placeOnScreenAroundRect" scope="normal" private="true">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Like dijit.placeOnScreenAroundNode(), except it accepts coordinates
	of a rectangle to place node adjacent to.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="x" type="Number" usage="required"/>
					<parameter name="y" type="Number" usage="required"/>
					<parameter name="width" type="Number" usage="required"/>
					<parameter name="height" type="Number" usage="required"/>
					<parameter name="aroundCorners" type="Object" usage="required"/>
					<parameter name="layoutNode" type="Function" usage="required"/>
				</parameters>
			</method>
			<method name="placeOnScreenAroundElement" scope="normal">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Like dijit.placeOnScreenAroundNode(), except it accepts an arbitrary object
	for the &amp;quot;around&amp;quot; argument and finds a proper processor to place a node.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="aroundElement" type="Object" usage="required"/>
					<parameter name="aroundCorners" type="Object" usage="required"/>
					<parameter name="layoutNode" type="Function" usage="required"/>
				</parameters>
			</method>
			<method name="getPopupAroundAlignment" scope="normal">
				<resources>
					<resource>dijit/_base/place.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.place</provide>
				</provides>
				<summary>Transforms the passed array of preferred positions into a format suitable for passing as the aroundCorners argument to dijit.placeOnScreenAroundElement.</summary>
				<parameters>
					<parameter name="position" type="Array" usage="required">
						<summary>String[] This variable controls the position of the drop down.
	It's an array of strings with the following values:
	* before: places drop down to the left of the target node/widget, or to the right in
	the case of RTL scripts like Hebrew and Arabic
	* after: places drop down to the right of the target node/widget, or to the left in
	the case of RTL scripts like Hebrew and Arabic
	* above: drop down goes above target node
	* below: drop down goes below target node
	The list is positions is tried, in order, until a position is found where the drop down fits
	within the viewport.</summary>
					</parameter>
					<parameter name="leftToRight" type="Boolean" usage="required">
						<summary>Whether the popup will be displaying in leftToRight mode.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="scrollIntoView" scope="normal">
				<resources>
					<resource>dijit/_base/scroll.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.scroll</provide>
				</provides>
				<summary>Scroll the passed node into view, if it is not already.
	Deprecated, use &lt;code&gt;dojo.window.scrollIntoView&lt;/code&gt; instead.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="pos" type="Object" usage="optional"/>
				</parameters>
			</method>
			<method name="hasWaiRole" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Determines if an element has a particular role.</summary>
				<return-description>True if elem has the specific role attribute and false if not.
	For backwards compatibility if role parameter not provided,
	returns true if has a role</return-description>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
					<parameter name="role" type="String" usage="optional"/>
				</parameters>
			</method>
			<method name="getWaiRole" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Gets the role for an element (which should be a wai role).</summary>
				<return-description>The role of elem or an empty string if elem
	does not have a role.</return-description>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
				</parameters>
			</method>
			<method name="setWaiRole" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Sets the role on an element.</summary>
				<description>Replace existing role attribute with new role.</description>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
					<parameter name="role" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="removeWaiRole" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Removes the specified role from an element.
	Removes role attribute if no specific role provided (for backwards compat.)</summary>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
					<parameter name="role" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="hasWaiState" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Determines if an element has a given state.</summary>
				<description>Checks for an attribute called "aria-"+state.</description>
				<return-description>true if elem has a value for the given state and
	false if it does not.</return-description>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
					<parameter name="state" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="getWaiState" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Gets the value of a state on an element.</summary>
				<description>Checks for an attribute called "aria-"+state.</description>
				<return-description>The value of the requested state on elem
	or an empty string if elem has no value for state.</return-description>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
					<parameter name="state" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="setWaiState" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Sets a state on an element.</summary>
				<description>Sets an attribute called "aria-"+state.</description>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
					<parameter name="state" type="String" usage="required"/>
					<parameter name="value" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="removeWaiState" scope="normal">
				<resources>
					<resource>dijit/_base/wai.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.wai</provide>
				</provides>
				<summary>Removes a state from an element.</summary>
				<description>Sets an attribute called "aria-"+state.</description>
				<parameters>
					<parameter name="elem" type="Element" usage="required"/>
					<parameter name="state" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="getDocumentWindow" scope="normal">
				<resources>
					<resource>dijit/_base/window.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.window</provide>
				</provides>
				<parameters>
					<parameter name="doc" type="" usage="required"/>
				</parameters>
			</method>
			<method name="selectInputText" scope="normal">
				<resources>
					<resource>dijit/form/TextBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.form.TextBox</provide>
				</provides>
				<summary>Select text in the input element argument, from start (default 0), to stop (default end).</summary>
				<parameters>
					<parameter name="element" type="DomNode" usage="required"/>
					<parameter name="start" type="Number" usage="optional"/>
					<parameter name="stop" type="Number" usage="optional"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.Calendar" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Calendar.js</resource>
		</resources>
		<provides>
			<provide>dijit.Calendar</provide>
		</provides>
		<summary>A simple GUI for choosing a date in the context of a monthly calendar.</summary>
		<description>A simple GUI for choosing a date in the context of a monthly calendar.
	This widget can't be used in a form because it doesn't serialize the date to an
	`&lt;input&gt;` field.  For a form element, use dijit.form.DateTextBox instead.
	Note that the parser takes all dates attributes passed in the
	[RFC 3339 format](http://www.faqs.org/rfcs/rfc3339.html), e.g. `2005-06-30T08:05:00-07:00`
	so that they are serializable and locale-independent.</description>
		<examples>
			<example>	var calendar = new dijit.Calendar({}, dojo.byId("calendarNode"));</example>
			<example>	&lt;div dojoType="dijit.Calendar"&gt;&lt;/div&gt;</example>
		</examples>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._CssStateMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._CssStateMixin"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="widgetsInTemplate" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="value" scope="prototype" type="Date">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>The currently selected Date, initially set to invalid date to indicate no selection.
	TODO: for 2.0 make this a string (ISO format) rather than a Date</summary>
			</property>
			<property name="datePackage" scope="instance-prototype" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>JavaScript namespace to find Calendar routines.  Uses Gregorian Calendar routines
	at dojo.date by default.</summary>
			</property>
			<property name="dayWidth" scope="prototype" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>How to represent the days of the week in the calendar header. See dojo.date.locale</summary>
			</property>
			<property name="tabIndex" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Order fields are traversed when user hits the tab key</summary>
			</property>
			<property name="currentFocus" scope="prototype" type="Date">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Date object containing the currently focused date, or the date which would be focused
	if the calendar itself was focused.   Also indicates which year and month to display,
	i.e. the current &amp;quot;page&amp;quot; the calendar is on.</summary>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="_currentNode" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="dateClassObj" scope="instance" type="Object">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="dateFuncObj" scope="instance" type="Object">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="dateLocaleModule" scope="instance" type="Object">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor">
				<parameters>
					<parameter name="args" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_isValidDate" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Runs various tests on the value, checking that it's a valid date, rather
	than blank or NaN.</summary>
				<parameters>
					<parameter name="value" type="Date" usage="required"/>
				</parameters>
			</method>
			<method name="setValue" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Deprecated.   Use set('value', ...) instead.</summary>
				<parameters>
					<parameter name="value" type="Date" usage="required"/>
				</parameters>
			</method>
			<method name="_getValueAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Support get('value')</summary>
			</method>
			<method name="_setValueAttr" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Support set(&amp;quot;value&amp;quot;, ...)</summary>
				<description>Set the current date and update the UI.  If the date is disabled, the value will
	not change, but the display will change to the corresponding month.</description>
				<parameters>
					<parameter name="value" type="Date|Number" usage="required">
						<summary>Either a Date or the number of seconds since 1970.</summary>
					</parameter>
					<parameter name="priorityChange" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_setText" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>This just sets the content of node to the specified text.
	Can't do &amp;quot;node.innerHTML=text&amp;quot; because of an IE bug w/tables, see #3434.</summary>
				<parameters>
					<parameter name="node" type="" usage="required"/>
					<parameter name="text" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_populateGrid" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Fills in the calendar grid with each day (1-31)</summary>
			</method>
			<method name="goToToday" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Sets calendar's value to today's date</summary>
			</method>
			<method name="constructor" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<parameters>
					<parameter name="args" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="postMixInProperties" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</method>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</method>
			<method name="_adjustDisplay" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Moves calendar forwards or backwards by months or years</summary>
				<parameters>
					<parameter name="part" type="String" usage="required">
						<summary>&amp;quot;month&amp;quot; or &amp;quot;year&amp;quot;</summary>
					</parameter>
					<parameter name="amount" type="int" usage="required">
						<summary>Number of months or years</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setCurrentFocusAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>If the calendar currently has focus, then focuses specified date,
	changing the currently displayed month/year if necessary.
	If the calendar doesn't have focus, updates currently
	displayed month/year, and sets the cell that will get focus.</summary>
				<parameters>
					<parameter name="date" type="Date" usage="required"/>
					<parameter name="forceFocus" type="Boolean" usage="required">
						<summary>If true, will focus() the cell even if calendar itself doesn't have focus</summary>
					</parameter>
				</parameters>
			</method>
			<method name="focus" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Focus the calendar by focusing one of the calendar cells</summary>
			</method>
			<method name="_onMonthSelect" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Handler for when user selects a month from the drop down list</summary>
				<parameters>
					<parameter name="newMonth" type="Number" usage="required"/>
				</parameters>
			</method>
			<method name="_onDayClick" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Handler for day clicks, selects the date if appropriate</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onDayMouseOver" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Handler for mouse over events on days, sets hovered style</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onDayMouseOut" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Handler for mouse out events on days, clears hovered style</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onDayMouseDown" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onDayMouseUp" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="handleKey" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Provides keyboard navigation of calendar.</summary>
				<description>Called from _onKeyPress() to handle keypress on a stand alone Calendar,
	and also from `dijit.form._DateTimeTextBox` to pass a keypress event
	from the `dijit.form.DateTextBox` to be handled in this widget</description>
				<return-description>False if the key was recognized as a navigation key,
	to indicate that the event was handled by Calendar and shouldn't be propogated</return-description>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onKeyPress" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>For handling keypress events on a stand alone calendar</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="onValueSelected" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Notification that a date cell was selected.  It may be the same as the previous value.</summary>
				<description>Formerly used by `dijit.form._DateTimeTextBox` (and thus `dijit.form.DateTextBox`)
	to get notification when the user has clicked a date.  Now onExecute() (above) is used.</description>
				<parameters>
					<parameter name="date" type="Date" usage="required"/>
				</parameters>
			</method>
			<method name="onChange" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Called only when the selected date has changed</summary>
				<parameters>
					<parameter name="date" type="Date" usage="required"/>
				</parameters>
			</method>
			<method name="_isSelectedDate" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Extension point so developers can subclass Calendar to
	support multiple (concurrently) selected dates</summary>
				<parameters>
					<parameter name="dateObject" type="Date" usage="required"/>
					<parameter name="locale" type="String" usage="optional"/>
				</parameters>
			</method>
			<method name="isDisabledDate" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>May be overridden to disable certain dates in the calendar e.g. &lt;code&gt;isDisabledDate=dojo.date.locale.isWeekend&lt;/code&gt;</summary>
				<parameters>
					<parameter name="dateObject" type="Date" usage="required"/>
					<parameter name="locale" type="String" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="getClassForDate" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>May be overridden to return CSS classes to associate with the date entry for the given dateObject,
	for example to indicate a holiday in specified locale.</summary>
				<parameters>
					<parameter name="dateObject" type="Date" usage="required"/>
					<parameter name="locale" type="String" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
		</methods>
	</object>
	<object location="dijit.Calendar.cssStateNodes">
		<resources>
			<resource>dijit/Calendar.js</resource>
		</resources>
		<provides>
			<provide>dijit.Calendar</provide>
		</provides>
		<properties>
			<property name="decrementMonth" scope="normal" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="incrementMonth" scope="normal" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="previousYearLabelNode" scope="normal" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
			<property name="nextYearLabelNode" scope="normal" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Calendar.monthDropDownButton.containerNode" type="">
		<properties>
			<property name="innerHTML" scope="prototype" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Calendar.monthDropDownButton" type="">
		<properties>
			<property name="dropDown" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Calendar._MonthDropDown" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Calendar.js</resource>
		</resources>
		<provides>
			<provide>dijit.Calendar</provide>
		</provides>
		<summary>The month drop down</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
		</mixins>
		<properties>
			<property name="months" scope="prototype" type="String[]">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>List of names of months, possibly w/some undefined entries for Hebrew leap months
	(ex: [&amp;quot;January&amp;quot;, &amp;quot;February&amp;quot;, undefined, &amp;quot;April&amp;quot;, ...])</summary>
			</property>
			<property name="templateString" scope="prototype" type="String">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_setMonthsAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<parameters>
					<parameter name="months" type="String[]" usage="required"/>
				</parameters>
			</method>
			<method name="_onClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="onChange" scope="prototype">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<summary>Callback when month is selected from drop down</summary>
				<parameters>
					<parameter name="month" type="Number" usage="required"/>
				</parameters>
			</method>
			<method name="_onMenuHover" scope="prototype" private="true">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
				<parameters>
					<parameter name="evt" type="" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.Calendar._MonthDropDown.domNode" type="">
		<properties>
			<property name="innerHTML" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Calendar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Calendar</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.CheckedMenuItem" type="Function" classlike="true" superclass="dijit.MenuItem">
		<resources>
			<resource>dijit/CheckedMenuItem.js</resource>
		</resources>
		<provides>
			<provide>dijit.CheckedMenuItem</provide>
		</provides>
		<summary>A checkbox-like menu item for toggling on and off</summary>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit.MenuItem"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/CheckedMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.CheckedMenuItem</provide>
				</provides>
			</property>
			<property name="checked" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/CheckedMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.CheckedMenuItem</provide>
				</provides>
				<summary>Our checked state</summary>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_setCheckedAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/CheckedMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.CheckedMenuItem</provide>
				</provides>
				<summary>Hook so attr('checked', bool) works.
	Sets the class and state for the check box.</summary>
				<parameters>
					<parameter name="checked" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="onChange" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/CheckedMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.CheckedMenuItem</provide>
				</provides>
				<summary>User defined function to handle check/uncheck events</summary>
				<parameters>
					<parameter name="checked" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_onClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/CheckedMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.CheckedMenuItem</provide>
				</provides>
				<summary>Clicking this item just toggles its state</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.ColorPalette" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/ColorPalette.js</resource>
		</resources>
		<provides>
			<provide>dijit.ColorPalette</provide>
		</provides>
		<summary>A keyboard accessible color-picking widget</summary>
		<description>Grid showing various colors, so the user can pick a certain color.
	Can be used standalone, or as a popup.</description>
		<examples>
			<example>	&lt;div dojoType="dijit.ColorPalette"&gt;&lt;/div&gt;</example>
			<example>	var picker = new dijit.ColorPalette({ },srcNode);
		picker.startup();</example>
		</examples>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._PaletteMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._PaletteMixin"/>
		</mixins>
		<properties>
			<property name="palette" scope="prototype" type="String" tags="const">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
				<summary>Size of grid, either &amp;quot;7x10&amp;quot; or &amp;quot;3x4&amp;quot;.</summary>
			</property>
			<property name="templateString" scope="prototype" type="String">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
				<summary>The template of this widget.</summary>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
			<property name="dyeClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</method>
		</methods>
	</object>
	<object location="dijit.ColorPalette._palettes" type="Map">
		<resources>
			<resource>dijit/ColorPalette.js</resource>
		</resources>
		<provides>
			<provide>dijit.ColorPalette</provide>
		</provides>
		<summary>This represents the value of the colors.
	The first level is a hashmap of the different palettes available.
	The next two dimensions represent the columns and rows of colors.</summary>
		<properties>
			<property name="7x10" scope="normal" type="Array" privateparent="true">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
			<property name="3x4" scope="normal" type="Array" privateparent="true">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.ColorPalette._imagePaths" type="Map">
		<resources>
			<resource>dijit/ColorPalette.js</resource>
		</resources>
		<provides>
			<provide>dijit.ColorPalette</provide>
		</provides>
		<summary>This is stores the path to the palette images</summary>
		<properties>
			<property name="7x10" scope="normal" type="Object" privateparent="true">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
			<property name="3x4" scope="normal" type="Object" privateparent="true">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
			<property name="7x10-rtl" scope="normal" type="Object" privateparent="true">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
			<property name="3x4-rtl" scope="normal" type="Object" privateparent="true">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._Color" type="Function" classlike="true" superclass="dojo.Color">
		<resources>
			<resource>dijit/ColorPalette.js</resource>
		</resources>
		<provides>
			<provide>dijit.ColorPalette</provide>
		</provides>
		<mixins scope="instance">
			<mixin scope="instance" location="dojo.Color"/>
		</mixins>
		<properties>
			<property name="_alias" scope="instance" type="" private="true">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor">
				<parameters>
					<parameter name="alias" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="constructor" scope="prototype">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
				<parameters>
					<parameter name="alias" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="getValue" scope="prototype">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
				<summary>Note that although dijit._Color is initialized with a value like &amp;quot;white&amp;quot; getValue() always
	returns a hex value</summary>
			</method>
			<method name="fillCell" scope="prototype">
				<resources>
					<resource>dijit/ColorPalette.js</resource>
				</resources>
				<provides>
					<provide>dijit.ColorPalette</provide>
				</provides>
				<parameters>
					<parameter name="cell" type="DOMNode" usage="required"/>
					<parameter name="blankGif" type="String" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.Declaration" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Declaration.js</resource>
		</resources>
		<provides>
			<provide>dijit.Declaration</provide>
		</provides>
		<summary>The Declaration widget allows a developer to declare new widget
	classes directly from a snippet of markup.</summary>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
		</mixins>
		<properties>
			<property name="_noScript" scope="prototype" type="Boolean" private="true">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
				<summary>Flag to parser to leave alone the script tags contained inside of me</summary>
			</property>
			<property name="stopParser" scope="prototype" type="Boolean" private="true">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
				<summary>Flag to parser to not try and parse widgets declared inside of me</summary>
			</property>
			<property name="widgetClass" scope="prototype" type="String" tags="const">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
				<summary>Name of class being declared, ex: &amp;quot;acme.myWidget&amp;quot;</summary>
			</property>
			<property name="mixins" scope="prototype" type="String[]" tags="const">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
				<summary>List containing the prototype for this widget, and also any mixins,
	ex: [&amp;quot;dijit._Widget&amp;quot;, &amp;quot;dijit._Container&amp;quot;]</summary>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
			</method>
		</methods>
	</object>
	<object location="dijit.Declaration.defaults">
		<resources>
			<resource>dijit/Declaration.js</resource>
		</resources>
		<provides>
			<provide>dijit.Declaration</provide>
		</provides>
		<properties>
			<property name="widgetsInTemplate" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
			</property>
			<property name="_skipNodeCache" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
			</property>
			<property name="templateString" scope="prototype" type="String">
				<resources>
					<resource>dijit/Declaration.js</resource>
				</resources>
				<provides>
					<provide>dijit.Declaration</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._DialogBase" type="Function" classlike="true" superclass="dijit._Templated">
		<resources>
			<resource>dijit/Dialog.js</resource>
		</resources>
		<provides>
			<provide>dijit.Dialog</provide>
		</provides>
		<summary>A modal dialog Widget</summary>
		<description>Pops up a modal dialog window, blocking access to the screen
	and also graying out the screen Dialog is extended from
	ContentPane so it supports all the same parameters (href, etc.)</description>
		<examples>
			<example>	&lt;div dojoType="dijit.Dialog" href="test.html"&gt;&lt;/div&gt;</example>
			<example>	var foo = new dijit.Dialog({ title: "test dialog", content: "test content" };
		dojo.body().appendChild(foo.domNode);
		foo.startup();</example>
		</examples>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit.form._FormMixin.prototype"/>
			<mixin scope="prototype" location="dijit._DialogMixin.prototype"/>
			<mixin scope="prototype" location="dijit._CssStateMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit.form._FormMixin"/>
			<mixin scope="instance" location="dijit._DialogMixin"/>
			<mixin scope="instance" location="dijit._CssStateMixin"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="attributeMap" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="open" scope="prototype" type="Boolean" tags="readonly">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>True if Dialog is currently displayed on screen.</summary>
			</property>
			<property name="duration" scope="normal" type="Integer">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>The time in milliseconds it takes the dialog to fade in and out</summary>
			</property>
			<property name="refocus" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>A Toggle to modify the default focus behavior of a Dialog, which
	is to re-focus the element which had focus before being opened.
	False will disable refocusing. Default: true</summary>
			</property>
			<property name="autofocus" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>A Toggle to modify the default focus behavior of a Dialog, which
	is to focus on the first dialog element after opening the dialog.
	False will disable autofocusing. Default: true</summary>
			</property>
			<property name="_firstFocusItem" scope="prototype" type="DomNode" tags="readonly" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>The pointer to the first focusable node in the dialog.
	Set by &lt;code&gt;dijit._DialogMixin._getFocusItems&lt;/code&gt;.</summary>
			</property>
			<property name="_lastFocusItem" scope="prototype" type="DomNode" tags="readonly" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>The pointer to which node has focus prior to our dialog.
	Set by &lt;code&gt;dijit._DialogMixin._getFocusItems&lt;/code&gt;.</summary>
			</property>
			<property name="doLayout" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Don't change this parameter from the default value.
	This ContentPane parameter doesn't make sense for Dialog, since Dialog
	is never a child of a layout container, nor can you specify the size of
	Dialog in order to control the size of an inner widget.</summary>
			</property>
			<property name="draggable" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Toggles the moveable aspect of the Dialog. If true, Dialog
	can be dragged by it's title. If false it will remain centered
	in the viewport.</summary>
			</property>
			<property name="aria-describedby" scope="prototype" type="String">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Allows the user to add an aria-describedby attribute onto the dialog.   The value should
	be the id of the container element of text that describes the dialog purpose (usually
	the first text in the dialog).
	&amp;lt;div dojoType=&amp;quot;dijit.Dialog&amp;quot; aria-describedby=&amp;quot;intro&amp;quot; .....&amp;gt;
	&amp;lt;div id=&amp;quot;intro&amp;quot;&amp;gt;Introductory text&amp;lt;/div&amp;gt;
	&amp;lt;div&amp;gt;rest of dialog contents&amp;lt;/div&amp;gt;
	&amp;lt;/div&amp;gt;</summary>
			</property>
			<property name="_modalconnects" scope="prototype" type="Array" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_relativePosition" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="domNode" scope="prototype" type="">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_moveable" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_dndListener" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="underlayAttrs" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_singleChildOriginalStyle" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_alreadyInitialized" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_fadeInDeferred" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_fadeOutDeferred" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
			<property name="_scrollConnected" scope="prototype" type="bool" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="postMixInProperties" scope="prototype">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</method>
			<method name="onLoad" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Called when data has been loaded from an href.
	Unlike most other callbacks, this function can be connected to (via &lt;code&gt;dojo.connect&lt;/code&gt;)
	but should *not* be overridden.</summary>
			</method>
			<method name="_endDrag" scope="prototype" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Called after dragging the Dialog. Saves the position of the dialog in the viewport.</summary>
				<parameters>
					<parameter name="e" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_setup" scope="prototype" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Stuff we need to do before showing the Dialog for the first
	time (but we defer it until right beforehand, for
	performance reasons).</summary>
			</method>
			<method name="_size" scope="prototype" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>If necessary, shrink dialog contents so dialog fits in viewport</summary>
			</method>
			<method name="_position" scope="prototype" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Position modal dialog in the viewport. If no relative offset
	in the viewport has been determined (by dragging, for instance),
	center the node. Otherwise, use the Dialog's stored relative offset,
	and position the node to top: left: values based on the viewport.</summary>
			</method>
			<method name="_onKey" scope="prototype" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Handles the keyboard events for accessibility reasons</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="just let it go"/>
				</return-types>
			</method>
			<method name="show" scope="prototype">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Display the dialog</summary>
				<return-description>dojo.Deferred
	Deferred object that resolves when the display animation is complete</return-description>
			</method>
			<method name="hide" scope="prototype">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Hide the dialog</summary>
				<return-description>dojo.Deferred
	Deferred object that resolves when the hide animation is complete</return-description>
			</method>
			<method name="layout" scope="prototype" private="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Position the Dialog and the underlay</summary>
			</method>
			<method name="destroy" scope="prototype">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</method>
		</methods>
	</object>
	<object location="dijit._DialogBase.cssStateNodes">
		<resources>
			<resource>dijit/Dialog.js</resource>
		</resources>
		<provides>
			<provide>dijit.Dialog</provide>
		</provides>
		<properties>
			<property name="closeButtonNode" scope="normal" type="String">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._DialogBase._singleChild.domNode.style" type="">
		<properties>
			<property name="cssText" scope="prototype" type="" privateparent="true">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Dialog" type="Function" classlike="true" superclass="dijit.layout.ContentPane">
		<resources>
			<resource>dijit/Dialog.js</resource>
		</resources>
		<provides>
			<provide>dijit.Dialog</provide>
		</provides>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._DialogBase.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit.layout.ContentPane"/>
			<mixin scope="instance" location="dijit._DialogBase"/>
		</mixins>
		<methods>
			<method constructor="constructor"/>
		</methods>
	</object>
	<object location="dijit._DialogLevelManager" private="true">
		<resources>
			<resource>dijit/Dialog.js</resource>
		</resources>
		<provides>
			<provide>dijit.Dialog</provide>
		</provides>
		<summary>Controls the various active &amp;quot;levels&amp;quot; on the page, starting with the
	stuff initially visible on the page (at z-index 0), and then having an entry for
	each Dialog shown.</summary>
		<methods>
			<method name="show" scope="normal">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Call right before fade-in animation for new dialog.
	Saves current focus, displays/adjusts underlay for new dialog,
	and sets the z-index of the dialog itself.
	New dialog will be displayed on top of all currently displayed dialogs.
	Caller is responsible for setting focus in new dialog after the fade-in
	animation completes.</summary>
				<parameters>
					<parameter name="dialog" type="dijit._Widget" usage="required"/>
					<parameter name="underlayAttrs" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="hide" scope="normal">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Called when the specified dialog is hidden/destroyed, after the fade-out
	animation ends, in order to reset page focus, fix the underlay, etc.
	If the specified dialog isn't open then does nothing.
	Caller is responsible for either setting display:none on the dialog domNode,
	or calling dijit.popup.hide(), or removing it from the page DOM.</summary>
				<parameters>
					<parameter name="dialog" type="dijit._Widget" usage="required"/>
				</parameters>
			</method>
			<method name="isTop" scope="normal">
				<resources>
					<resource>dijit/Dialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.Dialog</provide>
				</provides>
				<summary>Returns true if specified Dialog is the top in the task</summary>
				<parameters>
					<parameter name="dialog" type="dijit._Widget" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.DialogUnderlay" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/DialogUnderlay.js</resource>
		</resources>
		<provides>
			<provide>dijit.DialogUnderlay</provide>
		</provides>
		<summary>The component that blocks the screen behind a &lt;code&gt;dijit.Dialog&lt;/code&gt;</summary>
		<description>A component used to block input behind a `dijit.Dialog`. Only a single
	instance of this widget is created by `dijit.Dialog`, and saved as
	a reference to be shared between all Dialogs as `dijit._underlay`
	The underlay itself can be styled based on and id:
		#myDialog_underlay { background-color:red; }
	In the case of `dijit.Dialog`, this id is based on the id of the Dialog,
	suffixed with _underlay.</description>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
			<property name="dialogId" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<summary>Id of the dialog.... DialogUnderlay's id is based on this id</summary>
			</property>
			<property name="class" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<summary>This class name is used on the DialogUnderlay node, in addition to dijitDialogUnderlay</summary>
			</property>
			<property name="bgIframe" scope="prototype" type="Object">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_setDialogIdAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<parameters>
					<parameter name="id" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_setClassAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<parameters>
					<parameter name="clazz" type="" usage="required"/>
				</parameters>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<summary>Append the underlay to the body</summary>
			</method>
			<method name="layout" scope="prototype" private="true">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<summary>Sets the background to the size of the viewport</summary>
				<description>Sets the background to the size of the viewport (rather than the size
	of the document) since we need to cover the whole browser window, even
	if the document is only a few lines long.</description>
			</method>
			<method name="show" scope="prototype">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<summary>Show the dialog underlay</summary>
			</method>
			<method name="hide" scope="prototype">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
				<summary>Hides the dialog underlay</summary>
			</method>
		</methods>
	</object>
	<object location="dijit.DialogUnderlay.attributeMap">
		<resources>
			<resource>dijit/DialogUnderlay.js</resource>
		</resources>
		<provides>
			<provide>dijit.DialogUnderlay</provide>
		</provides>
		<properties>
			<property name="id" scope="normal" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.DialogUnderlay.node" type="">
		<properties>
			<property name="className" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.DialogUnderlay.domNode" type="">
	</object>
	<object location="dijit.DialogUnderlay.domNode.style" type="">
		<resources>
			<resource>dijit/DialogUnderlay.js</resource>
		</resources>
		<provides>
			<provide>dijit.DialogUnderlay</provide>
		</provides>
		<properties>
			<property name="display" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
			<property name="top" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
			<property name="left" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.DialogUnderlay.node.style" type="">
		<resources>
			<resource>dijit/DialogUnderlay.js</resource>
		</resources>
		<provides>
			<provide>dijit.DialogUnderlay</provide>
		</provides>
		<properties>
			<property name="width" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
			<property name="height" scope="prototype" type="String">
				<resources>
					<resource>dijit/DialogUnderlay.js</resource>
				</resources>
				<provides>
					<provide>dijit.DialogUnderlay</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Editor" type="Function" classlike="true" superclass="dijit._editor.RichText">
		<resources>
			<resource>dijit/Editor.js</resource>
		</resources>
		<provides>
			<provide>dijit.Editor</provide>
		</provides>
		<summary>A rich text Editing widget</summary>
		<description>This widget provides basic WYSIWYG editing features, based on the browser's
	underlying rich text editing capability, accompanied by a toolbar (`dijit.Toolbar`).
	A plugin model is available to extend the editor's capabilities as well as the
	the options available in the toolbar.  Content generation may vary across
	browsers, and clipboard operations may have different results, to name
	a few limitations.  Note: this widget should not be used with the HTML
	&amp;lt;TEXTAREA&amp;gt; tag -- see dijit._editor.RichText for details.</description>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._editor.RichText"/>
		</mixins>
		<properties>
			<property name="plugins" scope="instance-prototype" type="Object[]" tags="const">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>A list of plugin names (as strings) or instances (as objects)
	for this widget.
	When declared in markup, it might look like:
		plugins=&amp;quot;['bold',{name:'dijit._editor.plugins.FontChoice', command:'fontName', generic:true}]&amp;quot;</summary>
			</property>
			<property name="extraPlugins" scope="prototype" type="Object[]" tags="const">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>A list of extra plugin names which will be appended to plugins array
	the following 3 functions are required to make the editor play nice under a layout widget, see #4070</summary>
			</property>
			<property name="setValueDeferred" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_steps" scope="prototype" type="Array" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_undoedSteps" scope="prototype" type="Array" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="commands" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="toolbar" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_plugins" scope="instance-prototype" type="Array" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_layoutMode" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="customUndo" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Whether we shall use custom undo/redo support instead of the native
	browser support. By default, we now use custom undo.  It works better
	than native browser support and provides a consistent behavior across
	browsers with a minimal performance hit.  We already had the hit on
	the slowest browser, IE, anyway.</summary>
			</property>
			<property name="editActionInterval" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>When using customUndo, not every keystroke will be saved as a step.
	Instead typing (including delete) will be grouped together: after
	a user stops typing for editActionInterval seconds, a step will be
	saved; if a user resume typing within editActionInterval seconds,
	the timeout will be restarted. By default, editActionInterval is 3
	seconds.</summary>
			</property>
			<property name="_inEditing" scope="prototype" type="bool" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_editTimer" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_undoRedoActive" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_savedSelection" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="_editInterval" scope="instance" type="Number" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="constructor" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Runs on widget initialization to setup arrays etc.</summary>
			</method>
			<method name="postMixInProperties" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Extension to make sure a deferred is in place before certain functions
	execute, like making sure all the plugins are properly inserted.</summary>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</method>
			<method name="destroy" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</method>
			<method name="addPlugin" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>takes a plugin name as a string or a plugin instance and
	adds it to the toolbar and associates it with this editor
	instance. The resulting plugin is added to the Editor's
	plugins array. If index is passed, it's placed in the plugins
	array at that index. No big magic, but a nice helper for
	passing in plugin names via markup.</summary>
				<parameters>
					<parameter name="plugin" type="String||Object" usage="required">
						<summary>String, args object or plugin instance
	args:
	This object will be passed to the plugin constructor</summary>
					</parameter>
					<parameter name="index" type="Integer" usage="optional">
						<summary>Used when creating an instance from
	something already in this.plugins. Ensures that the new
	instance is assigned to this.plugins at that index.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="startup" scope="prototype" tags="console.log('startup',arguments);">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Exists to make Editor work as a child of a layout widget.
	Developers don't need to call this method.</summary>
			</method>
			<method name="resize" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Resize the editor to the specified size, see &lt;code&gt;dijit.layout._LayoutWidget.resize&lt;/code&gt;</summary>
				<parameters>
					<parameter name="size" type="" usage="required"/>
				</parameters>
			</method>
			<method name="layout" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Called from &lt;code&gt;dijit.layout._LayoutWidget.resize&lt;/code&gt;.  This shouldn't be called directly</summary>
			</method>
			<method name="_onIEMouseDown" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>IE only to prevent 2 clicks to focus</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="onBeforeActivate" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<parameters>
					<parameter name="e" type="" usage="required"/>
				</parameters>
			</method>
			<method name="onBeforeDeactivate" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Called on IE right before focus is lost.   Saves the selected range.</summary>
				<parameters>
					<parameter name="e" type="" usage="required"/>
				</parameters>
			</method>
			<method name="beginEditing" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Called to note that the user has started typing alphanumeric characters, if it's not already noted.
	Deals with saving undo; see editActionInterval parameter.</summary>
				<parameters>
					<parameter name="cmd" type="" usage="required"/>
				</parameters>
			</method>
			<method name="execCommand" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Main handler for executing any commands to the editor, like paste, bold, etc.
	Called by plugins, but not meant to be called by end users.</summary>
				<parameters>
					<parameter name="cmd" type="" usage="required"/>
				</parameters>
			</method>
			<method name="queryCommandEnabled" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Returns true if specified editor command is enabled.
	Used by the plugins to know when to highlight/not highlight buttons.</summary>
				<parameters>
					<parameter name="cmd" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_moveToBookmark" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Selects the text specified in bookmark b</summary>
				<parameters>
					<parameter name="b" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_changeToStep" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Reverts editor to &amp;quot;to&amp;quot; setting, from the undo stack.</summary>
				<parameters>
					<parameter name="from" type="" usage="required"/>
					<parameter name="to" type="" usage="required"/>
				</parameters>
			</method>
			<method name="undo" scope="prototype" tags="console.log('undo');" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Handler for editor undo (ex: ctrl-z) operation</summary>
			</method>
			<method name="redo" scope="prototype" tags="console.log('redo');" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Handler for editor redo (ex: ctrl-y) operation</summary>
			</method>
			<method name="endEditing" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Called to note that the user has stopped typing alphanumeric characters, if it's not already noted.
	Deals with saving undo; see editActionInterval parameter.</summary>
				<parameters>
					<parameter name="ignore_caret" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_getBookmark" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Get the currently selected text</summary>
			</method>
			<method name="_beginEditing" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Called when the user starts typing alphanumeric characters.
	Deals with saving undo; see editActionInterval parameter.</summary>
				<parameters>
					<parameter name="cmd" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_endEditing" scope="prototype" tags="Avoid filtering to make sure selections restore." private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Called when the user stops typing alphanumeric characters.
	Deals with saving undo; see editActionInterval parameter.</summary>
				<parameters>
					<parameter name="ignore_caret" type="" usage="required"/>
				</parameters>
			</method>
			<method name="onKeyDown" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Handler for onkeydown event.</summary>
				<parameters>
					<parameter name="e" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onBlur" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Called from focus manager when focus has moved away from this editor</summary>
			</method>
			<method name="_saveSelection" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Save the currently selected text in _savedSelection attribute</summary>
			</method>
			<method name="_restoreSelection" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Re-select the text specified in _savedSelection attribute;
	see _saveSelection().</summary>
			</method>
			<method name="onClick" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>Handler for when editor is clicked</summary>
			</method>
			<method name="replaceValue" scope="prototype">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<summary>over-ride of replaceValue to support custom undo and stack maintainence.</summary>
				<parameters>
					<parameter name="html" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="_setDisabledAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
				<parameters>
					<parameter name="value" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_setStateClass" scope="prototype" private="true">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</method>
		</methods>
	</object>
	<object location="dijit.Editor.editingArea.style" type="">
		<properties>
			<property name="height" scope="prototype" type="String">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Editor.iframe.style" type="">
		<properties>
			<property name="height" scope="prototype" type="String">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Editor.document" type="">
	</object>
	<object location="dijit.Editor.document.body" type="">
		<resources>
			<resource>dijit/Editor.js</resource>
		</resources>
		<provides>
			<provide>dijit.Editor</provide>
		</provides>
		<properties>
			<property name="clientWidth" scope="prototype" type="">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="clientHeight" scope="prototype" type="">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="clientLeft" scope="prototype" type="">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="offsetWidth" scope="prototype" type="">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="offsetHeight" scope="prototype" type="">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
			<property name="offsetLeft" scope="prototype" type="">
				<resources>
					<resource>dijit/Editor.js</resource>
				</resources>
				<provides>
					<provide>dijit.Editor</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._editor" private="true">
		<resources>
			<resource>dijit/_editor/RichText.js</resource>
			<resource>dijit/_editor/_Plugin.js</resource>
			<resource>dijit/_editor/html.js</resource>
			<resource>dijit/_editor/plugins/AlwaysShowToolbar.js</resource>
			<resource>dijit/_editor/plugins/EnterKeyHandling.js</resource>
			<resource>dijit/_editor/plugins/FontChoice.js</resource>
			<resource>dijit/_editor/plugins/FullScreen.js</resource>
			<resource>dijit/_editor/plugins/LinkDialog.js</resource>
			<resource>dijit/_editor/plugins/NewPage.js</resource>
			<resource>dijit/_editor/plugins/Print.js</resource>
			<resource>dijit/_editor/plugins/TabIndent.js</resource>
			<resource>dijit/_editor/plugins/TextColor.js</resource>
			<resource>dijit/_editor/plugins/ToggleDir.js</resource>
			<resource>dijit/_editor/plugins/ViewSource.js</resource>
			<resource>dijit/_editor/range.js</resource>
			<resource>dijit/_editor/selection.js</resource>
		</resources>
		<provides>
			<provide>dijit._editor.RichText</provide>
			<provide>dijit._editor._Plugin</provide>
			<provide>dijit._editor.html</provide>
			<provide>dijit._editor.plugins.AlwaysShowToolbar</provide>
			<provide>dijit._editor.plugins.EnterKeyHandling</provide>
			<provide>dijit._editor.plugins.FontChoice</provide>
			<provide>dijit._editor.plugins.FullScreen</provide>
			<provide>dijit._editor.plugins.LinkDialog</provide>
			<provide>dijit._editor.plugins.NewPage</provide>
			<provide>dijit._editor.plugins.Print</provide>
			<provide>dijit._editor.plugins.TabIndent</provide>
			<provide>dijit._editor.plugins.TextColor</provide>
			<provide>dijit._editor.plugins.ToggleDir</provide>
			<provide>dijit._editor.plugins.ViewSource</provide>
			<provide>dijit._editor.range</provide>
			<provide>dijit._editor.selection</provide>
		</provides>
		<properties>
			<property name="html" scope="normal" type="Object" privateparent="true">
				<resources>
					<resource>dijit/_editor/html.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor.html</provide>
				</provides>
			</property>
			<property name="range" scope="normal" type="Object" privateparent="true">
				<resources>
					<resource>dijit/_editor/range.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor.range</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method name="escapeXml" scope="normal" privateparent="true">
				<resources>
					<resource>dijit/_editor/html.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor.html</provide>
				</provides>
				<summary>Adds escape sequences for special characters in XML: &amp;amp;&amp;lt;&amp;gt;&amp;quot;'
	Optionally skips escapes for single quotes</summary>
				<parameters>
					<parameter name="str" type="String" usage="required"/>
					<parameter name="noSingleQuotes" type="Boolean" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="string"/>
				</return-types>
			</method>
			<method name="getNodeHtml" scope="normal" privateparent="true">
				<resources>
					<resource>dijit/_editor/html.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor.html</provide>
				</provides>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="getChildrenHtml" scope="normal" privateparent="true">
				<resources>
					<resource>dijit/_editor/html.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor.html</provide>
				</provides>
				<summary>Returns the html content of a DomNode and children</summary>
				<parameters>
					<parameter name="dom" type="DomNode" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
		</methods>
	</object>
	<object location="dijit._editor._Plugin" type="Function" classlike="true" private="true" privateparent="true">
		<resources>
			<resource>dijit/Editor.js</resource>
			<resource>dijit/_editor/_Plugin.js</resource>
		</resources>
		<provides>
			<provide>dijit.Editor</provide>
			<provide>dijit._editor._Plugin</provide>
		</provides>
		<properties>
			<property name="editor" scope="prototype" type="dijit.Editor" tags="const" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Points to the parent editor</summary>
			</property>
			<property name="iconClassPrefix" scope="prototype" type="String" tags="const" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>The CSS class name for the button node is formed from &lt;code&gt;iconClassPrefix&lt;/code&gt; and &lt;code&gt;command&lt;/code&gt;</summary>
			</property>
			<property name="button" scope="prototype" type="dijit._Widget" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Pointer to &lt;code&gt;dijit.form.Button&lt;/code&gt; or other widget (ex: &lt;code&gt;dijit.form.FilteringSelect&lt;/code&gt;)
	that is added to the toolbar to control this plugin.
	If not specified, will be created on initialization according to &lt;code&gt;buttonClass&lt;/code&gt;</summary>
			</property>
			<property name="command" scope="prototype" type="String" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>String like &amp;quot;insertUnorderedList&amp;quot;, &amp;quot;outdent&amp;quot;, &amp;quot;justifyCenter&amp;quot;, etc. that represents an editor command.
	Passed to editor.execCommand() if &lt;code&gt;useDefaultCommand&lt;/code&gt; is true.</summary>
			</property>
			<property name="useDefaultCommand" scope="prototype" type="Boolean" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>If true, this plugin executes by calling Editor.execCommand() with the argument specified in &lt;code&gt;command&lt;/code&gt;.</summary>
			</property>
			<property name="buttonClass" scope="normal" type="Widget" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Class
	Class of widget (ex: dijit.form.Button or dijit.form.FilteringSelect)
	that is added to the toolbar to control this plugin.
	This is used to instantiate the button, unless &lt;code&gt;button&lt;/code&gt; itself is specified directly.</summary>
			</property>
			<property name="disabled" scope="prototype" type="Boolean" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Flag to indicate if this plugin has been disabled and should do nothing
	helps control button state, among other things.  Set via the setter api.</summary>
			</property>
			<property name="enabled" scope="prototype" type="" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
			</property>
			<property name="checked" scope="prototype" type="" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
			</property>
			<property name="_attrPairNames" scope="instance-prototype" type="Object" private="true" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
			</property>
			<property name="params" scope="instance" type="Object" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
			</property>
			<property name="_connects" scope="instance" type="Array" private="true" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor">
				<parameters>
					<parameter name="args" type="Object" usage="optional"/>
					<parameter name="node" type="DomNode" usage="optional"/>
				</parameters>
			</method>
			<method name="constructor" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<parameters>
					<parameter name="args" type="Object" usage="optional"/>
					<parameter name="node" type="DomNode" usage="optional"/>
				</parameters>
			</method>
			<method name="getLabel" scope="prototype" private="true" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Returns the label to use for the button</summary>
				<parameters>
					<parameter name="key" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="_initButton" scope="prototype" tags="extension" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Initialize the button or other widget that will control this plugin.
	This code only works for plugins controlling built-in commands in the editor.</summary>
			</method>
			<method name="destroy" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Destroy this plugin</summary>
			</method>
			<method name="connect" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Make a dojo.connect() that is automatically disconnected when this plugin is destroyed.
	Similar to &lt;code&gt;dijit._Widget.connect&lt;/code&gt;.</summary>
				<parameters>
					<parameter name="o" type="" usage="required"/>
					<parameter name="f" type="" usage="required"/>
					<parameter name="tf" type="" usage="required"/>
				</parameters>
			</method>
			<method name="updateState" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Change state of the plugin to respond to events in the editor.</summary>
				<description>This is called on meaningful events in the editor, such as change of selection
	or caret position (but not simple typing of alphanumeric keys).   It gives the
	plugin a chance to update the CSS of its button.
	For example, the "bold" plugin will highlight/unhighlight the bold button depending on whether the
	characters next to the caret are bold or not.
	Only makes sense when `useDefaultCommand` is true, as it calls Editor.queryCommandEnabled(`command`).</description>
			</method>
			<method name="setEditor" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Tell the plugin which Editor it is associated with.</summary>
				<parameters>
					<parameter name="editor" type="dijit.Editor" usage="required"/>
				</parameters>
			</method>
			<method name="setToolbar" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Tell the plugin to add it's controller widget (often a button)
	to the toolbar.  Does nothing if there is no controller widget.</summary>
				<parameters>
					<parameter name="toolbar" type="dijit.Toolbar" usage="required"/>
				</parameters>
			</method>
			<method name="set" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Set a property on a plugin</summary>
				<description>Sets named properties on a plugin which may potentially be handled by a
	setter in the plugin.
	For example, if the plugin has a properties "foo"
	and "bar" and a method named "_setFooAttr", calling:
		plugin.set("foo", "Howdy!");
	would be equivalent to writing:
		plugin._setFooAttr("Howdy!");
	and:
		plugin.set("bar", 3);
	would be equivalent to writing:
		plugin.bar = 3;
	set() may also be called with a hash of name/value pairs, ex:
		plugin.set({
			foo: "Howdy",
			bar: 3
		})
	This is equivalent to calling set(foo, "Howdy") and set(bar, 3)</description>
				<parameters>
					<parameter name="name" type="attribute" usage="required">
						<summary>The property to set.</summary>
					</parameter>
					<parameter name="value" type="anything" usage="required">
						<summary>The value to set in the property.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="get" scope="prototype" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Get a property from a plugin.</summary>
				<description>Get a named property from a plugin. The property may
	potentially be retrieved via a getter method. If no getter is defined, this
	just retrieves the object's property.
	For example, if the plugin has a properties "foo"
	and "bar" and a method named "_getFooAttr", calling:
		plugin.get("foo");
	would be equivalent to writing:
		plugin._getFooAttr();
	and:
		plugin.get("bar");
	would be equivalent to writing:
		plugin.bar;</description>
				<parameters>
					<parameter name="name" type="The" usage="required">
						<summary>property to get.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setDisabledAttr" scope="prototype" private="true" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Function to set the plugin state and call updateState to make sure the
	button is updated appropriately.</summary>
				<parameters>
					<parameter name="disabled" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_getAttrNames" scope="prototype" private="true" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Helper function for get() and set().
	Caches attribute name values so we don't do the string ops every time.</summary>
				<parameters>
					<parameter name="name" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_set" scope="prototype" private="true" privateparent="true">
				<resources>
					<resource>dijit/_editor/_Plugin.js</resource>
				</resources>
				<provides>
					<provide>dijit._editor._Plugin</provide>
				</provides>
				<summary>Helper function to set new value for specified attribute</summary>
				<parameters>
					<parameter name="name" type="String" usage="required"/>
					<parameter name="value" type="anything" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.InlineEditBox" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/InlineEditBox.js</resource>
		</resources>
		<provides>
			<provide>dijit.InlineEditBox</provide>
		</provides>
		<summary>An element with in-line edit capabilites</summary>
		<description>Behavior for an existing node (`&lt;p&gt;`, `&lt;div&gt;`, `&lt;span&gt;`, etc.) so that
	when you click it, an editor shows up in place of the original
	text.  Optionally, Save and Cancel button are displayed below the edit widget.
	When Save is clicked, the text is pulled from the edit
	widget and redisplayed and the edit widget is again hidden.
	By default a plain Textarea widget is used as the editor (or for
	inline values a TextBox), but you can specify an editor such as
	dijit.Editor (for editing HTML) or a Slider (for adjusting a number).
	An edit widget must support the following API to be used:
	- displayedValue or value as initialization parameter,
	and available through set('displayedValue') / set('value')
	- void focus()
	- DOM-node focusNode = node containing editable text</description>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
		</mixins>
		<properties>
			<property name="editing" scope="prototype" type="Boolean" tags="readonly">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Is the node currently in edit mode?</summary>
			</property>
			<property name="autoSave" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Changing the value automatically saves it; don't have to push save button
	(and save button isn't even displayed)</summary>
			</property>
			<property name="buttonSave" scope="prototype" type="String">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Save button label</summary>
			</property>
			<property name="buttonCancel" scope="prototype" type="String">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Cancel button label</summary>
			</property>
			<property name="renderAsHtml" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Set this to true if the specified Editor's value should be interpreted as HTML
	rather than plain text (ex: &lt;code&gt;dijit.Editor&lt;/code&gt;)</summary>
			</property>
			<property name="editor" scope="prototype" type="String|Function">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Class name (or reference to the Class) for Editor widget</summary>
			</property>
			<property name="editorWrapper" scope="prototype" type="String|Function">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Class name (or reference to the Class) for widget that wraps the editor widget, displaying save/cancel
	buttons.</summary>
			</property>
			<property name="editorParams" scope="instance-prototype" type="Object">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Set of parameters for editor, like {required: true}</summary>
			</property>
			<property name="disabled" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>If true, clicking the InlineEditBox to edit it will have no effect.</summary>
			</property>
			<property name="width" scope="prototype" type="String">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Width of editor.  By default it's width=100% (ie, block mode).</summary>
			</property>
			<property name="value" scope="prototype" type="String">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>The display value of the widget in read-only mode</summary>
			</property>
			<property name="noValueIndicator" scope="prototype" type="String" tags="const">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>The text that gets displayed when there is no value (so that the user has a place to click to edit)</summary>
			</property>
			<property name="_savedPosition" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
			<property name="_savedOpacity" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
			<property name="_savedTabIndex" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="onChange" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Set this handler to be notified of changes to value.</summary>
				<parameters>
					<parameter name="value" type="" usage="required"/>
				</parameters>
			</method>
			<method name="onCancel" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Set this handler to be notified when editing is cancelled.</summary>
			</method>
			<method name="constructor" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Sets up private arrays etc.</summary>
			</method>
			<method name="postMixInProperties" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</method>
			<method name="setDisabled" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Deprecated.   Use set('disabled', ...) instead.</summary>
				<parameters>
					<parameter name="disabled" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_setDisabledAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Hook to make set(&amp;quot;disabled&amp;quot;, ...) work.
	Set disabled state of widget.</summary>
				<parameters>
					<parameter name="disabled" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_onMouseOver" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Handler for onmouseover and onfocus event.</summary>
			</method>
			<method name="_onMouseOut" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Handler for onmouseout and onblur event.</summary>
			</method>
			<method name="_onClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Handler for onclick event.</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="edit" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Display the editor widget in place of the original (read only) markup.</summary>
			</method>
			<method name="_onBlur" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Called when focus moves outside the InlineEditBox.
	Performs garbage collection.</summary>
			</method>
			<method name="destroy" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</method>
			<method name="_showText" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Revert to display mode, and optionally focus on display node</summary>
				<parameters>
					<parameter name="focus" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="save" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Save the contents of the editor and revert to display mode.</summary>
				<parameters>
					<parameter name="focus" type="Boolean" usage="required">
						<summary>Focus on the display mode text</summary>
					</parameter>
				</parameters>
			</method>
			<method name="setValue" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Deprecated.   Use set('value', ...) instead.</summary>
				<parameters>
					<parameter name="val" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="_setValueAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Hook to make set(&amp;quot;value&amp;quot;, ...) work.
	Inserts specified HTML value into this node, or an &amp;quot;input needed&amp;quot; character if node is blank.</summary>
				<parameters>
					<parameter name="val" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="getValue" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Deprecated.   Use get('value') instead.</summary>
			</method>
			<method name="cancel" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Revert to display mode, discarding any changes made in the editor</summary>
				<parameters>
					<parameter name="focus" type="Boolean" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.InlineEditBox.displayNode" type="">
		<resources>
			<resource>dijit/InlineEditBox.js</resource>
		</resources>
		<provides>
			<provide>dijit.InlineEditBox</provide>
		</provides>
		<properties>
			<property name="innerHTML" scope="prototype" type="Object">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.InlineEditBox.wrapperWidget">
		<resources>
			<resource>dijit/InlineEditBox.js</resource>
		</resources>
		<provides>
			<provide>dijit.InlineEditBox</provide>
		</provides>
		<properties>
			<property name="editWidget" scope="prototype" type="">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._InlineEditor" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/InlineEditBox.js</resource>
		</resources>
		<provides>
			<provide>dijit.InlineEditBox</provide>
		</provides>
		<summary>Internal widget used by InlineEditBox, displayed when in editing mode
	to display the editor and maybe save/cancel buttons.  Calling code should
	connect to save/cancel methods to detect when editing is finished
	Has mainly the same parameters as InlineEditBox, plus these values:
	style: Object
	Set of CSS attributes of display node, to replicate in editor
	value: String
	Value as an HTML string or plain text string, depending on renderAsHTML flag</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
			<property name="widgetsInTemplate" scope="prototype" type="Object">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
			<property name="messages" scope="prototype" type="Object">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
			<property name="sourceStyle" scope="prototype" type="">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
			<property name="editWidget" scope="prototype" type="Object">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="postMixInProperties" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</method>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</method>
			<method name="_onIntermediateChange" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Called for editor widgets that support the intermediateChanges=true flag as a way
	to detect when to enable/disabled the save button</summary>
				<parameters>
					<parameter name="val" type="" usage="required"/>
				</parameters>
			</method>
			<method name="destroy" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</method>
			<method name="getValue" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Return the [display] value of the edit widget</summary>
			</method>
			<method name="_onKeyPress" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Handler for keypress in the edit box in autoSave mode.</summary>
				<description>For autoSave widgets, if Esc/Enter, call cancel/save.</description>
				<parameters>
					<parameter name="e" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onBlur" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Called when focus moves outside the editor</summary>
			</method>
			<method name="_onChange" scope="prototype" private="true">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Called when the underlying widget fires an onChange event,
	such as when the user selects a value from the drop down list of a ComboBox,
	which means that the user has finished entering the value and we should save.</summary>
			</method>
			<method name="enableSave" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>User overridable function returning a Boolean to indicate
	if the Save button should be enabled or not - usually due to invalid conditions</summary>
			</method>
			<method name="focus" scope="prototype">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
				<summary>Focus the edit widget.</summary>
			</method>
		</methods>
	</object>
	<object location="dijit._InlineEditor.inlineEditBox" type="">
		<properties>
			<property name="width" scope="prototype" type="">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._InlineEditor.domNode.style" type="">
		<properties>
			<property name="display" scope="prototype" type="String">
				<resources>
					<resource>dijit/InlineEditBox.js</resource>
				</resources>
				<provides>
					<provide>dijit.InlineEditBox</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._MenuBase" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Menu.js</resource>
		</resources>
		<provides>
			<provide>dijit.Menu</provide>
		</provides>
		<summary>Base class for Menu and MenuBar</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._KeyNavContainer.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._KeyNavContainer"/>
		</mixins>
		<properties>
			<property name="parentMenu" scope="prototype" type="Widget" tags="readonly">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>pointer to menu that displayed me</summary>
			</property>
			<property name="popupDelay" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>number of milliseconds before hovering (without clicking) causes the popup to automatically open.</summary>
			</property>
			<property name="hover_timer" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="_hoveredChild" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="_focus_timer" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="isActive" scope="prototype" type="bool">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="isShowingNow" scope="prototype" type="bool">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="startup" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</method>
			<method name="onExecute" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Attach point for notification about when a menu item has been executed.
	This is an internal mechanism used for Menus to signal to their parent to
	close them, because they are about to execute the onClick handler.   In
	general developers should not attach to or override this method.</summary>
			</method>
			<method name="onCancel" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Attach point for notification about when the user cancels the current menu
	This is an internal mechanism used for Menus to signal to their parent to
	close them.  In general developers should not attach to or override this method.</summary>
				<parameters>
					<parameter name="closeAll" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_moveToPopup" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>This handles the right arrow key (left arrow key on RTL systems),
	which will either open a submenu, or move to the next item in the
	ancestor MenuBar</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onPopupHover" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>This handler is called when the mouse moves over the popup.</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="onItemHover" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Called when cursor is over a MenuItem.</summary>
				<parameters>
					<parameter name="item" type="MenuItem" usage="required"/>
				</parameters>
			</method>
			<method name="_onChildBlur" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Called when a child MenuItem becomes inactive because focus
	has been removed from the MenuItem *and* it's descendant menus.</summary>
				<parameters>
					<parameter name="item" type="" usage="required"/>
				</parameters>
			</method>
			<method name="onItemUnhover" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Callback fires when mouse exits a MenuItem</summary>
				<parameters>
					<parameter name="item" type="MenuItem" usage="required"/>
				</parameters>
			</method>
			<method name="_stopPopupTimer" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Cancels the popup timer because the user has stop hovering
	on the MenuItem, etc.</summary>
			</method>
			<method name="_stopPendingCloseTimer" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Cancels the pending-close timer because the close has been preempted</summary>
				<parameters>
					<parameter name="popup" type="dijit._Widget" usage="required"/>
				</parameters>
			</method>
			<method name="_stopFocusTimer" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Cancels the pending-focus timer because the menu was closed before focus occured</summary>
			</method>
			<method name="_getTopMenu" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Returns the top menu in this chain of Menus</summary>
			</method>
			<method name="onItemClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Handle clicks on an item.</summary>
				<parameters>
					<parameter name="item" type="dijit._Widget" usage="required"/>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_openPopup" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Open the popup to the side of/underneath the current menu item</summary>
				<return-types>
					<return-type type="the focused child lost focus since the timer was started"/>
				</return-types>
			</method>
			<method name="_markActive" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Mark this menu's state as active.
	Called when this Menu gets focus from:
	1) clicking it (mouse or via space/arrow key)
	2) being opened by a parent menu.
	This is not called just from mouse hover.
	Focusing a menu via TAB does NOT automatically set isActive
	since TAB is a navigation operation and not a selection one.
	For Windows apps, pressing the ALT key focuses the menubar
	menus (similar to TAB navigation) but the menu is not active
	(ie no dropdown) until an item is clicked.</summary>
			</method>
			<method name="onOpen" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Callback when this menu is opened.
	This is called by the popup manager as notification that the menu
	was opened.</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_markInactive" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Mark this menu's state as inactive.</summary>
			</method>
			<method name="onClose" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Callback when this menu is closed.
	This is called by the popup manager as notification that the menu
	was closed.</summary>
			</method>
			<method name="_closeChild" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Called when submenu is clicked or focus is lost.  Close hierarchy of menus.</summary>
			</method>
			<method name="_onItemFocus" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Called when child of this Menu gets focus from:
	1) clicking it
	2) tabbing into it
	3) being opened by a parent menu.
	This is not called just from mouse hover.</summary>
				<parameters>
					<parameter name="item" type="MenuItem" usage="required"/>
				</parameters>
			</method>
			<method name="_onBlur" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Called when focus is moved away from this Menu and it's submenus.</summary>
			</method>
			<method name="_cleanUp" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Called when the user is done with this menu.  Closes hierarchy of menus.</summary>
			</method>
		</methods>
	</object>
	<object location="dijit._MenuBase.currentPopup">
		<resources>
			<resource>dijit/Menu.js</resource>
		</resources>
		<provides>
			<provide>dijit.Menu</provide>
		</provides>
	</object>
	<object location="dijit._MenuBase.currentPopup.parentMenu" type="">
		<resources>
			<resource>dijit/Menu.js</resource>
		</resources>
		<provides>
			<provide>dijit.Menu</provide>
		</provides>
		<properties>
			<property name="focusedChild" scope="prototype" type="">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._MenuBase.focusedChild">
		<resources>
			<resource>dijit/Menu.js</resource>
		</resources>
		<provides>
			<provide>dijit.Menu</provide>
		</provides>
	</object>
	<object location="dijit._MenuBase.focusedChild.popup" type="">
		<resources>
			<resource>dijit/Menu.js</resource>
		</resources>
		<provides>
			<provide>dijit.Menu</provide>
		</provides>
		<properties>
			<property name="parentMenu" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="from_item" scope="prototype" type="">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="_focus_timer" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Menu" type="Function" classlike="true" superclass="dijit._MenuBase">
		<resources>
			<resource>dijit/Menu.js</resource>
			<resource>dojox/widget/PlaceholderMenuItem.js</resource>
		</resources>
		<provides>
			<provide>dijit.Menu</provide>
			<provide>dojox.widget.PlaceholderMenuItem</provide>
		</provides>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._MenuBase"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="targetNodeIds" scope="prototype" type="String[]" tags="const">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Array of dom node ids of nodes to attach to.
	Fill this with nodeIds upon widget creation and it becomes context menu for those nodes.</summary>
			</property>
			<property name="contextMenuForWindow" scope="prototype" type="Boolean" tags="const">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>If true, right clicking anywhere on the window will cause this context menu to open.
	If false, must specify targetNodeIds.</summary>
			</property>
			<property name="leftClickToOpen" scope="prototype" type="Boolean" tags="const">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>If true, menu will open on left click instead of right click, similiar to a file menu.</summary>
			</property>
			<property name="refocus" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>When this menu closes, re-focus the element which had focus before it was opened.</summary>
			</property>
			<property name="_openSubMenuKey" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="_closeSubMenuKey" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="_openTimer" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
			<property name="_bindings" scope="instance" type="Array" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="constructor" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</method>
			<method name="_onKeyPress" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Handle keyboard based menu navigation.</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_iframeContentWindow" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Returns the window reference of the passed iframe</summary>
				<parameters>
					<parameter name="iframe_el" type="HTMLIFrameElement" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Window"/>
				</return-types>
			</method>
			<method name="_iframeContentDocument" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Returns a reference to the document object inside iframe_el</summary>
				<parameters>
					<parameter name="iframe_el" type="HTMLIFrameElement" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="HTMLDocument"/>
				</return-types>
			</method>
			<method name="bindDomNode" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Attach menu to given node</summary>
				<parameters>
					<parameter name="node" type="String|DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="unBindDomNode" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Detach menu from given node</summary>
				<parameters>
					<parameter name="nodeName" type="String|DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="_scheduleOpen" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Set timer to display myself.  Using a timer rather than displaying immediately solves
	two problems:
	1. IE: without the delay, focus work in &amp;quot;open&amp;quot; causes the system
	context menu to appear in spite of stopEvent.
	2. Avoid double-shows on linux, where shift-F10 generates an oncontextmenu event
	even after a dojo.stopEvent(e).  (Shift-F10 on windows doesn't generate the
	oncontextmenu event.)</summary>
				<parameters>
					<parameter name="target" type="DomNode" usage="optional"/>
					<parameter name="iframe" type="DomNode" usage="optional"/>
					<parameter name="coords" type="Object" usage="optional"/>
				</parameters>
			</method>
			<method name="_openMyself" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
				<summary>Internal function for opening myself when the user does a right-click or something similar.</summary>
				<parameters>
					<parameter name="args" type="This" usage="required">
						<summary>is an Object containing:
	* target:
	The node that is being clicked
	* iframe:
	If an &amp;lt;iframe&amp;gt; is being clicked, iframe points to that iframe
	* coords:
	Put menu at specified x/y position in viewport, or if iframe is
	specified, then relative to iframe.
	_openMyself() formerly took the event object, and since various code references
	evt.target (after connecting to _openMyself()), using an Object for parameters
	(so that old code still works).</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_onBlur" scope="prototype" private="true">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</method>
			<method name="uninitialize" scope="prototype">
				<resources>
					<resource>dijit/Menu.js</resource>
				</resources>
				<provides>
					<provide>dijit.Menu</provide>
				</provides>
			</method>
			<method name="getPlaceholders" scope="prototype">
				<resources>
					<resource>dojox/widget/PlaceholderMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dojox.widget.PlaceholderMenuItem</provide>
				</provides>
				<summary>Returns an array of placeholders with the given label.  There
	can be multiples.</summary>
				<return-description>An array of placeholders that match the given label</return-description>
				<parameters>
					<parameter name="label" type="String" usage="optional">
						<summary>Label to search for - if not specified, then all placeholders
	are returned</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="dojox.widget.PlaceholderMenuItem[]"/>
				</return-types>
			</method>
		</methods>
	</object>
	<object location="dijit.MenuBar" type="Function" classlike="true" superclass="dijit._MenuBase">
		<resources>
			<resource>dijit/MenuBar.js</resource>
		</resources>
		<provides>
			<provide>dijit.MenuBar</provide>
		</provides>
		<summary>A menu bar, listing menu choices horizontally, like the &amp;quot;File&amp;quot; menu in most desktop applications</summary>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._MenuBase"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
			</property>
			<property name="_isMenuBar" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
				<summary>This is a MenuBar widget, not a (vertical) Menu widget.</summary>
			</property>
			<property name="_orient" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
			</property>
			<property name="focusedChild" scope="prototype" type="">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
			</method>
			<method name="focusChild" scope="prototype">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
				<parameters>
					<parameter name="item" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onKeyPress" scope="prototype">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
				<summary>Handle keyboard based menu navigation.</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="onItemClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/MenuBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBar</provide>
				</provides>
				<summary>Handle clicks on an item. Cancels a dropdown if already open.</summary>
				<parameters>
					<parameter name="item" type="dijit._Widget" usage="required"/>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dojo">
		<resources>
			<resource>dojo/AdapterRegistry.js</resource>
			<resource>dojo/DeferredList.js</resource>
			<resource>dojo/NodeList-data.js</resource>
			<resource>dojo/NodeList-fx.js</resource>
			<resource>dojo/NodeList-html.js</resource>
			<resource>dojo/NodeList-manipulate.js</resource>
			<resource>dojo/NodeList-traverse.js</resource>
			<resource>dojo/Stateful.js</resource>
			<resource>dojo/_base/Color.js</resource>
			<resource>dojo/_base/Deferred.js</resource>
			<resource>dojo/_base/NodeList.js</resource>
			<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
			<resource>dojo/_base/_loader/loader.js</resource>
			<resource>dojo/_base/_loader/loader_debug.js</resource>
			<resource>dojo/_base/_loader/loader_xd.js</resource>
			<resource>dojo/_base/array.js</resource>
			<resource>dojo/_base/connect.js</resource>
			<resource>dojo/_base/declare.js</resource>
			<resource>dojo/_base/event.js</resource>
			<resource>dojo/_base/fx.js</resource>
			<resource>dojo/_base/html.js</resource>
			<resource>dojo/_base/json.js</resource>
			<resource>dojo/_base/lang.js</resource>
			<resource>dojo/_base/query-sizzle.js</resource>
			<resource>dojo/_base/query.js</resource>
			<resource>dojo/_base/window.js</resource>
			<resource>dojo/_base/xhr.js</resource>
			<resource>dojo/_firebug/firebug.js</resource>
			<resource>dojo/back.js</resource>
			<resource>dojo/behavior.js</resource>
			<resource>dojo/cache.js</resource>
			<resource>dojo/cldr/monetary.js</resource>
			<resource>dojo/cldr/supplemental.js</resource>
			<resource>dojo/colors.js</resource>
			<resource>dojo/cookie.js</resource>
			<resource>dojo/currency.js</resource>
			<resource>dojo/data/ItemFileReadStore.js</resource>
			<resource>dojo/data/ItemFileWriteStore.js</resource>
			<resource>dojo/data/ObjectStore.js</resource>
			<resource>dojo/data/api/Identity.js</resource>
			<resource>dojo/data/api/Notification.js</resource>
			<resource>dojo/data/api/Read.js</resource>
			<resource>dojo/data/api/Request.js</resource>
			<resource>dojo/data/api/Write.js</resource>
			<resource>dojo/data/util/filter.js</resource>
			<resource>dojo/data/util/simpleFetch.js</resource>
			<resource>dojo/data/util/sorter.js</resource>
			<resource>dojo/date/locale.js</resource>
			<resource>dojo/date/stamp.js</resource>
			<resource>dojo/date.js</resource>
			<resource>dojo/dnd/Avatar.js</resource>
			<resource>dojo/dnd/Container.js</resource>
			<resource>dojo/dnd/Manager.js</resource>
			<resource>dojo/dnd/Moveable.js</resource>
			<resource>dojo/dnd/Mover.js</resource>
			<resource>dojo/dnd/Selector.js</resource>
			<resource>dojo/dnd/Source.js</resource>
			<resource>dojo/dnd/TimedMoveable.js</resource>
			<resource>dojo/dnd/autoscroll.js</resource>
			<resource>dojo/dnd/common.js</resource>
			<resource>dojo/dnd/move.js</resource>
			<resource>dojo/fx/Toggler.js</resource>
			<resource>dojo/fx/easing.js</resource>
			<resource>dojo/fx.js</resource>
			<resource>dojo/gears.js</resource>
			<resource>dojo/hash.js</resource>
			<resource>dojo/html.js</resource>
			<resource>dojo/io/iframe.js</resource>
			<resource>dojo/io/script.js</resource>
			<resource>dojo/jaxer.js</resource>
			<resource>dojo/number.js</resource>
			<resource>dojo/parser.js</resource>
			<resource>dojo/regexp.js</resource>
			<resource>dojo/robot.js</resource>
			<resource>dojo/robotx.js</resource>
			<resource>dojo/rpc/JsonService.js</resource>
			<resource>dojo/rpc/JsonpService.js</resource>
			<resource>dojo/rpc/RpcService.js</resource>
			<resource>dojo/store/Cache.js</resource>
			<resource>dojo/store/DataStore.js</resource>
			<resource>dojo/store/JsonRest.js</resource>
			<resource>dojo/store/Memory.js</resource>
			<resource>dojo/store/Observable.js</resource>
			<resource>dojo/store/util/QueryResults.js</resource>
			<resource>dojo/store/util/SimpleQueryEngine.js</resource>
			<resource>dojo/string.js</resource>
			<resource>dojo/uacss.js</resource>
			<resource>dojo/window.js</resource>
			<resource>dojox/charting/widget/Chart.js</resource>
			<resource>dojox/charting/widget/Sparkline.js</resource>
			<resource>dojox/fx/style.js</resource>
			<resource>dojox/gfx/canvas.js</resource>
			<resource>dojox/gfx/fx.js</resource>
			<resource>dojox/gfx/gradient.js</resource>
			<resource>dojox/gfx/gradutils.js</resource>
			<resource>dojox/gfx/silverlight.js</resource>
			<resource>dojox/gfx/svg.js</resource>
			<resource>dojox/gfx/utils.js</resource>
			<resource>dojox/gfx/vml.js</resource>
			<resource>dojox/grid/TreeGrid.js</resource>
			<resource>dojox/lang/aspect.js</resource>
			<resource>dojox/lang/async/event.js</resource>
			<resource>dojox/lang/async/timeout.js</resource>
			<resource>dojox/lang/async/topic.js</resource>
			<resource>dojox/lang/async.js</resource>
			<resource>dojox/lang/functional/array.js</resource>
			<resource>dojox/lang/functional/fold.js</resource>
			<resource>dojox/lang/functional/object.js</resource>
			<resource>dojox/lang/functional/reversed.js</resource>
			<resource>dojox/lang/functional/scan.js</resource>
			<resource>dojox/lang/functional/sequence.js</resource>
			<resource>dojox/mobile/parser.js</resource>
			<resource>dojox/mobile/scrollable.js</resource>
			<resource>dojox/xml/widgetParser.js</resource>
		</resources>
		<provides>
			<provide>dojo.AdapterRegistry</provide>
			<provide>dojo.DeferredList</provide>
			<provide>dojo.NodeList-data</provide>
			<provide>dojo.NodeList-fx</provide>
			<provide>dojo.NodeList-html</provide>
			<provide>dojo.NodeList-manipulate</provide>
			<provide>dojo.NodeList-traverse</provide>
			<provide>dojo.Stateful</provide>
			<provide>dojo._base.Color</provide>
			<provide>dojo._base.Deferred</provide>
			<provide>dojo._base.NodeList</provide>
			<provide>dojo._base._loader.loader_debug</provide>
			<provide>dojo._base._loader.loader_xd</provide>
			<provide>dojo._base.array</provide>
			<provide>dojo._base.connect</provide>
			<provide>dojo._base.declare</provide>
			<provide>dojo._base.event</provide>
			<provide>dojo._base.fx</provide>
			<provide>dojo._base.html</provide>
			<provide>dojo._base.json</provide>
			<provide>dojo._base.lang</provide>
			<provide>dojo._base.query</provide>
			<provide>dojo._base.window</provide>
			<provide>dojo._base.xhr</provide>
			<provide>dojo._firebug.firebug</provide>
			<provide>dojo.back</provide>
			<provide>dojo.behavior</provide>
			<provide>dojo.cache</provide>
			<provide>dojo.cldr.monetary</provide>
			<provide>dojo.cldr.supplemental</provide>
			<provide>dojo.colors</provide>
			<provide>dojo.cookie</provide>
			<provide>dojo.currency</provide>
			<provide>dojo.data.ItemFileReadStore</provide>
			<provide>dojo.data.ItemFileWriteStore</provide>
			<provide>dojo.data.ObjectStore</provide>
			<provide>dojo.data.api.Identity</provide>
			<provide>dojo.data.api.Notification</provide>
			<provide>dojo.data.api.Read</provide>
			<provide>dojo.data.api.Request</provide>
			<provide>dojo.data.api.Write</provide>
			<provide>dojo.data.util.filter</provide>
			<provide>dojo.data.util.simpleFetch</provide>
			<provide>dojo.data.util.sorter</provide>
			<provide>dojo.date.locale</provide>
			<provide>dojo.date.stamp</provide>
			<provide>dojo.date</provide>
			<provide>dojo.dnd.Avatar</provide>
			<provide>dojo.dnd.Container</provide>
			<provide>dojo.dnd.Manager</provide>
			<provide>dojo.dnd.Moveable</provide>
			<provide>dojo.dnd.Mover</provide>
			<provide>dojo.dnd.Selector</provide>
			<provide>dojo.dnd.Source</provide>
			<provide>dojo.dnd.TimedMoveable</provide>
			<provide>dojo.dnd.autoscroll</provide>
			<provide>dojo.dnd.common</provide>
			<provide>dojo.dnd.move</provide>
			<provide>dojo.fx.Toggler</provide>
			<provide>dojo.fx.easing</provide>
			<provide>dojo.fx</provide>
			<provide>dojo.gears</provide>
			<provide>dojo.hash</provide>
			<provide>dojo.html</provide>
			<provide>dojo.io.iframe</provide>
			<provide>dojo.io.script</provide>
			<provide>dojo.jaxer</provide>
			<provide>dojo.number</provide>
			<provide>dojo.parser</provide>
			<provide>dojo.regexp</provide>
			<provide>dojo.robot</provide>
			<provide>dojo.robotx</provide>
			<provide>dojo.rpc.JsonService</provide>
			<provide>dojo.rpc.JsonpService</provide>
			<provide>dojo.rpc.RpcService</provide>
			<provide>dojo.store.Cache</provide>
			<provide>dojo.store.DataStore</provide>
			<provide>dojo.store.JsonRest</provide>
			<provide>dojo.store.Memory</provide>
			<provide>dojo.store.Observable</provide>
			<provide>dojo.store.util.QueryResults</provide>
			<provide>dojo.store.util.SimpleQueryEngine</provide>
			<provide>dojo.string</provide>
			<provide>dojo.uacss</provide>
			<provide>dojo.window</provide>
			<provide>dojox.charting.widget.Chart</provide>
			<provide>dojox.charting.widget.Sparkline</provide>
			<provide>dojox.fx.style</provide>
			<provide>dojox.gfx.canvas</provide>
			<provide>dojox.gfx.fx</provide>
			<provide>dojox.gfx.gradient</provide>
			<provide>dojox.gfx.gradutils</provide>
			<provide>dojox.gfx.silverlight</provide>
			<provide>dojox.gfx.svg</provide>
			<provide>dojox.gfx.utils</provide>
			<provide>dojox.gfx.vml</provide>
			<provide>dojox.grid.TreeGrid</provide>
			<provide>dojox.lang.aspect</provide>
			<provide>dojox.lang.async.event</provide>
			<provide>dojox.lang.async.timeout</provide>
			<provide>dojox.lang.async.topic</provide>
			<provide>dojox.lang.async</provide>
			<provide>dojox.lang.functional.array</provide>
			<provide>dojox.lang.functional.fold</provide>
			<provide>dojox.lang.functional.object</provide>
			<provide>dojox.lang.functional.reversed</provide>
			<provide>dojox.lang.functional.scan</provide>
			<provide>dojox.lang.functional.sequence</provide>
			<provide>dojox.mobile.scrollable</provide>
			<provide>dojox.xml.widgetParser</provide>
		</provides>
		<properties>
			<property name="_nodeDataCache" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/NodeList-data.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-data</provide>
				</provides>
				<summary>An alias to the private dataCache for NodeList-data. NEVER USE THIS!
	This private is only exposed for the benefit of unit testing, and is
	removed during the build process.</summary>
			</property>
			<property name="NodeList-data" scope="normal" type="Object">
				<resources>
					<resource>dojo/NodeList-data.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-data</provide>
				</provides>
			</property>
			<property name="NodeList-fx" scope="normal" type="Object">
				<resources>
					<resource>dojo/NodeList-fx.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-fx</provide>
				</provides>
				<summary>Adds dojo.fx animation support to dojo.query()</summary>
			</property>
			<property name="NodeList-html" scope="normal" type="Object">
				<resources>
					<resource>dojo/NodeList-html.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-html</provide>
				</provides>
				<summary>Adds a chainable html method to dojo.query() / Nodelist instances for setting/replacing node content</summary>
			</property>
			<property name="NodeList-manipulate" scope="normal" type="Object">
				<resources>
					<resource>dojo/NodeList-manipulate.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-manipulate</provide>
				</provides>
				<summary>Adds a chainable methods to dojo.query() / Nodelist instances for manipulating HTML
	and DOM nodes and their properties.</summary>
			</property>
			<property name="NodeList-traverse" scope="normal" type="Object">
				<resources>
					<resource>dojo/NodeList-traverse.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-traverse</provide>
				</provides>
				<summary>Adds a chainable methods to dojo.query() / Nodelist instances for traversing the DOM</summary>
			</property>
			<property name="_NodeListCtor" scope="normal" type="" private="true">
				<resources>
					<resource>dojo/_base/NodeList.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.NodeList</provide>
				</provides>
			</property>
			<property name="isBrowser" scope="normal" type="Object">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
			</property>
			<property name="_name" scope="normal" type="String" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
					<resource>dojo/_base/_loader/hostenv_spidermonkey.js</resource>
				</resources>
			</property>
			<property name="baseUrl" scope="normal" type="String">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
					<resource>dojo/_base/_loader/hostenv_spidermonkey.js</resource>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
					<resource>dojo/resources/_modules.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>The root relative path to dojo.js (as a string)</summary>
			</property>
			<property name="isMozilla" scope="normal" type="">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
			</property>
			<property name="isMoz" scope="normal" type="">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
			</property>
			<property name="isFF" scope="normal" type="Object">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/uacss.js</resource>
				</resources>
				<provides>
					<provide>dojo.uacss</provide>
				</provides>
			</property>
			<property name="isQuirks" scope="normal" type="bool">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/_base/window.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.window</provide>
				</provides>
			</property>
			<property name="locale" scope="normal" type="Object">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
				</resources>
			</property>
			<property name="_windowUnloaders" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
			</property>
			<property name="_defaultContext" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
			</property>
			<property name="_initFired" scope="normal" type="bool" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
			</property>
			<property name="isRhino" scope="normal" type="Object">
				<resources>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
				</resources>
			</property>
			<property name="_timeouts" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
				</resources>
			</property>
			<property name="isSpidermonkey" scope="normal" type="Object">
				<resources>
					<resource>dojo/_base/_loader/hostenv_spidermonkey.js</resource>
				</resources>
				<summary>Detect spidermonkey</summary>
			</property>
			<property name="_loadedModules" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="_inFlightCount" scope="normal" type="Number" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_hasResource" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="_loadedUrls" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="_postLoad" scope="normal" type="bool" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="_loaders" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="_unloaders" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="_loadNotifying" scope="normal" type="bool" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="_global_omit_module_check" scope="normal" type="bool" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="requireAfterIf" scope="normal" type="">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</property>
			<property name="nonDebugProvide" scope="normal" type="">
				<resources>
					<resource>dojo/_base/_loader/loader_debug.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_debug</provide>
				</provides>
			</property>
			<property name="_xdDebugScopeChecked" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_debug.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_debug</provide>
				</provides>
			</property>
			<property name="_isXDomain" scope="normal" type="bool" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdInFlight" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdOrderedReqs" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdDepMap" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdContents" scope="normal" type="Array" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdTimer" scope="normal" type="Number" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdCharSet" scope="normal" type="String" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdStartTime" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_headElement" scope="normal" type="" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdReqLoc" scope="normal" type="" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdBundleMap" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_xdRealRequireLocalization" scope="normal" type="" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</property>
			<property name="_topics" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/connect.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.connect</provide>
				</provides>
			</property>
			<property name="subscribe" scope="normal" type=""/>
			<property name="unsubscribe" scope="normal" type=""/>
			<property name="publish" scope="normal" type=""/>
			<property name="_mixin" scope="normal" type="" private="true">
				<resources>
					<resource>dojo/_base/declare.js</resource>
					<resource>dojo/_base/fx.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.declare</provide>
					<provide>dojo._base.fx</provide>
				</provides>
			</property>
			<property name="_ieListenersName" scope="normal" type="String" private="true">
				<resources>
					<resource>dojo/_base/event.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.event</provide>
				</provides>
			</property>
			<property name="_Animation" scope="normal" type="" private="true">
				<resources>
					<resource>dojo/_base/fx.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.fx</provide>
				</provides>
			</property>
			<property name="boxModel" scope="normal" type="String">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
			</property>
			<property name="toJsonIndentStr" scope="normal" type="String">
				<resources>
					<resource>dojo/_base/json.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.json</provide>
				</provides>
			</property>
			<property name="_delegate" scope="normal" type="Object" private="true">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
			</property>
			<property name="_bodyLtr" scope="normal" type="" private="true">
				<resources>
					<resource>dojo/_base/window.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.window</provide>
				</provides>
			</property>
			<property name="_blockAsync" scope="normal" type="bool" private="true">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
			</property>
			<property name="jaxer" scope="normal" type="Object">
				<resources>
					<resource>dojo/jaxer.js</resource>
				</resources>
				<provides>
					<provide>dojo.jaxer</provide>
				</provides>
			</property>
			<property name="robot" scope="normal" type="Object">
				<resources>
					<resource>dojo/robot.js</resource>
				</resources>
				<provides>
					<provide>dojo.robot</provide>
				</provides>
			</property>
			<property name="robotx" scope="normal" type="Object">
				<resources>
					<resource>dojo/robotx.js</resource>
				</resources>
				<provides>
					<provide>dojo.robotx</provide>
				</provides>
			</property>
			<property name="tests" scope="normal" type="Object">
				<resources>
					<resource>dojo/tests.js</resource>
				</resources>
				<summary>D.O.H. Test files for Dojo unit testing.</summary>
			</property>
			<property name="isIE" scope="normal" type="">
				<resources>
					<resource>dojo/uacss.js</resource>
					<resource>dojo/window.js</resource>
				</resources>
				<provides>
					<provide>dojo.uacss</provide>
					<provide>dojo.window</provide>
				</provides>
			</property>
			<property name="isOpera" scope="normal" type="">
				<resources>
					<resource>dojo/uacss.js</resource>
				</resources>
				<provides>
					<provide>dojo.uacss</provide>
				</provides>
			</property>
			<property name="uacss" scope="normal" type="Object">
				<resources>
					<resource>dojo/uacss.js</resource>
				</resources>
				<provides>
					<provide>dojo.uacss</provide>
				</provides>
			</property>
			<property name="isWebKit" scope="normal" type="bool">
				<resources>
					<resource>dojo/window.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo.window</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
			</property>
			<property name="isBB" scope="normal" type="">
				<resources>
					<resource>dojox/mobile/_base.js</resource>
				</resources>
				<provides>
					<provide>dojox.mobile._base</provide>
				</provides>
			</property>
			<property name="_oldConnect" scope="normal" type="" private="true">
				<resources>
					<resource>dojox/mobile/app/_event.js</resource>
				</resources>
				<provides>
					<provide>dojox.mobile.app._event</provide>
				</provides>
			</property>
			<property name="_defaultXhr" scope="normal" type="" private="true">
				<resources>
					<resource>dojox/rpc/Client.js</resource>
				</resources>
				<provides>
					<provide>dojox.rpc.Client</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method name="attr" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Gets or sets an attribute on an HTML element.</summary>
				<description>Handles normalized getting and setting of attributes on DOM
	Nodes. If 2 arguments are passed, and a the second argumnt is a
	string, acts as a getter.
	If a third argument is passed, or if the second argument is a
	map of attributes, acts as a setter.
	When passing functions as values, note that they will not be
	directly assigned to slots on the node, but rather the default
	behavior will be removed and the new behavior will be added
	using `dojo.connect()`, meaning that event handler properties
	will be normalized and that some caveats with regards to
	non-standard behaviors for onsubmit apply. Namely that you
	should cancel form submission using `dojo.stopEvent()` on the
	passed event object instead of returning a boolean value from
	the handler itself.</description>
				<examples>
					<example>	// get the current value of the "foo" attribute on a node
		dojo.attr(dojo.byId("nodeId"), "foo");
		// or we can just pass the id:
		dojo.attr("nodeId", "foo");</example>
					<example>	// use attr() to set the tab index
		dojo.attr("nodeId", "tabIndex", 3);</example>
					<example>Set multiple values at once, including event handlers:
		dojo.attr("formId", {
			"foo": "bar",
			"tabIndex": -1,
			"method": "POST",
			"onsubmit": function(e){
				// stop submitting the form. Note that the IE behavior
				// of returning true or false will have no effect here
				// since our handler is connect()ed to the built-in
				// onsubmit behavior and so we need to use
				// dojo.stopEvent() to ensure that the submission
				// doesn't proceed.
				dojo.stopEvent(e);
				// submit the form with Ajax
				dojo.xhrPost({ form: "formId" });
			}
		});</example>
					<example>Style is s special case: Only set with an object hash of styles
		dojo.attr("someNode",{
			id:"bar",
			style:{
				width:"200px", height:"100px", color:"#000"
			}
		});</example>
					<example>Again, only set style as an object hash of styles:
		var obj = { color:"#fff", backgroundColor:"#000" };
		dojo.attr("someNode", "style", obj);
		// though shorter to use `dojo.style()` in this case:
		dojo.style("someNode", obj);</example>
				</examples>
				<return-description>when used as a getter, the value of the requested attribute
	or null if that attribute does not have a specified or
	default value;
	when used as a setter, the DOM node</return-description>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to the element to get or set the attribute on</summary>
					</parameter>
					<parameter name="name" type="String|Object" usage="required">
						<summary>the name of the attribute to get or set.</summary>
					</parameter>
					<parameter name="value" type="String" usage="optional">
						<summary>The value to set for the attribute</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="DomNode"/>
					<return-type type="Anything"/>
				</return-types>
			</method>
			<method name="hasAttr" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns true if the requested attribute is specified on the
	given element, and false otherwise.</summary>
				<return-description>true if the requested attribute is specified on the
	given element, and false otherwise</return-description>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to the element to check</summary>
					</parameter>
					<parameter name="name" type="String" usage="required">
						<summary>the name of the attribute</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="style" scope="normal">
				<resources>
					<resource>dijit/_base/manager.js</resource>
					<resource>dojo/_base/html.js</resource>
					<resource>dojox/html/ext-dojo/style.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dijit._base.manager</provide>
					<provide>dojo._base.html</provide>
					<provide>dojox.html.ext-dojo.style</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>Accesses styles on a node. If 2 arguments are
	passed, acts as a getter. If 3 arguments are passed, acts
	as a setter.</summary>
				<description>Getting the style value uses the computed style for the node, so the value
	will be a calculated value, not just the immediate node.style value.
	Also when getting values, use specific style names,
	like "borderBottomWidth" instead of "border" since compound values like
	"border" are not necessarily reflected as expected.
	If you want to get node dimensions, use `dojo.marginBox()`,
	`dojo.contentBox()` or `dojo.position()`.</description>
				<examples>
					<example>Passing only an ID or node returns the computed style object of
	the node:
		dojo.style("thinger");</example>
					<example>Passing a node and a style property returns the current
	normalized, computed value for that property:
		dojo.style("thinger", "opacity"); // 1 by default</example>
					<example>Passing a node, a style property, and a value changes the
	current display of the node and returns the new computed value
		dojo.style("thinger", "opacity", 0.5); // == 0.5</example>
					<example>Passing a node, an object-style style property sets each of the values in turn and returns the computed style object of the node:
		dojo.style("thinger", {
			"opacity": 0.5,
			"border": "3px solid black",
			"height": "300px"
		});</example>
					<example>When the CSS style property is hyphenated, the JavaScript property is camelCased.
	font-size becomes fontSize, and so on.
		dojo.style("thinger",{
			fontSize:"14pt",
			letterSpacing:"1.2em"
		});</example>
					<example>dojo.NodeList implements .style() using the same syntax, omitting the "node" parameter, calling
	dojo.style() on every element of the list. See: `dojo.query()` and `dojo.NodeList()`
		dojo.query(".someClassName").style("visibility","hidden");
		// or
		dojo.query("#baz &gt; div").style({
			opacity:0.75,
			fontSize:"13pt"
		});</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to node to get/set style for</summary>
					</parameter>
					<parameter name="style" type="String|Object" usage="optional">
						<summary>the style property to set in DOM-accessor format
	(&amp;quot;borderWidth&amp;quot;, not &amp;quot;border-width&amp;quot;) or an object with key/value
	pairs suitable for setting each property.</summary>
					</parameter>
					<parameter name="value" type="String" usage="optional">
						<summary>If passed, sets value on the node for style, handling
	cross-browser concerns.  When setting a pixel value,
	be sure to include &amp;quot;px&amp;quot; in the value. For instance, top: &amp;quot;200px&amp;quot;.
	Otherwise, in some cases, some browsers will not apply the style.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_nodeData" scope="normal" private="true">
				<resources>
					<resource>dojo/NodeList-data.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-data</provide>
				</provides>
				<parameters>
					<parameter name="node" type="" usage="required"/>
					<parameter name="key" type="" usage="required"/>
					<parameter name="value" type="" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Object"/>
					<return-type type="Anything"/>
					<return-type type="Nothing"/>
				</return-types>
			</method>
			<method name="_removeNodeData" scope="normal" private="true">
				<resources>
					<resource>dojo/NodeList-data.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-data</provide>
				</provides>
				<summary>Remove some data from this node</summary>
				<parameters>
					<parameter name="node" type="String|DomNode" usage="required">
						<summary>The node reference to remove data from</summary>
					</parameter>
					<parameter name="key" type="String" usage="optional">
						<summary>If omitted, remove all data in this dataset.
	If passed, remove only the passed &lt;code&gt;key&lt;/code&gt; in the associated dataset</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_gcNodeData" scope="normal" private="true">
				<resources>
					<resource>dojo/NodeList-data.js</resource>
				</resources>
				<provides>
					<provide>dojo.NodeList-data</provide>
				</provides>
				<summary>super expensive: GC all data in the data for nodes that no longer exist in the dom.</summary>
				<description>super expensive: GC all data in the data for nodes that no longer exist in the dom.
	MUCH safer to do this yourself, manually, on a per-node basis (via `NodeList.removeData()`)
	provided as a stop-gap for exceptionally large/complex applications with constantly changing
	content regions (eg: a dijit.layout.ContentPane with replacing data)
	There is NO automatic GC going on. If you dojo.destroy() a node, you should _removeNodeData
	prior to destruction.</description>
			</method>
			<method name="blendColors" scope="normal">
				<resources>
					<resource>dojo/_base/Color.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.Color</provide>
				</provides>
				<summary>Blend colors end and start with weight from 0 to 1, 0.5 being a 50/50 blend,
	can reuse a previously allocated dojo.Color object for the result</summary>
				<parameters>
					<parameter name="start" type="dojo.Color" usage="required"/>
					<parameter name="end" type="dojo.Color" usage="required"/>
					<parameter name="weight" type="Number" usage="required"/>
					<parameter name="obj" type="dojo.Color" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Color"/>
				</return-types>
			</method>
			<method name="colorFromRgb" scope="normal">
				<resources>
					<resource>dojo/_base/Color.js</resource>
					<resource>dojo/colors.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.Color</provide>
					<provide>dojo.colors</provide>
				</provides>
				<summary>get rgb(a) array from css-style color declarations</summary>
				<description>this function can handle all 4 CSS3 Color Module formats: rgb,
	rgba, hsl, hsla, including rgb(a) with percentage values.</description>
				<return-description>A dojo.Color object. If obj is passed, it will be the return value.</return-description>
				<parameters>
					<parameter name="color" type="String" usage="required"/>
					<parameter name="obj" type="dojo.Color" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Color"/>
				</return-types>
			</method>
			<method name="colorFromHex" scope="normal">
				<resources>
					<resource>dojo/_base/Color.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.Color</provide>
				</provides>
				<summary>Converts a hex string with a '#' prefix to a color object.
	Supports 12-bit #rgb shorthand. Optionally accepts a
	&lt;code&gt;dojo.Color&lt;/code&gt; object to update with the parsed value.</summary>
				<examples>
					<example> var thing = dojo.colorFromHex("#ededed"); // grey, longhand</example>
					<example> var thing = dojo.colorFromHex("#000"); // black, shorthand</example>
				</examples>
				<return-description>A dojo.Color object. If obj is passed, it will be the return value.</return-description>
				<parameters>
					<parameter name="color" type="String" usage="required"/>
					<parameter name="obj" type="dojo.Color" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Color"/>
				</return-types>
			</method>
			<method name="colorFromArray" scope="normal">
				<resources>
					<resource>dojo/_base/Color.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.Color</provide>
				</provides>
				<summary>Builds a &lt;code&gt;dojo.Color&lt;/code&gt; from a 3 or 4 element array, mapping each
	element in sequence to the rgb(a) values of the color.</summary>
				<examples>
					<example> var myColor = dojo.colorFromArray([237,237,237,0.5]); // grey, 50% alpha</example>
				</examples>
				<return-description>A dojo.Color object. If obj is passed, it will be the return value.</return-description>
				<parameters>
					<parameter name="a" type="Array" usage="required"/>
					<parameter name="obj" type="dojo.Color" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Color"/>
				</return-types>
			</method>
			<method name="colorFromString" scope="normal">
				<resources>
					<resource>dojo/_base/Color.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.Color</provide>
				</provides>
				<summary>Parses &lt;code&gt;str&lt;/code&gt; for a color value. Accepts hex, rgb, and rgba
	style color values.</summary>
				<description>Acceptable input values for str may include arrays of any form
	accepted by dojo.colorFromArray, hex strings such as "#aaaaaa", or
	rgb or rgba strings such as "rgb(133, 200, 16)" or "rgba(10, 10,
	10, 50)"</description>
				<return-description>A dojo.Color object. If obj is passed, it will be the return value.</return-description>
				<parameters>
					<parameter name="str" type="String" usage="required"/>
					<parameter name="obj" type="dojo.Color" usage="optional"/>
				</parameters>
			</method>
			<method name="when" scope="normal">
				<resources>
					<resource>dojo/_base/Deferred.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.Deferred</provide>
				</provides>
				<summary>This provides normalization between normal synchronous values and
	asynchronous promises, so you can interact with them in a common way</summary>
				<examples>
					<example>	function printFirstAndList(items){
			dojo.when(findFirst(items), console.log);
			dojo.when(findLast(items), console.log);
		}
		function findFirst(items){
			return dojo.when(items, function(items){
				return items[0];
			});
		}
		function findLast(items){
			return dojo.when(items, function(items){
				return items[items.length];
			});
		}
	And now all three of his functions can be used sync or async.
		printFirstAndLast([1,2,3,4]) will work just as well as
		printFirstAndLast(dojo.xhrGet(...));</example>
				</examples>
				<parameters>
					<parameter name="promiseOrValue" type="" usage="required"/>
					<parameter name="callback" type="Function" usage="optional"/>
					<parameter name="errback" type="Function" usage="optional"/>
					<parameter name="progressHandler" type="Function" usage="optional"/>
				</parameters>
			</method>
			<method name="_xhrObj" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojox/io/proxy/xip.js</resource>
					<resource>dojox/jq.js</resource>
				</resources>
				<provides>
					<provide>dojox.io.proxy.xip</provide>
					<provide>dojox.jq</provide>
				</provides>
				<parameters>
					<parameter name="args" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_loadUri" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
					<resource>dojo/_base/_loader/hostenv_spidermonkey.js</resource>
					<resource>dojo/_base/_loader/loader.js</resource>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. Overrides loadUri() from loader.js.
	xd loading requires slightly different behavior from loadPath().</summary>
				<description>Wanted to override getText(), but it is used by
	the widget code in too many, synchronous ways right now.</description>
				<parameters>
					<parameter name="uri" type="String" usage="required">
						<summary>a uri which points at the script to be loaded</summary>
					</parameter>
					<parameter name="cb" type="Function" usage="required">
						<summary>a callback function to process the result of evaluating the script
	as an expression, typically used by the resource bundle loader to
	load JSON-style resources</summary>
					</parameter>
					<parameter name="currentIsXDomain" type="boolean" usage="required"/>
					<parameter name="module" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
					<return-type type="Boolean: contents? true : false"/>
				</return-types>
			</method>
			<method name="_isDocumentOk" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
				<parameters>
					<parameter name="http" type="" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="_getText" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
				</resources>
				<summary>Read the contents of the specified uri and return those contents.</summary>
				<return-description>The response text. null is returned when there is a
	failure and failure is okay (an exception otherwise)</return-description>
				<parameters>
					<parameter name="uri" type="URI" usage="required">
						<summary>A relative or absolute uri.</summary>
					</parameter>
					<parameter name="fail_ok" type="Boolean" usage="required">
						<summary>Default false. If fail_ok and loading fails, return null
	instead of throwing.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="null"/>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="windowUnloaded" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
				<summary>signal fired by impending window destruction. You may use
	dojo.addOnWIndowUnload() or dojo.connect() to this method to perform
	page/application cleanup methods. See dojo.addOnWindowUnload for more info.</summary>
			</method>
			<method name="addOnWindowUnload" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
				<summary>registers a function to be triggered when window.onunload fires.
	Be careful trying to modify the DOM or access JavaScript properties
	during this phase of page unloading: they may not always be available.
	Consider dojo.addOnUnload() if you need to modify the DOM or do heavy
	JavaScript work.</summary>
				<examples>
					<example>	dojo.addOnWindowUnload(functionPointer)
		dojo.addOnWindowUnload(object, "functionName")
		dojo.addOnWindowUnload(object, function(){ /* ... */});</example>
				</examples>
				<parameters>
					<parameter name="obj" type="Object" usage="optional"/>
					<parameter name="functionName" type="String|Function" usage="optional"/>
				</parameters>
			</method>
			<method name="pushContext" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
				<summary>causes subsequent calls to Dojo methods to assume the
	passed object and, optionally, document as the default
	scopes to use. A 2-element array of the previous global and
	document are returned.</summary>
				<description>dojo.pushContext treats contexts as a stack. The
	auto-detected contexts which are initially provided using
	dojo.setContext() require authors to keep state in order to
	"return" to a previous context, whereas the
	dojo.pushContext and dojo.popContext methods provide a more
	natural way to augment blocks of code to ensure that they
	execute in a different window or frame without issue. If
	called without any arguments, the default context (the
	context when Dojo is first loaded) is instead pushed into
	the stack. If only a single string is passed, a node in the
	intitial context's document is looked up and its
	contextWindow and contextDocument properties are used as
	the context to push. This means that iframes can be given
	an ID and code can be executed in the scope of the iframe's
	document in subsequent calls easily.</description>
				<parameters>
					<parameter name="g" type="Object|String" usage="optional">
						<summary>The global context. If a string, the id of the frame to
	search for a context and document.</summary>
					</parameter>
					<parameter name="d" type="MDocumentElement" usage="optional">
						<summary>The document element to execute subsequent code with.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Array"/>
				</return-types>
			</method>
			<method name="popContext" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
				<summary>If the context stack contains elements, ensure that
	subsequent code executes in the *previous* context to the
	current context. The current context set ([global,
	document]) is returned.</summary>
			</method>
			<method name="_inContext" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
				</resources>
				<parameters>
					<parameter name="g" type="" usage="required"/>
					<parameter name="d" type="" usage="required"/>
					<parameter name="f" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_loadInit" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_ff_ext.js</resource>
					<resource>dojo/jaxer.js</resource>
				</resources>
				<provides>
					<provide>dojo.jaxer</provide>
				</provides>
				<parameters>
					<parameter name="e" type="" usage="required"/>
				</parameters>
			</method>
			<method name="byId" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns DOM node with matching &lt;code&gt;id&lt;/code&gt; attribute or &lt;code&gt;null&lt;/code&gt;
	if not found. If &lt;code&gt;id&lt;/code&gt; is a DomNode, this function is a no-op.</summary>
				<examples>
					<example>Look up a node by ID:
		var n = dojo.byId("foo");</example>
					<example>Check if a node exists, and use it.
		var n = dojo.byId("bar");
		if(n){ doStuff() ... }</example>
					<example>Allow string or DomNode references to be passed to a custom function:
		var foo = function(nodeOrId){
			nodeOrId = dojo.byId(nodeOrId);
			// ... more stuff
		}</example>
				</examples>
				<parameters>
					<parameter name="id" type="String|DOMNode" usage="required">
						<summary>A string to match an HTML id attribute or a reference to a DOM Node</summary>
					</parameter>
					<parameter name="doc" type="Document" usage="required">
						<summary>Document to work in. Defaults to the current value of
	dojo.doc.  Can be used to retrieve
	node references from other documents.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="assume it's a node"/>
					<return-type type="DomNode"/>
				</return-types>
			</method>
			<method name="_isLocalUrl" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
				</resources>
				<summary>determines if URI is local or not.</summary>
				<parameters>
					<parameter name="uri" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="exit" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
					<resource>dojo/_base/_loader/hostenv_spidermonkey.js</resource>
				</resources>
				<parameters>
					<parameter name="exitcode" type="" usage="required"/>
				</parameters>
			</method>
			<method name="body" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/hostenv_rhino.js</resource>
					<resource>dojo/_base/window.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.window</provide>
				</provides>
				<summary>Return the body element of the document
	return the body object associated with dojo.doc</summary>
				<examples>
					<example>	dojo.body().appendChild(dojo.doc.createElement('div'));</example>
				</examples>
				<return-types>
					<return-type type="Node"/>
				</return-types>
			</method>
			<method name="_spidermonkeyCurrentFile" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/hostenv_spidermonkey.js</resource>
				</resources>
				<parameters>
					<parameter name="depth" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_moduleHasPrefix" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>checks to see if module has been established</summary>
				<parameters>
					<parameter name="module" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="_getModulePrefix" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>gets the prefix associated with module</summary>
				<parameters>
					<parameter name="module" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="_loadPath" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. Overrides loadPath() from loader.js.
	xd loading requires slightly different behavior from loadPath().</summary>
				<description>Loads and interprets the script located at relpath, which is
	relative to the script root directory.  If the script is found but
	its interpretation causes a runtime exception, that exception is
	not caught by us, so the caller will see it.  We return a true
	value if and only if the script is found.</description>
				<parameters>
					<parameter name="relpath" type="String" usage="required">
						<summary>A relative path to a script (no leading '/', and typically ending
	in '.js').</summary>
					</parameter>
					<parameter name="module" type="String" usage="optional">
						<summary>A module whose existance to check for after loading a path.  Can be
	used to determine success or failure of the load.</summary>
					</parameter>
					<parameter name="cb" type="Function" usage="optional">
						<summary>a callback function to pass the result of evaluating the script</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="_loadUriAndCheck" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>calls loadUri then findModule and returns true if both succeed</summary>
				<parameters>
					<parameter name="uri" type="String" usage="required"/>
					<parameter name="moduleName" type="String" usage="required"/>
					<parameter name="cb" type="Function" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="loaded" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>signal fired when initial environment and package loading is
	complete. You should use dojo.addOnLoad() instead of doing a
	direct dojo.connect() to this method in order to handle
	initialization tasks that require the environment to be
	initialized. In a browser host,	declarative widgets will
	be constructed when this function finishes runing.</summary>
			</method>
			<method name="unloaded" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>signal fired by impending environment destruction. You should use
	dojo.addOnUnload() instead of doing a direct dojo.connect() to this
	method to perform page/application cleanup methods. See
	dojo.addOnUnload for more info.</summary>
			</method>
			<method name="_onto" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<parameters>
					<parameter name="arr" type="" usage="required"/>
					<parameter name="obj" type="" usage="required"/>
					<parameter name="fn" type="" usage="required"/>
				</parameters>
			</method>
			<method name="ready" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</method>
			<method name="addOnLoad" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>Registers a function to be triggered after the DOM and dojo.require() calls
	have finished loading.</summary>
				<description>Registers a function to be triggered after the DOM has finished
	loading and `dojo.require` modules have loaded. Widgets declared in markup
	have been instantiated if `djConfig.parseOnLoad` is true when this fires.
	Images and CSS files may or may not have finished downloading when
	the specified function is called.  (Note that widgets' CSS and HTML
	code is guaranteed to be downloaded before said widgets are
	instantiated, though including css resouces BEFORE any script elements
	is highly recommended).</description>
				<examples>
					<example>Register an anonymous function to run when everything is ready
		dojo.addOnLoad(function(){ doStuff(); });</example>
					<example>Register a function to run when everything is ready by pointer:
		var init = function(){ doStuff(); }
		dojo.addOnLoad(init);</example>
					<example>Register a function to run scoped to `object`, either by name or anonymously:
		dojo.addOnLoad(object, "functionName");
		dojo.addOnLoad(object, function(){ doStuff(); });</example>
				</examples>
				<parameters>
					<parameter name="obj" type="Object" usage="required"/>
					<parameter name="functionName" type="String|Function" usage="optional"/>
				</parameters>
			</method>
			<method name="_modulesLoaded" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</method>
			<method name="_callLoaded" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</method>
			<method name="_getModuleSymbols" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>Converts a module name in dotted JS notation to an array
	representing the path in the source tree</summary>
				<parameters>
					<parameter name="modulename" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Array"/>
				</return-types>
			</method>
			<method name="loadInit" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>Executes a function that needs to be executed for the loader's dojo.requireIf
	resolutions to work. This is needed mostly for the xdomain loader case where
	a function needs to be executed to set up the possible values for a dojo.requireIf
	call.</summary>
				<description>This function is mainly a marker for the xdomain loader to know parts of
	code that needs be executed outside the function wrappper that is placed around modules.
	The init function could be executed more than once, and it should make no assumptions
	on what is loaded, or what modules are available. Only the functionality in Dojo Base
	is allowed to be used. Avoid using this method. For a valid use case,
	see the source for dojox.gfx.</description>
				<parameters>
					<parameter name="init" type="Function" usage="required">
						<summary>a function reference. Executed immediately.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_loadModule" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
			</method>
			<method name="require" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
					<resource>dojox/lang/docs.js</resource>
				</resources>
				<provides>
					<provide>dojox.lang.docs</provide>
				</provides>
				<summary>loads a Javascript module from the appropriate URI</summary>
				<description>Modules are loaded via dojo.require by using one of two loaders: the normal loader
	and the xdomain loader. The xdomain loader is used when dojo was built with a
	custom build that specified loader=xdomain and the module lives on a modulePath
	that is a whole URL, with protocol and a domain. The versions of Dojo that are on
	the Google and AOL CDNs use the xdomain loader.
	If the module is loaded via the xdomain loader, it is an asynchronous load, since
	the module is added via a dynamically created script tag. This
	means that dojo.require() can return before the module has loaded. However, this
	should only happen in the case where you do dojo.require calls in the top-level
	HTML page, or if you purposely avoid the loader checking for dojo.require
	dependencies in your module by using a syntax like dojo["require"] to load the module.
	Sometimes it is useful to not have the loader detect the dojo.require calls in the
	module so that you can dynamically load the modules as a result of an action on the
	page, instead of right at module load time.
	Also, for script blocks in an HTML page, the loader does not pre-process them, so
	it does not know to download the modules before the dojo.require calls occur.
	So, in those two cases, when you want on-the-fly module loading or for script blocks
	in the HTML page, special care must be taken if the dojo.required code is loaded
	asynchronously. To make sure you can execute code that depends on the dojo.required
	modules, be sure to add the code that depends on the modules in a dojo.addOnLoad()
	callback. dojo.addOnLoad waits for all outstanding modules to finish loading before
	executing.
	This type of syntax works with both xdomain and normal loaders, so it is good
	practice to always use this idiom for on-the-fly code loading and in HTML script
	blocks. If at some point you change loaders and where the code is loaded from,
	it will all still work.
	More on how dojo.require
	`dojo.require("A.B")` first checks to see if symbol A.B is
	defined. If it is, it is simply returned (nothing to do).
	If it is not defined, it will look for `A/B.js` in the script root
	directory.
	`dojo.require` throws an exception if it cannot find a file
	to load, or if the symbol `A.B` is not defined after loading.
	It returns the object `A.B`, but note the caveats above about on-the-fly loading and
	HTML script blocks when the xdomain loader is loading a module.
	`dojo.require()` does nothing about importing symbols into
	the current namespace.  It is presumed that the caller will
	take care of that.</description>
				<examples>
					<example>To use dojo.require in conjunction with dojo.ready:
		dojo.require("foo");
		dojo.require("bar");
		dojo.addOnLoad(function(){
			//you can now safely do something with foo and bar
		});</example>
					<example>For example, to import all symbols into a local block, you might write:
		with (dojo.require("A.B")) {
			...
		}
	And to import just the leaf symbol to a local variable:
		var B = dojo.require("A.B");
		...</example>
				</examples>
				<return-description>the required namespace object</return-description>
				<parameters>
					<parameter name="moduleName" type="String" usage="required">
						<summary>module name to load, using periods for separators,
	e.g. &amp;quot;dojo.date.locale&amp;quot;.  Module paths are de-referenced by dojo's
	internal mapping of locations to names and are disambiguated by
	longest prefix. See &lt;code&gt;dojo.registerModulePath()&lt;/code&gt; for details on
	registering new modules.</summary>
					</parameter>
					<parameter name="omitModuleCheck" type="Boolean" usage="optional">
						<summary>if &lt;code&gt;true&lt;/code&gt;, omitModuleCheck skips the step of ensuring that the
	loaded file actually defines the symbol it is referenced by.
	For example if it called as &lt;code&gt;dojo.require(&amp;quot;a.b.c&amp;quot;)&lt;/code&gt; and the
	file located at &lt;code&gt;a/b/c.js&lt;/code&gt; does not define an object &lt;code&gt;a.b.c&lt;/code&gt;,
	and exception will be throws whereas no exception is raised
	when called as &lt;code&gt;dojo.require(&amp;quot;a.b.c&amp;quot;, true)&lt;/code&gt;</summary>
					</parameter>
				</parameters>
			</method>
			<method name="provide" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
					<resource>dojo/_base/_loader/loader_debug.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_debug</provide>
				</provides>
				<summary>Register a resource with the package system. Works in conjunction with &lt;code&gt;dojo.require&lt;/code&gt;</summary>
				<description>Each javascript source file is called a resource.  When a
	resource is loaded by the browser, `dojo.provide()` registers
	that it has been loaded.
	Each javascript source file must have at least one
	`dojo.provide()` call at the top of the file, corresponding to
	the file name.  For example, `js/dojo/foo.js` must have
	`dojo.provide("dojo.foo");` before any calls to
	`dojo.require()` are made.
	For backwards compatibility reasons, in addition to registering
	the resource, `dojo.provide()` also ensures that the javascript
	object for the module exists.  For example,
	`dojo.provide("dojox.data.FlickrStore")`, in addition to
	registering that `FlickrStore.js` is a resource for the
	`dojox.data` module, will ensure that the `dojox.data`
	javascript object exists, so that calls like
	`dojo.data.foo = function(){ ... }` don't fail.
	In the case of a build where multiple javascript source files
	are combined into one bigger file (similar to a .lib or .jar
	file), that file may contain multiple dojo.provide() calls, to
	note that it includes multiple resources.</description>
				<examples>
					<example>Safely create a `my` object, and make dojo.require("my.CustomModule") work
		dojo.provide("my.CustomModule");</example>
				</examples>
				<parameters>
					<parameter name="resourceName" type="String" usage="required">
						<summary>A dot-sperated string identifying a resource.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="platformRequire" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>require one or more modules based on which host environment
	Dojo is currently operating in</summary>
				<description>This method takes a "map" of arrays which one can use to
	optionally load dojo modules. The map is indexed by the
	possible dojo.name_ values, with two additional values:
	"default" and "common". The items in the "default" array will
	be loaded if none of the other items have been choosen based on
	dojo.name_, set by your host environment. The items in the
	"common" array will *always* be loaded, regardless of which
	list is chosen.</description>
				<examples>
					<example>	dojo.platformRequire({
			browser: [
				"foo.sample", // simple module
				"foo.test",
				["foo.bar.baz", true] // skip object check in _loadModule (dojo.require)
			],
			default: [ "foo.sample._base" ],
			common: [ "important.module.common" ]
		});</example>
				</examples>
				<parameters>
					<parameter name="modMap" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="requireIf" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>If the condition is true then call &lt;code&gt;dojo.require()&lt;/code&gt; for the specified
	resource</summary>
				<examples>
					<example>	dojo.requireIf(dojo.isBrowser, "my.special.Module");</example>
				</examples>
				<parameters>
					<parameter name="condition" type="Boolean" usage="required"/>
					<parameter name="resourceName" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="registerModulePath" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>Maps a module name to a path</summary>
				<description>An unregistered module is given the default path of ../[module],
	relative to Dojo root. For example, module acme is mapped to
	../acme.  If you want to use a different module name, use
	dojo.registerModulePath.</description>
				<examples>
					<example>If your dojo.js is located at this location in the web root:
		/myapp/js/dojo/dojo/dojo.js
	and your modules are located at:
		/myapp/js/foo/bar.js
		/myapp/js/foo/baz.js
		/myapp/js/foo/thud/xyzzy.js
	Your application can tell Dojo to locate the "foo" namespace by calling:
		dojo.registerModulePath("foo", "../../foo");
	At which point you can then use dojo.require() to load the
	modules (assuming they provide() the same things which are
	required). The full code might be:
		&lt;script type="text/javascript"
			src="/myapp/js/dojo/dojo/dojo.js"&gt;&lt;/script&gt;
		&lt;script type="text/javascript"&gt;
			dojo.registerModulePath("foo", "../../foo");
			dojo.require("foo.bar");
			dojo.require("foo.baz");
			dojo.require("foo.thud.xyzzy");
		&lt;/script&gt;</example>
				</examples>
				<parameters>
					<parameter name="module" type="String" usage="required"/>
					<parameter name="prefix" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="requireLocalization" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>loads a bundle intelligently based on whether the module is
	local or xd. Overrides the local-case implementation.</summary>
				<description>Load translated resource bundles provided underneath the "nls"
	directory within a package.  Translated resources may be located in
	different packages throughout the source tree.
	Each directory is named for a locale as specified by RFC 3066,
	(http://www.ietf.org/rfc/rfc3066.txt), normalized in lowercase.
	Note that the two bundles in the example do not define all the
	same variants.  For a given locale, bundles will be loaded for
	that locale and all more general locales above it, including a
	fallback at the root directory.  For example, a declaration for
	the "de-at" locale will first load `nls/de-at/bundleone.js`,
	then `nls/de/bundleone.js` and finally `nls/bundleone.js`.  The
	data will be flattened into a single Object so that lookups
	will follow this cascading pattern.  An optional build step can
	preload the bundles to avoid data redundancy and the multiple
	network hits normally required to load these resources.</description>
				<examples>
					<example>A particular widget may define one or more resource bundles,
	structured in a program as follows, where moduleName is
	mycode.mywidget and bundleNames available include bundleone and
	bundletwo:
			...
		mycode/
			mywidget/
				nls/
					bundleone.js (the fallback translation, English in this example)
					bundletwo.js (also a fallback translation)
					de/
						bundleone.js
						bundletwo.js
					de-at/
						bundleone.js
					en/
						(empty; use the fallback translation)
					en-us/
						bundleone.js
					en-gb/
						bundleone.js
					es/
						bundleone.js
						bundletwo.js
					  ...etc
					...</example>
				</examples>
				<parameters>
					<parameter name="moduleName" type="String" usage="required">
						<summary>name of the package containing the &amp;quot;nls&amp;quot; directory in which the
	bundle is found</summary>
					</parameter>
					<parameter name="bundleName" type="String" usage="required">
						<summary>bundle name, i.e. the filename without the '.js' suffix. Using &amp;quot;nls&amp;quot; as a
	a bundle name is not supported, since &amp;quot;nls&amp;quot; is the name of the folder
	that holds bundles. Using &amp;quot;nls&amp;quot; as the bundle name will cause problems
	with the custom build.</summary>
					</parameter>
					<parameter name="locale" type="String" usage="optional">
						<summary>the locale to load (optional)  By default, the browser's user
	locale as defined by dojo.locale</summary>
					</parameter>
					<parameter name="availableFlatLocales" type="String" usage="optional">
						<summary>A comma-separated list of the available, flattened locales for this
	bundle. This argument should only be set by the build process.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="moduleUrl" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader.js</resource>
				</resources>
				<summary>Returns a &lt;code&gt;dojo._Url&lt;/code&gt; object relative to a module.</summary>
				<examples>
					<example>	var pngPath = dojo.moduleUrl("acme","images/small.png");
		console.dir(pngPath); // list the object properties
		// create an image and set it's source to pngPath's value:
		var img = document.createElement("img");
		// NOTE: we assign the string representation of the url object
		img.src = pngPath.toString();
		// add our image to the document
		dojo.body().appendChild(img);</example>
					<example>you may de-reference as far as you like down the package
	hierarchy.  This is sometimes handy to avoid lenghty relative
	urls or for building portable sub-packages. In this example,
	the `acme.widget` and `acme.util` directories may be located
	under different roots (see `dojo.registerModulePath`) but the
	the modules which reference them can be unaware of their
	relative locations on the filesystem:
		// somewhere in a configuration block
		dojo.registerModulePath("acme.widget", "../../acme/widget");
		dojo.registerModulePath("acme.util", "../../util");
		// ...
		// code in a module using acme resources
		var tmpltPath = dojo.moduleUrl("acme.widget","templates/template.html");
		var dataPath = dojo.moduleUrl("acme.util","resources/data.json");</example>
				</examples>
				<parameters>
					<parameter name="module" type="String" usage="required"/>
					<parameter name="url" type="dojo._Url||String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo._Url"/>
				</return-types>
			</method>
			<method name="_xdDebugFileLoaded" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_debug.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_debug</provide>
				</provides>
				<parameters>
					<parameter name="resourceName" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_xdReset" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. Resets the xd state.</summary>
			</method>
			<method name="_xdClearInterval" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function.
	Clears the interval timer used to check on the
	status of in-flight xd module resource requests.</summary>
			</method>
			<method name="_xdCreateResource" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. Creates an xd module source given an
	non-xd module contents.</summary>
				<parameters>
					<parameter name="contents" type="String" usage="required"/>
					<parameter name="resourceName" type="String" usage="required"/>
					<parameter name="resourcePath" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="_xdExtractLoadInits" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<parameters>
					<parameter name="fileContents" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="_xdIsXDomainPath" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Figure out whether the path is local or x-domain
	If there is a colon before the first / then, we have a URL with a protocol.</summary>
				<parameters>
					<parameter name="relpath" type="string" usage="required"/>
				</parameters>
			</method>
			<method name="_xdResourceLoaded" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. Called by an xd module resource when
	it has been loaded via a script tag.</summary>
				<parameters>
					<parameter name="res" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_xdLoadFlattenedBundle" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. Used when loading
	a flattened localized bundle via a script tag.</summary>
				<parameters>
					<parameter name="moduleName" type="String" usage="required"/>
					<parameter name="bundleName" type="String" usage="required"/>
					<parameter name="locale" type="String" usage="optional"/>
					<parameter name="bundleData" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_xdInitExtraLocales" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</method>
			<method name="xdRequireLocalization" scope="normal">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. The xd version of dojo.requireLocalization.</summary>
				<parameters>
					<parameter name="m" type="" usage="required"/>
					<parameter name="b" type="" usage="required"/>
					<parameter name="locale" type="String" usage="optional"/>
					<parameter name="fLocales" type="" usage="required"/>
					<parameter name="moduleName" type="String" usage="required"/>
					<parameter name="bundleName" type="String" usage="required"/>
					<parameter name="availableFlatLocales" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="_xdUnpackDependency" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function. Determines what to do with a dependency
	that was listed in an xd version of a module contents.</summary>
				<parameters>
					<parameter name="dep" type="Array" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="_xdWalkReqs" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function.
	Walks the requires and evaluates module resource contents in
	the right order.</summary>
			</method>
			<method name="_xdEvalReqs" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function.
	Does a depth first, breadth second search and eval of required modules.</summary>
				<parameters>
					<parameter name="reqChain" type="Array" usage="required"/>
				</parameters>
			</method>
			<method name="_xdWatchInFlight" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
				<summary>Internal xd loader function.
	Monitors in-flight requests for xd module resources.</summary>
			</method>
			<method name="_xdNotifyLoaded" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/_loader/loader_xd.js</resource>
				</resources>
				<provides>
					<provide>dojo._base._loader.loader_xd</provide>
				</provides>
			</method>
			<method name="indexOf" scope="normal">
				<resources>
					<resource>dojo/_base/array.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.array</provide>
				</provides>
				<summary>locates the first index of the provided value in the
	passed array. If the value is not found, -1 is returned.</summary>
				<description>This method corresponds to the JavaScript 1.6 Array.indexOf method, with one difference: when
	run over sparse arrays, the Dojo function invokes the callback for every index whereas JavaScript
	1.6's indexOf skips the holes in the sparse array.
	For details on this method, see:
	https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/indexOf</description>
				<parameters>
					<parameter name="array" type="Array" usage="required"/>
					<parameter name="value" type="Object" usage="required"/>
					<parameter name="fromIndex" type="Integer" usage="optional"/>
					<parameter name="findLast" type="Boolean" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="Number"/>
				</return-types>
			</method>
			<method name="lastIndexOf" scope="normal">
				<resources>
					<resource>dojo/_base/array.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.array</provide>
				</provides>
				<summary>locates the last index of the provided value in the passed
	array. If the value is not found, -1 is returned.</summary>
				<description>This method corresponds to the JavaScript 1.6 Array.lastIndexOf method, with one difference: when
	run over sparse arrays, the Dojo function invokes the callback for every index whereas JavaScript
	1.6's lastIndexOf skips the holes in the sparse array.
	For details on this method, see:
	https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/lastIndexOf</description>
				<parameters>
					<parameter name="array" type="Array" usage="required"/>
					<parameter name="value" type="Object" usage="required"/>
					<parameter name="fromIndex" type="Integer" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="Number"/>
				</return-types>
			</method>
			<method name="forEach" scope="normal">
				<resources>
					<resource>dojo/_base/array.js</resource>
					<resource>dojox/lang/async.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.array</provide>
					<provide>dojox.lang.async</provide>
				</provides>
				<summary>for every item in arr, callback is invoked. Return values are ignored.
	If you want to break out of the loop, consider using dojo.every() or dojo.some().
	forEach does not allow breaking out of the loop over the items in arr.</summary>
				<description>This function corresponds to the JavaScript 1.6 Array.forEach() method, with one difference: when
	run over sparse arrays, this implemenation passes the "holes" in the sparse array to
	the callback function with a value of undefined. JavaScript 1.6's forEach skips the holes in the sparse array.
	For more details, see:
	https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/forEach</description>
				<examples>
					<example>	// log out all members of the array:
		dojo.forEach(
			[ "thinger", "blah", "howdy", 10 ],
			function(item){
				console.log(item);
			}
		);</example>
					<example>	// log out the members and their indexes
		dojo.forEach(
			[ "thinger", "blah", "howdy", 10 ],
			function(item, idx, arr){
				console.log(item, "at index:", idx);
			}
		);</example>
					<example>	// use a scoped object member as the callback
		var obj = {
			prefix: "logged via obj.callback:",
			callback: function(item){
				console.log(this.prefix, item);
			}
		};
		// specifying the scope function executes the callback in that scope
		dojo.forEach(
			[ "thinger", "blah", "howdy", 10 ],
			obj.callback,
			obj
		);
		// alternately, we can accomplish the same thing with dojo.hitch()
		dojo.forEach(
			[ "thinger", "blah", "howdy", 10 ],
			dojo.hitch(obj, "callback")
		);</example>
				</examples>
				<parameters>
					<parameter name="arr" type="Array|String" usage="required">
						<summary>the array to iterate over. If a string, operates on individual characters.</summary>
					</parameter>
					<parameter name="callback" type="Function|String" usage="required">
						<summary>a function is invoked with three arguments: item, index, and array</summary>
					</parameter>
					<parameter name="thisObject" type="Object" usage="optional">
						<summary>may be used to scope the call to callback</summary>
					</parameter>
				</parameters>
			</method>
			<method name="every" scope="normal">
				<resources>
					<resource>dojo/_base/array.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.array</provide>
				</provides>
				<summary>Determines whether or not every item in arr satisfies the
	condition implemented by callback.</summary>
				<description>This function corresponds to the JavaScript 1.6 Array.every() method, with one difference: when
	run over sparse arrays, this implemenation passes the "holes" in the sparse array to
	the callback function with a value of undefined. JavaScript 1.6's every skips the holes in the sparse array.
	For more details, see:
	https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/every</description>
				<examples>
					<example>	// returns false
		dojo.every([1, 2, 3, 4], function(item){ return item&gt;1; });</example>
					<example>	// returns true
		dojo.every([1, 2, 3, 4], function(item){ return item&gt;0; });</example>
				</examples>
				<parameters>
					<parameter name="arr" type="Array|String" usage="required">
						<summary>the array to iterate on. If a string, operates on individual characters.</summary>
					</parameter>
					<parameter name="callback" type="Function|String" usage="required">
						<summary>a function is invoked with three arguments: item, index,
	and array and returns true if the condition is met.</summary>
					</parameter>
					<parameter name="thisObject" type="Object" usage="optional">
						<summary>may be used to scope the call to callback</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="some" scope="normal">
				<resources>
					<resource>dojo/_base/array.js</resource>
					<resource>dojox/lang/async.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.array</provide>
					<provide>dojox.lang.async</provide>
				</provides>
				<summary>Determines whether or not any item in arr satisfies the
	condition implemented by callback.</summary>
				<description>This function corresponds to the JavaScript 1.6 Array.some() method, with one difference: when
	run over sparse arrays, this implemenation passes the "holes" in the sparse array to
	the callback function with a value of undefined. JavaScript 1.6's some skips the holes in the sparse array.
	For more details, see:
	https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/some</description>
				<examples>
					<example>	// is true
		dojo.some([1, 2, 3, 4], function(item){ return item&gt;1; });</example>
					<example>	// is false
		dojo.some([1, 2, 3, 4], function(item){ return item&lt;1; });</example>
				</examples>
				<parameters>
					<parameter name="arr" type="Array|String" usage="required">
						<summary>the array to iterate over. If a string, operates on individual characters.</summary>
					</parameter>
					<parameter name="callback" type="Function|String" usage="required">
						<summary>a function is invoked with three arguments: item, index,
	and array and returns true if the condition is met.</summary>
					</parameter>
					<parameter name="thisObject" type="Object" usage="optional">
						<summary>may be used to scope the call to callback</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="map" scope="normal">
				<resources>
					<resource>dojo/_base/array.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.array</provide>
				</provides>
				<summary>applies callback to each element of arr and returns
	an Array with the results</summary>
				<description>This function corresponds to the JavaScript 1.6 Array.map() method, with one difference: when
	run over sparse arrays, this implemenation passes the "holes" in the sparse array to
	the callback function with a value of undefined. JavaScript 1.6's map skips the holes in the sparse array.
	For more details, see:
	https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/map</description>
				<examples>
					<example>	// returns [2, 3, 4, 5]
		dojo.map([1, 2, 3, 4], function(item){ return item+1 });</example>
				</examples>
				<parameters>
					<parameter name="arr" type="Array|String" usage="required">
						<summary>the array to iterate on. If a string, operates on
	individual characters.</summary>
					</parameter>
					<parameter name="callback" type="Function|String" usage="required">
						<summary>a function is invoked with three arguments, (item, index,
	array),  and returns a value</summary>
					</parameter>
					<parameter name="thisObject" type="Function" usage="optional">
						<summary>may be used to scope the call to callback</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Array"/>
				</return-types>
			</method>
			<method name="filter" scope="normal">
				<resources>
					<resource>dojo/_base/array.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.array</provide>
				</provides>
				<summary>Returns a new Array with those items from arr that match the
	condition implemented by callback.</summary>
				<description>This function corresponds to the JavaScript 1.6 Array.filter() method, with one difference: when
	run over sparse arrays, this implemenation passes the "holes" in the sparse array to
	the callback function with a value of undefined. JavaScript 1.6's filter skips the holes in the sparse array.
	For more details, see:
	https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/filter</description>
				<examples>
					<example>	// returns [2, 3, 4]
		dojo.filter([1, 2, 3, 4], function(item){ return item&gt;1; });</example>
				</examples>
				<parameters>
					<parameter name="arr" type="Array" usage="required">
						<summary>the array to iterate over.</summary>
					</parameter>
					<parameter name="callback" type="Function|String" usage="required">
						<summary>a function that is invoked with three arguments (item,
	index, array). The return of this function is expected to
	be a boolean which determines whether the passed-in item
	will be included in the returned array.</summary>
					</parameter>
					<parameter name="thisObject" type="Object" usage="optional">
						<summary>may be used to scope the call to callback</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Array"/>
				</return-types>
			</method>
			<method name="connect" scope="normal">
				<resources>
					<resource>dojo/_base/connect.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.connect</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>&lt;code&gt;dojo.connect&lt;/code&gt; is the core event handling and delegation method in
	Dojo. It allows one function to &amp;quot;listen in&amp;quot; on the execution of
	any other, triggering the second whenever the first is called. Many
	listeners may be attached to a function, and source functions may
	be either regular function calls or DOM events.</summary>
				<description>Connects listeners to actions, so that after event fires, a
	listener is called with the same arguments passed to the original
	function.
	Since `dojo.connect` allows the source of events to be either a
	"regular" JavaScript function or a DOM event, it provides a uniform
	interface for listening to all the types of events that an
	application is likely to deal with though a single, unified
	interface. DOM programmers may want to think of it as
	"addEventListener for everything and anything".
	When setting up a connection, the `event` parameter must be a
	string that is the name of the method/event to be listened for. If
	`obj` is null, `dojo.global` is assumed, meaning that connections
	to global methods are supported but also that you may inadvertently
	connect to a global by passing an incorrect object name or invalid
	reference.
	`dojo.connect` generally is forgiving. If you pass the name of a
	function or method that does not yet exist on `obj`, connect will
	not fail, but will instead set up a stub method. Similarly, null
	arguments may simply be omitted such that fewer than 4 arguments
	may be required to set up a connection See the examples for details.
	The return value is a handle that is needed to
	remove this connection with `dojo.disconnect`.</description>
				<examples>
					<example>When obj.onchange(), do ui.update():
		dojo.connect(obj, "onchange", ui, "update");
		dojo.connect(obj, "onchange", ui, ui.update); // same</example>
					<example>Using return value for disconnect:
		var link = dojo.connect(obj, "onchange", ui, "update");
		...
		dojo.disconnect(link);</example>
					<example>When onglobalevent executes, watcher.handler is invoked:
		dojo.connect(null, "onglobalevent", watcher, "handler");</example>
					<example>When ob.onCustomEvent executes, customEventHandler is invoked:
		dojo.connect(ob, "onCustomEvent", null, "customEventHandler");
		dojo.connect(ob, "onCustomEvent", "customEventHandler"); // same</example>
					<example>When ob.onCustomEvent executes, customEventHandler is invoked
	with the same scope (this):
		dojo.connect(ob, "onCustomEvent", null, customEventHandler);
		dojo.connect(ob, "onCustomEvent", customEventHandler); // same</example>
					<example>When globalEvent executes, globalHandler is invoked
	with the same scope (this):
		dojo.connect(null, "globalEvent", null, globalHandler);
		dojo.connect("globalEvent", globalHandler); // same</example>
				</examples>
				<parameters>
					<parameter name="obj" type="Object|null" usage="required">
						<summary>The source object for the event function.
	Defaults to &lt;code&gt;dojo.global&lt;/code&gt; if null.
	If obj is a DOM node, the connection is delegated
	to the DOM event manager (unless dontFix is true).</summary>
					</parameter>
					<parameter name="event" type="String" usage="required">
						<summary>name of the event function in obj.
	I.e. identifies a property &lt;code&gt;obj[event]&lt;/code&gt;.</summary>
					</parameter>
					<parameter name="context" type="Object|null" usage="required">
						<summary>The object that method will receive as &amp;quot;this&amp;quot;.
	If context is null and method is a function, then method
	inherits the context of event.
	If method is a string then context must be the source
	object object for method (context[method]). If context is null,
	dojo.global is used.</summary>
					</parameter>
					<parameter name="method" type="String|Function" usage="required">
						<summary>A function reference, or name of a function in context.
	The function identified by method fires after event does.
	method receives the same arguments as the event.
	See context argument comments for information on method's scope.</summary>
					</parameter>
					<parameter name="dontFix" type="Boolean" usage="optional">
						<summary>If obj is a DOM node, set dontFix to true to prevent delegation
	of this connection to the DOM event manager.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_connect" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/connect.js</resource>
					<resource>dojo/_base/event.js</resource>
					<resource>dojox/mobile/app/_event.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.connect</provide>
					<provide>dojo._base.event</provide>
					<provide>dojox.mobile.app._event</provide>
				</provides>
				<parameters>
					<parameter name="obj" type="" usage="required"/>
					<parameter name="event" type="" usage="required"/>
					<parameter name="context" type="" usage="required"/>
					<parameter name="method" type="" usage="required"/>
					<parameter name="dontFix" type="" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Handle"/>
				</return-types>
			</method>
			<method name="disconnect" scope="normal">
				<resources>
					<resource>dojo/_base/connect.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.connect</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>Remove a link created by dojo.connect.</summary>
				<description>Removes the connection between event and the method referenced by handle.</description>
				<parameters>
					<parameter name="handle" type="Handle" usage="required">
						<summary>the return value of the dojo.connect call that created the connection.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_disconnect" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/connect.js</resource>
					<resource>dojo/_base/event.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.connect</provide>
					<provide>dojo._base.event</provide>
				</provides>
				<parameters>
					<parameter name="obj" type="" usage="required"/>
					<parameter name="event" type="" usage="required"/>
					<parameter name="handle" type="" usage="required"/>
					<parameter name="listener" type="" usage="required"/>
				</parameters>
			</method>
			<method name="connectPublisher" scope="normal">
				<resources>
					<resource>dojo/_base/connect.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.connect</provide>
				</provides>
				<summary>Ensure that every time obj.event() is called, a message is published
	on the topic. Returns a handle which can be passed to
	dojo.disconnect() to disable subsequent automatic publication on
	the topic.</summary>
				<examples>
					<example>	dojo.connectPublisher("/ajax/start", dojo, "xhrGet");</example>
				</examples>
				<parameters>
					<parameter name="topic" type="String" usage="required">
						<summary>The name of the topic to publish.</summary>
					</parameter>
					<parameter name="obj" type="Object|null" usage="required">
						<summary>The source object for the event function. Defaults to dojo.global
	if null.</summary>
					</parameter>
					<parameter name="event" type="String" usage="required">
						<summary>The name of the event function in obj.
	I.e. identifies a property obj[event].</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Handle"/>
				</return-types>
			</method>
			<method name="declare" scope="normal">
				<resources>
					<resource>dojo/_base/declare.js</resource>
					<resource>dojox/lang/docs.js</resource>
					<resource>dojox/lang/typed.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.declare</provide>
					<provide>dojox.lang.docs</provide>
					<provide>dojox.lang.typed</provide>
				</provides>
				<summary>Create a feature-rich constructor from compact notation.</summary>
				<description>Create a constructor using a compact notation for inheritance and
	prototype extension.
	Mixin ancestors provide a type of multiple inheritance.
	Prototypes of mixin ancestors are copied to the new class:
	changes to mixin prototypes will not affect classes to which
	they have been mixed in.
	Ancestors can be compound classes created by this version of
	dojo.declare. In complex cases all base classes are going to be
	linearized according to C3 MRO algorithm
	(see http://www.python.org/download/releases/2.3/mro/ for more
	details).
	"className" is cached in "declaredClass" property of the new class,
	if it was supplied. The immediate super class will be cached in
	"superclass" property of the new class.
	Methods in "props" will be copied and modified: "nom" property
	(the declared name of the method) will be added to all copied
	functions to help identify them for the internal machinery. Be
	very careful, while reusing methods: if you use the same
	function under different names, it can produce errors in some
	cases.
	It is possible to use constructors created "manually" (without
	dojo.declare) as bases. They will be called as usual during the
	creation of an instance, their methods will be chained, and even
	called by "this.inherited()".
	Special property "-chains-" governs how to chain methods. It is
	a dictionary, which uses method names as keys, and hint strings
	as values. If a hint string is "after", this method will be
	called after methods of its base classes. If a hint string is
	"before", this method will be called before methods of its base
	classes.
	If "constructor" is not mentioned in "-chains-" property, it will
	be chained using the legacy mode: using "after" chaining,
	calling preamble() method before each constructor, if available,
	and calling postscript() after all constructors were executed.
	If the hint is "after", it is chained as a regular method, but
	postscript() will be called after the chain of constructors.
	"constructor" cannot be chained "before", but it allows
	a special hint string: "manual", which means that constructors
	are not going to be chained in any way, and programmer will call
	them manually using this.inherited(). In the latter case
	postscript() will be called after the construction.
	All chaining hints are "inherited" from base classes and
	potentially can be overridden. Be very careful when overriding
	hints! Make sure that all chained methods can work in a proposed
	manner of chaining.
	Once a method was chained, it is impossible to unchain it. The
	only exception is "constructor". You don't need to define a
	method in order to supply a chaining hint.
	If a method is chained, it cannot use this.inherited() because
	all other methods in the hierarchy will be called automatically.
	Usually constructors and initializers of any kind are chained
	using "after" and destructors of any kind are chained as
	"before". Note that chaining assumes that chained methods do not
	return any value: any returned value will be discarded.</description>
				<examples>
					<example>	dojo.declare("my.classes.bar", my.classes.foo, {
			// properties to be added to the class prototype
			someValue: 2,
			// initialization function
			constructor: function(){
				this.myComplicatedObject = new ReallyComplicatedObject();
			},
			// other functions
			someMethod: function(){
				doStuff();
			}
		});</example>
					<example>	var MyBase = dojo.declare(null, {
			// constructor, properties, and methods go here
			// ...
		});
		var MyClass1 = dojo.declare(MyBase, {
			// constructor, properties, and methods go here
			// ...
		});
		var MyClass2 = dojo.declare(MyBase, {
			// constructor, properties, and methods go here
			// ...
		});
		var MyDiamond = dojo.declare([MyClass1, MyClass2], {
			// constructor, properties, and methods go here
			// ...
		});</example>
					<example>	var F = function(){ console.log("raw constructor"); };
		F.prototype.method = function(){
			console.log("raw method");
		};
		var A = dojo.declare(F, {
			constructor: function(){
				console.log("A.constructor");
			},
			method: function(){
				console.log("before calling F.method...");
				this.inherited(arguments);
				console.log("...back in A");
			}
		});
		new A().method();
		// will print:
		// raw constructor
		// A.constructor
		// before calling F.method...
		// raw method
		// ...back in A</example>
					<example>	var A = dojo.declare(null, {
			"-chains-": {
				destroy: "before"
			}
		});
		var B = dojo.declare(A, {
			constructor: function(){
				console.log("B.constructor");
			},
			destroy: function(){
				console.log("B.destroy");
			}
		});
		var C = dojo.declare(B, {
			constructor: function(){
				console.log("C.constructor");
			},
			destroy: function(){
				console.log("C.destroy");
			}
		});
		new C().destroy();
		// prints:
		// B.constructor
		// C.constructor
		// C.destroy
		// B.destroy</example>
					<example>	var A = dojo.declare(null, {
			"-chains-": {
				constructor: "manual"
			}
		});
		var B = dojo.declare(A, {
			constructor: function(){
				// ...
				// call the base constructor with new parameters
				this.inherited(arguments, [1, 2, 3]);
				// ...
			}
		});</example>
					<example>	var A = dojo.declare(null, {
			"-chains-": {
				m1: "before"
			},
			m1: function(){
				console.log("A.m1");
			},
			m2: function(){
				console.log("A.m2");
			}
		});
		var B = dojo.declare(A, {
			"-chains-": {
				m2: "after"
			},
			m1: function(){
				console.log("B.m1");
			},
			m2: function(){
				console.log("B.m2");
			}
		});
		var x = new B();
		x.m1();
		// prints:
		// B.m1
		// A.m1
		x.m2();
		// prints:
		// A.m2
		// B.m2</example>
				</examples>
				<return-description>New constructor function.</return-description>
				<parameters>
					<parameter name="className" type="String:" usage="optional">
						<summary>The optional name of the constructor (loosely, a &amp;quot;class&amp;quot;)
	stored in the &amp;quot;declaredClass&amp;quot; property in the created prototype.
	It will be used as a global name for a created constructor.</summary>
					</parameter>
					<parameter name="superclass" type="Function|Function[]:" usage="required">
						<summary>May be null, a Function, or an Array of Functions. This argument
	specifies a list of bases (the left-most one is the most deepest
	base).</summary>
					</parameter>
					<parameter name="props" type="Object:" usage="required">
						<summary>An object whose properties are copied to the created prototype.
	Add an instance-initialization function by making it a property
	named &amp;quot;constructor&amp;quot;.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Function"/>
				</return-types>
			</method>
			<method name="safeMixin" scope="normal">
				<resources>
					<resource>dojo/_base/declare.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.declare</provide>
				</provides>
				<summary>Mix in properties skipping a constructor and decorating functions
	like it is done by dojo.declare.</summary>
				<description>This function is used to mix in properties like dojo._mixin does,
	but it skips a constructor property and decorates functions like
	dojo.declare does.
	It is meant to be used with classes and objects produced with
	dojo.declare. Functions mixed in with dojo.safeMixin can use
	this.inherited() like normal methods.
	This function is used to implement extend() method of a constructor
	produced with dojo.declare().</description>
				<examples>
					<example>	var A = dojo.declare(null, {
			m1: function(){
				console.log("A.m1");
			},
			m2: function(){
				console.log("A.m2");
			}
		});
		var B = dojo.declare(A, {
			m1: function(){
				this.inherited(arguments);
				console.log("B.m1");
			}
		});
		B.extend({
			m2: function(){
				this.inherited(arguments);
				console.log("B.m2");
			}
		});
		var x = new B();
		dojo.safeMixin(x, {
			m1: function(){
				this.inherited(arguments);
				console.log("X.m1");
			},
			m2: function(){
				this.inherited(arguments);
				console.log("X.m2");
			}
		});
		x.m2();
		// prints:
		// A.m1
		// B.m1
		// X.m1</example>
				</examples>
				<parameters>
					<parameter name="target" type="Object" usage="required">
						<summary>Target object to accept new properties.</summary>
					</parameter>
					<parameter name="source" type="Object" usage="required">
						<summary>Source object for new properties.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="fixEvent" scope="normal">
				<resources>
					<resource>dojo/_base/event.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.event</provide>
				</provides>
				<summary>normalizes properties on the event object including event
	bubbling methods, keystroke normalization, and x/y positions</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required">
						<summary>native event object</summary>
					</parameter>
					<parameter name="sender" type="DOMNode" usage="required">
						<summary>node to treat as &amp;quot;currentTarget&amp;quot;</summary>
					</parameter>
				</parameters>
			</method>
			<method name="stopEvent" scope="normal">
				<resources>
					<resource>dojo/_base/event.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.event</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>prevents propagation and clobbers the default action of the
	passed event</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required">
						<summary>The event object. If omitted, window.event is used on IE.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="isCopyKey" scope="normal">
				<resources>
					<resource>dojo/_base/event.js</resource>
					<resource>dojox/grid/_Grid.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.event</provide>
					<provide>dojox.grid._Grid</provide>
				</provides>
				<summary>Checks an event for the copy key (meta on Mac, and ctrl anywhere else)</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required">
						<summary>Event object to examine</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="_ieDispatcher" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/event.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.event</provide>
				</provides>
				<parameters>
					<parameter name="args" type="" usage="required"/>
					<parameter name="sender" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_getIeDispatcher" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/event.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.event</provide>
				</provides>
				<return-types>
					<return-type type="function"/>
				</return-types>
			</method>
			<method name="_fade" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/fx.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.fx</provide>
				</provides>
				<summary>Returns an animation that will fade the node defined by
	args.node from the start to end values passed (args.start
	args.end) (end is mandatory, start is optional)</summary>
				<parameters>
					<parameter name="args" type="Object" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Animation"/>
				</return-types>
			</method>
			<method name="fadeIn" scope="normal">
				<resources>
					<resource>dojo/_base/fx.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.fx</provide>
				</provides>
				<summary>Returns an animation that will fade node defined in 'args' from
	its current opacity to fully opaque.</summary>
				<parameters>
					<parameter name="args" type="dojo.__FadeArgs" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Animation"/>
				</return-types>
			</method>
			<method name="fadeOut" scope="normal">
				<resources>
					<resource>dojo/_base/fx.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.fx</provide>
				</provides>
				<summary>Returns an animation that will fade node defined in 'args'
	from its current opacity to fully transparent.</summary>
				<parameters>
					<parameter name="args" type="dojo.__FadeArgs" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Animation"/>
				</return-types>
			</method>
			<method name="_defaultEasing" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/fx.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.fx</provide>
				</provides>
				<summary>The default easing function for dojo.Animation(s)</summary>
				<parameters>
					<parameter name="n" type="Decimal" usage="optional"/>
				</parameters>
			</method>
			<method name="animateProperty" scope="normal">
				<resources>
					<resource>dojo/_base/fx.js</resource>
					<resource>dojox/fx/ext-dojo/complex.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.fx</provide>
					<provide>dojox.fx.ext-dojo.complex</provide>
				</provides>
				<summary>An extension of dojo.animateProperty which adds functionality
	that animates a &amp;quot;complex property&amp;quot;. The primary example is the
	clip style: rect(10px 30px 10px 50px).
	Note this can also be used with (and is actually intended for)
	CSS3 properties, such as transform:
	transform: rotate(10deg) translateX(0px)</summary>
				<description>The standard animation doesn't know what to do with something like
	rect(...). This class identifies complex properties by they being a
	string and having parenthesis. If so, that property is made into a
	dojox.fx._Complex object and the getValue() is obtained from
	there.</description>
				<examples>
					<example>A simple animation that changes the width of the specified node.
		dojo.animateProperty({
			node: "nodeId",
			properties: { width: 400 },
		}).play();
	Dojo figures out the start value for the width and converts the
	integer specified for the width to the more expressive but
	verbose form `{ width: { end: '400', units: 'px' } }` which you
	can also specify directly. Defaults to 'px' if ommitted.</example>
					<example>Animate width, height, and padding over 2 seconds... the
	pedantic way:
		dojo.animateProperty({ node: node, duration:2000,
			properties: {
				width: { start: '200', end: '400', units:"px" },
				height: { start:'200', end: '400', units:"px" },
				paddingTop: { start:'5', end:'50', units:"px" }
			}
		}).play();
	Note 'paddingTop' is used over 'padding-top'. Multi-name CSS properties
	are written using "mixed case", as the hyphen is illegal as an object key.</example>
					<example>Plug in a different easing function and register a callback for
	when the animation ends. Easing functions accept values between
	zero and one and return a value on that basis. In this case, an
	exponential-in curve.
		dojo.animateProperty({
			node: "nodeId",
			// dojo figures out the start value
			properties: { width: { end: 400 } },
			easing: function(n){
				return (n==0) ? 0 : Math.pow(2, 10 * (n - 1));
			},
			onEnd: function(node){
				// called when the animation finishes. The animation
				// target is passed to this function
			}
		}).play(500); // delay playing half a second</example>
					<example>Like all `dojo.Animation`s, animateProperty returns a handle to the
	Animation instance, which fires the events common to Dojo FX. Use `dojo.connect`
	to access these events outside of the Animation definiton:
		var anim = dojo.animateProperty({
			node:"someId",
			properties:{
				width:400, height:500
			}
		});
		dojo.connect(anim,"onEnd", function(){
			console.log("animation ended");
		});
		// play the animation now:
		anim.play();</example>
					<example>Each property can be a function whose return value is substituted along.
	Additionally, each measurement (eg: start, end) can be a function. The node
	reference is passed direcly to callbacks.
		dojo.animateProperty({
			node:"mine",
			properties:{
				height:function(node){
					// shrink this node by 50%
					return dojo.position(node).h / 2
				},
				width:{
					start:function(node){ return 100; },
					end:function(node){ return 200; }
				}
			}
		}).play();</example>
					<example>	var ani = dojo.animateProperty({
			node:dojo.byId("myDiv"),
			duration:600,
			properties:{
				clip:{start:'rect(0px 50px 50px 0px)', end:'rect(10px 30px 30px 10px)'}
			}
		}).play();</example>
				</examples>
				<parameters>
					<parameter name="args" type="dojo.__AnimArgs" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Animation"/>
				</return-types>
			</method>
			<method name="anim" scope="normal">
				<resources>
					<resource>dojo/_base/fx.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.fx</provide>
				</provides>
				<summary>A simpler interface to &lt;code&gt;dojo.animateProperty()&lt;/code&gt;, also returns
	an instance of &lt;code&gt;dojo.Animation&lt;/code&gt; but begins the animation
	immediately, unlike nearly every other Dojo animation API.</summary>
				<description>`dojo.anim` is a simpler (but somewhat less powerful) version
	of `dojo.animateProperty`.  It uses defaults for many basic properties
	and allows for positional parameters to be used in place of the
	packed "property bag" which is used for other Dojo animation
	methods.
	The `dojo.Animation` object returned from `dojo.anim` will be
	already playing when it is returned from this function, so
	calling play() on it again is (usually) a no-op.</description>
				<examples>
					<example>Fade out a node
		dojo.anim("id", { opacity: 0 });</example>
					<example>Fade out a node over a full second
		dojo.anim("id", { opacity: 0 }, 1000);</example>
				</examples>
				<parameters>
					<parameter name="node" type="DOMNode|String" usage="required">
						<summary>a DOM node or the id of a node to animate CSS properties on</summary>
					</parameter>
					<parameter name="properties" type="Object" usage="required"/>
					<parameter name="duration" type="Integer" usage="optional">
						<summary>The number of milliseconds over which the animation
	should run. Defaults to the global animation default duration
	(350ms).</summary>
					</parameter>
					<parameter name="easing" type="Function" usage="optional">
						<summary>An easing function over which to calculate acceleration
	and deceleration of the animation through its duration.
	A default easing algorithm is provided, but you may
	plug in any you wish. A large selection of easing algorithms
	are available in &lt;code&gt;dojo.fx.easing&lt;/code&gt;.</summary>
					</parameter>
					<parameter name="onEnd" type="Function" usage="optional">
						<summary>A function to be called when the animation finishes
	running.</summary>
					</parameter>
					<parameter name="delay" type="Integer" usage="optional">
						<summary>The number of milliseconds to delay beginning the
	animation by. The default is 0.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="dojo.Animation"/>
				</return-types>
			</method>
			<method name="_destroyElement" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Existing alias for &lt;code&gt;dojo.destroy&lt;/code&gt;. Deprecated, will be removed
	in 2.0</summary>
				<parameters>
					<parameter name="node" type="" usage="required"/>
				</parameters>
			</method>
			<method name="destroy" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Removes a node from its parent, clobbering it and all of its
	children.</summary>
				<description>Removes a node from its parent, clobbering it and all of its
	children. Function only works with DomNodes, and returns nothing.</description>
				<examples>
					<example>Destroy a node byId:
		dojo.destroy("someId");</example>
					<example>Destroy all nodes in a list by reference:
		dojo.query(".someNode").forEach(dojo.destroy);</example>
				</examples>
				<parameters>
					<parameter name="node" type="String|DomNode" usage="required">
						<summary>A String ID or DomNode reference of the element to be destroyed</summary>
					</parameter>
				</parameters>
			</method>
			<method name="isDescendant" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns true if node is a descendant of ancestor</summary>
				<examples>
					<example>Test is node id="bar" is a descendant of node id="foo"
		if(dojo.isDescendant("bar", "foo")){ ... }</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>string id or node reference to test</summary>
					</parameter>
					<parameter name="ancestor" type="DomNode|String" usage="required">
						<summary>string id or node reference of potential parent to test against</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="setSelectable" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Enable or disable selection on a node</summary>
				<examples>
					<example>Make the node id="bar" unselectable
		dojo.setSelectable("bar");</example>
					<example>Make the node id="bar" selectable
		dojo.setSelectable("bar", true);</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to node</summary>
					</parameter>
					<parameter name="selectable" type="Boolean" usage="required">
						<summary>state to put the node in. false indicates unselectable, true
	allows selection.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="place" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
					<resource>dojox/html/ellipsis.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
					<provide>dojox.html.ellipsis</provide>
				</provides>
				<summary>Attempt to insert node into the DOM, choosing from various positioning options.
	Returns the first argument resolved to a DOM node.</summary>
				<examples>
					<example>Place a node by string id as the last child of another node by string id:
		dojo.place("someNode", "anotherNode");</example>
					<example>Place a node by string id before another node by string id
		dojo.place("someNode", "anotherNode", "before");</example>
					<example>Create a Node, and place it in the body element (last child):
		dojo.place("&lt;div&gt;&lt;/div&gt;", dojo.body());</example>
					<example>Put a new LI as the first child of a list by id:
		dojo.place("&lt;li&gt;&lt;/li&gt;", "someUl", "first");</example>
				</examples>
				<return-description>DomNode
	Returned values is the first argument resolved to a DOM node.
	.place() is also a method of `dojo.NodeList`, allowing `dojo.query` node lookups.</return-description>
				<parameters>
					<parameter name="node" type="String|DomNode" usage="required">
						<summary>id or node reference, or HTML fragment starting with &amp;quot;&amp;lt;&amp;quot; to place relative to refNode</summary>
					</parameter>
					<parameter name="refNode" type="String|DomNode" usage="required">
						<summary>id or node reference to use as basis for placement</summary>
					</parameter>
					<parameter name="position" type="String|Number" usage="optional">
						<summary>string noting the position of node relative to refNode or a
	number indicating the location in the childNodes collection of refNode.
	Accepted string values are:
		* before
		* after
		* replace
		* only
		* first
		* last
	&amp;quot;first&amp;quot; and &amp;quot;last&amp;quot; indicate positions as children of refNode, &amp;quot;replace&amp;quot; replaces refNode,
	&amp;quot;only&amp;quot; replaces all children.  position defaults to &amp;quot;last&amp;quot; if not specified</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="DomNode"/>
				</return-types>
			</method>
			<method name="getComputedStyle" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns a &amp;quot;computed style&amp;quot; object.</summary>
				<description>Gets a "computed style" object which can be used to gather
	information about the current state of the rendered node.
	Note that this may behave differently on different browsers.
	Values may have different formats and value encodings across
	browsers.
	Note also that this method is expensive.  Wherever possible,
	reuse the returned object.
	Use the dojo.style() method for more consistent (pixelized)
	return values.</description>
				<examples>
					<example>	dojo.getComputedStyle(dojo.byId('foo')).borderWidth;</example>
					<example>Reusing the returned object, avoiding multiple lookups:
		var cs = dojo.getComputedStyle(dojo.byId("someNode"));
		var w = cs.width, h = cs.height;</example>
				</examples>
				<parameters>
					<parameter name="node" type="DOMNode" usage="required">
						<summary>A reference to a DOM node. Does NOT support taking an
	ID string for speed reasons.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="CSS2Properties"/>
				</return-types>
			</method>
			<method name="_toPixelValue" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<parameters>
					<parameter name="element" type="" usage="required"/>
					<parameter name="value" type="" usage="required"/>
					<parameter name="avalue" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_getOpacity" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns the current opacity of the passed node as a
	floating-point value between 0 and 1.</summary>
				<return-description>Number between 0 and 1</return-description>
				<parameters>
					<parameter name="node" type="DomNode" usage="required">
						<summary>a reference to a DOM node. Does NOT support taking an
	ID string for speed reasons.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Number"/>
				</return-types>
			</method>
			<method name="_setOpacity" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>set the opacity of the passed node portably. Returns the
	new opacity of the node.</summary>
				<return-description>Number between 0 and 1</return-description>
				<parameters>
					<parameter name="node" type="DOMNode" usage="required">
						<summary>a reference to a DOM node. Does NOT support taking an
	ID string for performance reasons.</summary>
					</parameter>
					<parameter name="opacity" type="Number" usage="required">
						<summary>A Number between 0 and 1. 0 specifies transparent.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Number"/>
				</return-types>
			</method>
			<method name="_getPadExtents" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns object with special values specifically useful for node
	fitting.</summary>
				<description>Returns an object with `w`, `h`, `l`, `t` properties:
			l/t = left/top padding (respectively)
			w = the total of the left and right padding
			h = the total of the top and bottom padding
	If 'node' has position, l/t forms the origin for child nodes.
	The w/h are used for calculating boxes.
	Normally application code will not need to invoke this
	directly, and will use the ...box... functions instead.</description>
				<parameters>
					<parameter name="n" type="DomNode" usage="required"/>
					<parameter name="computedStyle" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_getBorderExtents" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>returns an object with properties useful for noting the border
	dimensions.</summary>
				<description>* l/t = the sum of left/top border (respectively)
	* w = the sum of the left and right border
	* h = the sum of the top and bottom border
	The w/h are used for calculating boxes.
	Normally application code will not need to invoke this
	directly, and will use the ...box... functions instead.</description>
				<parameters>
					<parameter name="n" type="DomNode" usage="required"/>
					<parameter name="computedStyle" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_getPadBorderExtents" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns object with properties useful for box fitting with
	regards to padding.</summary>
				<description>* l/t = the sum of left/top padding and left/top border (respectively)
	* w = the sum of the left and right padding and border
	* h = the sum of the top and bottom padding and border
	The w/h are used for calculating boxes.
	Normally application code will not need to invoke this
	directly, and will use the ...box... functions instead.</description>
				<parameters>
					<parameter name="n" type="DomNode" usage="required"/>
					<parameter name="computedStyle" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_getMarginExtents" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>returns object with properties useful for box fitting with
	regards to box margins (i.e., the outer-box).
	* l/t = marginLeft, marginTop, respectively
	* w = total width, margin inclusive
	* h = total height, margin inclusive
	The w/h are used for calculating boxes.
	Normally application code will not need to invoke this
	directly, and will use the ...box... functions instead.</summary>
				<parameters>
					<parameter name="n" type="" usage="required"/>
					<parameter name="computedStyle" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_getMarginBox" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>returns an object that encodes the width, height, left and top
	positions of the node's margin box.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="computedStyle" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_getMarginSize" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>returns an object that encodes the width and height of
	the node's margin box</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="computedStyle" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_getContentBox" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns an object that encodes the width, height, left and top
	positions of the node's content box, irrespective of the
	current box model.</summary>
				<parameters>
					<parameter name="node" type="" usage="required"/>
					<parameter name="computedStyle" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_getBorderBox" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<parameters>
					<parameter name="node" type="" usage="required"/>
					<parameter name="computedStyle" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_setBox" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>sets width/height/left/top in the current (native) box-model
	dimentions. Uses the unit passed in u.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required">
						<summary>DOM Node reference. Id string not supported for performance
	reasons.</summary>
					</parameter>
					<parameter name="l" type="Number" usage="optional">
						<summary>left offset from parent.</summary>
					</parameter>
					<parameter name="t" type="Number" usage="optional">
						<summary>top offset from parent.</summary>
					</parameter>
					<parameter name="w" type="Number" usage="optional">
						<summary>width in current box model.</summary>
					</parameter>
					<parameter name="h" type="Number" usage="optional">
						<summary>width in current box model.</summary>
					</parameter>
					<parameter name="u" type="String" usage="optional">
						<summary>unit measure to use for other measures. Defaults to &amp;quot;px&amp;quot;.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_isButtonTag" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>True if the node is BUTTON or INPUT.type=&amp;quot;button&amp;quot;.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="_usesBorderBox" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>True if the node uses border-box layout.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="boolean"/>
				</return-types>
			</method>
			<method name="_setContentSize" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Sets the size of the node's contents, irrespective of margins,
	padding, or borders.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="widthPx" type="Number" usage="required"/>
					<parameter name="heightPx" type="Number" usage="required"/>
					<parameter name="computedStyle" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_setMarginBox" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>sets the size of the node's margin box and placement
	(left/top), irrespective of box model. Think of it as a
	passthrough to dojo._setBox that handles box-model vagaries for
	you.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="leftPx" type="Number" usage="optional"/>
					<parameter name="topPx" type="Number" usage="optional"/>
					<parameter name="widthPx" type="Number" usage="optional"/>
					<parameter name="heightPx" type="Number" usage="optional"/>
					<parameter name="computedStyle" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="marginBox" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Getter/setter for the margin-box of node.</summary>
				<description>Getter/setter for the margin-box of node.
	Returns an object in the expected format of box (regardless
	if box is passed). The object might look like:
	`{ l: 50, t: 200, w: 300: h: 150 }`
	for a node offset from its parent 50px to the left, 200px from
	the top with a margin width of 300px and a margin-height of
	150px.</description>
				<examples>
					<example>Retrieve the marginbox of a passed node
		var box = dojo.marginBox("someNodeId");
		console.dir(box);</example>
					<example>Set a node's marginbox to the size of another node
		var box = dojo.marginBox("someNodeId");
		dojo.marginBox("someOtherNode", box);</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to DOM Node to get/set box for</summary>
					</parameter>
					<parameter name="box" type="Object" usage="optional">
						<summary>If passed, denotes that dojo.marginBox() should
	update/set the margin box for node. Box is an object in the
	above format. All properties are optional if passed.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="contentBox" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Getter/setter for the content-box of node.</summary>
				<description>Returns an object in the expected format of box (regardless if box is passed).
	The object might look like:
	`{ l: 50, t: 200, w: 300: h: 150 }`
	for a node offset from its parent 50px to the left, 200px from
	the top with a content width of 300px and a content-height of
	150px. Note that the content box may have a much larger border
	or margin box, depending on the box model currently in use and
	CSS values set/inherited for node.
	While the getter will return top and left values, the
	setter only accepts setting the width and height.</description>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to DOM Node to get/set box for</summary>
					</parameter>
					<parameter name="box" type="Object" usage="optional">
						<summary>If passed, denotes that dojo.contentBox() should
	update/set the content box for node. Box is an object in the
	above format, but only w (width) and h (height) are supported.
	All properties are optional if passed.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="_docScroll" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
			</method>
			<method name="_isBodyLtr" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
			</method>
			<method name="_getIeDocumentElementOffset" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>returns the offset in x and y from the document body to the
	visual edge of the page</summary>
				<description>The following values in IE contain an offset:
			event.clientX
			event.clientY
			node.getBoundingClientRect().left
			node.getBoundingClientRect().top
	But other position related values do not contain this offset,
	such as node.offsetLeft, node.offsetTop, node.style.left and
	node.style.top. The offset is always (2, 2) in LTR direction.
	When the body is in RTL direction, the offset counts the width
	of left scroll bar's width.  This function computes the actual
	offset.</description>
			</method>
			<method name="_fixIeBiDiScrollLeft" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<parameters>
					<parameter name="scrollLeft" type="Integer" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Integer"/>
				</return-types>
			</method>
			<method name="_abs" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
			</method>
			<method name="position" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Gets the position and size of the passed element relative to
	the viewport (if includeScroll==false), or relative to the
	document root (if includeScroll==true).</summary>
				<description>Returns an object of the form:
	{ x: 100, y: 300, w: 20, h: 15 }
	If includeScroll==true, the x and y values will include any
	document offsets that may affect the position relative to the
	viewport.
	Uses the border-box model (inclusive of border and padding but
	not margin).  Does not act as a setter.</description>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="includeScroll" type="Boolean" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="coords" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Deprecated: Use position() for border-box x/y/w/h
	or marginBox() for margin-box w/h/l/t.
	Returns an object representing a node's size and position.</summary>
				<description>Returns an object that measures margin-box (w)idth/(h)eight
	and absolute position x/y of the border-box. Also returned
	is computed (l)eft and (t)op values in pixels from the
	node's offsetParent as returned from marginBox().
	Return value will be in the form:
				{ l: 50, t: 200, w: 300: h: 150, x: 100, y: 300 }
	Does not act as a setter. If includeScroll is passed, the x and
	y params are affected as one would expect in dojo.position().</description>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required"/>
					<parameter name="includeScroll" type="Boolean" usage="optional"/>
				</parameters>
			</method>
			<method name="removeAttr" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Removes an attribute from an HTML element.</summary>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to the element to remove the attribute from</summary>
					</parameter>
					<parameter name="name" type="String" usage="required">
						<summary>the name of the attribute to remove</summary>
					</parameter>
				</parameters>
			</method>
			<method name="getNodeProp" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Returns an effective value of a property or an attribute.</summary>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>id or reference to the element to remove the attribute from</summary>
					</parameter>
					<parameter name="name" type="String" usage="required">
						<summary>the name of the attribute</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Anything"/>
				</return-types>
			</method>
			<method name="create" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
					<resource>dojox/html/ellipsis.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
					<provide>dojox.html.ellipsis</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>Create an element, allowing for optional attribute decoration
	and placement.</summary>
				<description>A DOM Element creation function. A shorthand method for creating a node or
	a fragment, and allowing for a convenient optional attribute setting step,
	as well as an optional DOM placement reference.
	Attributes are set by passing the optional object through `dojo.attr`.
	See `dojo.attr` for noted caveats and nuances, and API if applicable.
	Placement is done via `dojo.place`, assuming the new node to be the action
	node, passing along the optional reference node and position.</description>
				<examples>
					<example>Create a DIV:
		var n = dojo.create("div");</example>
					<example>Create a DIV with content:
		var n = dojo.create("div", { innerHTML:"&lt;p&gt;hi&lt;/p&gt;" });</example>
					<example>Place a new DIV in the BODY, with no attributes set
		var n = dojo.create("div", null, dojo.body());</example>
					<example>Create an UL, and populate it with LI's. Place the list as the first-child of a
	node with id="someId":
		var ul = dojo.create("ul", null, "someId", "first");
		var items = ["one", "two", "three", "four"];
		dojo.forEach(items, function(data){
			dojo.create("li", { innerHTML: data }, ul);
		});</example>
					<example>Create an anchor, with an href. Place in BODY:
		dojo.create("a", { href:"foo.html", title:"Goto FOO!" }, dojo.body());</example>
					<example>Create a `dojo.NodeList()` from a new element (for syntatic sugar):
		dojo.query(dojo.create('div'))
			.addClass("newDiv")
			.onclick(function(e){ console.log('clicked', e.target) })
			.place("#someNode"); // redundant, but cleaner.</example>
				</examples>
				<return-description>DomNode</return-description>
				<parameters>
					<parameter name="tag" type="String|DomNode" usage="required">
						<summary>A string of the element to create (eg: &amp;quot;div&amp;quot;, &amp;quot;a&amp;quot;, &amp;quot;p&amp;quot;, &amp;quot;li&amp;quot;, &amp;quot;script&amp;quot;, &amp;quot;br&amp;quot;),
	or an existing DOM node to process.</summary>
					</parameter>
					<parameter name="attrs" type="Object" usage="required">
						<summary>An object-hash of attributes to set on the newly created node.
	Can be null, if you don't want to set any attributes/styles.
	See: &lt;code&gt;dojo.attr&lt;/code&gt; for a description of available attributes.</summary>
					</parameter>
					<parameter name="refNode" type="String|DomNode" usage="optional">
						<summary>Optional reference node. Used by &lt;code&gt;dojo.place&lt;/code&gt; to place the newly created
	node somewhere in the dom relative to refNode. Can be a DomNode reference
	or String ID of a node.</summary>
					</parameter>
					<parameter name="pos" type="String" usage="optional">
						<summary>Optional positional reference. Defaults to &amp;quot;last&amp;quot; by way of &lt;code&gt;dojo.place&lt;/code&gt;,
	though can be set to &amp;quot;first&amp;quot;,&amp;quot;after&amp;quot;,&amp;quot;before&amp;quot;,&amp;quot;last&amp;quot;, &amp;quot;replace&amp;quot; or &amp;quot;only&amp;quot;
	to further control the placement of the new node relative to the refNode.
	'refNode' is required if a 'pos' is specified.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="DomNode"/>
				</return-types>
			</method>
			<method name="empty" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>safely removes all children of the node.</summary>
				<examples>
					<example>Destroy node's children byId:
		dojo.empty("someId");</example>
					<example>Destroy all nodes' children in a list by reference:
		dojo.query(".someNode").forEach(dojo.empty);</example>
				</examples>
				<parameters>
					<parameter name="node" type="DOMNode|String" usage="required">
						<summary>a reference to a DOM node or an id.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_toDom" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>converts HTML string into DOM nodes.</summary>
				<examples>
					<example>Create a table row:
		var tr = dojo._toDom("&lt;tr&gt;&lt;td&gt;First!&lt;/td&gt;&lt;/tr&gt;");</example>
				</examples>
				<return-description>DocumentFragment</return-description>
				<parameters>
					<parameter name="frag" type="String" usage="required">
						<summary>the HTML fragment</summary>
					</parameter>
					<parameter name="doc" type="DocumentNode" usage="optional">
						<summary>optional document to use when creating DOM nodes, defaults to
	dojo.doc if not specified.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="DOMNode"/>
				</return-types>
			</method>
			<method name="hasClass" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
					<resource>dojox/html/ellipsis.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
					<provide>dojox.html.ellipsis</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>Returns whether or not the specified classes are a portion of the
	class list currently applied to the node.</summary>
				<examples>
					<example>Do something if a node with id="someNode" has class="aSillyClassName" present
		if(dojo.hasClass("someNode","aSillyClassName")){ ... }</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>String ID or DomNode reference to check the class for.</summary>
					</parameter>
					<parameter name="classStr" type="String" usage="required">
						<summary>A string class name to look for.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="addClass" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>Adds the specified classes to the end of the class list on the
	passed node. Will not re-apply duplicate classes.</summary>
				<examples>
					<example>Add a class to some node:
		dojo.addClass("someNode", "anewClass");</example>
					<example>Add two classes at once:
		dojo.addClass("someNode", "firstClass secondClass");</example>
					<example>Add two classes at once (using array):
		dojo.addClass("someNode", ["firstClass", "secondClass"]);</example>
					<example>Available in `dojo.NodeList` for multiple additions
		dojo.query("ul &gt; li").addClass("firstLevel");</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>String ID or DomNode reference to add a class string too</summary>
					</parameter>
					<parameter name="classStr" type="String|Array" usage="required">
						<summary>A String class name to add, or several space-separated class names,
	or an array of class names.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="removeClass" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
					<resource>dojox/mobile/scrollable.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
					<provide>dojox.mobile.scrollable</provide>
				</provides>
				<summary>Removes the specified classes from node. No &lt;code&gt;dojo.hasClass&lt;/code&gt;
	check is required.</summary>
				<examples>
					<example>Remove a class from some node:
		dojo.removeClass("someNode", "firstClass");</example>
					<example>Remove two classes from some node:
		dojo.removeClass("someNode", "firstClass secondClass");</example>
					<example>Remove two classes from some node (using array):
		dojo.removeClass("someNode", ["firstClass", "secondClass"]);</example>
					<example>Remove all classes from some node:
		dojo.removeClass("someNode");</example>
					<example>Available in `dojo.NodeList()` for multiple removal
		dojo.query(".foo").removeClass("foo");</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>String ID or DomNode reference to remove the class from.</summary>
					</parameter>
					<parameter name="classStr" type="String|Array" usage="optional">
						<summary>An optional String class name to remove, or several space-separated
	class names, or an array of class names. If omitted, all class names
	will be deleted.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="replaceClass" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Replaces one or more classes on a node if not present.
	Operates more quickly than calling dojo.removeClass and dojo.addClass</summary>
				<examples>
					<example>	dojo.replaceClass("someNode", "add1 add2", "remove1 remove2");</example>
					<example>Replace all classes with addMe
		dojo.replaceClass("someNode", "addMe");</example>
					<example>Available in `dojo.NodeList()` for multiple toggles
		dojo.query(".findMe").replaceClass("addMe", "removeMe");</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required">
						<summary>String ID or DomNode reference to remove the class from.</summary>
					</parameter>
					<parameter name="addClassStr" type="String|Array" usage="required">
						<summary>A String class name to add, or several space-separated class names,
	or an array of class names.</summary>
					</parameter>
					<parameter name="removeClassStr" type="String|Array" usage="optional">
						<summary>A String class name to remove, or several space-separated class names,
	or an array of class names.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="toggleClass" scope="normal">
				<resources>
					<resource>dojo/_base/html.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.html</provide>
				</provides>
				<summary>Adds a class to node if not present, or removes if present.
	Pass a boolean condition if you want to explicitly add or remove.</summary>
				<examples>
					<example>	dojo.toggleClass("someNode", "hovered");</example>
					<example>Forcefully add a class
		dojo.toggleClass("someNode", "hovered", true);</example>
					<example>Available in `dojo.NodeList()` for multiple toggles
		dojo.query(".toggleMe").toggleClass("toggleMe");</example>
				</examples>
				<parameters>
					<parameter name="node" type="DomNode|String" usage="required"/>
					<parameter name="classStr" type="String|Array" usage="required"/>
					<parameter name="condition" type="Boolean" usage="optional">
						<summary>If passed, true means to add the class, false means to remove.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="fromJson" scope="normal">
				<resources>
					<resource>dojo/_base/json.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.json</provide>
				</provides>
				<summary>Parses a [JSON](http://json.org) string to return a JavaScript object.</summary>
				<description>Throws for invalid JSON strings, but it does not use a strict JSON parser. It
	delegates to eval().  The content passed to this method must therefore come
	from a trusted source.</description>
				<parameters>
					<parameter name="json" type="String" usage="required">
						<summary>a string literal of a JSON item, for instance:
	&lt;code&gt;'{ &amp;quot;foo&amp;quot;: [ &amp;quot;bar&amp;quot;, 1, { &amp;quot;baz&amp;quot;: &amp;quot;thud&amp;quot; } ] }'&lt;/code&gt;</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="_escapeString" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/json.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.json</provide>
				</provides>
				<summary>Adds escape sequences for non-visual characters, double quote and
	backslash and surrounds with double quotes to form a valid string
	literal.</summary>
				<parameters>
					<parameter name="str" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="toJson" scope="normal">
				<resources>
					<resource>dojo/_base/json.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.json</provide>
				</provides>
				<summary>Returns a [JSON](http://json.org) serialization of an object.</summary>
				<description>Returns a [JSON](http://json.org) serialization of an object.
	Note that this doesn't check for infinite recursion, so don't do that!</description>
				<examples>
					<example>simple serialization of a trivial object
		var jsonStr = dojo.toJson({ howdy: "stranger!", isStrange: true });
		doh.is('{"howdy":"stranger!","isStrange":true}', jsonStr);</example>
					<example>a custom serializer for an objects of a particular class:
		dojo.declare("Furby", null, {
			furbies: "are strange",
			furbyCount: 10,
			__json__: function(){
			},
		});</example>
				</examples>
				<parameters>
					<parameter name="it" type="Object" usage="required">
						<summary>an object to be serialized. Objects may define their own
	serialization via a special &amp;quot;__json__&amp;quot; or &amp;quot;json&amp;quot; function
	property. If a specialized serializer has been defined, it will
	be used as a fallback.</summary>
					</parameter>
					<parameter name="prettyPrint" type="Boolean" usage="optional">
						<summary>if true, we indent objects and arrays to make the output prettier.
	The variable &lt;code&gt;dojo.toJsonIndentStr&lt;/code&gt; is used as the indent string --
	to use something other than the default (tab), change that variable
	before calling dojo.toJson().</summary>
					</parameter>
					<parameter name="_indentStr" type="String" usage="optional">
						<summary>private variable for recursive calls when pretty printing, do not use.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="null"/>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="isString" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Return true if it is a String</summary>
				<parameters>
					<parameter name="it" type="anything" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="isArray" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Return true if it is an Array.
	Does not work on Arrays created in other windows.</summary>
				<parameters>
					<parameter name="it" type="anything" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="isFunction" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
					<resource>dojox/lang/oo/aop.js</resource>
					<resource>dojox/lang/oo/general.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
					<provide>dojox.lang.oo.aop</provide>
					<provide>dojox.lang.oo.general</provide>
				</provides>
				<summary>Return true if it is a Function</summary>
				<parameters>
					<parameter name="it" type="anything" usage="required"/>
				</parameters>
			</method>
			<method name="isObject" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Returns true if it is a JavaScript object (or an Array, a Function
	or null)</summary>
				<parameters>
					<parameter name="it" type="anything" usage="required"/>
				</parameters>
			</method>
			<method name="isArrayLike" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>similar to dojo.isArray() but more permissive</summary>
				<description>Doesn't strongly test for "arrayness".  Instead, settles for "isn't
	a string or number and has a length property". Arguments objects
	and DOM collections will return true when passed to
	dojo.isArrayLike(), but will return false when passed to
	dojo.isArray().</description>
				<return-description>If it walks like a duck and quacks like a duck, return `true`</return-description>
				<parameters>
					<parameter name="it" type="anything" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="isAlien" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Returns true if it is a built-in function or some other kind of
	oddball that *should* report as a function but doesn't</summary>
				<parameters>
					<parameter name="it" type="anything" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="extend" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Adds all properties and methods of props to constructor's
	prototype, making them available to all instances created with
	constructor.</summary>
				<parameters>
					<parameter name="constructor" type="Object" usage="required"/>
					<parameter name="props" type="Object" usage="one-or-more"/>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="_hitchArgs" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<parameters>
					<parameter name="scope" type="" usage="required"/>
					<parameter name="method" type="," usage="one-or-more"/>
				</parameters>
				<return-types>
					<return-type type="mixed"/>
				</return-types>
			</method>
			<method name="hitch" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Returns a function that will only ever execute in the a given scope.
	This allows for easy use of object member functions
	in callbacks and other places in which the &amp;quot;this&amp;quot; keyword may
	otherwise not reference the expected scope.
	Any number of default positional arguments may be passed as parameters
	beyond &amp;quot;method&amp;quot;.
	Each of these values will be used to &amp;quot;placehold&amp;quot; (similar to curry)
	for the hitched function.</summary>
				<examples>
					<example>	dojo.hitch(foo, "bar")();
	runs foo.bar() in the scope of foo</example>
					<example>	dojo.hitch(foo, myFunction);
	returns a function that runs myFunction in the scope of foo</example>
					<example>Expansion on the default positional arguments passed along from
	hitch. Passed args are mixed first, additional args after.
		var foo = { bar: function(a, b, c){ console.log(a, b, c); } };
		var fn = dojo.hitch(foo, "bar", 1, 2);
		fn(3); // logs "1, 2, 3"</example>
					<example>	var foo = { bar: 2 };
		dojo.hitch(foo, function(){ this.bar = 10; })();
	execute an anonymous function in scope of foo</example>
				</examples>
				<parameters>
					<parameter name="scope" type="Object" usage="required">
						<summary>The scope to use when method executes. If method is a string,
	scope is also the object containing method.</summary>
					</parameter>
					<parameter name="method" type="Function|String" usage="required">
						<summary>A function to be hitched to scope, or the name of the method in
	scope to be hitched.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Function"/>
				</return-types>
			</method>
			<method name="delegate" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
					<resource>dojox/date/relative.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
					<provide>dojox.date.relative</provide>
				</provides>
				<summary>Returns a new object which &amp;quot;looks&amp;quot; to obj for properties which it
	does not have a value for. Optionally takes a bag of properties to
	seed the returned object with initially.</summary>
				<description>This is a small implementaton of the Boodman/Crockford delegation
	pattern in JavaScript. An intermediate object constructor mediates
	the prototype chain for the returned object, using it to delegate
	down to obj for property lookup when object-local lookup fails.
	This can be thought of similarly to ES4's "wrap", save that it does
	not act on types but rather on pure objects.</description>
				<examples>
					<example>	var foo = { bar: "baz" };
		var thinger = dojo.delegate(foo, { thud: "xyzzy"});
		thinger.bar == "baz"; // delegated to foo
		foo.thud == undefined; // by definition
		thinger.thud == "xyzzy"; // mixed in from props
		foo.bar = "thonk";
		thinger.bar == "thonk"; // still delegated to foo's bar</example>
				</examples>
				<return-description>an Object of anonymous type</return-description>
				<parameters>
					<parameter name="obj" type="The" usage="required">
						<summary>object to delegate to for properties not found directly on the
	return object or in props.</summary>
					</parameter>
					<parameter name="props" type="an" usage="required">
						<summary>object containing properties to assign to the returned object</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_toArray" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Converts an array-like object (i.e. arguments, DOMCollection) to an
	array. Returns a new Array with the elements of obj.</summary>
				<parameters>
					<parameter name="obj" type="Object" usage="required">
						<summary>the object to &amp;quot;arrayify&amp;quot;. We expect the object to have, at a
	minimum, a length property which corresponds to integer-indexed
	properties.</summary>
					</parameter>
					<parameter name="offset" type="Number" usage="optional">
						<summary>the location in obj to start iterating from. Defaults to 0.
	Optional.</summary>
					</parameter>
					<parameter name="startWith" type="Array" usage="optional">
						<summary>An array to pack with the properties of obj. If provided,
	properties in obj are appended at the end of startWith and
	startWith is the returned array.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="partial" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>similar to hitch() except that the scope object is left to be
	whatever the execution context eventually becomes.</summary>
				<description>Calling dojo.partial is the functional equivalent of calling:
		dojo.hitch(null, funcName, ...);</description>
				<parameters>
					<parameter name="method" type="Function|String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Function"/>
				</return-types>
			</method>
			<method name="clone" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Clones objects (including DOM nodes) and all children.
	Warning: do not clone cyclic structures.</summary>
				<parameters>
					<parameter name="o" type="anything" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="anything"/>
					<return-type type="Node"/>
					<return-type type="Date"/>
					<return-type type="RegExp"/>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="trim" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Trims whitespace from both sides of the string</summary>
				<description>This version of trim() was selected for inclusion into the base due
	to its compact size and relatively good performance
	(see [Steven Levithan's blog](http://blog.stevenlevithan.com/archives/faster-trim-javascript)
	Uses String.prototype.trim instead, if available.
	The fastest but longest version of this function is located at
	dojo.string.trim()</description>
				<return-description>String
	Returns the trimmed string</return-description>
				<parameters>
					<parameter name="str" type="String" usage="required">
						<summary>String to be trimmed</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="replace" scope="normal">
				<resources>
					<resource>dojo/_base/lang.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.lang</provide>
				</provides>
				<summary>Performs parameterized substitutions on a string. Throws an
	exception if any parameter is unmatched.</summary>
				<examples>
					<example>	// uses a dictionary for substitutions:
		dojo.replace("Hello, {name.first} {name.last} AKA {nick}!",
		  {
		    nick: "Bob",
		    name: {
		      first:  "Robert",
		      middle: "X",
		      last:   "Cringely"
		    }
		  });
		// returns: Hello, Robert Cringely AKA Bob!</example>
					<example>	// uses an array for substitutions:
		dojo.replace("Hello, {0} {2}!",
		  ["Robert", "X", "Cringely"]);
		// returns: Hello, Robert Cringely!</example>
					<example>	// uses a function for substitutions:
		function sum(a){
		  var t = 0;
		  dojo.forEach(a, function(x){ t += x; });
		  return t;
		}
		dojo.replace(
		  "{count} payments averaging {avg} USD per payment.",
		  dojo.hitch(
		    { payments: [11, 16, 12] },
		    function(_, key){
		      switch(key){
		        case "count": return this.payments.length;
		        case "min":   return Math.min.apply(Math, this.payments);
		        case "max":   return Math.max.apply(Math, this.payments);
		        case "sum":   return sum(this.payments);
		        case "avg":   return sum(this.payments) / this.payments.length;
		      }
		    }
		  )
		);
		// prints: 3 payments averaging 13 USD per payment.</example>
					<example>	// uses an alternative PHP-like pattern for substitutions:
		dojo.replace("Hello, ${0} ${2}!",
		  ["Robert", "X", "Cringely"], /\$\{([^\}]+)\}/g);
		// returns: Hello, Robert Cringely!</example>
				</examples>
				<return-description>String
	Returns the substituted string.</return-description>
				<parameters>
					<parameter name="tmpl" type="String" usage="required">
						<summary>String to be used as a template.</summary>
					</parameter>
					<parameter name="map" type="Object|Function" usage="required">
						<summary>If an object, it is used as a dictionary to look up substitutions.
	If a function, it is called for every substitution with following
	parameters: a whole match, a name, an offset, and the whole template
	string (see https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/String/replace
	for more details).</summary>
					</parameter>
					<parameter name="pattern" type="RegEx" usage="optional">
						<summary>Optional regular expression objects that overrides the default pattern.
	Must be global and match one item. The default is: /\{([^\}]+)\}/g,
	which matches patterns like that: &amp;quot;{xxx}&amp;quot;, where &amp;quot;xxx&amp;quot; is any sequence
	of characters, which doesn't include &amp;quot;}&amp;quot;.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="setContext" scope="normal">
				<resources>
					<resource>dojo/_base/window.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.window</provide>
				</provides>
				<summary>changes the behavior of many core Dojo functions that deal with
	namespace and DOM lookup, changing them to work in a new global
	context (e.g., an iframe). The varibles dojo.global and dojo.doc
	are modified as a result of calling this function and the result of
	&lt;code&gt;dojo.body()&lt;/code&gt; likewise differs.</summary>
				<parameters>
					<parameter name="globalObject" type="Object" usage="required"/>
					<parameter name="globalDocument" type="DocumentElement" usage="required"/>
				</parameters>
			</method>
			<method name="withGlobal" scope="normal">
				<resources>
					<resource>dojo/_base/window.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.window</provide>
				</provides>
				<summary>Invoke callback with globalObject as dojo.global and
	globalObject.document as dojo.doc.</summary>
				<description>Invoke callback with globalObject as dojo.global and
	globalObject.document as dojo.doc. If provided, globalObject
	will be executed in the context of object thisObject
	When callback() returns or throws an error, the dojo.global
	and dojo.doc will be restored to its previous state.</description>
				<parameters>
					<parameter name="globalObject" type="Object" usage="required"/>
					<parameter name="callback" type="Function" usage="required"/>
					<parameter name="thisObject" type="Object" usage="optional"/>
					<parameter name="cbArguments" type="Array" usage="optional"/>
				</parameters>
			</method>
			<method name="withDoc" scope="normal">
				<resources>
					<resource>dojo/_base/window.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.window</provide>
				</provides>
				<summary>Invoke callback with documentObject as dojo.doc.</summary>
				<description>Invoke callback with documentObject as dojo.doc. If provided,
	callback will be executed in the context of object thisObject
	When callback() returns or throws an error, the dojo.doc will
	be restored to its previous state.</description>
				<parameters>
					<parameter name="documentObject" type="DocumentElement" usage="required"/>
					<parameter name="callback" type="Function" usage="required"/>
					<parameter name="thisObject" type="Object" usage="optional"/>
					<parameter name="cbArguments" type="Array" usage="optional"/>
				</parameters>
			</method>
			<method name="fieldToObject" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Serialize a form field to a JavaScript object.</summary>
				<description>Returns the value encoded in a form field as
	as a string or an array of strings. Disabled form elements
	and unchecked radio and checkboxes are skipped.	Multi-select
	elements are returned as an array of string values.</description>
				<parameters>
					<parameter name="inputNode" type="DOMNode||String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="formToObject" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Serialize a form node to a JavaScript object.</summary>
				<description>Returns the values encoded in an HTML form as
	string properties in an object which it then returns. Disabled form
	elements, buttons, and other non-value form elements are skipped.
	Multi-select elements are returned as an array of string values.</description>
				<examples>
					<example>This form:
		&lt;form id="test_form"&gt;
			&lt;input type="text" name="blah" value="blah"&gt;
			&lt;input type="text" name="no_value" value="blah" disabled&gt;
			&lt;input type="button" name="no_value2" value="blah"&gt;
			&lt;select type="select" multiple name="multi" size="5"&gt;
				&lt;option value="blah"&gt;blah&lt;/option&gt;
				&lt;option value="thud" selected&gt;thud&lt;/option&gt;
				&lt;option value="thonk" selected&gt;thonk&lt;/option&gt;
			&lt;/select&gt;
		&lt;/form&gt;
	yields this object structure as the result of a call to
	formToObject():
		{
			blah: "blah",
			multi: [
				"thud",
				"thonk"
			]
		};</example>
				</examples>
				<parameters>
					<parameter name="formNode" type="DOMNode||String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="objectToQuery" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>takes a name/value mapping object and returns a string representing
	a URL-encoded version of that object.</summary>
				<examples>
					<example>this object:
		{
			blah: "blah",
			multi: [
				"thud",
				"thonk"
			]
		};
	yields the following query string:
		"blah=blah&amp;multi=thud&amp;multi=thonk"</example>
				</examples>
				<parameters>
					<parameter name="map" type="Object" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="formToQuery" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Returns a URL-encoded string representing the form passed as either a
	node or string ID identifying the form to serialize</summary>
				<parameters>
					<parameter name="formNode" type="DOMNode||String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="formToJson" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Create a serialized JSON string from a form node or string
	ID identifying the form to serialize</summary>
				<parameters>
					<parameter name="formNode" type="DOMNode||String" usage="required"/>
					<parameter name="prettyPrint" type="Boolean" usage="optional"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="queryToObject" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Create an object representing a de-serialized query section of a
	URL. Query keys with multiple values are returned in an array.</summary>
				<examples>
					<example>This string:
			"foo=bar&amp;foo=baz&amp;thinger=%20spaces%20=blah&amp;zonk=blarg&amp;"
	results in this object structure:
			{
				foo: [ "bar", "baz" ],
				thinger: " spaces =blah",
				zonk: "blarg"
			}
	Note that spaces and other urlencoded entities are correctly
	handled.</example>
				</examples>
				<parameters>
					<parameter name="str" type="String" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="Object"/>
				</return-types>
			</method>
			<method name="_ioSetArgs" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>sets up the Deferred and ioArgs property on the Deferred so it
	can be used in an io call.</summary>
				<parameters>
					<parameter name="args" type="dojo.__IoArgs" usage="required">
						<summary>The args object passed into the public io call. Recognized properties on
	the args object are:</summary>
					</parameter>
					<parameter name="canceller" type="Function" usage="required">
						<summary>The canceller function used for the Deferred object. The function
	will receive one argument, the Deferred object that is related to the
	canceller.</summary>
					</parameter>
					<parameter name="okHandler" type="Function" usage="required">
						<summary>The first OK callback to be registered with Deferred. It has the opportunity
	to transform the OK response. It will receive one argument -- the Deferred
	object returned from this function.</summary>
					</parameter>
					<parameter name="errHandler" type="Function" usage="required">
						<summary>The first error callback to be registered with Deferred. It has the opportunity
	to do cleanup on an error. It will receive two arguments: error (the
	Error object) and dfd, the Deferred object returned from this function.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_ioCancelAll" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Cancels all pending IO requests, regardless of IO type
	(xhr, script, iframe).</summary>
			</method>
			<method name="_ioNotifyStart" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>If dojo.publish is available, publish topics
	about the start of a request queue and/or the
	the beginning of request.</summary>
				<description>Used by IO transports. An IO transport should
	call this method before making the network connection.</description>
				<parameters>
					<parameter name="dfd" type="Deferred" usage="required"/>
				</parameters>
			</method>
			<method name="_ioWatch" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Watches the io request represented by dfd to see if it completes.</summary>
				<parameters>
					<parameter name="dfd" type="Deferred" usage="required">
						<summary>The Deferred object to watch.</summary>
					</parameter>
					<parameter name="validCheck" type="Function" usage="required">
						<summary>Function used to check if the IO request is still valid. Gets the dfd
	object as its only argument.</summary>
					</parameter>
					<parameter name="ioCheck" type="Function" usage="required">
						<summary>Function used to check if basic IO call worked. Gets the dfd
	object as its only argument.</summary>
					</parameter>
					<parameter name="resHandle" type="Function" usage="required">
						<summary>Function used to process response. Gets the dfd
	object as its only argument.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_ioAddQueryToUrl" scope="normal" private="true">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Adds query params discovered by the io deferred construction to the URL.
	Only use this for operations which are fundamentally GET-type operations.</summary>
				<parameters>
					<parameter name="ioArgs" type="dojo.__IoCallbackArgs" usage="required"/>
				</parameters>
			</method>
			<method name="xhr" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
					<resource>dojox/data/PersevereStore.js</resource>
					<resource>dojox/rpc/Client.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
					<provide>dojox.data.PersevereStore</provide>
					<provide>dojox.rpc.Client</provide>
				</provides>
				<summary>Sends an HTTP request with the given method.</summary>
				<description>Sends an HTTP request with the given method.
	See also dojo.xhrGet(), xhrPost(), xhrPut() and dojo.xhrDelete() for shortcuts
	for those HTTP methods. There are also methods for "raw" PUT and POST methods
	via dojo.rawXhrPut() and dojo.rawXhrPost() respectively.</description>
				<parameters>
					<parameter name="method" type="String" usage="required">
						<summary>HTTP method to be used, such as GET, POST, PUT, DELETE.  Should be uppercase.</summary>
					</parameter>
					<parameter name="args" type="dojo.__XhrArgs" usage="required"/>
					<parameter name="hasBody" type="Boolean" usage="optional">
						<summary>If the request has an HTTP body, then pass true for hasBody.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="xhrGet" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Sends an HTTP GET request to the server.</summary>
				<parameters>
					<parameter name="args" type="dojo.__XhrArgs" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="rawXhrPost" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
			</method>
			<method name="xhrPost" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Sends an HTTP POST request to the server. In addtion to the properties
	listed for the dojo.__XhrArgs type, the following property is allowed:
	postData:
	String. Send raw data in the body of the POST request.</summary>
				<parameters>
					<parameter name="args" type="dojo.__XhrArgs" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="rawXhrPut" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
			</method>
			<method name="xhrPut" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Sends an HTTP PUT request to the server. In addtion to the properties
	listed for the dojo.__XhrArgs type, the following property is allowed:
	putData:
	String. Send raw data in the body of the PUT request.</summary>
				<parameters>
					<parameter name="args" type="dojo.__XhrArgs" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="xhrDelete" scope="normal">
				<resources>
					<resource>dojo/_base/xhr.js</resource>
				</resources>
				<provides>
					<provide>dojo._base.xhr</provide>
				</provides>
				<summary>Sends an HTTP DELETE request to the server.</summary>
				<parameters>
					<parameter name="args" type="dojo.__XhrArgs" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="deprecated" scope="normal">
				<resources>
					<resource>dojo/_firebug/firebug.js</resource>
				</resources>
				<provides>
					<provide>dojo._firebug.firebug</provide>
				</provides>
				<summary>Log a debug message to indicate that a behavior has been
	deprecated.</summary>
				<parameters>
					<parameter name="behaviour" type="String" usage="required"/>
					<parameter name="extra" type="String" usage="optional">
						<summary>Text to append to the message.</summary>
					</parameter>
					<parameter name="removal" type="String" usage="optional">
						<summary>Text to indicate when in the future the behavior will be removed.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="experimental" scope="normal">
				<resources>
					<resource>dojo/_firebug/firebug.js</resource>
				</resources>
				<provides>
					<provide>dojo._firebug.firebug</provide>
				</provides>
				<summary>Marks code as experimental.</summary>
				<description>This can be used to mark a function, file, or module as
	experimental.  Experimental code is not ready to be used, and the
	APIs are subject to change without notice.  Experimental code may be
	completed deleted without going through the normal deprecation
	process.</description>
				<examples>
					<example>	dojo.experimental("dojo.data.Result");</example>
					<example>	dojo.experimental("dojo.weather.toKelvin()", "PENDING approval from NOAA");</example>
				</examples>
				<parameters>
					<parameter name="moduleName" type="String" usage="required">
						<summary>The name of a module, or the name of a module file or a specific
	function</summary>
					</parameter>
					<parameter name="extra" type="String" usage="optional">
						<summary>some additional message for the user</summary>
					</parameter>
				</parameters>
			</method>
			<method name="__backArgs" scope="normal" private="true">
				<resources>
					<resource>dojo/back.js</resource>
				</resources>
				<provides>
					<provide>dojo.back</provide>
				</provides>
				<parameters>
					<parameter name="kwArgs" type="" usage="required"/>
				</parameters>
			</method>
			<method name="hash" scope="normal">
				<resources>
					<resource>dojo/hash.js</resource>
				</resources>
				<provides>
					<provide>dojo.hash</provide>
				</provides>
				<summary>Gets or sets the hash string.</summary>
				<description>Handles getting and setting of location.hash.
	- If no arguments are passed, acts as a getter.
	- If a string is passed, acts as a setter.</description>
				<return-description>when used as a getter, returns the current hash string.
	when used as a setter, returns the new hash string.</return-description>
				<parameters>
					<parameter name="hash" type="String" usage="optional">
						<summary>the hash is set - #string.</summary>
					</parameter>
					<parameter name="replace" type="Boolean" usage="optional">
						<summary>If true, updates the hash value in the current history
	state instead of creating a new history state.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
		</methods>
	</object>
	<object location="dijit._MenuBarItemMixin" type="Function" classlike="true">
		<resources>
			<resource>dijit/MenuBarItem.js</resource>
		</resources>
		<provides>
			<provide>dijit.MenuBarItem</provide>
		</provides>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/MenuBarItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBarItem</provide>
				</provides>
			</property>
			<property name="attributeMap" scope="prototype" type="Object">
				<resources>
					<resource>dijit/MenuBarItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuBarItem</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
		</methods>
	</object>
	<object location="dijit.MenuBarItem" type="Function" classlike="true" superclass="dijit.MenuItem">
		<resources>
			<resource>dijit/MenuBarItem.js</resource>
		</resources>
		<provides>
			<provide>dijit.MenuBarItem</provide>
		</provides>
		<summary>Item in a MenuBar that's clickable, and doesn't spawn a submenu when pressed (or hovered)</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._MenuBarItemMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit.MenuItem"/>
			<mixin scope="instance" location="dijit._MenuBarItemMixin"/>
		</mixins>
		<methods>
			<method constructor="constructor"/>
		</methods>
	</object>
	<object location="dijit.MenuItem" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/MenuItem.js</resource>
		</resources>
		<provides>
			<provide>dijit.MenuItem</provide>
		</provides>
		<summary>A line item in a Menu Widget</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._Contained.prototype"/>
			<mixin scope="prototype" location="dijit._CssStateMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._Contained"/>
			<mixin scope="instance" location="dijit._CssStateMixin"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
			</property>
			<property name="attributeMap" scope="prototype" type="Object">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
			</property>
			<property name="label" scope="prototype" type="String">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Menu text</summary>
			</property>
			<property name="iconClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Class to apply to DOMNode to make it display an icon.</summary>
			</property>
			<property name="accelKey" scope="prototype" type="String">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Text for the accelerator (shortcut) key combination.
	Note that although Menu can display accelerator keys there
	is no infrastructure to actually catch and execute these
	accelerators.</summary>
			</property>
			<property name="disabled" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>If true, the menu item is disabled.
	If false, the menu item is enabled.</summary>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_fillContent" scope="prototype" private="true">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<parameters>
					<parameter name="source" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
			</method>
			<method name="_onHover" scope="prototype">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Handler when mouse is moved onto menu item</summary>
			</method>
			<method name="_onUnhover" scope="prototype">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Handler when mouse is moved off of menu item,
	possibly to a child menu, or maybe to a sibling
	menuitem or somewhere else entirely.</summary>
			</method>
			<method name="_onClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Internal handler for click events on MenuItem.</summary>
				<parameters>
					<parameter name="evt" type="" usage="required"/>
				</parameters>
			</method>
			<method name="onClick" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>User defined function to handle clicks</summary>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="focus" scope="prototype">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Focus on this MenuItem</summary>
			</method>
			<method name="_onFocus" scope="prototype">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>This is called by the focus manager when focus
	goes to this MenuItem or a child menu.</summary>
			</method>
			<method name="_setSelected" scope="prototype" private="true">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Indicate that this node is the currently selected one</summary>
				<parameters>
					<parameter name="selected" type="" usage="required"/>
				</parameters>
			</method>
			<method name="setLabel" scope="prototype">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Deprecated.   Use set('label', ...) instead.</summary>
				<parameters>
					<parameter name="content" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="setDisabled" scope="prototype">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Deprecated.   Use set('disabled', bool) instead.</summary>
				<parameters>
					<parameter name="disabled" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_setDisabledAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Hook for attr('disabled', ...) to work.
	Enable or disable this menu item.</summary>
				<parameters>
					<parameter name="value" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_setAccelKeyAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
				<summary>Hook for attr('accelKey', ...) to work.
	Set accelKey on this menu item.</summary>
				<parameters>
					<parameter name="value" type="String" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.MenuItem.accelKeyNode.style" type="">
		<properties>
			<property name="display" scope="prototype" type="">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.MenuItem.accelKeyNode" type="">
		<properties>
			<property name="innerHTML" scope="prototype" type="">
				<resources>
					<resource>dijit/MenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuItem</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.MenuSeparator" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/MenuSeparator.js</resource>
		</resources>
		<provides>
			<provide>dijit.MenuSeparator</provide>
		</provides>
		<summary>A line between two menu items</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._Contained.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._Contained"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/MenuSeparator.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuSeparator</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/MenuSeparator.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuSeparator</provide>
				</provides>
			</method>
			<method name="isFocusable" scope="prototype">
				<resources>
					<resource>dijit/MenuSeparator.js</resource>
				</resources>
				<provides>
					<provide>dijit.MenuSeparator</provide>
				</provides>
				<summary>Override to always return false</summary>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
		</methods>
	</object>
	<object location="dijit.PopupMenuBarItem" type="Function" classlike="true" superclass="dijit.PopupMenuItem">
		<resources>
			<resource>dijit/PopupMenuBarItem.js</resource>
		</resources>
		<provides>
			<provide>dijit.PopupMenuBarItem</provide>
		</provides>
		<summary>Item in a MenuBar like &amp;quot;File&amp;quot; or &amp;quot;Edit&amp;quot;, that spawns a submenu when pressed (or hovered)</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._MenuBarItemMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit.PopupMenuItem"/>
			<mixin scope="instance" location="dijit._MenuBarItemMixin"/>
		</mixins>
		<methods>
			<method constructor="constructor"/>
		</methods>
	</object>
	<object location="dijit.PopupMenuItem" type="Function" classlike="true" superclass="dijit.MenuItem">
		<resources>
			<resource>dijit/PopupMenuItem.js</resource>
		</resources>
		<provides>
			<provide>dijit.PopupMenuItem</provide>
		</provides>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit.MenuItem"/>
		</mixins>
		<properties>
			<property name="dropDownContainer" scope="prototype" type="">
				<resources>
					<resource>dijit/PopupMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.PopupMenuItem</provide>
				</provides>
			</property>
			<property name="popup" scope="prototype" type="Object">
				<resources>
					<resource>dijit/PopupMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.PopupMenuItem</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_fillContent" scope="prototype">
				<resources>
					<resource>dijit/PopupMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.PopupMenuItem</provide>
				</provides>
				<summary>When Menu is declared in markup, this code gets the menu label and
	the popup widget from the srcNodeRef.</summary>
				<description>srcNodeRefinnerHTML contains both the menu item text and a popup widget
	The first part holds the menu item text and the second part is the popup</description>
				<examples>
					<example>	&lt;div dojoType="dijit.PopupMenuItem"&gt;
			&lt;span&gt;pick me&lt;/span&gt;
			&lt;popup&gt; ... &lt;/popup&gt;
		&lt;/div&gt;</example>
				</examples>
			</method>
			<method name="startup" scope="prototype">
				<resources>
					<resource>dijit/PopupMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.PopupMenuItem</provide>
				</provides>
			</method>
			<method name="destroyDescendants" scope="prototype">
				<resources>
					<resource>dijit/PopupMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.PopupMenuItem</provide>
				</provides>
			</method>
		</methods>
	</object>
	<object location="dijit.PopupMenuItem.popup.domNode.style" type="">
		<properties>
			<property name="display" scope="prototype" type="String">
				<resources>
					<resource>dijit/PopupMenuItem.js</resource>
				</resources>
				<provides>
					<provide>dijit.PopupMenuItem</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.ProgressBar" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/ProgressBar.js</resource>
		</resources>
		<provides>
			<provide>dijit.ProgressBar</provide>
		</provides>
		<summary>A progress indication widget, showing the amount completed
	(often the percentage completed) of a task.</summary>
		<examples>
			<example>	&lt;div dojoType="ProgressBar"
			 places="0"
			 value="..." maximum="..."&gt;
		&lt;/div&gt;</example>
		</examples>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
		</mixins>
		<properties>
			<property name="progress" scope="prototype" type="String" tags="const">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>(Percentage or Number)
	Number or percentage indicating amount of task completed.
	Deprecated.   Use &amp;quot;value&amp;quot; instead.</summary>
			</property>
			<property name="value" scope="prototype" type="String">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>(Percentage or Number)
	Number or percentage indicating amount of task completed.
	With &amp;quot;%&amp;quot;: percentage value, 0% &amp;lt;= progress &amp;lt;= 100%, or
	without &amp;quot;%&amp;quot;: absolute value, 0 &amp;lt;= progress &amp;lt;= maximum.
	Infinity means that the progress bar is indeterminate.</summary>
			</property>
			<property name="maximum" scope="prototype" type="Float" tags="const">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>Max sample number</summary>
			</property>
			<property name="places" scope="prototype" type="Number" tags="const">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>Number of places to show in values; 0 by default</summary>
			</property>
			<property name="indeterminate" scope="prototype" type="Boolean" tags="const">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>If false: show progress value (number or percentage).
	If true: show that a process is underway but that the amount completed is unknown.
	Deprecated.   Use &amp;quot;value&amp;quot; instead.</summary>
			</property>
			<property name="label" scope="prototype" type="String">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>Label on progress bar.   Defaults to percentage for determinate progress bar and
	blank for indeterminate progress bar.</summary>
			</property>
			<property name="name" scope="prototype" type="String">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>this is the field name (for a form) if set. This needs to be set if you want to use
	this widget in a dijit.form.Form widget (such as dijit.Dialog)</summary>
			</property>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
			</property>
			<property name="_indeterminateHighContrastImagePath" scope="prototype" type="dojo._URL" private="true">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>URL to image to use for indeterminate progress bar when display is in high contrast mode</summary>
			</property>
			<property name="internalProgress" scope="prototype" type="">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
			</property>
			<property name="domNode" scope="prototype" type="">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="postMixInProperties" scope="prototype">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
			</method>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
			</method>
			<method name="update" scope="prototype" private="true">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>Internal method to change attributes of ProgressBar, similar to set(hash).  Users should call
	set(&amp;quot;value&amp;quot;, ...) rather than calling this method directly.</summary>
				<examples>
					<example>	myProgressBar.update({'indeterminate': true});
		myProgressBar.update({'progress': 80});
		myProgressBar.update({'indeterminate': true, label:"Loading ..." })</example>
				</examples>
				<parameters>
					<parameter name="attributes" type="Object" usage="optional">
						<summary>May provide progress and/or maximum properties on this parameter;
	see attribute specs for details.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setValueAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<parameters>
					<parameter name="v" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_setLabelAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<parameters>
					<parameter name="label" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_setIndeterminateAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<parameters>
					<parameter name="indeterminate" type="" usage="required"/>
				</parameters>
			</method>
			<method name="report" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>Generates message to show inside progress bar (normally indicating amount of task completed).
	May be overridden.</summary>
				<parameters>
					<parameter name="percent" type="float" usage="required"/>
				</parameters>
			</method>
			<method name="onChange" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
				<summary>Callback fired when progress updates.</summary>
			</method>
		</methods>
	</object>
	<object location="dijit.ProgressBar.labelNode" type="">
		<properties>
			<property name="innerHTML" scope="prototype" type="Object">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.ProgressBar.internalProgress.style" type="">
		<properties>
			<property name="width" scope="prototype" type="String">
				<resources>
					<resource>dijit/ProgressBar.js</resource>
				</resources>
				<provides>
					<provide>dijit.ProgressBar</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.TitlePane" type="Function" classlike="true" superclass="dijit.layout.ContentPane">
		<resources>
			<resource>dijit/TitlePane.js</resource>
			<resource>dojox/widget/TitleGroup.js</resource>
		</resources>
		<provides>
			<provide>dijit.TitlePane</provide>
			<provide>dojox.widget.TitleGroup</provide>
		</provides>
		<summary>A pane with a title on top, that can be expanded or collapsed.</summary>
		<description>An accessible container with a title Heading, and a content
	section that slides open and closed. TitlePane is an extension to
	`dijit.layout.ContentPane`, providing all the useful content-control aspects from it.</description>
		<examples>
			<example> 	// load a TitlePane from remote file:
		var foo = new dijit.TitlePane({ href: "foobar.html", title:"Title" });
		foo.startup();</example>
			<example>	&lt;!-- markup href example: --&gt;
		&lt;div dojoType="dijit.TitlePane" href="foobar.html" title="Title"&gt;&lt;/div&gt;</example>
			<example>	&lt;!-- markup with inline data --&gt;
	 	&lt;div dojoType="dijit.TitlePane" title="Title"&gt;
			&lt;p&gt;I am content&lt;/p&gt;
		&lt;/div&gt;</example>
		</examples>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._CssStateMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit.layout.ContentPane"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._CssStateMixin"/>
		</mixins>
		<properties>
			<property name="title" scope="prototype" type="String">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Title of the pane</summary>
			</property>
			<property name="open" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Whether pane is opened or closed.</summary>
			</property>
			<property name="toggleable" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Whether pane can be opened or closed by clicking the title bar.</summary>
			</property>
			<property name="tabIndex" scope="prototype" type="String">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Tabindex setting for the title (so users can tab to the title then
	use space/enter to open/close the title pane)</summary>
			</property>
			<property name="duration" scope="normal" type="Integer">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Time in milliseconds to fade in/fade out</summary>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>The root className to be placed on this widget's domNode.</summary>
			</property>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
			<property name="attributeMap" scope="prototype" type="Object">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
			<property name="hideNode" scope="prototype" type="">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
			<property name="wipeNode" scope="prototype" type="">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
			<property name="_wipeIn" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
			<property name="_wipeOut" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
			<property name="titleBarNode" scope="prototype" type="Object">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
			<property name="_titleBarClass" scope="prototype" type="String" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</method>
			<method name="_setOpenAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Hook to make set(&amp;quot;open&amp;quot;, boolean) control the open/closed state of the pane.</summary>
				<parameters>
					<parameter name="open" type="Boolean" usage="required">
						<summary>True if you want to open the pane, false if you want to close it.</summary>
					</parameter>
					<parameter name="animate" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_setToggleableAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Hook to make set(&amp;quot;toggleable&amp;quot;, boolean) work.</summary>
				<parameters>
					<parameter name="canToggle" type="Boolean" usage="required">
						<summary>True to allow user to open/close pane by clicking title bar.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setContentAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Hook to make set(&amp;quot;content&amp;quot;, ...) work.
	Typically called when an href is loaded.  Our job is to make the animation smooth.</summary>
				<parameters>
					<parameter name="content" type="String|DomNode|Nodelist" usage="required"/>
				</parameters>
			</method>
			<method name="toggle" scope="prototype" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Switches between opened and closed state</summary>
			</method>
			<method name="_setCss" scope="prototype" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Set the open/close css state for the TitlePane</summary>
			</method>
			<method name="_onTitleKey" scope="prototype" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Handler for when user hits a key</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onTitleClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Handler when user clicks the title bar</summary>
			</method>
			<method name="setTitle" scope="prototype">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
				<summary>Deprecated.  Use set('title', ...) instead.</summary>
				<parameters>
					<parameter name="title" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="_dxfindParent" scope="normal" private="true">
				<resources>
					<resource>dojox/widget/TitleGroup.js</resource>
				</resources>
				<provides>
					<provide>dojox.widget.TitleGroup</provide>
				</provides>
				<summary>TitlePane's MUST be first-children of a TitleGroup. only used by
	&lt;code&gt;dojox.widget.TitleGroup&lt;/code&gt;. Find a possible parent TitleGroup of a TitlePane</summary>
			</method>
		</methods>
	</object>
	<object location="dijit.TitlePane.hideNode.style" type="">
		<properties>
			<property name="display" scope="prototype" type="String">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.TitlePane.wipeNode.style" type="">
		<properties>
			<property name="display" scope="prototype" type="">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.TitlePane.arrowNodeInner" type="">
		<properties>
			<property name="innerHTML" scope="prototype" type="">
				<resources>
					<resource>dijit/TitlePane.js</resource>
				</resources>
				<provides>
					<provide>dijit.TitlePane</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Toolbar" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Toolbar.js</resource>
		</resources>
		<provides>
			<provide>dijit.Toolbar</provide>
		</provides>
		<summary>A Toolbar widget, used to hold things like &lt;code&gt;dijit.Editor&lt;/code&gt; buttons</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._KeyNavContainer.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._KeyNavContainer"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="String">
				<resources>
					<resource>dijit/Toolbar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Toolbar</provide>
				</provides>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/Toolbar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Toolbar</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/Toolbar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Toolbar</provide>
				</provides>
			</method>
			<method name="startup" scope="prototype">
				<resources>
					<resource>dijit/Toolbar.js</resource>
				</resources>
				<provides>
					<provide>dijit.Toolbar</provide>
				</provides>
			</method>
		</methods>
	</object>
	<object location="dijit.ToolbarSeparator" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/ToolbarSeparator.js</resource>
		</resources>
		<provides>
			<provide>dijit.ToolbarSeparator</provide>
		</provides>
		<summary>A spacer between two &lt;code&gt;dijit.Toolbar&lt;/code&gt; items</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
		</mixins>
		<properties>
			<property name="templateString" scope="prototype" type="String">
				<resources>
					<resource>dijit/ToolbarSeparator.js</resource>
				</resources>
				<provides>
					<provide>dijit.ToolbarSeparator</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/ToolbarSeparator.js</resource>
				</resources>
				<provides>
					<provide>dijit.ToolbarSeparator</provide>
				</provides>
			</method>
			<method name="isFocusable" scope="prototype">
				<resources>
					<resource>dijit/ToolbarSeparator.js</resource>
				</resources>
				<provides>
					<provide>dijit.ToolbarSeparator</provide>
				</provides>
				<summary>This widget isn't focusable, so pass along that fact.</summary>
			</method>
		</methods>
	</object>
	<object location="dijit._MasterTooltip" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Tooltip.js</resource>
		</resources>
		<provides>
			<provide>dijit.Tooltip</provide>
		</provides>
		<summary>Internal widget that holds the actual tooltip markup,
	which occurs once per page.
	Called by Tooltip widgets which are just containers to hold
	the markup</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
		</mixins>
		<properties>
			<property name="duration" scope="normal" type="Integer">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Milliseconds to fade in/fade out</summary>
			</property>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="bgIframe" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="fadeIn" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="fadeOut" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="_onDeck" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="isShowingNow" scope="prototype" type="bool">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="aroundNode" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</method>
			<method name="show" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Display tooltip w/specified contents to right of specified node
	(To left if there's no space on the right, or if rtl == true)</summary>
				<parameters>
					<parameter name="innerHTML" type="String" usage="required"/>
					<parameter name="aroundNode" type="DomNode" usage="required"/>
					<parameter name="position" type="String[]" usage="optional"/>
					<parameter name="rtl" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="orient" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Private function to set CSS for tooltip node based on which position it's in.
	This is called by the dijit popup code.   It will also reduce the tooltip's
	width to whatever width is available</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="aroundCorner" type="String" usage="required"/>
					<parameter name="tooltipCorner" type="String" usage="required"/>
					<parameter name="spaceAvailable" type="Object" usage="required"/>
					<parameter name="aroundNodeCoords" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_onShow" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Called at end of fade-in operation</summary>
			</method>
			<method name="hide" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Hide the tooltip</summary>
				<parameters>
					<parameter name="aroundNode" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onHide" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Called at end of fade-out operation</summary>
			</method>
		</methods>
	</object>
	<object location="dijit._MasterTooltip.domNode" type="">
		<properties>
			<property name="width" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._MasterTooltip.containerNode" type="">
		<properties>
			<property name="innerHTML" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._MasterTooltip.connectorNode.style" type="">
		<properties>
			<property name="top" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="bottom" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._MasterTooltip.domNode.style" type="">
		<properties>
			<property name="width" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="filter" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="cssText" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._MasterTooltip.containerNode.style" type="">
		<properties>
			<property name="overflow" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._MasterTooltip.connectorNode" type="">
		<properties>
			<property name="offsetHeight" scope="prototype" type="">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Tooltip" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Tooltip.js</resource>
		</resources>
		<provides>
			<provide>dijit.Tooltip</provide>
		</provides>
		<summary>Pops up a tooltip (a help message) when you hover over a node.</summary>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
		</mixins>
		<properties>
			<property name="label" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Text to display in the tooltip.
	Specified as innerHTML when creating the widget from markup.</summary>
			</property>
			<property name="showDelay" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Number of milliseconds to wait after hovering over/focusing on the object, before
	the tooltip is displayed.</summary>
			</property>
			<property name="connectId" scope="prototype" type="String|String[]">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Id of domNode(s) to attach the tooltip to.
	When user hovers over specified dom node, the tooltip will appear.</summary>
			</property>
			<property name="position" scope="prototype" type="String[]">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>See description of &lt;code&gt;dijit.Tooltip.defaultPosition&lt;/code&gt; for details on position parameter.</summary>
			</property>
			<property name="_connections" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="_connectIds" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="_focus" scope="prototype" type="bool" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="_showTimer" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="_connectNode" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
			<property name="defaultPosition" scope="normal" type="Array">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_setConnectIdAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Connect to node(s) (specified by id)</summary>
				<parameters>
					<parameter name="newId" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="addTarget" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Attach tooltip to specified node if it's not already connected</summary>
				<parameters>
					<parameter name="node" type="DOMNODE" usage="required">
						<summary>|| String</summary>
					</parameter>
				</parameters>
			</method>
			<method name="removeTarget" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Detach tooltip from specified node</summary>
				<parameters>
					<parameter name="node" type="DOMNODE" usage="required">
						<summary>|| String</summary>
					</parameter>
				</parameters>
			</method>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</method>
			<method name="startup" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</method>
			<method name="_onTargetMouseEnter" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Handler for mouseenter event on the target node</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onTargetMouseLeave" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Handler for mouseleave event on the target node</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onTargetFocus" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Handler for focus event on the target node</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onTargetBlur" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Handler for blur event on the target node</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onHover" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Despite the name of this method, it actually handles both hover and focus
	events on the target node, setting a timer to show the tooltip.</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onUnHover" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Despite the name of this method, it actually handles both mouseleave and blur
	events on the target node, hiding the tooltip.</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="open" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Display the tooltip; usually not called directly.</summary>
				<parameters>
					<parameter name="target" type="DomNode" usage="required"/>
				</parameters>
			</method>
			<method name="close" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Hide the tooltip or cancel timer for show of tooltip</summary>
			</method>
			<method name="onShow" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Called when the tooltip is shown</summary>
				<parameters>
					<parameter name="target" type="" usage="required"/>
					<parameter name="position" type="" usage="required"/>
				</parameters>
			</method>
			<method name="onHide" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
				<summary>Called when the tooltip is hidden</summary>
			</method>
			<method name="uninitialize" scope="prototype">
				<resources>
					<resource>dijit/Tooltip.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tooltip</provide>
				</provides>
			</method>
		</methods>
	</object>
	<object location="dijit.TooltipDialog" type="Function" classlike="true" superclass="dijit.layout.ContentPane">
		<resources>
			<resource>dijit/TooltipDialog.js</resource>
		</resources>
		<provides>
			<provide>dijit.TooltipDialog</provide>
		</provides>
		<summary>Pops up a dialog that appears like a Tooltip</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit.form._FormMixin.prototype"/>
			<mixin scope="prototype" location="dijit._DialogMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit.layout.ContentPane"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit.form._FormMixin"/>
			<mixin scope="instance" location="dijit._DialogMixin"/>
		</mixins>
		<properties>
			<property name="title" scope="prototype" type="String">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>Description of tooltip dialog (required for a11y)</summary>
			</property>
			<property name="doLayout" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>Don't change this parameter from the default value.
	This ContentPane parameter doesn't make sense for TooltipDialog, since TooltipDialog
	is never a child of a layout container, nor can you specify the size of
	TooltipDialog in order to control the size of an inner widget.</summary>
			</property>
			<property name="autofocus" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>A Toggle to modify the default focus behavior of a Dialog, which
	is to focus on the first dialog element after opening the dialog.
	False will disable autofocusing. Default: true</summary>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>The root className to use for the various states of this widget</summary>
			</property>
			<property name="_firstFocusItem" scope="prototype" type="[readonly]" private="true">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>DomNode
	The pointer to the first focusable node in the dialog.
	Set by &lt;code&gt;dijit._DialogMixin._getFocusItems&lt;/code&gt;.</summary>
			</property>
			<property name="_lastFocusItem" scope="prototype" type="[readonly]" private="true">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>DomNode
	The pointer to which node has focus prior to our dialog.
	Set by &lt;code&gt;dijit._DialogMixin._getFocusItems&lt;/code&gt;.</summary>
			</property>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
			</property>
			<property name="_currentOrientClass" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_setTitleAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<parameters>
					<parameter name="title" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
			</method>
			<method name="orient" scope="prototype">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>Configure widget to be displayed in given position relative to the button.
	This is called from the dijit.popup code, and should not be called
	directly.</summary>
				<parameters>
					<parameter name="node" type="DomNode" usage="required"/>
					<parameter name="aroundCorner" type="String" usage="required"/>
					<parameter name="corner" type="String" usage="required"/>
				</parameters>
			</method>
			<method name="focus" scope="prototype">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>Focus on first field</summary>
			</method>
			<method name="onOpen" scope="prototype">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>Called when dialog is displayed.
	This is called from the dijit.popup code, and should not be called directly.</summary>
				<parameters>
					<parameter name="pos" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="onClose" scope="prototype">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>Called when dialog is hidden.
	This is called from the dijit.popup code, and should not be called directly.</summary>
			</method>
			<method name="_onKey" scope="prototype" private="true">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
				<summary>Handler for keyboard events</summary>
				<description>Keep keyboard focus in dialog; close dialog on escape key</description>
				<parameters>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit.TooltipDialog.containerNode" type="">
		<properties>
			<property name="title" scope="prototype" type="">
				<resources>
					<resource>dijit/TooltipDialog.js</resource>
				</resources>
				<provides>
					<provide>dijit.TooltipDialog</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._TreeNode" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Tree.js</resource>
		</resources>
		<provides>
			<provide>dijit.Tree</provide>
		</provides>
		<summary>Single node within a tree.   This class is used internally
	by Tree and should not be accessed directly.</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
			<mixin scope="prototype" location="dijit._Container.prototype"/>
			<mixin scope="prototype" location="dijit._Contained.prototype"/>
			<mixin scope="prototype" location="dijit._CssStateMixin.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
			<mixin scope="instance" location="dijit._Container"/>
			<mixin scope="instance" location="dijit._Contained"/>
			<mixin scope="instance" location="dijit._CssStateMixin"/>
		</mixins>
		<properties>
			<property name="item" scope="prototype" type="dojo.data.Item" tags="const">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>the dojo.data entry this tree represents</summary>
			</property>
			<property name="isTreeNode" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Indicates that this is a TreeNode.   Used by &lt;code&gt;dijit.Tree&lt;/code&gt; only,
	should not be accessed directly.</summary>
			</property>
			<property name="label" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Text of this tree node</summary>
			</property>
			<property name="isExpandable" scope="prototype" type="Boolean" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>This node has children, so show the expando node (+ sign)</summary>
			</property>
			<property name="isExpanded" scope="prototype" type="Boolean" tags="readonly">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>This node is currently expanded (ie, opened)</summary>
			</property>
			<property name="state" scope="prototype" type="String" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Dynamic loading-related stuff.
	When an empty folder node appears, it is &amp;quot;UNCHECKED&amp;quot; first,
	then after dojo.data query it becomes &amp;quot;LOADING&amp;quot; and, finally &amp;quot;LOADED&amp;quot;</summary>
			</property>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="baseClass" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="attributeMap" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="_expandDeferred" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="_wipeOut" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="indent" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Levels from this node to the root node</summary>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</method>
			<method name="_setIndentAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Tell this node how many levels it should be indented</summary>
				<description>0 for top level nodes, 1 for their children, 2 for their
	grandchildren, etc.</description>
				<parameters>
					<parameter name="indent" type="" usage="required"/>
				</parameters>
			</method>
			<method name="markProcessing" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Visually denote that tree is loading data, etc.</summary>
			</method>
			<method name="unmarkProcessing" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Clear markup from markProcessing() call</summary>
			</method>
			<method name="_updateItemClasses" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Set appropriate CSS classes for icon and label dom node
	(used to allow for item updates to change respective CSS)</summary>
				<parameters>
					<parameter name="item" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_applyClassAndStyle" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Set the appropriate CSS classes and styles for labels, icons and rows.</summary>
				<parameters>
					<parameter name="item" type="The" usage="required">
						<summary>data item.</summary>
					</parameter>
					<parameter name="lower" type="The" usage="required">
						<summary>lower case attribute to use, e.g. 'icon', 'label' or 'row'.</summary>
					</parameter>
					<parameter name="upper" type="The" usage="required">
						<summary>upper case attribute to use, e.g. 'Icon', 'Label' or 'Row'.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_updateLayout" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Set appropriate CSS classes for this.domNode</summary>
			</method>
			<method name="_setExpando" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Set the right image for the expando node</summary>
				<parameters>
					<parameter name="processing" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="expand" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Show my children</summary>
				<return-description>Deferred that fires when expansion is complete</return-description>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="collapse" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Collapse this node (if it's expanded)</summary>
			</method>
			<method name="setChildItems" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Sets the child items of this node, removing/adding nodes
	from current children to match specified items[] array.
	Also, if this.persist == true, expands any children that were previously
	opened.</summary>
				<return-description>Deferred object that fires after all previously opened children
	have been expanded again (or fires instantly if there are no such children).</return-description>
				<parameters>
					<parameter name="items" type="Object[]" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="getTreePath" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</method>
			<method name="getIdentity" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</method>
			<method name="removeChild" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<parameters>
					<parameter name="node" type="treeNode" usage="required"/>
				</parameters>
			</method>
			<method name="makeExpandable" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>if this node wasn't already showing the expando node,
	turn it into one and call _setExpando()</summary>
			</method>
			<method name="_onLabelFocus" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when this row is focused (possibly programatically)
	Note that we aren't using _onFocus() builtin to dijit
	because it's called when focus is moved to a descendant TreeNode.</summary>
				<parameters>
					<parameter name="evt" type="" usage="required"/>
				</parameters>
			</method>
			<method name="setSelected" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>A Tree has a (single) currently selected node.
	Mark that this node is/isn't that currently selected node.</summary>
				<description>In particular, setting a node as selected involves setting tabIndex
	so that when user tabs to the tree, focus will go to that node (only).</description>
				<parameters>
					<parameter name="selected" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="setFocusable" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>A Tree has a (single) node that's focusable.
	Mark that this node is/isn't that currently focsuable node.</summary>
				<description>In particular, setting a node as selected involves setting tabIndex
	so that when user tabs to the tree, focus will go to that node (only).</description>
				<parameters>
					<parameter name="selected" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_onClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Handler for onclick event on a node</summary>
				<parameters>
					<parameter name="evt" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onDblClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Handler for ondblclick event on a node</summary>
				<parameters>
					<parameter name="evt" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onMouseEnter" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Handler for onmouseenter event on a node</summary>
				<parameters>
					<parameter name="evt" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onMouseLeave" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Handler for onmouseenter event on a node</summary>
				<parameters>
					<parameter name="evt" type="" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit._TreeNode.cssStateNodes">
		<resources>
			<resource>dijit/Tree.js</resource>
		</resources>
		<provides>
			<provide>dijit.Tree</provide>
		</provides>
		<properties>
			<property name="rowNode" scope="normal" type="String">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="labelNode" scope="normal" type="String">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._TreeNode.tree" type="">
		<resources>
			<resource>dijit/Tree.js</resource>
		</resources>
		<provides>
			<provide>dijit.Tree</provide>
		</provides>
		<properties>
			<property name="model" scope="prototype" type="">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="lastFocused" scope="prototype" type="">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._TreeNode.expandoNodeText" type="">
		<properties>
			<property name="innerHTML" scope="prototype" type="">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit.Tree" type="Function" classlike="true" superclass="dijit._Widget">
		<resources>
			<resource>dijit/Tree.js</resource>
		</resources>
		<provides>
			<provide>dijit.Tree</provide>
		</provides>
		<summary>This widget displays hierarchical data from a store.</summary>
		<mixins scope="prototype">
			<mixin scope="prototype" location="dijit._Templated.prototype"/>
		</mixins>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Widget"/>
			<mixin scope="instance" location="dijit._Templated"/>
		</mixins>
		<properties>
			<property name="store" scope="prototype" type="String||dojo.data.Store">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Deprecated.  Use &amp;quot;model&amp;quot; parameter instead.
	The store to get data to display in the tree.</summary>
			</property>
			<property name="model" scope="prototype" type="dijit.Tree.model">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Interface to read tree data, get notifications of changes to tree data,
	and for handling drop operations (i.e drag and drop onto the tree)</summary>
			</property>
			<property name="query" scope="prototype" type="anything">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Deprecated.  User should specify query to the model directly instead.
	Specifies datastore query to return the root item or top items for the tree.</summary>
			</property>
			<property name="label" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Deprecated.  Use dijit.tree.ForestStoreModel directly instead.
	Used in conjunction with query parameter.
	If a query is specified (rather than a root node id), and a label is also specified,
	then a fake root node is created and displayed, with this label.</summary>
			</property>
			<property name="showRoot" scope="prototype" type="Boolean" tags="const">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Should the root node be displayed, or hidden?</summary>
			</property>
			<property name="childrenAttr" scope="prototype" type="String[]">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Deprecated.   This information should be specified in the model.
	One ore more attributes that holds children of a tree node</summary>
			</property>
			<property name="paths" scope="prototype" type="String[][]">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>or Item[][]
	Full paths from rootNode to selected nodes expressed as array of items or array of ids.
	Since setting the paths may be asynchronous (because ofwaiting on dojo.data), set(&amp;quot;paths&amp;quot;, ...)
	returns a Deferred to indicate when the set is complete.</summary>
			</property>
			<property name="path" scope="prototype" type="String[]">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>or Item[]
	Backward compatible singular variant of paths.</summary>
			</property>
			<property name="selectedItems" scope="prototype" type="Item[]" tags="readonly">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>The currently selected items in this tree.
	This property can only be set (via set('selectedItems', ...)) when that item is already
	visible in the tree.   (I.e. the tree has already been expanded to show that node.)
	Should generally use &lt;code&gt;paths&lt;/code&gt; attribute to set the selected items instead.</summary>
			</property>
			<property name="selectedItem" scope="prototype" type="Item" tags="readonly">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Backward compatible singular variant of selectedItems.</summary>
			</property>
			<property name="openOnClick" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>If true, clicking a folder node's label will open it, rather than calling onClick()</summary>
			</property>
			<property name="openOnDblClick" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>If true, double-clicking a folder node's label will open it, rather than calling onDblClick()</summary>
			</property>
			<property name="templateString" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="persist" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Enables/disables use of cookies for state saving.</summary>
			</property>
			<property name="autoExpand" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Fully expand the tree on load.   Overrides &lt;code&gt;persist&lt;/code&gt;.</summary>
			</property>
			<property name="dndController" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Class name to use as as the dnd controller.  Specifying this class enables DnD.
	Generally you should specify this as &amp;quot;dijit.tree.dndSource&amp;quot;.
	Default of &amp;quot;dijit.tree._dndSelector&amp;quot; handles selection only (no actual DnD).</summary>
			</property>
			<property name="dndParams" scope="prototype" type="Array">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="dragThreshold" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Number of pixels mouse moves before it's considered the start of a drag operation</summary>
			</property>
			<property name="betweenThreshold" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Set to a positive value to allow drag and drop &amp;quot;between&amp;quot; nodes.
	If during DnD mouse is over a (target) node but less than betweenThreshold
	pixels from the bottom edge, dropping the the dragged node will make it
	the next sibling of the target node, rather than the child.
	Similarly, if mouse is over a target node but less that betweenThreshold
	pixels from the top edge, dropping the dragged node will make it
	the target node's previous sibling rather than the target node's child.</summary>
			</property>
			<property name="_nodePixelIndent" scope="prototype" type="Integer" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Number of pixels to indent tree nodes (relative to parent node).
	Default is 19 but can be overridden by setting CSS class dijitTreeIndent
	and calling resize() or startup() on tree after it's in the DOM.</summary>
			</property>
			<property name="tree" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="_itemNodesMap" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="cookieName" scope="prototype" type="String">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="_loadDeferred" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="_v10Compat" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="_keyHandlerMap" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="multiCharSearchDuration" scope="prototype" type="Number">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>If multiple characters are typed where each keystroke happens within
	multiCharSearchDuration of the previous keystroke,
	search for nodes matching all the keystrokes.
	For example, typing &amp;quot;ab&amp;quot; will search for entries starting with
	&amp;quot;ab&amp;quot; unless the delay between &amp;quot;a&amp;quot; and &amp;quot;b&amp;quot; is greater than multiCharSearchDuration.</summary>
			</property>
			<property name="_curSearch" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="lastFocused" scope="prototype" type="">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="_openedItemIds" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
			<property name="rootNode" scope="prototype" type="Object">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="onDndDrop" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Parameter to dndController, see &lt;code&gt;dijit.tree.dndSource.onDndDrop&lt;/code&gt;.
	Generally this doesn't need to be set.</summary>
			</method>
			<method name="itemCreator" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Returns objects passed to &lt;code&gt;Tree.model.newItem()&lt;/code&gt; based on DnD nodes
	dropped onto the tree.   Developer must override this method to enable
	dropping from external sources onto this Tree, unless the Tree.model's items
	happen to look like {id: 123, name: &amp;quot;Apple&amp;quot; } with no other attributes.</summary>
				<description>For each node in nodes[], which came from source, create a hash of name/value
	pairs to be passed to Tree.model.newItem().  Returns array of those hashes.</description>
				<return-description>Object[]
	Array of name/value hashes for each new item to be added to the Tree, like:
		[
			{ id: 123, label: "apple", foo: "bar" },
			{ id: 456, label: "pear", zaz: "bam" }
		]</return-description>
				<parameters>
					<parameter name="nodes" type="DomNode[]" usage="required">
						<summary>The DOMNodes dragged from the source container</summary>
					</parameter>
					<parameter name="target" type="DomNode" usage="required">
						<summary>The target TreeNode.rowNode</summary>
					</parameter>
					<parameter 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</summary>
					</parameter>
				</parameters>
			</method>
			<method name="onDndCancel" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Parameter to dndController, see &lt;code&gt;dijit.tree.dndSource.onDndCancel&lt;/code&gt;.
	Generally this doesn't need to be set.</summary>
			</method>
			<method name="checkAcceptance" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Checks if the Tree itself can accept nodes from this source</summary>
				<parameters>
					<parameter name="source" type="dijit.tree._dndSource" usage="required">
						<summary>The source which provides items</summary>
					</parameter>
					<parameter name="nodes" type="DOMNode[]" usage="required">
						<summary>Array of DOM nodes corresponding to nodes being dropped, dijitTreeRow nodes if
	source is a dijit.Tree.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="checkItemAcceptance" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Stub function to be overridden if one wants to check for the ability to drop at the node/item level</summary>
				<description>In the base case, this is called to check if target can become a child of source.
	When betweenThreshold is set, position="before" or "after" means that we
	are asking if the source node can be dropped before/after the target node.</description>
				<parameters>
					<parameter name="target" type="DOMNode" usage="required">
						<summary>The dijitTreeRoot DOM node inside of the TreeNode that we are dropping on to
	Use dijit.getEnclosingWidget(target) to get the TreeNode.</summary>
					</parameter>
					<parameter name="source" type="dijit.tree.dndSource" usage="required">
						<summary>The (set of) nodes we are dropping</summary>
					</parameter>
					<parameter name="position" type="String" usage="required">
						<summary>&amp;quot;over&amp;quot;, &amp;quot;before&amp;quot;, or &amp;quot;after&amp;quot;</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="_publish" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Publish a message for this widget/topic</summary>
				<parameters>
					<parameter name="topicName" type="String" usage="required"/>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="postMixInProperties" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</method>
			<method name="_store2model" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>User specified a store&amp;amp;query rather than model, so create model from store/query</summary>
			</method>
			<method name="onLoad" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when tree finishes loading and expanding.</summary>
				<description>If persist == true the loading may encompass many levels of fetches
	from the data store, each asynchronous.   Waits for all to finish.</description>
			</method>
			<method name="_load" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Initial load of the tree.
	Load root node (possibly hidden) and it's children.</summary>
			</method>
			<method name="getNodesByItem" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Returns all tree nodes that refer to an item</summary>
				<return-description>Array of tree nodes that refer to passed item</return-description>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required">
						<summary>or id</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setSelectedItemAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required">
						<summary>or id</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setSelectedItemsAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Select tree nodes related to passed items.
	WARNING: if model use multi-parented items or desired tree node isn't already loaded
	behavior is undefined. Use set('paths', ...) instead.</summary>
				<parameters>
					<parameter name="items" type="dojo.data.Items" usage="required">
						<summary>or ids</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setPathAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Singular variant of _setPathsAttr</summary>
				<parameters>
					<parameter name="path" type="Item[]" usage="required">
						<summary>|| String[]</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setPathsAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Select the tree nodes identified by passed paths.</summary>
				<return-description>Deferred to indicate when the set is complete</return-description>
				<parameters>
					<parameter name="paths" type="Item[][]" usage="required">
						<summary>Array of arrays of items or item id's</summary>
					</parameter>
				</parameters>
			</method>
			<method name="_setSelectedNodeAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<parameters>
					<parameter name="node" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_setSelectedNodesAttr" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<parameters>
					<parameter name="nodes" type="" usage="required"/>
				</parameters>
			</method>
			<method name="mayHaveChildren" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Deprecated.   This should be specified on the model itself.
	Overridable function to tell if an item has or may have children.
	Controls whether or not +/- expando icon is shown.
	(For efficiency reasons we may not want to check if an element actually
	has children until user clicks the expando node)</summary>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
				</parameters>
			</method>
			<method name="getItemChildren" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Deprecated.   This should be specified on the model itself.
	Overridable function that return array of child items of given parent item,
	or if parentItem==null then return top items in tree</summary>
				<parameters>
					<parameter name="parentItem" type="dojo.data.Item" usage="required"/>
					<parameter name="onComplete" type="function(items)" usage="required"/>
				</parameters>
			</method>
			<method name="getLabel" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to get the label for a tree node (given the item)</summary>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="getIconClass" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to return CSS class name to display icon</summary>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
					<parameter name="opened" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="getLabelClass" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to return CSS class name to display label</summary>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
					<parameter name="opened" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="getRowClass" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to return CSS class name to display row</summary>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
					<parameter name="opened" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="getIconStyle" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to return CSS styles to display icon</summary>
				<return-description>Object suitable for input to dojo.style() like {backgroundImage: "url(...)"}</return-description>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
					<parameter name="opened" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="getLabelStyle" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to return CSS styles to display label</summary>
				<return-description>Object suitable for input to dojo.style() like {color: "red", background: "green"}</return-description>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
					<parameter name="opened" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="getRowStyle" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to return CSS styles to display row</summary>
				<return-description>Object suitable for input to dojo.style() like {background-color: "#bbb"}</return-description>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
					<parameter name="opened" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="getTooltip" scope="prototype" tags="extension">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Overridable function to get the tooltip for a tree node (given the item)</summary>
				<parameters>
					<parameter name="item" type="dojo.data.Item" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="String"/>
				</return-types>
			</method>
			<method name="_onKeyPress" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Translates keypress events into commands for the controller</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onEnterKey" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<parameters>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_onDownArrow" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>down arrow pressed; get next visible node, set focus there</summary>
				<parameters>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_onUpArrow" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Up arrow pressed; move to previous visible node</summary>
				<parameters>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_onRightArrow" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Right arrow pressed; go to child node</summary>
				<parameters>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_onLeftArrow" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Left arrow pressed.
	If not collapsed, collapse, else move to parent.</summary>
				<parameters>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_onHomeKey" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Home key pressed; get first visible node, and set focus there</summary>
			</method>
			<method name="_onEndKey" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>End key pressed; go to last visible node.</summary>
				<parameters>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="_onLetterKeyNav" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when user presses a prinatable key; search for node starting with recently typed letters.</summary>
				<parameters>
					<parameter name="message" type="Object" usage="required">
						<summary>Like { node: TreeNode, key: 'a' } where key is the key the user pressed.</summary>
					</parameter>
				</parameters>
			</method>
			<method name="isExpandoNode" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>check whether a dom node is the expandoNode for a particular TreeNode widget</summary>
				<parameters>
					<parameter name="node" type="" usage="required"/>
					<parameter name="widget" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_onClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Translates click events into commands for the controller to process</summary>
				<parameters>
					<parameter name="nodeWidget" type="TreeNode" usage="required"/>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onDblClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Translates double-click events into commands for the controller to process</summary>
				<parameters>
					<parameter name="nodeWidget" type="TreeNode" usage="required"/>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onExpandoClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>User clicked the +/- icon; expand or collapse my children.</summary>
				<parameters>
					<parameter name="message" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="onClick" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Callback when a tree node is clicked</summary>
				<parameters>
					<parameter name="item" type="dojo.data" usage="required"/>
					<parameter name="node" type="TreeNode" usage="required"/>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="onDblClick" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Callback when a tree node is double-clicked</summary>
				<parameters>
					<parameter name="item" type="dojo.data" usage="required"/>
					<parameter name="node" type="TreeNode" usage="required"/>
					<parameter name="evt" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="onOpen" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Callback when a node is opened</summary>
				<parameters>
					<parameter name="item" type="dojo.data" usage="required"/>
					<parameter name="node" type="TreeNode" usage="required"/>
				</parameters>
			</method>
			<method name="onClose" scope="prototype" tags="callback">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Callback when a node is closed</summary>
				<parameters>
					<parameter name="item" type="dojo.data" usage="required"/>
					<parameter name="node" type="TreeNode" usage="required"/>
				</parameters>
			</method>
			<method name="_getNextNode" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Get next visible node</summary>
				<parameters>
					<parameter name="node" type="" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="_TreeNode"/>
				</return-types>
			</method>
			<method name="_getRootOrFirstNode" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Get first visible node</summary>
			</method>
			<method name="_collapseNode" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when the user has requested to collapse the node</summary>
				<parameters>
					<parameter name="node" type="_TreeNode" usage="required"/>
				</parameters>
			</method>
			<method name="_expandNode" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when the user has requested to expand the node</summary>
				<return-description>Deferred that fires when the node is loaded and opened and (if persist=true) all it's descendants
	that were previously opened too</return-description>
				<parameters>
					<parameter name="node" type="_TreeNode" usage="required"/>
					<parameter name="recursive" type="Boolean" usage="optional">
						<summary>Internal flag used when _expandNode() calls itself, don't set.</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="dojo.Deferred"/>
				</return-types>
			</method>
			<method name="focusNode" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Focus on the specified node (which must be visible)</summary>
				<parameters>
					<parameter name="node" type="_tree.Node" usage="required"/>
				</parameters>
			</method>
			<method name="_onNodeFocus" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when a TreeNode gets focus, either by user clicking
	it, or programatically by arrow key handling code.</summary>
				<description>It marks that the current node is the selected one, and the previously
	selected node no longer is.</description>
				<parameters>
					<parameter name="node" type="dijit._Widget" usage="required"/>
				</parameters>
			</method>
			<method name="_onNodeMouseEnter" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when mouse is over a node (onmouseenter event),
	this is monitored by the DND code</summary>
				<parameters>
					<parameter name="node" type="dijit._Widget" usage="required"/>
				</parameters>
			</method>
			<method name="_onNodeMouseLeave" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Called when mouse leaves a node (onmouseleave event),
	this is monitored by the DND code</summary>
				<parameters>
					<parameter name="node" type="dijit._Widget" usage="required"/>
				</parameters>
			</method>
			<method name="_onItemChange" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Processes notification of a change to an item's scalar values like label</summary>
				<parameters>
					<parameter name="item" type="Item" usage="required"/>
				</parameters>
			</method>
			<method name="_onItemChildrenChange" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Processes notification of a change to an item's children</summary>
				<parameters>
					<parameter name="parent" type="dojo.data.Item" usage="required"/>
					<parameter name="newChildrenList" type="dojo.data.Item[]" usage="required"/>
				</parameters>
			</method>
			<method name="_onItemDelete" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Processes notification of a deletion of an item</summary>
				<parameters>
					<parameter name="item" type="Item" usage="required"/>
				</parameters>
			</method>
			<method name="_initState" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Load in which nodes should be opened automatically</summary>
			</method>
			<method name="_state" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Query or set expanded state for an item,</summary>
				<parameters>
					<parameter name="item" type="" usage="required"/>
					<parameter name="expanded" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_saveState" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>Create and save a cookie with the currently expanded nodes identifiers</summary>
			</method>
			<method name="destroy" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</method>
			<method name="destroyRecursive" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
			</method>
			<method name="resize" scope="prototype">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<parameters>
					<parameter name="changeSize" type="" usage="required"/>
				</parameters>
			</method>
			<method name="_createTreeNode" scope="prototype" private="true">
				<resources>
					<resource>dijit/Tree.js</resource>
				</resources>
				<provides>
					<provide>dijit.Tree</provide>
				</provides>
				<summary>creates a TreeNode</summary>
				<description>Developers can override this method to define their own TreeNode class;
	However it will probably be removed in a future release in favor of a way
	of just specifying a widget for the label, rather than one that contains
	the children too.</description>
				<parameters>
					<parameter name="args" type="Object" usage="required"/>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit._Contained" type="Function" classlike="true">
		<resources>
			<resource>dijit/_Contained.js</resource>
		</resources>
		<provides>
			<provide>dijit._Contained</provide>
		</provides>
		<summary>Mixin for widgets that are children of a container widget</summary>
		<examples>
			<example> 	// make a basic custom widget that knows about it's parents
		dojo.declare("my.customClass",[dijit._Widget,dijit._Contained],{});</example>
		</examples>
		<methods>
			<method constructor="constructor"/>
			<method name="getParent" scope="prototype">
				<resources>
					<resource>dijit/_Contained.js</resource>
				</resources>
				<provides>
					<provide>dijit._Contained</provide>
				</provides>
				<summary>Returns the parent widget of this widget, assuming the parent
	specifies isContainer</summary>
			</method>
			<method name="_getSibling" scope="prototype" private="true">
				<resources>
					<resource>dijit/_Contained.js</resource>
				</resources>
				<provides>
					<provide>dijit._Contained</provide>
				</provides>
				<summary>Returns next or previous sibling</summary>
				<parameters>
					<parameter name="which" type="String" usage="required">
						<summary>Either &amp;quot;next&amp;quot; or &amp;quot;previous&amp;quot;</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="dijit._Widget"/>
				</return-types>
			</method>
			<method name="getPreviousSibling" scope="prototype">
				<resources>
					<resource>dijit/_Contained.js</resource>
				</resources>
				<provides>
					<provide>dijit._Contained</provide>
				</provides>
				<summary>Returns null if this is the first child of the parent,
	otherwise returns the next element sibling to the &amp;quot;left&amp;quot;.</summary>
				<return-types>
					<return-type type="dijit._Widget"/>
				</return-types>
			</method>
			<method name="getNextSibling" scope="prototype">
				<resources>
					<resource>dijit/_Contained.js</resource>
				</resources>
				<provides>
					<provide>dijit._Contained</provide>
				</provides>
				<summary>Returns null if this is the last child of the parent,
	otherwise returns the next element sibling to the &amp;quot;right&amp;quot;.</summary>
				<return-types>
					<return-type type="dijit._Widget"/>
				</return-types>
			</method>
			<method name="getIndexInParent" scope="prototype">
				<resources>
					<resource>dijit/_Contained.js</resource>
				</resources>
				<provides>
					<provide>dijit._Contained</provide>
				</provides>
				<summary>Returns the index of this widget within its container parent.
	It returns -1 if the parent does not exist, or if the parent
	is not a dijit._Container</summary>
				<return-types>
					<return-type type="int"/>
				</return-types>
			</method>
		</methods>
	</object>
	<object location="dijit._Container" type="Function" classlike="true">
		<resources>
			<resource>dijit/_Container.js</resource>
		</resources>
		<provides>
			<provide>dijit._Container</provide>
		</provides>
		<summary>Mixin for widgets that contain a set of widget children.</summary>
		<description>Use this mixin for widgets that needs to know about and
	keep track of their widget children. Suitable for widgets like BorderContainer
	and TabContainer which contain (only) a set of child widgets.
	It's not suitable for widgets like ContentPane
	which contains mixed HTML (plain DOM nodes in addition to widgets),
	and where contained widgets are not necessarily directly below
	this.containerNode.   In that case calls like addChild(node, position)
	wouldn't make sense.</description>
		<properties>
			<property name="isContainer" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Indicates that this widget acts as a &amp;quot;parent&amp;quot; to the descendant widgets.
	When the parent is started it will call startup() on the child widgets.
	See also &lt;code&gt;isLayoutContainer&lt;/code&gt;.</summary>
			</property>
			<property name="containerNode" scope="prototype" type="">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
			</method>
			<method name="addChild" scope="prototype">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Makes the given widget a child of this widget.</summary>
				<description>Inserts specified child widget's dom node as a child of this widget's
	container node, and possibly does other processing (such as layout).</description>
				<parameters>
					<parameter name="widget" type="dijit._Widget" usage="required"/>
					<parameter name="insertIndex" type="int" usage="optional"/>
				</parameters>
			</method>
			<method name="removeChild" scope="prototype">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Removes the passed widget instance from this widget but does
	not destroy it.  You can also pass in an integer indicating
	the index within the container to remove</summary>
				<parameters>
					<parameter name="widget" type="Widget" usage="required">
						<summary>or int</summary>
					</parameter>
				</parameters>
			</method>
			<method name="hasChildren" scope="prototype">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Returns true if widget has children, i.e. if this.containerNode contains something.</summary>
				<return-types>
					<return-type type="Boolean"/>
				</return-types>
			</method>
			<method name="destroyDescendants" scope="prototype">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Destroys all the widgets inside this.containerNode,
	but not this widget itself</summary>
				<parameters>
					<parameter name="preserveDom" type="Boolean" usage="required"/>
				</parameters>
			</method>
			<method name="_getSiblingOfChild" scope="prototype" private="true">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Get the next or previous widget sibling of child</summary>
				<parameters>
					<parameter name="child" type="dijit._Widget" usage="required"/>
					<parameter name="dir" type="int" usage="required">
						<summary>if 1, get the next sibling
	if -1, get the previous sibling</summary>
					</parameter>
				</parameters>
				<return-types>
					<return-type type="dijit._Widget"/>
				</return-types>
			</method>
			<method name="getIndexOfChild" scope="prototype">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Gets the index of the child in this container or -1 if not found</summary>
				<parameters>
					<parameter name="child" type="dijit._Widget" usage="required"/>
				</parameters>
				<return-types>
					<return-type type="int"/>
				</return-types>
			</method>
			<method name="startup" scope="prototype">
				<resources>
					<resource>dijit/_Container.js</resource>
				</resources>
				<provides>
					<provide>dijit._Container</provide>
				</provides>
				<summary>Called after all the widgets have been instantiated and their
	dom nodes have been inserted somewhere under dojo.doc.body.
	Widgets should override this method to do any initialization
	dependent on other widgets existing, and then call
	this superclass method to finish things off.
	startup() in subclasses shouldn't do anything
	size related because the size of the widget hasn't been set yet.</summary>
			</method>
		</methods>
	</object>
	<object location="dijit._CssStateMixin" type="Function" classlike="true">
		<resources>
			<resource>dijit/_CssStateMixin.js</resource>
		</resources>
		<provides>
			<provide>dijit._CssStateMixin</provide>
		</provides>
		<summary>Mixin for widgets to set CSS classes on the widget DOM nodes depending on hover/mouse press/focus
	state changes, and also higher-level state changes such becoming disabled or selected.</summary>
		<description>By mixing this class into your widget, and setting the this.baseClass attribute, it will automatically
	maintain CSS classes on the widget root node (this.domNode) depending on hover,
	active, focus, etc. state.   Ex: with a baseClass of dijitButton, it will apply the classes
	dijitButtonHovered and dijitButtonActive, as the user moves the mouse over the widget and clicks it.
	It also sets CSS like dijitButtonDisabled based on widget semantic state.
	By setting the cssStateNodes attribute, a widget can also track events on subnodes (like buttons
	within the widget).</description>
		<properties>
			<property name="cssStateNodes" scope="prototype" type="Object">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
				<summary>List of sub-nodes within the widget that need CSS classes applied on mouse hover/press and focus
	.
	Each entry in the hash is a an attachpoint names (like &amp;quot;upArrowButton&amp;quot;) mapped to a CSS class names
	(like &amp;quot;dijitUpArrowButton&amp;quot;). Example:
			{
				&amp;quot;upArrowButton&amp;quot;: &amp;quot;dijitUpArrowButton&amp;quot;,
				&amp;quot;downArrowButton&amp;quot;: &amp;quot;dijitDownArrowButton&amp;quot;
			}
	The above will set the CSS class dijitUpArrowButton to the this.upArrowButton DOMNode when it
	is hovered, etc.</summary>
			</property>
			<property name="hovering" scope="prototype" type="Boolean" tags="readonly">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
				<summary>True if cursor is over this widget</summary>
			</property>
			<property name="active" scope="prototype" type="Boolean" tags="readonly">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
				<summary>True if mouse was pressed while over this widget, and hasn't been released yet</summary>
			</property>
			<property name="_mouseDown" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
			</property>
			<property name="_stateClasses" scope="prototype" type="" private="true">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_applyAttributes" scope="prototype" private="true">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
			</method>
			<method name="_cssMouseEvent" scope="prototype" private="true">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
				<summary>Sets hovering and active properties depending on mouse state,
	which triggers _setStateClass() to set appropriate CSS classes for this.domNode.</summary>
				<parameters>
					<parameter name="event" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_setStateClass" scope="prototype" private="true">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
				<summary>Update the visual state of the widget by setting the css classes on this.domNode
	(or this.stateNode if defined) by combining this.baseClass with
	various suffixes that represent the current widget state(s).</summary>
				<description>In the case where a widget has multiple
	states, it sets the class based on all possible
	combinations.  For example, an invalid form widget that is being hovered
	will be "dijitInput dijitInputInvalid dijitInputHover dijitInputInvalidHover".
	The widget may have one or more of the following states, determined
	by this.state, this.checked, this.valid, and this.selected:
	- Error - ValidationTextBox sets this.state to "Error" if the current input value is invalid
	- Incomplete - ValidationTextBox sets this.state to "Incomplete" if the current input value is not finished yet
	- Checked - ex: a checkmark or a ToggleButton in a checked state, will have this.checked==true
	- Selected - ex: currently selected tab will have this.selected==true
	In addition, it may have one or more of the following states,
	based on this.disabled and flags set in _onMouse (this.active, this.hovering) and from focus manager (this.focused):
	- Disabled	- if the widget is disabled
	- Active		- if the mouse (or space/enter key?) is being pressed down
	- Focused		- if the widget has focus
	- Hover		- if the mouse is over the widget</description>
			</method>
			<method name="_trackMouseState" scope="prototype" private="true">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
				<summary>Track mouse/focus events on specified node and set CSS class on that node to indicate
	current state.   Usually not called directly, but via cssStateNodes attribute.</summary>
				<description>Given class=foo, will set the following CSS class on the node
	- fooActive: if the user is currently pressing down the mouse button while over the node
	- fooHover: if the user is hovering the mouse over the node, but not pressing down a button
	- fooFocus: if the node is focused
	Note that it won't set any classes if the widget is disabled.</description>
				<parameters>
					<parameter 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
	is handled specially and automatically just by mixing in this class.</summary>
					</parameter>
					<parameter name="clazz" type="String" usage="required">
						<summary>CSS class name (ex: dijitSliderUpArrow).</summary>
					</parameter>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit._CssStateMixin.stateNode">
		<resources>
			<resource>dijit/_CssStateMixin.js</resource>
		</resources>
		<provides>
			<provide>dijit._CssStateMixin</provide>
		</provides>
		<properties>
			<property name="className" scope="prototype" type="Object">
				<resources>
					<resource>dijit/_CssStateMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._CssStateMixin</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._DialogMixin" type="Function" classlike="true">
		<resources>
			<resource>dijit/_DialogMixin.js</resource>
		</resources>
		<provides>
			<provide>dijit._DialogMixin</provide>
		</provides>
		<summary>This provides functions useful to Dialog and TooltipDialog</summary>
		<properties>
			<property name="attributeMap" scope="normal" type="">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
			</property>
			<property name="_firstFocusItem" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
			</property>
			<property name="_lastFocusItem" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="execute" scope="prototype">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
				<summary>Callback when the user hits the submit button.
	Override this method to handle Dialog execution.</summary>
				<description>After the user has pressed the submit button, the Dialog
	first calls onExecute() to notify the container to hide the
	dialog and restore focus to wherever it used to be.
	*Then* this method is called.
	type:
	callback</description>
				<parameters>
					<parameter name="formContents" type="Object" usage="required"/>
				</parameters>
			</method>
			<method name="onCancel" scope="prototype">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
				<summary>Called when user has pressed the Dialog's cancel button, to notify container.</summary>
				<description>Developer shouldn't override or connect to this method;
	it's a private communication device between the TooltipDialog
	and the thing that opened it (ex: `dijit.form.DropDownButton`)
	type:
	protected</description>
			</method>
			<method name="onExecute" scope="prototype">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
				<summary>Called when user has pressed the dialog's OK button, to notify container.</summary>
				<description>Developer shouldn't override or connect to this method;
	it's a private communication device between the TooltipDialog
	and the thing that opened it (ex: `dijit.form.DropDownButton`)
	type:
	protected</description>
			</method>
			<method name="_onSubmit" scope="prototype" private="true">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
				<summary>Callback when user hits submit button
	type:
	protected</summary>
			</method>
			<method name="_getFocusItems" scope="prototype">
				<resources>
					<resource>dijit/_DialogMixin.js</resource>
				</resources>
				<provides>
					<provide>dijit._DialogMixin</provide>
				</provides>
				<summary>Finds focusable items in dialog,
	and sets this._firstFocusItem and this._lastFocusItem</summary>
			</method>
		</methods>
	</object>
	<object location="dijit._HasDropDown" type="Function" classlike="true">
		<resources>
			<resource>dijit/_HasDropDown.js</resource>
		</resources>
		<provides>
			<provide>dijit._HasDropDown</provide>
		</provides>
		<summary>Mixin for widgets that need drop down ability.</summary>
		<properties>
			<property name="_buttonNode" scope="prototype" type="DomNode">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>The button/icon/node to click to display the drop down.
	Can be set via a dojoAttachPoint assignment.
	If missing, then either focusNode or domNode (if focusNode is also missing) will be used.</summary>
			</property>
			<property name="_arrowWrapperNode" scope="prototype" type="DomNode">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Will set CSS class dijitUpArrow, dijitDownArrow, dijitRightArrow etc. on this node depending
	on where the drop down is set to be positioned.
	Can be set via a dojoAttachPoint assignment.
	If missing, then _buttonNode will be used.</summary>
			</property>
			<property name="_popupStateNode" scope="prototype" type="DomNode">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>The node to set the popupActive class on.
	Can be set via a dojoAttachPoint assignment.
	If missing, then focusNode or _buttonNode (if focusNode is missing) will be used.</summary>
			</property>
			<property name="_aroundNode" scope="prototype" type="DomNode">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>The node to display the popup around.
	Can be set via a dojoAttachPoint assignment.
	If missing, then domNode will be used.</summary>
			</property>
			<property name="autoWidth" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Set to true to make the drop down at least as wide as this
	widget.  Set to false if the drop down should just be its
	default width</summary>
			</property>
			<property name="forceWidth" scope="prototype" type="Boolean">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Set to true to make the drop down exactly as wide as this
	widget.  Overrides autoWidth.</summary>
			</property>
			<property name="maxHeight" scope="prototype" type="Integer">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>The max height for our dropdown.
	Any dropdown taller than this will have scrollbars.
	Set to 0 for no max height, or -1 to limit height to available space in viewport</summary>
			</property>
			<property name="_stopClickEvents" scope="prototype" type="Boolean" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>When set to false, the click events will not be stopped, in
	case you want to use them in your subwidget</summary>
			</property>
			<property name="_docHandler" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</property>
			<property name="_preparedNode" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</property>
			<property name="_explicitDDWidth" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</property>
			<property name="_explicitDDHeight" scope="prototype" type="Object" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</property>
			<property name="_opened" scope="prototype" type="bool" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</property>
		</properties>
		<methods>
			<method constructor="constructor"/>
			<method name="_onDropDownMouseDown" scope="prototype" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Callback when the user mousedown's on the arrow icon</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onDropDownMouseUp" scope="prototype" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Callback when the user lifts their mouse after mouse down on the arrow icon.
	If the drop is a simple menu and the mouse is over the menu, we execute it, otherwise, we focus our
	dropDown node.  If the event is missing, then we are not
	a mouseup event.
	This is useful for the common mouse movement pattern
	with native browser &amp;lt;select&amp;gt; nodes:
	1. mouse down on the select node (probably on the arrow)
	2. move mouse to a menu item while holding down the mouse button
	3. mouse up.  this selects the menu item as though the user had clicked it.</summary>
				<parameters>
					<parameter name="e" type="Event" usage="optional"/>
				</parameters>
			</method>
			<method name="_onDropDownClick" scope="prototype" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="buildRendering" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</method>
			<method name="postCreate" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>set up nodes and connect our mouse and keypress events</summary>
			</method>
			<method name="destroy" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</method>
			<method name="_onKey" scope="prototype" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Callback when the user presses a key while focused on the button node</summary>
				<parameters>
					<parameter name="e" type="Event" usage="required"/>
				</parameters>
			</method>
			<method name="_onBlur" scope="prototype" private="true">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Called magically when focus has shifted away from this widget and it's dropdown</summary>
			</method>
			<method name="isLoaded" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Returns whether or not the dropdown is loaded.  This can
	be overridden in order to force a call to loadDropDown().</summary>
			</method>
			<method name="loadDropDown" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Loads the data for the dropdown, and at some point, calls
	the given callback.   This is basically a callback when the
	user presses the down arrow button to open the drop down.</summary>
				<parameters>
					<parameter name="loadCallback" type="Function" usage="required"/>
				</parameters>
			</method>
			<method name="toggleDropDown" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Callback when the user presses the down arrow button or presses
	the down arrow key to open/close the drop down.
	Toggle the drop-down widget; if it is up, close it, if not, open it</summary>
			</method>
			<method name="openDropDown" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Opens the dropdown for this widget.   To be called only when this.dropDown
	has been created and is ready to display (ie, it's data is loaded).</summary>
				<return-description>return value of dijit.popup.open()</return-description>
			</method>
			<method name="closeDropDown" scope="prototype">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
				<summary>Closes the drop down on this widget</summary>
				<parameters>
					<parameter name="focus" type="Boolean" usage="required">
						<summary>If true, refocuses the button widget</summary>
					</parameter>
				</parameters>
			</method>
		</methods>
	</object>
	<object location="dijit._HasDropDown.dropDownPosition" type="String[]" tags="const">
		<resources>
			<resource>dijit/_HasDropDown.js</resource>
		</resources>
		<provides>
			<provide>dijit._HasDropDown</provide>
		</provides>
		<summary>This variable controls the position of the drop down.
	It's an array of strings with the following values:
	* before: places drop down to the left of the target node/widget, or to the right in
	the case of RTL scripts like Hebrew and Arabic
	* after: places drop down to the right of the target node/widget, or to the left in
	the case of RTL scripts like Hebrew and Arabic
	* above: drop down goes above target node
	* below: drop down goes below target node
	The list is positions is tried, in order, until a position is found where the drop down fits
	within the viewport.</summary>
		<properties>
			<property name="0" scope="prototype" type="String">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._HasDropDown.dropDown" type="Widget">
		<resources>
			<resource>dijit/_HasDropDown.js</resource>
		</resources>
		<provides>
			<provide>dijit._HasDropDown</provide>
		</provides>
		<summary>The widget to display as a popup.  This widget *must* be
	defined before the startup function is called.</summary>
		<properties>
			<property name="domNode" scope="prototype" type="">
				<resources>
					<resource>dijit/_HasDropDown.js</resource>
				</resources>
				<provides>
					<provide>dijit._HasDropDown</provide>
				</provides>
			</property>
		</properties>
	</object>
	<object location="dijit._KeyNavContainer" type="Function" classlike="true" superclass="dijit._Container">
		<resources>
			<resource>dijit/_KeyNavContainer.js</resource>
		</resources>
		<provides>
			<provide>dijit._KeyNavContainer</provide>
		</provides>
		<summary>A _Container with keyboard navigation of its children.</summary>
		<description>To use this mixin, call connectKeyNavHandlers() in
	postCreate() and call startupKeyNavChildren() in startup().
	It provides normalized keyboard and focusing code for Container
	widgets.</description>
		<mixins scope="instance">
			<mixin scope="instance" location="dijit._Container"/>
		</mixins>
		<properties>
			<property name="focusedChild" s
