1) Moved the fHasChanged flag from PHPVariable to PHPValue.
[phpeclipse.git] / net.sourceforge.phpeclipse.debug.core / src / net / sourceforge / phpdt / internal / debug / core / model / PHPValue.java
index bf97de2..b736b8e 100644 (file)
@@ -56,7 +56,11 @@ public class PHPValue implements IValue {
        private String                  fValueString;                           // The value of this variable as text
        private Vector                  fVariables;                             // The children of this variable (other variables) if any
        private PHPStackFrame   fStackFrame;                            // The stackframe this value (variable) belongs to
-                                                                                                                                       //
+       private boolean         fHasChanged;                                                    // The value has changed between two suspends
+                                                                                                                                       // This variable was moved from PHPVariable due to the fact,
+                                                                                                                                       // that two PHPVariables can reference the same PHPValue,
+                                                                                                                                       // so only the first PHPVariable would win, when we check the variable tree
+                                                                                                                                       // for changed values.
 
        /**
         *
@@ -77,6 +81,7 @@ public class PHPValue implements IValue {
                this.fValueType   = fValueType;
                this.fValueString = value;
                this.fStackFrame  = frame;
+               this.fHasChanged  = false;
 
                if (subitems != null) {                                     // If there are children for this value (variable)
                        this.fVariables = new Vector (subitems);                // Then add the children to this value (variable)
@@ -217,4 +222,13 @@ public class PHPValue implements IValue {
                return null;
        }
 
+       public boolean hasValueChanged () throws DebugException {
+               return fHasChanged;
+       }
+
+       public void setValueChanged (boolean changed) {
+               fHasChanged = changed;
+       }
+
+
 }