diff src/luan/modules/swing/SwingLuan.java @ 1616:915cb538e2a3

start swing
author Franklin Schmidt <fschmidt@gmail.com>
date Sat, 05 Jun 2021 21:42:29 -0600
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/luan/modules/swing/SwingLuan.java	Sat Jun 05 21:42:29 2021 -0600
@@ -0,0 +1,29 @@
+package luan.modules.swing;
+
+import javax.swing.SwingUtilities;
+import luan.Luan;
+import luan.LuanFunction;
+import luan.LuanMutable;
+import luan.LuanException;
+
+
+public final class SwingLuan {
+
+	private static Runnable runnable(final Luan luan,final LuanFunction fn) {
+		return new Runnable() {
+			public void run() {
+				try {
+					fn.call(luan);
+				} catch(LuanException e) {
+					e.printStackTrace();
+				}
+			}
+		};
+	}
+
+	public static void run(Luan luan,LuanFunction fn) /*throws LuanException*/ {
+		luan = new Luan(luan);
+		LuanMutable.makeImmutable(fn);
+		SwingUtilities.invokeLater(runnable(luan,fn));
+	}
+}