1 /*******************************************************************************
2 * Copyright (c) 2010, 2011, 2012 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Francois Chouinard - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.linuxtools
.tmf
.ui
.project
.wizards
;
15 import java
.util
.List
;
17 import org
.eclipse
.jface
.dialogs
.IDialogSettings
;
18 import org
.eclipse
.jface
.viewers
.IStructuredSelection
;
19 import org
.eclipse
.jface
.viewers
.StructuredSelection
;
20 import org
.eclipse
.jface
.wizard
.Wizard
;
21 import org
.eclipse
.linuxtools
.internal
.tmf
.ui
.Activator
;
22 import org
.eclipse
.ui
.IImportWizard
;
23 import org
.eclipse
.ui
.IWorkbench
;
24 import org
.eclipse
.ui
.ide
.IDE
;
27 * The import trace wizard implementation.
30 * @author Francois Chouinard
32 public class ImportTraceWizard
extends Wizard
implements IImportWizard
{
34 // ------------------------------------------------------------------------
36 // ------------------------------------------------------------------------
38 static private final String PLUGIN_ID
= Activator
.PLUGIN_ID
;
39 static private final String IMPORT_WIZARD
= "ImportTraceWizard"; //$NON-NLS-1$
40 static private final String ICON_PATH
= "icons/wizban/trace_import_wiz.png"; //$NON-NLS-1$
42 // ------------------------------------------------------------------------
44 // ------------------------------------------------------------------------
46 private IWorkbench fWorkbench
;
47 private IStructuredSelection fSelection
;
48 private ImportTraceWizardPage fTraceImportWizardPage
;
50 // ------------------------------------------------------------------------
52 // ------------------------------------------------------------------------
56 public ImportTraceWizard() {
57 IDialogSettings workbenchSettings
= Activator
.getDefault().getDialogSettings();
58 IDialogSettings section
= workbenchSettings
.getSection(IMPORT_WIZARD
);
59 if (section
== null) {
60 section
= workbenchSettings
.addNewSection(IMPORT_WIZARD
);
62 setDialogSettings(section
);
65 // ------------------------------------------------------------------------
67 // ------------------------------------------------------------------------
71 * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench, org.eclipse.jface.viewers.IStructuredSelection)
74 public void init(IWorkbench workbench
, IStructuredSelection selection
) {
75 fWorkbench
= workbench
;
76 fSelection
= selection
;
78 List
<?
> selectedResources
= IDE
.computeSelectedResources(selection
);
79 if (!selectedResources
.isEmpty()) {
80 fSelection
= new StructuredSelection(selectedResources
);
83 setWindowTitle(Messages
.ImportTraceWizard_DialogTitle
);
84 setDefaultPageImageDescriptor(Activator
.imageDescriptorFromPlugin(PLUGIN_ID
, ICON_PATH
));
85 setNeedsProgressMonitor(true);
90 * @see org.eclipse.jface.wizard.Wizard#addPages()
93 public void addPages() {
95 fTraceImportWizardPage
= new ImportTraceWizardPage(fWorkbench
, fSelection
);
96 addPage(fTraceImportWizardPage
);
101 * @see org.eclipse.jface.wizard.Wizard#performFinish()
104 public boolean performFinish() {
105 return fTraceImportWizardPage
.finish();