Skip to content

Commit

Permalink
#102 - Ignored property added to ignore elements
Browse files Browse the repository at this point in the history
  • Loading branch information
Gulix committed Aug 16, 2016
1 parent d1c0a1d commit 440d936
Showing 1 changed file with 15 additions and 7 deletions.
22 changes: 15 additions & 7 deletions src/js/inheriting-styles.js
Expand Up @@ -19,17 +19,17 @@ define(['utils'], function(Utils) {
var parentField = getFieldByName(parentStyle.fields, childField.name);
if (parentField == null) {
// Field not modified by parentStyle
builtStyle.fields.push(childField);
} else if (heri) {
builtStyle.fields.push(Object.assign(childField, parentField));
addElementTo(childField, builtStyle.fields);
} else {
addElementTo(Object.assign(childField, parentField), builtStyle.fields);
}
}
// Adding the fields existing only in the parentStyle
for (var iParentField = 0; iParentField < parentStyle.fields.length; iParentField++) {
var parentField = Utils.clone(parentStyle.fields[iParentField]);
var childField = getFieldByName(childStyle.fields, parentField.name);
if (childField == null) {
builtStyle.fields.push(parentField);
addElementTo(parentField, builtStyle.fields);
}
}

Expand All @@ -44,9 +44,9 @@ define(['utils'], function(Utils) {
}
if (parentField == null) {
// Field not modified by parentStyle
builtStyle.canvasFields.push(childField);
addElementTo(childField, builtStyle.canvasFields);
} else {
builtStyle.canvasFields.push(Object.assign(childField, parentField));
addElementTo(Object.assign(childField, parentField), builtStyle.canvasFields);
}
}
// Adding the canvasFields existing only in the parentStyle
Expand All @@ -57,7 +57,7 @@ define(['utils'], function(Utils) {
childField = getCanvasFieldById(childStyle.canvasFields, parentField.id);
}
if (childField == null) {
builtStyle.canvasFields.push(parentField);
addElementTo(parentField, builtStyle.canvasFields);
}
}

Expand All @@ -84,6 +84,14 @@ define(['utils'], function(Utils) {
return field;
}

// Simply push the element to an array, unless it is 'ignored'
function addElementTo(element, arrayTo) {
if ((element != null) && (arrayTo != null) && (element.ignored != true))
{
arrayTo.push(element);
}
}

return {
getStyleFromBase: function(parentStyle, childStyle) { return getStyleFromBase(parentStyle, childStyle); }
}
Expand Down

0 comments on commit 440d936

Please sign in to comment.