随笔分类 - Sharpdevelop源码分析
摘要:下面通过一个简单直观的例子,我们来了解一下如何例用插件树来获得指定的对象,并实现相应的功能。 在SharpDevelop主界面中我们可看到很多的菜单,这些菜单都是在插件文件中指定的,这样也可以方便各种插件自定义菜单项。 ICSharpCode.SharpDevelop工程Src\Workbench\下的DefaultWorkbench.cs文件是主界面的实现。 readonly static string mainMenuPath = "/SharpDevelop/Workbench/MainMenu";这行代码以常量的形式指定了主界面菜单在插件中的位置。在ICSharpC
阅读全文
摘要:SharpDevelop的每个插件都是自成体系的,通过addin文件进行自我描述。当SharpDevelop启动时,会在指定位置寻找并加读入所有的addin文件,根据文件中的内容构造一个全局唯一的静态的插件树型结构,当需要用到插件树中的某个对象时,给出路径,就可以得到. addin文件可以AddIns文件下的任何一个工程中找到,ICSharpCode.SharpDevelop工程下有的ICSharpCode.SharpDevelop.addin文件是SharpDevelop主界面的插件文件。<AddIn name = "SharpDevelop" author = &
阅读全文
摘要:从前的工作中用需要在SharpDevelop的体系结构上,开发出一个工具。所以看了一下SharpDevelop的源码,然后就被SharpDevelop中的插件体系所吸引。所以想写点读这个源代码的心得,开源工程是学习编程的好材料,但是就是相关资料不好找,SharpDevelop的开发小组倒是出过一本书来阐述它的体系结构,但是基于比较老的版本,很多内容以经和现在的版本不同了,希望我写的Blog大家可以交流一下学习SharpDevelop源码的心得,互相促进,刚刚开博,而SharpDevelop的结构也很复杂,分析起来不容易,写的不好,请多见谅。 代码下载 Downloads for SharpDe
阅读全文

浙公网安备 33010602011771号