/**
 * Distributable under LGPL license.
 * See terms of license at gnu.org.
 *
 * Copyright (C)
 * <a href="http://www.inab.org">Spanish National Institute of Bioinformatics (INB)</a>
 * <a href="http://www.bsc.es">Barcelona Supercomputing Center (BSC)</a>
 * <a href="http://inb.bsc.es">Computational Node 6</a>
 */

package org.inb.biomoby.client.gui.swing;

import java.awt.Color;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import org.inb.biomoby.client.gui.swing.border.RoundedBorder;

/**
 * @author Dmitry Repchevsky
 */

public class RoundedButton extends JButton implements MouseListener
{
    private RoundedBorder border;
    
    public RoundedButton()
    {
        init();
    }

    public RoundedButton(ImageIcon icon)
    {
        super(icon);
        
        init();
    }

    public RoundedButton(String label, ImageIcon icon)
    {
        super(label, icon);
        
        init();
    }

    private void init()
    {
        setContentAreaFilled(false);
        setFocusPainted(false);
        setBorder(border = new RoundedBorder(6, Color.LIGHT_GRAY));

        this.addMouseListener(this);
    }

    @Override public void mouseClicked(MouseEvent e){}
    @Override public void mousePressed(MouseEvent e) {}
    @Override public void mouseReleased(MouseEvent e) {}

    @Override
    public void mouseEntered(MouseEvent e)
    {
        border.setColor(Color.BLUE);
    }

    @Override
    public void mouseExited(MouseEvent e)
    {
        border.setColor(Color.LIGHT_GRAY);
    }
}
