Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Schorn2010-03-30 09:18:47 +0000
committerMarkus Schorn2010-03-30 09:18:47 +0000
commit9574386a58d0c70cbe213382fd6c90498fdc1cb3 (patch)
tree545b6a95e0d165abe24107dd227f52e65248fc14
parenta1bcbb5cfaf363705bec6cc135372fa47857e1e2 (diff)
downloadorg.eclipse.cdt-9574386a58d0c70cbe213382fd6c90498fdc1cb3.tar.gz
org.eclipse.cdt-9574386a58d0c70cbe213382fd6c90498fdc1cb3.tar.xz
org.eclipse.cdt-9574386a58d0c70cbe213382fd6c90498fdc1cb3.zip
Bug 307496: Add make target offered too often.
-rw-r--r--build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/AddBuildTargetAction.java37
1 files changed, 21 insertions, 16 deletions
diff --git a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/AddBuildTargetAction.java b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/AddBuildTargetAction.java
index 1784b7c4e89..a8ad743b09e 100644
--- a/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/AddBuildTargetAction.java
+++ b/build/org.eclipse.cdt.make.ui/src/org/eclipse/cdt/make/internal/ui/editor/AddBuildTargetAction.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2007 QNX Software Systems and others.
+ * Copyright (c) 2000, 2010 QNX Software Systems and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -7,6 +7,7 @@
*
* Contributors:
* QNX Software Systems - Initial API and implementation
+ * Markus Schorn (Wind River Systems)
*******************************************************************************/
package org.eclipse.cdt.make.internal.ui.editor;
@@ -48,6 +49,7 @@ public class AddBuildTargetAction extends Action {
*
* @see org.eclipse.jface.action.IAction#run()
*/
+ @Override
public void run() {
IMakeTargetManager manager = MakeCorePlugin.getDefault().getTargetManager();
IFile file = getFile();
@@ -56,8 +58,8 @@ public class AddBuildTargetAction extends Action {
if (file != null && rules.length > 0 && shell != null) {
StringBuffer sbBuildName = new StringBuffer();
StringBuffer sbMakefileTarget = new StringBuffer();
- for (int i = 0; i < rules.length; i++) {
- String name = rules[i].getTarget().toString().trim();
+ for (ITargetRule rule : rules) {
+ String name = rule.getTarget().toString().trim();
if (sbBuildName.length() == 0) {
sbBuildName.append(name);
} else {
@@ -113,13 +115,16 @@ public class AddBuildTargetAction extends Action {
public boolean canActionBeAdded(ISelection selection) {
ITargetRule[] rules = getTargetRules(selection);
- for (int i = 0; i < rules.length; i++) {
- IFile file = getFile();
- if (file == null)
- return false;
- if (!MakeCorePlugin.getDefault().getTargetManager().hasTargetBuilder(file.getProject()))
- return false;
- }
+ if (rules.length == 0)
+ return false;
+
+ IFile file = getFile();
+ if (file == null)
+ return false;
+
+ if (!MakeCorePlugin.getDefault().getTargetManager().hasTargetBuilder(file.getProject()))
+ return false;
+
return true;
}
@@ -133,16 +138,16 @@ public class AddBuildTargetAction extends Action {
private ITargetRule[] getTargetRules(ISelection sel) {
if (!sel.isEmpty() && sel instanceof IStructuredSelection) {
- List list = ((IStructuredSelection)sel).toList();
+ List<?> list = ((IStructuredSelection)sel).toList();
if (list.size() > 0) {
- List targets = new ArrayList(list.size());
+ List<ITargetRule> targets = new ArrayList<ITargetRule>(list.size());
Object[] elements = list.toArray();
- for (int i = 0; i < elements.length; i++) {
- if (elements[i] instanceof ITargetRule) {
- targets.add(elements[i]);
+ for (Object element : elements) {
+ if (element instanceof ITargetRule) {
+ targets.add((ITargetRule) element);
}
}
- return (ITargetRule[])targets.toArray(EMPTY_TARGET_RULES);
+ return targets.toArray(EMPTY_TARGET_RULES);
}
}
return EMPTY_TARGET_RULES;

Back to the top