content: /**
   *  Copyright (c) 2013-2016 Angelo ZERR.
   *  All rights reserved. This program and the accompanying materials
   *  are made available under the terms of the Eclipse Public License v1.0
   *  which accompanies this distribution, and is available at
   *  http://www.eclipse.org/legal/epl-v10.html
   *
   *  Contributors:
   *  Angelo Zerr <angelo.zerr@gmail.com> - initial API and implementation
   */
  package tern.eclipse.ide.ui.wizards;
  
  import org.eclipse.jface.viewers.IStructuredSelection;
  import org.eclipse.jface.wizard.Wizard;
  import org.eclipse.ui.IImportWizard;
  import org.eclipse.ui.IWorkbench;
  
  import tern.eclipse.ide.core.IIDETernRepository;
  import tern.eclipse.ide.internal.ui.TernUIMessages;
  import tern.eclipse.ide.ui.ImageResource;
  
  /**
   * Standard workbench wizard for importing tern repository in the workspace as
   * simple project.
   * <p>
   * This class may be instantiated and used without further configuration; this
   * class is not intended to be subclassed.
   * </p>
   * <p>
   * Example:
   * 
   * <pre>
   * IIDETernRepository repository = ...
   * IWizard wizard = new ImportTernRepositoryWizard(repository);
   * wizard.init(workbench, selection);
   * WizardDialog dialog = new WizardDialog(shell, wizard);
   * dialog.open();
   * </pre>
   * 
   * During the call to <code>open</code>, the wizard dialog is presented to the
   * user. When the user hits Finish, a project is created.
   * </p>
   * 
   * @noextend This class is not intended to be subclassed by clients.
   */
  public class ImportTernRepositoryWizard extends Wizard implements IImportWizard {
  
  	private ImportTernRepositoryWizardPage mainPage;
  	private final IIDETernRepository repository;
  
  	public ImportTernRepositoryWizard(IIDETernRepository repository) {
  		this.repository = repository;
  	}
  
  	@Override
  	public void addPages() {
  		super.addPages();
  		mainPage = new ImportTernRepositoryWizardPage(repository);
  		addPage(mainPage);
  	}
  
  	@Override
  	public void init(IWorkbench workbench, IStructuredSelection selection) {
  		setWindowTitle(TernUIMessages.ImportTernRepositoryWizard_title);
  		setDefaultPageImageDescriptor(ImageResource.getImageDescriptor(ImageResource.IMG_LOGO)); // $NON-NLS-1$
  	}
  
  	@Override
  	public boolean performFinish() {
  		return mainPage.importRepository();
  	}
  }
  