123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- if (!dojo._hasResource["dojox.wire.TextAdapter"]) { // _hasResource checks added
- // by build. Do not use
- // _hasResource directly in
- // your code.
- dojo._hasResource["dojox.wire.TextAdapter"] = true;
- 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
- }
- }
- });
- }
|