Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit ab8e921

Browse files
committed
1 parent e45d7f9 commit ab8e921

File tree

7 files changed

+56
-18
lines changed

7 files changed

+56
-18
lines changed

‎build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ plugins {
44
}
55

66
group = 'org.algorithm_visualizer'
7-
version = '2.2.0'
7+
version = '2.3.0'
88
sourceCompatibility = 1.8
99

1010
repositories {

‎src/main/java/org/algorithm_visualizer/Commander.java

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ private static class Command {
3838
private static int objectCount = 0;
3939
private static ArrayList<Command> commands = new ArrayList<>();
4040

41-
privatestatic void command(String key, String method, Object[] args) {
41+
static void command(String key, String method, Object[] args) {
4242
commands.add(new Command(
4343
key,
4444
method,
@@ -50,18 +50,6 @@ private static void command(String key, String method, Object[] args) {
5050
throw new Error("Too Many Objects");
5151
}
5252

53-
public static void setRoot(Commander child) {
54-
command(null, "setRoot", new Object[]{child});
55-
}
56-
57-
public static void delay(int lineNumber) {
58-
command(null, "delay", new Object[]{lineNumber});
59-
}
60-
61-
public static void delay() {
62-
command(null, "delay", new Object[]{});
63-
}
64-
6553
private final String key;
6654

6755
Commander(Object[] args) {
@@ -81,9 +69,9 @@ void command(String method, Object[] args) {
8169
}
8270

8371
static {
84-
GsonBuilder gsonBuilder = new GsonBuilder();
72+
GsonBuilder gsonBuilder = new GsonBuilder().serializeNulls();
8573
JsonSerializer<Commander> serializer = (src, typeOfSrc, context) -> new JsonPrimitive(src.key);
86-
gsonBuilder.registerTypeAdapter(Commander.class, serializer);
74+
gsonBuilder.registerTypeHierarchyAdapter(Commander.class, serializer);
8775
gson = gsonBuilder.create();
8876

8977
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package org.algorithm_visualizer;
2+
3+
public class HorizontalLayout extends Layout {
4+
public HorizontalLayout(Commander[] children) {
5+
super(children);
6+
}
7+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package org.algorithm_visualizer;
2+
3+
public abstract class Layout extends Commander {
4+
public static void setRoot(Commander child) {
5+
command(null, "setRoot", new Object[]{child});
6+
}
7+
8+
public Layout(Commander[] children) {
9+
super(new Object[]{children});
10+
}
11+
12+
public void add(Commander child, int index) {
13+
command("add", new Object[]{child, index});
14+
}
15+
16+
public void add(Commander child) {
17+
command("add", new Object[]{child});
18+
}
19+
20+
public void remove(Commander child) {
21+
command("remove", new Object[]{child});
22+
}
23+
24+
public void removeAll() {
25+
command("removeAll", new Object[]{});
26+
}
27+
}

‎src/main/java/org/algorithm_visualizer/Tracer.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
11
package org.algorithm_visualizer;
22

33
public abstract class Tracer extends Commander {
4+
public static void delay(int lineNumber) {
5+
command(null, "delay", new Object[]{lineNumber});
6+
}
7+
8+
public static void delay() {
9+
command(null, "delay", new Object[]{});
10+
}
11+
412
public Tracer(String title) {
513
super(new Object[]{title});
614
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package org.algorithm_visualizer;
2+
3+
public class VerticalLayout extends Layout {
4+
public VerticalLayout(Commander[] children) {
5+
super(children);
6+
}
7+
}

‎src/test/java/org/algorithm_visualizer/Test.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
class Test {
44
public static void main(String[] args) {
5-
ChartTracer chartTracer = new ChartTracer<>();
6-
chartTracer.set(new Object[]{}).myMethod();
5+
ChartTracer chartTracer = new ChartTracer();
6+
chartTracer.set(new Object[]{});
7+
Layout.setRoot(new VerticalLayout(new Commander[]{chartTracer}));
78
}
89
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /