pub struct EnhancedTuiApp { /* private fields */ }
Implementations§
Source§impl EnhancedTuiApp
impl EnhancedTuiApp
Sourcepub fn register_debug_providers(&mut self)
pub fn register_debug_providers(&mut self)
Register all available debug providers with the debug registry
Sourcepub fn generate_debug_report(&self) -> String
pub fn generate_debug_report(&self) -> String
Generate debug report using the registry
Sourcepub fn list_debug_providers(&self) -> Vec<String>
pub fn list_debug_providers(&self) -> Vec<String>
Get list of registered debug providers
Source§impl EnhancedTuiApp
impl EnhancedTuiApp
Sourcepub fn generate_registry_debug_info(&mut self) -> String
pub fn generate_registry_debug_info(&mut self) -> String
Generate debug info using the new registry system This can be called alongside the existing debug generation to compare outputs
Sourcepub fn toggle_debug_mode_with_registry(&mut self, use_registry: bool)
pub fn toggle_debug_mode_with_registry(&mut self, use_registry: bool)
Toggle debug mode with optional use of new registry system Set use_registry to true to use the new system, false for legacy
Sourcepub fn should_use_registry_debug(&self) -> bool
pub fn should_use_registry_debug(&self) -> bool
Check if we should use the new debug system This can be controlled by config or environment variable in the future
Source§impl EnhancedTuiApp
impl EnhancedTuiApp
pub fn new(api_url: &str) -> Self
Sourcepub fn new_with_dataview(dataview: DataView, source_name: &str) -> Result<Self>
pub fn new_with_dataview(dataview: DataView, source_name: &str) -> Result<Self>
Create a TUI with a DataView - no file loading knowledge needed This is the clean separation: TUI only knows about DataViews
Sourcepub fn add_dataview(
&mut self,
dataview: DataView,
source_name: &str,
) -> Result<()>
pub fn add_dataview( &mut self, dataview: DataView, source_name: &str, ) -> Result<()>
Add a DataView to the existing TUI (creates a new buffer)
Sourcepub fn update_viewport_with_dataview(&mut self, dataview: DataView)
pub fn update_viewport_with_dataview(&mut self, dataview: DataView)
Update the viewport with a new DataView
Sourcepub fn vim_search_adapter(&self) -> &RefCell<VimSearchAdapter>
pub fn vim_search_adapter(&self) -> &RefCell<VimSearchAdapter>
Get vim search adapter (public for orchestrator)
Sourcepub fn set_sql_query(&mut self, table_name: &str, raw_table_name: &str)
pub fn set_sql_query(&mut self, table_name: &str, raw_table_name: &str)
Pre-populate SQL command with SELECT * FROM table
pub fn run(self) -> Result<()>
pub fn execute_query_v2(&mut self, query: &str) -> Result<()>
pub fn reset_table_state(&mut self)
pub fn calculate_optimal_column_widths(&mut self)
Sourcepub fn set_status_message(&mut self, message: impl Into<String>)
pub fn set_status_message(&mut self, message: impl Into<String>)
Centralized method for setting status messages Ensures consistent logging and state synchronization
Trait Implementations§
Source§impl ActionHandlerContext for EnhancedTuiApp
impl ActionHandlerContext for EnhancedTuiApp
fn previous_row(&mut self)
fn next_row(&mut self)
fn move_column_left(&mut self)
fn move_column_right(&mut self)
fn page_up(&mut self)
fn page_down(&mut self)
fn goto_first_row(&mut self)
fn goto_last_row(&mut self)
fn goto_first_column(&mut self)
fn goto_last_column(&mut self)
fn goto_row(&mut self, row: usize)
fn goto_column(&mut self, col: usize)
fn set_mode(&mut self, mode: AppMode)
fn get_mode(&self) -> AppMode
fn set_status_message(&mut self, message: String)
fn toggle_column_pin(&mut self)
fn hide_current_column(&mut self)
fn unhide_all_columns(&mut self)
fn clear_all_pinned_columns(&mut self)
fn export_to_csv(&mut self)
fn export_to_json(&mut self)
fn yank_cell(&mut self)
fn yank_row(&mut self)
fn yank_column(&mut self)
fn yank_all(&mut self)
fn yank_query(&mut self)
fn toggle_selection_mode(&mut self)
fn toggle_row_numbers(&mut self)
fn toggle_compact_mode(&mut self)
fn toggle_case_insensitive(&mut self)
fn toggle_key_indicator(&mut self)
fn clear_filter(&mut self)
fn clear_line(&mut self)
fn start_search(&mut self)
fn start_column_search(&mut self)
fn start_filter(&mut self)
fn start_fuzzy_filter(&mut self)
fn exit_current_mode(&mut self)
fn toggle_debug_mode(&mut self)
fn move_current_column_left(&mut self)
fn move_current_column_right(&mut self)
fn next_search_match(&mut self)
fn previous_search_match(&mut self)
fn show_column_statistics(&mut self)
fn cycle_column_packing(&mut self)
fn move_input_cursor_left(&mut self)
fn move_input_cursor_right(&mut self)
fn move_input_cursor_home(&mut self)
fn move_input_cursor_end(&mut self)
fn backspace(&mut self)
fn delete(&mut self)
fn undo(&mut self)
fn redo(&mut self)
fn start_jump_to_row(&mut self)
fn clear_jump_to_row_input(&mut self)
fn toggle_cursor_lock(&mut self)
fn toggle_viewport_lock(&mut self)
fn show_debug_info(&mut self)
fn show_pretty_query(&mut self)
fn show_help(&mut self)
fn kill_line(&mut self)
fn kill_line_backward(&mut self)
fn delete_word_backward(&mut self)
fn delete_word_forward(&mut self)
fn expand_asterisk(&mut self)
fn expand_asterisk_visible(&mut self)
fn previous_history_command(&mut self)
fn next_history_command(&mut self)
Source§impl BufferManagementBehavior for EnhancedTuiApp
impl BufferManagementBehavior for EnhancedTuiApp
fn buffer_manager(&mut self) -> &mut BufferManager
fn buffer_handler(&mut self) -> &mut BufferHandler
fn buffer(&self) -> &dyn BufferAPI
fn buffer_mut(&mut self) -> &mut dyn BufferAPI
fn config(&self) -> &Config
fn cursor_manager(&mut self) -> &mut CursorManager
fn set_input_text_with_cursor(&mut self, text: String, cursor: usize)
Source§fn next_buffer(&mut self) -> String
fn next_buffer(&mut self) -> String
Source§fn previous_buffer(&mut self) -> String
fn previous_buffer(&mut self) -> String
Source§fn quick_switch_buffer(&mut self) -> String
fn quick_switch_buffer(&mut self) -> String
Source§fn close_buffer(&mut self) -> (bool, String)
fn close_buffer(&mut self) -> (bool, String)
Source§fn switch_to_buffer(&mut self, index: usize) -> String
fn switch_to_buffer(&mut self, index: usize) -> String
Source§fn buffer_count(&self) -> usize
fn buffer_count(&self) -> usize
Source§fn current_buffer_index(&self) -> usize
fn current_buffer_index(&self) -> usize
Source§fn new_buffer(&mut self)
fn new_buffer(&mut self)
Source§impl ColumnBehavior for EnhancedTuiApp
impl ColumnBehavior for EnhancedTuiApp
fn viewport_manager(&self) -> &RefCell<Option<ViewportManager>>
fn buffer_mut(&mut self) -> &mut dyn BufferAPI
fn buffer(&self) -> &dyn BufferAPI
fn state_container(&self) -> &AppStateContainer
fn is_in_results_mode(&self) -> bool
fn apply_column_operation_result(&mut self, result: ColumnOperationResult)
Source§fn hide_current_column(&mut self)
fn hide_current_column(&mut self)
Source§fn unhide_all_columns(&mut self)
fn unhide_all_columns(&mut self)
Source§fn move_current_column_left(&mut self)
fn move_current_column_left(&mut self)
Source§fn move_current_column_right(&mut self)
fn move_current_column_right(&mut self)
Source§fn move_column_left(&mut self)
fn move_column_left(&mut self)
Source§fn move_column_right(&mut self)
fn move_column_right(&mut self)
Source§fn goto_first_column(&mut self)
fn goto_first_column(&mut self)
Source§fn goto_last_column(&mut self)
fn goto_last_column(&mut self)
Source§impl DebugContext for EnhancedTuiApp
impl DebugContext for EnhancedTuiApp
fn buffer(&self) -> &dyn BufferAPI
fn buffer_mut(&mut self) -> &mut dyn BufferAPI
fn get_debug_widget(&self) -> &DebugWidget
fn get_debug_widget_mut(&mut self) -> &mut DebugWidget
fn get_shadow_state(&self) -> &RefCell<ShadowStateManager>
fn get_buffer_manager(&self) -> &BufferManager
fn get_viewport_manager(&self) -> &RefCell<Option<ViewportManager>>
fn get_state_container(&self) -> &AppStateContainer
fn get_state_container_mut(&mut self) -> &mut AppStateContainer
fn get_render_timings(&self) -> &Vec<String>
fn debug_current_buffer(&mut self)
fn get_input_cursor(&self) -> usize
fn get_visual_cursor(&self) -> (usize, usize)
fn get_input_text(&self) -> String
fn get_buffer_mut_if_available(&mut self) -> Option<&mut Buffer>
fn set_mode_via_shadow_state(&mut self, mode: AppMode, trigger: &str)
fn collect_current_state( &self, ) -> (AppMode, String, String, Option<usize>, usize, usize, usize)
fn format_buffer_manager_state(&self) -> String
fn debug_generate_viewport_efficiency(&self) -> String
fn debug_generate_key_chord_info(&self) -> String
fn debug_generate_search_modes_info(&self) -> String
fn debug_generate_state_container_info(&self) -> String
fn collect_debug_info(&self) -> String
fn debug_generate_parser_info(&self, query: &str) -> String
fn debug_generate_column_search_state(&self) -> String
fn debug_generate_trace_logs(&self) -> String
fn debug_generate_state_logs(&self) -> String
fn toggle_debug_mode(&mut self)
fn format_render_timing(&self) -> String
fn debug_extract_timing(&self, s: &str) -> Option<f64>
fn debug_generate_memory_info(&self) -> String
fn debug_generate_buffer_state( &self, mode: AppMode, last_query: &str, input_text: &str, cursor_pos: usize, visual_cursor: usize, ) -> String
fn debug_generate_results_state( &self, results_count: usize, filtered_count: usize, selected_row: Option<usize>, current_column: usize, ) -> String
fn debug_generate_viewport_state(&self) -> String
fn debug_generate_dataview_state(&self) -> String
fn debug_generate_datatable_schema(&self) -> String
fn render_debug(&self, f: &mut Frame<'_>, area: Rect)
fn render_pretty_query(&self, f: &mut Frame<'_>, area: Rect)
Source§impl InputBehavior for EnhancedTuiApp
impl InputBehavior for EnhancedTuiApp
fn buffer_manager(&mut self) -> &mut BufferManager
fn cursor_manager(&mut self) -> &mut CursorManager
fn set_input_text_with_cursor(&mut self, text: String, cursor: usize)
fn state_container(&self) -> &AppStateContainer
fn state_container_mut(&mut self) -> &mut AppStateContainer
fn buffer_mut(&mut self) -> &mut dyn BufferAPI
fn set_mode_with_sync(&mut self, mode: AppMode, trigger: &str)
fn get_current_input(&mut self) -> (String, usize)
fn apply_text_result(&mut self, result: TextOperationResult)
fn apply_cursor_result(&mut self, result: CursorMovementResult)
Source§fn kill_line_backward(&mut self)
fn kill_line_backward(&mut self)
Source§fn delete_word_backward(&mut self)
fn delete_word_backward(&mut self)
Source§fn delete_word_forward(&mut self)
fn delete_word_forward(&mut self)
Source§fn move_cursor_word_backward(&mut self)
fn move_cursor_word_backward(&mut self)
Source§fn move_cursor_word_forward(&mut self)
fn move_cursor_word_forward(&mut self)
Source§fn jump_to_prev_token(&mut self)
fn jump_to_prev_token(&mut self)
Source§fn jump_to_next_token(&mut self)
fn jump_to_next_token(&mut self)
Source§fn insert_char(&mut self, ch: char)
fn insert_char(&mut self, ch: char)
Source§fn delete_char(&mut self)
fn delete_char(&mut self)
Source§fn clear_input(&mut self)
fn clear_input(&mut self)
Source§fn get_jump_to_row_input(&self) -> String
fn get_jump_to_row_input(&self) -> String
Source§fn set_jump_to_row_input(&mut self, input: String)
fn set_jump_to_row_input(&mut self, input: String)
Source§fn clear_jump_to_row_input(&mut self)
fn clear_jump_to_row_input(&mut self)
Source§fn process_jump_to_row_key(&mut self, key: KeyEvent) -> bool
fn process_jump_to_row_key(&mut self, key: KeyEvent) -> bool
fn viewport_manager(&self) -> &RefCell<Option<ViewportManager>>
fn buffer_mut(&mut self) -> &mut dyn BufferAPI
fn buffer(&self) -> &dyn BufferAPI
fn state_container(&self) -> &AppStateContainer
fn state_container_mut(&mut self) -> &mut AppStateContainer
fn get_row_count(&self) -> usize
fn set_mode_with_sync(&mut self, mode: AppMode, trigger: &str)
Source§fn sync_row_state(&mut self, row: usize)
fn sync_row_state(&mut self, row: usize)
fn next_row(&mut self)
fn previous_row(&mut self)
fn goto_first_row(&mut self)
fn goto_last_row(&mut self)
fn page_down(&mut self)
fn page_up(&mut self)
fn half_page_down(&mut self)
fn half_page_up(&mut self)
fn goto_line(&mut self, line_number: usize)
Source§fn goto_viewport_top(&mut self)
fn goto_viewport_top(&mut self)
Source§fn goto_viewport_middle(&mut self)
fn goto_viewport_middle(&mut self)
Source§fn goto_viewport_bottom(&mut self)
fn goto_viewport_bottom(&mut self)
Source§fn complete_jump_to_row(&mut self, input: &str)
fn complete_jump_to_row(&mut self, input: &str)
Source§impl YankBehavior for EnhancedTuiApp
impl YankBehavior for EnhancedTuiApp
fn buffer(&self) -> &dyn BufferAPI
fn buffer_mut(&mut self) -> &mut dyn BufferAPI
fn state_container(&self) -> &AppStateContainer
fn set_status_message(&mut self, message: String)
fn set_error_status(&mut self, prefix: &str, error: Error)
Source§fn yank_column(&mut self)
fn yank_column(&mut self)
Source§fn yank_query(&mut self)
fn yank_query(&mut self)
Source§fn yank_as_test_case(&mut self)
fn yank_as_test_case(&mut self)
Source§fn yank_debug_with_context(&mut self)
fn yank_debug_with_context(&mut self)
Auto Trait Implementations§
impl !Freeze for EnhancedTuiApp
impl !RefUnwindSafe for EnhancedTuiApp
impl !Send for EnhancedTuiApp
impl !Sync for EnhancedTuiApp
impl Unpin for EnhancedTuiApp
impl !UnwindSafe for EnhancedTuiApp
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more