001 package nl.cwi.sen1.gui.plugin; 002 003 import java.awt.BorderLayout; 004 import java.awt.Frame; 005 import java.awt.Insets; 006 007 import javax.swing.JDialog; 008 import javax.swing.JPanel; 009 import javax.swing.JScrollPane; 010 import javax.swing.JTextArea; 011 012 public class ProgressList extends JDialog { 013 private JTextArea taskOutput; 014 015 private String newline = "\n"; 016 017 public ProgressList(Frame owner, String title, boolean modal) { 018 super(owner, title, modal); 019 taskOutput = new JTextArea(10, 60); 020 taskOutput.setMargin(new Insets(5, 5, 5, 5)); 021 taskOutput.setEditable(false); 022 023 JPanel panel = new JPanel(); 024 025 getContentPane().add(panel, BorderLayout.PAGE_START); 026 getContentPane().add(new JScrollPane(taskOutput), BorderLayout.CENTER); 027 setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); 028 pack(); 029 } 030 031 public void addMessage(String message) { 032 taskOutput.append(message + newline); 033 taskOutput.setCaretPosition(taskOutput.getDocument().getLength()); 034 } 035 }