README revision e2be19408a54a8ec1c9e810ea4eaa2f0ac7cda07
a6ab8f00351265e35b79f3a22b1f5a4978ae5c35Timo SirainenThe Attribute utility allows you to add attributes to any class
a6ab8f00351265e35b79f3a22b1f5a4978ae5c35Timo Sirainenthrough an augmentable Attribute interface. The interface adds
a6ab8f00351265e35b79f3a22b1f5a4978ae5c35Timo Sirainenget and set methods to your class for attribute access, in
5fbccc935e3f7b916aa7c6e302a212821072e83aTimo Sirainenaddition to supporting change events allowing you to listen
1c633f71ec2060e5bfa500a97f34cd881a958ecdTimo Sirainenfor changes in attribute values.
acc039dfc0b0f4588cf2feec04727b61e1c672a1Timo Sirainen* Fixed ticket #2528753 : Sub attribute value crashed after setting another sub attribute.
5e327e031d1591f8bff17b67eba7139afbd36cddTimo Sirainen* writeOnce can be set to "initOnly", which can be used
5fbccc935e3f7b916aa7c6e302a212821072e83aTimo Sirainen to prevent the user from setting the value outside of the initial
5fbccc935e3f7b916aa7c6e302a212821072e83aTimo Sirainen configuration when using the addAttrs.
9ce62fcb795a4bb57f1c003fc8cbd63bff6e5463Timo Sirainen When used with Base, this means that the user can only define a
14af7be4aa26d55c341cd6efe32bb2add2c39830Aki Tuomi value for the Attribute during construction.
bf333c7645b8ddb6eedd6834db2fd908888793e1Timo Sirainen* Attribute change events are now published with the defaultTargetOnly property set to true.
* newVal property of event object passed to change event listeners will now be the value returned from the Attribute's getter (if defined)
* set/get can now be called for ad-hoc attributes (attributes which
have not been added/configured).
which Lang.isObject(newVal) returns false).
attribute-complex adds support for complex attributes ({x.y.z : 5}) to
* Removed Attribute.CLONE support in the interests of simplicity.
* Added support for setter to return Attribute.INVALID_VALUE
Event.Target now accepts an event prefix configuration value
remove/removeAll to avoid having to create object literals for
critical path [ add/get single key values ].
to lazily intialize all Attributes on the first call to get/set, for
lazyAdd:true/false can be used to over-ride this behavior for a