moved canvasstate to the pages folder

This commit is contained in:
filipriec
2025-04-13 22:45:26 +02:00
parent b4135c1626
commit d995fab0e4
21 changed files with 19 additions and 19 deletions

View File

@@ -1,5 +1,5 @@
// src/state/pages/auth.rs
use crate::state::canvas_state::CanvasState;
use crate::state::pages::canvas_state::CanvasState;
use lazy_static::lazy_static;
lazy_static! {

View File

@@ -0,0 +1,20 @@
// src/state/canvas_state.rs
pub trait CanvasState {
fn current_field(&self) -> usize;
fn current_cursor_pos(&self) -> usize;
fn has_unsaved_changes(&self) -> bool;
fn inputs(&self) -> Vec<&String>;
fn get_current_input(&self) -> &str;
fn get_current_input_mut(&mut self) -> &mut String;
fn fields(&self) -> Vec<&str>;
fn set_current_field(&mut self, index: usize);
fn set_current_cursor_pos(&mut self, pos: usize);
fn set_has_unsaved_changes(&mut self, changed: bool);
// --- Autocomplete Support ---
fn get_suggestions(&self) -> Option<&[String]>;
fn get_selected_suggestion_index(&self) -> Option<usize>;
}

View File

@@ -2,7 +2,7 @@
use crate::config::colors::themes::Theme;
use ratatui::layout::Rect;
use ratatui::Frame;
use crate::state::canvas_state::CanvasState;
use crate::state::pages::canvas_state::CanvasState;
pub struct FormState {
pub id: i64,