Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/TargetBuild.java')
-rw-r--r--build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/TargetBuild.java114
1 files changed, 0 insertions, 114 deletions
diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/TargetBuild.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/TargetBuild.java
deleted file mode 100644
index 4a1a0ff1f52..00000000000
--- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/ui/TargetBuild.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * QNX Software Systems - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.cdt.make.ui;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.cdt.make.core.IMakeTarget;
-import org.eclipse.cdt.make.internal.ui.MakeUIPlugin;
-import org.eclipse.cdt.make.internal.ui.preferences.MakeTargetsPreferencePage;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.SubProgressMonitor;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorReference;
-import org.eclipse.ui.IFileEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.BuildAction;
-import org.eclipse.ui.progress.IProgressService;
-
-public class TargetBuild {
-
- /**
- * Causes all editors to save any modified resources depending on the user's preference.
- */
- static void saveAllResources(IMakeTarget[] targets) {
-
- if (!BuildAction.isSaveAllSet())
- return;
-
- List projects = new ArrayList();
- for (int i = 0; i < targets.length; ++i) {
- IMakeTarget target = targets[i];
- projects.add(target.getContainer().getProject());
- }
-
- IWorkbenchWindow[] windows = PlatformUI.getWorkbench().getWorkbenchWindows();
- for (int i = 0; i < windows.length; i++) {
- IWorkbenchPage[] pages = windows[i].getPages();
- for (int j = 0; j < pages.length; j++) {
- IWorkbenchPage page = pages[j];
- IEditorReference[] editorReferences = page.getEditorReferences();
- for (int k = 0; k < editorReferences.length; k++) {
- IEditorPart editor = editorReferences[k].getEditor(false);
- if (editor != null && editor.isDirty()) {
- IEditorInput input = editor.getEditorInput();
- if (input instanceof IFileEditorInput) {
- IFile inputFile = ((IFileEditorInput) input).getFile();
- if (projects.contains(inputFile.getProject())) {
- page.saveEditor(editor, false);
- }
- }
- }
- }
- }
- }
- }
-
- static private void runWithProgressDialog(Shell shell, Job job) {
- IProgressService service = PlatformUI.getWorkbench().getProgressService();
- service.showInDialog(shell,job);
- }
-
- static public void buildTargets(Shell shell, final IMakeTarget[] targets) {
- saveAllResources(targets);
- Job targetJob = new Job(MakeUIPlugin.getResourceString("TargetBuild.backgroundTask.name")) { //$NON-NLS-1$
- protected IStatus run(IProgressMonitor monitor) {
- monitor.beginTask(MakeUIPlugin.getResourceString("TargetBuild.monitor.beginTask"), targets.length); //$NON-NLS-1$
- try {
- for (int i = 0; i < targets.length; i++) {
- final IMakeTarget target = targets[i];
- IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-
- public void run(IProgressMonitor monitor) throws CoreException {
- target.build(new SubProgressMonitor(monitor, 1));
- }
- };
- MakeUIPlugin.getWorkspace().run(runnable, monitor);
- }
- } catch (CoreException e) {
- return e.getStatus();
- } catch (OperationCanceledException e) {
- } finally {
- monitor.done();
- }
- return Status.OK_STATUS;
- }
- };
- targetJob.schedule();
-
- if (!MakeTargetsPreferencePage.isBuildTargetInBackground()) {
- runWithProgressDialog(shell, targetJob);
- }
- }
-}

Back to the top