delete selected button now in the add table page working

This commit is contained in:
filipriec
2025-04-17 21:21:37 +02:00
parent e723198b72
commit 6f36b84f85
3 changed files with 35 additions and 7 deletions

View File

@@ -381,8 +381,9 @@ pub fn render_add_table(
let bottom_button_chunks = Layout::default() let bottom_button_chunks = Layout::default()
.direction(Direction::Horizontal) .direction(Direction::Horizontal)
.constraints([ .constraints([
Constraint::Percentage(50), // Save Button Constraint::Percentage(33), // Save Button
Constraint::Percentage(50), // Cancel Button Constraint::Percentage(34), // Delete Button
Constraint::Percentage(33), // Cancel Button
]) ])
.split(bottom_buttons_area); .split(bottom_buttons_area);
@@ -403,6 +404,23 @@ pub fn render_add_table(
); );
f.render_widget(save_button, bottom_button_chunks[0]); f.render_widget(save_button, bottom_button_chunks[0]);
let delete_button = Paragraph::new(" Delete Selected ")
.style(get_button_style(
AddTableFocus::DeleteSelectedButton,
add_table_state.current_focus,
))
.alignment(Alignment::Center)
.block(
Block::default()
.borders(Borders::ALL)
.border_type(BorderType::Rounded)
.border_style(get_button_border_style(
AddTableFocus::DeleteSelectedButton,
add_table_state.current_focus,
)),
);
f.render_widget(delete_button, bottom_button_chunks[1]);
let cancel_button = Paragraph::new(" Cancel ") let cancel_button = Paragraph::new(" Cancel ")
.style(get_button_style( .style(get_button_style(
AddTableFocus::CancelButton, AddTableFocus::CancelButton,
@@ -418,5 +436,5 @@ pub fn render_add_table(
add_table_state.current_focus, add_table_state.current_focus,
)), )),
); );
f.render_widget(cancel_button, bottom_button_chunks[1]); f.render_widget(cancel_button, bottom_button_chunks[2]);
} }

View File

@@ -59,7 +59,9 @@ pub fn handle_add_table_navigation(
} }
} }
AddTableFocus::SaveButton => new_focus = AddTableFocus::LinksTable, // Move up to left pane bottom AddTableFocus::SaveButton => new_focus = AddTableFocus::LinksTable, // Move up to left pane bottom
AddTableFocus::CancelButton => new_focus = AddTableFocus::SaveButton, AddTableFocus::DeleteSelectedButton => new_focus = AddTableFocus::SaveButton,
AddTableFocus::CancelButton => new_focus = AddTableFocus::DeleteSelectedButton,
} }
} }
Some("move_down") => { Some("move_down") => {
@@ -83,7 +85,8 @@ pub fn handle_add_table_navigation(
new_focus = AddTableFocus::SaveButton; // Move down to right pane bottom new_focus = AddTableFocus::SaveButton; // Move down to right pane bottom
} }
} }
AddTableFocus::SaveButton => new_focus = AddTableFocus::CancelButton, AddTableFocus::SaveButton => new_focus = AddTableFocus::DeleteSelectedButton,
AddTableFocus::DeleteSelectedButton => new_focus = AddTableFocus::CancelButton,
AddTableFocus::CancelButton => new_focus = AddTableFocus::InputTableName, // Wrap bottom (right pane) AddTableFocus::CancelButton => new_focus = AddTableFocus::InputTableName, // Wrap bottom (right pane)
} }
} }
@@ -129,7 +132,8 @@ pub fn handle_add_table_navigation(
AddTableFocus::ColumnsTable => AddTableFocus::IndexesTable, AddTableFocus::ColumnsTable => AddTableFocus::IndexesTable,
AddTableFocus::IndexesTable => AddTableFocus::LinksTable, AddTableFocus::IndexesTable => AddTableFocus::LinksTable,
AddTableFocus::LinksTable => AddTableFocus::SaveButton, AddTableFocus::LinksTable => AddTableFocus::SaveButton,
AddTableFocus::SaveButton => AddTableFocus::CancelButton, AddTableFocus::SaveButton => AddTableFocus::DeleteSelectedButton,
AddTableFocus::DeleteSelectedButton => AddTableFocus::CancelButton,
AddTableFocus::CancelButton => AddTableFocus::InputTableName, // Wrap AddTableFocus::CancelButton => AddTableFocus::InputTableName, // Wrap
}; };
} }
@@ -143,7 +147,8 @@ pub fn handle_add_table_navigation(
AddTableFocus::IndexesTable => AddTableFocus::ColumnsTable, AddTableFocus::IndexesTable => AddTableFocus::ColumnsTable,
AddTableFocus::LinksTable => AddTableFocus::IndexesTable, AddTableFocus::LinksTable => AddTableFocus::IndexesTable,
AddTableFocus::SaveButton => AddTableFocus::LinksTable, AddTableFocus::SaveButton => AddTableFocus::LinksTable,
AddTableFocus::CancelButton => AddTableFocus::SaveButton, AddTableFocus::DeleteSelectedButton => AddTableFocus::SaveButton,
AddTableFocus::CancelButton => AddTableFocus::DeleteSelectedButton,
}; };
} }
@@ -159,6 +164,10 @@ pub fn handle_add_table_navigation(
*command_message = "Action: Save Table (Not Implemented)".to_string(); *command_message = "Action: Save Table (Not Implemented)".to_string();
// TODO: Implement logic // TODO: Implement logic
} }
AddTableFocus::DeleteSelectedButton => {
*command_message = "Action: Delete selected".to_string();
// TODO: Implement logic
}
AddTableFocus::CancelButton => { AddTableFocus::CancelButton => {
*command_message = "Action: Cancel Add Table".to_string(); *command_message = "Action: Cancel Add Table".to_string();
// TODO: Implement logic // TODO: Implement logic

View File

@@ -27,6 +27,7 @@ pub enum AddTableFocus {
LinksTable, LinksTable,
// Buttons // Buttons
SaveButton, SaveButton,
DeleteSelectedButton,
CancelButton, CancelButton,
} }