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) {