lib/dom/layer.js
function BaseLayer(document, group, raw) {
        this._document = document;
        this._logger = document._logger;

        if (group) {
            this._setGroup(group);
        }

        var handledProperties = this._handledProperties || {},
            property;

        for (property in raw) {
            if (raw.hasOwnProperty(property) && !handledProperties.hasOwnProperty(property)) {
                switch (property) {
                case "id":
                    this._id = raw.id;
                    break;
                case "name":
                    this._setName(raw.name);
                    break;
                case "bounds":
                    this._setBounds(raw.bounds);
                    break;
                case "artboard":
                    this._setArtboard(raw.artboard);
                    break;
                case "boundsWithFX":
                    this._setBoundsWithFX(raw.boundsWithFX);
                    break;
                case "visible":
                    this._setVisible(raw.visible);
                    break;
                case "clipped":
                    this._setClipped(raw.clipped);
                    break;
                case "mask":
                    this._setMask(raw.mask);
                    break;
                case "layerEffects":
                    this._setLayerEffects(raw.layerEffects);
                    break;
                case "generatorSettings":
                    this._setGeneratorSettings(raw.generatorSettings);
                    break;
                case "blendOptions":
                    this._setBlendOptions(raw.blendOptions);
                    break;
                case "protection":
                    this._setProtection(raw.protection);
                    break;
                case "path":
                    this._setPath(raw.path);
                    break;
                case "type":
                    this._setType(raw.type);
                    break;
                case "index":
                case "added":
                    // ignore these properties
                    break;
                default:
                    this._logger.warn("Unhandled property in raw constructor:", property, raw[property]);
            }
            }
        }
    }
function BaseLayer(document, group, raw) {
        this._document = document;
        this._logger = document._logger;

        if (group) {
            this._setGroup(group);
        }

        var handledProperties = this._handledProperties || {},
            property;

        for (property in raw) {
            if (raw.hasOwnProperty(property) && !handledProperties.hasOwnProperty(property)) {
                switch (property) {
                case "id":
                    this._id = raw.id;
                    break;
                case "name":
                    this._setName(raw.name);
                    break;
                case "bounds":
                    this._setBounds(raw.bounds);
                    break;
                case "artboard":
                    this._setArtboard(raw.artboard);
                    break;
                case "boundsWithFX":
                    this._setBoundsWithFX(raw.boundsWithFX);
                    break;
                case "visible":
                    this._setVisible(raw.visible);
                    break;
                case "clipped":
                    this._setClipped(raw.clipped);
                    break;
                case "mask":
                    this._setMask(raw.mask);
                    break;
                case "layerEffects":
                    this._setLayerEffects(raw.layerEffects);
                    break;
                case "generatorSettings":
                    this._setGeneratorSettings(raw.generatorSettings);
                    break;
                case "blendOptions":
                    this._setBlendOptions(raw.blendOptions);
                    break;
                case "protection":
                    this._setProtection(raw.protection);
                    break;
                case "path":
                    this._setPath(raw.path);
                    break;
                case "type":
                    this._setType(raw.type);
                    break;
                case "index":
                case "added":
                    // ignore these properties
                    break;
                default:
                    this._logger.warn("Unhandled property in raw constructor:", property, raw[property]);
            }
            }
        }
    }
function BaseLayer ( document , group , raw ) { this . _document = document ; this . _logger = document . _logger ; if ( group ) { this . _setGroup ( group ) ; } var handledProperties = this . _handledProperties || { } , property ; for ( property in raw ) { if ( raw . hasOwnProperty ( property ) && ! handledProperties . hasOwnProperty ( property ) ) { switch ( property ) { case "id" : this . _id = raw . id ; break ; case "name" : this . _setName ( raw . name ) ; break ; case "bounds" : this . _setBounds ( raw . bounds ) ; break ; case "artboard" : this . _setArtboard ( raw . artboard ) ; break ; case "boundsWithFX" : this . _setBoundsWithFX ( raw . boundsWithFX ) ; break ; case "visible" : this . _setVisible ( raw . visible ) ; break ; case "clipped" : this . _setClipped ( raw . clipped ) ; break ; case "mask" : this . _setMask ( raw . mask ) ; break ; case "layerEffects" : this . _setLayerEffects ( raw . layerEffects ) ; break ; case "generatorSettings" : this . _setGeneratorSettings ( raw . generatorSettings ) ; break ; case "blendOptions" : this . _setBlendOptions ( raw . blendOptions ) ; break ; case "protection" : this . _setProtection ( raw . protection ) ; break ; case "path" : this . _setPath ( raw . path ) ; break ; case "type" : this . _setType ( raw . type ) ; break ; case "index" : case "added" : // ignore these properties break ; default : this . _logger . warn ( "Unhandled property in raw constructor:" , property , raw [ property ] ) ; } } } }
Abstract base class for representing layers in a document. This should not
be instantiated directly.

@constructor
@private
@param {Document} document
@param {?LayerGroup} group The parent layer group of this layer. Null if the layer
is directly contained by the Document.
@param {object} raw Raw description of the layer.
Abstract base class for representing layers in a document . This should not be instantiated directly .