From 9c2ba90b6b2a93c7d04a38550e1b2869b56f6ec6 Mon Sep 17 00:00:00 2001 From: Sergey Malenkov Date: Wed, 6 Sep 2017 15:40:45 +0300 Subject: [PATCH] introduce temporary API to migrate a project view tree to a new model AsyncTreeModel.setRootImmediately(StructureTreeModel.getRootImmediately) --- .../src/com/intellij/ui/tree/AsyncTreeModel.java | 11 +++++++++++ .../src/com/intellij/ui/tree/StructureTreeModel.java | 11 +++++++++++ 2 files changed, 22 insertions(+) diff --git a/platform/platform-impl/src/com/intellij/ui/tree/AsyncTreeModel.java b/platform/platform-impl/src/com/intellij/ui/tree/AsyncTreeModel.java index 39ac7a411407..309ddb2c121a 100644 --- a/platform/platform-impl/src/com/intellij/ui/tree/AsyncTreeModel.java +++ b/platform/platform-impl/src/com/intellij/ui/tree/AsyncTreeModel.java @@ -866,4 +866,15 @@ public final class AsyncTreeModel extends AbstractTreeModel implements Disposabl } } } + + /** + * @deprecated do not use + */ + @Deprecated + public void setRootImmediately(@NotNull Object object) { + Node node = new Node(object, false); + node.insertPath(new TreePath(object)); + tree.root = node; + tree.map.put(object, node); + } } diff --git a/platform/platform-impl/src/com/intellij/ui/tree/StructureTreeModel.java b/platform/platform-impl/src/com/intellij/ui/tree/StructureTreeModel.java index 00dd1bbd0072..742d6453d3b3 100644 --- a/platform/platform-impl/src/com/intellij/ui/tree/StructureTreeModel.java +++ b/platform/platform-impl/src/com/intellij/ui/tree/StructureTreeModel.java @@ -294,4 +294,15 @@ public class StructureTreeModel extends AbstractTreeModel implements Disposable, return child instanceof Node && isNodeChild((Node)child) ? getChildren().indexOf(child) : -1; } } + + /** + * @deprecated do not use + */ + @Deprecated + public final Object getRootImmediately() { + if (!root.isValid()) { + root.set(getValidRoot()); + } + return root.get(); + } }