Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--launch/org.eclipse.cdt.launch/ChangeLog7
-rw-r--r--launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/AbstractCDebuggerTab.java10
-rw-r--r--launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CDebuggerTab.java9
-rw-r--r--launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CorefileDebuggerTab.java34
4 files changed, 29 insertions, 31 deletions
diff --git a/launch/org.eclipse.cdt.launch/ChangeLog b/launch/org.eclipse.cdt.launch/ChangeLog
index 26b864e4d54..401131ee1f4 100644
--- a/launch/org.eclipse.cdt.launch/ChangeLog
+++ b/launch/org.eclipse.cdt.launch/ChangeLog
@@ -1,4 +1,11 @@
2003-07-22 David Inglis
+ * src/org/eclipse/cdt/launch/internal/ui/AbstractCDebuggerTab.java
+ * src/org/eclipse/cdt/launch/ui/CDebuggerTab.java
+ * src/org/eclipse/cdt/launch/ui/CorefileDebuggerTab.java
+ Refactor getName & getImage up into AbstructCDebuggerTab
+ fixed problem with selecting a debugger for a core file from a unknown project platform.
+
+2003-07-22 David Inglis
* src/org/eclipse/cdt/launch/ui/CMainTab.java
Use project name for configuration naming when no binary selected
diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/AbstractCDebuggerTab.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/AbstractCDebuggerTab.java
index ff29272dcff..0f0ae625317 100644
--- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/AbstractCDebuggerTab.java
+++ b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/internal/ui/AbstractCDebuggerTab.java
@@ -14,6 +14,7 @@ import org.eclipse.core.runtime.CoreException;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
import org.eclipse.debug.ui.ILaunchConfigurationTab;
+import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
@@ -158,7 +159,6 @@ public abstract class AbstractCDebuggerTab extends CLaunchConfigurationTab {
abstract protected ICDebugConfiguration getConfigForCurrentDebugger();
abstract public void createControl(Composite parent);
- abstract public String getName();
public void initializeFrom(ILaunchConfiguration config) {
setLaunchConfiguration(config);
@@ -212,4 +212,12 @@ public abstract class AbstractCDebuggerTab extends CLaunchConfigurationTab {
return fInitDefaults;
}
+ public Image getImage() {
+ return LaunchImages.get(LaunchImages.IMG_VIEW_DEBUGGER_TAB);
+ }
+
+ public String getName() {
+ return "Debugger";
+ }
+
}
diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CDebuggerTab.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CDebuggerTab.java
index b75a52c4e56..33962b3540d 100644
--- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CDebuggerTab.java
+++ b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CDebuggerTab.java
@@ -10,7 +10,6 @@ import org.eclipse.cdt.debug.core.CDebugCorePlugin;
import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
import org.eclipse.cdt.debug.core.ICDebugConfiguration;
import org.eclipse.cdt.launch.internal.ui.AbstractCDebuggerTab;
-import org.eclipse.cdt.launch.internal.ui.LaunchImages;
import org.eclipse.core.boot.BootLoader;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.debug.core.ILaunchConfiguration;
@@ -20,7 +19,6 @@ import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
@@ -296,13 +294,6 @@ public class CDebuggerTab extends AbstractCDebuggerTab {
return (ICDebugConfiguration) fDCombo.getData(Integer.toString(selectedIndex));
}
- public String getName() {
- return "Debugger";
- }
-
- public Image getImage() {
- return LaunchImages.get(LaunchImages.IMG_VIEW_DEBUGGER_TAB);
- }
/**
* @see org.eclipse.debug.ui.AbstractLaunchConfigurationTab#updateLaunchConfigurationDialog()
*/
diff --git a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CorefileDebuggerTab.java b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CorefileDebuggerTab.java
index 7bc0f25a82f..6d272fad301 100644
--- a/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CorefileDebuggerTab.java
+++ b/launch/org.eclipse.cdt.launch/src/org/eclipse/cdt/launch/ui/CorefileDebuggerTab.java
@@ -64,16 +64,15 @@ public class CorefileDebuggerTab extends AbstractCDebuggerTab {
ICDebugConfiguration[] debugConfigs;
String configPlatform = getPlatform(config);
ICElement ce = getContext(config, null);
- String projectPlatform = "native";
- String projectCPU = "native";
+ String projectPlatform = "*";
+ String projectCPU = "*";
if (ce != null) {
try {
ICDescriptor descriptor = CCorePlugin.getDefault().getCProjectDescription(ce.getCProject().getProject());
projectPlatform = descriptor.getPlatform();
IBinary bin = (IBinary) ce;
projectCPU = bin.getCPU();
- }
- catch (Exception e) {
+ } catch (Exception e) {
}
}
fDCombo.removeAll();
@@ -83,15 +82,14 @@ public class CorefileDebuggerTab extends AbstractCDebuggerTab {
for (int i = 0; i < debugConfigs.length; i++) {
if (debugConfigs[i].supportsMode(ICDTLaunchConfigurationConstants.DEBUGGER_MODE_CORE)) {
String debuggerPlatform = debugConfigs[i].getPlatform();
- boolean isNative = configPlatform.equals(projectPlatform);
- if (debuggerPlatform.equalsIgnoreCase(projectPlatform)
- || (isNative && debuggerPlatform.equalsIgnoreCase("native"))) {
+ boolean platformMatch = configPlatform.equals(projectPlatform);
+ if (debuggerPlatform.equalsIgnoreCase(projectPlatform) || (platformMatch && projectPlatform.equals("*"))) {
if (debugConfigs[i].supportsCPU(projectCPU)) {
fDCombo.add(debugConfigs[i].getName());
fDCombo.setData(Integer.toString(x), debugConfigs[i]);
// select first exact matching debugger for platform or requested selection
- if ((selndx == -1 && debuggerPlatform.equalsIgnoreCase(projectPlatform)) ||
- selection.equals(debugConfigs[i].getID())) {
+ if ((selndx == -1 && debuggerPlatform.equalsIgnoreCase(projectPlatform))
+ || selection.equals(debugConfigs[i].getID())) {
selndx = x;
}
x++;
@@ -117,8 +115,7 @@ public class CorefileDebuggerTab extends AbstractCDebuggerTab {
if (getDebugConfig() == null || !getDebugConfig().getID().equals(id)) {
loadDebuggerComboBox(config, id);
}
- }
- catch (CoreException e) {
+ } catch (CoreException e) {
return;
}
}
@@ -141,16 +138,15 @@ public class CorefileDebuggerTab extends AbstractCDebuggerTab {
private boolean validateDebuggerConfig(ILaunchConfiguration config) {
String platform = getPlatform(config);
ICElement ce = getContext(config, null);
- String projectPlatform = "native";
- String projectCPU = "native";
+ String projectPlatform = "*";
+ String projectCPU = "*";
if (ce != null) {
try {
ICDescriptor descriptor = CCorePlugin.getDefault().getCProjectDescription(ce.getCProject().getProject());
projectPlatform = descriptor.getPlatform();
IBinary bin = (IBinary) ce;
projectCPU = bin.getCPU();
- }
- catch (Exception e) {
+ } catch (Exception e) {
}
}
ICDebugConfiguration debugConfig = getDebugConfig();
@@ -158,8 +154,8 @@ public class CorefileDebuggerTab extends AbstractCDebuggerTab {
return false;
}
String debuggerPlatform = debugConfig.getPlatform();
- boolean isNative = platform.equals(projectPlatform);
- if (debuggerPlatform.equalsIgnoreCase(projectPlatform) || (isNative && debuggerPlatform.equalsIgnoreCase("native"))) {
+ boolean platformMatch = platform.equals(projectPlatform);
+ if (debuggerPlatform.equalsIgnoreCase(projectPlatform) || (platformMatch && projectPlatform.equals("*"))) {
if (debugConfig.supportsCPU(projectCPU)) {
return true;
}
@@ -177,10 +173,6 @@ public class CorefileDebuggerTab extends AbstractCDebuggerTab {
return (ICDebugConfiguration) fDCombo.getData(Integer.toString(selectedIndex));
}
- public String getName() {
- return "Debugger";
- }
-
/**
* @see org.eclipse.cdt.launch.internal.ui.AbstractCDebuggerTab#handleDebuggerChanged()
*/

Back to the top