changeset 19:ba59fdcf41f3

work
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 07 Apr 2025 22:34:55 -0600
parents fd6d0162e924
children 1bfd4a2d6d4e
files editor.luan
diffstat 1 files changed, 48 insertions(+), 39 deletions(-) [+]
line wrap: on
line diff
diff -r fd6d0162e924 -r ba59fdcf41f3 editor.luan
--- a/editor.luan	Mon Apr 07 21:15:38 2025 -0600
+++ b/editor.luan	Mon Apr 07 22:34:55 2025 -0600
@@ -47,36 +47,40 @@
 		local file_menu = new_menu()
 		file_menu.text = "File"
 		do
-			local new_file = new_menu_item()
-			new_file.text = "New File"
-			new_file.accelerator = "meta N"
-			new_file.add_action_listener(new_window)
+			local new_file = new_menu_item{
+				text = "New File"
+				accelerator = "meta N"
+				action_listener = new_window
+			}
 			file_menu.add(new_file)
 		end
 		do
-			local open = new_menu_item()
-			open.text = "Open..."
-			open.accelerator = "meta O"
-			open.add_action_listener(window.open)
+			local open = new_menu_item{
+				text = "Open..."
+				accelerator = "meta O"
+				action_listener = window.open
+			}
 			file_menu.add(open)
 		end
 		local revert
 		do
-			local save = new_menu_item()
-			save.text = "Save"
-			save.accelerator = "meta S"
-			save.add_action_listener(function()
-				if window.save() then
-					revert.set_enabled(true)
+			local save = new_menu_item{
+				text = "Save"
+				accelerator = "meta S"
+				action_listener = function()
+					if window.save() then
+						revert.set_enabled(true)
+					end
 				end
-			end)
+			}
 			file_menu.add(save)
 		end
 		do
-			revert = new_menu_item()
-			revert.text = "Revert"
-			revert.set_enabled(window.has_file)
-			revert.add_action_listener(window.revert)
+			revert = new_menu_item{
+				text = "Revert"
+				enabled = window.has_file
+				action_listener = window.revert
+			}
 			file_menu.add(revert)
 		end
 		menu_bar.add(file_menu)
@@ -87,17 +91,19 @@
 		local document = window.text_area.document
 		local undo, redo
 		do
-			undo = new_menu_item()
-			undo.text = "Undo"
-			undo.accelerator = "meta Z"
-			undo.add_action_listener(document.undo)
+			undo = new_menu_item{
+				text = "Undo"
+				accelerator = "meta Z"
+				action_listener = document.undo
+			}
 			edit_menu.add(undo)
 		end
 		do
-			redo = new_menu_item()
-			redo.text = "Redo"
-			redo.accelerator = "meta shift Z"
-			redo.add_action_listener(document.redo)
+			redo = new_menu_item{
+				text = "Redo"
+				accelerator = "meta shift Z"
+				action_listener = document.redo
+			}
 			edit_menu.add(redo)
 		end
 		local function update_undo_redo()
@@ -109,24 +115,27 @@
 		document.add_undo_listener(update_undo_redo)
 		edit_menu.add_separator()
 		do
-			local cut = new_menu_item()
-			cut.text = "Cut"
-			cut.accelerator = "meta X"
-			cut.add_action_listener(window.text_area.cut)
+			local cut = new_menu_item{
+				text = "Cut"
+				accelerator = "meta X"
+				action_listener = window.text_area.cut
+			}
 			edit_menu.add(cut)
 		end
 		do
-			local copy = new_menu_item()
-			copy.text = "Copy"
-			copy.accelerator = "meta C"
-			copy.add_action_listener(window.text_area.copy)
+			local copy = new_menu_item{
+				text = "Copy"
+				accelerator = "meta C"
+				action_listener = window.text_area.copy
+			}
 			edit_menu.add(copy)
 		end
 		do
-			local paste = new_menu_item()
-			paste.text = "Paste"
-			paste.accelerator = "meta V"
-			paste.add_action_listener(window.text_area.paste)
+			local paste = new_menu_item{
+				text = "Paste"
+				accelerator = "meta V"
+				action_listener = window.text_area.paste
+			}
 			edit_menu.add(paste)
 		end
 		edit_menu.add_separator()