mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
EA-39010 - IAE: AbstractTreeUi.doSelect
This commit is contained in:
@@ -3834,7 +3834,7 @@ public class AbstractTreeUi {
|
||||
}
|
||||
}
|
||||
|
||||
Set<Object> toSelect = new HashSet<Object>();
|
||||
Set<Object> toSelect = new THashSet<Object>();
|
||||
clearSelection();
|
||||
ContainerUtil.addAll(toSelect, elements);
|
||||
if (addToSelection) {
|
||||
@@ -3979,11 +3979,12 @@ public class AbstractTreeUi {
|
||||
}
|
||||
}
|
||||
|
||||
public void select(final Object element, @Nullable final Runnable onDone) {
|
||||
public void select(@Nullable Object element, @Nullable final Runnable onDone) {
|
||||
select(element, onDone, false);
|
||||
}
|
||||
|
||||
public void select(final Object element, @Nullable final Runnable onDone, boolean addToSelection) {
|
||||
public void select(@Nullable Object element, @Nullable final Runnable onDone, boolean addToSelection) {
|
||||
if (element == null) return;
|
||||
_select(new Object[]{element}, onDone, addToSelection, true, false);
|
||||
}
|
||||
|
||||
|
||||
@@ -15,6 +15,8 @@
|
||||
*/
|
||||
package com.intellij.ide.util.treeView;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
class SelectionRequest {
|
||||
final Object[] myElements;
|
||||
final Runnable myOnDone;
|
||||
@@ -25,7 +27,7 @@ class SelectionRequest {
|
||||
final boolean myDeferred;
|
||||
final boolean myCanSmartExpand;
|
||||
|
||||
SelectionRequest(Object[] elements,
|
||||
SelectionRequest(@NotNull Object[] elements,
|
||||
Runnable onDone,
|
||||
boolean addToSelection,
|
||||
boolean checkCurrentSelection,
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.Function;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -105,15 +106,17 @@ public class UpdaterTreeState {
|
||||
return target;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public Object[] getToSelect() {
|
||||
return myToSelect.keySet().toArray(new Object[myToSelect.size()]);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public Object[] getToExpand() {
|
||||
return myToExpand.keySet().toArray(new Object[myToExpand.size()]);
|
||||
}
|
||||
|
||||
public boolean process(Runnable runnable) {
|
||||
public boolean process(@NotNull Runnable runnable) {
|
||||
try {
|
||||
setProcessingNow(true);
|
||||
runnable.run();
|
||||
@@ -134,7 +137,7 @@ public class UpdaterTreeState {
|
||||
return myProcessingCount > 0;
|
||||
}
|
||||
|
||||
public void addAll(final UpdaterTreeState state) {
|
||||
public void addAll(@NotNull UpdaterTreeState state) {
|
||||
myToExpand.putAll(state.myToExpand);
|
||||
|
||||
Object[] toSelect = state.getToSelect();
|
||||
|
||||
Reference in New Issue
Block a user