From a6bc372a172d558645b054dda2523c624ecfa378 Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Tue, 5 Nov 2002 16:21:21 +0000 Subject: [PATCH] Fire ChangedEvent when setting the value. --- .../org/eclipse/cdt/debug/mi/core/cdi/Register.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Register.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Register.java index de8899b5aa6..708b55c1305 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Register.java +++ b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Register.java @@ -20,6 +20,7 @@ import org.eclipse.cdt.debug.mi.core.MISession; import org.eclipse.cdt.debug.mi.core.command.CommandFactory; import org.eclipse.cdt.debug.mi.core.command.MIDataListRegisterValues; import org.eclipse.cdt.debug.mi.core.command.MIDataWriteRegisterValues; +import org.eclipse.cdt.debug.mi.core.event.MIRegisterChangedEvent; import org.eclipse.cdt.debug.mi.core.output.MIDataListRegisterValuesInfo; import org.eclipse.cdt.debug.mi.core.output.MIInfo; import org.eclipse.cdt.debug.mi.core.output.MIRegisterValue; @@ -149,7 +150,7 @@ public class Register extends CObject implements ICDIRegister, ICDIValue { if (parent == null) { MISession mi = getCTarget().getCSession().getMISession(); CommandFactory factory = mi.getCommandFactory(); - int[] regno = new int[]{((RegisterObject)regObject).getId()}; + int[] regno = new int[]{regObject.getId()}; MIDataListRegisterValues registers = factory.createMIDataListRegisterValues(format, regno); try { @@ -202,7 +203,7 @@ public class Register extends CObject implements ICDIRegister, ICDIValue { public void setValue(String expression) throws CDIException { MISession mi = getCTarget().getCSession().getMISession(); CommandFactory factory = mi.getCommandFactory(); - int[] regnos = new int[]{((RegisterObject)regObject).getId()}; + int[] regnos = new int[]{regObject.getId()}; String[] values = new String[]{expression}; MIDataWriteRegisterValues registers = factory.createMIDataWriteRegisterValues(format, regnos, values); @@ -215,6 +216,11 @@ public class Register extends CObject implements ICDIRegister, ICDIValue { } catch (MIException e) { throw new CDIException(e.getMessage()); } + // If the assign was succesfull fire a MIRegisterChangedEvent() + MIRegisterChangedEvent change = new MIRegisterChangedEvent(registers.getToken(), + regObject.getName(), regObject.getId()); + mi.fireEvent(change); + } /**