moving add_table to add_logic modern architecture2

This commit is contained in:
Priec
2025-09-02 00:36:49 +02:00
parent 6073c7ab43
commit 3081125716
6 changed files with 38 additions and 195 deletions

View File

@@ -366,7 +366,9 @@ pub async fn run_ui() -> Result<()> {
vec!["OK".to_string()],
DialogPurpose::SaveTableSuccess,
);
admin_state.add_table_state.has_unsaved_changes = false;
if let Page::AddTable(page) = &mut router.current {
page.state.has_unsaved_changes = false;
}
}
Err(e) => {
event_handler.command_message = format!("Save failed: {}", e);
@@ -426,14 +428,11 @@ pub async fn run_ui() -> Result<()> {
router.navigate(Page::Admin(admin_state.clone()));
}
AppView::AddTable => {
if let Page::AddTable(_) = &router.current {
} else {
let mut page =
add_table::state::AddTableFormState::from_state(
admin_state.add_table_state.clone(),
);
if let Page::AddTable(page) = &mut router.current {
// Ensure keymap is set once (same as AddLogic)
page.editor.set_keymap(config.build_canvas_keymap());
router.navigate(Page::AddTable(page));
} else {
// Page is created by admin navigation (Button2). No-op here.
}
}
AppView::AddLogic => {