import objectdraw.*; import java.awt.*; /* program which allows you to draw continuous lines on the screen; program chooses a new color for the user every time they begin a new scribble */ public class ColorScribble extends WindowController{ // first endpoint of next line segment private Location nextLineStarts; // allows for selection of random r, g, b values private RandomIntGenerator colorPicker; // the current color for drawing private Color currentColor; // create a generator of r, g, b values public void begin(){ colorPicker = new RandomIntGenerator(0, 255); } // save the starting endpoint of the first line // and set the current color public void onMousePress(Location point){ // select random r, g, b values int redness = colorPicker.nextValue(); int greenness = colorPicker.nextValue(); int blueness = colorPicker.nextValue(); // create a new color from them currentColor = new Color(redness, greenness, blueness); // save the starting point of the first line to be drawn nextLineStarts = point; } // draw lines as the user is drags the mouse about public void onMouseDrag(Location point){ new Line(nextLineStarts, point, canvas).setColor(currentColor); nextLineStarts = point; } }