Fixed opacity inheritance on ungrouping, allowed blurring on groups
git-svn-id: http://svg-edit.googlecode.com/svn/trunk@1579 eee81c28-f429-11dd-99c0-75d572ba1dddmaster
parent
6ad914980d
commit
0f6da949bf
|
@ -8187,7 +8187,7 @@ function BatchCommand(text) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// only allow the transform/opacity attribute to change on <g> elements, slightly hacky
|
// only allow the transform/opacity attribute to change on <g> elements, slightly hacky
|
||||||
if (elem.tagName == "g" && (attr != "transform" && attr != "opacity")) continue;
|
if (elem.tagName == "g" && $.inArray(attr, ['transform', 'opacity', 'filter']) !== -1);
|
||||||
var oldval = attr == "#text" ? elem.textContent : elem.getAttribute(attr);
|
var oldval = attr == "#text" ? elem.textContent : elem.getAttribute(attr);
|
||||||
if (oldval == null) oldval = "";
|
if (oldval == null) oldval = "";
|
||||||
if (oldval != String(newValue)) {
|
if (oldval != String(newValue)) {
|
||||||
|
@ -8378,13 +8378,22 @@ function BatchCommand(text) {
|
||||||
|
|
||||||
var i = 0;
|
var i = 0;
|
||||||
var gangle = canvas.getRotationAngle(g);
|
var gangle = canvas.getRotationAngle(g);
|
||||||
|
|
||||||
|
var gattrs = $(g).attr(['filter', 'opacity']);
|
||||||
|
|
||||||
while (g.firstChild) {
|
while (g.firstChild) {
|
||||||
var elem = g.firstChild;
|
var elem = g.firstChild;
|
||||||
var oldNextSibling = elem.nextSibling;
|
var oldNextSibling = elem.nextSibling;
|
||||||
var oldParent = elem.parentNode;
|
var oldParent = elem.parentNode;
|
||||||
children[i++] = elem = parent.insertBefore(elem, anchor);
|
children[i++] = elem = parent.insertBefore(elem, anchor);
|
||||||
batchCmd.addSubCommand(new MoveElementCommand(elem, oldNextSibling, oldParent));
|
batchCmd.addSubCommand(new MoveElementCommand(elem, oldNextSibling, oldParent));
|
||||||
|
|
||||||
|
if(gattrs.opacity !== null && gattrs.opacity !== 1) {
|
||||||
|
var c_opac = elem.getAttribute('opacity') || 1;
|
||||||
|
var new_opac = Math.round((elem.getAttribute('opacity') || 1) * gattrs.opacity * 100)/100;
|
||||||
|
this.changeSelectedAttribute('opacity', new_opac, [elem]);
|
||||||
|
}
|
||||||
|
|
||||||
var chtlist = canvas.getTransformList(elem);
|
var chtlist = canvas.getTransformList(elem);
|
||||||
|
|
||||||
if (glist.numberOfItems) {
|
if (glist.numberOfItems) {
|
||||||
|
@ -8462,6 +8471,11 @@ function BatchCommand(text) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(gattrs.filter) {
|
||||||
|
this.changeSelectedAttribute('filter', g.getAttribute('filter'), children);
|
||||||
|
// TODO: Make the blur tool work propery on this element
|
||||||
|
}
|
||||||
|
|
||||||
// remove transform and make it undo-able
|
// remove transform and make it undo-able
|
||||||
if (xform) {
|
if (xform) {
|
||||||
var changes = {};
|
var changes = {};
|
||||||
|
|
Loading…
Reference in New Issue