From 436a3e5dd34c53f78c7ffd89b8f9ed3ee0a2b4d0 Mon Sep 17 00:00:00 2001
From: Mike Kucera
Date: Thu, 30 Apr 2009 19:53:45 +0000
Subject: [261232] initial commit of UPC new project wizard and UPC toolchain
---
.../.classpath | 7 +
.../.project | 28 ++
.../.settings/org.eclipse.jdt.core.prefs | 64 ++++
.../META-INF/MANIFEST.MF | 23 ++
.../build.properties | 6 +
.../icons/c-project.gif | Bin 0 -> 618 bytes
.../plugin.properties | 23 ++
.../plugin.xml | 371 +++++++++++++++++++++
.../cdt/managedbuilder/xlupc/ui/Activator.java | 42 +++
.../cdt/managedbuilder/xlupc/ui/Messages.java | 30 ++
.../managedbuilder/xlupc/ui/messages.properties | 16 +
.../xlupc/ui/wizards/UpcProjectWizard.java | 95 ++++++
.../xlupc/ui/wizards/XLUpcSettingsWizardPage.java | 40 +++
.../ui/wizards/XLUpcSettingsWizardRunnable.java | 77 +++++
14 files changed, 822 insertions(+)
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.classpath
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.project
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.settings/org.eclipse.jdt.core.prefs
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/META-INF/MANIFEST.MF
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/build.properties
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/icons/c-project.gif
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.properties
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.xml
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Activator.java
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Messages.java
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/messages.properties
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/UpcProjectWizard.java
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardPage.java
create mode 100644 xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardRunnable.java
(limited to 'xlc')
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.classpath b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.classpath
new file mode 100644
index 00000000000..2fbb7a23e12
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.classpath
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.project b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.project
new file mode 100644
index 00000000000..92de6441e00
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.project
@@ -0,0 +1,28 @@
+
+
+ org.eclipse.cdt.managedbuilder.xlupc.ui
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.pde.ManifestBuilder
+
+
+
+
+ org.eclipse.pde.SchemaBuilder
+
+
+
+
+
+ org.eclipse.pde.PluginNature
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.settings/org.eclipse.jdt.core.prefs b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..b9c91446870
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,64 @@
+#Thu Apr 30 10:33:45 EDT 2009
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/META-INF/MANIFEST.MF b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..4b37d798e53
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name.0
+Bundle-SymbolicName: org.eclipse.cdt.managedbuilder.xlupc.ui;singleton:=true
+Bundle-Version: 1.0.0
+Bundle-Activator: org.eclipse.cdt.managedbuilder.xlupc.ui.Activator
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.cdt.managedbuilder.core;bundle-version="5.0.1",
+ org.eclipse.cdt.core;bundle-version="5.0.2",
+ org.eclipse.core.resources;bundle-version="3.4.1",
+ org.eclipse.cdt.managedbuilder.ui;bundle-version="5.0.1",
+ org.eclipse.cdt.ui;bundle-version="5.0.2",
+ org.eclipse.ui.ide;bundle-version="3.4.1",
+ org.eclipse.core.variables;bundle-version="3.2.100",
+ org.eclipse.cdt.managedbuilder.xlc.ui;bundle-version="5.0.0",
+ org.eclipse.cdt.core.parser.upc;bundle-version="5.0.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.4
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %Bundle-Vendor.0
+Export-Package: org.eclipse.cdt.managedbuilder.xlupc.ui,
+ org.eclipse.cdt.managedbuilder.xlupc.ui.wizards
+Bundle-Localization: plugin
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/build.properties b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/build.properties
new file mode 100644
index 00000000000..0dc34f7833b
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/build.properties
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ plugin.properties
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/icons/c-project.gif b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/icons/c-project.gif
new file mode 100644
index 00000000000..0b693cb5f60
Binary files /dev/null and b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/icons/c-project.gif differ
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.properties b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.properties
new file mode 100644
index 00000000000..755370966bb
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.properties
@@ -0,0 +1,23 @@
+#Properties file for org.eclipse.cdt.managedbuilder.xlupc.ui
+Bundle-Vendor.0 = provider???
+Bundle-Name.0 = name???
+category.name.1=UPC
+wizard.name.1=UPC Project
+
+ToolName.compiler.xlupc = UPC Compiler
+
+TargetName.xlupc.exe=Executable (XL UPC)
+TargetName.xlupc.so=Shared Library (XL UPC)
+TargetName.xlupc.lib=Static Library(XL UPC)
+
+ToolChainName.Upc=UPC Tool Chain
+
+ConfigName.Dbg=Debug
+ConfigName.Rel=Release
+
+PlatformName.Rel=Release Platform
+PlatformName.Dbg=Debug Platform
+
+BuildProperty.type.name.xlupc.executable=Executable (UPC)
+BuildProperty.type.name.xlupc.staticLibrary=Static Library (UPC)
+BuildProperty.type.name.xlupc.sharedLibrary=Shared Library (UPC)
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.xml b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.xml
new file mode 100644
index 00000000000..3abe93e484f
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/plugin.xml
@@ -0,0 +1,371 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Activator.java b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Activator.java
new file mode 100644
index 00000000000..459f613723e
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Activator.java
@@ -0,0 +1,42 @@
+/*******************************************************************************
+ * Copyright (c) 2009 IBM Corporation and others.
+ * 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:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.cdt.managedbuilder.xlupc.ui;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+
+public class Activator extends AbstractUIPlugin {
+
+ public static final String PLUGIN_ID = "org.eclipse.cdt.managedbuilder.xlupc.ui"; //$NON-NLS-1$
+
+
+ private static Activator plugin;
+
+
+ public Activator() {
+ }
+
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Messages.java b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Messages.java
new file mode 100644
index 00000000000..f78eeb59d8f
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/Messages.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2009 IBM Corporation and others.
+ * 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:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.cdt.managedbuilder.xlupc.ui;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+
+ private static final String BUNDLE_NAME = "org.eclipse.cdt.managedbuilder.xlupc.ui.messages"; //$NON-NLS-1$
+
+ static {
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {}
+
+ public static String UpcProjectWizard_0;
+ public static String UpcProjectWizard_1;
+ public static String XLUpcSettingsWizardPage_0;
+ public static String XLUpcSettingsWizardPage_1;
+}
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/messages.properties b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/messages.properties
new file mode 100644
index 00000000000..6c3ae1ca1b5
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/messages.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2009 IBM Corporation and others.
+# 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:
+# IBM Corporation - initial API and implementation
+###############################################################################
+
+UpcProjectWizard_0=UPC Project
+UpcProjectWizard_1=Create UPC project of selected type
+
+XLUpcSettingsWizardPage_0=XL UPC Settings
+XLUpcSettingsWizardPage_1=XL Compiler Settings
\ No newline at end of file
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/UpcProjectWizard.java b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/UpcProjectWizard.java
new file mode 100644
index 00000000000..ff20c19e940
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/UpcProjectWizard.java
@@ -0,0 +1,95 @@
+/*******************************************************************************
+ * Copyright (c) 2009 IBM Corporation and others.
+ * 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:
+ * IBM - Initial API and implementation
+ *******************************************************************************/
+package org.eclipse.cdt.managedbuilder.xlupc.ui.wizards;
+
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.cdt.core.CProjectNature;
+import org.eclipse.cdt.managedbuilder.xlupc.ui.Messages;
+import org.eclipse.cdt.ui.wizards.CDTCommonProjectWizard;
+import org.eclipse.cdt.ui.wizards.CDTMainWizardPage;
+import org.eclipse.cdt.ui.wizards.EntryDescriptor;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+
+
+@SuppressWarnings({ "nls", "serial" })
+public class UpcProjectWizard extends CDTCommonProjectWizard {
+
+ private static final String ARTIFACT_TYPE_UPC_EXE = "org.eclipse.cdt.build.core.buildArtefactType.xlupc.exe";
+ private static final String ARTIFACT_TYPE_UPC_EXE_DEFAULT = ARTIFACT_TYPE_UPC_EXE + ".default";
+
+ private static final String ARTIFACT_TYPE_UPC_SO = "org.eclipse.cdt.build.core.buildArtefactType.xlupc.sharedLib";
+ private static final String ARTIFACT_TYPE_UPC_SO_DEFAULT = ARTIFACT_TYPE_UPC_SO + ".default";
+
+ private static final String ARTIFACT_TYPE_UPC_LIB = "org.eclipse.cdt.build.core.buildArtefactType.xlupc.staticLib";
+ private static final String ARTIFACT_TYPE_UPC_LIB_DEFAULT = ARTIFACT_TYPE_UPC_LIB + ".default";
+
+ private final static String PAGE_NAME = "org.eclipse.cdt.managedbuilder.xlupc.ui.mainpage";
+
+
+ private static final Set ALL_TYPES = new HashSet() {{
+ add(ARTIFACT_TYPE_UPC_EXE);
+ add(ARTIFACT_TYPE_UPC_EXE_DEFAULT);
+ add(ARTIFACT_TYPE_UPC_SO);
+ add(ARTIFACT_TYPE_UPC_SO_DEFAULT);
+ add(ARTIFACT_TYPE_UPC_LIB);
+ add(ARTIFACT_TYPE_UPC_LIB_DEFAULT);
+ }};
+
+
+
+ public UpcProjectWizard() {
+ super(Messages.UpcProjectWizard_0, Messages.UpcProjectWizard_1);
+ }
+
+
+ public void addPages() {
+ fMainPage = new CDTMainWizardPage(PAGE_NAME) {
+
+ @SuppressWarnings("unchecked")
+ public List filterItems(List items) {
+ // filter out all non-UPC project types
+ if (items != null) {
+ Iterator iter = items.iterator();
+ while (iter.hasNext()) {
+ EntryDescriptor entryDescriptor = (EntryDescriptor) iter.next();
+ if(!ALL_TYPES.contains(entryDescriptor.getId()))
+ iter.remove();
+ }
+ }
+ return items;
+ }
+ };
+
+ fMainPage.setTitle(Messages.UpcProjectWizard_0);
+ fMainPage.setDescription(Messages.UpcProjectWizard_1);
+ addPage(fMainPage);
+ }
+
+
+ protected IProject continueCreation(IProject prj) {
+ try {
+ CProjectNature.addCNature(prj, new NullProgressMonitor());
+ } catch (CoreException e) {}
+ return prj;
+ }
+
+
+ public String[] getNatures() {
+ return new String[] { CProjectNature.C_NATURE_ID/*, CCProjectNature.CC_NATURE_ID, RemoteNature.REMOTE_NATURE_ID*/};
+ }
+
+}
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardPage.java b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardPage.java
new file mode 100644
index 00000000000..f379581c1d8
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardPage.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2009 IBM Corporation and others.
+ * 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:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.cdt.managedbuilder.xlupc.ui.wizards;
+
+import org.eclipse.cdt.managedbuilder.xlc.ui.wizards.XLCSettingsWizardPage;
+import org.eclipse.cdt.managedbuilder.xlupc.ui.Messages;
+
+/**
+ *
+ */
+public class XLUpcSettingsWizardPage extends XLCSettingsWizardPage {
+
+ public static final String PAGE_ID = "org.eclipse.cdt.managedbuilder.xlupc.ui.wizards.XLUpcSettingsWizardPage"; //$NON-NLS-1$
+
+ public XLUpcSettingsWizardPage(String pageID) {
+ super(pageID);
+ }
+
+ public XLUpcSettingsWizardPage() {
+ super();
+ pageID = PAGE_ID;
+ }
+
+ public String getName() {
+ return Messages.XLUpcSettingsWizardPage_0;
+ }
+
+ public String getTitle() {
+ return Messages.XLUpcSettingsWizardPage_1;
+ }
+
+}
diff --git a/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardRunnable.java b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardRunnable.java
new file mode 100644
index 00000000000..e3839093a84
--- /dev/null
+++ b/xlc/org.eclipse.cdt.managedbuilder.xlupc.ui/src/org/eclipse/cdt/managedbuilder/xlupc/ui/wizards/XLUpcSettingsWizardRunnable.java
@@ -0,0 +1,77 @@
+/*******************************************************************************
+ * Copyright (c) 2009 IBM Corporation and others.
+ * 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:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.cdt.managedbuilder.xlupc.ui.wizards;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.cdt.core.CCorePlugin;
+import org.eclipse.cdt.core.dom.upc.UPCLanguage;
+import org.eclipse.cdt.core.language.ProjectLanguageConfiguration;
+import org.eclipse.cdt.core.model.CoreModel;
+import org.eclipse.cdt.core.model.LanguageManager;
+import org.eclipse.cdt.core.settings.model.ICConfigurationDescription;
+import org.eclipse.cdt.core.settings.model.ICProjectDescription;
+import org.eclipse.cdt.managedbuilder.ui.wizards.MBSCustomPageManager;
+import org.eclipse.cdt.managedbuilder.xlc.ui.wizards.XLCSettingsWizardRunnable;
+import org.eclipse.cdt.ui.wizards.CDTCommonProjectWizard;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.content.IContentType;
+import org.eclipse.core.runtime.content.IContentTypeManager;
+import org.eclipse.jface.wizard.IWizardPage;
+
+
+public class XLUpcSettingsWizardRunnable extends XLCSettingsWizardRunnable {
+
+
+ // now add UPC language mapping to the project
+ private static final String[] CONTENT_TYPE_IDS = { CCorePlugin.CONTENT_TYPE_CHEADER, CCorePlugin.CONTENT_TYPE_CSOURCE };
+
+ public XLUpcSettingsWizardRunnable() {
+ pageId = XLUpcSettingsWizardPage.PAGE_ID;
+ }
+
+ public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
+ super.run(monitor);
+
+ // get a handle to the wizard
+ IWizardPage[] pages = MBSCustomPageManager.getPages();
+
+ if (pages != null && pages.length > 0) {
+
+ CDTCommonProjectWizard wizard = (CDTCommonProjectWizard) pages[0].getWizard();
+ IProject project = wizard.getLastProject();
+ LanguageManager langManager = LanguageManager.getInstance();
+
+ try {
+ ProjectLanguageConfiguration langConfig = langManager.getLanguageConfiguration(project);
+
+ ICProjectDescription projectDescription = CoreModel.getDefault().getProjectDescription(project, false);
+ ICConfigurationDescription configDescription = projectDescription.getActiveConfiguration();
+
+ IContentTypeManager contentTypeManager = Platform.getContentTypeManager();
+
+ for(String id : CONTENT_TYPE_IDS) {
+ if(contentTypeManager.getContentType(id) != null) {
+ langConfig.addContentTypeMapping(configDescription, id, UPCLanguage.ID);
+ }
+ }
+
+ langManager.storeLanguageMappingConfiguration(project, new IContentType[0]);
+
+ } catch (CoreException e) {
+ CCorePlugin.log(e);
+ }
+ }
+ }
+}
--
cgit v1.2.3