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 1960aa9..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,49 +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); + + renderValueString(rowValue); } public boolean supportsValueModification() { return true; } - 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")) - setValueString(data)/*fValueString=data*/; - else - setValueString("not defined")/*fValueString="not defined"*/; + public boolean setValue(String expression) throws DebugException { + if (isValid(expression)) { + renderValueString(expression); + fireEvent(new DebugEvent(this, DebugEvent.CHANGE, DebugEvent.CONTENT)); + return true; } - if (value==0) - setValueString("false")/*fValueString="false"*/; - else if (value==1) - setValueString("false")/*fValueString="true"*/; - else - setValueString("not defined")/*fValueString="not defined"*/; + return false; } - public boolean verifyValue(String expression) { - int value=-1; + 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"); + } + } + + 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