快捷调整间距(暂停)
This commit is contained in:
parent
c41fb2a31b
commit
60e400e8cc
@ -912,12 +912,12 @@
|
||||
<li ac="selectall">全选
|
||||
<div class="extend">Ctrl+A</div>
|
||||
</li>
|
||||
<li ac="selectVertical">调整垂直间距
|
||||
<div class="extend"></div>
|
||||
</li>
|
||||
<li ac="selectHorizontal">调整水平间距
|
||||
<div class="extend"></div>
|
||||
</li>
|
||||
<!-- <li ac="selectVertical">调整垂直间距-->
|
||||
<!-- <div class="extend"></div>-->
|
||||
<!-- </li>-->
|
||||
<!-- <li ac="selectHorizontal">调整水平间距-->
|
||||
<!-- <div class="extend"></div>-->
|
||||
<!-- </li>-->
|
||||
<li class="devider devi_selectall"></li>
|
||||
<li ac="drawline">
|
||||
<div class="ico linkertype_normal"></div>创建连线
|
||||
|
||||
@ -6,6 +6,8 @@ Designer.contextMenu.show = function(x, y) {
|
||||
var currentFocus = Utils.getShapeByPosition(x, y, false);
|
||||
menu.children().hide();
|
||||
menu.children("li[ac=selectall]").show();
|
||||
menu.children("li[ac=selectVertical]").show();
|
||||
menu.children("li[ac=selectHorizontal]").show();
|
||||
menu.children(".devi_selectall").show();
|
||||
menu.children("li[ac=drawline]").show();
|
||||
menu.children("li[ac=processAttribute]").show();
|
||||
@ -163,6 +165,10 @@ Designer.contextMenu.execAction = function(item) {
|
||||
showPropertiesDialog(true);
|
||||
} else if (action == "customdefine") {
|
||||
openCustomDefineDialog();
|
||||
} else if(action == 'selectVertical') {
|
||||
Designer.selectVertical(this.menuPos);
|
||||
} else if (action == 'selectHorizontal') {
|
||||
Designer.selectHorizontal(this.menuPos);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@ -17,55 +17,216 @@ Designer.addFunction("open", function(definition){
|
||||
$(".shape_box").remove();
|
||||
Model.define.elements = {};
|
||||
Model.persistence.elements = {};
|
||||
Model.define.page = definition.page;
|
||||
Model.define.page = definition.page;
|
||||
|
||||
//*******此处添加AWS流程设计器特有的属性*******//
|
||||
Model.define.processProperties=definition.processProperties;//此处添加aws全局属性
|
||||
Model.define.processDocument=definition.processDocument;//此处添加aws全局属性
|
||||
Model.define.uuid=definition.uuid;//此处添加流程uuid
|
||||
//Model.define.title=definition.title;//此处添加流程title
|
||||
//向页面processDefId processDefTitle 赋值
|
||||
//process.processDefId=definition.uuid;
|
||||
process.title=definition.title;
|
||||
Model.define.processProperties=definition.processProperties;//此处添加aws全局属性
|
||||
Model.define.processDocument=definition.processDocument;//此处添加aws全局属性
|
||||
Model.define.uuid=definition.uuid;//此处添加流程uuid
|
||||
//Model.define.title=definition.title;//此处添加流程title
|
||||
//向页面processDefId processDefTitle 赋值
|
||||
//process.processDefId=definition.uuid;
|
||||
process.title=definition.title;
|
||||
//*******添加结束*******//
|
||||
|
||||
Model.persistence.page = Utils.copy(definition.page);
|
||||
Designer.initialize.initCanvas();
|
||||
var shapes = definition.elements;
|
||||
//先构造形状,再构造连接线,因为连接线的绘制过程有可能依赖所连接的图形
|
||||
var shapeCount = 0;
|
||||
for(var shapeId in shapes){
|
||||
var shape = shapes[shapeId];
|
||||
if(shape.name != "linker"){
|
||||
Schema.initShapeFunctions(shape);
|
||||
Designer.painter.renderShape(shape);
|
||||
Model.add(shape, false);
|
||||
}
|
||||
shapeCount++;
|
||||
}
|
||||
for(var shapeId in shapes){
|
||||
var shape = shapes[shapeId];
|
||||
if(shape.name == "linker"){
|
||||
Designer.painter.renderLinker(shape);
|
||||
Model.add(shape, false);
|
||||
}
|
||||
}
|
||||
if(shapeCount == 0){
|
||||
Model.build();
|
||||
}
|
||||
Navigator.draw();
|
||||
Model.persistence.page = Utils.copy(definition.page);
|
||||
Designer.initialize.initCanvas();
|
||||
var shapes = definition.elements;
|
||||
//先构造形状,再构造连接线,因为连接线的绘制过程有可能依赖所连接的图形
|
||||
var shapeCount = 0;
|
||||
for(var shapeId in shapes){
|
||||
var shape = shapes[shapeId];
|
||||
if(shape.name != "linker"){
|
||||
Schema.initShapeFunctions(shape);
|
||||
Designer.painter.renderShape(shape);
|
||||
Model.add(shape, false);
|
||||
}
|
||||
shapeCount++;
|
||||
}
|
||||
for(var shapeId in shapes){
|
||||
var shape = shapes[shapeId];
|
||||
if(shape.name == "linker"){
|
||||
Designer.painter.renderLinker(shape);
|
||||
Model.add(shape, false);
|
||||
}
|
||||
}
|
||||
if(shapeCount == 0){
|
||||
Model.build();
|
||||
}
|
||||
Navigator.draw();
|
||||
});
|
||||
|
||||
/**
|
||||
* 设计器方法:全选
|
||||
*/
|
||||
Designer.addFunction("selectAll", function(){
|
||||
var shapes = Model.define.elements;
|
||||
var shapeIds = [];
|
||||
for(var shapeId in shapes){
|
||||
shapeIds.push(shapeId);
|
||||
}
|
||||
Utils.selectShape(shapeIds);
|
||||
var shapes = Model.define.elements;
|
||||
var shapeIds = [];
|
||||
for(var shapeId in shapes){
|
||||
shapeIds.push(shapeId);
|
||||
}
|
||||
Utils.selectShape(shapeIds);
|
||||
});
|
||||
|
||||
/**
|
||||
* 设计器方法:调节垂直间距
|
||||
*/
|
||||
Designer.addFunction("selectVertical", function(menuPos){
|
||||
var selectedIds = [];
|
||||
var lineArr = []
|
||||
var shapeArr = []
|
||||
var menuY = menuPos.y
|
||||
var shapes = Model.define.elements;
|
||||
console.log(shapes)
|
||||
|
||||
var subline1 = $('#designer_subline1')
|
||||
var subline2 = $('#designer_subline2')
|
||||
subline1.css({
|
||||
display : "block",
|
||||
"z-index" : Model.orderList.length + 4,
|
||||
width: Model.define.page.width,
|
||||
height: 0,
|
||||
borderStyle:'dotted',
|
||||
borderWidth: '1px',
|
||||
left: 0,
|
||||
top : menuY
|
||||
});
|
||||
subline2.css({
|
||||
display : "block",
|
||||
"z-index" : Model.orderList.length + 5,
|
||||
width: Model.define.page.width,
|
||||
height: 0,
|
||||
borderStyle:'dotted',
|
||||
borderWidth: '1px',
|
||||
left: 0,
|
||||
top : menuY,
|
||||
cursor: 'move'
|
||||
});
|
||||
|
||||
var container = $("#canvas_container");
|
||||
var canvas = $("#designer_canvas");
|
||||
subline2.bind('mousedown.drag',function (b) {
|
||||
container.bind('mousemove.drag',function (e) {
|
||||
var newPos = Utils.getRelativePos(e.pageX, e.pageY, canvas);
|
||||
if (newPos.y >= menuY) {
|
||||
subline1.css({
|
||||
backgroundColor: 'rgba(114,253,107,0.5)',
|
||||
height: newPos.y - menuY
|
||||
})
|
||||
subline2.css({
|
||||
backgroundColor: 'translate',
|
||||
height: 0
|
||||
})
|
||||
} else {
|
||||
subline1.css({
|
||||
backgroundColor: 'translate',
|
||||
height: 0
|
||||
})
|
||||
subline2.css({
|
||||
backgroundColor: 'rgba(246,163,163,0.5)',
|
||||
height: menuY - newPos.y
|
||||
})
|
||||
}
|
||||
subline2.css({
|
||||
top : newPos.y,
|
||||
});
|
||||
$(document).unbind("mouseup.drop").bind("mouseup.drop",
|
||||
function() {
|
||||
subline1.css({
|
||||
backgroundColor: 'translate',
|
||||
height: 0
|
||||
})
|
||||
subline2.css({
|
||||
backgroundColor: 'translate',
|
||||
height: 0
|
||||
})
|
||||
subline1.hide()
|
||||
subline2.hide()
|
||||
$(document).unbind("mouseup.drop")
|
||||
})
|
||||
})
|
||||
$(document).bind('mouseup.drag',function () {
|
||||
container.unbind("mousemove.drag");
|
||||
// subline2.unbind("mousedown.drag");
|
||||
$(document).unbind("mouseup.drag");
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
for(var shapeId in shapes){
|
||||
if (shapes[shapeId].points == undefined) {
|
||||
shapeArr.push(shapes[shapeId])
|
||||
} else {
|
||||
lineArr.push(shapes[shapeId])
|
||||
}
|
||||
}
|
||||
|
||||
for (var i = 0; i < shapeArr.length; i++) {
|
||||
if (shapeArr[i].props.y + shapeArr[i].props.h >= menuY) {
|
||||
selectedIds.push(shapeArr[i].id)
|
||||
}
|
||||
}
|
||||
for (var i = 0; i < lineArr.length; i++) {
|
||||
if (lineArr[i].from.y >= menuY || lineArr[i].to.y >= menuY) {
|
||||
selectedIds.push(lineArr[i].id)
|
||||
}
|
||||
}
|
||||
// Utils.selectShape(selectedIds);
|
||||
|
||||
|
||||
// for (var i = 0; i < selectedIds.length; i++) {
|
||||
// N(selectedIds[i])
|
||||
// $(".shape_contour[forshape=" + selectedIds[i].id + "]").css({
|
||||
// left: selectedIds[i].props.x.toScale(),
|
||||
// top: selectedIds[i].props.y.toScale()
|
||||
// })
|
||||
// }
|
||||
// var K = Utils.getSelectedLinkerIds();
|
||||
// if (selectedIds.length == 1 && K.length == 1) {
|
||||
// return
|
||||
// }
|
||||
// if (K.length > 0) {
|
||||
// var I = Utils.getSelectedIds();
|
||||
// Designer.painter.drawControls(I)
|
||||
// } else {
|
||||
// var E = $("#shape_controls");
|
||||
// E.css({
|
||||
// left: parseFloat(E.css("left")),
|
||||
// top: parseFloat(E.css("top")) + 100
|
||||
// })
|
||||
// }
|
||||
// var F = $("#shape_controls").position();
|
||||
// if (F && Utils.getSelected().length > 0) {
|
||||
// Designer.op.showTip("X: " + Math.round(F.left.restoreScale()) + " Y: " + Math.round(F.top.restoreScale()));
|
||||
// }
|
||||
// function N(a) {
|
||||
// a.props.x += 0;
|
||||
// a.props.y += 100;
|
||||
// var b = $("#" + a.id);
|
||||
// b.css({
|
||||
// left: parseFloat(b.css("left")),
|
||||
// top: parseFloat(b.css("top")) + 100
|
||||
// })
|
||||
// }
|
||||
});
|
||||
|
||||
/**
|
||||
* 设计器方法:调节水平间距
|
||||
*/
|
||||
Designer.addFunction("selectHorizontal", function(menuPos){
|
||||
var menuX = menuPos.x
|
||||
let subline = $('#designer_subline')
|
||||
console.log(subline)
|
||||
subline.css({
|
||||
display : "block",
|
||||
"z-index" : Model.orderList.length + 4,
|
||||
width: 0,
|
||||
height: Model.define.page.height,
|
||||
borderStyle:'dotted',
|
||||
borderWidth: '1px',
|
||||
left: menuX,
|
||||
top :0,
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
|
||||
Loading…
Reference in New Issue
Block a user