1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Bugzilla 159683

Added flushing the caches when the cell editing changes the values of fields.
This commit is contained in:
Randy Rohrbach 2007-07-06 21:47:16 +00:00
parent b838894fc8
commit b3130f8c32
3 changed files with 17 additions and 0 deletions

View file

@ -398,6 +398,14 @@ public class RegisterBitFieldLayoutNode extends AbstractExpressionLayoutNode<IBi
parent.addFlags(IModelDelta.CONTENT);
}
if (e instanceof IRegisters.IBitFieldChangedDMEvent) {
/*
* Flush the cache.
*/
VMCacheManager.getVMCacheManager().flush(super.getVMProvider().getPresentationContext());
/*
* Create a delta indicating the bit field has changed.
*/
parent.addNode( createVMContext(((IRegisters.IBitFieldChangedDMEvent)e).getDMContext()), IModelDelta.STATE );
}

View file

@ -225,10 +225,14 @@ public class RegisterGroupLayoutNode extends AbstractExpressionLayoutNode<IRegis
else if (e instanceof IRegisters.IGroupsChangedDMEvent) {
// flush the cache
VMCacheManager.getVMCacheManager().flush(super.getVMProvider().getPresentationContext());
// Create a delta that indicates all groups have changed
parent.addFlags(IModelDelta.CONTENT);
}
else if (e instanceof IRegisters.IGroupChangedDMEvent) {
// flush the cache
VMCacheManager.getVMCacheManager().flush(super.getVMProvider().getPresentationContext());
// Create a delta that indicates that specific group changed
parent.addNode( createVMContext(((IGroupChangedDMEvent)e).getDMContext()), IModelDelta.STATE );
}

View file

@ -391,6 +391,11 @@ public class RegisterLayoutNode extends AbstractExpressionLayoutNode<IRegisterDM
return IModelDelta.CONTENT;
}
else if (e instanceof IRegisters.IRegisterChangedDMEvent) {
/*
* Flush the cache.
*/
VMCacheManager.getVMCacheManager().flush(super.getVMProvider().getPresentationContext());
/*
* Logically one would think that STATE should be specified here. But we specifiy CONTENT
* as well so that if there are subregisters ( BIT FIELDS ) they will be forced to update