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:
parent
e9c3b52623
commit
b7f2832d92
9 changed files with 27 additions and 46 deletions
|
@ -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
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
|
@ -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;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -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
|
||||||
|
|
|
@ -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;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
|
@ -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
|
|
||||||
|
|
|
@ -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();
|
||||||
|
|
|
@ -1,2 +1 @@
|
||||||
OptionsPropertyPage.0=Automatically refresh registers
|
OptionsPropertyPage.1=Automatically refresh modules
|
||||||
OptionsPropertyPage.1=Automatically refresh shared libraries
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue