Mercurial Hosting > editor
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()