/*
   MyThirdButton
   Burton Rosenberg
   Wed Apr  1 14:21:45 EST 1998
*/

import java.awt.* ;
import java.awt.event.* ;
import java.applet.Applet ;

public class MyThirdButton
extends Applet
implements ActionListener,
ItemListener {

    Button clearButton = new Button("Clear") ;
    Button applyButton = new Button("Apply") ;
    Label dataLabel = new Label("Data:") ;
    Panel panel = new Panel() ;
    CheckboxGroup cbg = new CheckboxGroup() ;
    Checkbox toUpperBox = new Checkbox( "To Upper", cbg, false ) ;
    Checkbox toLowerBox = new Checkbox( "To Lower", cbg, false ) ;
    TextField theData = new TextField(40) ;
    
    public void init() {

       clearButton.addActionListener(this) ;
       applyButton.addActionListener(this) ;
       toUpperBox.addItemListener(this) ;
       toLowerBox.addItemListener(this) ;
       setLayout(new BorderLayout()) ;
       add("North",panel) ;
       panel.setLayout(new GridLayout(0,2)) ;
       panel.add(dataLabel) ;
       panel.add(theData) ;
       panel.add(toUpperBox) ;
       panel.add(toLowerBox) ;
       panel.add(clearButton) ;
       panel.add(applyButton) ;
       validate() ;

    }

    public void actionPerformed(ActionEvent ae) {
       System.out.println(ae) ;
       if ( ae.getSource() == clearButton )
          theData.setText("") ;
       else doAction() ;
    }

    public void itemStateChanged(ItemEvent ie) {
      System.out.println(ie) ;
      doAction() ;
    }

    private void doAction() {
      String s = theData.getText() ;
      if ( toUpperBox.getState() ) {
          s = s.toUpperCase() ;
       }
       if ( toLowerBox.getState() ) {
         s = s.toLowerCase() ;
       }
       theData.setText(s) ;
    }


}
