diff --git a/src/jrummikub/view/impl/PlayerPanel.java b/src/jrummikub/view/impl/PlayerPanel.java
index 171e46b..db2721a 100644
--- a/src/jrummikub/view/impl/PlayerPanel.java
+++ b/src/jrummikub/view/impl/PlayerPanel.java
@@ -113,27 +113,19 @@ class PlayerPanel extends JPanel implements IPlayerPanel {
currentPlayerNameLabel.setVerticalTextPosition(JLabel.CENTER);
leftPanel.add(currentPlayerNameLabel);
- sortByGroupsButton = new JButton("
Nach Sammlungen sortieren");
- sortByGroupsButton.setFont(sortByGroupsButton.getFont().deriveFont(0));
- sortByGroupsButton.setMargin(new Insets(0, 0, 0, 0));
- sortByGroupsButton.addActionListener(new ActionListener() {
+ sortByGroupsButton = createButton(leftPanel, "Nach Sammlungen sortieren", new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
sortByGroupsEvent.emit();
}
});
- leftPanel.add(sortByGroupsButton);
- sortByRunsButton = new JButton("Nach Reihen sortieren");
- sortByRunsButton.setFont(sortByRunsButton.getFont().deriveFont(0));
- sortByRunsButton.setMargin(new Insets(0, 0, 0, 0));
- sortByRunsButton.addActionListener(new ActionListener() {
+ sortByRunsButton = createButton(leftPanel, "Nach Reihen sortieren", new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
sortByRunsEvent.emit();
}
});
- leftPanel.add(sortByRunsButton);
leftPanel.addComponentListener(new LeftPanelResizeListener());
}
@@ -144,68 +136,56 @@ class PlayerPanel extends JPanel implements IPlayerPanel {
rightPanel.setBorder(new EmptyBorder(SIDE_PANEL_INSET, SIDE_PANEL_INSET,
SIDE_PANEL_INSET, SIDE_PANEL_INSET));
- handRowUpButton = new JButton("\u25B2");
- handRowUpButton.setMargin(new Insets(0, 0, 0, 0));
- handRowUpButton.addActionListener(new ActionListener() {
+ handRowUpButton = createButton(rightPanel, "\u25B2", new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
hand.rowUp();
}
});
- rightPanel.add(handRowUpButton);
- handRowDownButton = new JButton("\u25BC");
- handRowDownButton.setMargin(new Insets(0, 0, 0, 0));
- handRowDownButton.addActionListener(new ActionListener() {
+ handRowDownButton = createButton(rightPanel, "\u25BC", new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
hand.rowDown();
}
});
- rightPanel.add(handRowDownButton);
timeBar = new JProgressBar(0, 60);
timeBar.setStringPainted(true);
rightPanel.add(timeBar);
- endTurnButton = new JButton("---");
- endTurnButton.setFont(endTurnButton.getFont().deriveFont(0));
- endTurnButton.setMargin(new Insets(0, 0, 0, 0));
- endTurnButton.addActionListener(new ActionListener() {
+ endTurnButton = createButton(rightPanel, "---", new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ endTurnEvent.emit();
+ }
+ });
+
+ keepStonesButton = createButton(rightPanel, "Steine
behalten", new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
endTurnEvent.emit();
}
});
- rightPanel.add(endTurnButton);
-
- keepStonesButton = new JButton("Steine
behalten");
- keepStonesButton.setFont(keepStonesButton.getFont().deriveFont(0));
- keepStonesButton.setMargin(new Insets(0, 0, 0, 0));
- keepStonesButton.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- endTurnEvent.emit();
- }
- });
-
- rightPanel.add(keepStonesButton);
-
- redealButton= new JButton("Neu
geben");
- redealButton.setFont(redealButton.getFont().deriveFont(0));
- redealButton.setMargin(new Insets(0, 0, 0, 0));
- redealButton.addActionListener(new ActionListener() {
+ redealButton = createButton(rightPanel, "Neu
geben", new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
redealEvent.emit();
}
});
- rightPanel.add(redealButton);
-
rightPanel.addComponentListener(new RightPanelResizeListener());
}
+
+ private JButton createButton(JPanel panel, String caption, ActionListener listener) {
+ JButton button = new JButton(caption);
+ button.setFont(button.getFont().deriveFont(0));
+ button.setMargin(new Insets(0, 0, 0, 0));
+ button.addActionListener(listener);
+ panel.add(button);
+ return button;
+ }
private void rescale() {
Insets insets = getInsets();