sysmodelmgr/com.symbian.smt.gui/src/com/symbian/smt/gui/wizard/NewSMTProjectWizard.java
author terytkon
Thu, 11 Mar 2010 19:08:43 +0200
changeset 0 522a326673b6
permissions -rw-r--r--
Moved swconfigapps content under oss repository.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     1
// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     2
// All rights reserved.
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     3
// This component and the accompanying materials are made available
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     5
// which accompanies this distribution, and is available
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     7
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     8
// Initial Contributors:
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    10
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    11
// Contributors:
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    12
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    13
// Description:
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    14
// ${file_name}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    15
// 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    16
//
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    17
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    18
package com.symbian.smt.gui.wizard;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    19
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    20
import java.lang.reflect.InvocationTargetException;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    21
import java.net.URI;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    22
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    23
import org.eclipse.core.resources.IProject;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    24
import org.eclipse.core.resources.IProjectDescription;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    25
import org.eclipse.core.resources.IResource;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    26
import org.eclipse.core.resources.IWorkspace;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    27
import org.eclipse.core.resources.IWorkspaceDescription;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    28
import org.eclipse.core.resources.IWorkspaceRunnable;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    29
import org.eclipse.core.resources.IncrementalProjectBuilder;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    30
import org.eclipse.core.resources.ProjectScope;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    31
import org.eclipse.core.resources.ResourcesPlugin;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    32
import org.eclipse.core.runtime.CoreException;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    33
import org.eclipse.core.runtime.IConfigurationElement;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    34
import org.eclipse.core.runtime.IExecutableExtension;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    35
import org.eclipse.core.runtime.IProgressMonitor;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    36
import org.eclipse.core.runtime.IStatus;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    37
import org.eclipse.core.runtime.OperationCanceledException;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    38
import org.eclipse.core.runtime.Status;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    39
import org.eclipse.core.runtime.SubProgressMonitor;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    40
import org.eclipse.core.runtime.jobs.Job;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    41
import org.eclipse.core.runtime.preferences.DefaultScope;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    42
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    43
import org.eclipse.core.runtime.preferences.IScopeContext;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    44
import org.eclipse.core.runtime.preferences.InstanceScope;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    45
import org.eclipse.jface.dialogs.MessageDialog;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    46
import org.eclipse.jface.viewers.ISelection;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    47
import org.eclipse.jface.viewers.IStructuredSelection;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    48
import org.eclipse.jface.wizard.Wizard;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    49
import org.eclipse.swt.widgets.Composite;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    50
import org.eclipse.ui.INewWizard;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    51
import org.eclipse.ui.IWorkbench;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    52
import org.eclipse.ui.IWorkbenchWizard;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    53
import org.eclipse.ui.actions.WorkspaceModifyOperation;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    54
import org.eclipse.ui.wizards.newresource.BasicNewProjectResourceWizard;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    55
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    56
import com.symbian.smt.gui.AbstractPersistentDataStore;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    57
import com.symbian.smt.gui.Activator;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    58
import com.symbian.smt.gui.Logger;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    59
import com.symbian.smt.gui.ManageResources;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    60
import com.symbian.smt.gui.PersistentDataStore;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    61
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    62
public class NewSMTProjectWizard extends Wizard implements INewWizard,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    63
		IExecutableExtension {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    64
	private NewProjectCreationPageCaseInsensitive projectCreationWizardPage;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    65
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    66
	private NewProjectWizardSystemDefsPage systemDefsWizardPage;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    67
	private NewProjectWizardTabbedPropertiesPage tabbedPropertiesWizardPage;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    68
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    69
	private ISelection selection;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    70
	private IWorkbench workbench;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    71
	private IConfigurationElement config;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    72
	private IProject projectHandle;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    73
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    74
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    75
	 * This is the entry point for creating and managing the wizard
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    76
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    77
	 * @return void
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    78
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    79
	public NewSMTProjectWizard() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    80
		super();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    81
		setNeedsProgressMonitor(true);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    82
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    83
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    84
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    85
	 * Adds pages to the wizard
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    86
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    87
	 * @return void
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    88
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    89
	public void addPages() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    90
		projectCreationWizardPage = new NewProjectCreationPageCaseInsensitive(
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    91
				"page1");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    92
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    93
		projectCreationWizardPage.setTitle("System Model Manager Wizard");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    94
		projectCreationWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    95
				.setDescription("Enter a name for the new project...");
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    96
		addPage(projectCreationWizardPage);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    97
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    98
		systemDefsWizardPage = new NewProjectWizardSystemDefsPage(selection);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
    99
		addPage(systemDefsWizardPage);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   100
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   101
		tabbedPropertiesWizardPage = new NewProjectWizardTabbedPropertiesPage(
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   102
				selection);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   103
		addPage(tabbedPropertiesWizardPage);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   104
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   105
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   106
	private void copyFilesIntoProject() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   107
		// Add the folders and files to the project
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   108
		ManageResources.updateShapesFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   109
				tabbedPropertiesWizardPage.getDefaultShapesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   110
		ManageResources.updateLevelsFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   111
				tabbedPropertiesWizardPage.getDefaultLevelsFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   112
		ManageResources.updateLocalisationFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   113
				tabbedPropertiesWizardPage.getDefaultLocalisationFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   114
		ManageResources.updateDependenciesFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   115
				tabbedPropertiesWizardPage.getDefaultDependenciesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   116
		ManageResources.updateSystemInfoFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   117
				tabbedPropertiesWizardPage.getDefaultSystemInfoFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   118
		ManageResources.updateColoursFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   119
				tabbedPropertiesWizardPage.getDefaultColoursFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   120
		ManageResources.updateBorderStylesFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   121
				tabbedPropertiesWizardPage.getDefaultBorderStylesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   122
		ManageResources.updateBorderShapesFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   123
				tabbedPropertiesWizardPage.getDefaultBorderShapesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   124
		ManageResources.updatePatternsFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   125
				tabbedPropertiesWizardPage.getDefaultPatternsFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   126
		ManageResources.updateS12XmlFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   127
				tabbedPropertiesWizardPage.getDefaultS12XmlFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   128
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   129
		// Add the system definition files to the project
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   130
		ManageResources.updateSystemDefinitionFiles(projectHandle,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   131
				systemDefsWizardPage.getSystemDefinitions(), false);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   132
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   133
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   134
	public void createPageControls(Composite pageContainer) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   135
		super.createPageControls(pageContainer);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   136
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   137
		IScopeContext defaultScope = new DefaultScope();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   138
		IEclipsePreferences defaultNode = defaultScope
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   139
				.getNode(Activator.PLUGIN_ID);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   140
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   141
		IScopeContext instanceScope = new InstanceScope();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   142
		IEclipsePreferences instanceNode = instanceScope
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   143
				.getNode(Activator.PLUGIN_ID);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   144
		PersistentDataStore instanceStore = new PersistentDataStore(
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   145
				instanceNode, defaultNode);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   146
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   147
		tabbedPropertiesWizardPage.initialize(instanceStore);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   148
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   149
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   150
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   151
	 * Sets up the project - project folder, nature, files, folders etc
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   152
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   153
	 * @return void
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   154
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   155
	void createProject(IProjectDescription description, IProject proj,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   156
			IProgressMonitor monitor) throws CoreException,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   157
			OperationCanceledException {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   158
		try {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   159
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   160
			monitor.beginTask("", 2000);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   161
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   162
			proj.create(description, new SubProgressMonitor(monitor, 1000));
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   163
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   164
			if (monitor.isCanceled()) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   165
				throw new OperationCanceledException();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   166
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   167
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   168
			proj.open(IResource.BACKGROUND_REFRESH, new SubProgressMonitor(
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   169
					monitor, 1000));
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   170
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   171
			try {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   172
				String[] natures = description.getNatureIds();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   173
				String[] newNatures = new String[natures.length + 1];
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   174
				System.arraycopy(natures, 0, newNatures, 0, natures.length);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   175
				newNatures[natures.length] = "com.symbian.smt.gui.nature";
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   176
				description.setNatureIds(newNatures);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   177
				proj.setDescription(description, null);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   178
			} catch (CoreException e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   179
				Logger.log(e.getMessage(), e);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   180
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   181
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   182
		} finally {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   183
			monitor.done();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   184
		}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   185
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   186
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   187
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   188
	 * We will accept the selection in the workbench to see if we can initialise
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   189
	 * from it.
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   190
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   191
	 * @see IWorkbenchWizard#init(IWorkbench, IStructuredSelection)
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   192
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   193
	public void init(IWorkbench workbench, IStructuredSelection selection) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   194
		this.selection = selection;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   195
		this.workbench = workbench;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   196
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   197
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   198
	/**
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   199
	 * This method is called when the finish button is pressed in the wizard
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   200
	 * 
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   201
	 * @return boolean
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   202
	 */
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   203
	public boolean performFinish() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   204
		projectHandle = projectCreationWizardPage.getProjectHandle();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   205
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   206
		if (projectHandle == null) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   207
			return false;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   208
		}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   209
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   210
		URI projectURI = (!projectCreationWizardPage.useDefaults()) ? projectCreationWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   211
				.getLocationURI()
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   212
				: null;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   213
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   214
		IWorkspace workspace = ResourcesPlugin.getWorkspace();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   215
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   216
		final IProjectDescription desc = workspace
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   217
				.newProjectDescription(projectHandle.getName());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   218
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   219
		desc.setLocationURI(projectURI);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   220
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   221
		WorkspaceModifyOperation op = new WorkspaceModifyOperation() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   222
			protected void execute(IProgressMonitor monitor)
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   223
					throws CoreException {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   224
				createProject(desc, projectHandle, monitor);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   225
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   226
		};
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   227
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   228
		try {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   229
			getContainer().run(false, false, op);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   230
		} catch (InterruptedException e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   231
			return false;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   232
		} catch (InvocationTargetException e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   233
			Throwable realException = e.getTargetException();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   234
			MessageDialog.openError(getShell(), "Error", realException
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   235
					.getMessage());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   236
			return false;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   237
		}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   238
		
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   239
		completePerformFinish();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   240
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   241
		// If auto building has been disabled then we force the build
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   242
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   243
	    IWorkspaceDescription description = workspace.getDescription();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   244
	    // If auto building has been disabled then we force the build
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   245
	    if (!description.isAutoBuilding()) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   246
			Job j= new Job("Building workspace") {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   247
				@Override
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   248
				protected IStatus run(IProgressMonitor monitor) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   249
					try {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   250
						projectHandle.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, monitor);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   251
					} catch (CoreException e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   252
						Logger.log(e.getMessage(), e);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   253
					}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   254
					
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   255
					return new Status(IStatus.OK, Activator.PLUGIN_ID, IStatus.OK, "updating properties succeeded", null);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   256
				}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   257
			};
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   258
			j.schedule();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   259
	    }
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   260
		
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   261
		return true;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   262
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   263
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   264
	private void completePerformFinish() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   265
		IWorkspaceRunnable  op = new IWorkspaceRunnable () {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   266
			public void run(IProgressMonitor monitor) throws CoreException  {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   267
				monitor.beginTask("Creating project", 0);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   268
				
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   269
				// Persist the project information
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   270
				// This needs to be done first as the builder will try to read from the
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   271
				// persistent store
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   272
				persistInformation();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   273
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   274
				// Copy the files into the project / Create file shortcut icons
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   275
				copyFilesIntoProject();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   276
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   277
				BasicNewProjectResourceWizard.updatePerspective(config);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   278
				BasicNewProjectResourceWizard.selectAndReveal(projectHandle, workbench
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   279
						.getActiveWorkbenchWindow());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   280
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   281
				monitor.worked(1);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   282
				monitor.done();
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   283
			}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   284
		};
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   285
		
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   286
		try {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   287
			ResourcesPlugin.getWorkspace().run(op, projectHandle, IWorkspace.AVOID_UPDATE, null);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   288
		} catch (CoreException e) {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   289
			MessageDialog.openError(getShell(), "Error", e.getMessage());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   290
			return;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   291
		}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   292
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   293
	
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   294
	private void persistInformation() {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   295
		IScopeContext projectScope = new ProjectScope(projectHandle);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   296
		IEclipsePreferences node = projectScope.getNode(Activator.PLUGIN_ID);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   297
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   298
		AbstractPersistentDataStore dataStore = new PersistentDataStore(node);
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   299
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   300
		// Persist the Output Filename
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   301
		dataStore.setOutputFilename(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   302
				.getOutputFilename());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   303
		
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   304
		// Persist the Model Labels
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   305
		dataStore.setCopyrightText(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   306
				.getCopyrightText());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   307
		dataStore.setDistributionTexts(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   308
				.getDistributionTexts());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   309
		dataStore.setSelectedDistributionText(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   310
				.getSelectedDistributionText());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   311
		dataStore.setModelName(tabbedPropertiesWizardPage.getModelName());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   312
		dataStore.setModelVersion(tabbedPropertiesWizardPage.getModelVersion());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   313
		dataStore.setModelVersionTexts(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   314
				.getModelVersionTexts());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   315
		dataStore.setSelectedModelVersionText(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   316
				.getSelectedModelVersionText());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   317
		dataStore.setSystemName(tabbedPropertiesWizardPage.getSystemName());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   318
		dataStore.setSystemVersion(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   319
				.getSystemVersion());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   320
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   321
		// Persist the Model Control
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   322
		dataStore.setHighlightCoreOS(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   323
				.getHighlightCoreOS());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   324
		dataStore.setLevelOfDetail(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   325
				.getLevelOfDetail());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   326
		dataStore.setPrintedDpis(tabbedPropertiesWizardPage.getPrintedDpis());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   327
		dataStore.setSelectedPrintedDpi(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   328
				.getSelectedPrintedDpi());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   329
		dataStore.setSuppressMouseOverEffect(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   330
				.getSuppressMouseOverEffect());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   331
		dataStore.setFixItemSize(tabbedPropertiesWizardPage.getFixItemSize());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   332
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   333
		// Persist the Resources, the selected file is persisted by the
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   334
		// ManageResources widget
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   335
		// All files (Selection is persisted as part of method
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   336
		// copyFilesIntoProject())
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   337
		dataStore.setBorderShapesFiles(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   338
				.getBorderShapesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   339
		dataStore.setBorderStylesFiles(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   340
				.getBorderStylesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   341
		dataStore.setColoursFiles(tabbedPropertiesWizardPage.getColoursFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   342
		dataStore.setDependenciesFiles(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   343
				.getDependenciesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   344
		dataStore.setLevelsFiles(tabbedPropertiesWizardPage.getLevelsFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   345
		dataStore.setLocalisationFiles(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   346
				.getLocalisationFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   347
		dataStore.setPatternsFiles(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   348
				.getPatternsFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   349
		dataStore.setShapesFiles(tabbedPropertiesWizardPage.getShapesFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   350
		dataStore.setSystemInfoFiles(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   351
				.getSystemInfoFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   352
		dataStore.setS12XmlFiles(tabbedPropertiesWizardPage.getS12XmlFiles());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   353
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   354
		// Persist the Ignore Items
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   355
		dataStore.setIgnoreItems(tabbedPropertiesWizardPage.getIgnoreItems());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   356
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   357
		// Persist the Filter Items
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   358
		dataStore
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   359
				.setFilterHasItems(tabbedPropertiesWizardPage.getFilterItems());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   360
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   361
		// Persist the Advanced Options
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   362
		dataStore.setAdvancedOptions(tabbedPropertiesWizardPage
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   363
				.getAdvancedOptions());
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   364
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   365
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   366
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   367
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   368
	public void setInitializationData(IConfigurationElement config,
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   369
			String propertyName, Object data) throws CoreException {
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   370
		this.config = config;
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   371
	}
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   372
522a326673b6 Moved swconfigapps content under oss repository.
terytkon
parents:
diff changeset
   373
}