diff options
Diffstat (limited to 'src/jrummikub/view/impl/StartTurnPanel.java')
-rw-r--r-- | src/jrummikub/view/impl/StartTurnPanel.java | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/src/jrummikub/view/impl/StartTurnPanel.java b/src/jrummikub/view/impl/StartTurnPanel.java index 6d6e1b5..9418a3b 100644 --- a/src/jrummikub/view/impl/StartTurnPanel.java +++ b/src/jrummikub/view/impl/StartTurnPanel.java @@ -13,6 +13,7 @@ import javax.swing.border.EmptyBorder; import jrummikub.util.Event;
import jrummikub.util.IEvent;
+import jrummikub.view.IView.BottomPanelType;
/**
* A panel that is displayed before a player's turn
@@ -29,6 +30,9 @@ class StartTurnPanel extends JPanel { private JButton startTurnButton;
private Event startTurnEvent = new Event();
+ private Event acknowledgeInvalidEvent = new Event();
+
+ private Event buttonEvent = startTurnEvent;
/**
* Creates a new StartTurnPanel
@@ -50,7 +54,7 @@ class StartTurnPanel extends JPanel { startTurnButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
- startTurnEvent.emit();
+ buttonEvent.emit();
}
});
add(startTurnButton);
@@ -66,10 +70,22 @@ class StartTurnPanel extends JPanel { void setCurrentPlayerName(String playerName) {
startTurnLabel.setText(playerName + " ist jetzt an der Reihe.");
}
+
+ void setInitialMeldError(int points) {
+ startTurnLabel.setText("Es wurden weniger als " + points + " Punkte ausgelegt.");
+ }
+
+ void setInitialMeldFirstError() {
+ startTurnLabel.setText("Vor dem Rauskommen darf nicht angelegt werden.");
+ }
IEvent getStartTurnEvent() {
return startTurnEvent;
}
+
+ IEvent getAcknowledgeInvalidEvent() {
+ return acknowledgeInvalidEvent;
+ }
private void rescale() {
Insets insets = getInsets();
@@ -93,4 +109,19 @@ class StartTurnPanel extends JPanel { buttonWidth, buttonHeight);
startTurnButton.setFont(startTurnButton.getFont().deriveFont(fontSize));
}
+
+ public void setType(BottomPanelType type) {
+ switch (type) {
+ case START_TURN_PANEL:
+ startTurnButton.setText("Zug beginnen");
+ buttonEvent = startTurnEvent;
+ break;
+ case INVALID_TURN_PANEL:
+ startTurnLabel.setText("Es liegen ung\u00FCltige Serien auf dem Tisch.");
+ startTurnButton.setText("N\u00E4chster Spieler");
+ buttonEvent = acknowledgeInvalidEvent;
+ break;
+ }
+
+ }
}
|