Sha256: a5a0c292dbbe3807fe01e6f3720bebf75713262798fabc2a7906c53e60860a50

Contents?: true

Size: 754 Bytes

Versions: 2

Compression:

Stored size: 754 Bytes

Contents

include('observable.js');

uki.data.Model = uki.newClass(uki.data.Observable, function(Observable) {
    
    this.change = this.update = function(values, arg2) {
        var changes = {}, fields = [];
        if (arg2 !== undefined) {
            var tmp = {};
            tmp[values] = arg2;
            values = tmp;
        }
        uki.each(values, function(i) {
            if (this[i] != values[i]) {
                changes[i] = true
                fields.push(i);
                this[i] = values[i];
            }
        }, this);
        
        this._triggerChange({changes: changes, fields: fields, model: this});
        return this;
    };
    
    this._triggerChange = function(e) {
        this.trigger('change', e);
    };
    
});

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
uki-1.0.1 frameworks/uki/src/uki-data/model.js
uki-1.0.0 frameworks/uki/src/uki-data/model.js