mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-07 17:56:01 +02:00
update
core - refactor cleanup ui - new work on make action contributions and targets
This commit is contained in:
parent
0f45720f3d
commit
58dffc1540
27 changed files with 342 additions and 329 deletions
|
@ -61,14 +61,4 @@
|
||||||
class="org.eclipse.cdt.make.internal.core.MakeProject">
|
class="org.eclipse.cdt.make.internal.core.MakeProject">
|
||||||
</cproject>
|
</cproject>
|
||||||
</extension>
|
</extension>
|
||||||
<!-- Not really used but could be in the future -->
|
|
||||||
<extension
|
|
||||||
id="makeBuilder"
|
|
||||||
name="%makebuildmodel.name"
|
|
||||||
point="org.eclipse.cdt.core.CBuildModel">
|
|
||||||
<run
|
|
||||||
class="org.eclipse.cdt.make.internal.core.MakeBuilder">
|
|
||||||
</run>
|
|
||||||
</extension>
|
|
||||||
|
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
|
@ -41,9 +41,9 @@ import org.eclipse.core.runtime.SubProgressMonitor;
|
||||||
|
|
||||||
public class MakeBuilder extends ACBuilder {
|
public class MakeBuilder extends ACBuilder {
|
||||||
|
|
||||||
private static final String BUILD_ERROR = "MakeBuilder.buildError";
|
private static final String BUILD_ERROR = "MakeBuilder.buildError"; //$NON-NLS-1$
|
||||||
|
|
||||||
public final static String BUILDER_ID = MakeCorePlugin.getUniqueIdentifier() + ".makeBuilder";
|
public final static String BUILDER_ID = MakeCorePlugin.getUniqueIdentifier() + ".makeBuilder"; //$NON-NLS-1$
|
||||||
|
|
||||||
public MakeBuilder() {
|
public MakeBuilder() {
|
||||||
}
|
}
|
||||||
|
@ -68,7 +68,7 @@ public class MakeBuilder extends ACBuilder {
|
||||||
*/
|
*/
|
||||||
protected IProject[] build(int kind, Map args, IProgressMonitor monitor) throws CoreException {
|
protected IProject[] build(int kind, Map args, IProgressMonitor monitor) throws CoreException {
|
||||||
boolean bPerformBuild = true;
|
boolean bPerformBuild = true;
|
||||||
IMakeBuilderInfo info = BuildInfoFactory.create(args, MakeBuilder.BUILDER_ID);
|
IMakeBuilderInfo info = MakeCorePlugin.create(args, MakeBuilder.BUILDER_ID);
|
||||||
if (!shouldBuild(kind, info)) {
|
if (!shouldBuild(kind, info)) {
|
||||||
return new IProject[0];
|
return new IProject[0];
|
||||||
}
|
}
|
||||||
|
@ -100,7 +100,7 @@ public class MakeBuilder extends ACBuilder {
|
||||||
if (monitor == null) {
|
if (monitor == null) {
|
||||||
monitor = new NullProgressMonitor();
|
monitor = new NullProgressMonitor();
|
||||||
}
|
}
|
||||||
monitor.beginTask("Invoking the C Builder: " + currProject.getName(), IProgressMonitor.UNKNOWN);
|
monitor.beginTask("Invoking Make Builder: " + currProject.getName(), IProgressMonitor.UNKNOWN);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
IPath buildCommand = info.getBuildCommand();
|
IPath buildCommand = info.getBuildCommand();
|
||||||
|
@ -115,7 +115,7 @@ public class MakeBuilder extends ACBuilder {
|
||||||
|
|
||||||
IPath workingDirectory = info.getBuildLocation();
|
IPath workingDirectory = info.getBuildLocation();
|
||||||
String[] targets = getTargets(kind, info);
|
String[] targets = getTargets(kind, info);
|
||||||
if (targets.length != 0 && targets[targets.length - 1].equals("clean"))
|
if (targets.length != 0 && targets[targets.length - 1].equals("clean")) //$NON-NLS-1$
|
||||||
isClean = true;
|
isClean = true;
|
||||||
// Before launching give visual cues via the monitor
|
// Before launching give visual cues via the monitor
|
||||||
subMonitor = new SubProgressMonitor(monitor, IProgressMonitor.UNKNOWN);
|
subMonitor = new SubProgressMonitor(monitor, IProgressMonitor.UNKNOWN);
|
||||||
|
@ -128,15 +128,15 @@ public class MakeBuilder extends ACBuilder {
|
||||||
|
|
||||||
// Set the environmennt, some scripts may need the CWD var to be set.
|
// Set the environmennt, some scripts may need the CWD var to be set.
|
||||||
Properties props = launcher.getEnvironment();
|
Properties props = launcher.getEnvironment();
|
||||||
props.put("CWD", workingDirectory.toOSString());
|
props.put("CWD", workingDirectory.toOSString()); //$NON-NLS-1$
|
||||||
props.put("PWD", workingDirectory.toOSString());
|
props.put("PWD", workingDirectory.toOSString()); //$NON-NLS-1$
|
||||||
String[] env = null;
|
String[] env = null;
|
||||||
ArrayList envList = new ArrayList();
|
ArrayList envList = new ArrayList();
|
||||||
Enumeration names = props.propertyNames();
|
Enumeration names = props.propertyNames();
|
||||||
if (names != null) {
|
if (names != null) {
|
||||||
while (names.hasMoreElements()) {
|
while (names.hasMoreElements()) {
|
||||||
String key = (String) names.nextElement();
|
String key = (String) names.nextElement();
|
||||||
envList.add(key + "=" + props.getProperty(key));
|
envList.add(key + "=" + props.getProperty(key)); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
env = (String[]) envList.toArray(new String[envList.size()]);
|
env = (String[]) envList.toArray(new String[envList.size()]);
|
||||||
}
|
}
|
||||||
|
@ -149,12 +149,12 @@ public class MakeBuilder extends ACBuilder {
|
||||||
if (info.isDefaultBuildCmd()) {
|
if (info.isDefaultBuildCmd()) {
|
||||||
if ( !info.isStopOnError()) {
|
if ( !info.isStopOnError()) {
|
||||||
buildArguments = new String[targets.length + 1];
|
buildArguments = new String[targets.length + 1];
|
||||||
buildArguments[0] = "-k";
|
buildArguments[0] = "-k"; //$NON-NLS-1$
|
||||||
System.arraycopy(targets, 0, buildArguments, 1, targets.length);
|
System.arraycopy(targets, 0, buildArguments, 1, targets.length);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
String args = info.getBuildArguments();
|
String args = info.getBuildArguments();
|
||||||
if ( args != null && !args.equals("")) {
|
if ( args != null && !args.equals("")) { //$NON-NLS-1$
|
||||||
String[] newArgs = makeArray(args);
|
String[] newArgs = makeArray(args);
|
||||||
buildArguments = new String[targets.length + newArgs.length];
|
buildArguments = new String[targets.length + newArgs.length];
|
||||||
System.arraycopy(newArgs, 0, buildArguments, 0, newArgs.length);
|
System.arraycopy(newArgs, 0, buildArguments, 0, newArgs.length);
|
||||||
|
@ -175,21 +175,18 @@ public class MakeBuilder extends ACBuilder {
|
||||||
isCanceled = monitor.isCanceled();
|
isCanceled = monitor.isCanceled();
|
||||||
monitor.setCanceled(false);
|
monitor.setCanceled(false);
|
||||||
subMonitor = new SubProgressMonitor(monitor, IProgressMonitor.UNKNOWN);
|
subMonitor = new SubProgressMonitor(monitor, IProgressMonitor.UNKNOWN);
|
||||||
subMonitor.subTask("Refresh From Local");
|
subMonitor.subTask("Updating project...");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
currProject.refreshLocal(IResource.DEPTH_INFINITE, subMonitor);
|
currProject.refreshLocal(IResource.DEPTH_INFINITE, subMonitor);
|
||||||
} catch (CoreException e) {
|
} catch (CoreException e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
subMonitor = new SubProgressMonitor(monitor, IProgressMonitor.UNKNOWN);
|
|
||||||
subMonitor.subTask("Parsing");
|
|
||||||
} else {
|
} else {
|
||||||
errMsg = launcher.getErrorMessage();
|
errMsg = launcher.getErrorMessage();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (errMsg != null) {
|
if (errMsg != null) {
|
||||||
StringBuffer buf = new StringBuffer(buildCommand.toString() + " ");
|
StringBuffer buf = new StringBuffer(buildCommand.toString() + " "); //$NON-NLS-1$
|
||||||
for (int i = 0; i < buildArguments.length; i++) {
|
for (int i = 0; i < buildArguments.length; i++) {
|
||||||
buf.append(buildArguments[i]);
|
buf.append(buildArguments[i]);
|
||||||
buf.append(' ');
|
buf.append(' ');
|
||||||
|
@ -197,8 +194,8 @@ public class MakeBuilder extends ACBuilder {
|
||||||
|
|
||||||
String errorDesc = MakeCorePlugin.getFormattedString(BUILD_ERROR, buf.toString());
|
String errorDesc = MakeCorePlugin.getFormattedString(BUILD_ERROR, buf.toString());
|
||||||
buf = new StringBuffer(errorDesc);
|
buf = new StringBuffer(errorDesc);
|
||||||
buf.append(System.getProperty("line.separator", "\n"));
|
buf.append(System.getProperty("line.separator", "\n")); //$NON-NLS-1$ //$NON-NLS-2$
|
||||||
buf.append("(").append(errMsg).append(")");
|
buf.append("(").append(errMsg).append(")"); //$NON-NLS-1$ //$NON-NLS-2$
|
||||||
cos.write(buf.toString().getBytes());
|
cos.write(buf.toString().getBytes());
|
||||||
cos.flush();
|
cos.flush();
|
||||||
}
|
}
|
||||||
|
@ -239,7 +236,7 @@ public class MakeBuilder extends ACBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected String[] getTargets(int kind, IMakeBuilderInfo info) {
|
protected String[] getTargets(int kind, IMakeBuilderInfo info) {
|
||||||
String targets = "";
|
String targets = ""; //$NON-NLS-1$
|
||||||
switch (kind) {
|
switch (kind) {
|
||||||
case IncrementalProjectBuilder.AUTO_BUILD :
|
case IncrementalProjectBuilder.AUTO_BUILD :
|
||||||
targets = info.getAutoBuildTarget();
|
targets = info.getAutoBuildTarget();
|
||||||
|
|
|
@ -12,20 +12,24 @@ package org.eclipse.cdt.make.core;
|
||||||
***********************************************************************/
|
***********************************************************************/
|
||||||
|
|
||||||
import java.text.MessageFormat;
|
import java.text.MessageFormat;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.MissingResourceException;
|
import java.util.MissingResourceException;
|
||||||
import java.util.ResourceBundle;
|
import java.util.ResourceBundle;
|
||||||
|
|
||||||
import org.eclipse.cdt.core.CCorePlugin;
|
import org.eclipse.cdt.core.CCorePlugin;
|
||||||
|
import org.eclipse.cdt.make.internal.core.BuildInfoFactory;
|
||||||
|
import org.eclipse.core.resources.IProject;
|
||||||
import org.eclipse.core.runtime.CoreException;
|
import org.eclipse.core.runtime.CoreException;
|
||||||
import org.eclipse.core.runtime.IPluginDescriptor;
|
import org.eclipse.core.runtime.IPluginDescriptor;
|
||||||
import org.eclipse.core.runtime.Path;
|
import org.eclipse.core.runtime.Path;
|
||||||
import org.eclipse.core.runtime.Plugin;
|
import org.eclipse.core.runtime.Plugin;
|
||||||
|
import org.eclipse.core.runtime.Preferences;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The main plugin class to be used in the desktop.
|
* The main plugin class to be used in the desktop.
|
||||||
*/
|
*/
|
||||||
public class MakeCorePlugin extends Plugin {
|
public class MakeCorePlugin extends Plugin {
|
||||||
public static final String OLD_BUILDER_ID = "org.eclipse.cdt.core.cbuilder";
|
public static final String OLD_BUILDER_ID = "org.eclipse.cdt.core.cbuilder"; //$NON-NLS-1$
|
||||||
//The shared instance.
|
//The shared instance.
|
||||||
private static MakeCorePlugin plugin;
|
private static MakeCorePlugin plugin;
|
||||||
//Resource bundle.
|
//Resource bundle.
|
||||||
|
@ -38,7 +42,7 @@ public class MakeCorePlugin extends Plugin {
|
||||||
super(descriptor);
|
super(descriptor);
|
||||||
plugin = this;
|
plugin = this;
|
||||||
try {
|
try {
|
||||||
resourceBundle = ResourceBundle.getBundle("org.eclipse.cdt.make.core.PluginResources");
|
resourceBundle = ResourceBundle.getBundle("org.eclipse.cdt.make.core.PluginResources"); //$NON-NLS-1$
|
||||||
} catch (MissingResourceException x) {
|
} catch (MissingResourceException x) {
|
||||||
resourceBundle = null;
|
resourceBundle = null;
|
||||||
}
|
}
|
||||||
|
@ -86,20 +90,32 @@ public class MakeCorePlugin extends Plugin {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void initializeDefaultPluginPreferences() {
|
protected void initializeDefaultPluginPreferences() {
|
||||||
IMakeBuilderInfo info = BuildInfoFactory.create(getPluginPreferences(), MakeBuilder.BUILDER_ID, true);
|
IMakeBuilderInfo info = create(getPluginPreferences(), MakeBuilder.BUILDER_ID, true);
|
||||||
try {
|
try {
|
||||||
info.setBuildCommand(new Path("make"));
|
info.setBuildCommand(new Path("make")); //$NON-NLS-1$
|
||||||
info.setBuildLocation(new Path(""));
|
info.setBuildLocation(new Path("")); //$NON-NLS-1$
|
||||||
info.setStopOnError(false);
|
info.setStopOnError(false);
|
||||||
info.setUseDefaultBuildCmd(true);
|
info.setUseDefaultBuildCmd(true);
|
||||||
info.setAutoBuildEnable(false);
|
info.setAutoBuildEnable(false);
|
||||||
info.setAutoBuildTarget("all");
|
info.setAutoBuildTarget("all"); //$NON-NLS-1$
|
||||||
info.setIncrementalBuildEnable(true);
|
info.setIncrementalBuildEnable(true);
|
||||||
info.setIncrementalBuildTarget("all");
|
info.setIncrementalBuildTarget("all"); //$NON-NLS-1$
|
||||||
info.setFullBuildEnable(true);
|
info.setFullBuildEnable(true);
|
||||||
info.setFullBuildTarget("clean all");
|
info.setFullBuildTarget("clean all"); //$NON-NLS-1$
|
||||||
} catch (CoreException e) {
|
} catch (CoreException e) {
|
||||||
}
|
}
|
||||||
getPluginPreferences().setDefault(CCorePlugin.PREF_BINARY_PARSER, CCorePlugin.PLUGIN_ID + ".ELF");
|
getPluginPreferences().setDefault(CCorePlugin.PREF_BINARY_PARSER, CCorePlugin.PLUGIN_ID + ".ELF"); //$NON-NLS-1$
|
||||||
|
}
|
||||||
|
|
||||||
|
public static IMakeBuilderInfo create(Preferences prefs, String builderID, boolean useDefaults) {
|
||||||
|
return BuildInfoFactory.create(prefs, builderID, useDefaults);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static IMakeBuilderInfo create(IProject project, String builderID) throws CoreException {
|
||||||
|
return BuildInfoFactory.create(project, builderID);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static IMakeBuilderInfo create(Map args, String builderID) {
|
||||||
|
return BuildInfoFactory.create(args, builderID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,7 +21,7 @@ import org.eclipse.core.runtime.SubProgressMonitor;
|
||||||
|
|
||||||
public class MakeProjectNature implements IProjectNature {
|
public class MakeProjectNature implements IProjectNature {
|
||||||
|
|
||||||
public final static String NATURE_ID = MakeCorePlugin.getUniqueIdentifier() + ".makeNature";
|
public final static String NATURE_ID = MakeCorePlugin.getUniqueIdentifier() + ".makeNature"; //$NON-NLS-1$
|
||||||
private IProject fProject;
|
private IProject fProject;
|
||||||
|
|
||||||
public static void addNature(IProject project, SubProgressMonitor monitor) throws CoreException {
|
public static void addNature(IProject project, SubProgressMonitor monitor) throws CoreException {
|
||||||
|
@ -101,8 +101,8 @@ public class MakeProjectNature implements IProjectNature {
|
||||||
*/
|
*/
|
||||||
public void configure() throws CoreException {
|
public void configure() throws CoreException {
|
||||||
addBuildSpec();
|
addBuildSpec();
|
||||||
IMakeBuilderInfo info = BuildInfoFactory.create(MakeCorePlugin.getDefault().getPluginPreferences(), MakeBuilder.BUILDER_ID, false);
|
IMakeBuilderInfo info = MakeCorePlugin.create(MakeCorePlugin.getDefault().getPluginPreferences(), MakeBuilder.BUILDER_ID, false);
|
||||||
IMakeBuilderInfo projectInfo = BuildInfoFactory.create(getProject(), MakeBuilder.BUILDER_ID);
|
IMakeBuilderInfo projectInfo = MakeCorePlugin.create(getProject(), MakeBuilder.BUILDER_ID);
|
||||||
projectInfo.setBuildLocation(info.getBuildLocation());
|
projectInfo.setBuildLocation(info.getBuildLocation());
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -72,7 +72,7 @@ public class MakeScannerInfo implements IScannerInfo {
|
||||||
}
|
}
|
||||||
String key = new String();
|
String key = new String();
|
||||||
String value = new String();
|
String value = new String();
|
||||||
int index = symbol.indexOf("=");
|
int index = symbol.indexOf("="); //$NON-NLS-1$
|
||||||
if (index != -1) {
|
if (index != -1) {
|
||||||
key = symbol.substring(0, index).trim();
|
key = symbol.substring(0, index).trim();
|
||||||
value = symbol.substring(index + 1).trim();
|
value = symbol.substring(index + 1).trim();
|
||||||
|
|
|
@ -36,16 +36,16 @@ import org.w3c.dom.Node;
|
||||||
public class MakeScannerProvider extends AbstractCExtension implements IScannerInfoProvider {
|
public class MakeScannerProvider extends AbstractCExtension implements IScannerInfoProvider {
|
||||||
|
|
||||||
// This is the id of the IScannerInfoProvider extension point entry
|
// This is the id of the IScannerInfoProvider extension point entry
|
||||||
public static final String INTERFACE_IDENTITY = MakeCorePlugin.getUniqueIdentifier() + ".MakeScannerProvider";
|
public static final String INTERFACE_IDENTITY = MakeCorePlugin.getUniqueIdentifier() + ".MakeScannerProvider"; //$NON-NLS-1$
|
||||||
|
|
||||||
// Name we will use to store build property with the project
|
// Name we will use to store build property with the project
|
||||||
private static final QualifiedName scannerInfoProperty = new QualifiedName(MakeCorePlugin.getUniqueIdentifier(), "makeBuildInfo");
|
private static final QualifiedName scannerInfoProperty = new QualifiedName(MakeCorePlugin.getUniqueIdentifier(), "makeBuildInfo"); //$NON-NLS-1$
|
||||||
private static final String CDESCRIPTOR_ID = MakeCorePlugin.getUniqueIdentifier() + ".makeScannerInfo";
|
private static final String CDESCRIPTOR_ID = MakeCorePlugin.getUniqueIdentifier() + ".makeScannerInfo"; //$NON-NLS-1$
|
||||||
|
|
||||||
public static final String INCLUDE_PATH = "includePath";
|
public static final String INCLUDE_PATH = "includePath"; //$NON-NLS-1$
|
||||||
public static final String PATH = "path";
|
public static final String PATH = "path"; //$NON-NLS-1$
|
||||||
public static final String DEFINED_SYMBOL = "definedSymbol";
|
public static final String DEFINED_SYMBOL = "definedSymbol"; //$NON-NLS-1$
|
||||||
public static final String SYMBOL = "symbol";
|
public static final String SYMBOL = "symbol"; //$NON-NLS-1$
|
||||||
|
|
||||||
// Listeners interested in build model changes
|
// Listeners interested in build model changes
|
||||||
private static Map listeners;
|
private static Map listeners;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package org.eclipse.cdt.make.core;
|
package org.eclipse.cdt.make.internal.core;
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
* Copyright (c) 2002,2003 Rational Software Corporation and others.
|
* Copyright (c) 2002,2003 Rational Software Corporation and others.
|
||||||
* All rights reserved. This program and the accompanying materials
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
@ -13,6 +13,9 @@ package org.eclipse.cdt.make.core;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.make.core.IMakeBuilderInfo;
|
||||||
|
import org.eclipse.cdt.make.core.MakeCorePlugin;
|
||||||
|
import org.eclipse.cdt.make.core.MakeProjectNature;
|
||||||
import org.eclipse.core.resources.ICommand;
|
import org.eclipse.core.resources.ICommand;
|
||||||
import org.eclipse.core.resources.IProject;
|
import org.eclipse.core.resources.IProject;
|
||||||
import org.eclipse.core.resources.ResourcesPlugin;
|
import org.eclipse.core.resources.ResourcesPlugin;
|
||||||
|
@ -30,17 +33,17 @@ public class BuildInfoFactory {
|
||||||
|
|
||||||
private static final String PREFIX = MakeCorePlugin.getUniqueIdentifier();
|
private static final String PREFIX = MakeCorePlugin.getUniqueIdentifier();
|
||||||
|
|
||||||
private static final String BUILD_COMMAND = PREFIX + ".buildCommand";
|
static final String BUILD_COMMAND = PREFIX + ".buildCommand"; //$NON-NLS-1$
|
||||||
private static final String BUILD_LOCATION = PREFIX + ".buildLocation";
|
static final String BUILD_LOCATION = PREFIX + ".buildLocation"; //$NON-NLS-1$
|
||||||
private static final String STOP_ON_ERROR = PREFIX + ".stopOnError";
|
static final String STOP_ON_ERROR = PREFIX + ".stopOnError"; //$NON-NLS-1$
|
||||||
private static final String USE_DEFAULT_BUILD_CMD = PREFIX + ".useDefaultBuildCmd";
|
static final String USE_DEFAULT_BUILD_CMD = PREFIX + ".useDefaultBuildCmd"; //$NON-NLS-1$
|
||||||
private static final String BUILD_TARGET_AUTO = PREFIX + ".autoBuildTarget";
|
static final String BUILD_TARGET_AUTO = PREFIX + ".autoBuildTarget"; //$NON-NLS-1$
|
||||||
private static final String BUILD_TARGET_INCREMENTAL = PREFIX + ".incrementalBuildTarget";
|
static final String BUILD_TARGET_INCREMENTAL = PREFIX + ".incrementalBuildTarget"; //$NON-NLS-1$
|
||||||
private static final String BUILD_TARGET_FULL = PREFIX + ".fullBuildTarget";
|
static final String BUILD_TARGET_FULL = PREFIX + ".fullBuildTarget"; //$NON-NLS-1$
|
||||||
private static final String BUILD_FULL_ENABLED = PREFIX + ".enableFullBuild";
|
static final String BUILD_FULL_ENABLED = PREFIX + ".enableFullBuild"; //$NON-NLS-1$
|
||||||
private static final String BUILD_INCREMENTAL_ENABLED = PREFIX + ".enabledIncrementalBuild";
|
static final String BUILD_INCREMENTAL_ENABLED = PREFIX + ".enabledIncrementalBuild"; //$NON-NLS-1$
|
||||||
private static final String BUILD_AUTO_ENABLED = PREFIX + ".enableAutoBuild";
|
static final String BUILD_AUTO_ENABLED = PREFIX + ".enableAutoBuild"; //$NON-NLS-1$
|
||||||
private static final String BUILD_ARGUMENTS = PREFIX + ".buildArguments";
|
static final String BUILD_ARGUMENTS = PREFIX + ".buildArguments"; //$NON-NLS-1$
|
||||||
|
|
||||||
private abstract static class Store implements IMakeBuilderInfo {
|
private abstract static class Store implements IMakeBuilderInfo {
|
||||||
|
|
||||||
|
@ -61,9 +64,9 @@ public class BuildInfoFactory {
|
||||||
|
|
||||||
public IPath getBuildCommand() {
|
public IPath getBuildCommand() {
|
||||||
if (isDefaultBuildCmd()) {
|
if (isDefaultBuildCmd()) {
|
||||||
String command = getBuildParameter("defaultCommand");
|
String command = getBuildParameter("defaultCommand"); //$NON-NLS-1$
|
||||||
if (command == null) {
|
if (command == null) {
|
||||||
return new Path("make");
|
return new Path("make"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
return new Path(command);
|
return new Path(command);
|
||||||
}
|
}
|
||||||
|
@ -82,11 +85,11 @@ public class BuildInfoFactory {
|
||||||
if (configs.length == 0)
|
if (configs.length == 0)
|
||||||
return null;
|
return null;
|
||||||
//The nature exists, or this builder doesn't specify a nature
|
//The nature exists, or this builder doesn't specify a nature
|
||||||
IConfigurationElement[] runElement = configs[0].getChildren("run");
|
IConfigurationElement[] runElement = configs[0].getChildren("run"); //$NON-NLS-1$
|
||||||
IConfigurationElement[] paramElement = runElement[0].getChildren("parameter");
|
IConfigurationElement[] paramElement = runElement[0].getChildren("parameter"); //$NON-NLS-1$
|
||||||
for (int i = 0; i < paramElement.length; i++) {
|
for (int i = 0; i < paramElement.length; i++) {
|
||||||
if (paramElement[i].getAttribute("name").equals(name)) {
|
if (paramElement[i].getAttribute("name").equals(name)) { //$NON-NLS-1$
|
||||||
return paramElement[i].getAttribute("value");
|
return paramElement[i].getAttribute("value"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
@ -100,7 +103,7 @@ public class BuildInfoFactory {
|
||||||
|
|
||||||
public IPath getBuildLocation() {
|
public IPath getBuildLocation() {
|
||||||
String location = getString(BUILD_LOCATION);
|
String location = getString(BUILD_LOCATION);
|
||||||
return new Path(location == null ? "" : location);
|
return new Path(location == null ? "" : location); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setStopOnError(boolean enabled) throws CoreException {
|
public void setStopOnError(boolean enabled) throws CoreException {
|
||||||
|
@ -233,7 +236,7 @@ public class BuildInfoFactory {
|
||||||
|
|
||||||
public String getString(String name) {
|
public String getString(String name) {
|
||||||
String value = (String)args.get(name);
|
String value = (String)args.get(name);
|
||||||
return value == null ? "" : value;
|
return value == null ? "" : value; //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getBuilderID() {
|
public String getBuilderID() {
|
|
@ -1,58 +0,0 @@
|
||||||
/**********************************************************************
|
|
||||||
* Copyright (c) 2002,2003 Rational Software Corporation 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.internal.core;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.core.AbstractCExtension;
|
|
||||||
import org.eclipse.cdt.make.core.MakeCorePlugin;
|
|
||||||
import org.eclipse.core.runtime.IPath;
|
|
||||||
|
|
||||||
public class MakeBuilder extends AbstractCExtension /*implements ICBuilder */ {
|
|
||||||
|
|
||||||
public IPath[] getIncludePaths() {
|
|
||||||
return new IPath[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setIncludePaths(IPath[] incPaths) {
|
|
||||||
}
|
|
||||||
|
|
||||||
public IPath[] getLibraryPaths() {
|
|
||||||
return new IPath[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setLibraryPaths(IPath[] libPaths) {
|
|
||||||
}
|
|
||||||
|
|
||||||
public String[] getLibraries() {
|
|
||||||
return new String[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setLibraries(String[] libs) {
|
|
||||||
}
|
|
||||||
|
|
||||||
// public IOptimization getOptimization() {
|
|
||||||
// return null;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// public IProject[] build(CIncrementalBuilder cbuilder) {
|
|
||||||
// ICExtensionReference ref = getExtensionReference();
|
|
||||||
// System.out.println("MakeBuilder!!!!\n Command is:" + ref.getExtensionData("command"));
|
|
||||||
// return null;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// public void setOptimization(IOptimization o) {
|
|
||||||
// }
|
|
||||||
|
|
||||||
public String getID() {
|
|
||||||
return MakeCorePlugin.getUniqueIdentifier() + ".makeBuilder";
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
|
@ -12,32 +12,22 @@ package org.eclipse.cdt.make.internal.core;
|
||||||
|
|
||||||
import org.eclipse.cdt.core.CCorePlugin;
|
import org.eclipse.cdt.core.CCorePlugin;
|
||||||
import org.eclipse.cdt.core.ICDescriptor;
|
import org.eclipse.cdt.core.ICDescriptor;
|
||||||
import org.eclipse.cdt.core.ICExtensionReference;
|
|
||||||
import org.eclipse.cdt.core.ICOwner;
|
import org.eclipse.cdt.core.ICOwner;
|
||||||
import org.eclipse.cdt.make.core.MakeScannerProvider;
|
import org.eclipse.cdt.make.core.MakeScannerProvider;
|
||||||
import org.eclipse.cdt.make.core.MakeCorePlugin;
|
|
||||||
import org.eclipse.core.runtime.CoreException;
|
import org.eclipse.core.runtime.CoreException;
|
||||||
|
|
||||||
public class MakeProject implements ICOwner {
|
public class MakeProject implements ICOwner {
|
||||||
|
|
||||||
public void configure(ICDescriptor cproject) throws CoreException {
|
public void configure(ICDescriptor cproject) throws CoreException {
|
||||||
cproject.remove(CCorePlugin.BUILDER_MODEL_ID);
|
|
||||||
ICExtensionReference ext = cproject.create(CCorePlugin.BUILDER_MODEL_ID, MakeCorePlugin.getUniqueIdentifier() + ".makeBuilder");
|
|
||||||
ext.setExtensionData("command", "make");
|
|
||||||
cproject.remove(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID);
|
|
||||||
cproject.create(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID, MakeScannerProvider.INTERFACE_IDENTITY);
|
cproject.create(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID, MakeScannerProvider.INTERFACE_IDENTITY);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void update(ICDescriptor cproject, String extensionID) throws CoreException {
|
public void update(ICDescriptor cproject, String extensionID) throws CoreException {
|
||||||
if ( extensionID.equals(CCorePlugin.BUILDER_MODEL_ID ) ) {
|
|
||||||
ICExtensionReference ext = cproject.create(CCorePlugin.BUILDER_MODEL_ID, MakeCorePlugin.getUniqueIdentifier() + ".makeBuilder");
|
|
||||||
ext.setExtensionData("command", "make");
|
|
||||||
}
|
|
||||||
if ( extensionID.equals(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID)) {
|
if ( extensionID.equals(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID)) {
|
||||||
cproject.create(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID, MakeScannerProvider.INTERFACE_IDENTITY);
|
cproject.create(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID, MakeScannerProvider.INTERFACE_IDENTITY);
|
||||||
}
|
}
|
||||||
if ( extensionID.equals(CCorePlugin.BINARY_PARSER_UNIQ_ID)) {
|
if ( extensionID.equals(CCorePlugin.BINARY_PARSER_UNIQ_ID)) {
|
||||||
cproject.create(CCorePlugin.BINARY_PARSER_UNIQ_ID, CCorePlugin.PLUGIN_ID + ".Elf");
|
cproject.create(CCorePlugin.BINARY_PARSER_UNIQ_ID, CCorePlugin.PLUGIN_ID + ".Elf"); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -91,7 +91,7 @@
|
||||||
</menu>
|
</menu>
|
||||||
<action
|
<action
|
||||||
label="%ActionMakeBuildCreate.label"
|
label="%ActionMakeBuildCreate.label"
|
||||||
class="org.eclipse.cdt.make.ui.actions.CreateBuildAction"
|
class="org.eclipse.cdt.make.internal.ui.actions.MakeCreateBuildAction"
|
||||||
menubarPath="org.eclipse.cdt.make.ui.menu/group1"
|
menubarPath="org.eclipse.cdt.make.ui.menu/group1"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.make.ui.createBuildAction">
|
id="org.eclipse.cdt.make.ui.createBuildAction">
|
||||||
|
@ -99,26 +99,26 @@
|
||||||
<action
|
<action
|
||||||
label="%ActionMakeAll.label"
|
label="%ActionMakeAll.label"
|
||||||
icon="icons/ctool16/make.gif"
|
icon="icons/ctool16/make.gif"
|
||||||
class="org.eclipse.cdt.make.ui.actions.BuildAction"
|
class="org.eclipse.cdt.make.internal.ui.actions.MakeBuilderAction"
|
||||||
menubarPath="org.eclipse.cdt.make.ui.menu/group2"
|
menubarPath="org.eclipse.cdt.make.ui.menu/group2"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.make.ui.makeAction.all">
|
id="org.eclipse.cdt.make.ui.makeBuildAction.all">
|
||||||
</action>
|
</action>
|
||||||
<action
|
<action
|
||||||
label="%ActionMakeClean.label"
|
label="%ActionMakeClean.label"
|
||||||
icon="icons/ctool16/make.gif"
|
icon="icons/ctool16/make.gif"
|
||||||
class="org.eclipse.cdt.make.ui.actions.BuildAction"
|
class="org.eclipse.cdt.make.internal.ui.actions.MakeBuilderAction"
|
||||||
menubarPath="org.eclipse.cdt.make.ui.menu/group2"
|
menubarPath="org.eclipse.cdt.make.ui.menu/group2"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.make.ui.makeAction.clean">
|
id="org.eclipse.cdt.make.ui.makeBuildAction.clean">
|
||||||
</action>
|
</action>
|
||||||
<action
|
<action
|
||||||
label="%ActionMakeRebuild.label"
|
label="%ActionMakeRebuild.label"
|
||||||
icon="icons/ctool16/make.gif"
|
icon="icons/ctool16/make.gif"
|
||||||
class="org.eclipse.cdt.make.ui.actions.BuildAction"
|
class="org.eclipse.cdt.make.internal.ui.actions.MakeBuilderAction"
|
||||||
menubarPath="org.eclipse.cdt.make.ui.menu/group2"
|
menubarPath="org.eclipse.cdt.make.ui.menu/group2"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.make.ui.makeAction.rebuild">
|
id="org.eclipse.cdt.make.ui.makeBuildAction.clean.all">
|
||||||
</action>
|
</action>
|
||||||
<filter
|
<filter
|
||||||
name="nature"
|
name="nature"
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
/*
|
||||||
|
* Created on 18-Aug-2003
|
||||||
|
*
|
||||||
|
* Copyright (c) 2002,2003 QNX Software Systems Ltd.
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* QNX Software Systems - Initial API and implementation
|
||||||
|
***********************************************************************/
|
||||||
|
package org.eclipse.cdt.make.internal.ui.actions;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.make.core.MakeBuilder;
|
||||||
|
import org.eclipse.cdt.make.ui.actions.MakeBuildAction;
|
||||||
|
|
||||||
|
public class MakeBuilderAction extends MakeBuildAction {
|
||||||
|
|
||||||
|
protected String getBuilderID() {
|
||||||
|
return MakeBuilder.BUILDER_ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,20 @@
|
||||||
|
/*
|
||||||
|
* Created on 18-Aug-2003
|
||||||
|
*
|
||||||
|
* Copyright (c) 2002,2003 QNX Software Systems Ltd.
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* QNX Software Systems - Initial API and implementation
|
||||||
|
***********************************************************************/
|
||||||
|
package org.eclipse.cdt.make.internal.ui.actions;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.make.core.MakeBuilder;
|
||||||
|
import org.eclipse.cdt.make.ui.actions.CreateBuildAction;
|
||||||
|
|
||||||
|
public class MakeCreateBuildAction extends CreateBuildAction {
|
||||||
|
|
||||||
|
protected String getBuilderID() {
|
||||||
|
return MakeBuilder.BUILDER_ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -29,9 +29,9 @@ import org.eclipse.ui.dialogs.PropertyPage;
|
||||||
|
|
||||||
public class MakePropertyPage extends PropertyPage implements ICOptionContainer {
|
public class MakePropertyPage extends PropertyPage implements ICOptionContainer {
|
||||||
|
|
||||||
private MakeProjectOptionBlock fOptionBlock;
|
MakeProjectOptionBlock fOptionBlock;
|
||||||
|
|
||||||
private static final String MSG_CLOSEDPROJECT = "MakeProjectPropertyPage.closedproject";
|
private static final String MSG_CLOSEDPROJECT = "MakeProjectPropertyPage.closedproject"; //$NON-NLS-1$
|
||||||
|
|
||||||
public MakePropertyPage() {
|
public MakePropertyPage() {
|
||||||
super();
|
super();
|
||||||
|
|
|
@ -26,7 +26,7 @@ public abstract class StatusWizardPage extends WizardPage {
|
||||||
public StatusWizardPage(String name, boolean noErrorOnStartup) {
|
public StatusWizardPage(String name, boolean noErrorOnStartup) {
|
||||||
super(name);
|
super(name);
|
||||||
fPageVisible= false;
|
fPageVisible= false;
|
||||||
fCurrStatus= createStatus(IStatus.OK, "");
|
fCurrStatus= createStatus(IStatus.OK, ""); //$NON-NLS-1$
|
||||||
fNoErrorOnStartup= noErrorOnStartup;
|
fNoErrorOnStartup= noErrorOnStartup;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ public abstract class StatusWizardPage extends WizardPage {
|
||||||
// policy: wizards are not allowed to come up with an error message
|
// policy: wizards are not allowed to come up with an error message
|
||||||
if (visible && fNoErrorOnStartup && fCurrStatus.matches(IStatus.ERROR)) {
|
if (visible && fNoErrorOnStartup && fCurrStatus.matches(IStatus.ERROR)) {
|
||||||
// keep the error state, but remove the message
|
// keep the error state, but remove the message
|
||||||
fCurrStatus= createStatus(IStatus.ERROR, "");
|
fCurrStatus= createStatus(IStatus.ERROR, ""); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
updateStatus(fCurrStatus);
|
updateStatus(fCurrStatus);
|
||||||
}
|
}
|
||||||
|
|
|
@ -329,7 +329,7 @@ public class BuildPathInfoBlock extends AbstractCOptionPage {
|
||||||
/*
|
/*
|
||||||
* Enables the buttons on the path control if the right conditions are met
|
* Enables the buttons on the path control if the right conditions are met
|
||||||
*/
|
*/
|
||||||
private void enablePathButtons() {
|
void enablePathButtons() {
|
||||||
// Enable the remove button if there is at least 1 item in the list
|
// Enable the remove button if there is at least 1 item in the list
|
||||||
int items = pathList.getItemCount();
|
int items = pathList.getItemCount();
|
||||||
if (items > 0) {
|
if (items > 0) {
|
||||||
|
@ -345,7 +345,7 @@ public class BuildPathInfoBlock extends AbstractCOptionPage {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void enableSymbolButtons() {
|
void enableSymbolButtons() {
|
||||||
// Enable the remove button if there is at least 1 item in the list
|
// Enable the remove button if there is at least 1 item in the list
|
||||||
int items = symbolList.getItemCount();
|
int items = symbolList.getItemCount();
|
||||||
if (items > 0) {
|
if (items > 0) {
|
||||||
|
@ -424,7 +424,7 @@ public class BuildPathInfoBlock extends AbstractCOptionPage {
|
||||||
protected void handleAddPath() {
|
protected void handleAddPath() {
|
||||||
// Popup an entry dialog
|
// Popup an entry dialog
|
||||||
InputDialog dialog =
|
InputDialog dialog =
|
||||||
new InputDialog(shell, CUIPlugin.getResourceString(PATH_TITLE), CUIPlugin.getResourceString(PATH_LABEL), "", null);
|
new InputDialog(shell, CUIPlugin.getResourceString(PATH_TITLE), CUIPlugin.getResourceString(PATH_LABEL), "", null); //$NON-NLS-1$
|
||||||
String path = null;
|
String path = null;
|
||||||
if (dialog.open() == InputDialog.OK) {
|
if (dialog.open() == InputDialog.OK) {
|
||||||
path = dialog.getValue();
|
path = dialog.getValue();
|
||||||
|
@ -442,7 +442,7 @@ public class BuildPathInfoBlock extends AbstractCOptionPage {
|
||||||
protected void handleAddSymbol() {
|
protected void handleAddSymbol() {
|
||||||
// Popup an entry dialog
|
// Popup an entry dialog
|
||||||
InputDialog dialog =
|
InputDialog dialog =
|
||||||
new InputDialog(shell, CUIPlugin.getResourceString(SYMBOL_TITLE), CUIPlugin.getResourceString(SYMBOL_LABEL), "", null);
|
new InputDialog(shell, CUIPlugin.getResourceString(SYMBOL_TITLE), CUIPlugin.getResourceString(SYMBOL_LABEL), "", null); //$NON-NLS-1$
|
||||||
String symbol = null;
|
String symbol = null;
|
||||||
if (dialog.open() == InputDialog.OK) {
|
if (dialog.open() == InputDialog.OK) {
|
||||||
symbol = dialog.getValue();
|
symbol = dialog.getValue();
|
||||||
|
|
|
@ -0,0 +1,46 @@
|
||||||
|
/*
|
||||||
|
* Created on 18-Aug-2003
|
||||||
|
*
|
||||||
|
* Copyright (c) 2002,2003 QNX Software Systems Ltd.
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* QNX Software Systems - Initial API and implementation
|
||||||
|
***********************************************************************/
|
||||||
|
package org.eclipse.cdt.make.ui.actions;
|
||||||
|
|
||||||
|
import org.eclipse.jface.action.IAction;
|
||||||
|
import org.eclipse.jface.viewers.ISelection;
|
||||||
|
import org.eclipse.swt.widgets.Shell;
|
||||||
|
import org.eclipse.ui.IObjectActionDelegate;
|
||||||
|
import org.eclipse.ui.IWorkbenchPart;
|
||||||
|
import org.eclipse.ui.actions.ActionDelegate;
|
||||||
|
|
||||||
|
public abstract class AbstractMakeBuilderAction extends ActionDelegate implements IObjectActionDelegate {
|
||||||
|
IWorkbenchPart part;
|
||||||
|
ISelection fSelection;
|
||||||
|
|
||||||
|
public AbstractMakeBuilderAction() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @see IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
|
||||||
|
*/
|
||||||
|
public void setActivePart(IAction action, IWorkbenchPart targetPart) {
|
||||||
|
part = targetPart;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @see IActionDelegate#selectionChanged(IAction, ISelection)
|
||||||
|
*/
|
||||||
|
public void selectionChanged(IAction action, ISelection selection) {
|
||||||
|
fSelection = selection;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Shell getShell() {
|
||||||
|
return part.getSite().getShell();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected abstract String getBuilderID();
|
||||||
|
|
||||||
|
}
|
|
@ -8,7 +8,16 @@
|
||||||
***********************************************************************/
|
***********************************************************************/
|
||||||
package org.eclipse.cdt.make.ui.actions;
|
package org.eclipse.cdt.make.ui.actions;
|
||||||
|
|
||||||
public class CreateBuildAction extends MakeAction {
|
import org.eclipse.jface.action.IAction;
|
||||||
|
import org.eclipse.ui.IWorkbenchWindow;
|
||||||
|
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
|
||||||
|
|
||||||
|
public abstract class CreateBuildAction extends AbstractMakeBuilderAction implements IWorkbenchWindowActionDelegate {
|
||||||
|
|
||||||
|
public void init(IWorkbenchWindow window) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public void run(IAction action) {
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,60 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2000, 2003 IBM Corporation 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:
|
|
||||||
* IBM Corporation - initial API and implementation
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.make.ui.actions;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.make.ui.views.MakeTarget;
|
|
||||||
import org.eclipse.core.resources.IProject;
|
|
||||||
import org.eclipse.jface.action.IAction;
|
|
||||||
import org.eclipse.jface.viewers.ISelection;
|
|
||||||
import org.eclipse.jface.viewers.IStructuredSelection;
|
|
||||||
import org.eclipse.ui.IObjectActionDelegate;
|
|
||||||
import org.eclipse.ui.IWorkbenchPart;
|
|
||||||
import org.eclipse.ui.actions.ActionDelegate;
|
|
||||||
|
|
||||||
public class MakeAction extends ActionDelegate implements IObjectActionDelegate {
|
|
||||||
ISelection fSelection;
|
|
||||||
IWorkbenchPart part;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @see IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
|
|
||||||
*/
|
|
||||||
public void setActivePart(IAction action, IWorkbenchPart targetPart) {
|
|
||||||
part = targetPart;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @see IActionDelegate#run(IAction)
|
|
||||||
*/
|
|
||||||
public void run(IAction action) {
|
|
||||||
if (fSelection instanceof IStructuredSelection
|
|
||||||
&& ((IStructuredSelection) fSelection).getFirstElement() instanceof IProject) {
|
|
||||||
IProject project = (IProject) ((IStructuredSelection) fSelection).getFirstElement();
|
|
||||||
MakeBuildAction build = null;
|
|
||||||
if (action.getId().equals("org.eclipse.cdt.make.ui.makeAction.all")) {
|
|
||||||
build = new MakeBuildAction(new org.eclipse.cdt.make.ui.views.MakeTarget[] { new MakeTarget(project, "all")}, part.getSite().getShell(), "all");
|
|
||||||
} else if (action.getId().equals("org.eclipse.cdt.make.ui.makeAction.clean")) {
|
|
||||||
build = new MakeBuildAction(new MakeTarget[] { new MakeTarget(project, "all")}, part.getSite().getShell(), "all");
|
|
||||||
} else if (action.getId().equals("org.eclipse.cdt.make.ui.makeAction.rebuild")) {
|
|
||||||
build = new MakeBuildAction(new MakeTarget[] { new MakeTarget(project, "all")}, part.getSite().getShell(), "all");
|
|
||||||
}
|
|
||||||
if ( build != null ) {
|
|
||||||
build.run();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* @see IActionDelegate#selectionChanged(IAction, ISelection)
|
|
||||||
*/
|
|
||||||
public void selectionChanged(IAction action, ISelection selection) {
|
|
||||||
fSelection = selection;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -0,0 +1,106 @@
|
||||||
|
package org.eclipse.cdt.make.ui.actions;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* (c) Copyright QNX Software Systems Ltd. 2002.
|
||||||
|
* All Rights Reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.make.core.IMakeBuilderInfo;
|
||||||
|
import org.eclipse.cdt.make.core.MakeBuilder;
|
||||||
|
import org.eclipse.cdt.make.core.MakeCorePlugin;
|
||||||
|
import org.eclipse.cdt.make.internal.ui.MakeUIPlugin;
|
||||||
|
import org.eclipse.cdt.make.ui.views.MakeTarget;
|
||||||
|
import org.eclipse.core.resources.IFile;
|
||||||
|
import org.eclipse.core.resources.IProject;
|
||||||
|
import org.eclipse.core.resources.IWorkspaceRunnable;
|
||||||
|
import org.eclipse.core.resources.IncrementalProjectBuilder;
|
||||||
|
import org.eclipse.core.runtime.CoreException;
|
||||||
|
import org.eclipse.core.runtime.IProgressMonitor;
|
||||||
|
import org.eclipse.core.runtime.OperationCanceledException;
|
||||||
|
import org.eclipse.jface.dialogs.ProgressMonitorDialog;
|
||||||
|
import org.eclipse.jface.operation.IRunnableContext;
|
||||||
|
import org.eclipse.jface.operation.IRunnableWithProgress;
|
||||||
|
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;
|
||||||
|
|
||||||
|
public class MakeBuild {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Causes all editors to save any modified resources depending on the user's
|
||||||
|
* preference.
|
||||||
|
*/
|
||||||
|
static void saveAllResources(MakeTarget[] targets) {
|
||||||
|
|
||||||
|
if (!BuildAction.isSaveAllSet())
|
||||||
|
return;
|
||||||
|
|
||||||
|
List projects = new ArrayList();
|
||||||
|
for (int i = 0; i < targets.length; ++i) {
|
||||||
|
MakeTarget target = targets[i];
|
||||||
|
projects.add(target.getResource().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 public void run(boolean fork, IRunnableContext context, final MakeTarget[] targets) {
|
||||||
|
try {
|
||||||
|
context.run(fork, true, new IRunnableWithProgress() {
|
||||||
|
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
|
||||||
|
try {
|
||||||
|
IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
|
||||||
|
public void run(IProgressMonitor monitor) throws CoreException {
|
||||||
|
saveAllResources(targets);
|
||||||
|
|
||||||
|
// Map infoMap = new HashMap();
|
||||||
|
// IMakeBuilderInfo info = MakeCorePlugin.create(infoMap, MakeBuilder.BUILDER_ID);
|
||||||
|
// project.build(IncrementalProjectBuilder.FULL_BUILD, MakeBuilder.BUILDER_ID, infoMap, monitor);
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
MakeUIPlugin.getWorkspace().run(runnable, monitor);
|
||||||
|
} catch (CoreException e) {
|
||||||
|
throw new InvocationTargetException(e);
|
||||||
|
} catch (OperationCanceledException e) {
|
||||||
|
throw new InterruptedException(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
return;
|
||||||
|
} catch (InvocationTargetException e) {
|
||||||
|
MakeUIPlugin.logException(e, "Build Error", "Error Building Projects");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,110 +1,46 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2000, 2003 IBM Corporation 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:
|
||||||
|
* IBM Corporation - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
package org.eclipse.cdt.make.ui.actions;
|
package org.eclipse.cdt.make.ui.actions;
|
||||||
|
|
||||||
/*
|
import org.eclipse.cdt.make.internal.ui.MakeUIPlugin;
|
||||||
* (c) Copyright QNX Software Systems Ltd. 2002.
|
|
||||||
* All Rights Reserved.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import java.lang.reflect.InvocationTargetException;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.internal.ui.CPluginImages;
|
|
||||||
import org.eclipse.cdt.make.ui.views.MakeTarget;
|
import org.eclipse.cdt.make.ui.views.MakeTarget;
|
||||||
import org.eclipse.core.resources.IFile;
|
import org.eclipse.core.resources.IProject;
|
||||||
import org.eclipse.core.runtime.IProgressMonitor;
|
import org.eclipse.core.runtime.IStatus;
|
||||||
import org.eclipse.jface.action.Action;
|
import org.eclipse.jface.action.IAction;
|
||||||
import org.eclipse.jface.dialogs.ProgressMonitorDialog;
|
import org.eclipse.jface.dialogs.ProgressMonitorDialog;
|
||||||
import org.eclipse.jface.operation.IRunnableWithProgress;
|
import org.eclipse.jface.viewers.IStructuredSelection;
|
||||||
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;
|
|
||||||
|
|
||||||
|
|
||||||
public class MakeBuildAction extends Action {
|
|
||||||
static final String PREFIX = "BuildAction.";
|
|
||||||
|
|
||||||
MakeTarget[] targets;
|
|
||||||
Shell shell;
|
|
||||||
|
|
||||||
public MakeBuildAction (MakeTarget[] targets, Shell shell, String s) {
|
|
||||||
super (s);
|
|
||||||
this.shell = shell;
|
|
||||||
this.targets = targets;
|
|
||||||
|
|
||||||
setToolTipText(PREFIX);
|
|
||||||
setImageDescriptor(CPluginImages.DESC_BUILD_MENU);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
public abstract class MakeBuildAction extends AbstractMakeBuilderAction {
|
||||||
|
protected final String makeActionID = "org.eclipse.cdt.make.ui.makeBuildAction."; //$NON-NLS-1$
|
||||||
/**
|
/**
|
||||||
* Causes all editors to save any modified resources depending on the user's
|
* @see IActionDelegate#run(IAction)
|
||||||
* preference.
|
|
||||||
*/
|
*/
|
||||||
void saveAllResources() {
|
public void run(IAction action) {
|
||||||
|
if (fSelection instanceof IStructuredSelection
|
||||||
|
&& ((IStructuredSelection) fSelection).getFirstElement() instanceof IProject) {
|
||||||
|
IProject project = (IProject) ((IStructuredSelection) fSelection).getFirstElement();
|
||||||
|
MakeTarget target = null;
|
||||||
|
String id = action.getId();
|
||||||
|
if ( id.startsWith(makeActionID) ) {
|
||||||
|
String targets = id.substring(makeActionID.length());
|
||||||
|
if ( targets.length() > 0) {
|
||||||
|
|
||||||
if (!BuildAction.isSaveAllSet())
|
|
||||||
return;
|
|
||||||
|
|
||||||
List projects = new ArrayList();
|
|
||||||
for (int i = 0; i < targets.length; ++i ) {
|
|
||||||
MakeTarget target = targets[i];
|
|
||||||
projects.add(target.getResource().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);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void run() {
|
|
||||||
try {
|
|
||||||
saveAllResources();
|
|
||||||
IRunnableWithProgress op = new IRunnableWithProgress () {
|
|
||||||
public void run(IProgressMonitor monitor)
|
|
||||||
throws InvocationTargetException, InterruptedException {
|
|
||||||
for (int i = 0; i < targets.length; ++i ) {
|
|
||||||
// MakeTarget target = targets[i];
|
|
||||||
// IResource res = target.getResource();
|
|
||||||
// IProject project = res.getProject();
|
|
||||||
|
|
||||||
// try {
|
|
||||||
// if (! project.equals(res) || target.isLeaf()) {
|
|
||||||
// String dir = res.getLocation().toOSString();
|
|
||||||
// }
|
|
||||||
// project.build (IncrementalProjectBuilder.FULL_BUILD, MakeBuilder.BUILDER_ID, monitor);
|
|
||||||
// } catch (CoreException e) {
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
new ProgressMonitorDialog(shell).run(true, true, op);
|
if ( target != null ) {
|
||||||
} catch (InvocationTargetException e) {
|
ProgressMonitorDialog pd = new ProgressMonitorDialog(MakeUIPlugin.getActiveWorkbenchShell());
|
||||||
// handle exception
|
MakeBuild.run(true, pd, new MakeTarget[] {target});
|
||||||
} catch (InterruptedException e) {
|
} else {
|
||||||
// handle cancelation
|
MakeUIPlugin.errorDialog(getShell(), "Make Build Contribution Error", "build target not defined", (IStatus)null);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,7 +13,6 @@ import java.util.ArrayList;
|
||||||
|
|
||||||
import org.eclipse.cdt.core.CCorePlugin;
|
import org.eclipse.cdt.core.CCorePlugin;
|
||||||
import org.eclipse.cdt.core.model.ICProject;
|
import org.eclipse.cdt.core.model.ICProject;
|
||||||
import org.eclipse.cdt.make.core.BuildInfoFactory;
|
|
||||||
import org.eclipse.cdt.make.core.IMakeBuilderInfo;
|
import org.eclipse.cdt.make.core.IMakeBuilderInfo;
|
||||||
import org.eclipse.cdt.make.core.MakeBuilder;
|
import org.eclipse.cdt.make.core.MakeBuilder;
|
||||||
import org.eclipse.cdt.make.core.MakeCorePlugin;
|
import org.eclipse.cdt.make.core.MakeCorePlugin;
|
||||||
|
@ -119,7 +118,7 @@ public class UpdateMakeProjectAction implements IWorkbenchWindowActionDelegate {
|
||||||
MakeProjectNature.addNature(project[i], new SubProgressMonitor(monitor, 1));
|
MakeProjectNature.addNature(project[i], new SubProgressMonitor(monitor, 1));
|
||||||
QualifiedName qlocation = new QualifiedName(CCorePlugin.PLUGIN_ID, "buildLocation");
|
QualifiedName qlocation = new QualifiedName(CCorePlugin.PLUGIN_ID, "buildLocation");
|
||||||
String location = project[i].getPersistentProperty(qlocation);
|
String location = project[i].getPersistentProperty(qlocation);
|
||||||
IMakeBuilderInfo newInfo = BuildInfoFactory.create(project[i], MakeBuilder.BUILDER_ID);
|
IMakeBuilderInfo newInfo = MakeCorePlugin.create(project[i], MakeBuilder.BUILDER_ID);
|
||||||
newInfo.setBuildCommand(new Path(location));
|
newInfo.setBuildCommand(new Path(location));
|
||||||
|
|
||||||
//remove old properties
|
//remove old properties
|
||||||
|
|
|
@ -5,7 +5,6 @@ package org.eclipse.cdt.make.ui.views;
|
||||||
* All Rights Reserved.
|
* All Rights Reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import org.eclipse.cdt.make.ui.actions.MakeBuildAction;
|
|
||||||
import org.eclipse.core.resources.ResourcesPlugin;
|
import org.eclipse.core.resources.ResourcesPlugin;
|
||||||
import org.eclipse.jface.action.Action;
|
import org.eclipse.jface.action.Action;
|
||||||
import org.eclipse.jface.action.IMenuListener;
|
import org.eclipse.jface.action.IMenuListener;
|
||||||
|
@ -49,8 +48,8 @@ public class MakeView extends ViewPart {
|
||||||
//System.out.println ("Double click on " + element);
|
//System.out.println ("Double click on " + element);
|
||||||
if (element instanceof MakeTarget) {
|
if (element instanceof MakeTarget) {
|
||||||
MakeTarget ta = (MakeTarget) element;
|
MakeTarget ta = (MakeTarget) element;
|
||||||
Action build = new MakeBuildAction(new MakeTarget[] { ta }, getViewSite().getShell(), "Build");
|
// Action build = new MakeBuildAction(new MakeTarget[] { ta }, getViewSite().getShell(), "Build");
|
||||||
build.run();
|
// build.run();
|
||||||
}
|
}
|
||||||
//if (viewer.isExpandable(element)) {
|
//if (viewer.isExpandable(element)) {
|
||||||
// viewer.setExpandedState(element, !viewer.getExpandedState(element));
|
// viewer.setExpandedState(element, !viewer.getExpandedState(element));
|
||||||
|
@ -112,13 +111,13 @@ public class MakeView extends ViewPart {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
Action build = new MakeBuildAction(new MakeTarget[] { ta }, getViewSite().getShell(), "Build");
|
// Action build = new MakeBuildAction(new MakeTarget[] { ta }, getViewSite().getShell(), "Build");
|
||||||
|
|
||||||
menu.add(add);
|
menu.add(add);
|
||||||
menu.add(edit);
|
menu.add(edit);
|
||||||
menu.add(del);
|
menu.add(del);
|
||||||
//menu.add (new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
|
//menu.add (new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
|
||||||
menu.add(build);
|
// menu.add(build);
|
||||||
if (ta.isLeaf()) {
|
if (ta.isLeaf()) {
|
||||||
add.setEnabled(false);
|
add.setEnabled(false);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -97,7 +97,7 @@ public class ConvertToMakeProjectWizard extends ConversionWizard {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void doRun(IProgressMonitor monitor) throws CoreException {
|
protected void doRun(IProgressMonitor monitor) throws CoreException {
|
||||||
monitor.beginTask("Converting to Make Project", 2);
|
monitor.beginTask("Converting to Make Project...", 2);
|
||||||
super.doRun(new SubProgressMonitor(monitor, 1));
|
super.doRun(new SubProgressMonitor(monitor, 1));
|
||||||
optionsPage.performApply(new SubProgressMonitor(monitor, 1));
|
optionsPage.performApply(new SubProgressMonitor(monitor, 1));
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ public class MakeProjectWizardOptionPage extends NewCProjectWizardOptionPage {
|
||||||
}
|
}
|
||||||
|
|
||||||
public MakeProjectWizardOptionPage(String title, String description) {
|
public MakeProjectWizardOptionPage(String title, String description) {
|
||||||
super("MakeProjectSettingsPage");
|
super("MakeProjectSettingsPage"); //$NON-NLS-1$
|
||||||
setTitle(title);
|
setTitle(title);
|
||||||
setDescription(description);
|
setDescription(description);
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,6 +49,6 @@ public abstract class NewMakeProjectWizard extends NewCProjectWizard {
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getProjectID() {
|
public String getProjectID() {
|
||||||
return MakeCorePlugin.getUniqueIdentifier() + ".make";
|
return MakeCorePlugin.getUniqueIdentifier() + ".make"; //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@ import org.eclipse.core.resources.IProject;
|
||||||
import org.eclipse.jface.wizard.Wizard;
|
import org.eclipse.jface.wizard.Wizard;
|
||||||
|
|
||||||
public class UpdateMakeProjectWizard extends Wizard {
|
public class UpdateMakeProjectWizard extends Wizard {
|
||||||
private static final String MAKE_UPDATE_WINDOW_TITLE = "MakeWizardUpdate.window_title";
|
private static final String MAKE_UPDATE_WINDOW_TITLE = "MakeWizardUpdate.window_title"; //$NON-NLS-1$
|
||||||
|
|
||||||
private UpdateMakeProjectWizardPage page1;
|
private UpdateMakeProjectWizardPage page1;
|
||||||
private IProject[] selected;
|
private IProject[] selected;
|
||||||
|
|
|
@ -32,8 +32,8 @@ import org.eclipse.ui.model.WorkbenchLabelProvider;
|
||||||
|
|
||||||
public class UpdateMakeProjectWizardPage extends StatusWizardPage {
|
public class UpdateMakeProjectWizardPage extends StatusWizardPage {
|
||||||
|
|
||||||
private static final String MAKE_UPDATE_TITLE = "MakeWizardUpdatePage.title";
|
private static final String MAKE_UPDATE_TITLE = "MakeWizardUpdatePage.title"; //$NON-NLS-1$
|
||||||
private static final String MAKE_UPDATE_DESCRIPTION = "MakeWizardUpdatePage.description";
|
private static final String MAKE_UPDATE_DESCRIPTION = "MakeWizardUpdatePage.description"; //$NON-NLS-1$
|
||||||
|
|
||||||
private IProject[] selected;
|
private IProject[] selected;
|
||||||
private CheckboxTableViewer makeProjectListViewer;
|
private CheckboxTableViewer makeProjectListViewer;
|
||||||
|
@ -66,7 +66,7 @@ public class UpdateMakeProjectWizardPage extends StatusWizardPage {
|
||||||
}
|
}
|
||||||
|
|
||||||
public UpdateMakeProjectWizardPage(IProject[] selected) {
|
public UpdateMakeProjectWizardPage(IProject[] selected) {
|
||||||
super("UpdateMakeProjectWizardPage", true);
|
super("UpdateMakeProjectWizardPage", true); //$NON-NLS-1$
|
||||||
setTitle(MakeUIPlugin.getResourceString(MAKE_UPDATE_TITLE));
|
setTitle(MakeUIPlugin.getResourceString(MAKE_UPDATE_TITLE));
|
||||||
setDescription(MakeUIPlugin.getResourceString(MAKE_UPDATE_DESCRIPTION));
|
setDescription(MakeUIPlugin.getResourceString(MAKE_UPDATE_DESCRIPTION));
|
||||||
this.selected = selected;
|
this.selected = selected;
|
||||||
|
@ -107,7 +107,7 @@ public class UpdateMakeProjectWizardPage extends StatusWizardPage {
|
||||||
return tablePart.getSelection();
|
return tablePart.getSelection();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void dialogChanged() {
|
void dialogChanged() {
|
||||||
IStatus genStatus = validatePlugins();
|
IStatus genStatus = validatePlugins();
|
||||||
updateStatus(genStatus);
|
updateStatus(genStatus);
|
||||||
}
|
}
|
||||||
|
@ -141,6 +141,6 @@ public class UpdateMakeProjectWizardPage extends StatusWizardPage {
|
||||||
if (tablePart.getSelectionCount() == 0) {
|
if (tablePart.getSelectionCount() == 0) {
|
||||||
return createStatus(IStatus.ERROR, "No projects selected");
|
return createStatus(IStatus.ERROR, "No projects selected");
|
||||||
}
|
}
|
||||||
return createStatus(IStatus.OK, "");
|
return createStatus(IStatus.OK, ""); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue