source: release-kits/wirk3/bin/launch4j/src/net/sf/launch4j/Log.java@ 15023

Last change on this file since 15023 was 15023, checked in by oranfry, 16 years ago

did the bulk of the work on wirk3

File size: 2.2 KB
Line 
1/*
2 Launch4j (http://launch4j.sourceforge.net/)
3 Cross-platform Java application wrapper for creating Windows native executables.
4
5 Copyright (C) 2004, 2006 Grzegorz Kowal
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program; if not, write to the Free Software
19 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20*/
21
22/*
23 * Created on May 12, 2005
24 */
25package net.sf.launch4j;
26
27import javax.swing.JTextArea;
28import javax.swing.SwingUtilities;
29
30/**
31 * @author Copyright (C) 2005 Grzegorz Kowal
32 */
33public abstract class Log {
34 private static final Log _consoleLog = new ConsoleLog();
35 private static final Log _antLog = new AntLog();
36
37 public abstract void clear();
38 public abstract void append(String line);
39
40 public static Log getConsoleLog() {
41 return _consoleLog;
42 }
43
44 public static Log getAntLog() {
45 return _antLog;
46 }
47
48 public static Log getSwingLog(JTextArea textArea) {
49 return new SwingLog(textArea);
50 }
51}
52
53class ConsoleLog extends Log {
54 public void clear() {
55 System.out.println("\n");
56 }
57
58 public void append(String line) {
59 System.out.println("launch4j: " + line);
60 }
61}
62
63class AntLog extends Log {
64 public void clear() {
65 System.out.println("\n");
66 }
67
68 public void append(String line) {
69 System.out.println(line);
70 }
71}
72
73class SwingLog extends Log {
74 private final JTextArea _textArea;
75
76 public SwingLog(JTextArea textArea) {
77 _textArea = textArea;
78 }
79
80 public void clear() {
81 SwingUtilities.invokeLater(new Runnable() {
82 public void run() {
83 _textArea.setText("");
84 }});
85 }
86
87 public void append(final String line) {
88 SwingUtilities.invokeLater(new Runnable() {
89 public void run() {
90 _textArea.append(line + "\n");
91 }});
92 }
93}
Note: See TracBrowser for help on using the repository browser.