我有基于组件的应用程序。所有组件都在 XML 中定义。组件可以在不同的 xml 文件中定义。
<!-- filename: components.xml -->
<components>
<component type="x" name="y">
<property1 attribute="attr"/>
<property2 attribute="attr"/>
</component>
<component type="a" name="b">
<property1 attribute="attr"/>
…
</component>
</components>
<!-- filename: extra-components.xml -->
<components>
<component type="x" name="z" extends="x:y"> <!-- this extends component x:y -->
<property3 attribute="attr"/>
</component>
</components>
现在我正在尝试编写一个插件,以便我可以从子组件跳转到父组件。在上面的示例中,组件类型“x”和名称“z”扩展了组件类型“x”和名称“y”。
通过浏览来自不同插件的一些源代码,我能够添加一个菜单项并在插入符号下抓取内容。
比如说,如果我的插入符号在第二个组件中的“x:y”下,我可以设置 x 和 y,这样至少我可以知道要查找的组件类型和组件名称。
但是当我按下 ctrl 并搜索组件并在 ctrl+单击时跳转到组件的声明时,我想在扩展下的内容下划线,即“x:y”,就像我们跳转到类的声明一样。
我想要一些指导,比如我应该看哪个课,我应该怎么走或类似的实现。
谢谢