package org.insightech.er.editor.view.action.dbexport; import org.eclipse.swt.widgets.Event; import org.eclipse.ui.PlatformUI; import org.insightech.er.Activator; import org.insightech.er.ImageKey; import org.insightech.er.ResourceString; import org.insightech.er.editor.ERDiagramEditor; import org.insightech.er.editor.controller.command.common.ChangeSettingsCommand; import org.insightech.er.editor.model.ERDiagram; import org.insightech.er.editor.model.settings.Settings; import org.insightech.er.editor.view.action.AbstractBaseAction; import org.insightech.er.editor.view.dialog.dbexport.ExportToTestDataDialog; public class ExportToTestDataAction extends AbstractBaseAction { public static final String ID = ExportToTestDataAction.class.getName(); public ExportToTestDataAction(ERDiagramEditor editor) { super(ID, ResourceString .getResourceString("action.title.export.test.data"), editor); this.setImageDescriptor(Activator .getImageDescriptor(ImageKey.EXPORT_TO_TEST_DATA)); } @Override public void execute(Event event) throws Exception { ERDiagram diagram = this.getDiagram(); ExportToTestDataDialog dialog = new ExportToTestDataDialog(PlatformUI .getWorkbench().getActiveWorkbenchWindow().getShell(), this .getEditorPart(), diagram, diagram.getDiagramContents() .getTestDataList(), -1); dialog.open(); this.refreshProject(); if (dialog.getExportTestDataSetting() != null && !diagram.getDiagramContents().getSettings() .getExportSetting().getExportTestDataSetting().equals( dialog.getExportTestDataSetting())) { Settings newSettings = (Settings) diagram.getDiagramContents() .getSettings().clone(); newSettings.getExportSetting().setExportTestDataSetting( dialog.getExportTestDataSetting()); ChangeSettingsCommand command = new ChangeSettingsCommand(diagram, newSettings); this.execute(command); } } }