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); } }