Javascript for Episerver 7.5 cms

FolderTree (constructor)

Location

epi-cms/widget/FolderTree

Extends

Properties

_attrPairNames

_blankGif

Path to a blank 1x1 image. Used by <img> nodes in templates that really get their image via CSS background-image.

_earlyTemplatedStartup

A fallback to preserve the 1.0 - 1.3 behavior of children in templates having their startup called before the parent widget fires postCreate. Defaults to 'false', causing child widgets to have their .startup() called immediately before a parent widget .startup(), but always after the parent .postCreate(). Set to 'true' to re-enable to previous, arguably broken, behavior.

_focusManager

_nodePixelIndent

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.

_outstandingPaintOperations

_setClassAttr

_setDirAttr

_setIdAttr

_setLangAttr

_skipNodeCache

_started

startup() has completed.

allowManipulation

Denotes if node manipulation is allowed.

attributeMap

Deprecated. Instead of attributeMap, widget should have a _setXXXAttr attribute for each XXX attribute to be mapped to the DOM.

attributeMap sets up a "binding" between attributes (aka properties) of the widget and the widget's DOM. Changes to widget attributes listed in attributeMap will be reflected into the DOM.

For example, calling set('title', 'hello') on a TitlePane will automatically cause the TitlePane's DOM to update with the new title.

attributeMap is a hash where the key is an attribute of the widget, and the value reflects a binding to a:

  • DOM node attribute

    focus: {node: "focusNode", type: "attribute"} Maps this.focus to this.focusNode.focus

  • DOM node innerHTML

    title: { node: "titleNode", type: "innerHTML" } Maps this.title to this.titleNode.innerHTML

  • DOM node innerText

    title: { node: "titleNode", type: "innerText" } Maps this.title to this.titleNode.innerText

  • DOM node CSS class

    myClass: { node: "domNode", type: "class" } Maps this.myClass to this.domNode.className

If the value is an array, then each element in the array matches one of the formats of the above list.

There are also some shorthands for backwards compatibility:

  • string --> { node: string, type: "attribute" }, for example:
"focusNode" ---> { node: "focusNode", type: "attribute" }
  • "" --> { node: "domNode", type: "attribute" }

autoExpand

Fully expand the tree on load. Overrides persist.

baseClass

Root CSS class of the widget (ex: dijitTextBox), used to construct CSS classes to indicate widget state.

betweenThreshold

Set to a positive value to allow drag and drop "between" 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.

checkAcceptance

childrenAttr

Deprecated. This information should be specified in the model. One ore more attributes that holds children of a tree node

class

containerNode

Designates where children of the source DOM node will be placed. "Children" in this case refers to both DOM nodes and widgets. For example, for myWidget:

<div data-dojo-type=myWidget>
    <b> here's a plain DOM node
    <span data-dojo-type=subWidget>and a widget</span>
    <i> and another plain DOM node </i>
</div>

containerNode would point to:

<b> here's a plain DOM node
<span data-dojo-type=subWidget>and a widget</span>
<i> and another plain DOM node </i>

In templated widgets, "containerNode" is set via a data-dojo-attach-point assignment.

containerNode must be defined for any widget that accepts innerHTML (like ContentPane or BorderContainer or even Button), and conversely is null for widgets that don't, like TextBox.

dir

Bi-directional support, as defined by the HTML DIR attribute. Either left-to-right "ltr" or right-to-left "rtl". If undefined, widgets renders in page's default direction.

dndParams

dndType

Defines a type of widget.

domNode

This is our visible representation of the widget! Other DOM Nodes may by assigned to other properties, usually through the template system's data-dojo-attach-point syntax, but the domNode property is the canonical "top level" node in widget UI.

dragThreshold

Number of pixels mouse moves before it's considered the start of a drag operation

expandExtraNodeItems

A collection of content item id or one content item id need to expand by default.

expandOnDnd

Enables/disables expand on a tree node when Dnd over it.

focused

This widget or a widget it contains has focus, or is "active" because it was recently clicked.

handleSelection

Flag that indicates this tree need to reset selection each time it had refresh

id

A unique, opaque ID string that can be assigned by users or by the system. If the developer passes an ID which is known not to be unique, the specified ID is ignored and the system-generated ID is used instead.

label

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.

lang

Rarely used. Overrides the default Dojo locale used to render this widget, as defined by the HTML LANG attribute. Value must be among the list of locales specified during by the Dojo bootstrap, formatted according to RFC 3066 (like en-us).

model

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)

multiCharSearchDuration

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 "ab" will search for entries starting with "ab" unless the delay between "a" and "b" is greater than multiCharSearchDuration.

nodeConstructor

Tree node constructor. It should be a sub class of dijit.Tree._TreeNode

onDndCancel

Parameter to dndController, see dijit/tree/dndSource.onDndCancel(). Generally this doesn't need to be set.

onDndDrop

Parameter to dndController, see dijit/tree/dndSource.onDndDrop(). Generally this doesn't need to be set.

openOnClick

If true, clicking a folder node's label will open it, rather than calling onClick()

openOnDblClick

If true, double-clicking a folder node's label will open it, rather than calling onDblClick()

ownerDocument

The document this widget belongs to. If not specified to constructor, will default to srcNodeRef.ownerDocument, or if no sourceRef specified, then to dojo/_base/window::doc

path

Backward compatible singular variant of paths.

paths

Full paths from rootNode to selected nodes expressed as array of items or array of ids. Since setting the paths may be asynchronous (because of waiting on dojo.data), set("paths", ...) returns a Deferred to indicate when the set is complete.

persist

Enables/disables use of cookies for state saving.

query

Deprecated. User should specify query to the model directly instead. Specifies datastore query to return the root item or top items for the tree.

roots

A list of references to the root nodes.

selectedItem

Backward compatible singular variant of selectedItems.

selectedItems

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 paths attribute to set the selected items instead.

showRoot

Flag that indicates whether the the root node should be displayed.

srcNodeRef

pointer to original DOM node

store

Deprecated. Use "model" parameter instead. The store to get data to display in the tree.

style

HTML style attributes as cssText string or name/value hash

templatePath

Path to template (HTML file) for this widget relative to dojo.baseUrl. Deprecated: use templateString with require([... "dojo/text!..."], ...) instead

templateString

textDir

Bi-directional support, the main variable which is responsible for the direction of the text. The text direction can be different than the GUI direction by using this parameter in creation of a widget.

Allowed values:

  1. "ltr"
  2. "rtl"
  3. "auto" - contextual the direction of a text defined by first strong letter.

By default is as the page direction.

title

HTML title attribute.

For form widgets this specifies a tooltip to display when hovering over the widget (just like the native HTML title attribute).

For TitlePane or for when this widget is a child of a TabContainer, AccordionContainer, etc., it's used to specify the tab label, accordion pane title, etc.

tooltip

When this widget's title attribute is used to for a tab label, accordion pane title, etc., this specifies the tooltip to appear when the mouse is hovered over that text.

typeIdentifiers

Type identifier filter.

Methods

public inherited method _adjustWidths ( )

Get width of widest TreeNode, or the width of the Tree itself, whichever is greater, and then set all TreeNodes to that width, so that selection/hover highlighting extends to the edge of the Tree (#13141)


public inherited method _beforeFillContent ( )


public inherited method _changeAttrValue ( name , value )

Internal helper for directly changing an attribute value.

Parameters

public inherited method _collapseNode ( node )

Called when the user has requested to collapse the node

Parameters

protected method _createTreeModel ( )

Create content tree model


public inherited method _createTreeNode ( args )

Overridable function to make tree node draggable after creation

Parameters

public inherited method _expandNode ( node )

Called when the user has requested to expand the node

Parameters

protected method _fillContent ( source )

Relocate source contents to templated container node. this.containerNode must be able to receive children, or exceptions will be thrown.

Parameters

public inherited method _get ( name , names )

Private function that does a get based off a hash of names

Parameters

public inherited method _getNextNode ( node )

Get next visible node

Parameters

public inherited method _getRootOrFirstNode ( )

Get first visible node


public inherited method _initState ( )

Load in which nodes should be opened automatically


public inherited method _load ( )

Initial load of the tree. Load root node (possibly hidden) and it's children.


protected method _onBlur ( )

This is where widgets do processing for when they stop being active, such as changing CSS classes. See onBlur() for more details.


public inherited method _onChildrenReload ( _7 )

Parameters

public inherited method _onDblClick ( nodeWidget , e )

Translates double-click events into commands for the controller to process

Parameters

public method _onDeleted ( item )

Handler onDeleted event that is raised after folder is deleted

Parameters

public inherited method _onDownArrow ( message )

down arrow pressed; get next visible node, set focus there

Parameters

public inherited method _onEndKey ( )

End key pressed; go to last visible node.


public inherited method _onEnterKey ( message )

Parameters

public inherited method _onExpandoClick ( message )

User clicked the +/- icon; expand or collapse my children.

Parameters

protected method _onFocus ( )

This is where widgets do processing for when they are active, such as changing CSS classes. See onFocus() for more details.


public inherited method _onHomeKey ( )

Home key pressed; get first visible node, and set focus there


public inherited method _onItemChange ( item )

Processes notification of a change to an item's scalar values like label

Parameters

public inherited method _onItemChildrenChange ( )


protected method _onItemDelete ( item , deleteChildren )

Override of dijit.Tree._onItemDelete to enable cleaning of the itemsNodeMap from children of the item being deleted.

Parameters

public inherited method _onKeyPress ( treeNode , e )

Handles keystrokes for printable keys, doing search navigation

Parameters

public inherited method _onLeftArrow ( message )

Left arrow pressed. If not collapsed, collapse, else move to parent.

Parameters

public inherited method _onLetterKeyNav ( message )

Called when user presses a prinatable key; search for node starting with recently typed letters.

Parameters

public inherited method _onMap ( type )

Maps on() type parameter (ex: "mousemove") to method name (ex: "onMouseMove"). If type is a synthetic event like touch.press then returns undefined.

Parameters

public inherited method _onNodeFocus ( node )

Called when a TreeNode gets focus, either by user clicking it, or programatically by arrow key handling code.

Parameters

public inherited method _onRightArrow ( message )

Right arrow pressed; go to child node

Parameters

public inherited method _onShow ( )

Internal method called when this widget is made visible. See onShow for details.


public inherited method _onUpArrow ( message )

Up arrow pressed; move to previous visible node

Parameters

protected method _preparePathNodes ( paths )

Prepare steps before node selection in the tree

Parameters

public inherited method _publish ( topicName , message )

Publish a message for this widget/topic

Parameters

public method _renameFolder ( item , name )

Parameters

public inherited method _set ( name , value )

Helper function to set new value for specified attribute, and call handlers registered with watch() if the value has changed.

Parameters

public inherited method _setFocusedAttr ( val )

Parameters

public inherited method _setOwnerDocumentAttr ( val )

Parameters

public inherited method _setPathAttr ( path )

Singular variant of _setPathsAttr

Parameters

public inherited method _setPathsAttr ( paths )

Select the tree nodes identified by passed paths.

Parameters

public inherited method _setRecursivePaths ( paths , deferred , setFocus , onComplete )

Parameters

public inherited method _setSelectedItemAttr ( item )

Parameters

public inherited method _setSelectedItemsAttr ( items )

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.

Parameters

public inherited method _setSelectedNodeAttr ( node )

Parameters

public inherited method _setSelectedNodesAttr ( nodes )

Marks the specified TreeNodes as selected.

Parameters

protected method _setStyleAttr ( value )

Sets the style attribute of the widget according to value, which is either a hash like {height: "5px", width: "3px"} or a plain string

Parameters

public inherited method _setTextDirAttr ( textDir )

Parameters

public inherited method _setTypeIdentifiersAttr ( value )

Parameters

public inherited method _startPaint ( p )

Called at the start of an operation that will change what's displayed.

Parameters

public inherited method _state ( node , expanded )

Query or set expanded state for an node

Parameters

public inherited method _store2model ( )

User specified a store&query rather than model, so create model from store/query


public method _updateItemDeletedHierachy ( node )

Manualy mark node's item is deleted descendant (recursive)

Parameters

protected method _wrapModel ( model )

Wraps the model with a confirmation

Parameters

protected method applyTextDir ( element , text )

The function overridden in the _BidiSupport module, originally used for setting element.dir according to this.textDir. In this case does nothing.

Parameters

public inherited method attr ( name , value )

Set or get properties on a widget instance.

Parameters

public method buildNodeFromTemplate ( args )

Build tree node from the given template.

Parameters

public inherited method buildRendering ( )


public inherited method checkItemAcceptance ( targetNode , source , position )

Called from DnD to check if a specific target can accept the items in source

Parameters

public inherited method collapseAll ( )

Collapse all nodes in the tree


protected method connect ( obj , event , method )

Deprecated, will be removed in 2.0, use this.own(on(...)) or this.own(aspect.after(...)) instead.

Connects specified obj/event to specified method of this object and registers for disconnect() on widget destroy.

Provide widget-specific analog to dojo.connect, except with the implicit use of this widget as the target object. Events connected with this.connect are disconnected upon destruction.

Parameters
Examples
var btn = new Button();
// when foo.bar() is called, call the listener we're going to
// provide in the scope of btn
btn.connect(foo, "bar", function(){
    console.debug(this.toString());
});

public inherited method constructor ( params , srcNodeRef )

Create the widget.

Parameters

protected method defer ( fcn , delay )

Wrapper to setTimeout to avoid deferred functions executing after the originating widget has been destroyed. Returns an object handle with a remove method (that returns null) (replaces clearTimeout).

Parameters

public inherited method destroy ( )


public inherited method destroyDescendants ( preserveDom )

Recursively destroy the children of this widget and their descendants.

Parameters

public inherited method destroyRecursive ( )


protected method destroyRendering ( preserveDom )

Destroys the DOM nodes associated with this widget

Parameters

protected method disconnect ( handle )

Deprecated, will be removed in 2.0, use handle.remove() instead.

Disconnects handle created by connect.

Parameters

protected method dndController ( )

Class to use as as the dnd controller. Specifying this class enables DnD. Generally you should specify this as dijit/tree/dndSource. Setting of dijit/tree/_dndSelector handles selection only (no actual DnD).


protected method emit ( type , eventObj , callbackArgs )

Used by widgets to signal that a synthetic event occurred, ex:

myWidget.emit("attrmodified-selectedChildWidget", {}).

Emits an event on this.domNode named type.toLowerCase(), based on eventObj. Also calls onType() method, if present, and returns value from that method. By default passes eventObj to callback, but will pass callbackArgs instead, if specified. Modifies eventObj by adding missing parameters (bubbles, cancelable, widget).

Parameters

public inherited method expandAll ( )

Expand all nodes in the tree


public inherited method focus ( )

Set focus to the widget.


protected method focusNode ( node )

Focus on the specified node (which must be visible)

Parameters

public inherited method get ( name )

Get a property from a widget.

Parameters

public inherited method getChildren ( )

Returns all the widgets contained by this, i.e., all widgets underneath this.containerNode. Does not return nested widgets, nor widgets that are part of this widget's template.


public inherited method getDescendants ( )

Returns all the widgets contained by this, i.e., all widgets underneath this.containerNode. This method should generally be avoided as it returns widgets declared in templates, which are supposed to be internal/hidden, but it's left here for back-compat reasons.


public inherited method getIconClass ( item , opened )

Overridable function to return CSS class name to display icon

Parameters

public inherited method getIconStyle ( item , opened )

Overridable function to return CSS styles to display icon

Parameters

public inherited method getItemChildren ( parentItem , onComplete )

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

Parameters

public inherited method getItemType ( item )

Resolve the type for each item. Called by the dnd source.

Parameters

public inherited method getLabel ( item )

Overridable function to get the label for a tree node (given the item)

Parameters

public inherited method getLabelClass ( item , opened )

Overridable function to return CSS class name to display label

Parameters

public inherited method getLabelStyle ( item , opened )

Overridable function to return CSS styles to display label

Parameters

public inherited method getNodesByItem ( item )

Returns all tree nodes that refer to an item

Parameters

public inherited method getParent ( )

Returns the parent widget of this widget


public inherited method getRowClass ( item , opened )

Overridable function to return CSS class name to display row

Parameters

public inherited method getRowStyle ( item , opened )

Overridable function to return CSS styles to display row

Parameters

protected method getTextDir ( text , originalDir )

Return direction of the text. The function overridden in the _BidiSupport module, its main purpose is to calculate the direction of the text, if was defined by the programmer through textDir.

Parameters

public inherited method getTooltip ( item )

Overridable function to get the tooltip for a tree node (given the item)

Parameters

public inherited method isExpandoNode ( node , widget )

check whether a dom node is the expandoNode for a particular TreeNode widget

Parameters

public inherited method isFocusable ( )

Return true if this widget can currently be focused and false if not


protected method isLeftToRight ( )

Return this widget's explicit or implicit orientation (true for LTR, false for RTL)


public inherited method itemCreator ( nodes , target , source )

Returns objects passed to Tree.model.newItem() 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: "Apple" } with no other attributes.

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.

Parameters

public inherited method mayHaveChildren ( item )

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)

Parameters

public inherited method on ( type , func )

Parameters

public inherited method onBlur ( )

Called when the widget stops being "active" because focus moved to something outside of it, or the user clicked somewhere outside of it, or the widget was hidden.


public inherited method onClick ( item , node , evt )

Callback when a tree node is clicked

Parameters

public inherited method onClose ( item , node )

Callback when a node is closed

Parameters

public inherited method onDblClick ( item , node , evt )

Callback when a tree node is double-clicked

Parameters

public inherited method onFocus ( )

Called when the widget becomes "active" because it or a widget inside of it either has focus, or has recently been clicked.


public inherited method onHide ( )

Called when another widget becomes the selected pane in a dijit/layout/TabContainer, dijit/layout/StackContainer, dijit/layout/AccordionContainer, etc.

Also called to indicate hide of a dijit.Dialog, dijit.TooltipDialog, or dijit.TitlePane.


public inherited method onKeyDown ( event )

Connect to this function to receive notifications of keys being pressed down.

Parameters

public inherited method onKeyPress ( event )

Connect to this function to receive notifications of printable keys being typed.

Parameters

public inherited method onKeyUp ( event )

Connect to this function to receive notifications of keys being released.

Parameters

protected method onLoad ( )

Called when tree has finished loading and expanding.


public inherited method onMouseDown ( event )

Connect to this function to receive notifications of when the mouse button is pressed down.

Parameters

public inherited method onMouseEnter ( event )

Connect to this function to receive notifications of when the mouse moves onto this widget.

Parameters

public inherited method onMouseLeave ( event )

Connect to this function to receive notifications of when the mouse moves off of this widget.

Parameters

public inherited method onMouseMove ( event )

Connect to this function to receive notifications of when the mouse moves over nodes contained within this widget.

Parameters

public inherited method onMouseOut ( event )

Connect to this function to receive notifications of when the mouse moves off of nodes contained within this widget.

Parameters

public inherited method onMouseOver ( event )

Connect to this function to receive notifications of when the mouse moves onto nodes contained within this widget.

Parameters

public inherited method onMouseUp ( event )

Connect to this function to receive notifications of when the mouse button is released.

Parameters

public inherited method onOpen ( item , node )

Callback when a node is opened

Parameters

public inherited method onShow ( )

Called when this widget becomes the selected pane in a dijit/layout/TabContainer, dijit/layout/StackContainer, dijit/layout/AccordionContainer, etc.

Also called to indicate display of a dijit.Dialog, dijit.TooltipDialog, or dijit.TitlePane.


protected method own ( )

Track specified handles and remove/destroy them when this instance is destroyed, unless they were already removed/destroyed manually.


public inherited method placeAt ( reference , position )

Place this widget somewhere in the DOM based on standard domConstruct.place() conventions.

Parameters
Examples
// create a Button with no srcNodeRef, and place it in the body:
var button = new Button({ label:"click" }).placeAt(win.body());
// now, 'button' is still the widget reference to the newly created button
button.on("click", function(e){ console.log('click'); }));
// create a button out of a node with id="src" and append it to id="wrapper":
var button = new Button({},"src").placeAt("wrapper");
// place a new button as the first element of some div
var button = new Button({ label:"click" }).placeAt("wrapper","first");
// create a contentpane and add it to a TabContainer
var tc = dijit.byId("myTabs");
new ContentPane({ href:"foo.html", title:"Wow!" }).placeAt(tc)

public method postCreate ( )


protected method postMixInProperties ( )

Post mixin initializations.


public inherited method resize ( changeSize )

Parameters

public inherited method selectContent ( contentReferenceAsString , setFocus , needParentRefresh , onComplete )

Select a given page.

Parameters

public inherited method set ( name , value )

Set a property on a widget

Parameters

public inherited method setAttribute ( attr , value )

Deprecated. Use set() instead.

Parameters

public inherited method startup ( )

Processing after the DOM fragment is added to the document


protected method subscribe ( t , method )

Deprecated, will be removed in 2.0, use this.own(topic.subscribe()) instead.

Subscribes to the specified topic and calls the specified method of this object and registers for unsubscribe() on widget destroy.

Provide widget-specific analog to dojo.subscribe, except with the implicit use of this widget as the target object.

Parameters
Examples
var btn = new Button();
// when /my/topic is published, this button changes its label to
// be the parameter of the topic.
btn.subscribe("/my/topic", function(v){
    this.set("label", v);
});

public method toggleCut ( item , isCut )

Parameters

public inherited method toString ( )

Returns a string that represents the widget


protected method uninitialize ( )

Deprecated. Override destroy() instead to implement custom widget tear-down behavior.


protected method unsubscribe ( handle )

Deprecated, will be removed in 2.0, use handle.remove() instead.

Unsubscribes handle created by this.subscribe. Also removes handle from this widget's list of subscriptions

Parameters

public inherited method watch ( name , callback )

Watches a property for changes

Parameters