From 25b0ee6d2eb2e56dfa81ab59cec357ae5413d407 Mon Sep 17 00:00:00 2001 From: Randy Rohrbach Date: Sat, 14 Mar 2009 03:16:19 +0000 Subject: [PATCH] Defect 268629 --- .../viewmodel/register/RegisterBitFieldVMNode.java | 10 ++++++++++ .../ui/viewmodel/register/RegisterGroupVMNode.java | 12 +++++++++++- .../debug/ui/viewmodel/register/RegisterVMNode.java | 10 ++++++++++ .../debug/ui/viewmodel/variable/VariableVMNode.java | 10 ++++++++++ 4 files changed, 41 insertions(+), 1 deletion(-) diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterBitFieldVMNode.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterBitFieldVMNode.java index 1f40f4ac48b..1560871db1b 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterBitFieldVMNode.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterBitFieldVMNode.java @@ -469,6 +469,16 @@ public class RegisterBitFieldVMNode extends AbstractExpressionVMNode update.setProperty(IRegisterVMConstants.PROP_CURRENT_MNEMONIC_LONG_NAME, mnemonic.getLongName()); update.setProperty(IRegisterVMConstants.PROP_CURRENT_MNEMONIC_SHORT_NAME, mnemonic.getShortName()); } + + /* + * If this node has an expression then it has already been filled in by the higher + * level logic. If not then we need to supply something. In the previous version + * ( pre-property based ) we supplied the name. So we will do that here also. + */ + IExpression expression = (IExpression)DebugPlugin.getAdapter(update.getElement(), IExpression.class); + if (expression == null) { + update.setProperty(AbstractExpressionVMNode.PROP_ELEMENT_EXPRESSION, data.getName()); + } } @Override diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterGroupVMNode.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterGroupVMNode.java index a133172fee4..2f311eebbfc 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterGroupVMNode.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterGroupVMNode.java @@ -320,7 +320,17 @@ public class RegisterGroupVMNode extends AbstractExpressionVMNode @ConfinedToDsfExecutor("getSession().getExecutor()") protected void fillRegisterGroupDataProperties(IPropertiesUpdate update, IRegisterGroupDMData data) { update.setProperty(PROP_NAME, data.getName()); - update.setProperty(PROP_REGISTER_GROUP_DESCRIPTION, data.getName()); + update.setProperty(PROP_REGISTER_GROUP_DESCRIPTION, data.getDescription()); + + /* + * If this node has an expression then it has already been filled in by the higher + * level logic. If not then we need to supply something. In the previous version + * ( pre-property based ) we supplied the name. So we will do that here also. + */ + IExpression expression = (IExpression)DebugPlugin.getAdapter(update.getElement(), IExpression.class); + if (expression == null) { + update.setProperty(AbstractExpressionVMNode.PROP_ELEMENT_EXPRESSION, data.getName()); + } } public int getDeltaFlags(Object e) { diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterVMNode.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterVMNode.java index de32b49e17b..e0669d58287 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterVMNode.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/register/RegisterVMNode.java @@ -448,6 +448,16 @@ public class RegisterVMNode extends AbstractExpressionVMNode update.setProperty(IRegisterVMConstants.PROP_IS_READONCE, data.isReadOnce()); update.setProperty(IRegisterVMConstants.PROP_IS_WRITEABLE, data.isWriteable()); update.setProperty(IRegisterVMConstants.PROP_IS_WRITEONCE, data.isWriteOnce()); + + /* + * If this node has an expression then it has already been filled in by the higher + * level logic. If not then we need to supply something. In the previous version + * ( pre-property based ) we supplied the name. So we will do that here also. + */ + IExpression expression = (IExpression)DebugPlugin.getAdapter(update.getElement(), IExpression.class); + if (expression == null) { + update.setProperty(AbstractExpressionVMNode.PROP_ELEMENT_EXPRESSION, data.getName()); + } } /* diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/variable/VariableVMNode.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/variable/VariableVMNode.java index 91eb9b5bb71..01836c1db70 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/variable/VariableVMNode.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/variable/VariableVMNode.java @@ -598,6 +598,16 @@ public class VariableVMNode extends AbstractExpressionVMNode if (type != null) { update.setProperty(PROP_VARIABLE_BASIC_TYPE, type.name()); } + + /* + * If this node has an expression then it has already been filled in by the higher + * level logic. If not then we need to supply something. In the previous version + * ( pre-property based ) we supplied the name. So we will do that here also. + */ + IExpression expression = (IExpression)DebugPlugin.getAdapter(update.getElement(), IExpression.class); + if (expression == null) { + update.setProperty(AbstractExpressionVMNode.PROP_ELEMENT_EXPRESSION, data.getName()); + } } /**