Package cl.alejo.jcsim.window.action

Source Code of cl.alejo.jcsim.window.action.ActionNewCircuit

/**
*
* jcsim
*
* Created on Jul 17, 2004
*
* This program is distributed under the terms of the GNU General Public License
* The license is included in license.txt
*
* @author: Alejandro Vera
*/
package cl.alejo.jcsim.window.action;

import java.awt.event.ActionEvent;

import javax.swing.ImageIcon;
import javax.swing.JOptionPane;
import javax.swing.KeyStroke;

import cl.alejo.jcsim.csim.circuit.Circuit;
import cl.alejo.jcsim.window.Window;

public class ActionNewCircuit extends AbstractWinAction {

  public ActionNewCircuit(String text, String description, ImageIcon icon, KeyStroke stroke, Window window) {
    super(text, description, icon, stroke, window);
  }

  public ActionNewCircuit(String text, String description, ImageIcon icon, Window window) {
    super(text, description, icon, window);
  }

  public ActionNewCircuit(String text, String description, Window window) {
    super(text, description, window);
  }

  public void actionPerformed(ActionEvent e) {
    if (_window.getCircuit() != null && _window.getCircuit().isModified()) {
      int answer = askCircuitIsNotSaved();
      if (answer == JOptionPane.CANCEL_OPTION)
        return;
      if (answer == JOptionPane.YES_OPTION) {
        _window.saveAs();
      }
    }

    _window.setCircuit(new Circuit());
    _window.startRepaint();
  }

  private int askCircuitIsNotSaved() {
    return JOptionPane.showConfirmDialog(_window, "Circuit is not saved. Save it?", "Load...",
      JOptionPane.YES_NO_CANCEL_OPTION);
  }
}
TOP

Related Classes of cl.alejo.jcsim.window.action.ActionNewCircuit

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.