From 6441290057d447fb7983fd46b0e8795358444b5c Mon Sep 17 00:00:00 2001 From: bruch-alex Date: Fri, 18 Oct 2024 09:08:55 +0200 Subject: [PATCH 1/2] set jdk version with single compile.release tag --- pom.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e6721d8..46acf49 100644 --- a/pom.xml +++ b/pom.xml @@ -8,8 +8,7 @@ sav 1.2 - 11 - 11 + 11 UTF-8 From fb5c57e84d13f8744350950c012557d36b2e1243 Mon Sep 17 00:00:00 2001 From: bruch-alex Date: Fri, 18 Oct 2024 09:22:17 +0200 Subject: [PATCH 2/2] delete JTerminal and code refactoring --- .idea/misc.xml | 2 +- pom.xml | 5 ----- src/main/java/algorithms/SortingAlgorithm.java | 12 ++++++------ src/main/java/ui/BubbleSort.java | 2 +- src/main/java/ui/HeapSort.java | 2 +- src/main/java/ui/InsertionSort.java | 2 +- src/main/java/ui/Menu.java | 6 ++---- src/main/java/ui/QuickSort.java | 2 +- src/main/java/ui/SelectionSort.java | 2 +- src/main/java/ui/UI.java | 2 -- src/main/java/ui/Utils.java | 10 +++++++--- 11 files changed, 21 insertions(+), 26 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index d24ea8e..e15bb0e 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -8,7 +8,7 @@ - + \ No newline at end of file diff --git a/pom.xml b/pom.xml index 46acf49..890b556 100644 --- a/pom.xml +++ b/pom.xml @@ -12,11 +12,6 @@ UTF-8 - - io.github.shuoros - JTerminal - 1.0.2 - org.jline jline diff --git a/src/main/java/algorithms/SortingAlgorithm.java b/src/main/java/algorithms/SortingAlgorithm.java index af02859..ccd0fb9 100644 --- a/src/main/java/algorithms/SortingAlgorithm.java +++ b/src/main/java/algorithms/SortingAlgorithm.java @@ -19,8 +19,8 @@ public SortingAlgorithm(ArrayList array) { public abstract void sort(); - public void printStatistics(String algorithmName) { - clearScreen(); + public void clearScreenAndPrintStatistics(String algorithmName) { + Utils.clearScreen(); Utils.printInCenter("========= " + algorithmName + " Statistics: =========", " "); String header = "+--------------------+--------------------+"; @@ -40,8 +40,8 @@ public void printStatistics(String algorithmName) { } - private static void clearScreen() { - System.out.print("\033[H\033[2J"); - System.out.flush(); - } +// private static void clearScreen() { +// System.out.print("\033[H\033[2J"); +// System.out.flush(); +// } } diff --git a/src/main/java/ui/BubbleSort.java b/src/main/java/ui/BubbleSort.java index 6d4740e..8285f14 100644 --- a/src/main/java/ui/BubbleSort.java +++ b/src/main/java/ui/BubbleSort.java @@ -8,7 +8,7 @@ protected static void start() { algorithms.BubbleSort algo = new algorithms.BubbleSort(array); algo.sort(); Utils.sleepALittle(2000); - algo.printStatistics("Bubble Sort"); + algo.clearScreenAndPrintStatistics("Bubble Sort"); Utils.sleepALittle(4000); } } diff --git a/src/main/java/ui/HeapSort.java b/src/main/java/ui/HeapSort.java index 1aeff6c..b00cdf9 100644 --- a/src/main/java/ui/HeapSort.java +++ b/src/main/java/ui/HeapSort.java @@ -8,7 +8,7 @@ public static void start(){ algorithms.HeapSort algo = new algorithms.HeapSort(array); algo.sort(); Utils.sleepALittle(2000); - algo.printStatistics("Heap Sort"); + algo.clearScreenAndPrintStatistics("Heap Sort"); Utils.sleepALittle(4000); } } diff --git a/src/main/java/ui/InsertionSort.java b/src/main/java/ui/InsertionSort.java index cca1eb4..30e7311 100644 --- a/src/main/java/ui/InsertionSort.java +++ b/src/main/java/ui/InsertionSort.java @@ -8,7 +8,7 @@ protected static void start() { algorithms.InsertionSort algo = new algorithms.InsertionSort(array); algo.sort(); Utils.sleepALittle(2000); - algo.printStatistics("Insertion Sort"); + algo.clearScreenAndPrintStatistics("Insertion Sort"); Utils.sleepALittle(2000); } } diff --git a/src/main/java/ui/Menu.java b/src/main/java/ui/Menu.java index ce6da21..363fdf5 100644 --- a/src/main/java/ui/Menu.java +++ b/src/main/java/ui/Menu.java @@ -1,12 +1,10 @@ package ui; -import io.github.shuoros.jterminal.JTerminal; - import static ui.UI.reader; class Menu { protected static void printOptions() { - JTerminal.clear(); + Utils.clearScreen(); Utils.printInCenter("AWESOME algorithm visualization app", "="); System.out.println("Select an option" + "\n" + @@ -44,7 +42,7 @@ protected static void handleOptions() { case "e": System.exit(0); default: - JTerminal.println("Wrong input"); + System.err.println("Wrong input"); break; } } diff --git a/src/main/java/ui/QuickSort.java b/src/main/java/ui/QuickSort.java index c732035..2a95eec 100644 --- a/src/main/java/ui/QuickSort.java +++ b/src/main/java/ui/QuickSort.java @@ -8,7 +8,7 @@ protected static void start() { algorithms.QuickSort algo = new algorithms.QuickSort(array); algo.sort(); Utils.sleepALittle(2000); - algo.printStatistics("Quick Sort"); + algo.clearScreenAndPrintStatistics("Quick Sort"); Utils.sleepALittle(2000); } } diff --git a/src/main/java/ui/SelectionSort.java b/src/main/java/ui/SelectionSort.java index 2f0d961..46c86a1 100644 --- a/src/main/java/ui/SelectionSort.java +++ b/src/main/java/ui/SelectionSort.java @@ -8,7 +8,7 @@ protected static void start() { algorithms.SelectionSort algo = new algorithms.SelectionSort(array); algo.sort(); Utils.sleepALittle(2000); - algo.printStatistics("Selection Sort"); + algo.clearScreenAndPrintStatistics("Selection Sort"); Utils.sleepALittle(2000); } } diff --git a/src/main/java/ui/UI.java b/src/main/java/ui/UI.java index 664d344..d720adc 100644 --- a/src/main/java/ui/UI.java +++ b/src/main/java/ui/UI.java @@ -1,6 +1,5 @@ package ui; -import io.github.shuoros.jterminal.JTerminal; import org.jline.reader.LineReader; import org.jline.terminal.Terminal; @@ -25,5 +24,4 @@ public void start() { } } - } diff --git a/src/main/java/ui/Utils.java b/src/main/java/ui/Utils.java index 9f0649a..f80e43c 100644 --- a/src/main/java/ui/Utils.java +++ b/src/main/java/ui/Utils.java @@ -1,6 +1,5 @@ package ui; -import io.github.shuoros.jterminal.JTerminal; import java.util.ArrayList; import java.util.Random; @@ -108,7 +107,7 @@ public static void clearArrayAndFillRandomly(ArrayList array, int width public static void printInCenter(String line, String symbolForFill) { int width = UI.terminal.getWidth(); int padding = ((width - line.length()) / 2); - JTerminal.println(symbolForFill.repeat(Math.max(0, padding)) + line + symbolForFill.repeat(Math.max(0, padding))); + System.out.println(symbolForFill.repeat(Math.max(0, padding)) + line + symbolForFill.repeat(Math.max(0, padding))); } /** @@ -118,7 +117,7 @@ public static void printInCenter(String line, String symbolForFill) { */ public static void prepareForSorting(String algorithm) { clearArrayAndFillRandomly(array, terminal.getWidth(), terminal.getHeight()); - JTerminal.clear(); + clearScreen(); printInCenter(algorithm, "="); displayVerticalArray(array); sleepALittle(3000); @@ -136,4 +135,9 @@ public static void sleepALittle(int sleepDuration) { throw new RuntimeException(e); } } + + public static void clearScreen() { + System.out.print("\033[H\033[2J"); + System.out.flush(); + } } \ No newline at end of file