import org.eclipse.jface.viewers.TreeSelection;
import org.eclipse.jface.wizard.WizardDialog;
import org.eclipse.linuxtools.tmf.ui.project.model.TmfTraceFolder;
-import org.eclipse.linuxtools.tmf.ui.project.wizards.ImportTraceWizard;
+import org.eclipse.linuxtools.tmf.ui.project.wizards.importtrace.ImportTraceWizard;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPage;
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
+ TmfTraceFolder traceFolder = getTraceFolder();
+ if (traceFolder == null) {
+ return null;
+ }
+ // Fire the Import Trace Wizard
+ IWorkbench workbench = PlatformUI.getWorkbench();
+ Shell shell = workbench.getActiveWorkbenchWindow().getShell();
+
+ ImportTraceWizard wizard = new ImportTraceWizard();
+ wizard.init(PlatformUI.getWorkbench(), new StructuredSelection(traceFolder));
+ WizardDialog dialog = new WizardDialog(shell, wizard);
+ dialog.open();
+
+ traceFolder.refresh();
+
+ return null;
+ }
+
+ /**
+ * @return the trace folder or null
+ */
+ protected TmfTraceFolder getTraceFolder() {
// Check if we are closing down
IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
if (window == null) {
return null;
}
- // Get the selection
+ // Get the selection
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IWorkbenchPart part = page.getActivePart();
if (part == null) {
- return false;
+ return null;
}
ISelectionProvider selectionProvider = part.getSite().getSelectionProvider();
if (selectionProvider == null) {
- return false;
+ return null;
}
ISelection selection = selectionProvider.getSelection();
TmfTraceFolder traceFolder = null;
if (selection instanceof TreeSelection) {
TreeSelection sel = (TreeSelection) selection;
- // There should be only one item selected as per the plugin.xml
+ // There should be only one item selected as per the plugin.xml
Object element = sel.getFirstElement();
if (element instanceof TmfTraceFolder) {
traceFolder = (TmfTraceFolder) element;
}
}
- if (traceFolder == null) {
- return null;
- }
-
- // Fire the Import Trace Wizard
- IWorkbench workbench = PlatformUI.getWorkbench();
- Shell shell = workbench.getActiveWorkbenchWindow().getShell();
-
- ImportTraceWizard wizard = new ImportTraceWizard();
- wizard.init(PlatformUI.getWorkbench(), new StructuredSelection(traceFolder));
- WizardDialog dialog = new WizardDialog(shell, wizard);
- dialog.open();
-
- traceFolder.refresh();
-
- return null;
+ return traceFolder;
}
}