在日食、能发挥的做事方式,我应该在哪里让我的模型对象?当他们载入或改变,如何,他们应该帮你的意见?

我尝试口我到现有应用程序的日食RPC.它可以被看作是一个IDE样的应用程序:我打开文件,其中含有链接来源文件。源文件显示在树形图。我可以编辑源,并建立来源的进一些输出...

例如,当我处理的开放的命令,在那里我会创建该模型对象所以我的意见可以看到他们吗?我宁愿避免使用单独管理的课,但是,也许最简单的方法。

有趣的代码,我发现浏览JDT的源代码是JavaCore,JavaModel,JavaModelManager.和JavaProject.


IProject[] projects= ResourcesPlugin.getWorkspace().getRoot().getProjects();

public static IJavaProject create(IProject project) {
    if (project == null) {
        return null;
    }
    JavaModel javaModel = JavaModelManager.getJavaModelManager().getJavaModel();
    return javaModel.getJavaProject(project);
}

相关:

有帮助吗?

解决方案

我相信这是最好的实现通过听众。

你的数据(模型)是在私人包裹,只有接口的那些数据是暴露在公众包。

alt text

你会发现在这个 wiki部分 这一原则,但也 具体的例子在这里.


关于模型,一个访状进近将使用主机插件作为访问对象。i。e:

MyPlugin.getDefault().getModel()

这将允许你设置/处置的模型随着插件的生命周期。

如果该型号是在一个插件,它可以定义的扩展点的听众。视可能延伸扩展这些要点,然后自动登记在装载的模型。意见可查询的模型所需的信息,只要他们得到的第一个消息模型。

一个很好的例子数据结合,可以发现在 这篇文章.

其他提示

我们倾向于使用 IEditorParts储存保持一个复制的模型(来自 IEditorInput).

如果一个视需要知道的模型,然后使用ISelection框架和重点的移动模型周围从编辑器。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top