1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 22:52:11 +02:00

Fix for bug 87546: Obsolete debug MI settings in Preference need to be removed.

This commit is contained in:
Mikhail Khodjaiants 2005-03-09 21:22:27 +00:00
parent e9c3b52623
commit b7f2832d92
9 changed files with 27 additions and 46 deletions

View file

@ -1,3 +1,9 @@
2005-03-09 Mikhail Khodjaiants
Fix for bug 87546: Obsolete debug MI settings in Preference need to be removed.
* RegisterManager.java
* IMIConstants.java
* MIPreferenceInitializer.java
2005-03-07 Alain Magloire 2005-03-07 Alain Magloire
Fix for 87230: base on Jayaprakash ideas/patch Fix for 87230: base on Jayaprakash ideas/patch
On HP statck-list-frames answer contain not kosher strings On HP statck-list-frames answer contain not kosher strings

View file

@ -15,13 +15,10 @@ import java.util.Collections;
import java.util.Hashtable; import java.util.Hashtable;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.eclipse.cdt.debug.core.cdi.CDIException; import org.eclipse.cdt.debug.core.cdi.CDIException;
import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor; import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterDescriptor;
import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup; import org.eclipse.cdt.debug.core.cdi.model.ICDIRegisterGroup;
import org.eclipse.cdt.debug.mi.core.IMIConstants;
import org.eclipse.cdt.debug.mi.core.MIException; import org.eclipse.cdt.debug.mi.core.MIException;
import org.eclipse.cdt.debug.mi.core.MIPlugin;
import org.eclipse.cdt.debug.mi.core.MISession; import org.eclipse.cdt.debug.mi.core.MISession;
import org.eclipse.cdt.debug.mi.core.cdi.model.Register; import org.eclipse.cdt.debug.mi.core.cdi.model.Register;
import org.eclipse.cdt.debug.mi.core.cdi.model.RegisterDescriptor; import org.eclipse.cdt.debug.mi.core.cdi.model.RegisterDescriptor;
@ -54,7 +51,8 @@ public class RegisterManager extends Manager {
public RegisterManager(Session session) { public RegisterManager(Session session) {
super(session, true); super(session, true);
regsMap = new Hashtable(); regsMap = new Hashtable();
setAutoUpdate( MIPlugin.getDefault().getPluginPreferences().getBoolean( IMIConstants.PREF_REGISTERS_AUTO_REFRESH ) ); // The register bookkeeping provides better update control.
setAutoUpdate( true );
} }
synchronized List getRegistersList(Target target) { synchronized List getRegistersList(Target target) {

View file

@ -63,15 +63,4 @@ public interface IMIConstants
* The default value of the for <code>PREF_SHARED_LIBRARIES_AUTO_REFRESH</code> property * The default value of the for <code>PREF_SHARED_LIBRARIES_AUTO_REFRESH</code> property
*/ */
public static final boolean DEF_PREF_SHARED_LIBRARIES_AUTO_REFRESH = true; public static final boolean DEF_PREF_SHARED_LIBRARIES_AUTO_REFRESH = true;
/**
* Boolean preference controlling whether the register manager will be
* refreshed every time when the execution of program stops.
*/
public static final String PREF_REGISTERS_AUTO_REFRESH = PLUGIN_ID + ".Registers.auto_refresh"; //$NON-NLS-1$
/**
* The default value of the for <code>PREF_REGISTERS_AUTO_REFRESH</code> property
*/
public static final boolean DEF_PREF_REGISTERS_AUTO_REFRESH = true;
} }

View file

@ -27,7 +27,6 @@ public class MIPreferenceInitializer extends AbstractPreferenceInitializer {
public void initializeDefaultPreferences() { public void initializeDefaultPreferences() {
MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_REQUEST_TIMEOUT, IMIConstants.DEF_REQUEST_TIMEOUT); MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_REQUEST_TIMEOUT, IMIConstants.DEF_REQUEST_TIMEOUT);
MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT, IMIConstants.DEF_REQUEST_LAUNCH_TIMEOUT); MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_REQUEST_LAUNCH_TIMEOUT, IMIConstants.DEF_REQUEST_LAUNCH_TIMEOUT);
MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_REGISTERS_AUTO_REFRESH, IMIConstants.DEF_PREF_REGISTERS_AUTO_REFRESH);
MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_SHARED_LIBRARIES_AUTO_REFRESH, IMIConstants.DEF_PREF_SHARED_LIBRARIES_AUTO_REFRESH); MIPlugin.getDefault().getPluginPreferences().setDefault(IMIConstants.PREF_SHARED_LIBRARIES_AUTO_REFRESH, IMIConstants.DEF_PREF_SHARED_LIBRARIES_AUTO_REFRESH);
} }
} }

View file

@ -1,3 +1,10 @@
2005-03-09 Mikhail Khodjaiants
Fix for bug 87546: Obsolete debug MI settings in Preference need to be removed.
* MIPreferencePage.java
* PreferenceMessages.properties
* OptionsPropertyPage.java
* PropertyMessages.properties
2005-03-03 Mikhail Khodjaiants 2005-03-03 Mikhail Khodjaiants
Conflicting methods. Conflicting methods.
* SolibSearchPathBlock.java * SolibSearchPathBlock.java

View file

@ -36,7 +36,6 @@ import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.IWorkbench; import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage; import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.help.WorkbenchHelp;
/** /**
* Page for preferences that apply specifically to GDB MI. * Page for preferences that apply specifically to GDB MI.
@ -291,7 +290,7 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
} }
} }
private final static String GDB_MI_HELP_CONTEXT = MIUIPlugin.PLUGIN_ID + "mi_preference_page_context"; //$NON-NLS-1$ private IWorkbench fWorkbench;
// Debugger timeout preference widgets // Debugger timeout preference widgets
private IntegerFieldEditor fDebugTimeoutText; private IntegerFieldEditor fDebugTimeoutText;
@ -299,8 +298,6 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
// Launch timeout preference widgets // Launch timeout preference widgets
private IntegerFieldEditor fLaunchTimeoutText; private IntegerFieldEditor fLaunchTimeoutText;
private BooleanFieldEditor fRefreshRegistersButton;
private BooleanFieldEditor fRefreshSolibsButton; private BooleanFieldEditor fRefreshSolibsButton;
private MIPreferenceStore fMICorePreferenceStore = new MIPreferenceStore( MIPlugin.getDefault().getPluginPreferences() ); private MIPreferenceStore fMICorePreferenceStore = new MIPreferenceStore( MIPlugin.getDefault().getPluginPreferences() );
@ -320,7 +317,7 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
* @see org.eclipse.jface.preference.PreferencePage#createContents(Composite) * @see org.eclipse.jface.preference.PreferencePage#createContents(Composite)
*/ */
protected Control createContents( Composite parent ) { protected Control createContents( Composite parent ) {
WorkbenchHelp.setHelp( getControl(), IMIHelpContextIds.MI_PREFERENCE_PAGE ); getWorkbench().getHelpSystem().setHelp( getControl(), IMIHelpContextIds.MI_PREFERENCE_PAGE );
//The main composite //The main composite
Composite composite = new Composite( parent, SWT.NULL ); Composite composite = new Composite( parent, SWT.NULL );
GridLayout layout = new GridLayout(); GridLayout layout = new GridLayout();
@ -334,7 +331,6 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
composite.setLayoutData( data ); composite.setLayoutData( data );
createSpacer( composite, 1 ); createSpacer( composite, 1 );
createCommunicationPreferences( composite ); createCommunicationPreferences( composite );
WorkbenchHelp.setHelp( composite, GDB_MI_HELP_CONTEXT );
return composite; return composite;
} }
@ -374,7 +370,6 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
private void setDefaultValues() { private void setDefaultValues() {
fDebugTimeoutText.loadDefault(); fDebugTimeoutText.loadDefault();
fLaunchTimeoutText.loadDefault(); fLaunchTimeoutText.loadDefault();
fRefreshRegistersButton.loadDefault();
fRefreshSolibsButton.loadDefault(); fRefreshSolibsButton.loadDefault();
} }
@ -384,6 +379,7 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
* @see org.eclipse.ui.IWorkbenchPreferencePage#init(IWorkbench) * @see org.eclipse.ui.IWorkbenchPreferencePage#init(IWorkbench)
*/ */
public void init( IWorkbench workbench ) { public void init( IWorkbench workbench ) {
fWorkbench = workbench;
} }
protected void createSpacer( Composite composite, int columnSpan ) { protected void createSpacer( Composite composite, int columnSpan ) {
@ -418,7 +414,6 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
setValid( getLaunchTimeoutText().isValid() ); setValid( getLaunchTimeoutText().isValid() );
} }
} ); } );
fRefreshRegistersButton = createRefreshField( IMIConstants.PREF_REGISTERS_AUTO_REFRESH, PreferenceMessages.getString( "MIPreferencePage.5" ), spacingComposite ); //$NON-NLS-1$
fRefreshSolibsButton = createRefreshField( IMIConstants.PREF_SHARED_LIBRARIES_AUTO_REFRESH, PreferenceMessages.getString( "MIPreferencePage.6" ), spacingComposite ); //$NON-NLS-1$ fRefreshSolibsButton = createRefreshField( IMIConstants.PREF_SHARED_LIBRARIES_AUTO_REFRESH, PreferenceMessages.getString( "MIPreferencePage.6" ), spacingComposite ); //$NON-NLS-1$
} }
@ -428,7 +423,6 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
private void storeValues() { private void storeValues() {
fDebugTimeoutText.store(); fDebugTimeoutText.store();
fLaunchTimeoutText.store(); fLaunchTimeoutText.store();
fRefreshRegistersButton.store();
fRefreshSolibsButton.store(); fRefreshSolibsButton.store();
} }
@ -466,7 +460,6 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
public void dispose() { public void dispose() {
fDebugTimeoutText.dispose(); fDebugTimeoutText.dispose();
fLaunchTimeoutText.dispose(); fLaunchTimeoutText.dispose();
fRefreshRegistersButton.dispose();
fRefreshSolibsButton.dispose(); fRefreshSolibsButton.dispose();
super.dispose(); super.dispose();
} }
@ -478,4 +471,10 @@ public class MIPreferencePage extends PreferencePage implements IWorkbenchPrefer
protected IntegerFieldEditor getDebugTimeoutText() { protected IntegerFieldEditor getDebugTimeoutText() {
return fDebugTimeoutText; return fDebugTimeoutText;
} }
private IWorkbench getWorkbench() {
return fWorkbench;
}
} }

View file

@ -14,5 +14,4 @@ MIPreferencePage.1=Communication
MIPreferencePage.2=&Debugger timeout (ms): MIPreferencePage.2=&Debugger timeout (ms):
MIPreferencePage.3=&Launch timeout (ms): MIPreferencePage.3=&Launch timeout (ms):
MIPreferencePage.4=The valid value range is [{0},{1}]. MIPreferencePage.4=The valid value range is [{0},{1}].
MIPreferencePage.5=Automatically refresh registers MIPreferencePage.6=Automatically refresh modules
MIPreferencePage.6=Automatically refresh shared libraries

View file

@ -28,8 +28,6 @@ import org.eclipse.ui.dialogs.PropertyPage;
*/ */
public class OptionsPropertyPage extends PropertyPage { public class OptionsPropertyPage extends PropertyPage {
private Button fRefreshRegistersButton;
private Button fRefreshSolibsButton; private Button fRefreshSolibsButton;
/** /**
@ -44,7 +42,6 @@ public class OptionsPropertyPage extends PropertyPage {
*/ */
protected Control createContents( Composite parent ) { protected Control createContents( Composite parent ) {
Composite comp = ControlFactory.createComposite( parent, 1 ); Composite comp = ControlFactory.createComposite( parent, 1 );
fRefreshRegistersButton = createCheckButton( comp, PropertyMessages.getString( "OptionsPropertyPage.0" ) ); //$NON-NLS-1$
fRefreshSolibsButton = createCheckButton( comp, PropertyMessages.getString( "OptionsPropertyPage.1" ) ); //$NON-NLS-1$ fRefreshSolibsButton = createCheckButton( comp, PropertyMessages.getString( "OptionsPropertyPage.1" ) ); //$NON-NLS-1$
initialize(); initialize();
return comp; return comp;
@ -60,14 +57,11 @@ public class OptionsPropertyPage extends PropertyPage {
} }
private void initialize() { private void initialize() {
boolean regUpdate = true;
boolean solibUpdate = true; boolean solibUpdate = true;
ICDISession session = (ICDISession)getElement().getAdapter( ICDISession.class ); ICDISession session = (ICDISession)getElement().getAdapter( ICDISession.class );
if ( session instanceof Session ) { if ( session instanceof Session ) {
regUpdate = ((Session)session).getRegisterManager().isAutoUpdate();
solibUpdate = ((Session)session).getSharedLibraryManager().isAutoUpdate(); solibUpdate = ((Session)session).getSharedLibraryManager().isAutoUpdate();
} }
fRefreshRegistersButton.setSelection( regUpdate );
fRefreshSolibsButton.setSelection( solibUpdate ); fRefreshSolibsButton.setSelection( solibUpdate );
} }
@ -86,23 +80,14 @@ public class OptionsPropertyPage extends PropertyPage {
ICDISession session = (ICDISession)getElement().getAdapter( ICDISession.class ); ICDISession session = (ICDISession)getElement().getAdapter( ICDISession.class );
final ICDITarget target = (ICDITarget)getElement().getAdapter( ICDITarget.class ); final ICDITarget target = (ICDITarget)getElement().getAdapter( ICDITarget.class );
if ( session instanceof Session ) { if ( session instanceof Session ) {
final boolean regUpdate = fRefreshRegistersButton.getSelection();
final boolean solibUpdate = fRefreshSolibsButton.getSelection(); final boolean solibUpdate = fRefreshSolibsButton.getSelection();
final Session miSession = ((Session)session); final Session miSession = ((Session)session);
miSession.getRegisterManager().setAutoUpdate( regUpdate );
miSession.getSharedLibraryManager().setAutoUpdate( solibUpdate ); miSession.getSharedLibraryManager().setAutoUpdate( solibUpdate );
if ( target.isSuspended() && (regUpdate || solibUpdate) ) { if ( target.isSuspended() && solibUpdate ) {
DebugPlugin.getDefault().asyncExec( new Runnable() { DebugPlugin.getDefault().asyncExec( new Runnable() {
public void run() { public void run() {
if ( target.isSuspended() ) { if ( target.isSuspended() ) {
if ( regUpdate ) {
try {
miSession.getRegisterManager().update();
}
catch( CDIException e ) {
}
}
if ( solibUpdate ) { if ( solibUpdate ) {
try { try {
miSession.getSharedLibraryManager().update(); miSession.getSharedLibraryManager().update();

View file

@ -1,2 +1 @@
OptionsPropertyPage.0=Automatically refresh registers OptionsPropertyPage.1=Automatically refresh modules
OptionsPropertyPage.1=Automatically refresh shared libraries