8398c9048d
code was modified slightly, so the code differs from the original downloadable 1.9.5 version
108 lines
3.1 KiB
JavaScript
108 lines
3.1 KiB
JavaScript
|
|
dojo.declare(
|
|
"dijit.tree.model",
|
|
null,
|
|
{
|
|
// summary:
|
|
// Contract for any data provider object for the tree.
|
|
// description:
|
|
// Tree passes in values to the constructor to specify the callbacks.
|
|
// "item" is typically a dojo.data.Item but it's just a black box so
|
|
// it could be anything.
|
|
//
|
|
// This (like `dojo.data.api.Read`) is just documentation, and not meant to be used.
|
|
|
|
destroy: function(){
|
|
// summary:
|
|
// Destroys this object, releasing connections to the store
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
// =======================================================================
|
|
// Methods for traversing hierarchy
|
|
|
|
getRoot: function(onItem){
|
|
// summary:
|
|
// Calls onItem with the root item for the tree, possibly a fabricated item.
|
|
// Throws exception on error.
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
mayHaveChildren: function(/*dojo.data.Item*/ item){
|
|
// summary:
|
|
// Tells if an item has or may have children. Implementing logic here
|
|
// avoids showing +/- expando icon for nodes that we know don't have children.
|
|
// (For efficiency reasons we may not want to check if an element actually
|
|
// has children until user clicks the expando node)
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
getChildren: function(/*dojo.data.Item*/ parentItem, /*function(items)*/ onComplete){
|
|
// summary:
|
|
// Calls onComplete() with array of child items of given parent item, all loaded.
|
|
// Throws exception on error.
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
// =======================================================================
|
|
// Inspecting items
|
|
|
|
getIdentity: function(/* item */ item){
|
|
// summary:
|
|
// Returns identity for an item
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
getLabel: function(/*dojo.data.Item*/ item){
|
|
// summary:
|
|
// Get the label for an item
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
// =======================================================================
|
|
// Write interface
|
|
|
|
newItem: function(/* Object? */ args, /*Item?*/ parent){
|
|
// summary:
|
|
// Creates a new item. See `dojo.data.api.Write` for details on args.
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
pasteItem: function(/*Item*/ childItem, /*Item*/ oldParentItem, /*Item*/ newParentItem, /*Boolean*/ bCopy){
|
|
// summary:
|
|
// Move or copy an item from one parent item to another.
|
|
// Used in drag & drop.
|
|
// If oldParentItem is specified and bCopy is false, childItem is removed from oldParentItem.
|
|
// If newParentItem is specified, childItem is attached to newParentItem.
|
|
// tags:
|
|
// extension
|
|
},
|
|
|
|
// =======================================================================
|
|
// Callbacks
|
|
|
|
onChange: function(/*dojo.data.Item*/ item){
|
|
// summary:
|
|
// Callback whenever an item has changed, so that Tree
|
|
// can update the label, icon, etc. Note that changes
|
|
// to an item's children or parent(s) will trigger an
|
|
// onChildrenChange() so you can ignore those changes here.
|
|
// tags:
|
|
// callback
|
|
},
|
|
|
|
onChildrenChange: function(/*dojo.data.Item*/ parent, /*dojo.data.Item[]*/ newChildrenList){
|
|
// summary:
|
|
// Callback to do notifications about new, updated, or deleted items.
|
|
// tags:
|
|
// callback
|
|
}
|
|
});
|
|
|