论坛首页 Web前端技术论坛

[源码]XiorkFlow:用JavaScript写的工作流设计器

浏览 95290 次
该帖已经被评为良好帖
作者 正文
   发表时间:2007-01-23  
给楼主一个建议,就增加一个模拟运行的功能
看到开始和结束接点以为就是那功能了
0 请登录后投票
   发表时间:2007-01-24  
哈哈那些节点按钮是copy JBPM风格的,直接用 eclipse的图片。

可惜现在不打算继续维护这份代码,不然很多很好建议可以好好做。
0 请登录后投票
   发表时间:2007-01-29  

楼主 的节点编辑,分支判断这些如果能加强一点的话 就更好了,

另外,我很疑惑,楼主为什么不准备继续维护这个代码了呢?

我觉得这是一个很好的东西啊,安全有实例搞成一个开源的项目啊!

0 请登录后投票
   发表时间:2007-01-30  
这个项目是因为某个比赛的缘故,所以才写的。
而我本身并不是做工作流的,对于这样一些业务不熟悉。
如果做出来没有实用,似乎也没有必要继续做。

现在比较想的是写个js的开发包。
0 请登录后投票
   发表时间:2007-01-31  
楼主很强!!谢谢你的分享,正在研究你这个东西
0 请登录后投票
   发表时间:2007-01-31  
我只需要中间那一块工作流显示部分(不要工具栏和状态栏),可以去掉那些js
我希望通过脚本动态创建一个工作流图,只是显示,我不需要设计器
我应当怎么做,请指教
0 请登录后投票
   发表时间:2007-01-31  
厉害。学习
0 请登录后投票
   发表时间:2007-02-01  
chpn 写道
我只需要中间那一块工作流显示部分(不要工具栏和状态栏),可以去掉那些js
我希望通过脚本动态创建一个工作流图,只是显示,我不需要设计器
我应当怎么做,请指教



你可以参考 demo/viewprocess.html、viewprocess.js的用法。
浏览模式的类在 XiorkFlow/src/name/xio/xiorkflow/XiorkFlowViewPattern.js中。

具体使用方法:
  //create ur model
  var model = ...;//get model

  var container = document.getElementByID("YourDivelEmentID");
  var viewer = new XiorkFlowWrapper(container, model);




怎么样获得model,可以看 XiorkFlow/src/name/xio/xiorkflow/process/GetProcess.js的GetProcess.prototype.processXMLHttpRequest。
0 请登录后投票
   发表时间:2007-02-01  
非常感谢!
看了许久还是没明白
我只想有一个画板,其它部分不要
    用js控制XiorkFlow画一个工作流图,不是从一个链接载入一个xml文档
0 请登录后投票
   发表时间:2007-02-01  
chpn 写道
非常感谢!
看了许久还是没明白
我只想有一个画板,其它部分不要
    用js控制XiorkFlow画一个工作流图,不是从一个链接载入一个xml文档



  //create ur workflow container
  var container = document.getElmentByID("UrDivElementID");

  //create XiorkFlow
  var model = new XiorkFlowModel();
  var xiorkFlowWrapper = new XiorkFlowWrapper(container, model);
  //or u can do it like this:
  //var xiorkFlowWrapper = new XiorkFlowWrapper(container);
  //var model = xiorkFlowWrapper.getModel();

  //new node
  var newNodeModel = new NodeModel();
  //supported NodeModel,ForkNodeModel,JoinNodeModel,StartNodeModel,EndNodeModel
  newNodeModel.setText("New Node");
  newNodeModel.setPosition(new Point(5,5));
  model.addMetaNodeModel(newNodeModel);

  var newNodeModel2 = new EndNodeModel();
  newNodeModel2.setText("New End Node");
  newNodeModel2.setPosition(new Point(5,55));
  model.addMetaNodeModel(newNodeModel2);

  //create TransitionModel from newNodeModel to newNodeModel2
  var transitionModel = new TransitionModel(newNodeModel, newNodeModel2);
  model.addTransitionModel(transitionModel);

0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics