diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2021-03-01 16:08:52 +0100 |
|---|---|---|
| committer | Gustav Sörnäs <gustav@sornas.net> | 2021-03-01 16:08:52 +0100 |
| commit | 122ef4d5d1d297467fe58d8ccf190b9661f300ca (patch) | |
| tree | a346274b5d72a6af31aa064e7071ee333f07a3b8 | |
| parent | 6b5d1f3b4d66eb624683c886930d0fa7f46fe7b9 (diff) | |
| download | tdde30-122ef4d5d1d297467fe58d8ccf190b9661f300ca.tar.gz | |
quit menu button
| -rw-r--r-- | src/se/liu/gusso230/tetris/TetrisViewer.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/se/liu/gusso230/tetris/TetrisViewer.java b/src/se/liu/gusso230/tetris/TetrisViewer.java index c1e6098..4139188 100644 --- a/src/se/liu/gusso230/tetris/TetrisViewer.java +++ b/src/se/liu/gusso230/tetris/TetrisViewer.java @@ -2,8 +2,10 @@ package se.liu.gusso230.tetris; import javax.swing.*; import java.awt.*; +import java.awt.event.ActionEvent; public class TetrisViewer { + private JMenuBar menuBar; private TetrisComponent tetrisComponent; public TetrisViewer(Board board) { @@ -11,10 +13,33 @@ public class TetrisViewer { board.addListener(tetrisComponent); } + private JMenuBar setupMenuBar() { + final JMenuBar menuBar = new JMenuBar(); + final JMenu file = new JMenu("File"); + final JMenuItem quit = new JMenuItem("Quit"); + file.add(quit); + final Action quitAction = new AbstractAction() { + @Override public void actionPerformed(final ActionEvent actionEvent) { + if (JOptionPane.showConfirmDialog(null, + "Do you really want to quit?", + "", + JOptionPane.YES_NO_OPTION) + == JOptionPane.YES_OPTION) + { + System.exit(0); + } + } + }; + quit.addActionListener(quitAction); + menuBar.add(file); + return menuBar; + } + public void show() { JFrame frame = new JFrame("Tetris"); frame.setLayout(new BorderLayout()); frame.add(tetrisComponent, BorderLayout.CENTER); + frame.setJMenuBar(setupMenuBar()); frame.pack(); frame.setVisible(true); |
