package cnp.ew.misc;
import cnp.ew.util.*;
import cnp.ew.displayer.*;
import java.awt.*;
import cnp.ew.lightweight.*;

public class CpShapeLc extends CpAbstractLc
{
    public static final int OVAL=0;
    public static final int RECTANGLE=1;

    int shapeType;
    Color fillColor;

    public CpShapeLc(int type, Color fillColor)
    {
        shapeType = type;
        this.fillColor = fillColor;
    }

    public CpShapeLc(int type)
    {
        this(type, null);
    }


    public void paint(Graphics g, Rectangle rect)
    {
        Rectangle clientRect = getClientRect();

        switch (shapeType) {
        case OVAL:
            g.setColor(getBackground());
            g.fillRect(clientRect.x, clientRect.y, clientRect.width, clientRect.height);
            if (fillColor != null) {
                g.setColor(fillColor);
                g.fillOval(clientRect.x, clientRect.y, clientRect.width - 1, clientRect.height - 1);
            }
            g.setColor(getForeground());
            g.drawOval(clientRect.x, clientRect.y, clientRect.width - 1, clientRect.height - 1);
            break;
        case RECTANGLE:
            if (fillColor != null) {
                g.setColor(fillColor);
            } else {
                g.setColor(getBackground());
            }
            g.fillRect(clientRect.x, clientRect.y, clientRect.width, clientRect.height);
            g.setColor(getForeground());
            g.drawRect(clientRect.x, clientRect.y, clientRect.width - 1, clientRect.height - 1);
            break;
        }
    }

}

