import java.awt.event.ActionEvent;
import java.io.File;
-import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import net.sf.openrocket.document.events.DocumentChangeListener;
import net.sf.openrocket.document.events.SimulationChangeEvent;
import net.sf.openrocket.gui.main.ExceptionHandler;
+import net.sf.openrocket.l10n.Translator;
import net.sf.openrocket.logging.LogHelper;
import net.sf.openrocket.logging.TraceException;
import net.sf.openrocket.rocketcomponent.ComponentChangeEvent;
import net.sf.openrocket.rocketcomponent.Configuration;
import net.sf.openrocket.rocketcomponent.Rocket;
import net.sf.openrocket.startup.Application;
+import net.sf.openrocket.util.ArrayList;
import net.sf.openrocket.util.BugException;
import net.sf.openrocket.util.Icons;
*/
public class OpenRocketDocument implements ComponentChangeListener {
private static final LogHelper log = Application.getLogger();
-
+ private static final Translator trans = Application.getTranslator();
+
/**
* The minimum number of undo levels that are stored.
*/
- @SuppressWarnings("unchecked")
public List<Simulation> getSimulations() {
- return (ArrayList<Simulation>) simulations.clone();
+ return simulations.clone();
}
public int getSimulationCount() {
undoDescription.add(null);
}
+ rocket.checkComponentStructure();
+ undoHistory.get(undoPosition).checkComponentStructure();
+ undoHistory.get(undoPosition).copyWithOriginalID().checkComponentStructure();
rocket.loadFrom(undoHistory.get(undoPosition).copyWithOriginalID());
+ rocket.checkComponentStructure();
}
// Actual action to make
+ @Override
public void actionPerformed(ActionEvent e) {
switch (type) {
case UNDO:
switch (type) {
case UNDO:
- name = "Undo";
+ //// Undo
+ name = trans.get("OpenRocketDocument.Undo");
desc = getUndoDescription();
actionEnabled = isUndoAvailable();
this.putValue(SMALL_ICON, Icons.EDIT_UNDO);
break;
case REDO:
- name = "Redo";
+ ////Redo
+ name = trans.get("OpenRocketDocument.Redo");
desc = getRedoDescription();
actionEnabled = isRedoAvailable();
this.putValue(SMALL_ICON, Icons.EDIT_REDO);