我的应用程序有一个编辑器,一些View扩展了ViewPart。在编辑器中,我可以像这样创建一个保存动作
Action action = (Action) ActionFactory.SAVE.create(PlatformUI.getWorkbench().getActiveWorkbenchWindow());
和ToolBar中的添加操作。我可以通过覆盖isDirty()
和doSave()
方法来控制此SAVE操作。我的问题是:
我的观点如下:
GridLayout layoutProperties = new GridLayout(2, false);
layoutProperties.marginHeight = 0;
layoutProperties.marginWidth = 0;
propertiesVersion.setLayout(layoutProperties);
propertiesVersion.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
toolkitProperties = new FormToolkit(propertiesVersion.getDisplay());
sectionProperties = toolkitProperties.createSection(propertiesVersion, Section.TITLE_BAR);
sectionProperties.setText("Version Properties");
sectionProperties.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 2, 0));
//some Label and Text here
答案 0 :(得分:0)
对于RCP,您通常会在ActionBarAdvisor
中创建保存操作,例如:
@Override
protected void makeActions(IWorkbenchWindow window)
{
saveAction = ActionFactory.SAVE.create(window);
register(saveAction);
... more ...
}
然后,保存操作将与实现ISaveablePart
的任何部分一起使用,正是此界面定义了isDirty
,doSave
,...因此,如果您在视图部分中实现此功能你会得到拯救支持。