From d4c1ddcc90c1e2e8660598fc36b3772d2bff6816 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Thu, 15 May 2008 23:08:33 +0000 Subject: 1 Moved the stuff to trunk! --- sources/simulator/VSLogging.java | 57 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 sources/simulator/VSLogging.java (limited to 'sources/simulator/VSLogging.java') diff --git a/sources/simulator/VSLogging.java b/sources/simulator/VSLogging.java new file mode 100644 index 0000000..c65198b --- /dev/null +++ b/sources/simulator/VSLogging.java @@ -0,0 +1,57 @@ +package simulator; + +import javax.swing.*; +import java.util.*; + +import utils.*; + +public class VSLogging { + private JTextArea loggingArea; + private VSSimulationPanel simulationPanel; + private volatile boolean isPaused; + private StringBuffer pauseBuffer; + + public VSLogging() { + loggingArea = new JTextArea(0, 0); + loggingArea.setEditable(false); + pauseBuffer = new StringBuffer(); + } + + public void setSimulationPanel(VSSimulationPanel simulationPanel) { + this.simulationPanel = simulationPanel; + } + + public JTextArea getLoggingArea() { + return loggingArea; + } + + public void logg(String message) { + if (simulationPanel == null) + logg(message, 0); + else + logg(message, simulationPanel.getTime()); + } + + public void logg(String message, long time) { + if (isPaused) { + pauseBuffer.append(VSTools.getTimeString(time)); + pauseBuffer.append(": "); + pauseBuffer.append(message); + pauseBuffer.append("\n"); + + } else { + loggingArea.append(VSTools.getTimeString(time) + ": " + message + "\n"); + loggingArea.setCaretPosition(loggingArea.getDocument().getLength()); + } + } + + public void isPaused(boolean isPaused) { + this.isPaused = isPaused; + + if (!isPaused) { + loggingArea.append(pauseBuffer.toString()); + loggingArea.setCaretPosition(loggingArea.getDocument().getLength()); + pauseBuffer.delete(0, pauseBuffer.length()); + } + } +} -- cgit v1.2.3