[Esbox-commits] r1658 - in branches/work_Ed: org.maemo.esbox.cpp.project org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards org.maemo.esbox.product org.maemo.esbox.product/META-INF org.maemo.esbox.python.project org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards org.maemo.esbox.scratchbox.tests/data/projects/gtkhelloworldcproject org.maemo.esbox.scratchbox.ui/src/org/maemo/esbox/internal/api/scratchbox/ui/wizards

eswartz at garage.maemo.org eswartz at garage.maemo.org
Sun May 31 01:37:17 EEST 2009


Author: eswartz
Date: 2009-05-31 01:37:17 +0300 (Sun, 31 May 2009)
New Revision: 1658

Added:
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ESboxCppProjectNature.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/AbstractESboxCppProjectWizard.java
   branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonProjectNature.java
Removed:
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseESboxCppProjectWizard.java
   branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonNature.java
Modified:
   branches/work_Ed/org.maemo.esbox.cpp.project/plugin.xml
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ConvertCppProjectMarkerResolutionGenerator.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/MaemoCppProjectPackageGatherer.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxBuildConfigManager.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxCppBuildConfigurationSelectionDialog.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESBoxOldCppTargetPropertyPage.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESboxCppBuildConfigurationsPage.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCppProjectWizard.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCCProjectWizard.java
   branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCProjectWizard.java
   branches/work_Ed/org.maemo.esbox.product/META-INF/MANIFEST.MF
   branches/work_Ed/org.maemo.esbox.product/plugin.xml
   branches/work_Ed/org.maemo.esbox.python.project/plugin.xml
   branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/ESboxPythonProjectPackageGatherer.java
   branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxOldPythonBuildTargetPropertyPage.java
   branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxPythonBuildConfigurationsPage.java
   branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ConvertToESboxPythonProjectWizard.java
   branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ESboxPythonProjectWizard.java
   branches/work_Ed/org.maemo.esbox.scratchbox.tests/data/projects/gtkhelloworldcproject/.project
   branches/work_Ed/org.maemo.esbox.scratchbox.ui/src/org/maemo/esbox/internal/api/scratchbox/ui/wizards/ApplyAutoconfPatchContextMenuProvider.java
Log:
More refactoring:
-- Split ESbox/PluThon project natures
-- Add converters for PluThon projects
-- Be sure converter can read more data from old projects
-- Cache project type/builder results in converter wizard
-- Fix some incorrect wizard ids and enablements
-- Provide context menu on build configurations
-- Don't filter templates w/o project builder types
-- Wire up Python build artifact provider


Modified: branches/work_Ed/org.maemo.esbox.cpp.project/plugin.xml
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/plugin.xml	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/plugin.xml	2009-05-30 22:37:17 UTC (rev 1658)
@@ -3,6 +3,20 @@
 <plugin>
 
    <extension
+         id="cppNature"
+         name="ESbox C/C++ Project Nature"
+         point="org.eclipse.core.resources.natures">
+      <runtime>
+         <run
+               class="org.maemo.esbox.internal.cpp.project.ESboxCppProjectNature">
+         </run>
+      </runtime>
+      <requires-nature
+            id="org.maemo.mica.cpp.project.core.cppNature">
+      </requires-nature>
+   </extension>
+ 
+   <extension
         point="org.eclipse.ui.newWizards">
      <wizard
            category="org.eclipse.cdt.ui.newCWizards"
@@ -11,7 +25,7 @@
            preferredPerspectives="org.maemo.esbox.product.ESboxPerspective,org.eclipse.cdt.ui.CPerspective"
            hasPages="true"
            icon="icons/full/obj16/maemo_convert.png"
-           id="org.maemo.mica.cpp.project.ui.wizards.ConvertToESboxWizard"
+           id="org.maemo.esbox.cpp.project.ConvertToESboxWizard"
            name="Convert to an ESbox C/C++ Project">
         <description>
            Convert an existing C/C++ project to build for ESbox.
@@ -20,8 +34,25 @@
               class="org.eclipse.core.resources.IProject">
         </selection>
      </wizard>
+      <wizard
+           category="org.eclipse.cdt.ui.newCCWizards"
+           class="org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCppProjectWizard"
+           finalPerspective="org.maemo.esbox.product.ESboxPerspective"
+           preferredPerspectives="org.maemo.esbox.product.ESboxPerspective,org.eclipse.cdt.ui.CPerspective"
+           hasPages="true"
+           icon="icons/full/obj16/maemo_convert.png"
+           id="org.maemo.esbox.cpp.project.ConvertToESboxWizard"
+           name="Convert to an ESbox C/C++ Project">
+        <description>
+           Convert an existing C/C++ project to build for ESbox.
+        </description>
+        <selection
+              class="org.eclipse.core.resources.IProject">
+        </selection>
+     </wizard>
      
   </extension>
+  
   <extension
         point="org.eclipse.ui.newWizards">
      <wizard
@@ -32,7 +63,7 @@
            preferredPerspectives="org.maemo.esbox.product.ESboxPerspective,org.eclipse.cdt.ui.CPerspective"
            hasPages="true"
            icon="icons/full/obj16/maemo_c_prj.gif"
-           id="org.maemo.mica.cpp.project.ui.wizards.ESboxCppCProjectWizard"
+           id="org.maemo.esbox.cpp.project.ESboxCppCProjectWizard"
            name="C Maemo Project"
            project="true">
      </wizard>
@@ -44,25 +75,29 @@
            preferredPerspectives="org.maemo.esbox.product.ESboxPerspective,org.eclipse.cdt.ui.CPerspective"
            hasPages="true"
            icon="icons/full/obj16/maemo_c_prj.gif"
-           id="org.maemo.mica.cpp.project.ui.wizards.ESboxCppCCProjectWizard"
+           id="org.maemo.esbox.cpp.project.ESboxCppCCProjectWizard"
            name="C++ Maemo Project"
            project="true">
      </wizard>
   </extension>
   
-  
   <extension
         point="org.eclipse.ui.navigator.navigatorContent">
      <commonWizard
            associatedExtensionId="org.eclipse.cdt.ui.navigator.content"
            menuGroupId="org.eclipse.cdt.ui.newProject"
            type="new"
-           wizardId="org.maemo.mica.cpp.project.ui.wizards.ConvertToESboxWizard">
+           wizardId="org.maemo.esbox.cpp.project.ConvertToESboxWizard">
         <enablement>
            <and>
-              <adapt
-                    type="org.eclipse.core.resources.IProject">
-              </adapt>
+	            <adapt type="org.eclipse.core.resources.IProject" />
+				<not>
+		            <adapt type="org.eclipse.core.resources.IProject" >
+		               <test
+		                     property="org.eclipse.core.resources.projectNature"
+		                     value="org.maemo.esbox.cpp.project.cppNature"/>
+		            </adapt>
+				</not>
            </and>
         </enablement>
      </commonWizard>
@@ -72,13 +107,13 @@
       <commonWizard
             menuGroupId="org.eclipse.cdt.ui.newProject"
             type="new"
-            wizardId="org.maemo.mica.cpp.project.ui.wizards.ESboxCppCProjectWizard">
+            wizardId="org.maemo.esbox.cpp.project.ESboxCppCProjectWizard">
          <enablement></enablement>
       </commonWizard>
       <commonWizard
             menuGroupId="org.eclipse.cdt.ui.newProject"
             type="new"
-            wizardId="org.maemo.mica.cpp.project.ui.wizards.ESboxCppCCProjectWizard">
+            wizardId="org.maemo.esbox.cpp.project.ESboxCppCCProjectWizard">
          <enablement></enablement>
       </commonWizard>
    </extension>
@@ -89,28 +124,8 @@
            associatedExtensionId="org.eclipse.cdt.ui.navigator.content"
            menuGroupId="org.eclipse.cdt.ui.newProject"
            type="new"
-           wizardId="org.maemo.mica.cpp.project.ui.wizards.ConvertToESboxCppBuildConfigWizard">
+           wizardId="org.maemo.esbox.cpp.project.ConvertToESboxCppBuildConfigWizard">
 		 <enablement>
-		 	<and>
-	            <adapt type="org.eclipse.core.resources.IProject" />
-				<not>
-		            <adapt type="org.eclipse.core.resources.IProject" >
-		               <test
-		                     property="org.eclipse.core.resources.projectNature"
-		                     value="org.maemo.mica.cpp.project.core.ESboxCppNature"/>
-		            </adapt>
-				</not>
-		 	</and>
-			<and>
-	            <adapt type="org.eclipse.core.resources.IProject" />
-				<not>
-		            <adapt type="org.eclipse.core.resources.IProject" >
-		               <test
-		                     property="org.eclipse.core.resources.projectNature"
-		                     value="org.maemo.mica.python.project.core.ESboxPythonNature"/>
-		            </adapt>
-				</not>
-		 	</and>		 	
          </enablement>
       </commonWizard>
 
@@ -118,7 +133,7 @@
            associatedExtensionId="org.eclipse.cdt.ui.navigator.content"
            menuGroupId="org.eclipse.cdt.ui.newProject"
            type="new"
-           wizardId="org.maemo.mica.cpp.project.ui.wizards.ESboxNewCppBuildConfigProjectWizard">
+           wizardId="org.maemo.esbox.cpp.project.ESboxNewCppBuildConfigProjectWizard">
 		 <enablement>
          </enablement>
       </commonWizard>      
@@ -132,7 +147,7 @@
            name="Maemo Build Configurations">
         <filter
               name="nature"
-              value="org.maemo.mica.cpp.project.core.cppNature">
+              value="org.maemo.esbox.cpp.project.cppNature">
         </filter>
         <enabledWhen>
           	<adapt type="org.eclipse.core.resources.IProject">

Added: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ESboxCppProjectNature.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ESboxCppProjectNature.java	                        (rev 0)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ESboxCppProjectNature.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -0,0 +1,56 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Nokia Corporation.
+ * 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:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.cpp.project;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectNature;
+import org.eclipse.core.runtime.CoreException;
+
+/**
+ * ESbox C/C++ project nature.  This is merely a differentiator for ESbox
+ * products.  Mica projects have their own C/C++ natures. 
+ * @author eswartz
+ *
+ */
+public class ESboxCppProjectNature implements IProjectNature {
+	
+	public static final String NATURE_ID = Activator.PLUGIN_ID + ".cppNature";
+
+	private IProject project;
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#configure()
+	 */
+	public void configure() throws CoreException {
+	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#deconfigure()
+	 */
+	public void deconfigure() throws CoreException {
+	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#getProject()
+	 */
+	public IProject getProject() {
+		return project;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#setProject(org.eclipse.core.resources.IProject)
+	 */
+	public void setProject(IProject project) {
+		this.project = project;
+	}
+
+}

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ConvertCppProjectMarkerResolutionGenerator.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ConvertCppProjectMarkerResolutionGenerator.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ConvertCppProjectMarkerResolutionGenerator.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -12,6 +12,7 @@
 package org.maemo.esbox.internal.cpp.project.core;
 
 import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.jface.dialogs.IDialogConstants;
 import org.eclipse.jface.wizard.WizardDialog;
@@ -64,6 +65,7 @@
 				public void run(IMarker marker) {
 					try {
 						ConvertToESboxCppProjectWizard wizard = new ConvertToESboxCppProjectWizard();
+						wizard.setInitialProjects(new IProject[] { marker.getResource().getProject() });
 						WizardDialog dialog = new WizardDialog(null, wizard);
 						if (dialog.open() == IDialogConstants.OK_ID) {
 							marker.delete();

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/MaemoCppProjectPackageGatherer.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/MaemoCppProjectPackageGatherer.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/MaemoCppProjectPackageGatherer.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -14,6 +14,7 @@
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IProgressMonitor;
+import org.maemo.esbox.internal.cpp.project.ESboxCppProjectNature;
 import org.maemo.mica.common.core.machine.IBuildMachine;
 import org.maemo.mica.common.core.sdk.ISDKTarget;
 import org.maemo.mica.common.project.core.NatureUtils;
@@ -40,7 +41,7 @@
 	public ProjectPackageInfo scanPackages(IProject project,
 			ISDKTarget sdkTarget,
 			IProgressMonitor monitor) throws CoreException {
-		if (NatureUtils.isNatureInProject(project, MicaCppProjectNature.CPP_NATURE_ID)) {
+		if (NatureUtils.isNatureInProject(project, ESboxCppProjectNature.NATURE_ID)) {
 			ProjectPackageInfo info = new ProjectPackageInfo();
 			
 			if (sdkTarget == null) {

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxBuildConfigManager.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxBuildConfigManager.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxBuildConfigManager.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -20,13 +20,13 @@
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.jface.dialogs.IDialogConstants;
 import org.maemo.esbox.internal.cpp.project.Activator;
+import org.maemo.esbox.internal.cpp.project.ESboxCppProjectNature;
 import org.maemo.mica.common.project.core.IBuildConfiguration;
 import org.maemo.mica.common.project.core.IBuildConfigurationData;
 import org.maemo.mica.common.project.core.IProjectHandle;
 import org.maemo.mica.common.project.core.NatureUtils;
 import org.maemo.mica.common.project.core.ProjectManager;
 import org.maemo.mica.common.project.ui.BuildConfigUtils;
-import org.maemo.mica.cpp.project.core.MicaCppProjectNature;
 
 /**
  * This implements the ...ConfigManager extension which tells CDT
@@ -45,7 +45,7 @@
 	public boolean canManage(IProject[] obs) {
 		if (obs != null && obs.length == 1) {
 			IProject project = obs[0];
-			return NatureUtils.isNatureInProject(project, MicaCppProjectNature.CPP_NATURE_ID);
+			return NatureUtils.isNatureInProject(project, ESboxCppProjectNature.NATURE_ID);
 		}
 		return false;
 	}

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxCppBuildConfigurationSelectionDialog.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxCppBuildConfigurationSelectionDialog.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/ESboxCppBuildConfigurationSelectionDialog.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -11,15 +11,11 @@
 
 package org.maemo.esbox.internal.cpp.project.ui;
 
-import org.eclipse.core.resources.IProject;
 import org.eclipse.swt.widgets.Shell;
 import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
 import org.maemo.mica.common.project.core.IBuildTargetFilter;
-import org.maemo.mica.common.project.core.IBuildConfigurationProvider;
 import org.maemo.mica.common.project.core.IProjectHandle;
 import org.maemo.mica.common.project.ui.BuildConfigurationSelectionDialog;
-import org.maemo.mica.common.project.ui.StockAndExistingTargetBuildConfigurationProvider;
-import org.maemo.mica.internal.api.cpp.project.core.MicaCppStockMakeBuildConfigurationProvider;
 
 public class ESboxCppBuildConfigurationSelectionDialog extends
 		BuildConfigurationSelectionDialog {

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESBoxOldCppTargetPropertyPage.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESBoxOldCppTargetPropertyPage.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESBoxOldCppTargetPropertyPage.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -12,7 +12,6 @@
 package org.maemo.esbox.internal.cpp.project.ui.properties;
 
 import org.eclipse.core.resources.IProject;
-import org.eclipse.jface.wizard.Wizard;
 import org.eclipse.jface.wizard.WizardDialog;
 import org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCppProjectWizard;
 import org.maemo.mica.common.project.ui.properties.AbstractOldFormatTargetPropertyPage;
@@ -30,8 +29,8 @@
 	 */
 	@Override
 	protected void convertProject(IProject project) {
-		Wizard wizard;
-		wizard = new ConvertToESboxCppProjectWizard();
+		ConvertToESboxCppProjectWizard wizard = new ConvertToESboxCppProjectWizard();
+		wizard.setInitialProjects(new IProject[] { project });
 		WizardDialog dialog = new WizardDialog(null, wizard);
 		dialog.open();
 	}

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESboxCppBuildConfigurationsPage.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESboxCppBuildConfigurationsPage.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/properties/ESboxCppBuildConfigurationsPage.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -23,14 +23,13 @@
 import org.maemo.mica.common.project.core.IStockBuildConfigurationDescriptor;
 import org.maemo.mica.common.project.core.IStockBuildConfigurationProvider;
 import org.maemo.mica.common.project.core.ProjectManager;
+import org.maemo.mica.common.project.ui.AbstractSingleEditBuildConfigurationsPage;
 import org.maemo.mica.common.project.ui.BuildTargetAndConfigurationProvider;
 import org.maemo.mica.common.project.ui.IBuildConfigSelectionDialog;
-import org.maemo.mica.common.project.ui.AbstractSingleEditBuildConfigurationsPage;
 import org.maemo.mica.common.project.ui.StockTargetBuildConfigurationProvider;
 import org.maemo.mica.common.ui.BuildTargetProvider;
 import org.maemo.mica.common.ui.env.EnvironmentTable;
 import org.maemo.mica.cpp.project.core.ICppBuildConfigurationData;
-import org.maemo.mica.internal.api.cpp.project.core.MicaCppStockMakeBuildConfigurationProvider;
 
 /**
  * ESbox build configurations page for C/C++ projects.

Copied: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/AbstractESboxCppProjectWizard.java (from rev 1657, branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseESboxCppProjectWizard.java)
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/AbstractESboxCppProjectWizard.java	                        (rev 0)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/AbstractESboxCppProjectWizard.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -0,0 +1,74 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Nokia Corporation
+ * 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:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.cpp.project.ui.wizards;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.maemo.esbox.internal.cpp.project.Activator;
+import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
+import org.maemo.mica.common.project.core.IBuildTargetFilter;
+import org.maemo.mica.common.project.core.IStockBuildConfigurationProvider;
+import org.maemo.mica.common.project.core.IBuildConfigurationProvider;
+import org.maemo.mica.common.project.ui.StockTargetBuildConfigurationProvider;
+import org.maemo.mica.common.project.ui.wizards.AbstractProjectLocationTargetSelectionPage;
+import org.maemo.mica.common.project.ui.wizards.ProjectBuildConfigSelectionPage;
+import org.maemo.mica.cpp.project.ui.AbstractCppProjectWizard;
+import org.maemo.mica.internal.api.cpp.project.core.MicaCppStockMakeBuildConfigurationProvider;
+
+/**
+ * Base C or C++ project wizard.
+ * @author eswartz
+ *
+ */
+public abstract class AbstractESboxCppProjectWizard extends AbstractCppProjectWizard {
+
+	private static final String WIZARD_BANNER = "./icons/full/wizban/maemo_wizban.gif";
+
+	protected abstract String getProjectTypeIdPattern();
+
+	public AbstractESboxCppProjectWizard(String title, String desc) {
+		super(title, desc);
+	}
+
+	@Override
+	protected AbstractProjectLocationTargetSelectionPage createProjectAndTargetSelectionPage() {
+		return new ProjectBuildConfigSelectionPage(
+				getConfigHandler(), 
+				getBuildTargetFilter(),
+				getTargetBuildConfigurationProvider());
+	}
+
+	/**
+	 * Get the provider of stock configurations for the targets in the tree.
+	 * @return {@link IStockBuildConfigurationProvider} or <code>null</code>
+	 */
+	protected IBuildConfigurationProvider getTargetBuildConfigurationProvider() {
+		// FIXME XFCTR: this stock configuration provider should be from the project builder type
+		return new StockTargetBuildConfigurationProvider( 
+				new MicaCppStockMakeBuildConfigurationProvider());
+	}
+
+	@Override
+	protected IBuildTargetFilter createBuildTargetFilter() {
+		return new BuildMachineHostedTargetFilter();
+	}
+
+	@Override
+	protected ImageDescriptor getWizardPageImageDescriptor() {
+		return Activator.getImageDescriptor(WIZARD_BANNER);
+	}
+
+	@Override
+	protected void initializeDefaultPageImageDescriptor() {
+		setDefaultPageImageDescriptor(getWizardPageImageDescriptor());
+	}
+
+}
\ No newline at end of file

Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseESboxCppProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseESboxCppProjectWizard.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseESboxCppProjectWizard.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Nokia Corporation
- * 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:
- *    Ed Swartz (Nokia) - initial API and implementation
- *******************************************************************************/
-
-package org.maemo.esbox.internal.cpp.project.ui.wizards;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.maemo.esbox.internal.cpp.project.Activator;
-import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
-import org.maemo.mica.common.project.core.IBuildTargetFilter;
-import org.maemo.mica.common.project.core.IStockBuildConfigurationProvider;
-import org.maemo.mica.common.project.core.IBuildConfigurationProvider;
-import org.maemo.mica.common.project.ui.StockTargetBuildConfigurationProvider;
-import org.maemo.mica.common.project.ui.wizards.AbstractProjectLocationTargetSelectionPage;
-import org.maemo.mica.cpp.project.ui.BaseCppProjectWizard;
-import org.maemo.mica.cpp.project.ui.ProjectBuildConfigSelectionPage;
-import org.maemo.mica.internal.api.cpp.project.core.MicaCppStockMakeBuildConfigurationProvider;
-
-/**
- * Base C or C++ project wizard.
- * @author eswartz
- *
- */
-public abstract class BaseESboxCppProjectWizard extends BaseCppProjectWizard {
-
-	private static final String WIZARD_BANNER = "./icons/full/wizban/maemo_wizban.gif";
-
-	protected abstract String getProjectTypeIdPattern();
-
-	public BaseESboxCppProjectWizard(String title, String desc) {
-		super(title, desc);
-	}
-
-	@Override
-	protected AbstractProjectLocationTargetSelectionPage createProjectAndTargetSelectionPage() {
-		return new ProjectBuildConfigSelectionPage(
-				getConfigHandler(), 
-				getBuildTargetFilter(),
-				getTargetBuildConfigurationProvider());
-	}
-
-	/**
-	 * Get the provider of stock configurations for the targets in the tree.
-	 * @return {@link IStockBuildConfigurationProvider} or <code>null</code>
-	 */
-	protected IBuildConfigurationProvider getTargetBuildConfigurationProvider() {
-		return new StockTargetBuildConfigurationProvider( 
-				new MicaCppStockMakeBuildConfigurationProvider());
-	}
-
-	@Override
-	protected IBuildTargetFilter createBuildTargetFilter() {
-		return new BuildMachineHostedTargetFilter();
-	}
-
-	@Override
-	protected ImageDescriptor getWizardPageImageDescriptor() {
-		return Activator.getImageDescriptor(WIZARD_BANNER);
-	}
-
-	@Override
-	protected void initializeDefaultPageImageDescriptor() {
-		setDefaultPageImageDescriptor(getWizardPageImageDescriptor());
-	}
-
-}
\ No newline at end of file

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCppProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCppProjectWizard.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCppProjectWizard.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -13,6 +13,7 @@
 
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.maemo.esbox.internal.cpp.project.Activator;
+import org.maemo.esbox.internal.cpp.project.ESboxCppProjectNature;
 import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
 import org.maemo.mica.common.project.core.IBuildTargetFilter;
 import org.maemo.mica.common.project.core.ProjectConfigHandler;
@@ -52,7 +53,7 @@
 	 */
 	@Override
 	protected void updateProjectConfigHandler(ProjectConfigHandler configHandler) {
+		configHandler.addExtraNatureId(ESboxCppProjectNature.NATURE_ID);
 		configHandler.setExecutionEnvironmentId(MaemoExecutionEnvironmentIds.MAEMO);
 	}
-	
 }

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCCProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCCProjectWizard.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCCProjectWizard.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -11,7 +11,8 @@
 
 package org.maemo.esbox.internal.cpp.project.ui.wizards;
 
-import org.maemo.esbox.internal.cpp.project.Activator;
+import org.maemo.esbox.internal.cpp.project.ESboxCppProjectNature;
+import org.maemo.mica.common.project.core.ProjectConfigHandler;
 import org.maemo.mica.cpp.project.core.MicaCppCCProjectType;
 
 /**
@@ -19,9 +20,7 @@
  * @author eswartz
  *
  */
-public class ESboxCCProjectWizard extends BaseESboxCppProjectWizard {
-	public static final String CPP_CC_PROJECT_WIZARD_ID = Activator.PLUGIN_ID + ".ESboxCppCCProjectWizard";
-
+public class ESboxCCProjectWizard extends AbstractESboxCppProjectWizard {
 	/**
 	 * Constructor.
 	 * Creates a wizard to new ESbox projects.
@@ -34,4 +33,10 @@
 	protected String getProjectTypeIdPattern() {
 		return MicaCppCCProjectType.ID_CC;
 	}
+	
+	@Override
+	protected void configureProjectConfigHandler(ProjectConfigHandler configHandler) {
+		super.configureProjectConfigHandler(configHandler);
+		configHandler.addExtraNatureId(ESboxCppProjectNature.NATURE_ID);
+	}
 }

Modified: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCProjectWizard.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ESboxCProjectWizard.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -11,7 +11,8 @@
 
 package org.maemo.esbox.internal.cpp.project.ui.wizards;
 
-import org.maemo.esbox.internal.cpp.project.Activator;
+import org.maemo.esbox.internal.cpp.project.ESboxCppProjectNature;
+import org.maemo.mica.common.project.core.ProjectConfigHandler;
 import org.maemo.mica.cpp.project.core.MicaCppCProjectType;
 
 /**
@@ -19,9 +20,7 @@
  * @author eswartz
  *
  */
-public class ESboxCProjectWizard extends BaseESboxCppProjectWizard {
-	public static final String CPP_C_PROJECT_WIZARD_ID = Activator.PLUGIN_ID + ".ESboxCppCProjectWizard";
-	
+public class ESboxCProjectWizard extends AbstractESboxCppProjectWizard {
 	public ESboxCProjectWizard() {
 		super("New Maemo C Project", "Create a Maemo project inside Scratchbox");
 	}
@@ -29,4 +28,10 @@
 	protected String getProjectTypeIdPattern() {
 		return MicaCppCProjectType.ID_C;
 	}
+	
+	@Override
+	protected void configureProjectConfigHandler(ProjectConfigHandler configHandler) {
+		super.configureProjectConfigHandler(configHandler);
+		configHandler.addExtraNatureId(ESboxCppProjectNature.NATURE_ID);
+	}
 }

Modified: branches/work_Ed/org.maemo.esbox.product/META-INF/MANIFEST.MF
===================================================================
--- branches/work_Ed/org.maemo.esbox.product/META-INF/MANIFEST.MF	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.product/META-INF/MANIFEST.MF	2009-05-30 22:37:17 UTC (rev 1658)
@@ -10,6 +10,7 @@
  org.eclipse.core.runtime,
  org.eclipse.cdt.ui;bundle-version="5.0.1",
  org.maemo.esbox.python.project;bundle-version="2.0.0";resolution:=optional,
- org.maemo.esbox.cpp.project;bundle-version="2.0.0";resolution:=optional
+ org.maemo.esbox.cpp.project;bundle-version="2.0.0";resolution:=optional,
+ org.eclipse.core.resources;bundle-version="3.4.2"
 Bundle-RequiredExecutionEnvironment: J2SE-1.5
 Bundle-ActivationPolicy: lazy

Modified: branches/work_Ed/org.maemo.esbox.product/plugin.xml
===================================================================
--- branches/work_Ed/org.maemo.esbox.product/plugin.xml	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.product/plugin.xml	2009-05-30 22:37:17 UTC (rev 1658)
@@ -287,17 +287,20 @@
                id="org.eclipse.pde.runtime.LogView">
          </viewShortcut>
          <newWizardShortcut
-               id="org.maemo.mica.python.project.ui.wizards.ESboxPythonProjectWizard">
+               id="org.maemo.esbox.python.project.ESboxPythonProjectWizard">
          </newWizardShortcut>
          <newWizardShortcut
-               id="org.maemo.mica.cpp.project.ui.wizards.ESboxCppCProjectWizard">
+               id="org.maemo.esbox.python.project.ConvertToESboxWizard">
          </newWizardShortcut>
          <newWizardShortcut
-               id="org.maemo.mica.cpp.project.ui.wizards.ESboxCppCCProjectWizard">
+               id="org.maemo.esbox.cpp.project.ESboxCppCProjectWizard">
          </newWizardShortcut>
          <newWizardShortcut
-               id="org.maemo.mica.cpp.project.ui.wizards.ConvertToESboxWizard">
+               id="org.maemo.esbox.cpp.project.ESboxCppCCProjectWizard">
          </newWizardShortcut>
+         <newWizardShortcut
+               id="org.maemo.esbox.cpp.project.ConvertToESboxWizard">
+         </newWizardShortcut>
          <view
                id="org.eclipse.rse.ui.view.systemView"
                minimized="false"

Modified: branches/work_Ed/org.maemo.esbox.python.project/plugin.xml
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/plugin.xml	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.python.project/plugin.xml	2009-05-30 22:37:17 UTC (rev 1658)
@@ -8,14 +8,14 @@
          point="org.eclipse.core.resources.natures">
       <runtime>
          <run
-               class="org.maemo.esbox.internal.python.project.ESboxPythonNature">
+               class="org.maemo.esbox.internal.python.project.ESboxPythonProjectNature">
          </run>
       </runtime>
       <requires-nature
             id="org.maemo.mica.python.project.core.pythonNature">
       </requires-nature>
    </extension>
-  
+ 
    <extension
          point="org.eclipse.ui.newWizards">
       <wizard
@@ -26,47 +26,55 @@
             preferredPerspectives="org.python.pydev.ui.PythonPerspective,org.maemo.esbox.product.ESboxPerspective,org.maemo.pluthon.ui.PluthonPerspective"
             hasPages="true"
             icon="icons/full/obj16/maemo_python_prj.gif"
-            id="org.maemo.mica.python.project.ui.wizards.ESboxPythonProjectWizard"            
+            id="org.maemo.esbox.python.project.ESboxPythonProjectWizard"            
             name="Python Maemo Project"
             project="true">
       </wizard>
-       
-    </extension>
-
-  <extension
-        point="org.eclipse.ui.newWizards">
-     <wizard
+      <wizard
+      	   canFinishEarly="false"
            category="org.python.pydev.PythonCategory"
            class="org.maemo.esbox.internal.python.project.ui.wizards.ConvertToESboxPythonProjectWizard"
            finalPerspective="org.maemo.esbox.product.ESboxPerspective"
            preferredPerspectives="org.maemo.esbox.product.ESboxPerspective,org.python.pydev.ui.PythonPerspective"
            hasPages="true"
            icon="icons/full/obj16/maemo_convert.png"
-           id="org.maemo.mica.python.project.ui.wizards.ConvertToESboxWizard"
-           name="Convert to an ESbox Python Project">
+           id="org.maemo.esbox.python.project.ConvertToESboxWizard"
+           name="Convert to ESbox Python Project">
         <description>
-           Convert an existing Python project to build for ESbox.
+           Convert one or more existing projects to build for ESbox.
         </description>
         <selection
               class="org.eclipse.core.resources.IProject">
         </selection>
      </wizard>
-     
-  </extension>
-  
+       
+    </extension>
+
   <extension
          point="org.eclipse.ui.navigator.navigatorContent">
       <commonWizard
             menuGroupId="org.python.pydev.ui.wizards"
             type="new"
-            wizardId="org.maemo.mica.python.project.ui.wizards.ESboxPythonProjectWizard">
-         <enablement></enablement>
+            wizardId="org.maemo.esbox.python.project.ConvertToESboxWizard">
+         <enablement>
+		 	<and>
+	            <adapt type="org.eclipse.core.resources.IProject" />
+				<not>
+		            <adapt type="org.eclipse.core.resources.IProject" >
+		               <test
+		                     property="org.eclipse.core.resources.projectNature"
+		                     value="org.maemo.esbox.python.project.pythonNature"/>
+		            </adapt>
+				</not>
+		 	</and>
+         </enablement>
       </commonWizard>
       <commonWizard
             menuGroupId="org.python.pydev.ui.wizards"
             type="new"
-            wizardId="org.maemo.mica.python.project.ui.wizards.ConvertToESboxWizard">
-         <enablement></enablement>
+            wizardId="org.maemo.esbox.python.project.ESboxPythonProjectWizard">
+         <enablement>
+         </enablement>
       </commonWizard>
    </extension>
 
@@ -75,11 +83,11 @@
 
      <page
            class="org.maemo.esbox.internal.python.project.ui.properties.ESboxPythonBuildConfigurationsPage"
-           id="org.maemo.mica.python.project.ui.BuildConfigurations"
+           id="org.maemo.esbox.python.project.BuildConfigurations"
            name="Maemo Build Configurations">
         <filter
               name="nature"
-              value="org.maemo.mica.python.project.core.pythonNature">
+              value="org.maemo.esbox.python.project.pythonNature">
         </filter>
         <enabledWhen>
           	<adapt type="org.eclipse.core.resources.IProject">

Deleted: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonNature.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonNature.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonNature.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Nokia Corporation
- * 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:
- *    Ed Swartz (Nokia) - initial API and implementation
- *******************************************************************************/
-
-package org.maemo.esbox.internal.python.project;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectNature;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * @author eswartz
- *
- */
-public class ESboxPythonNature implements IProjectNature {
-
-	public static final String NATURE_ID = Activator.PLUGIN_ID + ".pythonNature";
-	
-	private IProject project;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.resources.IProjectNature#configure()
-	 */
-	public void configure() throws CoreException {
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.resources.IProjectNature#deconfigure()
-	 */
-	public void deconfigure() throws CoreException {
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.resources.IProjectNature#getProject()
-	 */
-	public IProject getProject() {
-		return project;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.resources.IProjectNature#setProject(org.eclipse.core.resources.IProject)
-	 */
-	public void setProject(IProject project) {
-		this.project = project;
-	}
-
-}

Copied: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonProjectNature.java (from rev 1657, branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonNature.java)
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonProjectNature.java	                        (rev 0)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ESboxPythonProjectNature.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -0,0 +1,56 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Nokia Corporation.
+ * 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:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.python.project;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectNature;
+import org.eclipse.core.runtime.CoreException;
+
+/**
+ * ESbox Python nature, which distinguishes ESbox product from others.
+ * Mica Python projects have their own natures as well.
+ * @author eswartz
+ *
+ */
+public class ESboxPythonProjectNature implements IProjectNature {
+
+	public static final String NATURE_ID = Activator.PLUGIN_ID + ".pythonNature";
+	
+	private IProject project;
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#configure()
+	 */
+	public void configure() throws CoreException {
+	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#deconfigure()
+	 */
+	public void deconfigure() throws CoreException {
+	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#getProject()
+	 */
+	public IProject getProject() {
+		return project;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.resources.IProjectNature#setProject(org.eclipse.core.resources.IProject)
+	 */
+	public void setProject(IProject project) {
+		this.project = project;
+	}
+
+}

Modified: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/ESboxPythonProjectPackageGatherer.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/ESboxPythonProjectPackageGatherer.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/ESboxPythonProjectPackageGatherer.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -14,13 +14,12 @@
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IProgressMonitor;
-import org.maemo.esbox.internal.python.project.ESboxPythonNature;
+import org.maemo.esbox.internal.python.project.ESboxPythonProjectNature;
 import org.maemo.mica.common.core.machine.IBuildMachine;
 import org.maemo.mica.common.core.sdk.ISDKTarget;
 import org.maemo.mica.common.project.core.NatureUtils;
 import org.maemo.mica.linux.packages.core.aptpkgconfig.install.IProjectPackageGatherer;
 import org.maemo.mica.linux.packages.core.aptpkgconfig.install.ProjectPackageInfo;
-import org.maemo.mica.python.project.core.MicaPythonProjectNature;
 
 /**
  * Provide the maemo-specific Python development packages for a project.
@@ -41,7 +40,7 @@
 	 */
 	public ProjectPackageInfo scanPackages(IProject project,
 			ISDKTarget sdkTarget, IProgressMonitor monitor) throws CoreException {
-		if (NatureUtils.isNatureInProject(project, ESboxPythonNature.NATURE_ID)) {
+		if (NatureUtils.isNatureInProject(project, ESboxPythonProjectNature.NATURE_ID)) {
 			ProjectPackageInfo info = new ProjectPackageInfo();
 			if (sdkTarget != null) {
 				if (sdkTarget.getMachine() instanceof IBuildMachine)

Modified: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxOldPythonBuildTargetPropertyPage.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxOldPythonBuildTargetPropertyPage.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxOldPythonBuildTargetPropertyPage.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -12,7 +12,6 @@
 package org.maemo.esbox.internal.python.project.ui.properties;
 
 import org.eclipse.core.resources.IProject;
-import org.eclipse.jface.wizard.Wizard;
 import org.eclipse.jface.wizard.WizardDialog;
 import org.maemo.esbox.internal.python.project.ui.wizards.ConvertToESboxPythonProjectWizard;
 import org.maemo.mica.common.project.ui.properties.AbstractOldFormatTargetPropertyPage;
@@ -24,57 +23,13 @@
  *
  */
 public class ESboxOldPythonBuildTargetPropertyPage extends AbstractOldFormatTargetPropertyPage {
-	
-		/* (non-Javadoc)
-	 * @see org.maemo.mica.common.project.ui.MicaBuildConfigurationsPage#createBuildTargetFilter(org.eclipse.core.resources.IProject)
-	 */
-	/*
-	@Override
-	protected IBuildTargetFilter createBuildTargetFilter() {
-		return new BuildMachineHostedTargetFilter();
-	}*/
-	
 	/* (non-Javadoc)
-	 * @see org.maemo.mica.common.project.ui.ESboxBuildConfigurationsPage#getCurrentConfigurations()
-	 */
-	/*
-	@Override
-	protected List<IBuildConfiguration> getCurrentConfigurations() {
-		// the handle will become non-null when we convert
-		if (projectHandle == null) {
-			// since this is an old project, there are no configurations
-			// or project handle, so create it now
-			try {
-				IProjectProperties projectProperties = ProjectManager.getInstance().getOldStyleProjectProperties(
-						project);
-				IProjectType projectType = ProjectManager.getInstance().getProjectType(
-						MicaPythonProjectType.ID);
-				
-				projectHandle = projectType.createProjectHandle(project);
-				
-				IBuildConfigurationData params = projectHandle.createBuildConfigurationData();
-				params.setSdkTargetName(projectProperties.getTargetName());
-				params.setSdkName(projectProperties.getSDKName());
-
-				projectHandle.createBuildConfiguration(params);
-			} catch (CoreException e) {
-				Activator.getErrorLogger().logAndShowError("Failed to read old project settings", e);
-			} catch (MicaException e) {
-				// not sure why this panel is appearing!
-			}
-		}
-		return super.getCurrentConfigurations();
-	}
-	*/
-	
-	/* (non-Javadoc)
 	* @see org.maemo.mica.common.project.ui.properties.AbstractOldFormatTargetPropertyPage#convertProject(org.eclipse.core.resources.IProject)
 	*/
 	@Override
 	protected void convertProject(IProject project) {
-		Wizard wizard;
-		wizard = new ConvertToESboxPythonProjectWizard();
-		
+		ConvertToESboxPythonProjectWizard wizard = new ConvertToESboxPythonProjectWizard();
+		wizard.setInitialProjects(new IProject[] { project });
 		WizardDialog dialog = new WizardDialog(null, wizard);
 		dialog.open();
 	}

Modified: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxPythonBuildConfigurationsPage.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxPythonBuildConfigurationsPage.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/properties/ESboxPythonBuildConfigurationsPage.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -12,13 +12,10 @@
 package org.maemo.esbox.internal.python.project.ui.properties;
 
 import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
-import org.maemo.mica.common.project.core.IBuildConfigurationProvider;
 import org.maemo.mica.common.project.core.IBuildTargetFilter;
 import org.maemo.mica.common.project.core.IExistingBuildConfigurationProvider;
 import org.maemo.mica.common.project.ui.AbstractTreeEditBuildConfigurationsPage;
-import org.maemo.mica.common.project.ui.MicaSDKTargetBuildConfigurationsPage;
 import org.maemo.mica.common.project.ui.SDKTargetAndExistingBuildConfigurationProvider;
-import org.maemo.mica.common.ui.BuildTargetProvider;
 
 /**
  * ESbox Python projects support only build machine targets.

Modified: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ConvertToESboxPythonProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ConvertToESboxPythonProjectWizard.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ConvertToESboxPythonProjectWizard.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -13,14 +13,12 @@
 
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.maemo.esbox.internal.python.project.Activator;
+import org.maemo.esbox.internal.python.project.ESboxPythonProjectNature;
 import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
-import org.maemo.mica.common.project.core.IBuildTargetFilter;
 import org.maemo.mica.common.project.core.IBuildConfigurationProvider;
+import org.maemo.mica.common.project.core.IBuildTargetFilter;
 import org.maemo.mica.common.project.core.ProjectConfigHandler;
-import org.maemo.mica.common.project.ui.SDKTargetBuildConfigurationProvider;
-import org.maemo.mica.common.project.ui.StockTargetBuildConfigurationProvider;
 import org.maemo.mica.maemosdk.core.MaemoExecutionEnvironmentIds;
-import org.maemo.mica.python.project.core.MicaPythonProjectType;
 import org.maemo.mica.python.project.ui.wizards.AbstractConvertToPythonProjectWizard;
 
 /**
@@ -67,7 +65,7 @@
 	 */
 	@Override
 	protected void updateProjectConfigHandler(ProjectConfigHandler configHandler) {
-		//configHandler.addExtraNatureId(ESboxProjectNature.NATURE_ID);
+		configHandler.addExtraNatureId(ESboxPythonProjectNature.NATURE_ID);
 		configHandler.setExecutionEnvironmentId(MaemoExecutionEnvironmentIds.MAEMO);
 	}
 	

Modified: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ESboxPythonProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ESboxPythonProjectWizard.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ESboxPythonProjectWizard.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -14,20 +14,20 @@
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.ui.INewWizard;
 import org.maemo.esbox.internal.python.project.Activator;
+import org.maemo.esbox.internal.python.project.ESboxPythonProjectNature;
 import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
 import org.maemo.mica.common.project.core.IBuildTargetFilter;
+import org.maemo.mica.common.project.core.ProjectConfigHandler;
 import org.maemo.mica.python.project.core.MicaPythonProjectType;
-import org.maemo.mica.python.project.ui.wizards.BasePythonProjectWizard;
+import org.maemo.mica.python.project.ui.wizards.AbstractPythonProjectWizard;
 
 /**
  * This wizard creates Python projects for ESbox.
  * @author eswartz
  *
  */
-public class ESboxPythonProjectWizard extends BasePythonProjectWizard
+public class ESboxPythonProjectWizard extends AbstractPythonProjectWizard
 		implements INewWizard  {
-	public static final String PYTHON_PROJECT_WIZARD_ID = Activator.PLUGIN_ID + ".ESboxPythonProjectWizard";
-	
 	/**
 	 * Constructor.
 	 * Creates a wizard to new ESbox Python projects.
@@ -43,10 +43,6 @@
 		return MicaPythonProjectType.ID;
 	}
 
-	protected String getWizardId() {
-		return PYTHON_PROJECT_WIZARD_ID;
-	}
-	
 	/* (non-Javadoc)
 	 * @see org.maemo.mica.python.project.ui.wizards.BasePythonProjectWizard#createBuildTargetFilter()
 	 */
@@ -61,4 +57,10 @@
 	protected ImageDescriptor getWizardPageImageDescriptor() {
 		return Activator.getImageDescriptor("./icons/full/wizban/maemo_wizban.gif");
 	}
+	
+	@Override
+	protected void configureProjectConfigHandler(ProjectConfigHandler configHandler) {
+		super.configureProjectConfigHandler(configHandler);
+		configHandler.addExtraNatureId(ESboxPythonProjectNature.NATURE_ID);
+	}
 }

Modified: branches/work_Ed/org.maemo.esbox.scratchbox.tests/data/projects/gtkhelloworldcproject/.project
===================================================================
--- branches/work_Ed/org.maemo.esbox.scratchbox.tests/data/projects/gtkhelloworldcproject/.project	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.scratchbox.tests/data/projects/gtkhelloworldcproject/.project	2009-05-30 22:37:17 UTC (rev 1658)
@@ -69,6 +69,6 @@
 	</buildSpec>
 	<natures>
 		<nature>org.eclipse.cdt.core.cnature</nature>
-		<nature>org.maemo.mica.cpp.project.core.ESboxCppNature</nature>
+		<nature>org.maemo.mica.cpp.project.core.cppNature</nature>
 	</natures>
 </projectDescription>

Modified: branches/work_Ed/org.maemo.esbox.scratchbox.ui/src/org/maemo/esbox/internal/api/scratchbox/ui/wizards/ApplyAutoconfPatchContextMenuProvider.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.scratchbox.ui/src/org/maemo/esbox/internal/api/scratchbox/ui/wizards/ApplyAutoconfPatchContextMenuProvider.java	2009-05-29 19:26:00 UTC (rev 1657)
+++ branches/work_Ed/org.maemo.esbox.scratchbox.ui/src/org/maemo/esbox/internal/api/scratchbox/ui/wizards/ApplyAutoconfPatchContextMenuProvider.java	2009-05-30 22:37:17 UTC (rev 1658)
@@ -29,7 +29,7 @@
 	/* (non-Javadoc)
 	 * @see org.maemo.mica.common.core.adapters.IContextMenuProviderAdapter#addToMenu(org.eclipse.swt.widgets.Menu, java.lang.Object)
 	 */
-	public void addToMenu(final Menu menu, final Object target) {
+	public void addToMenu(final Menu menu, final Object target, Object parent) {
 		MenuItem item = new MenuItem(menu, SWT.NONE);
 		item.setText("Patch autoconf...");
 		item.addSelectionListener(new SelectionAdapter() {



More information about the Esbox-commits mailing list