|
|
1
5
我认为你在这里面临的问题与RCP无关。这更多的是一个架构问题。您的视图与业务逻辑连接在一起! 该解决方案可以通过两种(通用)设计模式完成:
您将需要创建几个项目。一个当然是RCP插件,我们称之为 . 现在您创建了另一个,它不提供UI贡献(仅从org.eclipse.core.runtime开始)并调用它 主持人 . 为了简化事情,这个插件现在也将是模型。 下一步:
代码:
如您所见,视图只创建了对演示者的引用,演示者负责所有业务逻辑,并且演示者告诉视图要显示什么。因此,在您的透视图中,您可以实现这些接口函数,并且在每个接口函数中,您可以以不同的方式设置透视图。 对于每个视图,它以相同的方式运行,您将需要一个视图的演示者,该演示者执行操作并告诉视图(使用界面)显示什么并传递最终数据。这个观点并不关心逻辑。这在使用JFace数据绑定时也非常有用(这样,只有绑定的数据才会传递给视图)。 例如,WorkbenchWindowWadisor将只创建应用程序中所需的所有内容。然后,其他视图、透视图可以启用/禁用菜单等,具体取决于它们获得的数据(例如,当isAdministrator时,您可能希望启用特殊的adminMenu)。 我知道这是一个相当繁重的方法,但是EclipseRCP是为大型(正如名字所说的rich)应用程序设计的。因此,您应该在正确的体系结构中花费一些时间。我的第一个RCP应用程序就像你描述的那样……我从来不知道在哪里存储东西以及如何处理所有引用。在工作中我学到了MVP(我还在学习)。理解这个概念需要一段时间,但它是值得的。 你可能想看看 my second post at this question 获取关于如何构建插件的另一个想法。 |
|
uminder · 包在目标平台2023-12中消失 2 年前 |
|
|
Paul H · 如何将OSGI捆绑包添加到Eclipse RCP项目 8 年前 |
|
|
Majid Hojati · Eclipse RCP用户友好GUI组件 8 年前 |
|
|
John Doe · 取消eclipse插件作业 8 年前 |
|
|
positron · 正在配置中设置自定义属性。ini公司 8 年前 |
|
|
Spronghi · Eclipse RCP:找不到所需的插件 8 年前 |
|
|
John Doe · 返回在runSync方法中创建的对象的值 8 年前 |