12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- // wrapped by build app
- define("dojox/wire/TextAdapter", ["dijit","dojo","dojox","dojo/require!dojox/wire/CompositeWire"], function(dijit,dojo,dojox){
- dojo.provide("dojox.wire.TextAdapter");
- dojo.require("dojox.wire.CompositeWire");
- dojo.declare("dojox.wire.TextAdapter", dojox.wire.CompositeWire, {
- // summary:
- // A composite Wire for a concatenated text
- // description:
- // This class has multiple child Wires for text segment values.
- // Wires in 'segments' property are used to get text segments and
- // values are concatenated with an optional delimiter string specified
- // to 'delimiter' property.
-
- _wireClass: "dojox.wire.TextAdapter",
-
- constructor: function(/*Object*/args){
- // summary:
- // Initialize properties
- // description:
- // If array elements specified in 'segments' are not Wires, Wires
- // are created from them as arguments, with 'parent' property set
- // to this Wire instance.
- // args:
- // Arguments to initialize properties
- // segments:
- // An array containing child Wires for text segment values
- // delimiter:
- // A delimiter string
- this._initializeChildren(this.segments);
- if(!this.delimiter){
- this.delimiter = "";
- }
- },
- _getValue: function(/*Object||Array*/object){
- // summary:
- // Return a concatenated text
- // description:
- // This method calls getValue() method of the child Wires wuth
- // 'object' argument and concatenate the values with 'delimiter'
- // property to return.
- // arg:
- // A root object
- // returns:
- // A concatinated text
- if(!object || !this.segments){
- return object; //Object||Array
- }
- var text = "";
- for(var i in this.segments){
- var segment = this.segments[i].getValue(object);
- text = this._addSegment(text, segment);
- }
- return text; //String
- },
- _setValue: function(/*Object||Array*/object, /*String*/value){
- // summary:
- // Not supported
- throw new Error("Unsupported API: " + this._wireClass + "._setValue");
- },
- _addSegment: function(/*String*/text, /*String*/segment){
- // summary:
- // Return a concatenated text
- // description:
- // This method add a text segment specified to 'segment' argument
- // to a base text specified to 'text', with 'delimiter' property.
- // text:
- // A base text
- // segment:
- // A text segment to add
- // returns:
- // A concatinated text
- if(!segment){
- return text; //String
- }else if(!text){
- return segment; //String
- }else{
- return text + this.delimiter + segment; //String
- }
- }
- });
- });
|