[Esbox-commits] r2083 - in trunk/org.maemo.esbox.cpp.project: . META-INF src/org/maemo/esbox/internal/cpp/project/core
eswartz at garage.maemo.org
eswartz at garage.maemo.org
Tue Sep 1 22:32:06 EEST 2009
Author: eswartz
Date: 2009-09-01 22:32:05 +0300 (Tue, 01 Sep 2009)
New Revision: 2083
Removed:
trunk/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ApplyDoctoolsFixMarkerResolutionGenerator.java
Modified:
trunk/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF
trunk/org.maemo.esbox.cpp.project/plugin.xml
Log:
Re-apply build fixes
Modified: trunk/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF
===================================================================
--- trunk/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF 2009-09-01 19:00:05 UTC (rev 2082)
+++ trunk/org.maemo.esbox.cpp.project/META-INF/MANIFEST.MF 2009-09-01 19:32:05 UTC (rev 2083)
@@ -23,9 +23,6 @@
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",
- org.maemo.mica.cpp.project.builder.make;bundle-version="2.0.0",
- org.maemo.mica.cpp.project.builder.autotools;bundle-version="2.0.0",
- org.maemo.esbox.scratchbox.sb1;bundle-version="2.0.0",
- org.maemo.esbox.scratchbox.core;bundle-version="2.0.0"
+ org.maemo.mica.cpp.project.builder.make;bundle-version="2.0.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Bundle-ActivationPolicy: lazy
Modified: trunk/org.maemo.esbox.cpp.project/plugin.xml
===================================================================
--- trunk/org.maemo.esbox.cpp.project/plugin.xml 2009-09-01 19:00:05 UTC (rev 2082)
+++ trunk/org.maemo.esbox.cpp.project/plugin.xml 2009-09-01 19:32:05 UTC (rev 2083)
@@ -170,10 +170,6 @@
class="org.maemo.esbox.internal.cpp.project.core.ConvertCppProjectMarkerResolutionGenerator"
markerType="org.eclipse.core.resources.problemmarker">
</markerResolutionGenerator>
- <markerResolutionGenerator
- class="org.maemo.esbox.internal.cpp.project.core.ApplyDoctoolsFixMarkerResolutionGenerator"
- markerType="org.maemo.mica.cpp.project.builder.autotools.autotoolsProblemMarker">
- </markerResolutionGenerator>
</extension>
<extension
Deleted: trunk/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ApplyDoctoolsFixMarkerResolutionGenerator.java
===================================================================
--- trunk/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ApplyDoctoolsFixMarkerResolutionGenerator.java 2009-09-01 19:00:05 UTC (rev 2082)
+++ trunk/org.maemo.esbox.cpp.project/src/org/maemo/esbox/internal/cpp/project/core/ApplyDoctoolsFixMarkerResolutionGenerator.java 2009-09-01 19:32:05 UTC (rev 2083)
@@ -1,172 +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.core;
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.ProgressMonitorDialog;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.IMarkerResolution;
-import org.eclipse.ui.IMarkerResolution2;
-import org.eclipse.ui.IMarkerResolutionGenerator2;
-import org.maemo.esbox.internal.cpp.project.Activator;
-import org.maemo.esbox.scratchbox.sb1.sdk.IScratchbox1SDKTarget;
-import org.maemo.mica.common.core.MicaException;
-import org.maemo.mica.common.core.sdk.ISDKTarget;
-import org.maemo.mica.common.project.core.ProjectManager;
-import org.maemo.mica.common.ui.dialogs.DialogUtils;
-import org.maemo.mica.cpp.project.builder.autotools.MicaAutotoolsConstants;
-import org.maemo.mica.internal.api.common.core.sdk.BaseSDKTarget;
-
-/**
- * Apply a "quick fix" for detected errors about intltool being out of date.
- * This really means, you need to add the "doctools" devkit.
- * @author eswartz
- *
- */
-public class ApplyDoctoolsFixMarkerResolutionGenerator implements
- IMarkerResolutionGenerator2 {
-
- private static class FixupDoctoolsMarkerResolution implements
- IMarkerResolution2 {
- public String getDescription() {
- return "Add the doctools devkit to your Scratchbox target. This provides the approved version of intltool (don't install it inside the target).";
- }
-
- public Image getImage() {
- return null;
- }
-
- public String getLabel() {
- return "Add doctools devkit to target";
- }
-
- public void run(final IMarker marker) {
- ProgressMonitorDialog dialog = new ProgressMonitorDialog(null);
- try {
- dialog.run(true, true, new IRunnableWithProgress() {
-
- public void run(IProgressMonitor monitor)
- throws InvocationTargetException,
- InterruptedException {
- monitor.beginTask("Adding devkit...", IProgressMonitor.UNKNOWN);
- addDoctoolsDevkit(marker);
- monitor.worked(1);
- monitor.done();
- }
-
- });
-
- } catch (InvocationTargetException e) {
- Activator.getErrorLogger().logError("Unexpected error fixing marker", e.getCause());
- return;
- } catch (InterruptedException e) {
- return;
- }
-
- boolean build = DialogUtils.showQuestionDialog(null,
- "Updated target",
- "Added the 'doctools' devkit to the target.\n \nDo you want to rebuild now?");
- if (build) {
- Job buildJob = new Job("Rebuild project") {
-
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- try {
- marker.getResource().getProject().build(IncrementalProjectBuilder.FULL_BUILD,
- monitor);
- return Status.OK_STATUS;
-
- } catch (CoreException e) {
- return e.getStatus();
- }
- }
-
- };
- buildJob.schedule();
-
- }
-
- }
-
- /**
- * @param marker
- */
- private void addDoctoolsDevkit(final IMarker marker) {
- try {
- // already checked
- IResource rsrc = marker.getResource();
- ISDKTarget target = ProjectManager.getInstance().getSDKTarget(rsrc.getProject());
- // in case it changed...
- if (target instanceof IScratchbox1SDKTarget) {
- IScratchbox1SDKTarget sb1Target = (IScratchbox1SDKTarget) target;
- // in case out of date
- ((BaseSDKTarget) sb1Target).clearCache();
- sb1Target.addDevkit("doctools");
- marker.delete();
-
- }
- } catch (MicaException e) {
- Activator.getErrorLogger().logAndShowError("Error updating devkits", e);
- } catch (CoreException e) {
- Activator.getErrorLogger().logError("Failed to fix marker", e);
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IMarkerResolutionGenerator2#hasResolutions(org.eclipse.core.resources.IMarker)
- */
- public boolean hasResolutions(IMarker marker) {
- try {
- if (marker.getType().equals(MicaAutotoolsConstants.AUTOTOOLS_PROBLEM_MARKER_TYPE)) {
- Object message = marker.getAttribute(IMarker.MESSAGE);
- if (message != null && message.toString().contains("Your intltool is too old")) {
- // make sure doctools is not already present
- IResource rsrc = marker.getResource();
- if (rsrc != null) {
- ISDKTarget target = ProjectManager.getInstance().getSDKTarget(rsrc.getProject());
- if (target instanceof IScratchbox1SDKTarget) {
- return true;
- }
- }
- }
- }
- } catch (CoreException e) {
- // marker bugs
- } catch (MicaException e) {
- // not a Mica project
- }
- return false;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.ui.IMarkerResolutionGenerator#getResolutions(org.eclipse.core.resources.IMarker)
- */
- public IMarkerResolution[] getResolutions(IMarker marker) {
- return new IMarkerResolution[] {
- new FixupDoctoolsMarkerResolution()
- };
- }
-
-
-
-}
More information about the Esbox-commits
mailing list