aboutsummaryrefslogtreecommitdiff
path: root/src/share/demo/applets/Blink/Blink.java
diff options
context:
space:
mode:
authormrkam <none@none>2011-03-25 17:52:51 +0100
committermrkam <none@none>2011-03-25 17:52:51 +0100
commit34e0ebd268f5c473d3eaf43f9aedc02e1707261b (patch)
tree273e32451ff042ced4108f302b426aa29c8f2247 /src/share/demo/applets/Blink/Blink.java
parentf3fe7b7272e1cbdf239b90884d412328af85af04 (diff)
downloadjdk8u_jdk-34e0ebd268f5c473d3eaf43f9aedc02e1707261b.tar.gz
7027675: /applets/Blink demo needs to be improved
Reviewed-by: alexp
Diffstat (limited to 'src/share/demo/applets/Blink/Blink.java')
-rw-r--r--src/share/demo/applets/Blink/Blink.java68
1 files changed, 41 insertions, 27 deletions
diff --git a/src/share/demo/applets/Blink/Blink.java b/src/share/demo/applets/Blink/Blink.java
index 3495dc9ef0..ab6f9795cc 100644
--- a/src/share/demo/applets/Blink/Blink.java
+++ b/src/share/demo/applets/Blink/Blink.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -29,92 +29,106 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-/*
- */
/**
* I love blinking things.
*
* @author Arthur van Hoff
- * @modified 04/24/96 Jim Hagen use getBackground
- * @modified 02/05/98 Mike McCloskey removed use of deprecated methods
- * @modified 04/23/99 Josh Bloch, use timer instead of explicit multithreading.
- * @modified 07/10/00 Daniel Peek brought to code conventions, minor changes
+ * @author 04/24/96 Jim Hagen use getBackground
+ * @author 02/05/98 Mike McCloskey removed use of deprecated methods
+ * @author 04/23/99 Josh Bloch, use timer instead of explicit multithreading.
+ * @author 07/10/00 Daniel Peek brought to code conventions, minor changes
*/
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.FontMetrics;
+import java.awt.Graphics;
+import java.util.StringTokenizer;
+import java.util.Timer;
+import java.util.TimerTask;
-import java.awt.*;
-import java.util.*;
public class Blink extends java.applet.Applet {
+
+ private static final long serialVersionUID = -775844794477507646L;
private Timer timer; // Schedules the blinking
private String labelString; // The label for the window
private int delay; // the delay time between blinks
+ @Override
public void init() {
String blinkFrequency = getParameter("speed");
- delay = (blinkFrequency == null) ? 400 :
- (1000 / Integer.parseInt(blinkFrequency));
+ delay = (blinkFrequency == null) ? 400
+ : (1000 / Integer.parseInt(blinkFrequency));
labelString = getParameter("lbl");
- if (labelString == null)
+ if (labelString == null) {
labelString = "Blink";
+ }
Font font = new java.awt.Font("Serif", Font.PLAIN, 24);
setFont(font);
}
+ @Override
public void start() {
timer = new Timer(); //creates a new timer to schedule the blinking
timer.schedule(new TimerTask() { //creates a timertask to schedule
+
// overrides the run method to provide functionality
+ @Override
public void run() {
repaint();
}
- }
- , delay, delay);
+ }, delay, delay);
}
+ @Override
public void paint(Graphics g) {
int fontSize = g.getFont().getSize();
int x = 0, y = fontSize, space;
- int red = (int) ( 50 * Math.random());
- int green = (int) ( 50 * Math.random());
- int blue = (int) (256 * Math.random());
+ int red = (int) (50 * Math.random());
+ int green = (int) (50 * Math.random());
+ int blue = (int) (256 * Math.random());
Dimension d = getSize();
g.setColor(Color.black);
FontMetrics fm = g.getFontMetrics();
space = fm.stringWidth(" ");
for (StringTokenizer t = new StringTokenizer(labelString);
- t.hasMoreTokens();) {
+ t.hasMoreTokens();) {
String word = t.nextToken();
int w = fm.stringWidth(word) + space;
if (x + w > d.width) {
x = 0;
y += fontSize; //move word to next line if it doesn't fit
}
- if (Math.random() < 0.5)
- g.setColor(new java.awt.Color((red + y*30) % 256,
- (green + x/3) % 256, blue));
- else
+ if (Math.random() < 0.5) {
+ g.setColor(new java.awt.Color((red + y * 30) % 256,
+ (green + x / 3) % 256, blue));
+ } else {
g.setColor(getBackground());
+ }
g.drawString(word, x, y);
x += w; //shift to the right to draw the next word
}
}
+ @Override
public void stop() {
timer.cancel(); //stops the timer
}
+ @Override
public String getAppletInfo() {
return "Title: Blinker\n"
- + "Author: Arthur van Hoff\n"
- + "Displays multicolored blinking text.";
+ + "Author: Arthur van Hoff\n"
+ + "Displays multicolored blinking text.";
}
+ @Override
public String[][] getParameterInfo() {
String pinfo[][] = {
- {"speed", "string", "The blink frequency"},
- {"lbl", "string", "The text to blink."},
- };
+ { "speed", "string", "The blink frequency" },
+ { "lbl", "string", "The text to blink." }, };
return pinfo;
}
}