1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-09 10:46:02 +02:00

[289751] - [vm] IVMEventListener(AbstractVMProvider).handleEvent(Object,RequestMonitor) not called on executor

This commit is contained in:
Pawel Piech 2009-09-22 18:27:02 +00:00
parent b7dd783726
commit 6f11c1b97f
2 changed files with 14 additions and 5 deletions

View file

@ -1,5 +1,5 @@
/******************************************************************************* /*******************************************************************************
* Copyright (c) 2007, 2008 Wind River Systems and others. * Copyright (c) 2007, 2009 Wind River Systems and others.
* All rights reserved. This program and the accompanying materials * All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0 * are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at * which accompanies this distribution, and is available at
@ -10,6 +10,7 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.dsf.debug.ui.viewmodel.variable; package org.eclipse.cdt.dsf.debug.ui.viewmodel.variable;
import org.eclipse.cdt.dsf.concurrent.DsfRunnable;
import org.eclipse.cdt.dsf.debug.service.IFormattedValues; import org.eclipse.cdt.dsf.debug.service.IFormattedValues;
import org.eclipse.cdt.dsf.debug.service.IExpressions.IExpressionDMContext; import org.eclipse.cdt.dsf.debug.service.IExpressions.IExpressionDMContext;
import org.eclipse.cdt.dsf.debug.ui.viewmodel.IDebugVMConstants; import org.eclipse.cdt.dsf.debug.ui.viewmodel.IDebugVMConstants;
@ -105,7 +106,7 @@ public class VariableCellModifier extends WatchExpressionCellModifier {
* @see org.eclipse.cdt.dsf.debug.ui.viewmodel.expression.WatchExpressionCellModifier#modify(java.lang.Object, java.lang.String, java.lang.Object) * @see org.eclipse.cdt.dsf.debug.ui.viewmodel.expression.WatchExpressionCellModifier#modify(java.lang.Object, java.lang.String, java.lang.Object)
*/ */
@Override @Override
public void modify(Object element, String property, Object value) { public void modify(final Object element, String property, Object value) {
/* /*
* If we're in the Value column, modify the variable/register data. The * If we're in the Value column, modify the variable/register data. The
* other columns in the Variables and Registers view are non-modifiable. * other columns in the Variables and Registers view are non-modifiable.
@ -133,8 +134,12 @@ public class VariableCellModifier extends WatchExpressionCellModifier {
} }
fDataAccess.writeVariable(element, (String) value, formatId); fDataAccess.writeVariable(element, (String) value, formatId);
fProvider.getExecutor().execute(new DsfRunnable() {
public void run() {
fProvider.handleEvent(new UserEditEvent(element)); fProvider.handleEvent(new UserEditEvent(element));
} }
});
}
} }
else { else {
super.modify(element, property, value); super.modify(element, property, value);

View file

@ -51,8 +51,12 @@ public class VariableVMProvider extends AbstractDMVMProvider
}; };
private IPropertyChangeListener fPresentationContextListener = new IPropertyChangeListener() { private IPropertyChangeListener fPresentationContextListener = new IPropertyChangeListener() {
public void propertyChange(PropertyChangeEvent event) { public void propertyChange(final PropertyChangeEvent event) {
getExecutor().execute(new DsfRunnable() {
public void run() {
handleEvent(event); handleEvent(event);
};
});
} }
}; };