Skip to content

Commit 917d483

Browse files
javier-godoymlopezFC
authored andcommitted
refactor(demo): refactor parsing of commands with arguments
1 parent 5fb51d8 commit 917d483

File tree

1 file changed

+18
-10
lines changed

1 file changed

+18
-10
lines changed

src/test/java/com/flowingcode/vaadin/addons/xterm/XtermDemoView.java

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public XtermDemoView() {
4646

4747
xterm = new XTerm();
4848
xterm.writeln("xterm add-on by Flowing Code S.A.\n\n");
49-
xterm.writeln("Commands: time, date, beep, color on, color off, history\n");
49+
xterm.writeln("Commands: time, date, beep, color, history\n");
5050
xterm.setCursorBlink(true);
5151
xterm.setCursorStyle(CursorStyle.UNDERLINE);
5252
xterm.setBellStyle(BellStyle.SOUND);
@@ -62,7 +62,8 @@ public XtermDemoView() {
6262

6363
xterm.addLineListener(
6464
ev -> {
65-
switch (ev.getLine().toLowerCase()) {
65+
String[] line = ev.getLine().toLowerCase().split("\\s+",2);
66+
switch (line[0]) {
6667
case "time":
6768
xterm.writeln(
6869
LocalTime.now()
@@ -75,14 +76,21 @@ public XtermDemoView() {
7576
case "beep":
7677
xterm.write("\u0007");
7778
break;
78-
case "color on":
79-
xterm.setTheme(
80-
new TerminalTheme()
81-
.withBackground("rgb(103,195,228)")
82-
.withForeground("rgb(0,0,0)"));
83-
break;
84-
case "color off":
85-
xterm.setTheme(new TerminalTheme());
79+
case "color":
80+
if (line.length>1) {
81+
if (line[1].equals("on")) {
82+
xterm.setTheme(
83+
new TerminalTheme()
84+
.withBackground("rgb(103,195,228)")
85+
.withForeground("rgb(0,0,0)"));
86+
break;
87+
} else if (line[1].equals("off")) {
88+
xterm.setTheme(new TerminalTheme());
89+
break;
90+
}
91+
}
92+
xterm.writeln("color on: use TI-99/4A palette");
93+
xterm.writeln("color off: use default palette");
8694
break;
8795
case "history":
8896
showHistory();

0 commit comments

Comments
 (0)