diff src/luan_editor/editor.luan @ 92:aefa7f8bb407 default tip

better open files
author Franklin Schmidt <fschmidt@gmail.com>
date Wed, 09 Jul 2025 22:59:59 -0600
parents 7f5b3824f4d4
children
line wrap: on
line diff
--- a/src/luan_editor/editor.luan	Fri Jul 04 15:55:22 2025 -0600
+++ b/src/luan_editor/editor.luan	Wed Jul 09 22:59:59 2025 -0600
@@ -16,25 +16,25 @@
 local logger = Logging.logger "editor/editor"
 
 
+local function open_args(args)
+	local files = {}
+	for _, arg in ipairs(args) do
+		files[#files+1] = new_file(arg)
+	end
+	swing_run( function()
+		local Window = require "classpath:luan_editor/Window.luan"
+		Window.open_files(files)
+	end )
+end
+
 local function open(args)
 	if #args == 0 then
 		swing_run( function()
 			local Window = require "classpath:luan_editor/Window.luan"
-			local new_window = Window.new_window or error()
-
-			new_window()
+			Window.new_window()
 		end )
 	else
-		for _, arg in ipairs(args) do
-			local file = new_file(arg)
-			swing_run( function()
-				local Window = require "classpath:luan_editor/Window.luan"
-				local new_window = Window.new_window or error()
-
-				new_window(file)
-			end )
-			sleep(100)
-		end
+		open_args(args)
 	end
 end
 
@@ -42,20 +42,10 @@
 	if #args == 0 then
 		swing_run( function()
 			local Window = require "classpath:luan_editor/Window.luan"
-			local open_window = Window.open_window or error()
-
-			open_window(nil)
+			Window.to_front()
 		end )
 	else
-		for _, arg in ipairs(args) do
-			swing_run( function()
-				local Window = require "classpath:luan_editor/Window.luan"
-				local open_window = Window.open_window or error()
-
-				open_window(arg)
-			end )
-			sleep(100)
-		end
+		open_args(args)
 	end
 end