2016-08-22 23 views
0

在我们的E4 RCP应用程序中,我们有一个透视图,其中包含具有几个E4视图(MParts)的视图文件夹。 其中一个视图是CRUD视图,即。一个允许编辑和保存特定实体实例的视图。否认Eclipse 4视图变为隐形?

每当这个视图变脏,即编辑过的实体已被更改但尚未保存(出于某种内部原因),我们想要阻止对同一视图文件夹中的另一个视图的更改(这将使CRUD视图无形)。 E4有否可能否决一种看不见的观点?

当然我们可以注册为MPart在EPartService一部分听众,但只允许接收partHidden事件,这是为时已晚。

回答

0

我看不到一个合理的方法来做到这一点。

的部分堆使用CTabFolderorg.eclipse.e4.ui.workbench.renderers.swt.StackRenderer实现。

虽然CTabFolder有一个选择监听器,让你听的选项卡选择它并没有提供一种方式来否决选择。所以即使你编写了一个扩展标准渲染器的自定义堆栈渲染器,你仍然无法控制这个。

你可以写未使用CTabFolder一个完全新的堆栈渲染,但是这是一个大量的工作。