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

class PhiControls extends Panel implements ChangeListener{
	Antenna ant;
	
	JSlider slider1;
	final int ScrollMin=0;
	final int ScrollMax=361;
	public double phi;
	
	public PhiControls (Antenna ant){
		super();
		this.ant = ant;
		setBackground(Color.white);
		setLayout(null);

		slider1 = new JSlider(ScrollMin,ScrollMax);
		slider1.setValue(0);
		//slider1=new Scrollbar(Scrollbar.HORIZONTAL,0,1,ScrollMin,ScrollMax);
		slider1.addChangeListener(this);
		add(slider1);
		
		if(ant.IsMac){
                    slider1.setBounds(1+ant.s14,1,ant.s400-2-ant.s28,ant.s15);
                }
                else{
                    slider1.setBounds(1,1,ant.s400-2,ant.s15);
                }
                slider1.setBackground(new Color(255,255,255));
		/*
		Panel pslider1 = new Panel();
		    pslider1.setBackground(Color.black);
		    add(pslider1);
		    pslider1.setBounds(0,0,ant.s400,ant.s15+2);
		*/  
                phi = 0.0;
	}
	
	public void paint(Graphics g){
	
		//g.setColor(Color.cyan);
		//g.fillRect(25,0,80,20);
		//g.setColor(Color.black);
		//g.drawString("\u03c6  = "+(int)(phi)+" \u00ba",35,15);
		//g.drawString((int)(phi)+"\u00ba",35,15);
	    slider1.requestFocusInWindow();
	}

    	public void jrupdate(){
		Graphics g = getGraphics();
		//g.setColor(Color.cyan);
		//g.fillRect(25,0,80,20);
		//g.setColor(Color.black);
		
		//g.drawString("\u03c6  = "+(int)(phi)+" \u00ba",35,15);
		if(slider1.getValue()>360){
		    //g.drawString("360 \u00ba",35,15);
		    slider1.setValue(ScrollMax-1);
		}
		else{
		    //g.drawString((int)(phi)+" \u00ba",35,15);
		}
		g.dispose();
		
	}


	public void stateChanged(ChangeEvent evt){
		if(slider1.getValue()>360){
		    phi=360.0;
		}
		else{
		    phi=(double)slider1.getValue();
		}
		jrupdate();
		ant.UpdateRadiation();
		ant.rcan1.redraw();
		ant.rcan2.redraw();
	}
        
}
