/** * Copyright (c) 2014 Matthias Jaenicke <matthias.jaenicke@student.kit.edu>, * Matthias Plappert <undkc@student.kit.edu>, * Julien Duman <uncyc@student.kit.edu>, * Christian Dreher <uaeef@student.kit.edu>, * Wasilij Beskorovajnov <uajkm@student.kit.edu> and * Aydin Tekin <aydin.tekin@student.kit.edu> * * Released under the MIT license (refer to LICENSE.md) * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */ package edu.kit.iks.Cryptographics.DiffieHellman.Demonstration; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import edu.kit.iks.Cryptographics.VisualizationContainerController; import edu.kit.iks.CryptographicsLib.AbstractVisualizationController; import edu.kit.iks.CryptographicsLib.AbstractVisualizationInfo; /** * The controller for DemoOneWayView, * which demonstrates one-way functions * * @author kai * */ public class DemoOneWayController extends AbstractVisualizationController { /** the corresponding view */ private DemoOneWayView view; /** * Simple constructor * @param visualizationInfo dh visualization info */ public DemoOneWayController(AbstractVisualizationInfo visualizationInfo) { super(visualizationInfo); } /* * (non-Javadoc) * @see edu.kit.iks.CryptographicsLib.AbstractVisualizationController#getHelp() */ @Override public String getHelp() { return view.getHelp(); } /* * (non-Javadoc) * @see edu.kit.iks.CryptographicsLib.AbstractController#loadView() */ @Override public void loadView() { view = new DemoOneWayView(); this.getView().getNextButton().addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if(((DemoOneWayView) view).isNextText()) { ((VisualizationContainerController) getParentController()).presentNextVisualizationController(); } else { ((DemoOneWayView) view).setNextText(); } } }); this.getView().getBackButton().addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { ((VisualizationContainerController) getParentController()).presentPreviousVisualizationController(); } }); this.getView().getSkipButton().addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { ((VisualizationContainerController) getParentController()).setCurrentVisualizationControllerIndex(2); } }); this.getView().getReturnButton().addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { ((VisualizationContainerController) getParentController()).setCurrentVisualizationControllerIndex(0); } }); } /* * (non-Javadoc) * @see edu.kit.iks.CryptographicsLib.AbstractController#unloadView() */ @Override public void unloadView() { this.getView().stopTimers(); this.view = null; } /* * (non-Javadoc) * @see edu.kit.iks.CryptographicsLib.AbstractController#getView() */ @Override public DemoOneWayView getView() { return (DemoOneWayView) this.view; } }