package bayesGame.viewcontrollers; import bayesGame.bayesbayes.BayesNet; import bayesGame.levelcontrollers.ChoiceMenu; import bayesGame.levelcontrollers.Controller; import bayesGame.levelcontrollers.LevelController; import bayesGame.levelcontrollers.MiniScript; import bayesGame.minigame.DiscussionNet; import bayesGame.ui.GameInterface; import bayesGame.ui.GraphPanel; public class DefaultViewController implements ViewController { private BayesNet gameNet; private GameInterface gameInterface; private GraphPanel graphPanel; private LevelController owner; public DefaultViewController() { this.gameInterface = new GameInterface(); } public void display(){ gameInterface.setOwner(this); gameInterface.display(); } public void addGraph(BayesNet gameNet){ this.gameNet = gameNet; } public void addText(String text){ gameInterface.addText(text); } public void showText(String text){ this.addText(text); this.processEventQueue(); } public void addRefreshDisplay(){ gameInterface.addRefreshDisplay(); } public void updateGraph(){ graphPanel.updateGraph(); } public void processEventQueue(){ gameInterface.processEventQueue(); } public void dispose() { gameInterface.dispose(); } @Override public void giveControlTo(ViewController viewController) { viewController.receiveControl(gameInterface); } @Override public void receiveControl(Object control){ gameInterface = (GameInterface)control; gameInterface.setOwner(this); } @Override public void setOwner(LevelController owner) { this.owner = owner; } @Override public void processingDone(){ owner.processedQueue(); } @Override public void showMenu(ChoiceMenu choice, LevelController controller) { gameInterface.showMenu(choice, controller); } @Override public void addDialog(String title, String[] options) { gameInterface.addDialog(title, options); } @Override public void addDialog(String string, MiniScript[] scripts) { gameInterface.addDialog(string, scripts); } @Override public void showOptionsMenu() { gameInterface.showOptionsMenu(); } @Override public void showEndMessage(String string) { gameInterface.showEndMessage(string); } @Override public void showMessage(String string) { gameInterface.showMessage(string); } @Override public void showResolutionMenu() { gameInterface.showResolutionMenu(); } }