综合二区_欧美成人综合_欧美成人二区_a黄视频_亚洲视频在线播放_一区二区三区视频免费看

当前位置:首页 > 网站旧栏目 > 学习园地 > 设计软件教程 > 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)


安徽新华电脑学校专业职业规划师为你提供更多帮助【在线咨询
主站蜘蛛池模板: 91免费观看视频网站 | 亚洲精美视频 | 国产免费一区二区三区在线网站 | 富二代视频污 | 久久v| 91九色论坛 | 亚洲www啪成人一区二区 | 婷婷综合久久日韩一区 | 久草黄色网| 91免费观看视频网站 | 国产成人免费 | 中文字幕久久一区 | 亚洲一区二区三区在线观看免费 | 国产精品精品久久久久 | 一区二区三区免费高清视频 | 亚洲中国字幕 | 中文字幕一区二区三天 | 午夜成人免费视频 | 99精品久久久久久久婷婷 | 天堂精品一区二区三区 | 91亚洲国产成人久久精品麻豆 | 91pro在线观看 | 91国内免费视频 | 久久久久国产成人免费精品免费 | 国产成人啪午夜精品网站男同 | 91视频-全网资源最全平台 | 亚洲人人舔人人 | 亚洲国产成人久久综合一区,久久久国产99 | 国产一区二区三区免费观看 | 中文字幕一精品亚洲无线一区 | 二区三区在线 | 亚洲美女自拍视频 | 91亚洲国产亚洲国产亚洲 | 不卡视频一区二区 | 国产精品久久网站 | 亚洲黄一区二区 | 亚洲免费福利视频 | 九九热国产在线 | 91视频高清 | 91观看| 一区二区成人影院 |