📄 topflowevent.js
字号:
DrawVML();
}
if (oldValue.substr(0,4)=="2013" && oItem.value != "2013")
{
obj.ProcType = "NormalProc";
obj.ShapeType = "Rect";
obj.Width = "100";
obj.Height = "40";
DrawVML();
}
objFocusedOn(obj.ID);
}
//修改最大执行人数
function setWaittime(oItem){
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.waittime == oItem.value) return;
var oldValue = obj.waittime;
obj.waittime = oItem.value;
}
//修改运行时联线
function setIsSltTrans(oItem){
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
var isSltTrans = oItem.checked ? 1 : 0;
if(obj.isSltTrans == isSltTrans) return;
obj.isSltTrans = oItem.checked ? 1 : 0;
}
//修改所有联线使用相同权限
function setIsSameCredit(oItem){
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
var isSameCredit = oItem.checked ? 1 : 0;
if(obj.isSameCredit == isSameCredit) return;
obj.isSameCredit = oItem.checked ? 1 : 0;
}
function setPropShapeType(oItem){
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.ShapeType == oItem.value) return;
var oldValue = obj.ShapeType;
obj.ShapeType = oItem.value;
DrawVML();
objFocusedOn(obj.ID);
pushLog("editprop",{"obj":obj,"prop":"ShapeType","_old":oldValue,"_new":obj.ShapeType});
}
function setPropTextWeight(oItem){
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.TextWeight == oItem.value) return;
var oldValue = obj.TextWeight;
obj.TextWeight = oItem.value;
document.all(_FOCUSTEDOBJ.id + "Text").style.fontSize = oItem.value;
pushLog("editprop",{"obj":obj,"prop":"TextWeight","_old":oldValue,"_new":obj.TextWeight});
}
function setPropStrokeWeight(oItem){
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.StrokeWeight == oItem.value) return;
var oldValue = obj.StrokeWeight;
obj.StrokeWeight = oItem.value;
_FOCUSTEDOBJ.strokeweight = obj.StrokeWeight;
pushLog("editprop",{"obj":obj,"prop":"StrokeWeight","_old":oldValue,"_new":obj.StrokeWeight});
}
function setPropzIndex(oItem){
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.zIndex == oItem.value) return;
var oldValue = obj.zIndex;
obj.zIndex = oItem.value;
_FOCUSTEDOBJ.style.zIndex = obj.zIndex;
pushLog("editprop",{"obj":obj,"prop":"zIndex","_old":oldValue,"_new":obj.zIndex});
}
function setPropX(oItem){
var obj = _FLOW.getProcByID(_FOCUSTEDOBJ.id);
if(obj.X == oItem.value) return;
var oldValue = obj.X;
obj.X = oItem.value;
_FOCUSTEDOBJ.style.left = obj.X;
_MOVETYPE = "proc_sm"
changeProcPos(_FOCUSTEDOBJ);
pushLog("editprop",{"obj":obj,"prop":"X","_old":oldValue,"_new":obj.X});
}
function setPropY(oItem){
var obj = _FLOW.getProcByID(_FOCUSTEDOBJ.id);
if(obj.Y == oItem.value) return;
var oldValue = obj.Y;
obj.Y = oItem.value;
_FOCUSTEDOBJ.style.top = obj.Y;
_MOVETYPE = "proc_sm"
changeProcPos(_FOCUSTEDOBJ);
pushLog("editprop",{"obj":obj,"prop":"Y","_old":oldValue,"_new":obj.Y});
}
function setPropW(oItem){
var obj = _FLOW.getProcByID(_FOCUSTEDOBJ.id);
if(obj.Width == oItem.value) return;
var oldValue = obj.Width;
obj.Width = oItem.value;
_FOCUSTEDOBJ.style.width = obj.Width;
_MOVETYPE = "proc_snw"
changeProcPos(_FOCUSTEDOBJ);
pushLog("editprop",{"obj":obj,"prop":"Width","_old":oldValue,"_new":obj.Width});
}
function setPropH(oItem){
var obj = _FLOW.getProcByID(_FOCUSTEDOBJ.id);
if(obj.Height == oItem.value) return;
var oldValue = obj.Height;
obj.Height = oItem.value;
_FOCUSTEDOBJ.style.height = obj.Height;
_MOVETYPE = "proc_snw"
changeProcPos(_FOCUSTEDOBJ);
pushLog("editprop",{"obj":obj,"prop":"Height","_old":oldValue,"_new":obj.Height});
}
function setPropCond(oItem){
var obj = _FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.Cond == oItem.value) return;
var oldValue = obj.Cond;
obj.Cond = oItem.value;
document.all(_FOCUSTEDOBJ.id + "Text").innerHTML = oItem.value;
pushLog("editprop",{"obj":obj,"prop":"Cond","_old":oldValue,"_new":obj.Cond});
}
function setPropStartArrow(oItem){
var obj = _FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.StartArrow == oItem.value) return;
var oldValue = obj.StartArrow;
obj.StartArrow = oItem.value;
document.all(_FOCUSTEDOBJ.id + "Arrow").startarrow = obj.StartArrow;
pushLog("editprop",{"obj":obj,"prop":"StartArrow","_old":oldValue,"_new":obj.StartArrow});
}
function setPropEndArrow(oItem){
var obj = _FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.EndArrow == oItem.value) return;
var oldValue = obj.EndArrow;
obj.EndArrow = oItem.value;
document.all(_FOCUSTEDOBJ.id + "Arrow").endarrow = obj.EndArrow;
pushLog("editprop",{"obj":obj,"prop":"EndArrow","_old":oldValue,"_new":obj.EndArrow});
}
function setPropFromProc(oItem){
var obj = _FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.FromProc == oItem.value) return;
//判断是否已经有重复的Step
if(_FLOW.StepPathExists(oItem.value, obj.ToProc)){
alert("已经有一个路径从[" + oItem[oItem.selectedIndex].text + "]至[" + _FLOW.getProcByID(obj.ToProc).Text + "],请更改!");
oItem.focus();
return false;
}
/*if(oItem.value == obj.ToProc && obj.ShapeType == "Line"){
alert("起点与终点过程相同的[路径]只能使用折角线,请先恢复原起点并更改形状!");
oItem.focus();
return false;
}*/
if(oItem.value == obj.ToProc){
alert("不能指向本身!");
oItem.focus();
return false;
}
var oldValue = obj.FromProc;
obj.FromProc = oItem.value;
if(obj.ShapeType == "Line"){
obj.getPath();
_FOCUSTEDOBJ.from = obj.FromPoint;
_FOCUSTEDOBJ.to = obj.ToPoint;
}
else if(obj.ShapeType == "PolyLine"){
_FOCUSTEDOBJ.points.value = obj.reGetPath();
}
//DrawDataView();
pushLog("editprop",{"obj":obj,"prop":"FromProc","_old":oldValue,"_new":obj.FromProc});
}
function setPropToProc(oItem){
var obj = _FLOW.getStepByID(_FOCUSTEDOBJ.id);
if(obj.ToProc == oItem.value) return;
//判断是否已经有重复的Step
if(_FLOW.StepPathExists(obj.FromProc, oItem.value)){
alert("已经有一个路径从[" + _FLOW.getProcByID(obj.FromProc).Text + "]至[" + oItem[oItem.selectedIndex].text + "],请更改!");
oItem.focus();
return false;
}
/*if(oItem.value == obj.FromProc && obj.ShapeType == "Line"){
alert("起点与终点过程相同的[路径]只能使用折角线,请先恢复原起点并更改形状!");
oItem.focus();
return false;
}*/
if(oItem.value == obj.FromProc){
alert("不能指向本身!");
oItem.focus();
return false;
}
var oldValue = obj.ToProc;
obj.ToProc = oItem.value;
if(obj.ShapeType == "Line"){
obj.getPath();
_FOCUSTEDOBJ.from = obj.FromPoint;
_FOCUSTEDOBJ.to = obj.ToPoint;
}
else if(obj.ShapeType == "PolyLine"){
_FOCUSTEDOBJ.points.value = obj.reGetPath();
}
//DrawDataView();
pushLog("editprop",{"obj":obj,"prop":"ToProc","_old":oldValue,"_new":obj.ToProc});
}
//改变文本框
function onTextGetFocus(e,r,c)
{
e.cols=c;
e.rows=r;
}
function onTextBlur(e,r,c)
{
e.cols=c;
e.rows=r;
}
function stuffProp(){
for(var i = propview.rows.length - 1; i > 0; i--)
propview.deleteRow(i);
if(_FOCUSTEDOBJ == null) return;
var obj = _FOCUSTEDOBJ.typ == "Proc"?_FLOW.getProcByID(_FOCUSTEDOBJ.id):_FLOW.getStepByID(_FOCUSTEDOBJ.id);
var idTR, idTD, oSelect, oActSelect, oCoSelect, oOption;
//ID
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "编号";
idTD = idTR.insertCell();
idTD.innerHTML = '<input readonly type="text" rule="" msg="" onblur="if(beforePropChange(this)) setPropID(this);" name="pID" maxlength="10" value="' + obj.ID + '" style="width:95%;">';
//Text
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "名称";
idTD = idTR.insertCell();
idTD.innerHTML = '<input id="pName" type="text" maxlength="20" rule="^\\S+$" msg="[名称]不能为空或包含空字符!" onblur="if(beforePropChange(this)) setPropText(this);" name="pText" maxlength="10" value="' + obj.Text + '" style="width:95%;">';
//ShapeType
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "形状";
idTD = idTR.insertCell();
idTD.innerHTML = '<select id="pShapeType" name="pShapeType" onblur="if(beforePropChange(this)) setPropShapeType(this);" style="width:95%;"></select>';
oSelect = document.getElementById("pShapeType");
//TextWeight
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "文本大小";
idTD = idTR.insertCell();
idTD.innerHTML = '<input type="text" rule="^\\d{1,2}p[x|t]{1}$" msg="[文本大小]请输入1-2数字,并在最后加上px或pt!" onblur="if(beforePropChange(this)) setPropTextWeight(this);" name="pTextWeight" maxlength="10" value="' + obj.TextWeight + '" style="width:95%;">';
if(_FOCUSTEDOBJ.typ == "Proc"){
//活动类型
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "活动类型";
idTD = idTR.insertCell();
idTD.innerHTML = '<select id="pActType" onchange="setActFlag(this)" name="pActType" style="width:95%;"></select>';
oActSelect = document.getElementById("pActType");
//最大执行人数
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "最大执行人数";
idTD = idTR.insertCell();
idTD.innerHTML = '<input type="text" onblur="setWaittime(this)" value="'+obj.waittime+'" id="maxP" name="maxP" style="width:95%;">';
//运行时选择联线
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = ' ';
idTD = idTR.insertCell();
idTD.colSpan = "2"
idTD.innerHTML = '<input id="isSltTrans" type="checkbox" onclick="setIsSltTrans(this);"> 运行时选择联线';
if (obj.isSltTrans=="1")document.getElementById("isSltTrans").checked=true;
//运行时选择联线
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = ' ';
idTD = idTR.insertCell();
idTD.colSpan = "2"
idTD.innerHTML = '<input type="checkbox" id="isSameCredit" onclick="setIsSameCredit(this)"> 所有联线使用相同字段权限';
if (obj.isSameCredit=="1")document.getElementById("isSameCredit").checked=true;
//执行人
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "执行人";
idTD = idTR.insertCell();
idTD.innerHTML = '<input id="btnPExcuter" type="button" class="cButton" onclick="vmlOpenWin(\'excuter.htm\',\'\',675,455)" value="...">';
idTD.innerHTML += '<span id="txtPExcuter"></span>'
showExcuter(obj.ID);
//待阅人
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "待阅人";
idTD = idTR.insertCell();
idTD.innerHTML = '<input id="btnPReader" type="button" class="cButton" onclick="vmlOpenWin(\'excuter.htm\',\'\',675,455)" value="...">';
//X
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "X轴坐标";
idTD = idTR.insertCell();
idTD.innerHTML = '<input type="text" rule="^\\d{1,4}p{0,1}x{0,1}$" msg="[图形X坐标]请输入1-4数字!" onblur="if(beforePropChange(this)) setPropX(this);" name="pX" maxlength="10" value="' + obj.X + '" style="width:95%;">';
//Y
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "Y轴坐标";
idTD = idTR.insertCell();
idTD.innerHTML = '<input type="text" rule="^\\d{1,4}p{0,1}x{0,1}$" msg="[图形Y坐标]请输入1-4数字!" onblur="if(beforePropChange(this)) setPropY(this);" name="pY" maxlength="10" value="' + obj.Y + '" style="width:95%;">';
//Width
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.innerHTML = "图形宽度";
idTD.align = "right";
idTD = idTR.insertCell();
idTD.innerHTML = '<input type="text" rule="^\\d{1,4}p{0,1}x{0,1}$" msg="[图形宽度]请输入1-4数字!" onblur="if(beforePropChange(this)) setPropW(this);" name="pWidth" name="pWidth" maxlength="10" value="' + obj.Width + '" style="width:95%;">';
//Height
idTR = propview.insertRow();
idTR.height = "25";
idTR.className="obj";
idTD = idTR.insertCell();
idTD.noWrap = true;
idTD.style.width = "79";
idTD.align = "right";
idTD.innerHTML = "图形高度";
idTD = idTR.insertCell();
idTD.innerHTML = '<input type="text" rule="^\\d{1,4}p{0,1}x{0,1}$" msg="[图形高度]请输入1-4数字!" onblur="if(beforePropChange(this)) setPropH(this);" name="pHeight" maxlength="10" value="' + obj.Height + '" style="width:95%;">';
//填充形状
oOption = document.createElement("OPTION");
oSelect.options.add(oOption);
oOption.innerText = "圆形";
oOption.value = "Oval";
oOption = document.createElement("OPTION");
oSelect.options.add(oOption);
oOption.innerText = "方形";
oOption.value = "Rect";
oOption = document.createElement("OPTION");
oSelect.options.add(oOption);
oOption.innerText = "圆角形";
oOption.value = "RoundRect";
oOption = document.createElement("OPTION");
oSelect.options.add(oOption);
oOption.innerText = "菱形";
oOption.value = "Diamond";
oSelect.value = obj.ShapeType;
oOption = document.createElement("OPTION");
oActSelect.options.add(oOption);
oOption.innerText = "第一个活动";
oOption.value = "1013";
oOption = document.createElement("OPTION");
oActSelect.options.add(oOption);
oOption.innerText = "并发群组";
oOption.value = "0013";
oOption = document.createElement("OPTION");
oActSelect.options.add(oOption);
oOption.innerText = "协作群组";
oOption.value = "0014";
oOption = document.createElement("OPTION");
oActSelect.options.add(oOption);
oOption.innerText = "串行群组";
oOption.value = "0015";
oOption = document.createElement("OPTION");
oActSelect.options.add(oOption);
oOption.innerText = "分支";
oOption.value = "0213";
oOption = document.createElement("OPTION");
oActSelect.options.add(oOption);
oOption.innerText = "同步";
oOption.value = "0113";
oOption = document.createElement("OPTION");
oActSelect.options.add(oOption);
oOption.innerText = "结束";
oOption.value = "2013";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -