/*
 * "Grundkurs Programmieren in Java (7. Auflage, 2014)"
 * 2003-2014, Carl Hanser Verlag
 * Loesungsvorschlag zu Aufgabe 13.1 (Version 2.0)
 * (c) 2003-2014 D. Ratz, J. Scheffler, D. Seese, J. Wiesenberger
 *
 */

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

public class FarbenFrame extends JFrame {
  private Container c;
  private JRadioButton rBox, gBox, bBox;

  public FarbenFrame() {
    rBox = new JRadioButton("rot");
    gBox = new JRadioButton("gruen");
    bBox = new JRadioButton("blau");
    ButtonGroup bg = new ButtonGroup();
    bg.add(rBox);
    bg.add(gBox);
    bg.add(bBox);

    rBox.setSelected(true);

    c = getContentPane();
    c.setLayout(new FlowLayout());
    c.add(rBox);
    c.add(gBox);
    c.add(bBox);
    
    c.addMouseListener(new MausHorcher());
  }

  class MausHorcher implements MouseListener {
    public void mousePressed(MouseEvent e) {
      float r = 0, g = 0, b = 0;
      
      if (rBox.isSelected()) 
        r = (float) Math.random(); 
      else if (gBox.isSelected()) 
        g = (float) Math.random(); 
      else
        b = (float) Math.random(); 
        
      c.setBackground(new Color(r,g,b));
    }  
    public void mouseClicked(MouseEvent e) { }
    public void mouseReleased(MouseEvent e) { }
    public void mouseEntered(MouseEvent e) { }
    public void mouseExited(MouseEvent e) { }
  }
  
  // main-Methode
  public static void main(String[] args) {
    FarbenFrame fenster = new FarbenFrame();
    fenster.setTitle("FarbenFrame");
    fenster.setSize(190,100);
    fenster.setVisible(true);
    fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}
