mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-13 19:25:38 +02:00
Slightly reduced clutter in the project's context menu.
Change-Id: I78b5a8b37ce297a9ceaf8ecf9cb94b8df014e61d
This commit is contained in:
parent
31f37f5b63
commit
7880c684eb
17 changed files with 324 additions and 250 deletions
|
@ -4732,7 +4732,6 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1447,7 +1447,7 @@ public class GeneratedMakefileBuilder extends ACBuilder {
|
||||||
OutputStream stdout = buildRunnerHelper.getOutputStream();
|
OutputStream stdout = buildRunnerHelper.getOutputStream();
|
||||||
OutputStream stderr = buildRunnerHelper.getErrorStream();
|
OutputStream stderr = buildRunnerHelper.getErrorStream();
|
||||||
|
|
||||||
buildRunnerHelper.greeting(ManagedMakeMessages.getResourceString("BuildFilesHandler.buildingSelectedFiles"), cfgName, toolchainName, isSupported); //$NON-NLS-1$
|
buildRunnerHelper.greeting(ManagedMakeMessages.getResourceString("GeneratedMakefileBuilder.buildingSelectedFiles"), cfgName, toolchainName, isSupported); //$NON-NLS-1$
|
||||||
buildRunnerHelper.printLine(ManagedMakeMessages.getResourceString("ManagedMakeBuilder.message.internal.builder.header.note")); //$NON-NLS-1$
|
buildRunnerHelper.printLine(ManagedMakeMessages.getResourceString("ManagedMakeBuilder.message.internal.builder.header.note")); //$NON-NLS-1$
|
||||||
|
|
||||||
// Build artifacts for each file in the project
|
// Build artifacts for each file in the project
|
||||||
|
@ -1574,7 +1574,7 @@ public class GeneratedMakefileBuilder extends ACBuilder {
|
||||||
ErrorParserManager epm = new ErrorParserManager(project, des.getDefaultBuildDirLocationURI(), this, errorParsers);
|
ErrorParserManager epm = new ErrorParserManager(project, des.getDefaultBuildDirLocationURI(), this, errorParsers);
|
||||||
buildRunnerHelper.prepareStreams(epm, null , console, new SubProgressMonitor(monitor, TICKS_STREAM_PROGRESS_MONITOR));
|
buildRunnerHelper.prepareStreams(epm, null , console, new SubProgressMonitor(monitor, TICKS_STREAM_PROGRESS_MONITOR));
|
||||||
|
|
||||||
buildRunnerHelper.greeting(ManagedMakeMessages.getResourceString("CleanFilesHandler.cleanSelectedFiles"), cfgName, toolchainName, isSupported); //$NON-NLS-1$
|
buildRunnerHelper.greeting(ManagedMakeMessages.getResourceString("GeneratedMakefileBuilder.cleanSelectedFiles"), cfgName, toolchainName, isSupported); //$NON-NLS-1$
|
||||||
buildRunnerHelper.printLine(ManagedMakeMessages.getResourceString("ManagedMakeBuilder.message.internal.builder.header.note")); //$NON-NLS-1$
|
buildRunnerHelper.printLine(ManagedMakeMessages.getResourceString("ManagedMakeBuilder.message.internal.builder.header.note")); //$NON-NLS-1$
|
||||||
|
|
||||||
for (IFile file : files) {
|
for (IFile file : files) {
|
||||||
|
|
|
@ -115,7 +115,7 @@ UserDefinedMacroSupplier.storeOutputStream.wrong.arguments=Failed to persist mac
|
||||||
|
|
||||||
# BuildMacroStatus messages
|
# BuildMacroStatus messages
|
||||||
BuildMacroStatus.status.macro.undefined=Macro {0} is undefined
|
BuildMacroStatus.status.macro.undefined=Macro {0} is undefined
|
||||||
BuildFilesHandler.buildingSelectedFiles=Building Selected Files
|
GeneratedMakefileBuilder.buildingSelectedFiles=Building Selected Files
|
||||||
BuildDescriptionGnuMakefileGenerator.0=IO exception occurred:
|
BuildDescriptionGnuMakefileGenerator.0=IO exception occurred:
|
||||||
BuildDescriptionGnuMakefileGenerator.1=IO exception occurred:
|
BuildDescriptionGnuMakefileGenerator.1=IO exception occurred:
|
||||||
BuildMacroStatus.status.reference.eachother=Macros {0} and {1} reference each other
|
BuildMacroStatus.status.reference.eachother=Macros {0} and {1} reference each other
|
||||||
|
@ -144,8 +144,7 @@ ManagedBuilderCorePlugin.resourceChangeHandlingInitializationJob=Initializing Re
|
||||||
InternalBuilder.msg.header=Internal Builder: {0}
|
InternalBuilder.msg.header=Internal Builder: {0}
|
||||||
InternalBuilder.nothing.todo=Nothing to be done for project {0}
|
InternalBuilder.nothing.todo=Nothing to be done for project {0}
|
||||||
CfgScannerConfigUtil_ErrorNotSupported=Only type {0} is supported in this method.
|
CfgScannerConfigUtil_ErrorNotSupported=Only type {0} is supported in this method.
|
||||||
CleanFilesHandler.cleanSelectedFiles=Cleaning Selected Files
|
GeneratedMakefileBuilder.cleanSelectedFiles=Cleaning Selected Files
|
||||||
CleanFilesHandler.cleaningFiles=Cleaning files
|
|
||||||
BuilderFactory.1=can not find builder with the specified id
|
BuilderFactory.1=can not find builder with the specified id
|
||||||
FolderInfo.4=converter invocation failed
|
FolderInfo.4=converter invocation failed
|
||||||
MbsMacroSupplier.1=tool parent must be one of configuration, toolchain, or resource configuration
|
MbsMacroSupplier.1=tool parent must be one of configuration, toolchain, or resource configuration
|
||||||
|
|
|
@ -22,7 +22,8 @@ Require-Bundle: org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
|
||||||
org.eclipse.ui;bundle-version="[3.2.0,4.0.0)",
|
org.eclipse.ui;bundle-version="[3.2.0,4.0.0)",
|
||||||
org.eclipse.ui.console;bundle-version="[3.5.100,4.0.0)",
|
org.eclipse.ui.console;bundle-version="[3.5.100,4.0.0)",
|
||||||
org.eclipse.ui.ide;bundle-version="[3.2.0,4.0.0)",
|
org.eclipse.ui.ide;bundle-version="[3.2.0,4.0.0)",
|
||||||
org.eclipse.ui.navigator;bundle-version="[3.2.0,4.0.0)";resolution:=optional
|
org.eclipse.ui.navigator;bundle-version="[3.2.0,4.0.0)";resolution:=optional,
|
||||||
|
org.eclipse.core.expressions
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
|
||||||
Import-Package: com.ibm.icu.text
|
Import-Package: com.ibm.icu.text
|
||||||
|
|
|
@ -37,13 +37,14 @@ propSettingsPrefName=Property Pages Settings
|
||||||
MngResourceProp.name=C/C++ Build
|
MngResourceProp.name=C/C++ Build
|
||||||
|
|
||||||
# The Project Converter page
|
# The Project Converter page
|
||||||
ConvertTargetAction.label=Convert To...
|
command.convertTarget.label=Convert To...
|
||||||
|
command.convertTarget.name=Convert To
|
||||||
|
|
||||||
# Build/clean selected files actions
|
# Build/clean selected files actions
|
||||||
BuildSelectedFiles.label=Build Selected &File(s)
|
command.buildFiles.label=Build Selected &File(s)
|
||||||
command.buildFiles.name=Build Selected File(s)
|
command.buildFiles.name=Build Selected File(s)
|
||||||
command.buildFiles.description=Rebuilds the selected source files
|
command.buildFiles.description=Rebuilds the selected source files
|
||||||
CleanSelectedFiles.label=C&lean Selected File(s)
|
command.cleanFiles.label=C&lean Selected File(s)
|
||||||
command.cleanFiles.name=Clean Selected File(s)
|
command.cleanFiles.name=Clean Selected File(s)
|
||||||
command.cleanFiles.description=Deletes build output files for the selected source files
|
command.cleanFiles.description=Deletes build output files for the selected source files
|
||||||
|
|
||||||
|
@ -83,7 +84,7 @@ Tool.settings=Tool Settings
|
||||||
Build.steps=Build Steps
|
Build.steps=Build Steps
|
||||||
Build.artifact=Build Artifact
|
Build.artifact=Build Artifact
|
||||||
Builder.settings=Builder Settings
|
Builder.settings=Builder Settings
|
||||||
WBB.settings=Behaviour
|
WBB.settings=Behavior
|
||||||
Refresh.policy=Refresh Policy
|
Refresh.policy=Refresh Policy
|
||||||
Includes=Includes
|
Includes=Includes
|
||||||
Includes.tooltip=Includes list
|
Includes.tooltip=Includes list
|
||||||
|
|
|
@ -50,6 +50,10 @@
|
||||||
description="%command.buildFiles.description"
|
description="%command.buildFiles.description"
|
||||||
categoryId="org.eclipse.cdt.managedbuilder.ui.category.build"
|
categoryId="org.eclipse.cdt.managedbuilder.ui.category.build"
|
||||||
id="org.eclipse.cdt.managedbuilder.ui.buildFiles"/>
|
id="org.eclipse.cdt.managedbuilder.ui.buildFiles"/>
|
||||||
|
<command
|
||||||
|
name="%command.convertTarget.name"
|
||||||
|
categoryId="org.eclipse.ui.category.project"
|
||||||
|
id="org.eclipse.cdt.managedbuilder.ui.convertTarget"/>
|
||||||
</extension>
|
</extension>
|
||||||
|
|
||||||
<extension
|
<extension
|
||||||
|
@ -60,6 +64,9 @@
|
||||||
<handler
|
<handler
|
||||||
class="org.eclipse.cdt.managedbuilder.internal.ui.actions.BuildFilesHandler"
|
class="org.eclipse.cdt.managedbuilder.internal.ui.actions.BuildFilesHandler"
|
||||||
commandId="org.eclipse.cdt.managedbuilder.ui.buildFiles"/>
|
commandId="org.eclipse.cdt.managedbuilder.ui.buildFiles"/>
|
||||||
|
<handler
|
||||||
|
class="org.eclipse.cdt.managedbuilder.internal.ui.actions.ConvertTargetHandler"
|
||||||
|
commandId="org.eclipse.cdt.managedbuilder.ui.convertTarget"/>
|
||||||
</extension>
|
</extension>
|
||||||
|
|
||||||
<extension
|
<extension
|
||||||
|
@ -68,7 +75,7 @@
|
||||||
locationURI="popup:org.eclipse.ui.popup.any?before=additions">
|
locationURI="popup:org.eclipse.ui.popup.any?before=additions">
|
||||||
<command
|
<command
|
||||||
commandId="org.eclipse.cdt.managedbuilder.ui.cleanFiles"
|
commandId="org.eclipse.cdt.managedbuilder.ui.cleanFiles"
|
||||||
label="%CleanSelectedFiles.label"
|
label="%command.cleanFiles.label"
|
||||||
style="push">
|
style="push">
|
||||||
<visibleWhen checkEnabled="false">
|
<visibleWhen checkEnabled="false">
|
||||||
<and>
|
<and>
|
||||||
|
@ -89,7 +96,7 @@
|
||||||
</command>
|
</command>
|
||||||
<command
|
<command
|
||||||
commandId="org.eclipse.cdt.managedbuilder.ui.buildFiles"
|
commandId="org.eclipse.cdt.managedbuilder.ui.buildFiles"
|
||||||
label="%BuildSelectedFiles.label"
|
label="%command.buildFiles.label"
|
||||||
style="push">
|
style="push">
|
||||||
<visibleWhen checkEnabled="false">
|
<visibleWhen checkEnabled="false">
|
||||||
<and>
|
<and>
|
||||||
|
@ -109,24 +116,46 @@
|
||||||
</visibleWhen>
|
</visibleWhen>
|
||||||
</command>
|
</command>
|
||||||
</menuContribution>
|
</menuContribution>
|
||||||
|
<!-- This menu command doesn't belong here. It should be contributed
|
||||||
|
by the plug-ins that contribute target converters. -->
|
||||||
|
<menuContribution
|
||||||
|
locationURI="popup:org.eclipse.ui.popup.any?after=additions">
|
||||||
|
<command
|
||||||
|
commandId="org.eclipse.cdt.managedbuilder.ui.convertTarget"
|
||||||
|
label="%command.convertTarget.label"
|
||||||
|
style="push">
|
||||||
|
<visibleWhen checkEnabled="false">
|
||||||
|
<with variable="selection" >
|
||||||
|
<count value="1"/>
|
||||||
|
<iterate ifEmpty="false">
|
||||||
|
<adapt type="org.eclipse.core.resources.IProject">
|
||||||
|
<and>
|
||||||
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.managedbuilder.core.managedBuildNature"/>
|
||||||
|
<test property="org.eclipse.cdt.ui.projectBuilder"
|
||||||
|
value="org.eclipse.cdt.managedbuilder.core.genmakebuilder"/>
|
||||||
|
<test property="org.eclipse.cdt.managedbuilder.ui.hasTargetConverters"/>
|
||||||
|
</and>
|
||||||
|
</adapt>
|
||||||
|
</iterate>
|
||||||
|
</with>
|
||||||
|
</visibleWhen>
|
||||||
|
</command>
|
||||||
|
</menuContribution>
|
||||||
|
</extension>
|
||||||
|
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.core.expressions.propertyTesters">
|
||||||
|
<propertyTester
|
||||||
|
class="org.eclipse.cdt.managedbuilder.internal.ui.actions.ProjectPropertyTester"
|
||||||
|
id="org.eclipse.cdt.managedbuilder.ui.projectPropertyTester"
|
||||||
|
namespace="org.eclipse.cdt.managedbuilder.ui"
|
||||||
|
properties="hasTargetConverters"
|
||||||
|
type="org.eclipse.core.resources.IProject"/>
|
||||||
</extension>
|
</extension>
|
||||||
|
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.ui.popupMenus">
|
point="org.eclipse.ui.popupMenus">
|
||||||
<objectContribution
|
|
||||||
objectClass="org.eclipse.core.resources.IProject"
|
|
||||||
adaptable="true"
|
|
||||||
id="org.eclipse.cdt.managedbuilder.ui.popupMenu.ConvertTargetContribution">
|
|
||||||
<action
|
|
||||||
label="%ConvertTargetAction.label"
|
|
||||||
class="org.eclipse.cdt.managedbuilder.internal.ui.actions.ConvertTargetAction"
|
|
||||||
menubarPath="additions"
|
|
||||||
enablesFor="1"
|
|
||||||
id="org.eclipse.cdt.managedbuilder.ui.ConvertTargetAction"/>
|
|
||||||
<filter
|
|
||||||
name="projectNature"
|
|
||||||
value="org.eclipse.cdt.managedbuilder.core.managedBuildNature"/>
|
|
||||||
</objectContribution>
|
|
||||||
<objectContribution
|
<objectContribution
|
||||||
objectClass="org.eclipse.core.resources.IProject"
|
objectClass="org.eclipse.core.resources.IProject"
|
||||||
adaptable="true"
|
adaptable="true"
|
||||||
|
|
|
@ -1,20 +1,19 @@
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Copyright (c) 2010, 2011 Andrew Gvozdev and others.
|
* Copyright (c) 2010, 2011 Andrew Gvozdev and others.
|
||||||
* All rights reserved. This program and the accompanying materials
|
* All rights reserved. This program and the accompanying materials
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
* which accompanies this distribution, and is available at
|
* which accompanies this distribution, and is available at
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*
|
*
|
||||||
* Contributors:
|
* Contributors:
|
||||||
* Andrew Gvozdev - Initial API and implementation
|
* Andrew Gvozdev - Initial API and implementation
|
||||||
* IBM Corporation
|
* IBM Corporation
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.cdt.managedbuilder.internal.ui;
|
package org.eclipse.cdt.managedbuilder.internal.ui;
|
||||||
|
|
||||||
import org.eclipse.osgi.util.NLS;
|
import org.eclipse.osgi.util.NLS;
|
||||||
|
|
||||||
public class Messages extends NLS {
|
public class Messages extends NLS {
|
||||||
|
|
||||||
public static String AbstractCWizard_0;
|
public static String AbstractCWizard_0;
|
||||||
public static String AbstractPrefPage_0;
|
public static String AbstractPrefPage_0;
|
||||||
public static String ArtifactTab_0;
|
public static String ArtifactTab_0;
|
||||||
|
@ -85,7 +84,6 @@ public class Messages extends NLS {
|
||||||
public static String CMainWizardPage_0;
|
public static String CMainWizardPage_0;
|
||||||
public static String CMainWizardPage_1;
|
public static String CMainWizardPage_1;
|
||||||
public static String CNewWizard_0;
|
public static String CNewWizard_0;
|
||||||
public static String ConvertTargetAction_No_Converter;
|
|
||||||
public static String CPropertyVarsTab_0;
|
public static String CPropertyVarsTab_0;
|
||||||
public static String CWizardHandler_0;
|
public static String CWizardHandler_0;
|
||||||
public static String CWizardHandler_1;
|
public static String CWizardHandler_1;
|
||||||
|
@ -195,11 +193,6 @@ public class Messages extends NLS {
|
||||||
public static String PreferredToolchainsTab_3;
|
public static String PreferredToolchainsTab_3;
|
||||||
public static String PrefPage_NewCDTWizard_0;
|
public static String PrefPage_NewCDTWizard_0;
|
||||||
public static String PrefPage_PropertyPage_0;
|
public static String PrefPage_PropertyPage_0;
|
||||||
public static String ProjectConvert_conversionErrordialog_message;
|
|
||||||
public static String ProjectConvert_conversionErrordialog_title;
|
|
||||||
public static String ProjectConvert_convertersList;
|
|
||||||
public static String ProjectConvert_noConverterErrordialog_message;
|
|
||||||
public static String ProjectConvert_title;
|
|
||||||
public static String PropertyMultiCfgTab_10;
|
public static String PropertyMultiCfgTab_10;
|
||||||
public static String PropertyMultiCfgTab_11;
|
public static String PropertyMultiCfgTab_11;
|
||||||
public static String PropertyMultiCfgTab_3;
|
public static String PropertyMultiCfgTab_3;
|
||||||
|
|
|
@ -247,12 +247,6 @@ BuildToolSettingsPage_tool_command=Command:
|
||||||
BuildToolSettingsPage_tool_commandLinePattern=Command\nline pattern:
|
BuildToolSettingsPage_tool_commandLinePattern=Command\nline pattern:
|
||||||
BuildToolSettingsPage_tool_advancedSettings=Expert settings:
|
BuildToolSettingsPage_tool_advancedSettings=Expert settings:
|
||||||
|
|
||||||
# Project Conversion Dialog messages
|
|
||||||
ProjectConvert_conversionErrordialog_title=Project Conversion Error
|
|
||||||
ProjectConvert_conversionErrordialog_message=Error has occurred during the conversion of the project {0} .
|
|
||||||
ProjectConvert_noConverterErrordialog_message=There are no converters available to convert the project {0} .
|
|
||||||
ProjectConvert_title=Project Converters for {0}
|
|
||||||
|
|
||||||
PropertyMultiCfgTab_10=Add/remove/change affected elements, do not touch others
|
PropertyMultiCfgTab_10=Add/remove/change affected elements, do not touch others
|
||||||
PropertyMultiCfgTab_11=Replace existing string lists with string list shown to user
|
PropertyMultiCfgTab_11=Replace existing string lists with string list shown to user
|
||||||
PropertyMultiCfgTab_3=String List Display Mode
|
PropertyMultiCfgTab_3=String List Display Mode
|
||||||
|
@ -278,7 +272,6 @@ PropertyPageDefsTab_9=Always show profile IDs only
|
||||||
PropertyPageDefsTab_showIncludeFileTab=Display "Include Files" tab on Paths and Symbols page
|
PropertyPageDefsTab_showIncludeFileTab=Display "Include Files" tab on Paths and Symbols page
|
||||||
PropertyPageDefsTab_showProvidersTab=Display "Preprocessor Include Paths" page
|
PropertyPageDefsTab_showProvidersTab=Display "Preprocessor Include Paths" page
|
||||||
PropertyPageDefsTab_showScannerDiscoveryTab=Display "Discovery Options" page
|
PropertyPageDefsTab_showScannerDiscoveryTab=Display "Discovery Options" page
|
||||||
ProjectConvert_convertersList=Converters List
|
|
||||||
|
|
||||||
AbstractPrefPage_0=\ Preference settings will be applied to new projects \n only when there were no toolchains selected.
|
AbstractPrefPage_0=\ Preference settings will be applied to new projects \n only when there were no toolchains selected.
|
||||||
EnvironmentTab_15=Current String List DISPLAY mode. Double-click to change
|
EnvironmentTab_15=Current String List DISPLAY mode. Double-click to change
|
||||||
|
|
|
@ -23,7 +23,6 @@ import org.eclipse.cdt.internal.ui.util.AbstractResourceActionHandler;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo;
|
import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo;
|
||||||
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
||||||
import org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder;
|
import org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder;
|
||||||
import org.eclipse.cdt.managedbuilder.internal.core.ManagedMakeMessages;
|
|
||||||
import org.eclipse.cdt.managedbuilder.makegen.IManagedBuilderMakefileGenerator;
|
import org.eclipse.cdt.managedbuilder.makegen.IManagedBuilderMakefileGenerator;
|
||||||
import org.eclipse.core.commands.ExecutionEvent;
|
import org.eclipse.core.commands.ExecutionEvent;
|
||||||
import org.eclipse.core.commands.ExecutionException;
|
import org.eclipse.core.commands.ExecutionException;
|
||||||
|
@ -168,7 +167,7 @@ public class BuildFilesHandler extends AbstractResourceActionHandler {
|
||||||
private final List<IFile> files;
|
private final List<IFile> files;
|
||||||
|
|
||||||
BuildFilesJob(List<IFile> filesToBuild) {
|
BuildFilesJob(List<IFile> filesToBuild) {
|
||||||
super(ManagedMakeMessages.getResourceString("BuildFilesHandler.buildingSelectedFiles")); //$NON-NLS-1$
|
super(Messages.BuildFilesHandler_buildingSelectedFiles);
|
||||||
files = filesToBuild;
|
files = filesToBuild;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,6 @@ import org.eclipse.cdt.internal.ui.util.AbstractResourceActionHandler;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo;
|
import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo;
|
||||||
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
||||||
import org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder;
|
import org.eclipse.cdt.managedbuilder.internal.core.GeneratedMakefileBuilder;
|
||||||
import org.eclipse.cdt.managedbuilder.internal.core.ManagedMakeMessages;
|
|
||||||
import org.eclipse.core.commands.ExecutionEvent;
|
import org.eclipse.core.commands.ExecutionEvent;
|
||||||
import org.eclipse.core.commands.ExecutionException;
|
import org.eclipse.core.commands.ExecutionException;
|
||||||
import org.eclipse.core.resources.IFile;
|
import org.eclipse.core.resources.IFile;
|
||||||
|
@ -115,7 +114,7 @@ public class CleanFilesHandler extends AbstractResourceActionHandler {
|
||||||
private final List<IFile> files;
|
private final List<IFile> files;
|
||||||
|
|
||||||
private CleanFilesJob(List<IFile> filesToBuild) {
|
private CleanFilesJob(List<IFile> filesToBuild) {
|
||||||
super(ManagedMakeMessages.getResourceString("CleanFilesHandler.cleaningFiles")); //$NON-NLS-1$
|
super(Messages.CleanFilesHandler_cleaningFiles);
|
||||||
files = filesToBuild;
|
files = filesToBuild;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,144 +0,0 @@
|
||||||
/*******************************************************************************
|
|
||||||
* Copyright (c) 2005, 2012 Intel Corporation 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
|
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
*
|
|
||||||
* Contributors:
|
|
||||||
* Intel Corporation - initial API and implementation
|
|
||||||
* Anna Dushistova (MontaVista) - [366771]Converter fails to convert a CDT makefile project
|
|
||||||
*******************************************************************************/
|
|
||||||
package org.eclipse.cdt.managedbuilder.internal.ui.actions;
|
|
||||||
|
|
||||||
import java.util.Vector;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IBuildObject;
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo;
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IManagedProject;
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IProjectType;
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IToolChain;
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
|
||||||
import org.eclipse.cdt.managedbuilder.internal.ui.Messages;
|
|
||||||
import org.eclipse.cdt.managedbuilder.ui.properties.ManagedBuilderUIPlugin;
|
|
||||||
import org.eclipse.cdt.ui.CUIPlugin;
|
|
||||||
import org.eclipse.core.resources.IProject;
|
|
||||||
import org.eclipse.jface.action.IAction;
|
|
||||||
import org.eclipse.jface.dialogs.MessageDialog;
|
|
||||||
import org.eclipse.jface.viewers.ISelection;
|
|
||||||
import org.eclipse.jface.viewers.IStructuredSelection;
|
|
||||||
import org.eclipse.osgi.util.NLS;
|
|
||||||
import org.eclipse.swt.widgets.Shell;
|
|
||||||
import org.eclipse.ui.IObjectActionDelegate;
|
|
||||||
import org.eclipse.ui.IWorkbenchPart;
|
|
||||||
import org.eclipse.ui.actions.ActionDelegate;
|
|
||||||
|
|
||||||
public class ConvertTargetAction
|
|
||||||
extends ActionDelegate
|
|
||||||
implements IObjectActionDelegate {
|
|
||||||
|
|
||||||
private IProject selectedProject = null;
|
|
||||||
|
|
||||||
public static final String PREFIX = "ProjectConvert"; //$NON-NLS-1$
|
|
||||||
public static final String PROJECT_CONVERTER_DIALOG = PREFIX + ".title"; //$NON-NLS-1$
|
|
||||||
|
|
||||||
public static void initStartup() {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void selectionChanged(IAction action, ISelection selection) {
|
|
||||||
if (selection instanceof IStructuredSelection) {
|
|
||||||
IStructuredSelection sel = (IStructuredSelection) selection;
|
|
||||||
Object obj = sel.getFirstElement();
|
|
||||||
if (obj instanceof IProject) {
|
|
||||||
IProject project = (IProject)obj;
|
|
||||||
// Save the selected project.
|
|
||||||
setSelectedProject(project);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
setSelectedProject(null);
|
|
||||||
}
|
|
||||||
|
|
||||||
private IProjectType getProjectType(IProject project) {
|
|
||||||
IProjectType projectType = null;
|
|
||||||
|
|
||||||
// Get the projectType from project.
|
|
||||||
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(project);
|
|
||||||
if (info != null) {
|
|
||||||
IManagedProject managedProject = info.getManagedProject();
|
|
||||||
if ( managedProject != null )
|
|
||||||
projectType = managedProject.getProjectType();
|
|
||||||
}
|
|
||||||
return projectType;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Vector<IBuildObject> getProjectToolchains(IProject project) {
|
|
||||||
Vector<IBuildObject> projectToolchains = new Vector<IBuildObject>();
|
|
||||||
|
|
||||||
// Get the projectType from project.
|
|
||||||
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(project);
|
|
||||||
if (info != null) {
|
|
||||||
IConfiguration[] configs = info.getManagedProject().getConfigurations();
|
|
||||||
for (IConfiguration config : configs) {
|
|
||||||
IToolChain tc = config.getToolChain();
|
|
||||||
if (tc != null) {
|
|
||||||
projectToolchains.add(tc);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return projectToolchains;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void run(IAction action) {
|
|
||||||
Shell shell = CUIPlugin.getActiveWorkbenchShell();
|
|
||||||
|
|
||||||
// Check whether the converters available for the selected project
|
|
||||||
// If there are no converters display error dialog otherwise display converters list
|
|
||||||
|
|
||||||
if( ManagedBuildManager.hasTargetConversionElements(getProjectType(getSelectedProject())) == true ||
|
|
||||||
ManagedBuildManager.hasAnyTargetConversionElements(getProjectToolchains(getSelectedProject()))) {
|
|
||||||
handleConvertTargetAction();
|
|
||||||
} else {
|
|
||||||
MessageDialog.openError(shell,Messages.ConvertTargetAction_No_Converter,
|
|
||||||
NLS.bind(Messages.ProjectConvert_noConverterErrordialog_message, new String[] {getSelectedProject().getName()}) );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void handleConvertTargetAction() {
|
|
||||||
Shell shell = ManagedBuilderUIPlugin.getDefault().getShell();
|
|
||||||
|
|
||||||
String projectName = getSelectedProject().getName();
|
|
||||||
String title = NLS.bind(Messages.ProjectConvert_title, new String(projectName));
|
|
||||||
ConvertTargetDialog dialog = new ConvertTargetDialog(shell, getSelectedProject(), title);
|
|
||||||
if ( dialog.open() == ConvertTargetDialog.OK ) {
|
|
||||||
if ( ConvertTargetDialog.isConversionSuccessful() == false) {
|
|
||||||
MessageDialog.openError(shell, Messages.ProjectConvert_conversionErrordialog_title,
|
|
||||||
NLS.bind(Messages.ProjectConvert_conversionErrordialog_message, projectName));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setActivePart(IAction action, IWorkbenchPart targetPart) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return Returns the selectedProject.
|
|
||||||
*/
|
|
||||||
private IProject getSelectedProject() {
|
|
||||||
return selectedProject;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param selectedProject The selectedProject to set.
|
|
||||||
*/
|
|
||||||
private void setSelectedProject(IProject selectedProject) {
|
|
||||||
this.selectedProject = selectedProject;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -7,13 +7,15 @@
|
||||||
*
|
*
|
||||||
* Contributors:
|
* Contributors:
|
||||||
* Intel Corporation - initial API and implementation
|
* Intel Corporation - initial API and implementation
|
||||||
* Anna Dushistova (MontaVista) - [366771]Converter fails to convert a CDT makefile project
|
* Anna Dushistova (MontaVista) - [366771] Converter fails to convert a CDT makefile project
|
||||||
|
* Sergey Prigogin (Google)
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.cdt.managedbuilder.internal.ui.actions;
|
package org.eclipse.cdt.managedbuilder.internal.ui.actions;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Vector;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IBuildObject;
|
import org.eclipse.cdt.managedbuilder.core.IBuildObject;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
||||||
|
@ -23,7 +25,7 @@ import org.eclipse.cdt.managedbuilder.core.IManagedProject;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IProjectType;
|
import org.eclipse.cdt.managedbuilder.core.IProjectType;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IToolChain;
|
import org.eclipse.cdt.managedbuilder.core.IToolChain;
|
||||||
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
||||||
import org.eclipse.cdt.managedbuilder.internal.ui.Messages;
|
import org.eclipse.cdt.managedbuilder.ui.properties.ManagedBuilderUIPlugin;
|
||||||
import org.eclipse.core.resources.IProject;
|
import org.eclipse.core.resources.IProject;
|
||||||
import org.eclipse.core.runtime.CoreException;
|
import org.eclipse.core.runtime.CoreException;
|
||||||
import org.eclipse.core.runtime.IConfigurationElement;
|
import org.eclipse.core.runtime.IConfigurationElement;
|
||||||
|
@ -39,35 +41,33 @@ import org.eclipse.swt.widgets.Composite;
|
||||||
import org.eclipse.swt.widgets.Control;
|
import org.eclipse.swt.widgets.Control;
|
||||||
import org.eclipse.swt.widgets.Event;
|
import org.eclipse.swt.widgets.Event;
|
||||||
import org.eclipse.swt.widgets.Group;
|
import org.eclipse.swt.widgets.Group;
|
||||||
import org.eclipse.swt.widgets.List;
|
|
||||||
import org.eclipse.swt.widgets.Listener;
|
import org.eclipse.swt.widgets.Listener;
|
||||||
import org.eclipse.swt.widgets.Shell;
|
import org.eclipse.swt.widgets.Shell;
|
||||||
|
|
||||||
public class ConvertTargetDialog extends Dialog {
|
public class ConvertTargetDialog extends Dialog {
|
||||||
|
|
||||||
final private String title;
|
final private String title;
|
||||||
protected List convertersList;
|
protected org.eclipse.swt.widgets.List convertersList;
|
||||||
private IProject project;
|
private IProject project;
|
||||||
private Map<String, IConfigurationElement> conversionElements;
|
private Map<String, IConfigurationElement> conversionElements;
|
||||||
private IConfigurationElement selectedConversionElement;
|
private IConfigurationElement selectedConversionElement;
|
||||||
private static boolean isConversionSuccessful = false;
|
private static boolean isConversionSuccessful = false;
|
||||||
|
|
||||||
public static final String PREFIX = "ProjectConvert"; //$NON-NLS-1$
|
public static final String PREFIX = "ProjectConvert"; //$NON-NLS-1$
|
||||||
public static final String CONVERTERS_LIST = PREFIX +".convertersList"; //$NON-NLS-1$
|
public static final String CONVERTERS_LIST = PREFIX + ".convertersList"; //$NON-NLS-1$
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param parentShell
|
* @param parentShell the parent shell
|
||||||
* @param project
|
* @param project the project to convert
|
||||||
* @param title The title of the dialog
|
* @param title the title of the dialog
|
||||||
*/
|
*/
|
||||||
protected ConvertTargetDialog(Shell parentShell, IProject project, String title) {
|
protected ConvertTargetDialog(Shell parentShell, IProject project, String title) {
|
||||||
super(parentShell);
|
super(parentShell);
|
||||||
this.title = title;
|
this.title = title;
|
||||||
setProject(project);
|
setProject(project);
|
||||||
|
|
||||||
if (getProjectType() != null) {
|
IProjectType projectType = getProjectType();
|
||||||
conversionElements = ManagedBuildManager.getConversionElements(getProjectType());
|
if (projectType != null) {
|
||||||
|
conversionElements = ManagedBuildManager.getConversionElements(projectType);
|
||||||
}
|
}
|
||||||
for (IBuildObject tc : getProjectToolchains()) {
|
for (IBuildObject tc : getProjectToolchains()) {
|
||||||
Map<String, IConfigurationElement> converters = ManagedBuildManager.getConversionElements(tc);
|
Map<String, IConfigurationElement> converters = ManagedBuildManager.getConversionElements(tc);
|
||||||
|
@ -80,34 +80,29 @@ public class ConvertTargetDialog extends Dialog {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
setShellStyle(getShellStyle()|SWT.RESIZE);
|
setShellStyle(getShellStyle() | SWT.RESIZE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void buttonPressed(int buttonId) {
|
protected void buttonPressed(int buttonId) {
|
||||||
if (buttonId == IDialogConstants.OK_ID) {
|
if (buttonId == IDialogConstants.OK_ID) {
|
||||||
|
|
||||||
handleConverterSelection();
|
handleConverterSelection();
|
||||||
IConvertManagedBuildObject convertBuildObject = null;
|
IConvertManagedBuildObject convertBuildObject = null;
|
||||||
try {
|
try {
|
||||||
convertBuildObject = (IConvertManagedBuildObject) getSelectedConversionElement()
|
convertBuildObject =
|
||||||
.createExecutableExtension("class"); //$NON-NLS-1$
|
(IConvertManagedBuildObject) getSelectedConversionElement().createExecutableExtension("class"); //$NON-NLS-1$
|
||||||
} catch (CoreException e) {
|
} catch (CoreException e) {
|
||||||
// TODO Auto-generated catch block
|
ManagedBuilderUIPlugin.log(e);
|
||||||
e.printStackTrace();
|
|
||||||
}
|
}
|
||||||
if (convertBuildObject != null) {
|
if (convertBuildObject != null) {
|
||||||
String fromId = getSelectedConversionElement().getAttribute(
|
String fromId = getSelectedConversionElement().getAttribute("fromId"); //$NON-NLS-1$
|
||||||
"fromId"); //$NON-NLS-1$
|
String toId = getSelectedConversionElement().getAttribute("toId"); //$NON-NLS-1$
|
||||||
String toId = getSelectedConversionElement().getAttribute(
|
|
||||||
"toId"); //$NON-NLS-1$
|
|
||||||
|
|
||||||
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(getProject());
|
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(getProject());
|
||||||
if (info != null) {
|
if (info != null) {
|
||||||
IManagedProject managedProject = info.getManagedProject();
|
IManagedProject managedProject = info.getManagedProject();
|
||||||
if (managedProject != null) {
|
if (managedProject != null) {
|
||||||
if (convertBuildObject.convert(managedProject, fromId,
|
if (convertBuildObject.convert(managedProject, fromId, toId, true) == null) {
|
||||||
toId, true) == null) {
|
|
||||||
setConversionSuccessful(false);
|
setConversionSuccessful(false);
|
||||||
} else {
|
} else {
|
||||||
setConversionSuccessful(true);
|
setConversionSuccessful(true);
|
||||||
|
@ -135,7 +130,6 @@ public class ConvertTargetDialog extends Dialog {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Control createDialogArea(Composite parent) {
|
protected Control createDialogArea(Composite parent) {
|
||||||
|
|
||||||
Composite comp = new Composite(parent, SWT.NULL);
|
Composite comp = new Composite(parent, SWT.NULL);
|
||||||
comp.setFont(parent.getFont());
|
comp.setFont(parent.getFont());
|
||||||
comp.setLayout(new GridLayout(1, true));
|
comp.setLayout(new GridLayout(1, true));
|
||||||
|
@ -149,7 +143,7 @@ public class ConvertTargetDialog extends Dialog {
|
||||||
convertersListGroup.setLayoutData(new GridData(GridData.FILL_BOTH));
|
convertersListGroup.setLayoutData(new GridData(GridData.FILL_BOTH));
|
||||||
|
|
||||||
// Create the current config List
|
// Create the current config List
|
||||||
convertersList = new List(convertersListGroup, SWT.SINGLE|SWT.V_SCROLL|SWT.H_SCROLL|SWT.BORDER);
|
convertersList = new org.eclipse.swt.widgets.List(convertersListGroup, SWT.SINGLE|SWT.V_SCROLL|SWT.H_SCROLL|SWT.BORDER);
|
||||||
convertersList.setFont(convertersListGroup.getFont());
|
convertersList.setFont(convertersListGroup.getFont());
|
||||||
GridData data = new GridData(GridData.FILL_BOTH);
|
GridData data = new GridData(GridData.FILL_BOTH);
|
||||||
convertersList.setLayoutData(data);
|
convertersList.setLayoutData(data);
|
||||||
|
@ -240,22 +234,21 @@ public class ConvertTargetDialog extends Dialog {
|
||||||
ConvertTargetDialog.isConversionSuccessful = isConversionSuccessful;
|
ConvertTargetDialog.isConversionSuccessful = isConversionSuccessful;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Vector<IBuildObject> getProjectToolchains() {
|
private List<IBuildObject> getProjectToolchains() {
|
||||||
Vector<IBuildObject> projectToolchains = new Vector<IBuildObject>();
|
List<IBuildObject> projectToolchains = new ArrayList<>();
|
||||||
|
|
||||||
// Get the projectType from project.
|
// Get the projectType from project.
|
||||||
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(getProject());
|
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(getProject());
|
||||||
if (info != null) {
|
if (info != null) {
|
||||||
IConfiguration[] configs = info.getManagedProject().getConfigurations();
|
IConfiguration[] configs = info.getManagedProject().getConfigurations();
|
||||||
for (IConfiguration config : configs) {
|
for (IConfiguration config : configs) {
|
||||||
IToolChain tc = config.getToolChain();
|
IToolChain toolchain = config.getToolChain();
|
||||||
if (tc != null) {
|
if (toolchain != null) {
|
||||||
projectToolchains.add(tc);
|
projectToolchains.add(toolchain);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return projectToolchains;
|
return projectToolchains;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,107 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2005, 2014 Intel Corporation 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
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Intel Corporation - initial API and implementation
|
||||||
|
* Anna Dushistova (MontaVista) - [366771] Converter fails to convert a CDT makefile project
|
||||||
|
* Sergey Prigogin (Google)
|
||||||
|
*******************************************************************************/
|
||||||
|
package org.eclipse.cdt.managedbuilder.internal.ui.actions;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.eclipse.cdt.internal.ui.util.AbstractResourceActionHandler;
|
||||||
|
import org.eclipse.cdt.managedbuilder.core.IBuildObject;
|
||||||
|
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
||||||
|
import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo;
|
||||||
|
import org.eclipse.cdt.managedbuilder.core.IManagedProject;
|
||||||
|
import org.eclipse.cdt.managedbuilder.core.IProjectType;
|
||||||
|
import org.eclipse.cdt.managedbuilder.core.IToolChain;
|
||||||
|
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
|
||||||
|
import org.eclipse.core.commands.ExecutionEvent;
|
||||||
|
import org.eclipse.core.commands.ExecutionException;
|
||||||
|
import org.eclipse.core.resources.IProject;
|
||||||
|
import org.eclipse.jface.dialogs.MessageDialog;
|
||||||
|
import org.eclipse.jface.viewers.IStructuredSelection;
|
||||||
|
import org.eclipse.osgi.util.NLS;
|
||||||
|
import org.eclipse.swt.widgets.Shell;
|
||||||
|
import org.eclipse.ui.handlers.HandlerUtil;
|
||||||
|
|
||||||
|
public class ConvertTargetHandler extends AbstractResourceActionHandler {
|
||||||
|
@Override
|
||||||
|
public Object execute(ExecutionEvent event) throws ExecutionException {
|
||||||
|
Shell shell = HandlerUtil.getActiveShellChecked(event);
|
||||||
|
|
||||||
|
IProject project;
|
||||||
|
IStructuredSelection selection = getSelection(event);
|
||||||
|
if (selection.size() != 1)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
Object obj = selection.getFirstElement();
|
||||||
|
if (!(obj instanceof IProject))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
project = (IProject) obj;
|
||||||
|
|
||||||
|
// Check whether the converters available for the selected project.
|
||||||
|
// If there are no converters display error dialog otherwise display converters list.
|
||||||
|
if (hasTargetConverters(project)) {
|
||||||
|
handleConvertTargetAction(project, shell);
|
||||||
|
} else {
|
||||||
|
MessageDialog.openError(shell, Messages.ConvertTargetHandler_No_Converter,
|
||||||
|
NLS.bind(Messages.ProjectConvert_noConverterErrorDialog_message, new String[] {project.getName()}) );
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static boolean hasTargetConverters(IProject project) {
|
||||||
|
return ManagedBuildManager.hasTargetConversionElements(getProjectType(project)) ||
|
||||||
|
ManagedBuildManager.hasAnyTargetConversionElements(getProjectToolchains(project));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static IProjectType getProjectType(IProject project) {
|
||||||
|
IProjectType projectType = null;
|
||||||
|
|
||||||
|
// Get the projectType from project.
|
||||||
|
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(project);
|
||||||
|
if (info != null) {
|
||||||
|
IManagedProject managedProject = info.getManagedProject();
|
||||||
|
if (managedProject != null)
|
||||||
|
projectType = managedProject.getProjectType();
|
||||||
|
}
|
||||||
|
return projectType;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static List<IBuildObject> getProjectToolchains(IProject project) {
|
||||||
|
List<IBuildObject> projectToolchains = new ArrayList<>();
|
||||||
|
|
||||||
|
// Get the projectType from project.
|
||||||
|
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(project);
|
||||||
|
if (info != null) {
|
||||||
|
IConfiguration[] configs = info.getManagedProject().getConfigurations();
|
||||||
|
for (IConfiguration config : configs) {
|
||||||
|
IToolChain toolchain = config.getToolChain();
|
||||||
|
if (toolchain != null) {
|
||||||
|
projectToolchains.add(toolchain);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return projectToolchains;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void handleConvertTargetAction(IProject project, Shell shell) {
|
||||||
|
String title = NLS.bind(Messages.ProjectConvert_title, project.getName());
|
||||||
|
ConvertTargetDialog dialog = new ConvertTargetDialog(shell, project, title);
|
||||||
|
if (dialog.open() != ConvertTargetDialog.OK)
|
||||||
|
return;
|
||||||
|
if (!ConvertTargetDialog.isConversionSuccessful()) {
|
||||||
|
MessageDialog.openError(shell, Messages.ProjectConvert_conversionErrordialog_title,
|
||||||
|
NLS.bind(Messages.ProjectConvert_conversionErrordialog_message, project.getName()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2010, 2011 Andrew Gvozdev 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
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Andrew Gvozdev - Initial API and implementation
|
||||||
|
* IBM Corporation
|
||||||
|
* Sergey Prigogin (Google)
|
||||||
|
*******************************************************************************/
|
||||||
|
package org.eclipse.cdt.managedbuilder.internal.ui.actions;
|
||||||
|
|
||||||
|
import org.eclipse.osgi.util.NLS;
|
||||||
|
|
||||||
|
class Messages extends NLS {
|
||||||
|
public static String BuildFilesHandler_buildingSelectedFiles;
|
||||||
|
public static String CleanFilesHandler_cleaningFiles;
|
||||||
|
public static String ConvertTargetHandler_No_Converter;
|
||||||
|
public static String ProjectConvert_noConverterErrorDialog_message;
|
||||||
|
public static String ProjectConvert_title;
|
||||||
|
public static String ProjectConvert_conversionErrordialog_message;
|
||||||
|
public static String ProjectConvert_conversionErrordialog_title;
|
||||||
|
public static String ProjectConvert_convertersList;
|
||||||
|
|
||||||
|
static {
|
||||||
|
// Initialize resource bundle.
|
||||||
|
NLS.initializeMessages(Messages.class.getName(), Messages.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Messages() {
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
###############################################################################
|
||||||
|
# Copyright (c) 2000, 2011 IBM Corporation, 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
|
||||||
|
# http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
#
|
||||||
|
# Contributors:
|
||||||
|
# IBM - Initial API and implementation
|
||||||
|
# Andrew Gvozdev (Quoin Inc.) - Combined managedbuilder.ui bundles to NLS message format, bug 318812
|
||||||
|
# Sergey Prigogin (Google)
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
BuildFilesHandler_buildingSelectedFiles=Building Selected Files
|
||||||
|
CleanFilesHandler_cleanSelectedFiles=Cleaning Selected Files
|
||||||
|
CleanFilesHandler_cleaningFiles=Cleaning files
|
||||||
|
|
||||||
|
# Project Conversion Dialog messages
|
||||||
|
ProjectConvert_conversionErrordialog_title=Project Conversion Error
|
||||||
|
ProjectConvert_conversionErrordialog_message=Error has occurred during the conversion of the project {0} .
|
||||||
|
ProjectConvert_noConverterErrorDialog_message=There are no converters available to convert the project {0} .
|
||||||
|
ProjectConvert_title=Project Converters for {0}
|
||||||
|
ProjectConvert_convertersList=Converters List
|
||||||
|
ConvertTargetHandler_No_Converter=No converter
|
|
@ -0,0 +1,28 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2014 Google, Inc 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
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* Sergey Prigogin (Google) - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package org.eclipse.cdt.managedbuilder.internal.ui.actions;
|
||||||
|
|
||||||
|
import org.eclipse.core.expressions.PropertyTester;
|
||||||
|
import org.eclipse.core.resources.IProject;
|
||||||
|
|
||||||
|
public class ProjectPropertyTester extends PropertyTester {
|
||||||
|
private static final String PROP_HAS_TARGET_CONVERTERS = "hasTargetConverters"; //$NON-NLS-1$
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
|
||||||
|
if (!(receiver instanceof IProject) || args.length != 0)
|
||||||
|
return false;
|
||||||
|
if (property.equals(PROP_HAS_TARGET_CONVERTERS)) {
|
||||||
|
return ConvertTargetHandler.hasTargetConverters((IProject) receiver);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
|
@ -3406,7 +3406,8 @@
|
||||||
id="org.eclipse.cdt.ui.indexer">
|
id="org.eclipse.cdt.ui.indexer">
|
||||||
<enabledWhen>
|
<enabledWhen>
|
||||||
<adapt type="org.eclipse.core.resources.IProject">
|
<adapt type="org.eclipse.core.resources.IProject">
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</adapt>
|
</adapt>
|
||||||
</enabledWhen>
|
</enabledWhen>
|
||||||
</page>
|
</page>
|
||||||
|
@ -3417,7 +3418,8 @@
|
||||||
id="org.eclipse.cdt.ui.fileTypes">
|
id="org.eclipse.cdt.ui.fileTypes">
|
||||||
<enabledWhen>
|
<enabledWhen>
|
||||||
<adapt type="org.eclipse.core.resources.IProject">
|
<adapt type="org.eclipse.core.resources.IProject">
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</adapt>
|
</adapt>
|
||||||
</enabledWhen>
|
</enabledWhen>
|
||||||
</page>
|
</page>
|
||||||
|
@ -3428,7 +3430,8 @@
|
||||||
id="org.eclipse.cdt.ui.cHelp">
|
id="org.eclipse.cdt.ui.cHelp">
|
||||||
<enabledWhen>
|
<enabledWhen>
|
||||||
<adapt type="org.eclipse.core.resources.IProject">
|
<adapt type="org.eclipse.core.resources.IProject">
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</adapt>
|
</adapt>
|
||||||
</enabledWhen>
|
</enabledWhen>
|
||||||
</page>
|
</page>
|
||||||
|
@ -3439,7 +3442,8 @@
|
||||||
name="%CDTLanguagesProperty.name">
|
name="%CDTLanguagesProperty.name">
|
||||||
<enabledWhen>
|
<enabledWhen>
|
||||||
<adapt type="org.eclipse.core.resources.IProject">
|
<adapt type="org.eclipse.core.resources.IProject">
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</adapt>
|
</adapt>
|
||||||
</enabledWhen>
|
</enabledWhen>
|
||||||
</page>
|
</page>
|
||||||
|
@ -3463,7 +3467,8 @@
|
||||||
id="org.eclipse.cdt.ui.propertyPages.CodeFormatterPreferencePage">
|
id="org.eclipse.cdt.ui.propertyPages.CodeFormatterPreferencePage">
|
||||||
<enabledWhen>
|
<enabledWhen>
|
||||||
<adapt type="org.eclipse.core.resources.IProject">
|
<adapt type="org.eclipse.core.resources.IProject">
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</adapt>
|
</adapt>
|
||||||
</enabledWhen>
|
</enabledWhen>
|
||||||
</page>
|
</page>
|
||||||
|
@ -3475,7 +3480,8 @@
|
||||||
<keywordReference id="org.eclipse.cdt.ui.common"/>
|
<keywordReference id="org.eclipse.cdt.ui.common"/>
|
||||||
<enabledWhen>
|
<enabledWhen>
|
||||||
<adapt type="org.eclipse.core.resources.IProject">
|
<adapt type="org.eclipse.core.resources.IProject">
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</adapt>
|
</adapt>
|
||||||
</enabledWhen>
|
</enabledWhen>
|
||||||
</page>
|
</page>
|
||||||
|
@ -3487,9 +3493,10 @@
|
||||||
<enabledWhen>
|
<enabledWhen>
|
||||||
<adapt type="org.eclipse.core.resources.IResource">
|
<adapt type="org.eclipse.core.resources.IResource">
|
||||||
<and>
|
<and>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
<test property="org.eclipse.cdt.ui.checkPreference"
|
<test property="org.eclipse.cdt.ui.checkPreference"
|
||||||
value="org.eclipse.cdt.core/language.settings.providers.disabled=false"/>
|
value="org.eclipse.cdt.core/language.settings.providers.disabled=false"/>
|
||||||
</and>
|
</and>
|
||||||
</adapt>
|
</adapt>
|
||||||
</enabledWhen>
|
</enabledWhen>
|
||||||
|
@ -3769,7 +3776,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.ui.CElementGrouping"/>
|
<instanceof value="org.eclipse.cdt.ui.CElementGrouping"/>
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IResource"/>
|
<instanceof value="org.eclipse.core.resources.IResource"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
<instanceof value="org.eclipse.core.resources.IWorkspaceRoot"/>
|
<instanceof value="org.eclipse.core.resources.IWorkspaceRoot"/>
|
||||||
</or>
|
</or>
|
||||||
|
@ -3797,7 +3805,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IProject"/>
|
<instanceof value="org.eclipse.core.resources.IProject"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3811,7 +3820,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IProject"/>
|
<instanceof value="org.eclipse.core.resources.IProject"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3844,7 +3854,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IResource" />
|
<instanceof value="org.eclipse.core.resources.IResource" />
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3858,7 +3869,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IResource" />
|
<instanceof value="org.eclipse.core.resources.IResource" />
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3878,7 +3890,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IProject"/>
|
<instanceof value="org.eclipse.core.resources.IProject"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3898,7 +3911,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IProject"/>
|
<instanceof value="org.eclipse.core.resources.IProject"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3913,7 +3927,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IProject"/>
|
<instanceof value="org.eclipse.core.resources.IProject"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3928,7 +3943,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IProject"/>
|
<instanceof value="org.eclipse.core.resources.IProject"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3943,7 +3959,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IContainer"/>
|
<instanceof value="org.eclipse.core.resources.IContainer"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3958,7 +3975,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IProject"/>
|
<instanceof value="org.eclipse.core.resources.IProject"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
@ -3972,7 +3990,8 @@
|
||||||
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
<instanceof value="org.eclipse.cdt.core.model.ICElement" />
|
||||||
<and>
|
<and>
|
||||||
<instanceof value="org.eclipse.core.resources.IContainer"/>
|
<instanceof value="org.eclipse.core.resources.IContainer"/>
|
||||||
<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.cdt.core.cnature"/>
|
<test property="org.eclipse.core.resources.projectNature"
|
||||||
|
value="org.eclipse.cdt.core.cnature"/>
|
||||||
</and>
|
</and>
|
||||||
</or>
|
</or>
|
||||||
</enablement>
|
</enablement>
|
||||||
|
|
Loading…
Add table
Reference in a new issue