/** Assignment:  Modify this file (previously SimpleApplet5)
 ** to include a title center at the top of the applet. 
 ** In addition, figure out which way (horizontally or 
 ** vertically) the two nested loops in the program are
 ** painting the color boxes, and then change the program
 ** so that it paints the color boxes in the opposite      
 ** direction. Also, edit MyApplet7.html in the  project 
 ** directory, to run the MyApplet7.class file you create, 
 ** and to look nice.                                      **/      
 
/** USE EXISTING JAVA CLASSES **/

import java.awt.*;
import java.applet.Applet;

/** EXTEND THE JAVA APPLET CLASS **/

public class MyApplet7 extends Applet 
   {int rval, gval, bval;                     // Define red, green, blue color variables.
   
    public void init()	
       {setBackground(Color.white);}          // Change the gray background to green
       
    /** CREATE THE CURRENT FRAME **/

    public void paint(Graphics g)
        {
	Font font = new Font("TimesRoman",Font.BOLD,18);        
        FontMetrics fontm = getFontMetrics(font);
        String text = "Pick out the colors you like.";
        int xstart = (size().width - fontm.stringWidth(text))/2;
        int height = fontm.getDescent() + fontm.getAscent();
        
        g.setFont(font);
        g.drawString(text,xstart,fontm.getHeight());
       
       
       for (int i = 5; i < (size().width - 30); i += 30) 
            {for (int j = fontm.getHeight() + 10; j < (size().height - 30); j += 30)  
       
    
	     {rval =(int) Math.floor(Math.random()*256);      // Generate a random color
	      gval =(int) Math.floor(Math.random()*256);      // red, green, blue mix.
	      bval =(int) Math.floor(Math.random()*256);      // Note the "casting" here.
				       
	      g.setColor(new Color(rval,gval,bval));          // Paint a small box with
	      g.fillRect(i,j,25,25);                          // the current random color.
	      g.setColor(Color.black);                        // Paint a black border around 
	      g.drawRect(i-1,j-1,26,26);                      // the edge of the small box.
	      }
	   }   
	}	
     }
   