/**
*
*/
package fr.unistra.pelican.gui.MultiViews;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import javax.swing.BoundedRangeModel;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JSlider;
import javax.swing.MenuElement;
import javax.swing.MenuSelectionManager;
import javax.swing.border.CompoundBorder;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.ChangeListener;
import com.sun.media.ui.Slider;
/**
* A JSlider that can be used as menu item ...
*
* @author Benjamin Perret
*
*/
class SliderMenuItem extends JPanel implements MenuElement {
JSlider slider;
/**
*
*/
private static final long serialVersionUID = 1L;
/**
* @param brm
*/
public SliderMenuItem(String text, BoundedRangeModel brm) {
slider=new JSlider(brm);
init(text);
}
/**
* @param min
* @param max
* @param value
*/
public SliderMenuItem(String text,int min, int max, int value) {
slider=new JSlider(min,max,value);
init(text);
}
/**
* @param min
* @param max
*/
public SliderMenuItem(String text,int min, int max) {
slider=new JSlider(min,max);
init(text);
}
private void init(String text)
{
this.add(new JLabel(text));
Dimension d=slider.getPreferredSize();
d.height=45;
d.width=150;
slider.setPreferredSize(d);
slider.setMajorTickSpacing(5);
slider.setMinorTickSpacing(1);
slider.setPaintTicks(true);
slider.setPaintLabels(true);
this.add(slider);
}
public JSlider getSlider(){
return slider;
}
public void addChangeListener(ChangeListener cl)
{
slider.addChangeListener(cl);
}
/* (non-Javadoc)
* @see javax.swing.MenuElement#processMouseEvent(java.awt.event.MouseEvent, javax.swing.MenuElement[], javax.swing.MenuSelectionManager)
*/
public void processMouseEvent(MouseEvent e, MenuElement path[], MenuSelectionManager manager) {
}
/* (non-Javadoc)
* @see javax.swing.MenuElement#processKeyEvent(java.awt.event.KeyEvent, javax.swing.MenuElement[], javax.swing.MenuSelectionManager)
*/
public void processKeyEvent(KeyEvent e, MenuElement path[], MenuSelectionManager manager) {
}
/* (non-Javadoc)
* @see javax.swing.MenuElement#menuSelectionChanged(boolean)
*/
public void menuSelectionChanged(boolean isIncluded) {
}
/* (non-Javadoc)
* @see javax.swing.MenuElement#getSubElements()
*/
public MenuElement[] getSubElements() {
return new MenuElement[0];
}
/* (non-Javadoc)
* @see javax.swing.MenuElement#getComponent()
*/
public Component getComponent() {
return this;
}
}