[Esbox-commits] r1657 - in branches/work_Ed: org.maemo.esbox.cpp.project org.maemo.esbox.cpp.project/META-INF 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.maemosdk.ui org.maemo.esbox.maemosdk.ui/META-INF org.maemo.esbox.maemosdk.ui/icons/full org.maemo.esbox.maemosdk.ui/icons/full/wizban org.maemo.esbox.python.project org.maemo.esbox.python.project/META-INF org.maemo.esbox.python.project/icons/full org.maemo.esbox.python.project/icons/full/obj16 org.maemo.esbox.python.project/icons/full/wizban 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 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.core/src/org/maemo/esbox/internal/api/scratchbox/core
eswartz at garage.maemo.org
eswartz at garage.maemo.org
Fri May 29 22:26:01 EEST 2009
Author: eswartz
Date: 2009-05-29 22:26:00 +0300 (Fri, 29 May 2009)
New Revision: 1657
Added:
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.maemosdk.ui/icons/full/wizban/
branches/work_Ed/org.maemo.esbox.maemosdk.ui/icons/full/wizban/maemo_convert.gif
branches/work_Ed/org.maemo.esbox.python.project/icons/full/obj16/maemo_convert.png
branches/work_Ed/org.maemo.esbox.python.project/icons/full/wizban/
branches/work_Ed/org.maemo.esbox.python.project/icons/full/wizban/maemo_convert.gif
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/core/ESboxPythonProjectPackageGatherer.java
branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/
branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards/ConvertToESboxPythonProjectWizard.java
Removed:
branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectImportConfigurationComposite.java
branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectSupport.java
branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectDebianSupportAdapterFactory.java
branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectImportConfigurationComposite.java
branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseConvertToESboxCppProjectWizard.java
branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCCProjectWizard.java
branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCProjectWizard.java
branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/MaemoPythonProjectPackageGatherer.java
branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectImportConfigurationComposite.java
branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectSupport.java
branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonProjectDebianSupportAdapterFactory.java
branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/wizards/
Modified:
branches/work_Ed/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF
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/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/BaseESboxCppProjectWizard.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.maemosdk.ui/META-INF/MANIFEST.MF
branches/work_Ed/org.maemo.esbox.maemosdk.ui/plugin.xml
branches/work_Ed/org.maemo.esbox.python.project/META-INF/MANIFEST.MF
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/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/ESboxPythonProjectWizard.java
branches/work_Ed/org.maemo.esbox.scratchbox.core/src/org/maemo/esbox/internal/api/scratchbox/core/OldStyleProjectProperties.java
Log:
More refactoring in progress.
-- Update project converter UI so it can be used for C/C++ and Python.
-- Unify ISDKTarget-based and configuration-based UI for configuring and converting projects
-- (Start to) clean up ProjectConfigHandler APIs
-- Support "Make (with debian/rules)" as a project builder type. Allows us to remove hacky behavior for imported projects.
-- Simplify Debian package importer, using project type/builder type instead to make project configuration easier
-- Move stock build configuration provider into IProjectBuilderType and support make/Debian distinct configurations
-- Use NatureUtils for Python natures
-- More Base -> Abstract renaming
-- Remove more ESbox references
To do:
-- Factoring out ESbox Python nature
-- Move make/autotools support to separate plugins
-- API/non-API repackaging
Modified: branches/work_Ed/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF 2009-05-29 19:26:00 UTC (rev 1657)
@@ -20,6 +20,8 @@
org.eclipse.cdt.ui;bundle-version="5.0.1",
org.maemo.mica.linux.packages.core;bundle-version="2.0.0",
org.maemo.mica.linux.packages.ui;bundle-version="2.0.0",
- org.eclipse.cdt.core;bundle-version="5.0.2"
+ org.eclipse.cdt.core;bundle-version="5.0.2",
+ org.maemo.esbox.maemosdk.ui;bundle-version="2.0.0",
+ org.maemo.mica.maemosdk.core;bundle-version="2.0.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-ActivationPolicy: lazy
Modified: branches/work_Ed/org.maemo.esbox.cpp.project/plugin.xml
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/plugin.xml 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/plugin.xml 2009-05-29 19:26:00 UTC (rev 1657)
@@ -2,40 +2,24 @@
<?eclipse version="3.2"?>
<plugin>
- <extension
+ <extension
point="org.eclipse.ui.newWizards">
<wizard
category="org.eclipse.cdt.ui.newCWizards"
- class="org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCProjectWizard"
+ 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.mica.cpp.project.ui.wizards.ConvertToESboxWizard"
- name="Convert to an ESbox C Project">
+ name="Convert to an ESbox C/C++ Project">
<description>
- Convert an existing C Makefile or autotools project to build for Maemo.
+ Convert an existing C/C++ project to build for ESbox.
</description>
<selection
class="org.eclipse.core.resources.IProject">
</selection>
</wizard>
- <wizard
- category="org.eclipse.cdt.ui.newCCWizards"
- class="org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCCProjectWizard"
- 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.mica.cpp.project.ui.wizards.ConvertToESboxWizard"
- name="Convert to an ESbox C++ Project">
- <description>
- Convert an existing C++ Makefile or autotools project to build for Maemo.
- </description>
- <selection
- class="org.eclipse.core.resources.IProject">
- </selection>
- </wizard>
</extension>
<extension
@@ -79,15 +63,6 @@
<adapt
type="org.eclipse.core.resources.IProject">
</adapt>
- <not>
- <adapt
- type="org.eclipse.core.resources.IProject">
- <test
- property="org.eclipse.core.resources.projectNature"
- value="org.maemo.mica.cpp.project.core.ESboxCppNature">
- </test>
- </adapt>
- </not>
</and>
</enablement>
</commonWizard>
@@ -151,38 +126,6 @@
<extension
point="org.eclipse.ui.propertyPages">
- <!-- old conversion page -->
- <page
- class="org.maemo.esbox.internal.cpp.project.ui.properties.ESBoxOldCppTargetPropertyPage"
- id="org.maemo.esbox.project.cpp.ui.oldESboxProjectPropertyPage"
- name="Maemo Build Configurations"
- nameFilter="*">
- <filter
- name="nature"
- value="org.indt.esbox.core.ESboxNature">
- </filter>
- <enabledWhen>
- <adapt type="org.eclipse.core.resources.IProject">
- </adapt>
- </enabledWhen>
- </page>
-
- <page
- class="org.maemo.esbox.internal.cpp.project.ui.properties.ESBoxOldCppTargetPropertyPage"
- id="org.maemo.esbox.project.cpp.ui.oldMicaCppProjectPropertyPage"
- name="Maemo Build Configurations"
- nameFilter="*">
- <filter
- name="nature"
- value="org.maemo.mica.cpp.project.core.ESboxCppNature">
- </filter>
- <enabledWhen>
- <adapt type="org.eclipse.core.resources.IProject">
- </adapt>
- </enabledWhen>
- </page>
-
- <!-- new page -->
<page
class="org.maemo.esbox.internal.cpp.project.ui.properties.ESboxCppBuildConfigurationsPage"
id="org.maemo.esbox.project.cpp.BuildConfigurations"
@@ -221,22 +164,43 @@
</projectPackageGatherer>
</extension>
- <extension
- point="org.eclipse.core.runtime.adapters">
- <factory
- adaptableType="org.maemo.mica.cpp.project.core.MicaCppProjectType"
- class="org.maemo.esbox.internal.cpp.project.core.CppProjectDebianSupportAdapterFactory">
- <adapter
- type="org.maemo.mica.linux.packages.core.adapters.IDebianProjectConvertImportSupport">
- </adapter>
- </factory>
- </extension>
-
-
<!-- COMPATIBILITY ONLY -->
+ <extension
+ point="org.eclipse.ui.propertyPages">
+ <!-- old conversion page -->
+ <page
+ class="org.maemo.esbox.internal.cpp.project.ui.properties.ESBoxOldCppTargetPropertyPage"
+ id="org.maemo.esbox.project.cpp.ui.oldESboxProjectPropertyPage"
+ name="Maemo Build Configurations"
+ nameFilter="*">
+ <filter
+ name="nature"
+ value="org.indt.esbox.core.ESboxNature">
+ </filter>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject">
+ </adapt>
+ </enabledWhen>
+ </page>
+
+ <page
+ class="org.maemo.esbox.internal.cpp.project.ui.properties.ESBoxOldCppTargetPropertyPage"
+ id="org.maemo.esbox.project.cpp.ui.oldMicaCppProjectPropertyPage"
+ name="Maemo Build Configurations"
+ nameFilter="*">
+ <filter
+ name="nature"
+ value="org.maemo.mica.cpp.project.core.ESboxCppNature">
+ </filter>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject">
+ </adapt>
+ </enabledWhen>
+ </page>
+ </extension>
<!-- END COMPATIBILITY -->
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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -20,8 +20,7 @@
import org.eclipse.ui.IMarkerResolution2;
import org.eclipse.ui.IMarkerResolutionGenerator2;
import org.maemo.esbox.internal.cpp.project.Activator;
-import org.maemo.esbox.internal.cpp.project.ui.wizards.BaseConvertToESboxCppProjectWizard;
-import org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCProjectWizard;
+import org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCppProjectWizard;
import org.maemo.mica.common.project.core.IOldFormatProjectBuilder;
/**
@@ -64,7 +63,7 @@
public void run(IMarker marker) {
try {
- BaseConvertToESboxCppProjectWizard wizard = new ConvertToESboxCProjectWizard();
+ ConvertToESboxCppProjectWizard wizard = new ConvertToESboxCppProjectWizard();
WizardDialog dialog = new WizardDialog(null, wizard);
if (dialog.open() == IDialogConstants.OK_ID) {
marker.delete();
Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectImportConfigurationComposite.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectImportConfigurationComposite.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectImportConfigurationComposite.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,98 +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.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.maemo.mica.common.core.IValidatingDialogPage;
-import org.maemo.mica.common.project.core.ProjectConfigHandler;
-import org.maemo.mica.cpp.project.core.IMicaAutotoolsProjectBuilderKeys;
-import org.maemo.mica.cpp.project.core.IMicaMakeProjectBuilderKeys;
-import org.maemo.mica.cpp.project.core.AbstractMicaCppProjectType;
-
-/**
- * This composite contains the configurable aspects of a project for a Debian
- * source package.
- * @author eswartz
- *
- */
-public class CppDebianProjectImportConfigurationComposite extends CppProjectImportConfigurationComposite {
-
- private String[] rules;
-
- public CppDebianProjectImportConfigurationComposite(
- Composite parent,
- IValidatingDialogPage dialogPage, AbstractMicaCppProjectType projectType,
- final IProject project,
- final IPath projectLocation,
- ProjectConfigHandler configHandler,
- String[] rules) {
- super(parent, SWT.NONE, dialogPage, projectType, project, projectLocation, configHandler,
- false, true);
- this.rules = rules;
- }
-
- /* (non-Javadoc)
- * @see org.maemo.esbox.internal.project.cpp.core.CppProjectImportConfigurationComposite#init()
- */
- @Override
- protected void setFieldContents() {
- super.setFieldContents();
-
- buildConfigureTargetField.setItems(rules);
- buildIncrTargetField.setItems(rules);
- buildAutoTargetField.setItems(rules);
- buildCleanTargetField.setItems(rules);
- }
-
- /* (non-Javadoc)
- * @see org.maemo.esbox.internal.project.cpp.core.CppProjectImportConfigurationComposite#initRules(boolean, boolean, boolean, boolean)
- */
- @Override
- protected void initRules(boolean gotConfigureRule, boolean gotCleanRule,
- boolean gotIncrRule) {
- super.initRules(gotConfigureRule, gotCleanRule, gotIncrRule);
-
- // the build command is not configurable; just set it here
- configHandler.getConfigProperties().put(
- IMicaMakeProjectBuilderKeys.KEY_BUILD_COMMAND, "fakeroot debian/rules");
-
- for (String rule : rules) {
- if (!gotConfigureRule && rule.contains("config")) {
- setRule(IMicaAutotoolsProjectBuilderKeys.KEY_CONFIGURE_BUILD_SETTING, rule, buildConfigureTargetField);
- gotConfigureRule = true;
- }
- if (!gotCleanRule && rule.contains("clean")) {
- setRule(IMicaMakeProjectBuilderKeys.KEY_CLEAN_BUILD_SETTING, rule, buildCleanTargetField);
- gotCleanRule = true;
- }
- if (!gotIncrRule && (rule.contains("build") || rule.contains("all"))) {
- setRule(IMicaMakeProjectBuilderKeys.KEY_INCREMENTAL_BUILD_SETTING, rule, buildIncrTargetField);
- // note: we use the same rule for both by default
- setRule(IMicaMakeProjectBuilderKeys.KEY_AUTO_BUILD_SETTING, rule, buildIncrTargetField);
- gotIncrRule = true;
- }
- }
-
- // as a last resort, use a "clean" rule for configure
- if (!gotConfigureRule) {
- for (String rule : rules) {
- if (!gotConfigureRule && rule.contains("clean")) {
- setRule(IMicaAutotoolsProjectBuilderKeys.KEY_CONFIGURE_BUILD_SETTING, rule, buildConfigureTargetField);
- gotConfigureRule = true;
- }
- }
- }
- }
-}
Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectSupport.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectSupport.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppDebianProjectSupport.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,60 +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.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.swt.widgets.Composite;
-import org.maemo.mica.common.core.IValidatingDialogPage;
-import org.maemo.mica.common.project.core.ProjectConfigHandler;
-import org.maemo.mica.cpp.project.core.AbstractMicaCppProjectType;
-import org.maemo.mica.linux.packages.core.adapters.IDebianProjectConvertImportSupport;
-
-/**
- * @author eswartz
- *
- */
-public class CppDebianProjectSupport implements IDebianProjectConvertImportSupport {
-
- private final AbstractMicaCppProjectType projectType;
-
- /**
- * @param adaptableObject
- */
- public CppDebianProjectSupport(AbstractMicaCppProjectType projectType) {
- this.projectType = projectType;
- }
-
- /* (non-Javadoc)
- * @see org.maemo.mica.linux.packages.core.adapters.IDebianProjectSupport#createProjectImportConfigurationComposite(org.eclipse.swt.widgets.Composite, org.eclipse.jface.dialogs.IDialogPage, org.eclipse.core.resources.IProject, org.eclipse.core.runtime.IPath, org.maemo.mica.common.project.core.ProjectConfigHandler)
- */
- public Composite createDebianProjectImportConfigurationComposite(Composite parent,
- int style, IValidatingDialogPage dialogPage, IProject project,
- IPath projectLocation, ProjectConfigHandler configHandler, String[] debianRules) {
-
- CppProjectImportConfigurationComposite configComposite =
- new CppDebianProjectImportConfigurationComposite(
- parent,
- dialogPage,
- projectType,
- project,
- projectLocation,
- configHandler,
- debianRules
- );
-
- configComposite.init();
-
- return configComposite;
- }
-
-}
Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectDebianSupportAdapterFactory.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectDebianSupportAdapterFactory.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectDebianSupportAdapterFactory.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,44 +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.core;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.maemo.mica.cpp.project.core.AbstractMicaCppProjectType;
-import org.maemo.mica.linux.packages.core.adapters.IDebianProjectConvertImportSupport;
-
-/**
- * This factory proclaims Debian support for a project type.
- * @author eswartz
- *
- */
-public class CppProjectDebianSupportAdapterFactory implements IAdapterFactory {
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter(Object adaptableObject, Class adapterType) {
- if (adaptableObject instanceof AbstractMicaCppProjectType) {
- if (adapterType.equals(IDebianProjectConvertImportSupport.class)) {
- return new CppDebianProjectSupport((AbstractMicaCppProjectType) adaptableObject);
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[] { IDebianProjectConvertImportSupport.class };
- }
-
-}
Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectImportConfigurationComposite.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectImportConfigurationComposite.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/CppProjectImportConfigurationComposite.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,334 +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.core;
-
-import java.io.File;
-import java.io.FileFilter;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.layout.GridDataFactory;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.maemo.mica.common.core.IValidatingDialogPage;
-import org.maemo.mica.common.project.core.ProjectConfigHandler;
-import org.maemo.mica.common.project.ui.wizards.BaseProjectImportConfigurationComposite;
-import org.maemo.mica.common.ui.common.ComboDialogField;
-import org.maemo.mica.cpp.project.core.IMicaAutotoolsProjectBuilderKeys;
-import org.maemo.mica.cpp.project.core.IMicaMakeProjectBuilderKeys;
-import org.maemo.mica.cpp.project.core.AbstractMicaCppProjectType;
-import org.maemo.mica.internal.api.common.core.GridLayoutWrappedTextUtils;
-
-import com.nokia.cpp.internal.api.utils.core.FileUtils;
-
-/**
- * This is the basic UI for configuring a C/C++ project on import or conversion.
- * @author eswartz
- *
- */
-public class CppProjectImportConfigurationComposite extends BaseProjectImportConfigurationComposite {
-
- protected ComboDialogField buildLocationField;
- protected ComboDialogField buildConfigureTargetField;
- protected ComboDialogField buildIncrTargetField;
- protected ComboDialogField buildAutoTargetField;
- protected ComboDialogField buildCleanTargetField;
- protected String[] allDirs;
- protected IPath projectLocation;
- protected AbstractMicaCppProjectType projectType;
- private boolean showBuildLocation;
- private boolean showConfigureRule;
-
- /**
- * @param parent
- * @param style
- * @param dialogPage
- */
- public CppProjectImportConfigurationComposite(Composite parent, int style,
- IValidatingDialogPage dialogPage, AbstractMicaCppProjectType projectType,
- final IProject project,
- final IPath projectLocation,
- ProjectConfigHandler configHandler,
- boolean showBuildLocation, boolean showConfigureRule) {
- super(parent, style, dialogPage, project, projectLocation, configHandler);
- this.projectType = projectType;
- this.projectLocation = projectLocation;
- this.showBuildLocation = showBuildLocation;
- this.showConfigureRule = showConfigureRule;
-
- }
-
- /**
- * @param parent
- * @param style
- * @param dialogPage
- */
- public CppProjectImportConfigurationComposite(Composite parent, int style,
- IValidatingDialogPage dialogPage, AbstractMicaCppProjectType projectType,
- final IProject project,
- final IPath projectLocation,
- ProjectConfigHandler configHandler) {
- this(parent, style, dialogPage, projectType, project, projectLocation, configHandler, true, false);
- }
-
- public void init() {
-
- final List<String> allPathsList = new ArrayList<String>();
- File dir = projectLocation.toFile();
- final String base = dir.getAbsolutePath();
-
- allPathsList.add("");
-
- // just walking here
- FileUtils.listFilesInTree(dir, new FileFilter() {
- public boolean accept(File pathname) {
- if (pathname.isDirectory()) {
- allPathsList.add(pathname.getAbsolutePath().substring(base.length() + 1));
- }
- return true;
- }
- },
- true
- );
-
- allDirs = (String[]) allPathsList.toArray(new String[allPathsList.size()]);
-
- buildLocationField = new ComboDialogField(SWT.READ_ONLY);
- buildConfigureTargetField = new ComboDialogField(SWT.READ_ONLY);
- buildIncrTargetField = new ComboDialogField(SWT.READ_ONLY);
- buildAutoTargetField = new ComboDialogField(SWT.READ_ONLY);
- buildCleanTargetField = new ComboDialogField(SWT.READ_ONLY);
-
- setFieldContents();
- super.init();
- }
-
- /**
- *
- */
- protected void setFieldContents() {
- buildLocationField.setItems(allDirs);
-
- String[] stockRules = new String[] { "", "all", "clean" };
-
-
- buildConfigureTargetField.setItems(stockRules);
- buildIncrTargetField.setItems(stockRules);
- buildAutoTargetField.setItems(stockRules);
- buildCleanTargetField.setItems(stockRules);
-
- }
-
- protected void createProjectUI(Composite composite) {
- if (showBuildLocation) {
- createBuildLocationUI(composite);
- }
-
- createBuildRuleUI(composite);
- }
-
- /**
- * @param composite
- */
- protected void createBuildLocationUI(Composite composite) {
- Composite twoWay = new Composite(composite, SWT.NONE);
- twoWay.setLayout(new GridLayout(2, false));
- GridDataFactory.fillDefaults().grab(true, false).applyTo(twoWay);
-
- buildLocationField.setLabelText("Build location:");
- buildLocationField.doFillIntoGrid(twoWay, 2);
- Combo combo = buildLocationField.getComboControl(twoWay);
- combo.setToolTipText("Specify the project-relative build location.");
- GridDataFactory.fillDefaults().grab(true, false).applyTo(combo);
- combo.addSelectionListener(new SelectionAdapter() {
- @Override
- public void widgetSelected(SelectionEvent e) {
- IPath path = new Path(buildLocationField.getText());
- if (path.isEmpty())
- path = null;
- configHandler.getConfigProperties().put(IMicaMakeProjectBuilderKeys.KEY_BUILD_LOCATION,
- path);
- dialogPage.validatePage();
- }
- });
- }
-
- /**
- * @param composite
- */
- protected void createBuildRuleUI(Composite composite) {
- Control control;
- Label helpLabel = new Label(composite, SWT.WRAP);
- //GridDataFactory.swtDefaults().grab(false, false).hint(textSize, SWT.DEFAULT).applyTo(label);
- GridDataFactory.swtDefaults().align(SWT.FILL, SWT.TOP).grab(true, false).applyTo(helpLabel);
- helpLabel.setText("Select the targets to use when building the project.\n\n"
- +"(See Project > Properties > Maemo Build Configurations > Build Settings to change these settings after the project is created.)");
-
- GridData helpLabelGridData = GridDataFactory.swtDefaults().span(2,1).create();
-
- GridLayoutWrappedTextUtils.setupLabel(getParent(), helpLabel, helpLabelGridData);
-
- Group group = new Group(composite, SWT.NONE);
- GridDataFactory.fillDefaults().grab(true, true).indent(6, 6).applyTo(group);
- group.setText("Build Targets");
- group.setLayout(new GridLayout(2, false));
-
- if (showConfigureRule)
- createConfigureRuleUI(group);
-
- buildIncrTargetField.setLabelText("Incremental/full build rule:");
- buildIncrTargetField.doFillIntoGrid(group, 2);
- control = buildIncrTargetField.getComboControl(group);
- control.setToolTipText("Specify the rule that builds the project on a Project > Build command.");
- GridDataFactory.fillDefaults().grab(true, false).applyTo(control);
- buildIncrTargetField.getComboControl(group).addSelectionListener(new SelectionAdapter() {
- @Override
- public void widgetSelected(SelectionEvent e) {
- updateRule(IMicaMakeProjectBuilderKeys.KEY_INCREMENTAL_BUILD_SETTING, buildIncrTargetField);
- }
- });
-
- buildAutoTargetField.setLabelText("Auto build rule:");
- buildAutoTargetField.doFillIntoGrid(group, 2);
- control = buildAutoTargetField.getComboControl(group);
- control.setToolTipText("Specify the rule that builds the project when Project > Build Automatically is enabled.");
- GridDataFactory.fillDefaults().grab(true, false).applyTo(control);
- buildAutoTargetField.getComboControl(group).addSelectionListener(new SelectionAdapter() {
- @Override
- public void widgetSelected(SelectionEvent e) {
- updateRule(IMicaMakeProjectBuilderKeys.KEY_AUTO_BUILD_SETTING, buildAutoTargetField);
- }
- });
-
- buildCleanTargetField.setLabelText("Clean build rule:");
- buildCleanTargetField.doFillIntoGrid(group, 2);
- control = buildCleanTargetField.getComboControl(group);
- control.setToolTipText("Specify the rule that cleans the project on a Project > Clean command.");
- GridDataFactory.fillDefaults().grab(true, false).applyTo(control);
- buildCleanTargetField.getComboControl(group).addSelectionListener(new SelectionAdapter() {
- @Override
- public void widgetSelected(SelectionEvent e) {
- updateRule(IMicaMakeProjectBuilderKeys.KEY_CLEAN_BUILD_SETTING, buildCleanTargetField);
- }
- });
- }
-
- /**
- * @param showConfigureRule
- * @param group
- */
- protected void createConfigureRuleUI(Group group) {
- Control control;
- buildConfigureTargetField.setLabelText("Configure build rule:");
- buildConfigureTargetField.doFillIntoGrid(group, 2);
- control = buildConfigureTargetField.getComboControl(group);
- control.setToolTipText("Specify the rule that builds the project on a Project > Build Application > Configure command.");
- GridDataFactory.fillDefaults().grab(true, false).applyTo(control);
-
- buildConfigureTargetField.getComboControl(group).addSelectionListener(new SelectionAdapter() {
- @Override
- public void widgetSelected(SelectionEvent e) {
- updateRule(IMicaAutotoolsProjectBuilderKeys.KEY_CONFIGURE_BUILD_SETTING,
- buildConfigureTargetField);
- }
- });
- }
-
- /**
- * Return text unless it is empty or null.
- * @param text
- * @return
- */
- protected String nonEmptyOrNull(String text) {
- return text == null || text.length() == 0 ? null : text;
- }
-
- /**
- * @param firstElement
- */
- protected void setBuildLocation(IPath path) {
-
- }
-
- /**
- * Set the current rules into the fields and initialize the rest with guesses.
- * @param configHandler
- * @param rules
- */
- protected void initFromConfig() {
- super.initFromConfig();
-
- boolean gotConfigureRule = false, gotCleanRule = false, gotIncrRule = false;
-
- // get any existing rules
- initRule(IMicaMakeProjectBuilderKeys.KEY_AUTO_BUILD_SETTING, buildAutoTargetField);
- gotIncrRule = initRule(IMicaMakeProjectBuilderKeys.KEY_INCREMENTAL_BUILD_SETTING, buildIncrTargetField);
- gotCleanRule = initRule(IMicaMakeProjectBuilderKeys.KEY_CLEAN_BUILD_SETTING, buildCleanTargetField);
- gotConfigureRule = initRule(IMicaAutotoolsProjectBuilderKeys.KEY_CONFIGURE_BUILD_SETTING, buildConfigureTargetField);
-
- initRules(gotConfigureRule, gotCleanRule, gotIncrRule);
- }
-
- /**
- *
- */
- protected boolean initRule(String setting, ComboDialogField field) {
- String rule = (String) configHandler.getConfigProperties().get(setting);
- rule = nonEmptyOrNull(rule);
- if (rule != null) {
- field.setText(rule);
- return true;
- }
- configHandler.getConfigProperties().remove(setting);
- field.setText("");
- return false;
- }
-
- /**
- *
- */
- protected void setRule(String setting, String value, ComboDialogField field) {
- configHandler.getConfigProperties().put(setting, value);
- field.setText(value);
- }
-
- /**
- */
- protected void updateRule(String setting,
- ComboDialogField field) {
- String rule = nonEmptyOrNull(field.getText());
- if (rule == null)
- configHandler.getConfigProperties().remove(setting);
- else
- configHandler.getConfigProperties().put(setting, rule);
- dialogPage.validatePage();
- }
-
- /**
- */
- protected void initRules(boolean gotConfigureRule, boolean gotCleanRule,
- boolean gotIncrRule) {
-
- }
-
-}
\ No newline at end of file
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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -86,7 +86,7 @@
ESboxCppBuildConfigurationSelectionDialog dialog =
new ESboxCppBuildConfigurationSelectionDialog(
- CUIPlugin.getActiveWorkbenchShell());
+ CUIPlugin.getActiveWorkbenchShell(), projectHandle);
// get datas for the existing configurations
Map<IBuildConfiguration, IBuildConfigurationData> configToDataMap =
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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -11,32 +11,24 @@
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.ITargetBuildConfigurationProvider;
+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.cpp.project.ui.MicaCppStockBuildConfigurationProvider;
+import org.maemo.mica.internal.api.cpp.project.core.MicaCppStockMakeBuildConfigurationProvider;
public class ESboxCppBuildConfigurationSelectionDialog extends
BuildConfigurationSelectionDialog {
- public ESboxCppBuildConfigurationSelectionDialog(Shell parentShell) {
- super(parentShell);
+ public ESboxCppBuildConfigurationSelectionDialog(Shell parentShell, IProjectHandle projectHandle) {
+ super(parentShell, projectHandle);
}
/* (non-Javadoc)
- * @see org.maemo.mica.cpp.project.ui.MicaCppBuildConfigurationSelectionDialog#getStockBuildConfigurationProvider()
- */
- @Override
- protected ITargetBuildConfigurationProvider getBuildConfigurationProvider() {
- return new StockAndExistingTargetBuildConfigurationProvider(
- new MicaCppStockBuildConfigurationProvider(),
- getCheckedConfigurations());
- }
-
- /* (non-Javadoc)
* @see org.maemo.mica.cpp.project.ui.MicaCppBuildConfigurationSelectionDialog#getBuildTargetFilter()
*/
@Override
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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -13,10 +13,9 @@
import org.eclipse.core.resources.IProject;
import org.eclipse.jface.wizard.Wizard;
-import org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCCProjectWizard;
-import org.maemo.esbox.internal.cpp.project.ui.wizards.ConvertToESboxCProjectWizard;
+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;
-import org.maemo.mica.cpp.project.core.MicaCppProjectNature;
/**
* This property page is shown for old format projects.
@@ -27,21 +26,21 @@
public class ESBoxOldCppTargetPropertyPage extends AbstractOldFormatTargetPropertyPage {
/* (non-Javadoc)
- * @see org.maemo.mica.common.project.ui.properties.AbstractOldFormatTargetPropertyPage#createConversionWizard(org.eclipse.core.resources.IProject)
+ * @see org.maemo.mica.common.project.ui.properties.AbstractOldFormatTargetPropertyPage#convertProject(org.eclipse.core.resources.IProject)
*/
@Override
- protected Wizard createConversionWizard(IProject project) {
- if (MicaCppProjectNature.isCCLanguageProject(project))
- return new ConvertToESboxCCProjectWizard();
- else
- return new ConvertToESboxCProjectWizard();
+ protected void convertProject(IProject project) {
+ Wizard wizard;
+ wizard = new ConvertToESboxCppProjectWizard();
+ WizardDialog dialog = new WizardDialog(null, wizard);
+ dialog.open();
}
/* (non-Javadoc)
* @see org.maemo.mica.common.project.ui.properties.AbstractOldFormatTargetPropertyPage#getWizardName()
*/
@Override
- protected String getWizardName() {
+ protected String getConversionLabel() {
return "Convert to ESbox Projects";
}
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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -18,23 +18,26 @@
import org.eclipse.swt.widgets.Group;
import org.maemo.esbox.internal.cpp.project.ui.ESboxCppBuildConfigurationSelectionDialog;
import org.maemo.mica.common.project.core.IBuildConfigurationData;
+import org.maemo.mica.common.project.core.IProjectBuilderType;
+import org.maemo.mica.common.project.core.IProjectType;
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.BuildTargetAndConfigurationProvider;
import org.maemo.mica.common.project.ui.IBuildConfigSelectionDialog;
-import org.maemo.mica.common.project.ui.MicaBuildConfigurationsPage;
+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.cpp.project.ui.MicaCppStockBuildConfigurationProvider;
+import org.maemo.mica.internal.api.cpp.project.core.MicaCppStockMakeBuildConfigurationProvider;
/**
* ESbox build configurations page for C/C++ projects.
* @author eswartz
*
*/
-public class ESboxCppBuildConfigurationsPage extends MicaBuildConfigurationsPage {
+public class ESboxCppBuildConfigurationsPage extends AbstractSingleEditBuildConfigurationsPage {
//private TabItem environmentTab;
//private TabFolder folder;
@@ -52,7 +55,11 @@
}
protected IStockBuildConfigurationProvider getStockConfigurationProvider() {
- return new MicaCppStockBuildConfigurationProvider();
+ IProjectBuilderType projectBuilderType = ProjectManager.getInstance().getProjectBuilderType(project);
+ if (projectBuilderType == null)
+ return null;
+ IProjectType projectType = ProjectManager.getInstance().getProjectType(project);
+ return projectBuilderType.getStockBuildConfigurationProvider(projectType);
}
/* (non-Javadoc)
@@ -99,9 +106,13 @@
}
} else {
IBuildConfigurationData defaultData = null;
- IStockBuildConfigurationDescriptor descriptor = getStockConfigurationProvider().createStockConfigurationDescriptor(stockId);
- if (descriptor != null && newCurrentConfigData.getSdkTarget() != null) {
- defaultData = descriptor.createConfigurationData(newCurrentConfigData.getSdkTarget());
+ IStockBuildConfigurationDescriptor descriptor = null;
+ IStockBuildConfigurationProvider stockConfigurationProvider = getStockConfigurationProvider();
+ if (stockConfigurationProvider != null) {
+ descriptor = stockConfigurationProvider.createStockConfigurationDescriptor(stockId);
+ }
+ if (descriptor != null && newCurrentConfigData.getSDKTarget() != null) {
+ defaultData = descriptor.createConfigurationData(newCurrentConfigData.getSDKTarget());
// replace data
newConfigDatas.remove(newCurrentConfigData);
newConfigDatas.add(defaultData);
@@ -141,7 +152,8 @@
*/
@Override
protected IBuildConfigSelectionDialog createBuildConfigurationSelectionDialog() {
- return new ESboxCppBuildConfigurationSelectionDialog(getShell());
+ return new ESboxCppBuildConfigurationSelectionDialog(getShell(),
+ projectHandle);
}
Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseConvertToESboxCppProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseConvertToESboxCppProjectWizard.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/BaseConvertToESboxCppProjectWizard.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 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.ITargetBuildConfigurationProvider;
-import org.maemo.mica.common.project.ui.StockTargetBuildConfigurationProvider;
-import org.maemo.mica.cpp.project.ui.MicaCppStockBuildConfigurationProvider;
-import org.maemo.mica.cpp.project.ui.wizards.ConvertToMicaCppBuildConfigWizard;
-
-/**
- * Convert existing projects to build with ESbox as C/C++ projects.
- * @author eswartz
- *
- */
-public abstract class BaseConvertToESboxCppProjectWizard extends ConvertToMicaCppBuildConfigWizard {
-
- public BaseConvertToESboxCppProjectWizard() {
- super("ESbox");
- }
-
- /* (non-Javadoc)
- * @see org.maemo.mica.cpp.project.ui.wizards.ConvertToMicaCppBuildConfigWizard#createBuildTargetFilter()
- */
- @Override
- protected IBuildTargetFilter createBuildTargetFilter() {
- return new BuildMachineHostedTargetFilter();
- }
-
- @Override
- protected ITargetBuildConfigurationProvider createTargetBuildConfigurationProvider() {
- return new StockTargetBuildConfigurationProvider(
- new MicaCppStockBuildConfigurationProvider());
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.cdt.ui.wizards.NewCProjectWizard#initializeDefaultPageImageDescriptor()
- */
- @Override
- protected void initializeDefaultPageImageDescriptor() {
- ImageDescriptor image = Activator.getImageDescriptor("./icons/full/wizban/maemo_convert.gif");
- setDefaultPageImageDescriptor(image);
- }
-}
Modified: 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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -16,12 +16,12 @@
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.ITargetBuildConfigurationProvider;
+import org.maemo.mica.common.project.core.IBuildConfigurationProvider;
import org.maemo.mica.common.project.ui.StockTargetBuildConfigurationProvider;
-import org.maemo.mica.common.project.ui.wizards.BaseProjectTargetSelectionPage;
+import org.maemo.mica.common.project.ui.wizards.AbstractProjectLocationTargetSelectionPage;
import org.maemo.mica.cpp.project.ui.BaseCppProjectWizard;
-import org.maemo.mica.cpp.project.ui.MicaCppStockBuildConfigurationProvider;
import org.maemo.mica.cpp.project.ui.ProjectBuildConfigSelectionPage;
+import org.maemo.mica.internal.api.cpp.project.core.MicaCppStockMakeBuildConfigurationProvider;
/**
* Base C or C++ project wizard.
@@ -39,7 +39,7 @@
}
@Override
- protected BaseProjectTargetSelectionPage createProjectAndTargetSelectionPage() {
+ protected AbstractProjectLocationTargetSelectionPage createProjectAndTargetSelectionPage() {
return new ProjectBuildConfigSelectionPage(
getConfigHandler(),
getBuildTargetFilter(),
@@ -50,9 +50,9 @@
* Get the provider of stock configurations for the targets in the tree.
* @return {@link IStockBuildConfigurationProvider} or <code>null</code>
*/
- protected ITargetBuildConfigurationProvider getTargetBuildConfigurationProvider() {
+ protected IBuildConfigurationProvider getTargetBuildConfigurationProvider() {
return new StockTargetBuildConfigurationProvider(
- new MicaCppStockBuildConfigurationProvider());
+ new MicaCppStockMakeBuildConfigurationProvider());
}
@Override
Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCCProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCCProjectWizard.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCCProjectWizard.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,29 +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;
-
-/**
- * @author eswartz
- *
- */
-public class ConvertToESboxCCProjectWizard extends
- BaseConvertToESboxCppProjectWizard {
-
- /* (non-Javadoc)
- * @see org.maemo.mica.cpp.project.ui.wizards.ConvertToMicaCppBuildConfigWizard#isCplusplus()
- */
- @Override
- protected boolean isCplusplus() {
- return true;
- }
-
-}
Deleted: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCProjectWizard.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCProjectWizard.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCProjectWizard.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,29 +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;
-
-/**
- * @author eswartz
- *
- */
-public class ConvertToESboxCProjectWizard extends
- BaseConvertToESboxCppProjectWizard {
-
- /* (non-Javadoc)
- * @see org.maemo.mica.cpp.project.ui.wizards.ConvertToMicaCppBuildConfigWizard#isCplusplus()
- */
- @Override
- protected boolean isCplusplus() {
- return false;
- }
-
-}
Copied: branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCppProjectWizard.java (from rev 1642, branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCProjectWizard.java)
===================================================================
--- branches/work_Ed/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/ui/wizards/ConvertToESboxCppProjectWizard.java (rev 0)
+++ 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)
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * 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.ProjectConfigHandler;
+import org.maemo.mica.cpp.project.ui.wizards.AbstractConvertToCppProjectWizard;
+import org.maemo.mica.maemosdk.core.MaemoExecutionEnvironmentIds;
+
+/**
+ * This wizard converts projects to ESbox C/C++ projects.
+ * @author eswartz
+ *
+ */
+public class ConvertToESboxCppProjectWizard extends AbstractConvertToCppProjectWizard {
+
+ public ConvertToESboxCppProjectWizard() {
+ super("ESbox");
+ setDisplayExecutionEnvironmentSelector(false);
+ }
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.cpp.project.ui.wizards.ConvertToMicaCppBuildConfigWizard#createBuildTargetFilter()
+ */
+ @Override
+ protected IBuildTargetFilter createBuildTargetFilter() {
+ return new BuildMachineHostedTargetFilter();
+ }
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.common.project.ui.wizards.AbstractConvertToMaemoProjectWizard#getDefaultPageImageDescriptor()
+ */
+ @Override
+ protected ImageDescriptor getDefaultPageImageDescriptor() {
+ return Activator.getImageDescriptor("./icons/full/wizban/maemo_convert.gif");
+ }
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.common.project.ui.wizards.AbstractConvertToMaemoProjectWizard#updateProjectConfigHandler(org.maemo.mica.common.project.core.ProjectConfigHandler)
+ */
+ @Override
+ protected void updateProjectConfigHandler(ProjectConfigHandler configHandler) {
+ 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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -12,7 +12,7 @@
package org.maemo.esbox.internal.cpp.project.ui.wizards;
import org.maemo.esbox.internal.cpp.project.Activator;
-import org.maemo.mica.cpp.project.core.AbstractMicaCppProjectType;
+import org.maemo.mica.cpp.project.core.MicaCppCCProjectType;
/**
* Maemo C++ Project Wizard
@@ -32,6 +32,6 @@
@Override
protected String getProjectTypeIdPattern() {
- return AbstractMicaCppProjectType.ID_CC;
+ return MicaCppCCProjectType.ID_CC;
}
}
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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -12,7 +12,7 @@
package org.maemo.esbox.internal.cpp.project.ui.wizards;
import org.maemo.esbox.internal.cpp.project.Activator;
-import org.maemo.mica.cpp.project.core.AbstractMicaCppProjectType;
+import org.maemo.mica.cpp.project.core.MicaCppCProjectType;
/**
* Maemo C Project Wizard
@@ -27,6 +27,6 @@
}
protected String getProjectTypeIdPattern() {
- return AbstractMicaCppProjectType.ID_C;
+ return MicaCppCProjectType.ID_C;
}
}
Modified: branches/work_Ed/org.maemo.esbox.maemosdk.ui/META-INF/MANIFEST.MF
===================================================================
--- branches/work_Ed/org.maemo.esbox.maemosdk.ui/META-INF/MANIFEST.MF 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.maemosdk.ui/META-INF/MANIFEST.MF 2009-05-29 19:26:00 UTC (rev 1657)
@@ -16,8 +16,8 @@
org.maemo.mica.linux.packages.core;bundle-version="2.0.0",
org.maemo.mica.linux.packages.ui;bundle-version="2.0.0",
org.maemo.mica.cpp.project.core;bundle-version="2.0.0",
- org.maemo.mica.python.project.core;bundle-version="2.0.0"
+ org.maemo.mica.python.project.core;bundle-version="2.0.0",
+ org.maemo.mica.common.project.ui;bundle-version="2.0.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-ActivationPolicy: lazy
-Export-Package: org.maemo.esbox.internal.api.maemosdk.ui.preferences,
- org.maemo.esbox.internal.maemosdk.ui.actions
+Export-Package: org.maemo.esbox.internal.api.maemosdk.ui.preferences
Added: branches/work_Ed/org.maemo.esbox.maemosdk.ui/icons/full/wizban/maemo_convert.gif
===================================================================
(Binary files differ)
Property changes on: branches/work_Ed/org.maemo.esbox.maemosdk.ui/icons/full/wizban/maemo_convert.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: branches/work_Ed/org.maemo.esbox.maemosdk.ui/plugin.xml
===================================================================
--- branches/work_Ed/org.maemo.esbox.maemosdk.ui/plugin.xml 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.maemosdk.ui/plugin.xml 2009-05-29 19:26:00 UTC (rev 1657)
@@ -85,7 +85,7 @@
id="org.maemo.esbox.maemosdk.ui.wizards.ImportDebianSourcePackageProject"
name="Project from Debian Repository">
<description>
- Import a project from sources in an Debian apt repository.
+ Import a project from sources in a Debian apt repository.
</description>
<selection
class="org.eclipse.core.resources.IProject">
Modified: branches/work_Ed/org.maemo.esbox.python.project/META-INF/MANIFEST.MF
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/META-INF/MANIFEST.MF 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.python.project/META-INF/MANIFEST.MF 2009-05-29 19:26:00 UTC (rev 1657)
@@ -15,6 +15,8 @@
org.eclipse.ui.views;bundle-version="3.3.0",
org.maemo.mica.python.project.core;bundle-version="2.0.0",
org.maemo.mica.python.project.ui;bundle-version="2.0.0",
- org.maemo.mica.linux.packages.core;bundle-version="2.0.0"
+ org.maemo.mica.linux.packages.core;bundle-version="2.0.0",
+ org.maemo.esbox.maemosdk.ui;bundle-version="2.0.0",
+ org.maemo.mica.maemosdk.core;bundle-version="2.0.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-ActivationPolicy: lazy
Added: branches/work_Ed/org.maemo.esbox.python.project/icons/full/obj16/maemo_convert.png
===================================================================
(Binary files differ)
Property changes on: branches/work_Ed/org.maemo.esbox.python.project/icons/full/obj16/maemo_convert.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: branches/work_Ed/org.maemo.esbox.python.project/icons/full/wizban/maemo_convert.gif
===================================================================
(Binary files differ)
Property changes on: branches/work_Ed/org.maemo.esbox.python.project/icons/full/wizban/maemo_convert.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: branches/work_Ed/org.maemo.esbox.python.project/plugin.xml
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/plugin.xml 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.python.project/plugin.xml 2009-05-29 19:26:00 UTC (rev 1657)
@@ -2,13 +2,26 @@
<?eclipse version="3.2"?>
<plugin>
+ <extension
+ id="pythonNature"
+ name="ESbox Python Project Nature"
+ point="org.eclipse.core.resources.natures">
+ <runtime>
+ <run
+ class="org.maemo.esbox.internal.python.project.ESboxPythonNature">
+ </run>
+ </runtime>
+ <requires-nature
+ id="org.maemo.mica.python.project.core.pythonNature">
+ </requires-nature>
+ </extension>
<extension
point="org.eclipse.ui.newWizards">
<wizard
canFinishEarly="false"
category="org.python.pydev.PythonCategory"
- class="org.maemo.esbox.internal.python.project.wizards.ESboxPythonProjectWizard"
+ class="org.maemo.esbox.internal.python.project.ui.wizards.ESboxPythonProjectWizard"
finalPerspective="org.python.pydev.ui.PythonPerspective"
preferredPerspectives="org.python.pydev.ui.PythonPerspective,org.maemo.esbox.product.ESboxPerspective,org.maemo.pluthon.ui.PluthonPerspective"
hasPages="true"
@@ -21,6 +34,27 @@
</extension>
<extension
+ point="org.eclipse.ui.newWizards">
+ <wizard
+ 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">
+ <description>
+ Convert an existing Python project to build for ESbox.
+ </description>
+ <selection
+ class="org.eclipse.core.resources.IProject">
+ </selection>
+ </wizard>
+
+ </extension>
+
+ <extension
point="org.eclipse.ui.navigator.navigatorContent">
<commonWizard
menuGroupId="org.python.pydev.ui.wizards"
@@ -28,26 +62,79 @@
wizardId="org.maemo.mica.python.project.ui.wizards.ESboxPythonProjectWizard">
<enablement></enablement>
</commonWizard>
+ <commonWizard
+ menuGroupId="org.python.pydev.ui.wizards"
+ type="new"
+ wizardId="org.maemo.mica.python.project.ui.wizards.ConvertToESboxWizard">
+ <enablement></enablement>
+ </commonWizard>
</extension>
-
+
+ <extension
+ point="org.eclipse.ui.propertyPages">
+
+ <page
+ class="org.maemo.esbox.internal.python.project.ui.properties.ESboxPythonBuildConfigurationsPage"
+ id="org.maemo.mica.python.project.ui.BuildConfigurations"
+ name="Maemo Build Configurations">
+ <filter
+ name="nature"
+ value="org.maemo.mica.python.project.core.pythonNature">
+ </filter>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject">
+ </adapt>
+ </enabledWhen>
+ </page>
+
+ </extension>
<extension
point="org.maemo.mica.linux.packages.core.projectPackageGatherer">
<projectPackageGatherer
- class="org.maemo.esbox.internal.python.project.core.MaemoPythonProjectPackageGatherer">
+ class="org.maemo.esbox.internal.python.project.core.ESboxPythonProjectPackageGatherer">
</projectPackageGatherer>
</extension>
+
+ <!-- COMPATIBILITY SECTION -->
+
<extension
- point="org.eclipse.core.runtime.adapters">
- <factory
- adaptableType="org.maemo.mica.python.project.core.MicaPythonProjectType"
- class="org.maemo.esbox.internal.python.project.core.PythonProjectDebianSupportAdapterFactory">
- <adapter
- type="org.maemo.mica.linux.packages.core.adapters.IDebianProjectConvertImportSupport">
- </adapter>
- </factory>
-
- </extension>
-
+ point="org.eclipse.ui.propertyPages">
+
+ <!-- old 1.4 version page -->
+ <page
+ class="org.maemo.esbox.internal.python.project.ui.properties.ESboxOldPythonBuildTargetPropertyPage"
+ id="org.maemo.esbox.project.cpp.ui.oldESboxProjectPropertyPage"
+ name="Maemo Build Configurations"
+ nameFilter="*">
+ <filter
+ name="nature"
+ value="org.indt.esbox.core.ESboxNature">
+ </filter>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject">
+ </adapt>
+ </enabledWhen>
+ </page>
+
+ <!-- 2.0.0M4 page -->
+ <page
+ class="org.maemo.esbox.internal.python.project.ui.properties.ESboxOldPythonBuildTargetPropertyPage"
+ id="org.maemo.esbox.project.cpp.ui.oldESboxProjectPropertyPage"
+ name="Maemo Build Configurations"
+ nameFilter="*">
+ <filter
+ name="nature"
+ value="org.maemo.mica.python.project.core.ESboxPythonNature">
+ </filter>
+ <enabledWhen>
+ <adapt type="org.eclipse.core.resources.IProject">
+ </adapt>
+ </enabledWhen>
+ </page>
+ </extension>
+
+ <!-- END COMPATIBILITY SECTION -->
+
</plugin>
Added: 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 (rev 0)
+++ 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)
@@ -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;
+
+/**
+ * @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/core/ESboxPythonProjectPackageGatherer.java (from rev 1642, branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/MaemoPythonProjectPackageGatherer.java)
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/ESboxPythonProjectPackageGatherer.java (rev 0)
+++ 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)
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * 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.core;
+
+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.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.
+ * @author eswartz
+ *
+ */
+public class ESboxPythonProjectPackageGatherer implements
+ IProjectPackageGatherer {
+
+ /**
+ *
+ */
+ public ESboxPythonProjectPackageGatherer() {
+ }
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.linux.packages.core.aptpkgconfig.install.IProjectPackageGatherer#scanPackages(org.eclipse.core.resources.IProject, org.eclipse.core.runtime.IProgressMonitor)
+ */
+ public ProjectPackageInfo scanPackages(IProject project,
+ ISDKTarget sdkTarget, IProgressMonitor monitor) throws CoreException {
+ if (NatureUtils.isNatureInProject(project, ESboxPythonNature.NATURE_ID)) {
+ ProjectPackageInfo info = new ProjectPackageInfo();
+ if (sdkTarget != null) {
+ if (sdkTarget.getMachine() instanceof IBuildMachine)
+ info.getSystemPackages().add("maemo-python-env");
+ else
+ info.getSystemPackages().add("maemo-python-device-env");
+ }
+ return info;
+ }
+ return null;
+ }
+
+}
Deleted: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/MaemoPythonProjectPackageGatherer.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/MaemoPythonProjectPackageGatherer.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/MaemoPythonProjectPackageGatherer.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,55 +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.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.maemo.mica.common.core.machine.IBuildMachine;
-import org.maemo.mica.common.core.sdk.ISDKTarget;
-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.
- * @author eswartz
- *
- */
-public class MaemoPythonProjectPackageGatherer implements
- IProjectPackageGatherer {
-
- /**
- *
- */
- public MaemoPythonProjectPackageGatherer() {
- }
-
- /* (non-Javadoc)
- * @see org.maemo.mica.linux.packages.core.aptpkgconfig.install.IProjectPackageGatherer#scanPackages(org.eclipse.core.resources.IProject, org.eclipse.core.runtime.IProgressMonitor)
- */
- public ProjectPackageInfo scanPackages(IProject project,
- ISDKTarget sdkTarget, IProgressMonitor monitor) throws CoreException {
- if (MicaPythonProjectNature.isNatureInProject(project)) {
- ProjectPackageInfo info = new ProjectPackageInfo();
- if (sdkTarget != null) {
- if (sdkTarget.getMachine() instanceof IBuildMachine)
- info.getSystemPackages().add("maemo-python-env");
- else
- info.getSystemPackages().add("maemo-python-device-env");
- }
- return info;
- }
- return null;
- }
-
-}
Deleted: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectImportConfigurationComposite.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectImportConfigurationComposite.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectImportConfigurationComposite.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,61 +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.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jface.layout.GridDataFactory;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.maemo.mica.common.core.IValidatingDialogPage;
-import org.maemo.mica.common.project.core.ProjectConfigHandler;
-import org.maemo.mica.internal.api.common.core.GridLayoutWrappedTextUtils;
-import org.maemo.mica.python.project.ui.wizards.PythonProjectImportConfigurationComposite;
-
-/**
- * This composite contains the configurable aspects of a project for a Debian
- * source package.
- * @author eswartz
- *
- */
-public class PythonDebianProjectImportConfigurationComposite extends PythonProjectImportConfigurationComposite {
-
- /*private*/ String[] rules;
-
- public PythonDebianProjectImportConfigurationComposite(
- Composite parent,
- IValidatingDialogPage dialogPage,
- final IProject project,
- final IPath projectLocation,
- ProjectConfigHandler configHandler,
- String[] rules) {
- super(parent, SWT.NONE, dialogPage, project, projectLocation, configHandler);
- this.rules = rules;
- }
-
- /* (non-Javadoc)
- * @see org.maemo.mica.python.project.ui.wizards.PythonProjectImportConfigurationComposite#createProjectUI(org.eclipse.swt.widgets.Composite)
- */
- @Override
- protected void createProjectUI(Composite composite) {
- super.createProjectUI(composite);
-
- Label label = new Label(composite, SWT.NONE);
- GridData labelData = GridDataFactory.swtDefaults().create();
- label.setText("Python projects cannot (currently) be built with the 'debian/rules' script since this requires a Make-based builder.");
-
- GridLayoutWrappedTextUtils.setupLabel(getShell(), label, labelData);
-
- }
-}
Deleted: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectSupport.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectSupport.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonDebianProjectSupport.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,57 +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.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.swt.widgets.Composite;
-import org.maemo.mica.common.core.IValidatingDialogPage;
-import org.maemo.mica.common.project.core.ProjectConfigHandler;
-import org.maemo.mica.linux.packages.core.adapters.IDebianProjectConvertImportSupport;
-import org.maemo.mica.python.project.core.MicaPythonProjectType;
-
-/**
- * @author eswartz
- *
- */
-public class PythonDebianProjectSupport implements IDebianProjectConvertImportSupport {
-
- /**
- * @param micaPythonProjectType
- * @param adaptableObject
- */
- public PythonDebianProjectSupport(MicaPythonProjectType micaPythonProjectType) {
- }
-
- /* (non-Javadoc)
- * @see org.maemo.mica.linux.packages.core.adapters.IDebianProjectSupport#createProjectImportConfigurationComposite(org.eclipse.swt.widgets.Composite, org.eclipse.jface.dialogs.IDialogPage, org.eclipse.core.resources.IProject, org.eclipse.core.runtime.IPath, org.maemo.mica.common.project.core.ProjectConfigHandler)
- */
- public Composite createDebianProjectImportConfigurationComposite(Composite parent,
- int style, IValidatingDialogPage dialogPage, IProject project,
- IPath projectLocation, ProjectConfigHandler configHandler, String[] debianRules) {
-
- PythonDebianProjectImportConfigurationComposite configComposite =
- new PythonDebianProjectImportConfigurationComposite(
- parent,
- dialogPage,
- project,
- projectLocation,
- configHandler,
- debianRules
- );
-
- configComposite.init();
-
- return configComposite;
- }
-
-}
Deleted: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonProjectDebianSupportAdapterFactory.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonProjectDebianSupportAdapterFactory.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/core/PythonProjectDebianSupportAdapterFactory.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -1,44 +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.core;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.maemo.mica.linux.packages.core.adapters.IDebianProjectConvertImportSupport;
-import org.maemo.mica.python.project.core.MicaPythonProjectType;
-
-/**
- * This factory proclaims Debian support for a project type.
- * @author eswartz
- *
- */
-public class PythonProjectDebianSupportAdapterFactory implements IAdapterFactory {
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
- */
- public Object getAdapter(Object adaptableObject, Class adapterType) {
- if (adaptableObject instanceof MicaPythonProjectType) {
- if (adapterType.equals(IDebianProjectConvertImportSupport.class)) {
- return new PythonDebianProjectSupport((MicaPythonProjectType) adaptableObject);
- }
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
- */
- public Class[] getAdapterList() {
- return new Class[] { IDebianProjectConvertImportSupport.class };
- }
-
-}
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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -11,51 +11,33 @@
package org.maemo.esbox.internal.python.project.ui.properties;
-import java.util.List;
+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;
-import org.eclipse.core.resources.ICommand;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.SubProgressMonitor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.maemo.esbox.internal.python.project.Activator;
-import org.maemo.mica.common.core.MicaException;
-import org.maemo.mica.common.project.core.BuildMachineHostedTargetFilter;
-import org.maemo.mica.common.project.core.IBuildConfiguration;
-import org.maemo.mica.common.project.core.IBuildConfigurationData;
-import org.maemo.mica.common.project.core.IBuildTargetFilter;
-import org.maemo.mica.common.project.core.IProjectProperties;
-import org.maemo.mica.common.project.core.IProjectType;
-import org.maemo.mica.common.project.core.NatureUtils;
-import org.maemo.mica.common.project.core.ProjectManager;
-import org.maemo.mica.common.project.ui.MicaSDKTargetBuildConfigurationsPage;
-import org.maemo.mica.python.project.core.MicaPythonProjectNature;
-import org.maemo.mica.python.project.core.MicaPythonProjectType;
-import org.maemo.mica.python.project.core.OldESboxPythonProjectNature;
-
/**
* The Python variant of the ESbox > Build Configurations property page
* will convert the project format when the user saves the settings.
* @author eswartz
*
*/
-public class ESboxOldPythonBuildTargetPropertyPage extends
- MicaSDKTargetBuildConfigurationsPage {
+public class ESboxOldPythonBuildTargetPropertyPage extends AbstractOldFormatTargetPropertyPage {
- /* (non-Javadoc)
+ /* (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
@@ -83,41 +65,17 @@
}
return super.getCurrentConfigurations();
}
+ */
/* (non-Javadoc)
- * @see org.maemo.mica.common.project.ui.ESboxBuildConfigurationsPage#addCustomUI(org.eclipse.swt.widgets.Composite)
- */
+ * @see org.maemo.mica.common.project.ui.properties.AbstractOldFormatTargetPropertyPage#convertProject(org.eclipse.core.resources.IProject)
+ */
@Override
- protected void addCustomTrailingUI(Composite control) {
- if (ProjectManager.getInstance().getProjectHandle(project) == null) {
- Label label = new Label(control, SWT.WRAP);
- label.setText("This project is in an old format. It will be converted to the new format and become incompatible with older versions of ESbox if you save changes.");
- GridData gridData = new GridData(SWT.FILL, SWT.CENTER, true, false);
- gridData.horizontalSpan = 2;
- label.setLayoutData(gridData);
- }
- }
-
- /* (non-Javadoc)
- * @see org.maemo.mica.common.project.ui.ESboxBuildConfigurationsPage#performOk()
- */
- @Override
- public boolean performOk() {
- // convert the project by swapping the project nature
- try {
- // remove builders (ALL OF THEM) because they will re-add the natures
- IProjectDescription description = project.getDescription();
- description.setBuildSpec(new ICommand[0]);
- // remove natures too
- description.setNatureIds(new String[0]);
- project.setDescription(description, null);
-
- NatureUtils.addNature(project, MicaPythonProjectNature.ESBOX_PYTHON_NATURE_ID, null);
- } catch (CoreException e) {
- Activator.getErrorLogger().logAndShowError("Failed to convert project to new-style Python project", e);
- }
+ protected void convertProject(IProject project) {
+ Wizard wizard;
+ wizard = new ConvertToESboxPythonProjectWizard();
- return super.performOk();
+ 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 14:54:00 UTC (rev 1656)
+++ 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)
@@ -12,15 +12,20 @@
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.
* @author eswartz
*
*/
-public class ESboxPythonBuildConfigurationsPage extends MicaSDKTargetBuildConfigurationsPage {
+public class ESboxPythonBuildConfigurationsPage extends AbstractTreeEditBuildConfigurationsPage {
/**
*
@@ -36,5 +41,14 @@
protected IBuildTargetFilter createBuildTargetFilter() {
return new BuildMachineHostedTargetFilter();
}
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.common.project.ui.AbstractTreeEditBuildConfigurationsPage#createBuildConfigurationProvider()
+ */
+ @Override
+ protected IExistingBuildConfigurationProvider createBuildConfigurationProvider() {
+ return new SDKTargetAndExistingBuildConfigurationProvider(
+ newConfigDatas);
+ }
}
Copied: branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/ui/wizards (from rev 1642, branches/work_Ed/org.maemo.esbox.python.project/src/org/maemo/esbox/internal/python/project/wizards)
Added: 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 (rev 0)
+++ 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)
@@ -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.python.project.ui.wizards;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.maemo.esbox.internal.python.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.IBuildConfigurationProvider;
+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;
+
+/**
+ * This wizard converts projects to ESbox Python projects.
+ * @author eswartz
+ *
+ */
+public class ConvertToESboxPythonProjectWizard extends AbstractConvertToPythonProjectWizard {
+
+ /**
+ *
+ */
+ public ConvertToESboxPythonProjectWizard() {
+ super("ESbox");
+ setDisplayProjectTypeSelector(false);
+ setDisplayProjectBuilderTypeSelector(false);
+ setDisplayExecutionEnvironmentSelector(false);
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.common.project.ui.wizards.AbstractConvertToMaemoProjectWizard#getDefaultPageImageDescriptor()
+ */
+ @Override
+ protected ImageDescriptor getDefaultPageImageDescriptor() {
+ return Activator.getImageDescriptor("./icons/full/wizban/maemo_convert.gif");
+ }
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.common.project.ui.wizards.AbstractConvertToMaemoProjectWizard#createBuildTargetFilter()
+ */
+ @Override
+ protected IBuildTargetFilter createBuildTargetFilter() {
+ return new BuildMachineHostedTargetFilter();
+ }
+
+ @Override
+ protected IBuildConfigurationProvider createTargetBuildConfigurationProvider() {
+ return super.createTargetBuildConfigurationProvider();
+ }
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.common.project.ui.wizards.AbstractConvertToMaemoProjectWizard#updateProjectConfigHandler(org.maemo.mica.common.project.core.ProjectConfigHandler)
+ */
+ @Override
+ protected void updateProjectConfigHandler(ProjectConfigHandler configHandler) {
+ //configHandler.addExtraNatureId(ESboxProjectNature.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/wizards/ESboxPythonProjectWizard.java 2009-05-26 08:40:14 UTC (rev 1642)
+++ 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)
@@ -9,7 +9,7 @@
* Ed Swartz (Nokia) - initial API and implementation
*******************************************************************************/
-package org.maemo.esbox.internal.python.project.wizards;
+package org.maemo.esbox.internal.python.project.ui.wizards;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.ui.INewWizard;
Modified: branches/work_Ed/org.maemo.esbox.scratchbox.core/src/org/maemo/esbox/internal/api/scratchbox/core/OldStyleProjectProperties.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.scratchbox.core/src/org/maemo/esbox/internal/api/scratchbox/core/OldStyleProjectProperties.java 2009-05-29 14:54:00 UTC (rev 1656)
+++ branches/work_Ed/org.maemo.esbox.scratchbox.core/src/org/maemo/esbox/internal/api/scratchbox/core/OldStyleProjectProperties.java 2009-05-29 19:26:00 UTC (rev 1657)
@@ -154,11 +154,9 @@
}
if (sdk == null) {
- throw new MicaException(
- MessageFormat
- .format(
- "Project ''{0}'' uses an unsupported scratchbox version {1}",
- project.getName(), version));
+ throw new MicaException(MessageFormat.format(
+ "Project ''{0}'' uses an unsupported scratchbox version {1}",
+ project.getName(), version));
}
return sdk;
@@ -183,8 +181,4 @@
return null;
}
- // public synchronized String getScratchboxVersion(IProject project) {
- // return readProperty(scratchboxVersionProperty);
- // }
-
}
More information about the Esbox-commits
mailing list