我有一个简单的RCP应用程序。我有一个观点,并添加了三个观点。最初,将为用户禁用其中一个视图。有一个工具栏项,用于启动对话框。用户在对话框中验证自己。身份验证成功后,我想使视图可编辑。我可以在对话框中获得该特定视图的引用。但我不知道如何启用它。我无法使用选择监听器,因为我没有选择任何东西。我还看到了一个关于使用活动扩展的例子。但是这会打开/关闭视图,而不仅仅是启用/禁用它。有人能帮我吗?感谢。
答案 0 :(得分:1)
据我了解,您希望以两种状态之一显示视图:如果用户未经过身份验证,则会被禁用,或者在用户通过身份验证后启用。
这实际上很简单:-)我已经为你做了一个小例子应用程序,说明了这项技术:so-edi.zip
使用新链接更新
答案 1 :(得分:0)
在RCP 3.x中,您必须在ViewPart的实现中公开View的Control的启用状态:
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.ui.part.ViewPart;
public class View extends ViewPart {
private Control control;
@Override
public void createPartControl(Composite parent) {
control = new Composite(parent, SWT.NONE);
}
@Override
public void setFocus() {
}
public void setEnabled(boolean enabled) {
control.setEnabled(enabled);
}
public boolean isEnabled() {
return control.getEnabled()
}
}