From 9230d709b42164f1e0670a2bf6a586cf27f7c687 Mon Sep 17 00:00:00 2001 From: Branislav Stojkovic Date: Wed, 12 Mar 2025 15:59:22 +0100 Subject: [PATCH] fixes for ascii --- .../netlist/AbstractNetlistAnalyzer.java | 1 + .../org/diylc/netlist/MultimeterAnalyzer.java | 19 +++++++++++-------- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/diylc/diylc-core/src/main/java/org/diylc/netlist/AbstractNetlistAnalyzer.java b/diylc/diylc-core/src/main/java/org/diylc/netlist/AbstractNetlistAnalyzer.java index 24ce51d4..a56091b5 100644 --- a/diylc/diylc-core/src/main/java/org/diylc/netlist/AbstractNetlistAnalyzer.java +++ b/diylc/diylc-core/src/main/java/org/diylc/netlist/AbstractNetlistAnalyzer.java @@ -41,6 +41,7 @@ public abstract class AbstractNetlistAnalyzer { } List res = new ArrayList(summaries.values()); + res.forEach(summary -> NetlistBuilder.cleanupRedundantSwitches(summary.getNetlist().getSwitchSetup())); Collections.sort(res); return res; } diff --git a/diylc/diylc-library/src/main/java/org/diylc/netlist/MultimeterAnalyzer.java b/diylc/diylc-library/src/main/java/org/diylc/netlist/MultimeterAnalyzer.java index 0080ccbf..fa90ab8c 100644 --- a/diylc/diylc-library/src/main/java/org/diylc/netlist/MultimeterAnalyzer.java +++ b/diylc/diylc-library/src/main/java/org/diylc/netlist/MultimeterAnalyzer.java @@ -18,10 +18,7 @@ */ package org.diylc.netlist; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Set; +import java.util.*; import javax.swing.JLabel; import org.diylc.common.INetlistAnalyzer; import org.diylc.components.connectivity.MultimeterProbe; @@ -61,10 +58,15 @@ public class MultimeterAnalyzer extends AbstractNetlistAnalyzer implements INetl String asciiTree = tree.toAsciiString(); - sb.append("

") - .append("") - .append(asciiTree) - .append(""); + if (asciiTree.trim().isEmpty()) { + notes.add("No connection detected"); + } else { + sb.append("

") + .append("") + .append(asciiTree) + .append(""); + } + if (!notes.isEmpty()) { Collections.sort(notes); sb.append("

"); @@ -85,6 +87,7 @@ public class MultimeterAnalyzer extends AbstractNetlistAnalyzer implements INetl throw new TreeException( "Place exactly two multimeter probes on the circuit in order to run the analysis."); } else { + probeNodes.sort(Comparator.comparing(n -> n.getDisplayName())); return constructTreeBetween(netlist, probeNodes.get(0), probeNodes.get(1)); } }