Package checkers

Source Code of checkers.TSelectColor

package checkers;

import java.awt.Color;
import java.awt.Cursor;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JPanel;
import javax.swing.border.BevelBorder;
import javax.swing.border.LineBorder;
import javax.swing.border.SoftBevelBorder;

import com.jgoodies.forms.layout.ColumnSpec;
import com.jgoodies.forms.layout.FormLayout;
import com.jgoodies.forms.layout.RowSpec;

public class TSelectColor extends JPanel
{
  private static final long  serialVersionUID  = 1L;

  private boolean isServer = true;
 
  private JPanel panelLeft;
  private JPanel panelRight;
 
  public TSelectColor()
  {
    super();
    setBorder(new LineBorder(Color.LIGHT_GRAY));
    setLayout( new FormLayout( new ColumnSpec[] {
        ColumnSpec.decode("default:grow"),
        ColumnSpec.decode("default:grow"),},
      new RowSpec[] {
        RowSpec.decode("max(80dlu;default):grow"),}));
   
    panelLeft = new JPanel();
    panelLeft.addMouseListener(new MouseAdapter() {
        public void mouseClicked(MouseEvent e)
        {
          panelRight.setBorder(new SoftBevelBorder(BevelBorder.RAISED, null, null, null, null));
          panelLeft.setBorder(new SoftBevelBorder(BevelBorder.LOWERED, null, null, null, null));
          repaint(); isServer = !isServer;
        }
        public void mouseEntered(MouseEvent e)
        { setCursor(new Cursor(Cursor.HAND_CURSOR)); }
        public void mouseExited(MouseEvent e)
        { setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); }
      });
    panelLeft.setBorder(new SoftBevelBorder(BevelBorder.LOWERED, null, null, null, null));
    add(panelLeft, "1, 1, fill, fill");

    panelRight = new JPanel();
    panelRight.addMouseListener(new MouseAdapter() {
        public void mouseClicked(MouseEvent e)
        {
          panelLeft.setBorder(new SoftBevelBorder(BevelBorder.RAISED, null, null, null, null));
          panelRight.setBorder(new SoftBevelBorder(BevelBorder.LOWERED, null, null, null, null));
          repaint(); isServer = !isServer;
        }
        public void mouseEntered(MouseEvent e)
        { setCursor(new Cursor(Cursor.HAND_CURSOR)); }
        public void mouseExited(MouseEvent e)
        { setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); }
      });
    panelRight.setBorder(new SoftBevelBorder(BevelBorder.RAISED, null, null, null, null));
    add(panelRight, "2, 1, fill, fill");

  }

  public void paint(Graphics g)
  {
    super.paint(g);
    Graphics2D g2d = (Graphics2D) g;
    g2d.setFont(new Font("Arial", Font.BOLD, 30));
    int size = (panelLeft.getWidth() < panelLeft.getHeight() ? panelLeft.getWidth() : panelLeft.getHeight()) * 9/10;
    g2d.setColor(Color.WHITE);
    g2d.fillOval(panelLeft.getWidth()/2 - size/2, panelLeft.getHeight()/2 - size/2, size, size);
    g2d.setColor(Color.BLACK);
    g2d.fillOval(panelRight.getWidth()/2 - size/2 + panelLeft.getWidth(), panelRight.getHeight()/2 - size/2, size, size);
    g2d.drawString("SERVER", panelLeft.getWidth()/2 - 60, panelLeft.getHeight()/2 + 15);
    g2d.setColor(Color.WHITE);
    g2d.drawString("CLIENT", panelRight.getWidth()/2 - 55 + panelLeft.getWidth(), panelRight.getHeight()/2 + 15);
   
  }

  public boolean getChoise()
  {
    return isServer;
  }
}
TOP

Related Classes of checkers.TSelectColor

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.