X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugStringValue.java b/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugStringValue.java index 6fc0371..1204035 100644 --- a/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugStringValue.java +++ b/net.sourceforge.phpeclipse.xdebug.core/src/net/sourceforge/phpeclipse/xdebug/php/model/XDebugStringValue.java @@ -1,21 +1,31 @@ package net.sourceforge.phpeclipse.xdebug.php.model; +import net.sourceforge.phpeclipse.xdebug.core.Base64; +import net.sourceforge.phpeclipse.xdebug.core.PHPDebugUtils; + +import org.eclipse.debug.core.DebugEvent; +import org.eclipse.debug.core.DebugException; import org.w3c.dom.Node; public class XDebugStringValue extends XDebugAbstractValue { - public XDebugStringValue(XDebugStackFrame variable, Node value) { + public XDebugStringValue(XDebugStackFrame variable, Node value) throws DebugException { super(variable, value); - } - public void renderValueString(String data) { - fValueString = "\"" + data + "\""; + String encoding = PHPDebugUtils.getAttributeValue(value, "encoding"); + if (encoding.equals("base64")) { + rowValue = new String(Base64.decode(rowValue)); + } + + setValueString(rowValue); } - public boolean supportsValueModification() { + public boolean setValue(String expression) throws DebugException { + setValueString(expression); + fireEvent(new DebugEvent(this, DebugEvent.CHANGE, DebugEvent.CONTENT)); return true; } - public boolean verifyValue(String expression) { + public boolean supportsValueModification() { return true; } } \ No newline at end of file