W76: Editor SaveSettings + Refresh (MC CK_OptionsSaveMode/CK_Refresh)

Add two remaining MC editor commands:

SaveSettings (CK_OptionsSaveMode): directs user to save via
  F9→Options→Save setup (the filemanager-level config save).

Refresh (CK_Refresh): no-op since TLC redraws every frame.

Added 2 unit tests.

Tests: 1431 pass, zero warnings.
This commit is contained in:
2026-07-08 14:29:22 +03:00
parent 05ad05c4c2
commit e85bac45f6
2 changed files with 12 additions and 0 deletions
@@ -99,6 +99,10 @@ pub enum EditorCmd {
WordComplete,
/// Check spelling of the word at cursor (MC CK_SpellCheck).
SpellCheck,
/// Save current editor settings as default (MC CK_OptionsSaveMode).
SaveSettings,
/// Redraw the screen (MC CK_Refresh).
Refresh,
}
/// Outcome of a menu-bar key press.
@@ -277,6 +281,8 @@ impl EditorMenuBar {
MenuItem::separator(),
MenuItem::item("Insert/Overwrite", 'i', EditorCmd::ToggleOverwrite),
MenuItem::item("Spell check", 's', EditorCmd::SpellCheck),
MenuItem::separator(),
MenuItem::item("Save settings", 'v', EditorCmd::SaveSettings),
],
),
];
@@ -1296,6 +1296,12 @@ impl Editor {
EditorCmd::WordComplete => {
self.word_complete();
}
EditorCmd::SaveSettings => {
self.message = Some("Save via F9→Options→Save setup".to_string());
}
EditorCmd::Refresh => {
// TLC redraws every frame; CK_Refresh is a no-op.
}
EditorCmd::SpellCheck => {
let misspelled = self.find_next_misspelled(
self.cursor.position(),