diff --git a/app/src/main/java/kasio/view/CalculatorView.java b/app/src/main/java/kasio/view/CalculatorView.java index dd2aa82..ef97c02 100644 --- a/app/src/main/java/kasio/view/CalculatorView.java +++ b/app/src/main/java/kasio/view/CalculatorView.java @@ -3,6 +3,7 @@ import java.awt.AWTException; import java.awt.BorderLayout; import java.awt.Dimension; +import java.awt.FlowLayout; import java.awt.Image; import java.awt.MenuItem; import java.awt.PopupMenu; @@ -101,6 +102,19 @@ public void mouseDragged(MouseEvent e) { mode.setForeground(Colors.WHITE); menuBar.add(mode, BorderLayout.WEST); + JButton close = new JButton("X"); + close.setFont(Fonts.KEYPAD_PRIMARY); + close.setForeground(Colors.WHITE); + close.setBackground(Colors.PRIMARY); + close.setBorderPainted(false); + close.setFocusable(false); + close.setContentAreaFilled(true); + close.setPreferredSize(new Dimension(50, 50)); + close.addActionListener( + e -> { + System.exit(0); + }); + JButton minimize = new JButton("—"); minimize.setFont(Fonts.KEYPAD_PRIMARY); minimize.setForeground(Colors.WHITE); @@ -111,7 +125,14 @@ public void mouseDragged(MouseEvent e) { e -> { frame.setVisible(false); }); - menuBar.add(minimize, BorderLayout.EAST); + + JPanel controls = new JPanel(); + controls.setOpaque(false); + controls.setLayout(new java.awt.FlowLayout(FlowLayout.RIGHT, 0, 0)); + controls.add(minimize); + controls.add(close); + + menuBar.add(controls, BorderLayout.EAST); JMenuItem basicMode = new JMenuItem("Basic"); basicMode.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_B, KeyEvent.CTRL_DOWN_MASK));