Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Cortell2010-03-11 00:22:04 +0000
committerJohn Cortell2010-03-11 00:22:04 +0000
commit194112317879d4d0d4ad7f388774702938219ea7 (patch)
tree2775d35774e9b1db6f4b3a714a7d2dee12e4fc79 /debug/org.eclipse.cdt.debug.mi.ui
parentc29c05bc25a7d31030ed47e7d16fc61103f0f012 (diff)
downloadorg.eclipse.cdt-194112317879d4d0d4ad7f388774702938219ea7.tar.gz
org.eclipse.cdt-194112317879d4d0d4ad7f388774702938219ea7.tar.xz
org.eclipse.cdt-194112317879d4d0d4ad7f388774702938219ea7.zip
[304380] Line breakpoints are set with a simple file namein Cygwin session; fails to support same named files
Diffstat (limited to 'debug/org.eclipse.cdt.debug.mi.ui')
-rw-r--r--debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java
index 109547ac2ff..18cd8cc45b6 100644
--- a/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java
+++ b/debug/org.eclipse.cdt.debug.mi.ui/src/org/eclipse/cdt/debug/mi/internal/ui/GDBDebuggerPage.java
@@ -59,6 +59,8 @@ public class GDBDebuggerPage extends AbstractCDebuggerPage implements Observer {
private IMILaunchConfigurationComponent fSolibBlock;
private boolean fIsInitializing = false;
+
+ private Button fBreakpointsFullPath;
public void createControl( Composite parent ) {
Composite comp = new Composite( parent, SWT.NONE );
@@ -124,6 +126,14 @@ public class GDBDebuggerPage extends AbstractCDebuggerPage implements Observer {
}
}
fProtocolCombo.select( index );
+
+ boolean useFullPath = IMILaunchConfigurationConstants.DEBUGGER_FULLPATH_BREAKPOINTS_DEFAULT;
+ try {
+ useFullPath = configuration.getAttribute(IMILaunchConfigurationConstants.ATTR_DEBUGGER_FULLPATH_BREAKPOINTS, useFullPath);
+ }
+ catch (CoreException e) {}
+ fBreakpointsFullPath.setSelection(useFullPath);
+
setInitializing( false );
}
@@ -139,6 +149,7 @@ public class GDBDebuggerPage extends AbstractCDebuggerPage implements Observer {
str = "mi"; //$NON-NLS-1$
}
configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_PROTOCOL, str );
+ configuration.setAttribute( IMILaunchConfigurationConstants.ATTR_DEBUGGER_FULLPATH_BREAKPOINTS, fBreakpointsFullPath.getSelection() );
if ( fSolibBlock != null )
fSolibBlock.performApply( configuration );
}
@@ -270,7 +281,13 @@ public class GDBDebuggerPage extends AbstractCDebuggerPage implements Observer {
gd.horizontalSpan = 3;
gd.widthHint = 200;
label.setLayoutData( gd );
+
createProtocolCombo( subComp );
+
+ createBreakpointFullPathName(subComp);
+ GridData gd2 = new GridData();
+ gd2.horizontalSpan = 3;
+ fBreakpointsFullPath.setLayoutData(gd2);
}
public void createSolibTab( TabFolder tabFolder ) {
@@ -331,4 +348,18 @@ public class GDBDebuggerPage extends AbstractCDebuggerPage implements Observer {
}
} );
}
+
+ protected void createBreakpointFullPathName( Composite parent ) {
+ fBreakpointsFullPath = createCheckButton( parent, MIUIMessages.getString( "StandardGDBDebuggerPage.14" ) ); //$NON-NLS-1$
+ fBreakpointsFullPath.addSelectionListener( new SelectionListener() {
+ public void widgetDefaultSelected( SelectionEvent e ) {
+ if ( !isInitializing() )
+ updateLaunchConfigurationDialog();
+ }
+ public void widgetSelected( SelectionEvent e ) {
+ if ( !isInitializing() )
+ updateLaunchConfigurationDialog();
+ }
+ } );
+ }
}

Back to the top