Mercurial > ScreenAdjuster
annotate ScreenAdjuster.java @ 4:265f66a2f14f
Doublebuffering.
| author | Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no> |
|---|---|
| date | Tue, 14 Jul 2015 15:54:01 +0200 |
| parents | 77e2655ac09d |
| children | 09dcc2e5058a |
| rev | line source |
|---|---|
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
1 import javax.swing.*; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
2 import java.awt.*; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
3 import java.awt.event.*; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
4 import java.awt.font.*; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
5 import java.awt.geom.*; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
6 import java.util.*; |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
7 import java.awt.image.*; |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
8 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
9 class ScreenAdjuster extends JFrame implements ActionListener |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
10 { |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
11 final float TIMEOUT_IN_SECONDS = 2.5f; |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
12 int frameNumber = -1; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
13 Vector<String> messageText = null; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
14 Color backgroundColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
15 Color foregroundColor; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
16 Color outlineColor; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
17 boolean messageVisible = false; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
18 boolean messageOutline = false; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
19 boolean messageBBox = false; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
20 |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
21 BufferedImage bufferedImage; |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
22 Graphics2D g2; |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
23 Rectangle curBounds; |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
24 |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
25 enum MessageStatus { TIMEOUT, SHOW, HIDE }; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
26 |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
27 javax.swing.Timer messageTimeout = |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
28 new javax.swing.Timer((int)(TIMEOUT_IN_SECONDS * 1000), this); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
29 |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
30 void resetSize() |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
31 { |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
32 Rectangle bounds = getBounds(); |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
33 if (!bounds.equals(curBounds)) { |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
34 bufferedImage = new BufferedImage(bounds.width, bounds.height, BufferedImage.TYPE_INT_ARGB); |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
35 g2 = bufferedImage.createGraphics(); |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
36 curBounds = bounds; |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
37 } |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
38 } |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
39 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
40 ScreenAdjuster(boolean fullScreen) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
41 { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
42 messageTimeout.setRepeats(false); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
43 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
44 nextFrame(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
45 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
46 if (fullScreen) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
47 setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
48 setUndecorated(true); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
49 //setResizable(false); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
50 /* |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
51 Rectangle bounds = getBounds(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
52 setBounds(bounds.x,bounds.y,200,200); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
53 setVisible(true); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
54 */ |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
55 /* |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
56 fullscreenFrame.add(new JLabel("Press ALT+F4 to exit fullscreen.", |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
57 SwingConstants.CENTER), |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
58 BorderLayout.CENTER); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
59 */ |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
60 validate(); |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
61 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
62 setVisible(true); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
63 GraphicsEnvironment.getLocalGraphicsEnvironment() |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
64 .getDefaultScreenDevice().setFullScreenWindow(this); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
65 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
66 else { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
67 Rectangle bounds = getBounds(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
68 setBounds(bounds.x,bounds.y,200,200); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
69 setVisible(true); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
70 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
71 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
72 enableEvents(AWTEvent.KEY_EVENT_MASK); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
73 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
74 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
75 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
76 public void actionPerformed(ActionEvent evt) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
77 { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
78 messageVisible = false; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
79 repaint(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
80 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
81 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
82 protected void processKeyEvent(KeyEvent e) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
83 { |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
84 int increase = 1; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
85 MessageStatus messageStatus = MessageStatus.TIMEOUT; |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
86 if (e.getID() == KeyEvent.KEY_PRESSED) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
87 Log.DEFAULT.println(e.paramString()); |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
88 if (e.getKeyCode() == KeyEvent.VK_Q) { |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
89 System.exit(0); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
90 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
91 if (e.getKeyCode() == KeyEvent.VK_BACK_SPACE) { |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
92 increase = -1; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
93 } |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
94 else if (e.getKeyCode() == KeyEvent.VK_S) { |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
95 messageTimeout.stop(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
96 increase = 0; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
97 messageStatus = MessageStatus.SHOW; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
98 } |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
99 else if (e.getKeyCode() == KeyEvent.VK_H) { |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
100 messageTimeout.stop(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
101 increase = 0; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
102 messageStatus = MessageStatus.HIDE; |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
103 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
104 Log.DEFAULT.println(e.getKeyText(e.getKeyCode())); |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
105 displayFrame(increase, messageStatus); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
106 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
107 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
108 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
109 static Color complementary(Color in) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
110 { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
111 if (in != null) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
112 float hsb [] = Color.RGBtoHSB(in.getRed(), |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
113 in.getGreen(), |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
114 in.getBlue(), null); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
115 return Color.getHSBColor(hsb[0], hsb[1], 1 - hsb[2]); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
116 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
117 return Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
118 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
119 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
120 void nextFrame() |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
121 { |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
122 displayFrame(1, MessageStatus.TIMEOUT); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
123 } |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
124 |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
125 void displayFrame(int increase, MessageStatus messageStatus) |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
126 { |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
127 int numFrames = this.numFrames(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
128 frameNumber = (frameNumber + increase + numFrames) % numFrames; |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
129 foregroundColor = null; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
130 backgroundColor = null; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
131 outlineColor = null; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
132 messageText = new Vector<String>(0); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
133 messageBBox = false; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
134 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
135 switch (frameNumber) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
136 case 0: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
137 messageText.add("This screen should appear all BLACK!"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
138 messageText.add("Please check for any dead pixels."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
139 messageText.add(""); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
140 messageText.add("Appart from this, please use this opportunity to clean your screen."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
141 backgroundColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
142 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
143 case 1: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
144 messageText.add("This screen should appear all WHITE!"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
145 messageText.add("Please check for any dead pixels."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
146 messageText.add(""); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
147 messageText.add("Appart from this, please use this opportunity to clean your screen."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
148 backgroundColor = Color.WHITE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
149 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
150 case 2: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
151 messageText.add("This screen should appear all RED!"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
152 messageText.add("Please check for any dead pixels."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
153 backgroundColor = Color.RED; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
154 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
155 case 3: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
156 messageText.add("This screen should appear all GREEN!"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
157 messageText.add("Please check for any dead pixels."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
158 backgroundColor = Color.GREEN; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
159 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
160 case 4: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
161 messageText.add("This screen should appear all BLUE!"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
162 messageText.add("Please check for any dead pixels."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
163 backgroundColor = Color.BLUE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
164 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
165 case 5: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
166 messageText.add("This screen contains vertical stripes"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
167 messageText.add("Please adjust your screen so they are perfectly vertical"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
168 messageText.add(""); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
169 messageText.add("(Primarily applies to CRT screens)"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
170 foregroundColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
171 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
172 case 6: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
173 messageText.add("This screen contains horizontal stripes"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
174 messageText.add("Please adjust your screen so they are perfectly horizontal"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
175 messageText.add(""); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
176 messageText.add("(Primarily applies to CRT screens)"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
177 foregroundColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
178 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
179 case 7: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
180 messageText.add("This screen contains a chess pattern"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
181 messageText.add("Please adjust your screen so the pattern is perfectly horizontal and vertical"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
182 messageText.add(""); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
183 messageText.add("(Primarily applies to CRT screens)"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
184 foregroundColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
185 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
186 case 8: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
187 messageText.add("This screen should be all black, with a hairline yellow border"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
188 messageText.add("Please adjust your screen so the border is perfectly aligned with the sides of your screen"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
189 backgroundColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
190 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
191 case 9: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
192 messageText.add("This screen contains a round circle"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
193 messageText.add("Please adjust your screen so that the aspect ratio makes this perfectly round."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
194 foregroundColor = Color.WHITE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
195 backgroundColor = Color.WHITE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
196 outlineColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
197 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
198 case 10: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
199 messageText.add("This screen contains a medium size chess pattern"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
200 messageText.add("Please adjust your brightness and contrast."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
201 foregroundColor = Color.RED; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
202 backgroundColor = Color.WHITE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
203 outlineColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
204 messageBBox = true; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
205 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
206 case 11: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
207 messageText.add("This screen contains a pixel size chess pattern"); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
208 messageText.add("Please adjust your brightness and contrast."); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
209 foregroundColor = Color.RED; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
210 backgroundColor = Color.WHITE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
211 outlineColor = Color.BLACK; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
212 messageBBox = true; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
213 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
214 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
215 messageTimeout.stop(); |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
216 messageVisible = !(messageStatus == MessageStatus.HIDE); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
217 |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
218 if (messageStatus == MessageStatus.TIMEOUT) |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
219 messageTimeout.start(); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
220 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
221 if (foregroundColor == null) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
222 foregroundColor = complementary(backgroundColor); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
223 //messageText.setForeground(foregroundColor); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
224 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
225 repaint(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
226 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
227 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
228 int numFrames() |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
229 { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
230 return 12; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
231 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
232 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
233 public static final void main(final String[] args) throws Exception |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
234 { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
235 UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
236 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
237 Log.DEFAULT = new Log(new VoidStream()); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
238 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
239 boolean fullscreen = true; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
240 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
241 if (args.length >= 1) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
242 fullscreen = false; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
243 } |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
244 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
245 final JFrame fullscreenFrame = new ScreenAdjuster(fullscreen); |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
246 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
247 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
248 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
249 public static void paintCheckers(Graphics g, Rectangle bounds, int size, int numColors, int mode, boolean alternativeColors) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
250 { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
251 Rectangle cbounds = g.getClipBounds(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
252 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
253 g.setColor(Color.WHITE); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
254 g.fillRect(bounds.x, bounds.y, bounds.width, bounds.height); |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
255 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
256 //Offset xmin by 1, if cliparea is on an odd boundary |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
257 int xmin = bounds.x; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
258 int xmax = bounds.x + bounds.width; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
259 int ymin = bounds.y; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
260 int ymax = bounds.y + bounds.height; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
261 int hcolor = -1; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
262 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
263 Color colors[] = { Color.BLACK, Color.RED, |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
264 Color.GREEN, Color.BLUE, Color.WHITE }; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
265 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
266 if (numColors <= 2) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
267 if (alternativeColors) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
268 colors[0] = Color.YELLOW; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
269 colors[1] = Color.BLUE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
270 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
271 else { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
272 colors[1] = Color.WHITE; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
273 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
274 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
275 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
276 g.setColor(Color.BLACK); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
277 for (int x = xmin; x < xmax; x += size) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
278 if ((mode & 0x1) > 0) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
279 hcolor = (hcolor + 1) % numColors; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
280 int color = hcolor; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
281 for (int y = ymin; y < ymax; y += size) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
282 if ((mode & 0x2) > 0) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
283 color = (color + 1) % numColors; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
284 g.setColor(colors[color]); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
285 g.fillRect(x, y, size, size); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
286 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
287 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
288 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
289 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
290 public void paint(Graphics g) |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
291 { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
292 resetSize(); |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
293 super.paint(g2); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
294 Rectangle cbounds = g.getClipBounds(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
295 Rectangle bounds = getBounds(); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
296 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
297 Log.DEFAULT.println(frameNumber); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
298 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
299 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
300 if (backgroundColor != null) { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
301 g2.setColor(backgroundColor); |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
302 g2.fillRect(bounds.x, bounds.y, bounds.width, bounds.height); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
303 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
304 |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
305 switch (frameNumber) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
306 case 0: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
307 case 1: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
308 case 2: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
309 case 3: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
310 case 4: |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
311 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
312 case 11: { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
313 g2.setColor(Color.BLACK); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
314 //Offset xmin by 1, if cliparea is on an odd boundary |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
315 int xmin = cbounds.x + ((cbounds.x - bounds.x) & 0x1); |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
316 int xmax = cbounds.x + cbounds.width; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
317 for (int x = xmin; x < xmax; x += 2) { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
318 g2.drawLine(x, bounds.y, x, bounds.y + bounds.height); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
319 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
320 for (int y = bounds.y; y < bounds.y + bounds.height; y += 2) { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
321 g2.drawLine(bounds.x, y, bounds.x + bounds.width, y); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
322 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
323 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
324 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
325 case 7: { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
326 paintCheckers(g2, bounds, 50, 2, 3, true); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
327 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
328 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
329 case 10: { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
330 paintCheckers(g2, bounds, 5, 2, 3, false); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
331 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
332 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
333 case 9: { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
334 int x = bounds.x; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
335 int y = bounds.y; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
336 int height = bounds.height - y; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
337 int width = bounds.width - x; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
338 int diameter; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
339 if (height < width) { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
340 diameter = height; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
341 x += (width - height) /2; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
342 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
343 else { |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
344 diameter = width; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
345 y += (height - width) /2; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
346 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
347 Log.DEFAULT.println("Geometry:"+bounds.x+"x"+bounds.y+":"+bounds.width + "x" + bounds.height); |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
348 g2.setColor(Color.BLACK); |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
349 g2.fillOval(x, y, diameter, diameter); |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
350 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
351 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
352 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
353 case 8: { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
354 g2.setColor(Color.YELLOW); |
|
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
355 g2.drawRect(bounds.x+1, bounds.y+1, bounds.width-2, bounds.height-2); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
356 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
357 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
358 case 5: { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
359 paintCheckers(g2, bounds, 50, 2, 2, true); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
360 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
361 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
362 case 6: { |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
363 paintCheckers(g2, bounds, 50, 2, 1, true); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
364 break; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
365 } |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
366 }; |
|
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
367 if (messageVisible) { |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
368 drawMessage(g2); |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
369 } |
|
4
265f66a2f14f
Doublebuffering.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
2
diff
changeset
|
370 ((Graphics2D) g).drawImage(bufferedImage, null, 0, 0); |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
371 } |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
372 |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
373 void drawMessage(Graphics2D g2) |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
374 { |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
375 Font font = g2.getFont(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
376 Rectangle bounds = getBounds(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
377 |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
378 font = new Font(font.getFontName(), |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
379 font.getStyle(), |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
380 (int)(font.getSize2D() * 2)); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
381 double fontHeight = font.getMaxCharBounds(g2.getFontRenderContext()).getHeight(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
382 double totalHeight = fontHeight * messageText.size(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
383 double y = (bounds.height - totalHeight) /2.0; |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
384 |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
385 for (int i = 0; i < messageText.size(); ++i) { |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
386 String text = messageText.get(i); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
387 if (text.length() > 0 ) { |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
388 TextLayout tl = |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
389 new TextLayout(messageText.get(i), |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
390 font, g2.getFontRenderContext()); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
391 double textWidth = tl.getBounds().getWidth(); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
392 double x = (bounds.width - textWidth) /2.0; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
393 |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
394 Shape outline = |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
395 tl.getOutline(AffineTransform.getTranslateInstance(x,y)); |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
396 |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
397 Rectangle tBounds = outline.getBounds(); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
398 |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
399 if (messageBBox) { |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
400 g2.setColor(backgroundColor); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
401 g2.fillRect(tBounds.x, tBounds.y, tBounds.width, tBounds.height); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
402 } |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
403 g2.setColor(foregroundColor); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
404 g2.fill(outline); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
405 if (outlineColor != null) { |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
406 g2.setColor(outlineColor); |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
407 } |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
408 g2.draw(outline); |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
409 } |
|
1
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
410 y += fontHeight; |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
411 } |
|
c5bdb7bee4a7
Refactor displayMessage.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
0
diff
changeset
|
412 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
413 } |
|
2
77e2655ac09d
Whitespace clean.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
1
diff
changeset
|
414 |
|
0
855307f4bf5e
Working version.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
415 } |
