Move AnimatedIcon to public API

This commit is contained in:
Sergey Malenkov
2018-07-26 22:03:14 +03:00
parent b585dd68ea
commit 6318206964
4 changed files with 10 additions and 51 deletions
@@ -17,13 +17,12 @@ package com.intellij.execution.dashboard.tree;
import com.intellij.execution.dashboard.RunDashboardAnimator;
import com.intellij.execution.dashboard.RunDashboardNode;
import com.intellij.icons.AllIcons;
import com.intellij.ide.util.treeView.AbstractTreeBuilder;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.util.Disposer;
import com.intellij.ui.AnimatedIcon;
import com.intellij.util.Alarm;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.ui.AsyncProcessIcon;
import org.jetbrains.annotations.NotNull;
import javax.swing.*;
@@ -36,11 +35,9 @@ import java.util.Set;
* @author Konstantin Aleev
*/
public class RunDashboardAnimatorImpl implements RunDashboardAnimator, Runnable, Disposable {
private static final int FRAMES_COUNT = AsyncProcessIcon.COUNT;
private static final int MOVIE_TIME = AsyncProcessIcon.CYCLE_LENGTH;
private static final int FRAME_TIME = MOVIE_TIME / FRAMES_COUNT;
public static final Icon[] FRAMES = new Icon[FRAMES_COUNT];
public static final Icon[] FRAMES = AnimatedIcon.Default.ICONS.toArray(new Icon[0]);
private static final int FRAME_TIME = AnimatedIcon.Default.DELAY;
private static final int MOVIE_TIME = FRAME_TIME * FRAMES.length;
private long myLastInvocationTime = -1;
@@ -53,17 +50,6 @@ public class RunDashboardAnimatorImpl implements RunDashboardAnimator, Runnable,
init(builder);
}
static {
FRAMES[0] = AllIcons.Process.Step_1;
FRAMES[1] = AllIcons.Process.Step_2;
FRAMES[2] = AllIcons.Process.Step_3;
FRAMES[3] = AllIcons.Process.Step_4;
FRAMES[4] = AllIcons.Process.Step_5;
FRAMES[5] = AllIcons.Process.Step_6;
FRAMES[6] = AllIcons.Process.Step_7;
FRAMES[7] = AllIcons.Process.Step_8;
}
public static int getCurrentFrameIndex() {
return (int)((System.currentTimeMillis() % MOVIE_TIME) / FRAME_TIME);
}
@@ -24,19 +24,10 @@ import javax.swing.*;
import java.awt.*;
public class AsyncProcessIcon extends AnimatedIcon {
public static final int COUNT = 8;
public static final int CYCLE_LENGTH = 1040;
private static final Icon[] SMALL_ICONS = com.intellij.ui.AnimatedIcon.Default.ICONS.toArray(new Icon[0]);
private static final Icon[] SMALL_ICONS = {
AllIcons.Process.Step_1,
AllIcons.Process.Step_2,
AllIcons.Process.Step_3,
AllIcons.Process.Step_4,
AllIcons.Process.Step_5,
AllIcons.Process.Step_6,
AllIcons.Process.Step_7,
AllIcons.Process.Step_8
};
public static final int COUNT = SMALL_ICONS.length;
public static final int CYCLE_LENGTH = com.intellij.ui.AnimatedIcon.Default.DELAY * SMALL_ICONS.length;
public AsyncProcessIcon(@NonNls String name) {
this(name, SMALL_ICONS, AllIcons.Process.Step_passive);
@@ -74,16 +65,7 @@ public class AsyncProcessIcon extends AnimatedIcon {
}
public static class Big extends AsyncProcessIcon {
private static final Icon[] BIG_ICONS = {
AllIcons.Process.Big.Step_1,
AllIcons.Process.Big.Step_2,
AllIcons.Process.Big.Step_3,
AllIcons.Process.Big.Step_4,
AllIcons.Process.Big.Step_5,
AllIcons.Process.Big.Step_6,
AllIcons.Process.Big.Step_7,
AllIcons.Process.Big.Step_8
};
private static final Icon[] BIG_ICONS = com.intellij.ui.AnimatedIcon.Default.ICONS.toArray(new Icon[0]);
public Big(@NonNls final String name) {
super(name, BIG_ICONS, AllIcons.Process.Big.Step_passive);
@@ -17,7 +17,7 @@ package com.intellij.cvsSupport2.cvsBrowser;
import com.intellij.CommonBundle;
import com.intellij.cvsSupport2.ui.CvsTabbedWindow;
import com.intellij.icons.AllIcons;
import com.intellij.ui.AnimatedIcon;
import com.intellij.util.Alarm;
import javax.swing.*;
@@ -35,16 +35,7 @@ class LoadingNode extends DefaultMutableTreeNode {
private final String myText = CommonBundle.getLoadingTreeNodeText();
private int myPeriod = 0;
private final Icon[] myIcons = new Icon[] {
AllIcons.Process.Step_1,
AllIcons.Process.Step_2,
AllIcons.Process.Step_3,
AllIcons.Process.Step_4,
AllIcons.Process.Step_5,
AllIcons.Process.Step_6,
AllIcons.Process.Step_7,
AllIcons.Process.Step_8
};
private final Icon[] myIcons = AnimatedIcon.Default.ICONS.toArray(new Icon[0]);
private volatile boolean stopped = false;
private Runnable myPeriodRequest;
private final DefaultTreeModel myModel;