EDA365电子工程师网

标题: 怎样添加Oops操作呢 [打印本页]

作者: happyliangkeshu    时间: 2016-9-25 21:12
标题: 怎样添加Oops操作呢
allegro skill 中有一个例子,但是我看了还是不太会
mark = axlDBTransactionStart()
...#1 do stuff ...
axlDBTransactionMark(mark)
...#2 do stuff ...
axlDBTransactionMark(mark)
...#3 do stuff ...
;; do an oops of the last two changes
axlDBTransactionOops( mark ) ; oops out #3
axlDBTransactionOops( mark ) ; oops out #2
axlDBTransactionOops( topList); commit only #1  


比方说,现在修改线宽,
updatedDbid = axlChangeWidth(dbid, 20.0)  
修改完线宽之后,怎么做一个弹出式菜单,然后菜单中有 Done  Oops  Cancel 呢 ?
重要的是Oops怎么实现?




作者: deargds    时间: 2016-9-27 14:16
https://www.eda365.com/thread-93514-1-1.html
  1. procedure( test()
  2. let((mypopup dbid_symbol)
  3.         if(axlOKToProceed() then
  4.                 axlClearSelSet()
  5.                 axlSetFindFilter(?enabled '("NOALL" "SYMBOLS") ?onButtons '("SYMBOLS"))
  6.                 mypopup = axlUIPopupDefine(nil list(list("Done" 'test_done) list("Cancel" 'test_cancel)))
  7.                 axlUIPopupSet(mypopup)
  8.                 stop = t
  9.                 while(stop
  10.                         axlClearSelSet()
  11.                         dbid_symbol = axlGetSelSet(axlSingleSelectBox())
  12.                         if(dbid_symbol then
  13.                                 axlHighlightObject(dbid_symbol t)
  14.                                 println(dbid_symbol~>name)
  15.                         else
  16.                                 println(dbid_symbol~>name)
  17.                         )
  18.                 )
  19.                 axlUIPopupSet(nil)
  20.         else
  21.                 axlUIConfirm("Finish current command first.")
  22.         )
  23. );end let
  24. );end procedure

  25. procedure( test_done()
  26. let(()
  27.         stop = nil
  28.         axlFinishEnterFun()
  29. )
  30. )

  31. procedure( test_cancel()
  32. let(()
  33.         stop = nil
  34.         axlCancelEnterFun()
  35. )
  36. )
复制代码




作者: bruce777    时间: 2017-5-23 14:29
收下学习了,谢谢楼主




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2