|
@@ -420,20 +420,7 @@ public class GUI implements CategoryListener {
|
|
public void actionPerformed(ActionEvent e) {
|
|
public void actionPerformed(ActionEvent e) {
|
|
try {
|
|
try {
|
|
controller.loadAutoSave(controller.getUndoSave());
|
|
controller.loadAutoSave(controller.getUndoSave());
|
|
- /**
|
|
|
|
- * close bugged Tabs
|
|
|
|
- */
|
|
|
|
- for (int i = 1; i < tabbedPaneInnerOriginal.getTabCount(); i++) {
|
|
|
|
- JScrollPane scrollPaneOriginal = (JScrollPane) tabbedPaneInnerOriginal
|
|
|
|
- .getComponentAt(i);
|
|
|
|
- if (((UpperNodeCanvas) scrollPaneOriginal.getViewport()
|
|
|
|
- .getComponent(0)).upperNode == null) {
|
|
|
|
- ((ButtonTabComponent) tabbedPaneInnerOriginal
|
|
|
|
- .getTabComponentAt(i)).removeTabs();
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
|
|
+ closeInvalidUpperNodeTabs();
|
|
|
|
|
|
controller.calculateStateForCurrentTimeStep();
|
|
controller.calculateStateForCurrentTimeStep();
|
|
canvas.repaint();
|
|
canvas.repaint();
|
|
@@ -455,19 +442,8 @@ public class GUI implements CategoryListener {
|
|
public void actionPerformed(ActionEvent e) {
|
|
public void actionPerformed(ActionEvent e) {
|
|
try {
|
|
try {
|
|
controller.loadAutoSave(controller.getRedoSave());
|
|
controller.loadAutoSave(controller.getRedoSave());
|
|
- /**
|
|
|
|
- * close bugged Tabs
|
|
|
|
- */
|
|
|
|
- for (int i = 1; i < tabbedPaneInnerOriginal.getTabCount(); i++) {
|
|
|
|
- JScrollPane scrollPaneOriginal = (JScrollPane) tabbedPaneInnerOriginal
|
|
|
|
- .getComponentAt(i);
|
|
|
|
- if (((UpperNodeCanvas) scrollPaneOriginal.getViewport()
|
|
|
|
- .getComponent(0)).upperNode == null) {
|
|
|
|
- ((ButtonTabComponent) tabbedPaneInnerOriginal
|
|
|
|
- .getTabComponentAt(i)).removeTabs();
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+ closeInvalidUpperNodeTabs();
|
|
|
|
|
|
controller.calculateStateForCurrentTimeStep();
|
|
controller.calculateStateForCurrentTimeStep();
|
|
canvas.repaint();
|
|
canvas.repaint();
|
|
@@ -2429,6 +2405,9 @@ public class GUI implements CategoryListener {
|
|
private void menuUndoActionPerformed() {
|
|
private void menuUndoActionPerformed() {
|
|
try {
|
|
try {
|
|
controller.loadAutoSave(controller.getUndoSave());
|
|
controller.loadAutoSave(controller.getUndoSave());
|
|
|
|
+
|
|
|
|
+ closeInvalidUpperNodeTabs();
|
|
|
|
+
|
|
controller.calculateStateForCurrentTimeStep();
|
|
controller.calculateStateForCurrentTimeStep();
|
|
canvas.repaint();
|
|
canvas.repaint();
|
|
|
|
|
|
@@ -2449,6 +2428,9 @@ public class GUI implements CategoryListener {
|
|
private void menuRedoActionPerformed() {
|
|
private void menuRedoActionPerformed() {
|
|
try {
|
|
try {
|
|
controller.loadAutoSave(controller.getRedoSave());
|
|
controller.loadAutoSave(controller.getRedoSave());
|
|
|
|
+
|
|
|
|
+ closeInvalidUpperNodeTabs();
|
|
|
|
+
|
|
controller.calculateStateForCurrentTimeStep();
|
|
controller.calculateStateForCurrentTimeStep();
|
|
canvas.repaint();
|
|
canvas.repaint();
|
|
|
|
|
|
@@ -3157,4 +3139,20 @@ public class GUI implements CategoryListener {
|
|
public void showHint(boolean enable){
|
|
public void showHint(boolean enable){
|
|
lblHint.setVisible(enable);
|
|
lblHint.setVisible(enable);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ private void closeInvalidUpperNodeTabs() {
|
|
|
|
+ /**
|
|
|
|
+ * close bugged Tabs
|
|
|
|
+ */
|
|
|
|
+ for (int i = 1; i < tabbedPaneInnerOriginal.getTabCount(); i++) {
|
|
|
|
+ JScrollPane scrollPaneOriginal = (JScrollPane) tabbedPaneInnerOriginal
|
|
|
|
+ .getComponentAt(i);
|
|
|
|
+ if (((UpperNodeCanvas) scrollPaneOriginal.getViewport()
|
|
|
|
+ .getComponent(0)).upperNode == null) {
|
|
|
|
+ ((ButtonTabComponent) tabbedPaneInnerOriginal
|
|
|
|
+ .getTabComponentAt(i)).removeTabs();
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|