コード例 #1
0
 /**
  * {@inheritDoc}
  *
  * @see org.eclipse.jface.wizard.Wizard#canFinish()
  */
 @Override
 public boolean canFinish() {
   IWizardContainer iWizardContainer = this.getContainer();
   IWizardPage currentPage = iWizardContainer.getCurrentPage();
   if (currentPage instanceof WizardNewProjectCreationPage) {
     return newProjectPage.isPageComplete();
   }
   return newProjectPage.isPageComplete() && newAcceleoModulesCreationPage.isPageComplete();
 }
コード例 #2
0
  /**
   * Creates the Acceleo project.
   *
   * @param monitor The progress monitor.
   */
  private void createProject(IProgressMonitor monitor) {
    try {
      IProject project =
          ResourcesPlugin.getWorkspace().getRoot().getProject(newProjectPage.getProjectName());
      IPath location = newProjectPage.getLocationPath();
      if (!project.exists()) {
        IProjectDescription desc =
            project.getWorkspace().newProjectDescription(newProjectPage.getProjectName());
        if (ResourcesPlugin.getWorkspace().getRoot().getLocation().equals(location)) {
          location = null;
        }
        desc.setLocation(location);
        project.create(desc, monitor);
        project.open(monitor);

        boolean shouldGenerateModules =
            !(getContainer().getCurrentPage() instanceof WizardNewProjectCreationPage);
        convert(
            project,
            newProjectPage.getSelectedJVM(),
            newAcceleoModulesCreationPage.getAllModules(),
            shouldGenerateModules,
            monitor);

        IWorkingSet[] workingSets = newProjectPage.getSelectedWorkingSets();
        getWorkbench().getWorkingSetManager().addToWorkingSets(project, workingSets);

        project.build(
            IncrementalProjectBuilder.FULL_BUILD,
            AcceleoBuilder.BUILDER_ID,
            new HashMap<String, String>(),
            monitor);
      }
    } catch (CoreException e) {
      AcceleoUIActivator.log(e, true);
    }
  }