view 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 source

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));
	}
}