X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/model/PHPStackFrame.java b/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/model/PHPStackFrame.java index e47f21d..1c5dcdd 100644 --- a/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/model/PHPStackFrame.java +++ b/net.sourceforge.phpeclipse.debug.core/src/net/sourceforge/phpdt/internal/debug/core/model/PHPStackFrame.java @@ -6,11 +6,12 @@ which accompanies this distribution, and is available at http://www.eclipse.org/legal/cpl-v10.html Contributors: - IBM Corporation - Initial implementation - Vicente Fernando - www.alfersoft.com.ar + IBM Corporation - Initial implementation + Vicente Fernando - www.alfersoft.com.ar **********************************************************************/ package net.sourceforge.phpdt.internal.debug.core.model; +import java.util.Arrays; import java.util.Vector; import net.sourceforge.phpdt.internal.debug.core.PHPDBGProxy; @@ -39,7 +40,7 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa private int modno; // private PHPVariable[] variables; // The array of variables TODO: better introduce a vector? private Vector varList = new Vector (); - private String description; // + private String description; // The source file name with the full path on target/remote system private boolean fUpToDate; // /** @@ -215,9 +216,9 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa try { if (valOld.hasVariables () || // If the 'static' value has child variables - valNew.hasVariables ()) { // or if the DBG value has child variables + valNew.hasVariables ()) { // or if the DBG value has child variables if (!hasRecursion (varOld) && - !hasRecursion (varNew)) { // Both branches should not have a recursion + !hasRecursion (varNew)) { // Both branches should not have a recursion updateVariableList (valOld.getChildVariables (), // Update the variable list for the child variables valNew.getChildVariables ()); } @@ -285,10 +286,11 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa if (!isUpToDate ()) { resetHasChangedInfo (varList); - updateVariableList (varList, this.getPHPDBGProxy ().readVariables (this)); + updateVariableList (varList, this.getPHPDBGProxy ().readVariables (this)); setUpToDate (true); variables = (PHPVariable[]) varList.toArray (new PHPVariable[varList.size ()]); + Arrays.sort(variables, new PHPVariableComparator()); } return variables; // Give the array back to user interface @@ -337,7 +339,7 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa public IVariable findVariable (String s) throws DebugException { if (!isUpToDate ()) { resetHasChangedInfo (varList); - updateVariableList (varList, this.getPHPDBGProxy ().readVariables (this)); + updateVariableList (varList, this.getPHPDBGProxy ().readVariables (this)); setUpToDate (true); variables = (PHPVariable[]) varList.toArray (new PHPVariable[varList.size ()]); @@ -372,10 +374,20 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa } public String getName() { - if(!this.getDescription().equals("")) - return this.getDescription() + " [line: " + this.getLineNumber() + "]"; - else - return this.getFileName() + " [line: " + this.getLineNumber() + "]"; + StringBuffer name = new StringBuffer(); + + if (!this.getDescription().equals ("")) { + name.append (this.getDescription ()); + } + else { + name.append (this.getFileName ()); + } + + name.append (" [line "); + name.append (this.getLineNumber ()); + name.append ("]"); + + return name.toString(); } public String getFileName() { @@ -434,7 +446,7 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa setUpToDate (false); - thread.prepareForResume (DebugEvent.STEP_INTO); // Don't know why, but this is necessary + thread.prepareForResume (DebugEvent.STEP_INTO); // Don't know why, but this is necessary this.getPHPDBGProxy ().readStepIntoEnd (PHPStackFrame.this); ev = new DebugEvent (this.getThread (), DebugEvent.RESUME, DebugEvent.STEP_INTO); @@ -449,7 +461,7 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa setUpToDate (false); - thread.prepareForResume (DebugEvent.STEP_OVER); + thread.prepareForResume (DebugEvent.STEP_OVER); this.getPHPDBGProxy ().readStepOverEnd (PHPStackFrame.this) ; ev = new DebugEvent (this.getThread (), DebugEvent.RESUME, DebugEvent.STEP_OVER); @@ -464,7 +476,7 @@ public class PHPStackFrame extends PHPDebugElement implements IStackFrame, Compa setUpToDate (false); - thread.prepareForResume (DebugEvent.STEP_RETURN); + thread.prepareForResume (DebugEvent.STEP_RETURN); this.getPHPDBGProxy ().readStepReturnEnd (PHPStackFrame.this) ; ev = new DebugEvent (this.getThread (), DebugEvent.RESUME, DebugEvent.STEP_RETURN);