X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugBooleanValue.java b/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugBooleanValue.java index 113f7c2..e826240 100644 --- a/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugBooleanValue.java +++ b/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugBooleanValue.java @@ -1,60 +1,54 @@ package net.sourceforge.phpeclipse.xdebug.php.model; +import org.eclipse.debug.core.DebugEvent; +import org.eclipse.debug.core.DebugException; import org.w3c.dom.Node; public class XDebugBooleanValue extends XDebugAbstractValue { + public XDebugBooleanValue(XDebugStackFrame variable, Node value) throws DebugException { + super(variable, value); - public XDebugBooleanValue(XDebugVariable variable, Node varNode, - String typeName) { - super(variable, varNode, typeName); + renderValueString(rowValue); } - public XDebugBooleanValue(XDebugVariable variable,String typeName) { - super(variable, typeName); - } - - public boolean supportsValueModification() { return true; } - public void setType(String typeName) { - fType=XDebugAbstractValue.VALUETYPE_BOOLEAN; - fTypeName=typeName; } + public boolean setValue(String expression) throws DebugException { + if (isValid(expression)) { + renderValueString(expression); + fireEvent(new DebugEvent(this, DebugEvent.CHANGE, DebugEvent.CONTENT)); + return true; + } + return false; + } - public void renderValueString(String data) { - int value=-1; - try { - value=Integer.parseInt(data); - } catch (NumberFormatException e) { - data=data.toLowerCase(); - if (data.equals("true") || data.equals("false")) - fValueString=data; - else - fValueString="not defined"; + private void renderValueString(String data) { + if (data.equals("0") || data.toLowerCase().equals("false")) { + setValueString("false"); + } else if (data.equals("1") || data.toLowerCase().equals("true")) { + setValueString("true"); } - if (value==0) - fValueString="false"; - else if (value==1) - fValueString="true"; - else - fValueString="not defined"; } - public boolean verifyValue(String expression) { - int value=-1; + private boolean isValid(String expression) { + int value = -1; try { - value=Integer.parseInt(expression); + value = Integer.parseInt(expression); } catch (NumberFormatException e) { - expression=expression.toLowerCase(); + expression = expression.toLowerCase(); if (expression.equals("true") || expression.equals("false")) return true; else return false; } - if ((value>=0)&& (value <=1)) + if ((value >= 0)&& (value <= 1)) return true; return false; } - -} + + public boolean verifyValue(String expression) { + return isValid(expression); + } +} \ No newline at end of file