亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? topflow.js

?? vml 資料,安例精彩,希望對大家有幫助
?? JS
?? 第 1 頁 / 共 3 頁
字號:
  this.Modified = false;
  this.Steps = [];
  this.Procs = [];
  this.SelectedObject = null;
  this.Password = "";
  this.Config = {
    _ProcColor                : "#FF0000",  //開始/結(jié)束
    _ProcTextColor            : "#FF0000",  //開始/結(jié)束
    ProcColor                 : "#0000FF",
    ProcTextColor             : "#0000FF",
    ProcFocusedStrokeColor    : "#FFFF00",
    IsProcShadow              : "T",
    ProcShadowColor           : "#B3B3B3",
    ProcColor1                : "#FFFFFF",
    ProcColor2                : "#FFFFFF",
    IsProc3D                  : "F",
    Proc3DDepth               : "20",
    StepFocusedStrokeColor    : "#904E80",
    StepColor                 : "#0000FF"
  }
}

//
TTopFlow.prototype.getInnerObject = function(){
  for(var i = 0;i<this.Procs.length; i++)
    this.Procs[i].getInnerObject();
  for(i = 0;i<this.Steps.length; i++)
    this.Steps[i].getInnerObject();
}
//選中某個對象
TTopFlow.prototype.selectObject = function(aID, aType){
  this.unSelectObject();
  this.SelectedObject = (aType == "Proc")?this.getProcByID(aID):this.getStepByID(aID);
  this.SelectedObject.setFocus();
}

//取消選中某個對象
TTopFlow.prototype.unSelectObject = function(){
  if(this.SelectedObject != null) this.SelectedObject.lostFocus();
  this.SelectedObject = null;
}

//清除流程圖的內(nèi)容
TTopFlow.prototype.clear = function(){
  this.FileName = '';
  this.Steps.length = 0;
  this.Procs.length = 0;
}

//新建流程圖
TTopFlow.prototype.createNew = function(AName){
  this.clear();
  //增加開始結(jié)點(diǎn)
  Proc = new TProc(this, "begin");
  Proc.Text = "開始";
  Proc.ShapeType = "Oval";
  Proc.ProcType = "BeginProc";
  Proc.X = "0";
  Proc.Y = "30";
  this.addProc(Proc);
  //增加結(jié)束結(jié)點(diǎn)
  Proc = new TProc(this, "end");
  Proc.Text = "結(jié)束";
  Proc.ShapeType = "Oval";
  Proc.ProcType = "EndProc";
  Proc.X = "700";
  Proc.Y = "350";
  this.addProc(Proc);
}

//添加流程圖的[任務(wù)]元素對象
TTopFlow.prototype.addProc = function(AProc){
  if(this.Procs.length >= 20){
    alert("根據(jù)比賽要求,最多不允許超過20個任務(wù)!");
    return false;
  }
  this.Modified = true;
  this.Procs[this.Procs.length] = AProc;
}

//添加流程圖的[路徑]元素對象
TTopFlow.prototype.addStep = function(AStep){
  this.Steps[this.Steps.length] = AStep;
  this.Modified = true;
}

TTopFlow.prototype.changeProcID = function(OldID, NewID){alert("changeProcID");
  var Step;
  for(var i = 0; i< this.Steps.length; i++){
    Step = this.Steps[i];
    if(Step.FromProc == OldID) Step.FromProc = NewID;
    if(Step.ToProc == OldID) Step.ToProc = NewID;
  }
}
//獲取一個[任務(wù)]的二維數(shù)據(jù)集視圖
TTopFlow.prototype.getProcDataView = function(AProcID){
  var arr = [], Step;
  for(var i = 0; i < this.Steps.length; i++){
    Step = this.Steps[i];
    if(Step.ToProc == AProcID){
      S = this.getProcByID(Step.FromProc).Text;
      arr[arr.length] = new Array(Step.ID, S, Step.Cond);
    }
  }
  return arr;
}

//獲取整個[流程圖]的二維數(shù)據(jù)集視圖
TTopFlow.prototype.DataView = function(){
  var Proc; arrDataView = [], arr = [];
  var i,j, u, k = 0;
  for(i = 0; i < this.Procs.length; i++){
    Proc = this.Procs[i];
    arr.length = 0;
    arr = this.getProcDataView(Proc.ID);
    u = arr.length;
    if(u != undefined && u != null && u > 0){
      for(j = 0; j < arr.length; j++){
        arrDataView[k++] = {
          "ProcID"      : Proc.ID,
          "ProcText"    : Proc.Text,
          "Idx"         : j + 1,
          "PreProcID"   : arr[j][0],
          "PreProcText" : arr[j][1],
          "Cond"        : arr[j][2]
        }
      }
    }
  }
  return arrDataView;
}

TTopFlow.prototype.hasPriorProc = function(AProcID){
  for(var i = 0; i < this.Steps.length; i++)
    if(this.Steps[i].ToProc == AProcID) return true;
  return false;
}

TTopFlow.prototype.hasNextProc = function(AProcID){
  for(var i = 0; i < this.Steps.length; i++)
    if(this.Steps[i].FromProc == AProcID) return true;
  return false;
}

TTopFlow.prototype.validate = function(){
  var ErrMsg = []; WarnMsg = [];
  var Proc, PType;
  for(var i = 0; i < this.Procs.length; i++){
    Proc = this.Procs[i];
    PType = (Proc.ProcType == "NormalProc"?"中間任務(wù)":(Proc.ProcType == "BeginProc"?"開始任務(wù)":"結(jié)束任務(wù)"));
    if(Proc.ProcType == "NormalProc" || Proc.ProcType == "EndProc")
      if(!this.hasPriorProc(Proc.ID)) ErrMsg.push("[" + Proc.Text + "] - " + PType + "必須有輸入路徑");
    if(Proc.ProcType == "NormalProc" || Proc.ProcType == "BeginProc")
      if(!this.hasNextProc(Proc.ID)) ErrMsg.push("[" + Proc.Text + "] - " + PType + "必須有輸出路徑");
  }
  return ErrMsg.join("\n") + WarnMsg.join("\n");
}
//從XML文件中載入流程圖
TTopFlow.prototype.loadFromXML = function(AFileName){
  this.clear();
  this.FileName = AFileName;

  var xmlDoc = new ActiveXObject('MSXML2.DOMDocument');
  xmlDoc.async = false;
  var flag = xmlDoc.load('data/' + AFileName);
  //var flag = xmlDoc.load('/_CommitSys/_CommitFlow/_createFlowXML.asp?defid='+AFileName);
  if (!flag) {
    alert('文件[' + AFileName + '載入失敗!');
    this.createNew("");
    return false;
  }
  var xmlRoot = xmlDoc.documentElement;
  this.Text = xmlRoot.getAttribute("text");
  this.Password = xmlRoot.getAttribute("password");
  this.ID = xmlRoot.getAttribute("id");
  this.FormID = xmlRoot.getAttribute("formid");
  //Load Proc
  var Procs = xmlRoot.getElementsByTagName("Procs").item(0);       
  var id, oNode, Prop;
  for (i = 0;i < Procs.childNodes.length;i++) {
    var Proc = Procs.childNodes.item(i);
    Prop = Proc.getElementsByTagName("BaseProperties").item(0);
    id = Prop.getAttribute("id");
    oNode = new TProc(this,id);
    oNode.Text = Prop.getAttribute("text");
    oNode.ProcType = Prop.getAttribute("procType");

	//新增
	oNode.actFlag = Prop.getAttribute("actFlag");
	oNode.waittime = Prop.getAttribute("waittime");
	oNode.isSltTrans = Prop.getAttribute("isSltTrans");
	oNode.isSameCredit = Prop.getAttribute("isSameCredit");
    
    Prop = Proc.getElementsByTagName("VMLProperties").item(0);
    oNode.ShapeType = Prop.getAttribute("shapetype");
    oNode.Width = Prop.getAttribute("width");
    oNode.Height = Prop.getAttribute("height");
    oNode.X = Prop.getAttribute("x");
    oNode.Y = Prop.getAttribute("y");
    oNode.TextWeight = Prop.getAttribute("textWeight");
    oNode.StrokeWeight = Prop.getAttribute("strokeWeight");
    oNode.zIndex = Prop.getAttribute("zIndex");
    if(oNode.zIndex =='') oNode.zIndex = this.getMinZIndex() - 1;
    this.addProc(oNode);
  }
  //Load Step
  var Steps = xmlRoot.getElementsByTagName("Steps").item(0);
  for (i = 0;i < Steps.childNodes.length;i++){
    var Step = Steps.childNodes.item(i);
    Prop = Step.getElementsByTagName("BaseProperties").item(0);
    id = Prop.getAttribute("id");
    oNode = new TStep(this,id);
    oNode.Text = Prop.getAttribute("text");
    oNode.FromProc = Prop.getAttribute("from");
    oNode.ToProc = Prop.getAttribute("to");
    oNode.Cond = Prop.getAttribute("cond");
	oNode.Cond = oNode.Cond.replace(/\'/g,'"')
	

    Prop = Step.getElementsByTagName("VMLProperties").item(0);
	oNode.Points = Prop.getAttribute("points"); 
	oNode.fromRelX = Prop.getAttribute("fromRelX");
	oNode.fromRelY = Prop.getAttribute("fromRelY");
	oNode.toRelX = Prop.getAttribute("toRelX");
	oNode.toRelY = Prop.getAttribute("toRelY");
    oNode.ShapeType = Prop.getAttribute("shapetype");
    oNode.StartArrow = Prop.getAttribute("startArrow");
    oNode.EndArrow = Prop.getAttribute("endArrow");
    oNode.StrokeWeight = Prop.getAttribute("strokeWeight");
    oNode.zIndex = Prop.getAttribute("zIndex");
    if(oNode.zIndex =='') oNode.zIndex = this.getMinZIndex() - 1;   
    this.addStep(oNode);
  }
  this.Modified = false;
  return true;
}

//將流程圖保存至服務(wù)器上的XML文件中
TTopFlow.prototype.SaveToXML = function(AUrl){
  var xmlDoc = new ActiveXObject('MSXML2.DOMDocument');
  xmlDoc.async = false;
  xmlDoc.loadXML('<?xml version="1.0" encoding="GBK"?><TopFlow/>');
  var xmlRoot = xmlDoc.documentElement;
  var xmlNodeGrp, xmlNode, xmlNode2;
  xmlRoot.setAttribute("id", this.ID);
  xmlRoot.setAttribute("formid", this.FormID);//新增
  xmlRoot.setAttribute("filename", this.FileName);
  xmlRoot.setAttribute("text", this.Text);
  xmlRoot.setAttribute("password", this.Password);
  
  //Save Proc
  var xmlNodeGrp = xmlDoc.createNode(1,"Procs",""); 
  xmlRoot.appendChild(xmlNodeGrp);
  for(var i = 0; i < this.Procs.length; i++){
    Proc = this.Procs[i];
    xmlNode = xmlDoc.createNode(1, "Proc", "");
    xmlNode2 = xmlDoc.createNode(1, "BaseProperties", "");
    xmlNode2.setAttribute("id", Proc.ID);
    xmlNode2.setAttribute("text", Proc.Text);
    xmlNode2.setAttribute("procType", Proc.ProcType);

	xmlNode2.setAttribute("actFlag", Proc.actFlag);
	xmlNode2.setAttribute("waittime", Proc.waittime);
	xmlNode2.setAttribute("isSltTrans", Proc.isSltTrans);
	xmlNode2.setAttribute("isSameCredit", Proc.isSameCredit);

    xmlNode.appendChild(xmlNode2);

    xmlNode2 = xmlDoc.createNode(1, "VMLProperties", "");
    xmlNode2.setAttribute("shapetype", Proc.ShapeType);
    xmlNode2.setAttribute("width", Proc.Width);
    xmlNode2.setAttribute("height", Proc.Height);
    xmlNode2.setAttribute("x", Proc.X);
    xmlNode2.setAttribute("y", Proc.Y);
    xmlNode2.setAttribute("textWeight", Proc.TextWeight);
    xmlNode2.setAttribute("strokeWeight", Proc.StrokeWeight);
    xmlNode2.setAttribute("zIndex", Proc.zIndex);
    xmlNode.appendChild(xmlNode2);

    xmlNodeGrp.appendChild(xmlNode);
  }
  //Save Step
  xmlNodeGrp = xmlDoc.createNode(1,"Steps",""); 
  xmlRoot.appendChild(xmlNodeGrp);
  for(i = 0; i < this.Steps.length; i++){
    Step = this.Steps[i];
    xmlNode = xmlDoc.createNode(1, "Step", "");

    xmlNode2 = xmlDoc.createNode(1, "BaseProperties", "");
    xmlNode2.setAttribute("id", Step.ID);
    xmlNode2.setAttribute("text", Step.Text);
    xmlNode2.setAttribute("from", Step.FromProc);
    xmlNode2.setAttribute("to", Step.ToProc);
    xmlNode2.setAttribute("cond", Step.Cond);
	
    xmlNode.appendChild(xmlNode2);

    xmlNode2 = xmlDoc.createNode(1, "VMLProperties", "");
	xmlNode2.setAttribute("points", Step.Points);
	xmlNode2.setAttribute("fromRelX", Step.fromRelX);
	xmlNode2.setAttribute("fromRelY", Step.fromRelY);
	xmlNode2.setAttribute("toRelX", Step.toRelX);
	xmlNode2.setAttribute("toRelY", Step.toRelY);
    xmlNode2.setAttribute("shapetype", Step.ShapeType);
    xmlNode2.setAttribute("startArrow", Step.StartArrow);
    xmlNode2.setAttribute("endArrow", Step.EndArrow);
    xmlNode2.setAttribute("strokeWeight", Step.StrokeWeight);
    xmlNode2.setAttribute("zIndex", Step.zIndex);
    xmlNode.appendChild(xmlNode2);

    xmlNodeGrp.appendChild(xmlNode);
  }
  var xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
  xmlHttp.open("POST", "_saveFlowXML.asp?defid=" + this.ID, false);
  xmlHttp.send(xmlDoc.xml);
  S = xmlHttp.responseText.trim();
  this.Modified = (S != "");
  return S;
}

//根據(jù)[任務(wù)]的ID獲取[任務(wù)]對象
TTopFlow.prototype.getProcByID = function(id){
  for(var i = 0; i<this.Procs.length; i++)
    if(this.Procs[i].ID == id) return this.Procs[i];
  return null;
}

//根據(jù)[路徑]的ID獲取[路徑]對象
TTopFlow.prototype.getStepByID = function(id){
  for(var i = 0; i<this.Steps.length; i++)
    if(this.Steps[i].ID == id) return this.Steps[i];
  return null;
}

TTopFlow.prototype.getProcAtXY = function(x, y){
  var Proc;
  for(var i = 0; i < this.Procs.length; i++){
    Proc = this.Procs[i];
	if(x >= parseInt(Proc.X) && x <= parseInt(Proc.X) + parseInt(Proc.Width) && y >= parseInt(Proc.Y) && y <= parseInt(Proc.Y) + parseInt(Proc.Height)){
      return Proc;
    }
  }
  return null;
}

TTopFlow.prototype.IDExists = function(id){
  var obj = _FLOW.getProcByID(id);
  if(obj != null) return true;
  var obj = _FLOW.getStepByID(id);
  return (obj != null);
}

TTopFlow.prototype.StepPathExists = function(FromProc, ToProc){
  var Step;
  for(var i = 0; i< this.Steps.length; i++){
    Step = this.Steps[i];
    if(Step.FromProc == FromProc && Step.ToProc == ToProc) return Step;
  }
  return null;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩一区二区三区在线看| 精品一区二区三区免费观看| 欧美一区三区二区| 国产婷婷色一区二区三区四区 | 中文字幕高清不卡| 国产精品性做久久久久久| 亚洲在线视频网站| 国产欧美精品一区| 在线播放中文一区| www.日韩在线| 激情综合色综合久久综合| 男人的j进女人的j一区| 国产精品私人影院| 亚洲色大成网站www久久九九| 欧美一区二区成人6969| 色综合久久久久综合99| 国产精品18久久久久久久久| 日韩电影在线观看电影| 亚洲综合图片区| 亚洲视频在线一区| 欧美国产欧美亚州国产日韩mv天天看完整 | 九九视频精品免费| 日韩精品乱码av一区二区| 欧美视频你懂的| 色综合中文综合网| 国产精品国产成人国产三级| 亚洲国产成人在线| 亚洲第一搞黄网站| 欧美日本在线视频| 日韩精品色哟哟| 一级日本不卡的影视| 亚洲精品成人精品456| 国产精品视频一二三| 久久久蜜桃精品| 精品美女一区二区| 日韩免费一区二区三区在线播放| 欧美日韩成人综合| 91麻豆精品国产91久久久使用方法| 欧美在线视频不卡| 欧美日韩久久久久久| 欧美另类一区二区三区| 91麻豆精品国产| 欧美电影免费观看高清完整版在线观看| 欧美日韩国产精品自在自线| 在线播放欧美女士性生活| 欧美日韩免费观看一区二区三区| 欧美色精品在线视频| 欧美日韩一级片在线观看| 欧美女孩性生活视频| 东方欧美亚洲色图在线| 成人精品国产免费网站| 亚洲色图丝袜美腿| 久久久精品综合| 精品剧情v国产在线观看在线| 日韩欧美亚洲一区二区| 精品sm捆绑视频| 国产欧美综合在线观看第十页| 国产亚洲精品精华液| 亚洲国产精品av| 有码一区二区三区| 欧美成人在线直播| 国产香蕉久久精品综合网| 色婷婷国产精品| 欧美日韩精品欧美日韩精品一| 欧美电视剧在线观看完整版| 久久久久久久久久美女| 欧美日韩亚洲综合在线| 成人av在线网站| 欧美色手机在线观看| 精品少妇一区二区三区在线视频 | 色婷婷国产精品久久包臀| 欧美丰满美乳xxx高潮www| 精品久久久久久久久久久久久久久久久| 日韩一区精品视频| 国产精品欧美一区喷水| 中文一区一区三区高中清不卡| 欧美tickling网站挠脚心| 久久婷婷国产综合精品青草| 日本一区二区三区国色天香 | 男女男精品视频| 成人免费毛片高清视频| 在线观看精品一区| 精品美女一区二区三区| 亚洲精品国产精品乱码不99| 久久精品免费观看| caoporn国产精品| 91精品久久久久久久久99蜜臂| 国产精品免费视频观看| 午夜国产精品一区| 国产成人免费视频网站| 欧美日韩一区成人| 欧美国产精品劲爆| 日本午夜一本久久久综合| 99国产精品久久久| 2024国产精品| 亚洲午夜激情网页| 欧美视频完全免费看| 欧美日韩中文国产| 欧美一卡2卡3卡4卡| 色综合色综合色综合色综合色综合| 欧美精选一区二区| 自拍偷拍欧美精品| 国产精品一区一区| 欧美高清hd18日本| 亚洲精品欧美在线| 成人午夜av影视| 精品日韩欧美在线| 五月天一区二区| 91偷拍与自偷拍精品| 久久久久久黄色| 免费成人在线观看视频| 欧美日韩三级一区二区| 综合电影一区二区三区 | 欧美日韩国产综合久久| 国产精品久久久久久久久免费樱桃| 久久99精品国产| 91精品国产综合久久久久久| 亚洲精品日日夜夜| 91蝌蚪porny| 国产精品第五页| 欧美日韩国产系列| 26uuu色噜噜精品一区二区| 一区二区三区视频在线看| 国产+成+人+亚洲欧洲自线| 精品久久久久久久人人人人传媒| 日韩专区在线视频| 欧美日韩视频在线观看一区二区三区| 国产精品二三区| av不卡免费在线观看| 国产精品天干天干在线综合| 国产馆精品极品| 久久久影视传媒| 国产精品自拍三区| 久久新电视剧免费观看| 狠狠v欧美v日韩v亚洲ⅴ| 亚洲精品一区二区三区在线观看| 日韩av一区二区在线影视| 69堂精品视频| 奇米888四色在线精品| 欧美一二区视频| 久久超碰97人人做人人爱| 日韩三级在线观看| 激情欧美日韩一区二区| 欧美精品一区二区久久婷婷| 国产一区二区久久| 国产三级欧美三级日产三级99| 国产99久久久国产精品潘金 | 亚洲一区二区三区美女| 秋霞av亚洲一区二区三| 欧美精品一卡二卡| 久久不见久久见中文字幕免费| 久久亚洲精品国产精品紫薇| 国产69精品久久久久毛片| 欧美人与性动xxxx| 精品一区二区免费在线观看| www.日韩大片| 亚洲成人激情自拍| 91精品午夜视频| 久久69国产一区二区蜜臀| 欧美zozo另类异族| 成人高清av在线| 亚洲精品大片www| 日韩欧美一卡二卡| 狠狠色2019综合网| 亚洲欧洲无码一区二区三区| 欧美性极品少妇| 国产在线不卡一区| 亚洲三级视频在线观看| 欧美精品vⅰdeose4hd| 国产一区高清在线| 亚洲免费在线观看视频| 69精品人人人人| 国产精品夜夜爽| 亚洲综合无码一区二区| 欧美zozo另类异族| 色先锋久久av资源部| 久久99最新地址| 一区二区三区精品在线| 日韩欧美亚洲另类制服综合在线| 懂色av一区二区夜夜嗨| 亚洲一区二区三区激情| 国产亚洲午夜高清国产拍精品| 欧美色偷偷大香| 国产凹凸在线观看一区二区| 午夜电影一区二区三区| 国产精品色哟哟| 777午夜精品免费视频| 成人一区二区在线观看| 欧美一级一级性生活免费录像| 成a人片国产精品| 日韩精品1区2区3区| 最新国产の精品合集bt伙计| 91精品国产色综合久久不卡蜜臀| 成人免费毛片高清视频| 蜜臀av一区二区在线观看| 亚洲品质自拍视频网站| 久久亚洲一级片| 69精品人人人人| 欧洲另类一二三四区| 不卡电影一区二区三区|