//PlotSizeControl.java

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

public class PlotSizeControl extends Panel implements ChangeListener{
	public JSlider slider;
	private double lineLength = 1.0, lineLength_part1 = 1.0, lineLength_part2 = 0.0, linecounter1 = 1000, linecounter2 = 0;
        private Font labelfont;
	private static final Color bgcolor = new Color(255,255,255);//white
	
	public int SCROLLMIN=0, SCROLLMAX=49;
        Trans_State state;
        
	public PlotSizeControl(Trans_State state){
		super();
                this.state = state;
		setLayout(null);
		setBackground(bgcolor);
		
                labelfont = new Font("Sanserif",Font.PLAIN,state.font11);

		slider = new JSlider(SCROLLMIN,SCROLLMAX -1);
		slider.setValue(1);
		//slider = new Scrollbar(Scrollbar.HORIZONTAL,1,1,SCROLLMIN,SCROLLMAX);	
                //slider.addChangeListener(this);
		add(slider);
		
		slider.setBounds(state.s1,state.s21,state.s110,state.s15);
                slider.setBackground(Color.white);
		/*
                Panel ps = new Panel();
                    ps.setBackground(Color.black);
                    ps.setBounds(state.s1-1,state.s21-1,state.s110+2,state.s15+2);
                    add(ps);
		*/
                //Listeners
		slider.addChangeListener(this);	
	}
	
	public void paint(Graphics g){
		//g.setColor(bgcolor);
		//g.fill3DRect(0,0,getSize().width-1,getSize().height-1,true);
                labelfont = new Font("Sanserif",Font.PLAIN,state.font11);
                g.setFont(labelfont);
                g.setColor(Color.blue);
                g.drawString("vertical scale",state.s25,state.s15);
		slider.requestFocusInWindow();
	}
	
    	public void stateChanged(ChangeEvent evt){
	  if(evt.getSource()==slider){
		SCROLLMAX = slider.getMaximum();
		SCROLLMIN = slider.getMinimum();
	  }
	}
	
	public double getValue(){
		SCROLLMAX = slider.getMaximum();
		SCROLLMIN = slider.getMinimum();
		return (slider.getValue());
	}
	
	public synchronized void setValue(double x){
	    slider.setValue((int)(x));
	}
	
	
}

