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

當(dāng)前位置:首頁 > 網(wǎng)站舊欄目 > 學(xué)習(xí)園地 > 設(shè)計軟件教程 > TextEditor原理分析筆記

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

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

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定義了各種用于區(qū)分各種Token的規(guī)則以及相關(guān)的TextAttribute(顏色屬性就定義在里面)

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


安徽新華電腦學(xué)校專業(yè)職業(yè)規(guī)劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 日本在线观看视频网站 | 99视频都是精品热在线播放 | 人妖系列在线观看网站 | 国产福利不卡一区二区三区 | aaa国产精品| 亚洲图片中文字幕 | a天堂视频 | 日本aⅴ永久免费网站www | 九九九精品视频 | 毛片6| 精品网站| 国产免费丝袜调教视频 | 啪啪论坛 | 久久福利一区 | 亚洲国产成人久久一区二区三区 | 日韩在线视频免费播放 | 国产区欧美 | 日本黄色免费大片 | 日本三级强在线观看 | 久久久久久尹人网香蕉 | 国产欧美日韩一区二区三区视频 | 久久99亚洲综合精品首页 | 另类在线观看 | 亚洲国产女人aaa毛片在线 | 日本最新免费不卡二区在线 | 日本 国产 欧美 | 欧美日韩精品在线视频 | 轻轻色在线观看 | 国产人成午夜免视频网站 | www.av在线视频| 亚州va| 人成免费a级毛片 | 亚洲毛片在线看 | 三级视频全过程 | 99精品一区二区免费视频 | 日本特级黄色录像 | 经典欧美gifxxoo动态图午夜 | 欧美经典人人爽人人爽人人片 | 免费黄色大片网站 | 精品福利一区二区在线观看 | 久久综合国产 |