设计器快捷调整间距撤销回显 bug解决
This commit is contained in:
parent
46f87c615f
commit
17dbfd1a62
@ -291,6 +291,18 @@ function moveShapeAndFile(type,sublinePos,movedDistance) {
|
||||
var passedMoreShapes = obj.passedMoreShapes
|
||||
var laneArr = obj.laneArr
|
||||
|
||||
if(laneArr.length == 0) {
|
||||
if(type == 'y') {
|
||||
Designer.op.moveShape(movingShapes,{
|
||||
x: 0,
|
||||
y: movedDistance
|
||||
})
|
||||
} else if(type == 'x') {
|
||||
Designer.op.moveShape(movingShapes,{
|
||||
x: movedDistance,
|
||||
y: 0
|
||||
})
|
||||
}
|
||||
for (let i = 0; i < movingLines.length; i++) {
|
||||
let fromIndex = passedShapes.findIndex(item => item.id == movingLines[i].from.id)
|
||||
let toIndex = passedShapes.findIndex(item => item.id == movingLines[i].to.id)
|
||||
@ -326,19 +338,6 @@ function moveShapeAndFile(type,sublinePos,movedDistance) {
|
||||
}
|
||||
Designer.painter.renderLinker(movingLines[i])
|
||||
}
|
||||
|
||||
if(laneArr.length == 0) {
|
||||
if(type == 'y') {
|
||||
Designer.op.moveShape(movingShapes,{
|
||||
x: 0,
|
||||
y: movedDistance
|
||||
})
|
||||
} else if(type == 'x') {
|
||||
Designer.op.moveShape(movingShapes,{
|
||||
x: movedDistance,
|
||||
y: 0
|
||||
})
|
||||
}
|
||||
Designer.op.hideTip();
|
||||
Utils.unselect();
|
||||
|
||||
@ -355,6 +354,8 @@ function moveLanes(type,sublinePos,movedDistance) {
|
||||
var obj = filterShapeAndLine(type,sublinePos)
|
||||
var movingLines = obj.movingLines
|
||||
var movingShapes = obj.movingShapes
|
||||
var passedShapes = obj.passedShapes
|
||||
var passedMoreShapes = obj.passedMoreShapes
|
||||
var laneArr = obj.laneArr
|
||||
var laneGroupArr = []
|
||||
var changedLanes = []
|
||||
@ -509,6 +510,42 @@ function moveLanes(type,sublinePos,movedDistance) {
|
||||
})
|
||||
}
|
||||
|
||||
for (let i = 0; i < movingLines.length; i++) {
|
||||
let fromIndex = passedShapes.findIndex(item => item.id == movingLines[i].from.id)
|
||||
let toIndex = passedShapes.findIndex(item => item.id == movingLines[i].to.id)
|
||||
|
||||
let moreFromIndex = passedMoreShapes.findIndex(item => item.id == movingLines[i].from.id)
|
||||
let moreToIndex = passedMoreShapes.findIndex(item => item.id == movingLines[i].to.id)
|
||||
|
||||
for (let j = 0; j < movingLines[i].points.length; j++) {
|
||||
if(movingLines[i].points[j][type] > sublinePos ) {
|
||||
movingLines[i].points[j][type] += movedDistance
|
||||
}
|
||||
}
|
||||
|
||||
if (movingLines[i].from[type] > sublinePos && moreFromIndex == -1) {
|
||||
movingLines[i].from[type] += movedDistance
|
||||
} else if(movingLines[i].from[type] <= sublinePos && fromIndex !== -1) {
|
||||
for (let j = 0; j < movingLines[i].points.length; j++) {
|
||||
if(movingLines[i].points[j][type] == movingLines[i].from[type]) {
|
||||
movingLines[i].points[j][type] += movedDistance
|
||||
}
|
||||
}
|
||||
movingLines[i].from[type] += movedDistance
|
||||
}
|
||||
if (movingLines[i].to[type] > sublinePos && moreToIndex == -1) {
|
||||
movingLines[i].to[type] += movedDistance
|
||||
} else if(passedShapes.length > 0 && movingLines[i].to[type] <= sublinePos && toIndex !== -1) {
|
||||
for (let j = 0; j < movingLines[i].points.length; j++) {
|
||||
if(movingLines[i].points[j][type] == movingLines[i].to[type]) {
|
||||
movingLines[i].points[j][type] += movedDistance
|
||||
}
|
||||
}
|
||||
movingLines[i].to[type] += movedDistance
|
||||
}
|
||||
Designer.painter.renderLinker(movingLines[i])
|
||||
}
|
||||
|
||||
Designer.op.hideTip();
|
||||
Utils.unselect();
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user