日本一区二区免费播放_麻豆导航_久久精品99_国产性av_色婷婷噜噜久久国产精品12p_av福利资源_精品综合久久

當前位置:首頁 > 網站舊欄目 > 學習園地 > 設計軟件教程 > TextEditor原理分析筆記

TextEditor原理分析筆記
2010-01-14 22:59:00  作者:  來源:

Editor的語法著色原理:Eclipse使用damage ,repair和reconcile模型來實現語法著色功能,當用戶每次修改了document,Reconciler就會去計算文檔中哪些可視區域是無效的以及如何去repair之:這里的damage表示需要重新加以顯示的文本,repair則表示重新進行顯示的方式,而reconcile則是這個重新顯示的過程.為了定制damage和repair,需要給TextEditor配置自定義的SourceViewerConfigration,TextEditor中的主要組成部分叫SourceViewer,默認情況下SourceViewer不支持語法著色功能,而通過擴展SourceViewerConfiguration就可以對SourceViewer進行定制,通過復寫SourceViewerConfiguration的getPresentationReconciler()方法就可以定制我們自己的Reconciler,定制Reconciler主要是給其配置相關的Damager和Repairer,而這兩個東東又會跟RuleScanner關聯:

java 代碼
 
  1. PresentationReconciler reconciler = new PresentationReconciler();   
  2. DefaultDamagerRepairer dr = new DefaultDamagerRepairer (getTagScanner());   
  3. reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);   
  4. reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);  


RuleScanner定義了各種用于區分各種Token的規則以及相關的TextAttribute(顏色屬性就定義在里面)

內容輔助功能的實現:需要改寫SourceViewerConfiguration.getContentAssistance()方法,而自動完成行為的設置通過定義不同的CompletionProcessor來實現, CompletionProcessor需要復寫getCompletionProposalAutoActivationCharacters()來告訴編輯器在輸入何種內容時給出自動提示的內容,同時還需要實現computeCompletionProposals()方法來告訴要顯示的提示內容(completion proposal)


安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 国产免费久久精品久久久 | 久久精品国产亚洲aa | 日本免费人做人一区在线观看 | 狠狠久久亚洲欧美专区 | 久久综合九色婷婷97 | 欧美一区二区三区四区五区六区 | 草啪啪| 99久久er热在这里都是精品99 | 国产精品嫩模在线播放 | 日本又色又激情免费播放器 | 欧美性xxxxx极品视频 | 欧美黄一级 | 久9热免费精品视频在线观看 | 两性色午夜视频免费国产 | 久久99精品久久久久久青青91 | 热久久99影院 | 欧美亚洲国产日韩综合在线播放 | 欧美综合在线视频 | 久久在线资源 | 日韩在线视频免费不卡一区 | 青青草原免费在线观看 | 亚洲日本va在线观看 | 欧美jizzjizz在线播放 | 国产一级又色又爽又黄大片 | 欧美成人精品欧美一级乱黄 | 99精品国产第一福利网站 | 在线观看视频99 | 亚洲日本va中文字幕 | 日本一区二区三区视频在线 | 欧美性bbbxxx | 欧美高清在线视频一区二区 | 日本道精品一区二区三区 | 99 久久99久久精品免观看 | 男女一进一出无遮挡黄 | 天天夜夜人人 | 欧洲一级做a爱在线观看 | 中文字幕99在线精品视频免费看 | 青草影视 | 久久久久久久久97 | 国产精品高清在线 | 久久人人爽人人爽人人爽 |