/*******************************************************************************
* Copyright (c) 2016 Alex Shapiro - github.com/shpralex
* This program and the accompanying materials
* are made available under the terms of the The MIT License (MIT)
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*******************************************************************************/
package com.sproutlife.action;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import com.sproutlife.panel.PanelController;
@SuppressWarnings("serial")
public class ResetGameAction extends AbstractAction {
protected PanelController controller;
public ResetGameAction(PanelController controller, String name) {
super(name);
this.controller = controller;
}
public ResetGameAction(PanelController controller) {
this(controller, "Reset");
}
public void actionPerformed(ActionEvent e) {
controller.getInteractionLock().writeLock().lock();
controller.getGameModel().resetGame();
if(!controller.getGameModel().getPlayGame()) {
controller.getMainControlPanel().getStartPauseButton().getAction().putValue(NAME, "Start");
}
controller.getInteractionLock().writeLock().unlock();
controller.getImageManager().repaintNewImage();
}
}