/*-------------------------------------------------------------------
  BlocksCanvas class
  -----------------------------------------------------------------*/

import java.lang.*;
import java.applet.*;
import java.awt.*;
import java.util.*;
import java.io.*;


public class BlocksCanvas extends Canvas {

    Sorter sorter;
    Vector blocks = new Vector();

    public BlocksCanvas( Sorter sorter ) {
	this.sorter = sorter;
	setSize( 20+1,20*Sorter.MAX+1 );
    } // end of BlocksCanvas() constructor

    public void clear() {
	blocks.removeAllElements();
    } // end of clear() method

    public void copy( Vector blocks ) {
	clear();
	for ( int i=0; i<blocks.size(); i++ ) {
	    Block block = new Block( (Block)blocks.elementAt( i ));
	    this.blocks.addElement( block );
	} // end for i
    } // end of copy() method

    public void drawBlocks( Graphics g,int x ) {
	Block block;
	for ( int i=0; i<blocks.size(); i++ ) {
	    block = (Block)blocks.elementAt( i );
	    block.draw( g,x,i*20 );
	} // end for i
    } // end of drawBlocks() method
	
    public void paint( Graphics g ) {
	if ( blocks.size() > 0 ) {
	    drawBlocks( g,0 );
	}
    } // end of paint() method

} /* end of class BlocksCanvas */
