diff options
Diffstat (limited to 'includes/js/dojox/wire/ml/Transfer.js')
-rw-r--r-- | includes/js/dojox/wire/ml/Transfer.js | 359 |
1 files changed, 0 insertions, 359 deletions
diff --git a/includes/js/dojox/wire/ml/Transfer.js b/includes/js/dojox/wire/ml/Transfer.js deleted file mode 100644 index c7780ca..0000000 --- a/includes/js/dojox/wire/ml/Transfer.js +++ /dev/null @@ -1,359 +0,0 @@ -if(!dojo._hasResource["dojox.wire.ml.Transfer"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.wire.ml.Transfer"] = true; -dojo.provide("dojox.wire.ml.Transfer"); -dojo.provide("dojox.wire.ml.ChildWire"); -dojo.provide("dojox.wire.ml.ColumnWire"); -dojo.provide("dojox.wire.ml.NodeWire"); -dojo.provide("dojox.wire.ml.SegmentWire"); - -dojo.require("dijit._Widget"); -dojo.require("dijit._Container"); -dojo.require("dojox.wire._base"); -dojo.require("dojox.wire.ml.Action"); - -dojo.declare("dojox.wire.ml.Transfer", dojox.wire.ml.Action, { - // summary: - // A widget to transfer values through source and target Wires - // description: - // This widget represents a controller task to transfer a value from - // a source to a target, through a source and a target Wires, when - // an event (a function) or a topic is issued. - // If this widget has child ChildWire widgets, their _addWire() - // methods are called to add Wire arguments to a source or a target - // Wire. - // source: - // A source object and/or property - // sourceStore: - // A data store for a source data item - // sourceAttribute: - // An attribute of a source data item - // sourcePath: - // A simplified XPath to a source property of an XML element - // type: - // A type of the value to be transferred - // converter: - // A class name of a converter for the value to be transferred - // target: - // A target object and/or property - // targetStore: - // A data store for a target data item - // targetAttribute: - // An attribute of a target data item - // targetPath: - // A simplified XPath to a target property of an XML element - source: "", - sourceStore: "", - sourceAttribute: "", - sourcePath: "", - type: "", - converter: "", - delimiter: "", - target: "", - targetStore: "", - targetAttribute: "", - targetPath: "", - - _run: function(){ - // summary: - // Transfer a value from a source to a target - // description: - // First, Wires for a source and a target are created from attributes. - // Then, a value is obtained by getValue() of the source Wire is set - // by setValue() of the target Wire. - // The arguments to this method is passed to getValue() and setValue() - // of Wires, so that they can be used to identify the root objects off - // the arguments. - var sourceWire = this._getWire("source"); - var targetWire = this._getWire("target"); - dojox.wire.transfer(sourceWire, targetWire, arguments); - }, - - _getWire: function(/*String*/which){ - // summary: - // Build Wire arguments from attributes - // description: - // Arguments object for a source or a target Wire, specified by - // 'which' argument, are build from corresponding attributes, - // including '*Store' (for 'dataStore'), '*Attribute' - // (for 'attribute), '*Path' (for 'path'), 'type' and 'converter'. - // 'source' or 'target' attribute is parsed as: - // "object_id.property_name[.sub_property_name...]" - // If 'source' or 'target' starts with "arguments", 'object' - // argument for a Wire is set to null, so that the root object is - // given as an event or topic arguments. - // If this widget has child ChildWire widgets with a corresponding - // 'which' attribute, their _addWire() methods are called to add - // additional Wire arguments and nested Wire is created, - // specifying the Wire defined by this widget to 'object' argument. - // which: - // Which Wire arguments to build, "source" or "target" - // returns: - // Wire arguments object - var args = undefined; - if(which == "source"){ - args = { - object: this.source, - dataStore: this.sourceStore, - attribute: this.sourceAttribute, - path: this.sourcePath, - type: this.type, - converter: this.converter - }; - }else{ // "target" - args = { - object: this.target, - dataStore: this.targetStore, - attribute: this.targetAttribute, - path: this.targetPath - }; - } - if(args.object){ - if(args.object.length >= 9 && args.object.substring(0, 9) == "arguments"){ - args.property = args.object.substring(9); - args.object = null; - }else{ - var i = args.object.indexOf('.'); - if(i < 0){ - args.object = dojox.wire.ml._getValue(args.object); - }else{ - args.property = args.object.substring(i + 1); - args.object = dojox.wire.ml._getValue(args.object.substring(0, i)); - } - } - } - if(args.dataStore){ - args.dataStore = dojox.wire.ml._getValue(args.dataStore); - } - var childArgs = undefined; - var children = this.getChildren(); - for(var i in children){ - var child = children[i]; - if(child instanceof dojox.wire.ml.ChildWire && child.which == which){ - if(!childArgs){ - childArgs = {}; - } - child._addWire(this, childArgs); - } - } - if(childArgs){ // make nested Wires - childArgs.object = dojox.wire.create(args); - childArgs.dataStore = args.dataStore; - args = childArgs; - } - return args; //Object - } -}); - -dojo.declare("dojox.wire.ml.ChildWire", dijit._Widget, { - // summary: - // A widget to add a child wire - // description: - // Attributes of this widget are used to add a child Wire to - // a composite Wire of the parent Transfer widget. - // which: - // Which Wire to add a child Wire, "source" or "target", default to - // "source" - // object: - // A root object for the value - // property: - // A property for the value - // type: - // A type of the value - // converter: - // A class name of a converter for the value - // attribute: - // A data item attribute for the value - // path: - // A simplified XPath for the value - // name: - // A composite property name - which: "source", - object: "", - property: "", - type: "", - converter: "", - attribute: "", - path: "", - name: "", - - _addWire: function(/*Transfer*/parent, /*Object*/args){ - // summary: - // Add a child Wire to Wire arguments - // description: - // If 'name' attribute is specified, a child Wire is added as - // the named property of 'children' object of 'args'. - // Otherwise, a child Wire is added to 'children' array of 'args'. - // parent: - // A parent Transfer widget - // args: - // Wire arguments - if(this.name){ // object - if(!args.children){ - args.children = {}; - } - args.children[this.name] = this._getWire(parent); - }else{ // array - if(!args.children){ - args.children = []; - } - args.children.push(this._getWire(parent)); - } - }, - - _getWire: function(/*Transfer*/parent){ - // summary: - // Build child Wire arguments from attributes - // description: - // Arguments object for a child Wire are build from attributes, - // including 'object', 'property', 'type', 'converter', - // 'attribute' and 'path'. - // parent: - // A parent Transfer widget - // returns: - // Wire arguments object - return { - object: (this.object ? dojox.wire.ml._getValue(this.object) : undefined), - property: this.property, - type: this.type, - converter: this.converter, - attribute: this.attribute, - path: this.path - }; //Object - } -}); - -dojo.declare("dojox.wire.ml.ColumnWire", dojox.wire.ml.ChildWire, { - // summary: - // A widget to add a column wire - // description: - // Attributes of this widget are used to add a column Wire to - // a TableAdapter of the parent Transfer widget. - // column: - // A column name - column: "", - - _addWire: function(/*Transfer*/parent, /*Object*/args){ - // summary: - // Add a column Wire to Wire arguments - // description: - // If 'column' attribute is specified, a column Wire is added as - // the named property of 'columns' object of 'args'. - // Otherwise, a column Wire is added to 'columns' array of 'args'. - // parent: - // A parent Transfer widget - // args: - // Wire arguments - if(this.column){ // object - if(!args.columns){ - args.columns = {}; - } - args.columns[this.column] = this._getWire(parent); - }else{ // array - if(!args.columns){ - args.columns = []; - } - args.columns.push(this._getWire(parent)); - } - } -}); - -dojo.declare("dojox.wire.ml.NodeWire", [dojox.wire.ml.ChildWire, dijit._Container], { - // summary: - // A widget to add node wires - // description: - // Attributes of this widget are used to add node Wires to - // a TreeAdapter of the parent Transfer widget. - // titleProperty: - // A property for the node title - // titleAttribute: - // A data item attribute for the node title - // titlePath: - // A simplified XPath for the node title - titleProperty: "", - titleAttribute: "", - titlePath: "", - - _addWire: function(/*Transfer*/parent, /*Object*/args){ - // summary: - // Add node Wires to Wire arguments - // description: - // Node Wires are added to 'nodes' array of 'args'. - // parent: - // A parent Transfer widget - // args: - // Wire arguments - if(!args.nodes){ - args.nodes = []; - } - args.nodes.push(this._getWires(parent)); - }, - - _getWires: function(/*Transfer*/parent){ - // summary: - // Build node Wires arguments from attributes - // description: - // Arguments object for 'node' Wire are build from attributes, - // including 'object', 'property', 'type', 'converter', - // 'attribute' and 'path'. - // Arguments object for 'title' Wire are build from another set of - // attributes, 'titleProperty', 'titleAttribute' and 'titlePath'. - // If this widget has child NodeWire widgets, their _getWires() - // methods are called recursively to build 'children' array of - // 'args'. - // parent: - // A parent Transfer widget - // returns: - // Wire arguments object - var args = { - node: this._getWire(parent), - title: { - type: "string", - property: this.titleProperty, - attribute: this.titleAttribute, - path: this.titlePath - } - }; - var childArgs = []; - var children = this.getChildren(); - for(var i in children){ - var child = children[i]; - if(child instanceof dojox.wire.ml.NodeWire){ - childArgs.push(child._getWires(parent)); - } - } - if(childArgs.length > 0){ - args.children = childArgs; - } - return args; //Object - } -}); - -dojo.declare("dojox.wire.ml.SegmentWire", dojox.wire.ml.ChildWire, { - // summary: - // A widget to add a segment wire - // description: - // Attributes of this widget are used to add a segment Wire to - // a TextAdapter of the parent Transfer widget. - - _addWire: function(/*Transfer*/parent, /*Object*/args){ - // summary: - // Add a segument Wire to Wire arguments - // description: - // A segment Wire is added to 'segments' array of 'args'. - // If 'parent' has 'delimiter' attribute, it is used for - // 'delimiter' property of 'args'. - // parent: - // A parent Transfer widget - // args: - // Wire arguments - if(!args.segments){ - args.segments = []; - } - args.segments.push(this._getWire(parent)); - if(parent.delimiter && !args.delimiter){ - args.delimiter = parent.delimiter; - } - } -}); - -} |