From f259d60aa3f6bbbd120acfd461e35f45fef6f7c0 Mon Sep 17 00:00:00 2001 From: ewaterlander <102143930+ewaterlander@users.noreply.github.com> Date: Tue, 10 Dec 2024 18:08:08 +0100 Subject: [PATCH] Debugger and Source tabs for the Core Build launch configuration. (#950) The launch configuration for local Core Build projects got the Debugger and Source tabs in debug mode. Now the user can set the stop at startup, a specific debugger, and all other Debug options as we know from Managed Build projects. The GdbLaunch class automatically picks up all the debug settings from these new tabs. No additional code was needed for that. The composition of Core Build tab groups is now fully done via the launchConfigurationTabGroups extension-point. This change relates to #758. It affects all Core Build projects, including CMake projects. --- .../META-INF/MANIFEST.MF | 2 +- debug/org.eclipse.cdt.debug.core/plugin.xml | 2 - .../META-INF/MANIFEST.MF | 2 +- .../plugin.properties | 1 + dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.xml | 69 +++++++++++++++++++ dsf-gdb/org.eclipse.cdt.dsf.gdb/plugin.xml | 25 +++---- .../CoreBuildLocalDebugLaunchDelegate.java | 6 -- .../META-INF/MANIFEST.MF | 2 +- .../org.eclipse.cdt.launch/plugin.properties | 1 + launch/org.eclipse.cdt.launch/plugin.xml | 68 +++++++++++++++++- .../LocalLaunchConfigurationTabGroup.java | 33 --------- .../org/eclipse/cdt/launch/ui/CMainTab2.java | 2 +- .../launch/ui/corebuild/CoreBuildMainTab.java | 10 +++ .../ui/corebuild/CoreBuildMainTab2.java | 2 +- .../cdt/launch/ui/corebuild/CoreBuildTab.java | 8 +++ 15 files changed, 170 insertions(+), 63 deletions(-) delete mode 100644 launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/corebuild/LocalLaunchConfigurationTabGroup.java diff --git a/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF b/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF index 2789f1a3945..62c69ad6749 100644 --- a/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF +++ b/debug/org.eclipse.cdt.debug.core/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.cdt.debug.core; singleton:=true -Bundle-Version: 8.8.700.qualifier +Bundle-Version: 8.8.800.qualifier Bundle-Activator: org.eclipse.cdt.debug.core.CDebugCorePlugin Bundle-Vendor: %providerName Bundle-Localization: plugin diff --git a/debug/org.eclipse.cdt.debug.core/plugin.xml b/debug/org.eclipse.cdt.debug.core/plugin.xml index 16958692c9c..fb35d4a081b 100644 --- a/debug/org.eclipse.cdt.debug.core/plugin.xml +++ b/debug/org.eclipse.cdt.debug.core/plugin.xml @@ -464,9 +464,7 @@ <extension point="org.eclipse.debug.core.launchConfigurationTypes"> <launchConfigurationType - delegate="org.eclipse.cdt.debug.internal.core.launch.CoreBuildLocalRunLaunchDelegate" id="org.eclipse.cdt.debug.core.localCoreBuildLaunchConfigType" - modes="run" name="%localApplicationLaunch.name" public="false"> </launchConfigurationType> diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/META-INF/MANIFEST.MF b/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/META-INF/MANIFEST.MF index c79e28c39ba..3ee578ff4b6 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/META-INF/MANIFEST.MF +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-Vendor: %providerName Bundle-SymbolicName: org.eclipse.cdt.dsf.gdb.ui;singleton:=true -Bundle-Version: 2.8.400.qualifier +Bundle-Version: 2.8.500.qualifier Bundle-Activator: org.eclipse.cdt.dsf.gdb.internal.ui.GdbUIPlugin Bundle-Localization: plugin Require-Bundle: org.eclipse.ui, diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.properties b/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.properties index bb0e517600e..b16bb26c6db 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.properties +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.properties @@ -28,6 +28,7 @@ launchTab.debugger.name=Debugger launchTab.sourceLookup.name=Source launchTab.common.name=Common launchTab.environment.name=Environment +launchTab.buildsettings.name=Build Settings breakpoints.property.filter=Filter tracepoints.property.common=Common diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.xml b/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.xml index bc74c689b2f..b22826315ba 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.xml +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb.ui/plugin.xml @@ -150,6 +150,75 @@ <associatedDelegate delegate="org.eclipse.cdt.dsf.gdb.launch.coreCLaunch"/> <placement after="org.eclipse.debug.ui.sourceLookupTab"/> </tab> + <tab + class="org.eclipse.cdt.launch.ui.corebuild.CoreBuildMainTab2" + group="org.eclipse.cdt.launch.launchConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.localCoreBuild.mainTab" + name="%launchTab.main.name"> + <associatedDelegate + delegate="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug"> + </associatedDelegate> + </tab> + <tab + class="org.eclipse.cdt.launch.ui.corebuild.CoreBuildTab" + group="org.eclipse.cdt.launch.launchConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.localCoreBuild.buildSettingsTab" + name="%launchTab.buildsettings.name"> + <associatedDelegate + delegate="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug"> + </associatedDelegate> + <placement + after="org.eclipse.cdt.cdi.launch.mainTab"> + </placement> + </tab> + <tab + class="org.eclipse.cdt.launch.ui.CArgumentsTab" + group="org.eclipse.cdt.launch.launchConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.localCoreBuild.argumentsTab" + name="%launchTab.arguments.name"> + <associatedDelegate + delegate="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug"> + </associatedDelegate> + <placement + after="org.eclipse.cdt.cdi.launch.buildSettingsTab"> + </placement> + </tab> + <tab + class="org.eclipse.debug.ui.EnvironmentTab" + group="org.eclipse.cdt.launch.launchConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.localCoreBuild.environmentTab" + name="%launchTab.environment.name"> + <associatedDelegate + delegate="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug"> + </associatedDelegate> + <placement + after="org.eclipse.cdt.cdi.launch.argumentsTab"> + </placement> + </tab> + <tab + class="org.eclipse.cdt.dsf.gdb.internal.ui.launching.LocalApplicationCDebuggerTab" + group="org.eclipse.cdt.launch.launchConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.localCoreBuild.debugTab" + name="%launchTab.debugger.name"> + <associatedDelegate + delegate="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug"> + </associatedDelegate> + <placement + after="org.eclipse.debug.ui.environmentTab"> + </placement> + </tab> + <tab + class="org.eclipse.debug.ui.sourcelookup.SourceLookupTab" + group="org.eclipse.cdt.launch.launchConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.localCoreBuild.sourceLookupTab" + name="%launchTab.sourceLookup.name"> + <associatedDelegate + delegate="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug"> + </associatedDelegate> + <placement + after="org.eclipse.cdt.dsf.gdb.launch.debuggerTab"> + </placement> + </tab> </extension> <extension point="org.eclipse.core.runtime.adapters"> <!-- Extenders providing their own subclass of GdbAdapterFactory must also extend GdbLaunch diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/plugin.xml b/dsf-gdb/org.eclipse.cdt.dsf.gdb/plugin.xml index ba1519fc785..6e603323798 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/plugin.xml +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/plugin.xml @@ -43,6 +43,15 @@ sourceLocatorId="org.eclipse.cdt.debug.core.sourceLocator" sourcePathComputerId="org.eclipse.cdt.debug.core.sourcePathComputer"> </launchDelegate> + <launchDelegate + delegate="org.eclipse.cdt.dsf.gdb.internal.launching.CoreBuildLocalDebugLaunchDelegate" + id="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug" + modes="debug" + name="%coreBuildLocalDebug.name" + sourceLocatorId="org.eclipse.cdt.debug.core.sourceLocator" + sourcePathComputerId="org.eclipse.cdt.debug.core.sourcePathComputer" + type="org.eclipse.cdt.debug.core.localCoreBuildLaunchConfigType"> + </launchDelegate> </extension> <extension @@ -85,22 +94,6 @@ </bundle> </component> </extension> - <extension - point="org.eclipse.debug.core.launchDelegates"> - <launchDelegate - delegate="org.eclipse.cdt.dsf.gdb.internal.launching.CoreBuildLocalDebugLaunchDelegate" - id="org.eclipse.cdt.dsf.gdb.coreBuildLocalDebug" - modes="debug" - name="%coreBuildLocalDebug.name" - sourceLocatorId="org.eclipse.cdt.debug.core.sourceLocator" - sourcePathComputerId="org.eclipse.cdt.debug.core.sourcePathComputer" - type="org.eclipse.cdt.debug.core.localCoreBuildLaunchConfigType"> - <modeCombination - modes="debug" - perspective="org.eclipse.debug.ui.DebugPerspective"> - </modeCombination> - </launchDelegate> - </extension> <extension point="org.eclipse.launchbar.core.launchTargetTypes"> <launchTargetType diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/internal/launching/CoreBuildLocalDebugLaunchDelegate.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/internal/launching/CoreBuildLocalDebugLaunchDelegate.java index 5c66df142ea..0f165bf4406 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/internal/launching/CoreBuildLocalDebugLaunchDelegate.java +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/internal/launching/CoreBuildLocalDebugLaunchDelegate.java @@ -10,15 +10,12 @@ *******************************************************************************/ package org.eclipse.cdt.dsf.gdb.internal.launching; -import java.nio.file.Path; -import java.nio.file.Paths; import java.util.HashMap; import java.util.Map; import java.util.Properties; import java.util.concurrent.ExecutionException; import org.eclipse.cdt.core.build.ICBuildConfiguration; -import org.eclipse.cdt.core.build.IToolChain; import org.eclipse.cdt.core.model.IBinary; import org.eclipse.cdt.debug.core.launch.CoreBuildLaunchConfigDelegate; import org.eclipse.cdt.dsf.concurrent.DataRequestMonitor; @@ -82,9 +79,6 @@ public class CoreBuildLocalDebugLaunchDelegate extends CoreBuildLaunchConfigDele envProps.putAll(buildEnv); gdbLaunch.setInitialEnvironment(envProps); - IToolChain toolChain = buildConfig.getToolChain(); - Path gdbPath = toolChain.getCommandPath(Paths.get("gdb")); //$NON-NLS-1$ - gdbLaunch.setGDBPath(gdbPath != null ? gdbPath.toString() : "gdb"); //$NON-NLS-1$ String gdbVersion = gdbLaunch.getGDBVersion(); IBinary exeFile = getBinary(buildConfig); diff --git a/launch/org.eclipse.cdt.launch/META-INF/MANIFEST.MF b/launch/org.eclipse.cdt.launch/META-INF/MANIFEST.MF index 9913822226b..950b97b5bad 100644 --- a/launch/org.eclipse.cdt.launch/META-INF/MANIFEST.MF +++ b/launch/org.eclipse.cdt.launch/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.cdt.launch; singleton:=true -Bundle-Version: 10.4.700.qualifier +Bundle-Version: 11.0.0.qualifier Bundle-Activator: org.eclipse.cdt.launch.internal.ui.LaunchUIPlugin Bundle-Vendor: %providerName Bundle-Localization: plugin diff --git a/launch/org.eclipse.cdt.launch/plugin.properties b/launch/org.eclipse.cdt.launch/plugin.properties index c90a3c5d7c3..47d3d5ea279 100644 --- a/launch/org.eclipse.cdt.launch/plugin.properties +++ b/launch/org.eclipse.cdt.launch/plugin.properties @@ -19,6 +19,7 @@ LocalCDTLaunch.name=Run Process LocalCDTLaunch.description=Execute the specified process MainLaunchTab.name=Main +BuildSettingsLaunchTab.name=Build Settings ArgumentsLaunchTab.name=Arguments EnvironmentLaunchTab.name=Environment SourceLookupLaunchTab.name=Source diff --git a/launch/org.eclipse.cdt.launch/plugin.xml b/launch/org.eclipse.cdt.launch/plugin.xml index 662f0ae9710..c3f298f9905 100644 --- a/launch/org.eclipse.cdt.launch/plugin.xml +++ b/launch/org.eclipse.cdt.launch/plugin.xml @@ -16,6 +16,16 @@ sourceLocatorId="org.eclipse.cdt.debug.core.sourceLocator" sourcePathComputerId="org.eclipse.cdt.debug.core.sourcePathComputer"> </launchDelegate> + <launchDelegate + delegate="org.eclipse.cdt.debug.internal.core.launch.CoreBuildLocalRunLaunchDelegate" + delegateDescription="%LocalCDTLaunch.description" + id="org.eclipse.cdt.cdi.launch.localCoreBuildCLaunch" + modes="run" + name="%LocalCDTLaunch.name" + sourceLocatorId="org.eclipse.cdt.debug.core.sourceLocator" + sourcePathComputerId="org.eclipse.cdt.debug.core.sourcePathComputer" + type="org.eclipse.cdt.debug.core.localCoreBuildLaunchConfigType"> + </launchDelegate> </extension> @@ -53,6 +63,51 @@ <associatedDelegate delegate="org.eclipse.cdt.cdi.launch.localCLaunch"/> <placement after="org.eclipse.debug.ui.environmentTab"/> </tab> + <tab + class="org.eclipse.cdt.launch.ui.corebuild.CoreBuildMainTab2" + group="org.eclipse.cdt.launch.launchRunConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.runLocalCoreBuild.mainTab" + name="%MainLaunchTab.name"> + <associatedDelegate + delegate="org.eclipse.cdt.cdi.launch.localCoreBuildCLaunch"> + </associatedDelegate> + </tab> + <tab + class="org.eclipse.cdt.launch.ui.corebuild.CoreBuildTab" + group="org.eclipse.cdt.launch.launchRunConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.runLocalCoreBuild.buildSettingsTab" + name="%BuildSettingsLaunchTab.name"> + <associatedDelegate + delegate="org.eclipse.cdt.cdi.launch.localCoreBuildCLaunch"> + </associatedDelegate> + <placement + after="org.eclipse.cdt.cdi.launch.mainTab"> + </placement> + </tab> + <tab + class="org.eclipse.cdt.launch.ui.CArgumentsTab" + group="org.eclipse.cdt.launch.launchRunConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.runLocalCoreBuild.argumentsTab" + name="%ArgumentsLaunchTab.name"> + <associatedDelegate + delegate="org.eclipse.cdt.cdi.launch.localCoreBuildCLaunch"> + </associatedDelegate> + <placement + after="org.eclipse.cdt.cdi.launch.buildSettingsTab"> + </placement> + </tab> + <tab + class="org.eclipse.debug.ui.EnvironmentTab" + group="org.eclipse.cdt.launch.launchRunConfigurationTabGroup.local" + id="org.eclipse.cdt.cdi.launch.runLocalCoreBuild.environmentTab" + name="%EnvironmentLaunchTab.name"> + <associatedDelegate + delegate="org.eclipse.cdt.cdi.launch.localCoreBuildCLaunch"> + </associatedDelegate> + <placement + after="org.eclipse.cdt.cdi.launch.argumentsTab"> + </placement> + </tab> </extension> <extension point="org.eclipse.debug.core.statusHandlers"> @@ -109,9 +164,20 @@ <extension point="org.eclipse.debug.ui.launchConfigurationTabGroups"> <launchConfigurationTabGroup - class="org.eclipse.cdt.launch.internal.corebuild.LocalLaunchConfigurationTabGroup" + class="org.eclipse.cdt.debug.internal.ui.launch.PlaceHolderLaunchConfigurationTabGroup" id="org.eclipse.cdt.launch.launchConfigurationTabGroup.local" type="org.eclipse.cdt.debug.core.localCoreBuildLaunchConfigType"> + <launchMode + mode="debug"> + </launchMode> + </launchConfigurationTabGroup> + <launchConfigurationTabGroup + class="org.eclipse.cdt.debug.internal.ui.launch.PlaceHolderLaunchConfigurationTabGroup" + id="org.eclipse.cdt.launch.launchRunConfigurationTabGroup.local" + type="org.eclipse.cdt.debug.core.localCoreBuildLaunchConfigType"> + <launchMode + mode="run"> + </launchMode> </launchConfigurationTabGroup> <launchConfigurationTabGroup class="org.eclipse.cdt.launch.internal.corebuild.GenericLaunchConfigTabGroup" diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/corebuild/LocalLaunchConfigurationTabGroup.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/corebuild/LocalLaunchConfigurationTabGroup.java deleted file mode 100644 index 3636caa3d49..00000000000 --- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/corebuild/LocalLaunchConfigurationTabGroup.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016 QNX Software Systems and others. - * - * This program and the accompanying materials - * are made available under the terms of the Eclipse Public License 2.0 - * which accompanies this distribution, and is available at - * https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -package org.eclipse.cdt.launch.internal.corebuild; - -import org.eclipse.cdt.launch.ui.CArgumentsTab; -import org.eclipse.cdt.launch.ui.corebuild.CoreBuildMainTab2; -import org.eclipse.cdt.launch.ui.corebuild.CoreBuildTab; -import org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup; -import org.eclipse.debug.ui.EnvironmentTab; -import org.eclipse.debug.ui.ILaunchConfigurationDialog; -import org.eclipse.debug.ui.ILaunchConfigurationTab; - -public class LocalLaunchConfigurationTabGroup extends AbstractLaunchConfigurationTabGroup { - - @Override - public void createTabs(ILaunchConfigurationDialog dialog, String mode) { - ILaunchConfigurationTab mainTab = new CoreBuildMainTab2(); - ILaunchConfigurationTab buildTab = new CoreBuildTab(); - ILaunchConfigurationTab argumentsTab = new CArgumentsTab(); - ILaunchConfigurationTab environmentTab = new EnvironmentTab(); - - setTabs(new ILaunchConfigurationTab[] { mainTab, buildTab, argumentsTab, environmentTab }); - } - -} diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CMainTab2.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CMainTab2.java index de2f6be5ada..e1fe80ec746 100644 --- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CMainTab2.java +++ b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CMainTab2.java @@ -112,7 +112,7 @@ public class CMainTab2 extends CAbstractMainTab { } /** - * @since 10.4 + * @since 11.0 */ protected void setDontCheckProgram(boolean dontCheck) { fDontCheckProgram = dontCheck; diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab.java index 4097d0d0824..5898974f2e9 100644 --- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab.java +++ b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab.java @@ -29,6 +29,12 @@ import org.eclipse.swt.widgets.Text; */ public class CoreBuildMainTab extends AbstractLaunchConfigurationTab { + /** + * @since 11.0 + */ + // Same as CoreBuildMainTab2/CMainTab2 + public static final String TAB_ID = "org.eclipse.cdt.cdi.launch.mainTab"; //$NON-NLS-1$ + private Text projectName; @Override @@ -79,4 +85,8 @@ public class CoreBuildMainTab extends AbstractLaunchConfigurationTab { return "Main"; } + @Override + public String getId() { + return TAB_ID; + } } diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab2.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab2.java index d41b8ef5c74..49a791ab406 100644 --- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab2.java +++ b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildMainTab2.java @@ -16,7 +16,7 @@ import org.eclipse.debug.core.ILaunchConfiguration; import org.eclipse.swt.widgets.Composite; /** - * @since 10.4 + * @since 11.0 */ public class CoreBuildMainTab2 extends CMainTab2 { diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildTab.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildTab.java index c1c01ba7b64..8e1996b9230 100644 --- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildTab.java +++ b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/corebuild/CoreBuildTab.java @@ -40,6 +40,10 @@ import org.eclipse.swt.widgets.Label; */ public class CoreBuildTab extends AbstractLaunchConfigurationTab { + /** + * @since 11.0 + */ + public static final String TAB_ID = "org.eclipse.cdt.cdi.launch.buildSettingsTab"; //$NON-NLS-1$ private Composite container; private IProject activeProject; private ILaunchConfigurationTab activeTab; @@ -155,4 +159,8 @@ public class CoreBuildTab extends AbstractLaunchConfigurationTab { return null; } + @Override + public String getId() { + return TAB_ID; + } }