| /** |
| * @file |
| * Handles AE's layer parenting property. |
| * |
| */ |
| |
| function HierarchyElement() {} |
| |
| HierarchyElement.prototype = { |
| /** |
| * @function |
| * Initializes hierarchy properties |
| * |
| */ |
| initHierarchy: function () { |
| // element's parent list |
| this.hierarchy = []; |
| // if element is parent of another layer _isParent will be true |
| this._isParent = false; |
| this.checkParenting(); |
| }, |
| /** |
| * @function |
| * Sets layer's hierarchy. |
| * @param {array} hierarch |
| * layer's parent list |
| * |
| */ |
| setHierarchy: function (hierarchy) { |
| this.hierarchy = hierarchy; |
| }, |
| /** |
| * @function |
| * Sets layer as parent. |
| * |
| */ |
| setAsParent: function () { |
| this._isParent = true; |
| }, |
| /** |
| * @function |
| * Searches layer's parenting chain |
| * |
| */ |
| checkParenting: function () { |
| if (this.data.parent !== undefined) { |
| this.comp.buildElementParenting(this, this.data.parent, []); |
| } |
| } |
| }; |