1
2 package net.phbwt.jtans.guimain;
3
4 import javax.swing;
5 import java.util;
6
7 /**
8 * quick and (very) dirty status bar.
9 */
10
11 class StatusBar extends JLabel {
12
13 private String[] messages;
14 private int currentLevel = -1;
15
16 StatusBar(int max) {
17 messages = new String[max];
18 }
19
20 public void setMessage(int level, String message) {
21
22 // long time = System.currentTimeMillis();
23
24 messages[level] = message;
25
26 if ( message == null ) {
27 if (level >= currentLevel) {
28 for (currentLevel = level - 1; currentLevel >= 0 && messages[currentLevel] == null; currentLevel--);
29 super.setText(currentLevel >= 0 ? messages[currentLevel] : "jTans");
30 }
31 } else {
32 if (level >= currentLevel) {
33 currentLevel = level;
34 super.setText(message);
35 }
36 }
37
38 // time = System.currentTimeMillis() - time;
39 // System.out.println("status set time" + time);
40 }
41
42 public void setText(String txt) {
43 currentLevel = -1;
44 super.setText(txt);
45 }
46 }