国产精品一区二区精品_久久小视频_天堂va在线观看_99久久夜色精品国产亚洲96_日本手机在线视频_av成人免费

當前位置:首頁 > 網站舊欄目 > 學習園地 > 設計軟件教程 > EMF開發指南之Command Framework

EMF開發指南之Command Framework
2010-01-14 22:40:54  作者:  來源:
★emf的command framework分為兩部分,一部分是common的不依賴于emf.edit的command,另一個部分是和emf.edit關聯的command,和emf.edit關聯的command,通過EObject的相關方法來實現對model的attribute設置,reference修改,copy&paste操作等。
★在command command中,提供了一個Command接口,里面的方法包括execute(), undo(),redo(),canExecute(), canUndo()等等。其中getResult()方法的作用一般是用來告訴后續的command,當前操作的結果,這個在組合command中會用到,而getAffectedObject()方法則用來取得受execute(), redo(), undo()方法影響的對象,這個方法通常在emf.edit的ui framework中使用,比如一個屬性被修改之后,其他受影響的屬性也響應發生修改了,則ui對被修改的屬性使用不同的顏色來加以標識(比如高亮),則兩個方法返回的結果有時候會是一樣的。
★從Command繼承而來的AbstractCommand做的一件非常重要的事情就是實現了canExecute()方法,同時讓從AbstractCommand繼承的子類去實現prepare()方法來決定是否可執行,從而保證canExecute()最終只會被執行一次prepare()來做判斷command是否能執行
★CommandStack主要在undo,redo的時候使用,它使用一個stack來維護所有可undoable的command,可以給commandstack添加一個CommandStackListener,那么stack中的所有command在被調用的時候都會出發該listener。BasicCommandStack是CommandStack的一個簡單實現
★CompoundCommand用來一次執行多個command,它提供了一些特殊的操作,比如appendAndExecute(),該方法可以很好的將已執行的command加以記錄下來,這樣我們在undo的時候,直接倒過來執行commandlist中的每一個command即可,實際上其他的command也會在execute()方法里面這么干,另外一個方法就是unwrap(),如果你的compound command只有一個command的時候,該方法會起到一定的優化作用。
★Set,Add,Remove,Move,Replace以及CopyCommand都是和emf.edit關聯的基本command,不過CopyCommand實際上是一個Compound Command,它結合了CreateCopyCommand和InitinalizeCopyCommand。對這些基本command加以組合便可以形成其他更高級的command,比如CreateChildCommand(AddCommand+SetCommand),CutToClipboardCommand(RemoveCommand),PasteFromClipboardCommand(AddCommand+CopyCommand),DragAndDropCommand(CopyCommand+RemoveCommand+AddCommand)等等。
★AbstractOverrideableCommand解決了一個代理的問題,不過還沒明白有什么用 
★CommandParameter用來封裝創建command所需要的參數,通過參看EditingDomain的createCommand方法實現我們可以得知,通過反射得到要創建的Command Class,接著根據約定:每一種Command必須提供相應的靜態創建方法create來生成對應的Command實例
★model如何顯示交給Label Provider來管理,而對model的維護則交給了EditingDomain,該實現主要做三件事:創建command,維護undo command stack,對編輯的resource提供訪問接口。
★IEditingDomainItemProvider是用來訪問model的層次關系的接口(Editing Domain也實現了這些方法,因此后者會調用前者的實現)。而IEditingDomainItemProvider的實現則是通過ItemProvider來取得
★ItemProviderAdapter也提供了一個根據editing domain, commandparameter創建command的createCommand()方法。它和AdapterFactoryEditingDomain的實現基本一樣。

安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
相關熱詞搜索:開發指南
国产精品一区二区精品_久久小视频_天堂va在线观看_99久久夜色精品国产亚洲96_日本手机在线视频_av成人免费
<button id="0mgmq"><pre id="0mgmq"></pre></button>
  • <tr id="0mgmq"></tr>
  • <abbr id="0mgmq"><source id="0mgmq"></source></abbr> <button id="0mgmq"></button>
  • 国语精品中文字幕| 一区二区三区精品视频在线观看| 免费在线观看成人av| 亚洲一区二区三区精品在线观看 | 免费在线一区二区| 欧美天堂亚洲电影院在线观看| 欧美xxxx黑人又粗又长密月| 欧美专区18| 亚洲免费成人| 亚洲视频欧美在线| 欧美日韩高清在线一区| 欧洲精品码一区二区三区免费看| 成人蜜桃视频| 成人情视频高清免费观看电影| 午夜在线a亚洲v天堂网2018| 国产一区二区三区高清| 亚洲精品一级| 一区二区三区免费看| 99香蕉国产精品偷在线观看 | 欧美日韩中文国产一区发布| 国产欧美日韩一区二区三区| 国产精品免费一区二区三区在线观看| 国产偷久久久精品专区| 亚洲精选久久| 国产精品久久久对白| 国产免费成人| 另类图片国产| 国产精品美女黄网| 国产区欧美区日韩区| 国产精品视频一区二区三区经| 国产伦精品一区二区三区视频孕妇 | 亚洲福利专区| 韩日成人在线| 国产伦精品一区二区三| 在线播放亚洲| 国产欧美在线| 操一操视频一区| 精品久久久久久中文字幕动漫| 久久大香伊蕉在人线观看热2| 精品欧美国产| 青青草国产精品| 综合视频免费看| 亚洲精品男同| 91福利入口| 欧美一区二区三区在线播放 | 日韩亚洲视频在线| 欧美网站在线| 国产精品亚洲一区| 激情五月综合色婷婷一区二区 | 精品1区2区3区4区| 国产精品腿扒开做爽爽爽挤奶网站| 亚洲一区二区在线免费观看| 国产精品国产一区二区| 亚洲成人蜜桃| 99riav国产精品| 国产精品免费在线播放| 亚洲精品一区二区三区av| 国内精品久久国产| 久久人人精品| 亚洲综合视频一区| 免费在线日韩av| 色姑娘综合av| 国产欧美日本在线| 欧美国产二区| 日韩一级在线| 欧美1o一11sex性hdhd| 国产精品a级| 国产另类第一区| 欧美私人啪啪vps| 国产a一区二区| 欧美精品观看| 久久99欧美| 亚洲国产婷婷| 日韩欧美三级一区二区| 一区二区av| 亚洲福利av| av一区二区三区四区电影| 欧美福利视频| 久久av一区二区三区漫画| 极品av少妇一区二区| 国产一区免费视频| 国产日韩欧美一区二区三区四区| 日本午夜精品一区二区三区| 中日韩视频在线观看| 日韩偷拍一区二区| 99re视频在线| 一本一道久久综合狠狠老精东影业| 麻豆成人小视频| 久久亚洲影院| 亚洲欧洲一区| 亚洲精品永久www嫩草| 91精品网站| 宅男噜噜噜66一区二区 | 日韩亚洲一区在线播放| 亚洲电影免费| 久久综合色一本| 91黄在线观看| 国产嫩草一区二区三区在线观看| 一区二区在线观| 精品无人区一区二区三区竹菊| 久久国产精品一区二区三区四区| 综合久久国产| 亚洲激情图片| 少妇精品久久久久久久久久| 精品国产一区二区三区四区精华 | 欧美粗暴jizz性欧美20| 神马影院午夜我不卡影院| 国产欧美亚洲日本| 欧美一级二区| 亚洲欧美日韩专区| 国产亚洲综合精品| 99re6热在线精品视频播放速度| 女主播福利一区| 亚洲区一区二区三区| 日韩高清国产精品| 日韩福利视频| 亚洲电影免费| 亚洲图色在线| 影音先锋欧美在线| 亚洲一区不卡在线| 欧美人与禽猛交乱配视频| 亚洲综合第一| 红桃视频国产精品| 亚洲乱码久久| 国产精品老牛| 久久久久成人精品免费播放动漫| 国产日韩欧美一区| 老司机午夜精品视频在线观看| 免费亚洲一区二区| 成人av播放| 精品午夜一区二区| 日本电影一区二区三区| 亚洲在线不卡| 亚洲网址在线| 国产精品资源| 国产99在线免费| 日韩欧美一区二区三区四区 | 国产视频亚洲| 国产激情一区二区三区在线观看| 国产精品一区在线播放| 奇米精品在线| 激情91久久| 蜜桃久久精品乱码一区二区| 国产精品一区二区三区精品| 久久久久久国产精品免费免费| 日本午夜精品一区二区| 欧美体内she精视频在线观看| 亚洲精品欧美精品| 国产富婆一区二区三区| 欧洲精品码一区二区三区免费看| 欧美精品97| 麻豆精品视频| 三区精品视频观看| 在线播放一区| 国产三级精品在线不卡| 视频一区二区精品| 欧美日韩在线观看一区二区三区| 夜夜嗨网站十八久久| 激情欧美一区二区三区中文字幕| 亚洲精品中文字幕在线| 国产女优一区| 午夜精品视频在线观看一区二区| 一区二区自拍| 鲁鲁狠狠狠7777一区二区| 狠狠综合久久| 精品乱码一区二区三区| 狠狠色狠狠色综合日日tαg| 在线欧美一区| 国产精品国产亚洲精品看不卡15| 欧美在线影院| 91超碰在线电影| 欧美日韩精品久久| 翡翠波斯猫1977年美国| 欧美精品一级| 国产精品毛片va一区二区三区| 欧美日韩综合久久| 国产色综合一区二区三区| 在线观看欧美亚洲| 欧美日韩一区二区三区在线视频| 亚洲日本精品国产第一区| 久久久精品国产一区二区三区| 在线观看一区| 亚洲精品中文综合第一页| 99久久精品免费看国产一区二区三区| 亚洲午夜精品久久| 成人免费91在线看| 亚洲精选在线| 亚洲一区二区三区精品动漫| 狠狠色伊人亚洲综合网站色| 一本一本久久a久久精品综合妖精| 四虎永久国产精品| 91黄在线观看| 欧美精品一区二区视频| 蜜桃av久久久亚洲精品| 美女黄网久久| 欧美日韩hd| 日本在线观看一区二区三区| 国产精品久久久久久久天堂第1集| 亚洲人久久久| 国产精品国码视频|