package Nodepad;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
 * PointerCell.java
 *
 *
 * Created: Wed Feb 19 16:07:21 2003
 *
 * @author <a href="mailto:shapiro@cse.buffalo.edu">Stuart C. Shapiro</a>
 * @version
 */

public class PointerCell extends ParentNode {
    private MovablePointer pointer;
    private Point pointerLoc;

    public PointerCell (Pad p, int x, int y, int w, int h){
	super(p, x, y, 0);
	label = "";
	size = new Dimension(w,h);
	setSize(size);
	pointer = new MovablePointer(pad, getX() + getWidth()/2,
				     getY() + getHeight()/2,
				     getX() + getWidth()/2 + 75,
				     getY() + getHeight()/2);
	//pointerLoc = pointer.getLocation();
	pad.add(pointer);
	this.setBorder(BorderFactory.createLineBorder(Color.black,1));
    }

    public int getTotalWidth() {
	return Math.abs(pointer.headx - getX());
    }

    public void paintComponent(Graphics g) {
	setSize(size);
	setLocation(locpt);
	pointer.moveTailTo(getX() + getWidth()/2,
			   getY() + getHeight()/2);
	g.setColor(Color.black);
    }

    /**
     * Terminates cursor following.
     */
    public void mouseReleased (MouseEvent evt){
	shouldmove = false;
    }

    
}// PointerCell
