newOpts.copyFrom(src.getOptions(), dst);
}
private void copyToolAttributes(Library srcLib, Library dstLib) {
for (Tool srcTool : srcLib.getTools()) {
AttributeSet srcAttrs = srcTool.getAttributeSet();
Tool dstTool = dstLib.getTool(srcTool.getName());
if (srcAttrs != null && dstTool != null) {
AttributeSet dstAttrs = dstTool.getAttributeSet();
for (Attribute<?> attrBase : srcAttrs.getAttributes()) {
@SuppressWarnings("unchecked")
Attribute<Object> attr = (Attribute<Object>) attrBase;
Object srcValue = srcAttrs.getValue(attr);
Object dstValue = dstAttrs.getValue(attr);
if (!dstValue.equals(srcValue)) {
dstAttrs.setValue(attr, srcValue);
attrValues.add(new RevertAttributeValue(dstAttrs, attr, dstValue));
}
}
}
}