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 678a955..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,43 +1,38 @@ 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 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) { + private boolean isValid(String expression) { int value = -1; try { value = Integer.parseInt(expression); @@ -48,9 +43,12 @@ public class XDebugBooleanValue extends XDebugAbstractValue { 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