39 lines
1.2 KiB
Java
39 lines
1.2 KiB
Java
package eu.midnightdust.yaytris.ui;
|
|
|
|
import eu.midnightdust.yaytris.Settings;
|
|
import eu.midnightdust.yaytris.Tetris;
|
|
|
|
import javax.swing.*;
|
|
import javax.swing.plaf.basic.BasicSliderUI;
|
|
|
|
import java.awt.*;
|
|
|
|
import static eu.midnightdust.yaytris.ui.TetrisUI.scale;
|
|
import static eu.midnightdust.yaytris.ui.TetrisUI.setFontScale;
|
|
|
|
public class SettingsMenu extends JPanel {
|
|
final TetrisUI ui;
|
|
|
|
SettingsMenu(int x, int y, int width, int height, TetrisUI ui) {
|
|
this.ui = ui;
|
|
this.setBounds(x, y, width, height);
|
|
this.setLayout(null);
|
|
|
|
JSlider scaleSlider = new JSlider(100, 500, (int) (Settings.guiScale * 100));
|
|
scaleSlider.setBounds(scale(10), scale(20), scale(200), scale(20));
|
|
scaleSlider.setBackground(Color.DARK_GRAY);
|
|
scaleSlider.addChangeListener(change -> {
|
|
Settings.guiScale = scaleSlider.getValue() / 100f;
|
|
Settings.write();
|
|
});
|
|
setFontScale(scaleSlider);
|
|
this.add(scaleSlider);
|
|
|
|
JButton backButton = new JButton("Back");
|
|
backButton.addActionListener(ui::openMainMenu);
|
|
backButton.setBounds(scale(60), scale(140), scale(100), scale(20));
|
|
setFontScale(backButton);
|
|
this.add(backButton);
|
|
}
|
|
}
|