From e47cd402c34c54ca3280c67e6cfe07ab8e47d039 Mon Sep 17 00:00:00 2001 From: Rex Paster Date: Sun, 8 Mar 2026 01:12:13 -0600 Subject: [PATCH] Fixed Crash on Missing Name & State of Fixed State Machine on Run. --- src/jls/elem/StateMachine.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/jls/elem/StateMachine.java b/src/jls/elem/StateMachine.java index 01a1eb4..02c1574 100755 --- a/src/jls/elem/StateMachine.java +++ b/src/jls/elem/StateMachine.java @@ -809,6 +809,7 @@ private class StateEditor extends JDialog private Point movingPoint; private boolean nameChange; private StateMachine machine; + private boolean creating; /** * Set up create dialog window. @@ -824,6 +825,7 @@ private StateEditor(StateMachine machine, boolean creating) { // save reference to me currentDialog = this; this.machine = machine; + this.creating = creating; // set not canceled canceled = false; @@ -1058,6 +1060,20 @@ public void actionPerformed(ActionEvent event) { else { nameChange = true; } + if (creating) { + String message = ""; + if (states.isEmpty() && name.trim().isEmpty()) { + message = "You need a name and at least one state."; + } else if (states.isEmpty()) { + message = "You need at least one state."; + } else if (name.trim().isEmpty()) { + message = "You need a name."; + } + if (!message.isEmpty()) { + JOptionPane.showMessageDialog(this, message, "Error", JOptionPane.ERROR_MESSAGE); + return; + } + } dispose(); } else if (event.getSource() == cancel) {