From a0a74a7dabb6f328370949086bec214e6a28fafe Mon Sep 17 00:00:00 2001 From: hneemann Date: Fri, 31 Mar 2017 16:35:15 +0200 Subject: [PATCH] fixed flicker if component tree view is enabled or disabled. --- src/main/java/de/neemann/digital/gui/Main.java | 2 +- .../de/neemann/digital/gui/components/CircuitComponent.java | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/neemann/digital/gui/Main.java b/src/main/java/de/neemann/digital/gui/Main.java index a33ac5856..76600b507 100644 --- a/src/main/java/de/neemann/digital/gui/Main.java +++ b/src/main/java/de/neemann/digital/gui/Main.java @@ -324,7 +324,7 @@ public class Main extends JFrame implements ClosingWindowListener.ConfirmSave, E getContentPane().add(circuitComponent); componentOnPane = circuitComponent; } - pack(); + revalidate(); }); toolBar.add(viewHelp.createJButtonNoText()); diff --git a/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java b/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java index e6a66a1e1..3a90c89ec 100644 --- a/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java +++ b/src/main/java/de/neemann/digital/gui/components/CircuitComponent.java @@ -438,6 +438,9 @@ public class CircuitComponent extends JComponent implements Circuit.ChangedListe || getWidth() != buffer.getWidth() || getHeight() != buffer.getHeight(); + if (needsNewBuffer && !isManualScale) + fitCircuit(); + if (hasChanged || needsNewBuffer || highLighted.size() != highlightedPaintedSize) { @@ -455,7 +458,7 @@ public class CircuitComponent extends JComponent implements Circuit.ChangedListe circuit.drawTo(gr, highLighted, modelSync); highlightedPaintedSize = highLighted.size(); hasChanged = false; -// LOGGER.debug("repaint: " + Long.toString(System.currentTimeMillis() - time) + "ms"); +// System.out.println("repaint: " + Long.toString(System.currentTimeMillis() - time) + "ms"); } g.drawImage(buffer, 0, 0, null);