Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.debug.tests/src/org/eclipe/debug/tests/viewer/model/TestModelUpdatesListener.java')
-rw-r--r--org.eclipse.debug.tests/src/org/eclipe/debug/tests/viewer/model/TestModelUpdatesListener.java45
1 files changed, 43 insertions, 2 deletions
diff --git a/org.eclipse.debug.tests/src/org/eclipe/debug/tests/viewer/model/TestModelUpdatesListener.java b/org.eclipse.debug.tests/src/org/eclipe/debug/tests/viewer/model/TestModelUpdatesListener.java
index c694e1d1d..ea866c774 100644
--- a/org.eclipse.debug.tests/src/org/eclipe/debug/tests/viewer/model/TestModelUpdatesListener.java
+++ b/org.eclipse.debug.tests/src/org/eclipe/debug/tests/viewer/model/TestModelUpdatesListener.java
@@ -28,12 +28,14 @@ import org.eclipse.debug.internal.ui.viewers.model.provisional.ILabelUpdate;
import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelChangedListener;
import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelDelta;
import org.eclipse.debug.internal.ui.viewers.model.provisional.IModelProxy;
+import org.eclipse.debug.internal.ui.viewers.model.provisional.IStateUpdateListener;
import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdate;
import org.eclipse.debug.internal.ui.viewers.model.provisional.IViewerUpdateListener;
import org.eclipse.jface.viewers.TreePath;
public class TestModelUpdatesListener
- implements IViewerUpdateListener, ILabelUpdateListener, IModelChangedListener, ITestModelUpdatesListenerConstants
+ implements IViewerUpdateListener, ILabelUpdateListener, IModelChangedListener, ITestModelUpdatesListenerConstants,
+ IStateUpdateListener
{
private boolean fFailOnRedundantUpdates;
private boolean fFailOnMultipleUpdateSequences;
@@ -43,9 +45,12 @@ public class TestModelUpdatesListener
private Set fChildCountUpdates = new HashSet();
private Set fLabelUpdates = new HashSet();
private Set fProxyModels = new HashSet();
+ private Set fStateUpdates = new HashSet();
private boolean fViewerUpdatesComplete;
private boolean fLabelUpdatesComplete;
private boolean fModelChangedComplete;
+ private boolean fStateSaveComplete;
+ private boolean fStateRestoreComplete;
private int fViewerUpdatesRunning;
private int fLabelUpdatesRunning;
@@ -86,6 +91,8 @@ public class TestModelUpdatesListener
fViewerUpdatesComplete = false;
fLabelUpdatesComplete = false;
fModelChangedComplete = false;
+ fStateSaveComplete = false;
+ fStateRestoreComplete = false;
}
public void addHasChildrenUpdate(TreePath path) {
@@ -135,10 +142,14 @@ public class TestModelUpdatesListener
addUpdates(path, element, levels, ALL_UPDATES_COMPLETE);
}
+ public void addStateUpdates(ITreeModelContentProviderTarget viewer, TreePath path, TestElement element) {
+ addUpdates(viewer, path, element, -1, STATE_UPDATES);
+ }
+
public void addUpdates(TreePath path, TestElement element, int levels, int flags) {
addUpdates(null, path, element, levels, flags);
}
-
+
public void addUpdates(ITreeModelContentProviderTarget viewer, TreePath path, TestElement element, int levels, int flags) {
if (!path.equals(TreePath.EMPTY)) {
if ((flags & LABEL_UPDATES) != 0) {
@@ -163,6 +174,10 @@ public class TestModelUpdatesListener
fChildrenUpdates.put(path, childrenIndexes);
}
+ if ((flags & STATE_UPDATES) != 0 && viewer != null) {
+ fStateUpdates.add(path);
+ }
+
for (int i = 0; i < children.length; i++) {
addUpdates(viewer, path.createChildPath(children[i]), children[i], levels, flags);
}
@@ -208,6 +223,12 @@ public class TestModelUpdatesListener
if ( (flags & MODEL_CHANGED_COMPLETE) != 0) {
if (!fModelChangedComplete) return false;
}
+ if ( (flags & STATE_SAVE_COMPLETE) != 0) {
+ if (!fStateSaveComplete) return false;
+ }
+ if ( (flags & STATE_RESTORE_COMPLETE) != 0) {
+ if (!fStateRestoreComplete) return false;
+ }
if ( (flags & MODEL_PROXIES_INSTALLED) != 0) {
if (fProxyModels.size() != 0) return false;
}
@@ -313,6 +334,26 @@ public class TestModelUpdatesListener
}
}
}
+
+ public void stateRestoreUpdatesBegin(Object input) {
+ }
+
+ public void stateRestoreUpdatesComplete(Object input) {
+ fStateRestoreComplete = true;
+ }
+
+ public void stateSaveUpdatesBegin(Object input) {
+ }
+
+ public void stateSaveUpdatesComplete(Object input) {
+ fStateSaveComplete = true;
+ }
+
+ public void stateUpdateComplete(Object input, IViewerUpdate update) {
+ }
+
+ public void stateUpdateStarted(Object input, IViewerUpdate update) {
+ }
}

Back to the top