WEB开发网      婵犵數濞€濞佳囧磹婵犳艾鐤炬い鎰堕檮閸嬬喐銇勯弽銊с€掗梻鍕閺岋箑螣娓氼垱笑闂佽姘﹂褔婀佸┑鐘诧工妤犲憡绂嶉崜褏纾奸弶鍫涘妼缁楁岸鏌熷畡鐗堝殗闁诡喒鏅犲畷褰掝敃閵堝棙顔忔繝鐢靛仦閸ㄥ爼骞愰幘顔肩;闁规崘绉ぐ鎺撳亹闁绘垶锕╁Λ鍕⒑閹肩偛濡奸悗娑掓櫇缁顓兼径妯绘櫇闂佹寧绻傞弻濠囨晝閸屾稓鍘甸柣搴㈢⊕閿氶柣蹇ョ稻缁绘繃绻濋崘銊т紝闂佽鍨伴崯鏉戠暦閻旂⒈鏁傞柛鈾€鏅欑槐妯衡攽閻愬樊鍤熷┑顔藉劤铻為柛鏇ㄥ墯閸欏繘鏌嶉崫鍕櫣缂佲偓婢跺绠鹃柟瀛樼箘閿涘秵顨ラ悙顏勭伈闁诡喖缍婂畷鎯邦槻婵℃彃顭烽弻娑㈠Ω閵夈儺鍔夌紓浣稿€哥粔褰掑极閹剧粯鏅搁柨鐕傛嫹 ---闂傚倷鐒︾€笛兠洪埡鍛闁跨噦鎷�
开发学院软件开发Java 构建基于 CDT 的编辑器,第 1 部分: C/C++ 开发工具... 阅读

构建基于 CDT 的编辑器,第 1 部分: C/C++ 开发工具模型

 2009-12-19 00:00:00 来源:WEB开发网 闂傚倷绶氬ḿ褍螞閹绢喖绠柨鐕傛嫹闂傚倷绀侀幉锟犲垂閻㈠灚宕查柟鎵閸庡秵銇勯幒鎴濃偓鐢稿磻閹炬枼妲堟繛鍡楃С濞岊亞绱撻崒姘扁枌闁瑰嚖鎷�婵犵數濮幏鍐川椤撴繄鎹曢梻渚€娼уú銈吤洪妸鈺佺劦妞ゆ帊鑳堕埊鏇㈡煏閸モ晛浠х紒杈╁仱閺佹捇鏁撻敓锟�闂傚倷绶氬ḿ褍螞閹绢喖绠柨鐕傛嫹  闂傚倷鑳舵灙缂佺粯顨呴埢宥夊即閵忕姵鐎梺缁樺姈椤愮厧鈽夊Ο閿嬬€婚梺褰掑亰閸撴稑鈻斿鑸碘拺闁告稑饪村▓鏃€绻涚仦鍌氬闁崇粯鎹囬獮瀣攽閹邦剚顔傛俊鐐€栧濠氬储瑜忛幉鎾晸閿燂拷
核心提示: 清单 1. .cdtproject 配置文件中的信息<profileid="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"><buildOutputProvider><openAc


清单 1. .cdtproject 配置文件中的信息
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"> 
  <buildOutputProvider> 
    <openAction enabled="false" filePath=""/> 
    <parser enabled="true"/> 
  </buildOutputProvider> 
  <scannerInfoProvider id="makefileGenerator"> 
    <runAction arguments="-f ${project_name}_scd.mk" command="make"  
      useDefault="true"/> 
    <parser enabled="false"/> 
  </scannerInfoProvider> 
</profile> 

最后一步涉及将该项目标记为一个 C 或 C++ 项目。核心插件通过将 CNature 或 CCNature 添加到 IProjectDescription 中来完成这一任务。这些类自己并未完成什么值得关注的任务,但当 DeltaProcessor 意识到新项目的性质时,它会让CModelManager 创建一个与项目资源相对应的 CProject,并将其添加至 CDT 模型层次结构中。

步骤 3:创建新 TranslationUnit 和 WorkingCopy

不同于 CProject,TranslationUnit 并不会在其内含的 IFile 出现后立刻被构建。相反,它会在该文件被激活且编辑器打开后被构建。为解释这项任务是如何运行的,我首先要介绍 CDT 编辑过程的核心类:CEditor。

本质上,CEditor 是一个跟工作台适配,并从 IEditorInput 实例中获取内容的 StyledText 小部件。为了与模型-视图-控制器架构保持一致,Eclipse 文本编辑器 API 只使用此部件来提供视图外观。该编辑器的信息被封装到 IDocument 实例中。SourceViewer 扮演控制器的角色,CSourceViewer 管理对 CDT 文档的访问。

上一页  1 2 3 4 5 6 7  下一页

Tags:构建 基于 CDT

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接