[87] | 1 | package genius.gui.panels;
|
---|
| 2 |
|
---|
| 3 | import java.awt.BorderLayout;
|
---|
| 4 | import java.awt.Dimension;
|
---|
| 5 |
|
---|
| 6 | import javax.swing.JLabel;
|
---|
| 7 | import javax.swing.JPanel;
|
---|
| 8 | import javax.swing.JSlider;
|
---|
| 9 | import javax.swing.JSpinner;
|
---|
| 10 |
|
---|
| 11 | /**
|
---|
[89] | 12 | * Shows slider plus spinner with optional ticks, optionally logarithmic, and
|
---|
| 13 | * optionally with percentages
|
---|
[87] | 14 | *
|
---|
| 15 | */
|
---|
[89] | 16 | @SuppressWarnings("serial")
|
---|
[87] | 17 | public class SliderPanel extends JPanel {
|
---|
[88] | 18 | private JSlider slider;
|
---|
| 19 |
|
---|
[91] | 20 | public SliderPanel(String name, IntegerModel model) {
|
---|
[87] | 21 | setLayout(new BorderLayout());
|
---|
| 22 | add(new JLabel(name), BorderLayout.WEST);
|
---|
| 23 |
|
---|
[88] | 24 | slider = new JSlider(new SpinnerToBoundeRangeAdapter(model));
|
---|
| 25 | add(slider, BorderLayout.CENTER);
|
---|
| 26 | JSpinner spinner = new JSpinner(model.getSpinnerModel());
|
---|
[87] | 27 | spinner.setMaximumSize(new Dimension(300, 30));
|
---|
| 28 | add(spinner, BorderLayout.EAST);
|
---|
| 29 | }
|
---|
| 30 |
|
---|
[88] | 31 | /**
|
---|
| 32 | *
|
---|
| 33 | * @return the slider part. Used for testing, you should not need this and
|
---|
| 34 | * communicate through the model you provided.
|
---|
| 35 | */
|
---|
| 36 | public JSlider getSlider() {
|
---|
| 37 | return slider;
|
---|
| 38 | }
|
---|
| 39 |
|
---|
[87] | 40 | }
|
---|