我开发了一个自定义文件类型,以及一个自定义编辑器(基本上是一棵树,附带了几个数据页和一些额外的按钮)。好的,我可以单独运行它,这很好,甚至可以将它添加到tools菜单中,但是我想将它集成到Delphi中,以便我的自定义编辑器(或类似的新版本)出现在IDE中,就像DFM文件有一个自定义编辑器一样。我可以在Delphi中找到对大多数扩展的引用,而不是这个。有指路手吗?请注意,这不是一个属性或组件编辑器(文件类型与其中任何一个都无关),也不只是一个文本文件的语法突出显示。
发布于 2015-04-16 14:09:58
AFAIK目前无法将自定义编辑器可靠地集成到Delphi中。所需的API根本不存在。见QC89028自定义模块支持。
在Delphi 2010和XE betas期间,我大部分时间都在尝试整合资源编辑器。虽然这项工作得到了Embarcadero的正式支持,并得到了IDE工程师的半心半意的支持,但我始终无法让他们兑现承诺,并公开模块API。我最终放弃了这个项目。
更新:我现在检查了我以前在这方面的通信,结果部分问题是IOTAModuleCreator (用于为自定义文件类型实现file定制文件类型)和IOTAEditorContent (用于向自定义模块传输数据)只支持文本数据。二进制数据会被破坏。
发布于 2015-04-16 14:13:40
您可能可以通过使用ToolsAPI的IDE插件(参见IDE源文件夹中的ToolsAPI.pas (例如,Program Files (x86)\Embarcadero\Studio\source\ToolsAPI\ToolsAPI.pas))来实现这一点。
有关编写插件的一般信息,请参阅大卫·G·霍伊尔的优秀博客。一旦您了解了基本知识--即编写一个“向导”并让它做一些事情--您将需要致力于集成您的编辑器。
我从来没有这样做过,所以我不能保证这是可能的。但是,一些看起来值得研究和实现的接口是INTACustomEditorView,它表示一个“视图”(文件打开时的文件选项卡--比如代码编辑器、欢迎视图、类型库编辑器等)和IOTAEditorViewServices来注册您的自定义视图。我不知道您是如何将视图类型与文件类型关联起来的,对不起--可能与个性接口有关。您也可能对INTACustomEditorSubView感兴趣,因为它在文件底部创建了一个选项卡。
祝你好运,如果你找到了解决办法,请在这里写下来,以便其他人也能学到东西!
https://stackoverflow.com/questions/29675388
复制相似问题