日本一区二区免费播放_麻豆导航_久久精品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)


安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 久草免费福利资源 | 97超级碰在线精品视频 | 91夜夜人人揉人人捏人人添 | 日韩久久久精品中文字幕 | 日产日韩亚洲欧美综合搜索 | 热久久只有精品 | 日韩一区二区三区视频在线观看 | 亚洲国产精 | 欧美成人精品动漫在线专区 | 国产激情视频在线 | 久碰人澡人澡人澡人澡91 | 日韩欧美在线观看一区 | 青青草视频国产 | 福利一区二区三区视频午夜观看 | 色中文网 | 青草青青高清影院在线观看 | 欧美精品国产第一区二区 | 国产在线观看91 | 亚洲黄网免费 | 欧美高清一区二区 | 亚洲a级大片 | 人人人人看人人人做人人 | 波多野结衣手机视频一区 | 狠狠色综合久久久久尤物 | 国产精品一国产精品 | 日韩在线a视频免费播放 | 精品久久亚洲一级α | www.免费视频 | 国产日产欧美一区二区三区 | 欧美大片一区二区 | 日韩欧美在线观看一区 | 爱干在线 | 国产欧美日本在线观看 | 免费gav| 久久黄色小视频 | 久久精品影院一区二区三区 | 人人澡人人澡人人 | 日本视频中文字幕一区二区 | 久久这里只精品99re免费 | 免费久久一级欧美特大黄 | 色综合久久天天综合 |