ratatui_toolkit/widgets/code_diff/extensions/file_tree/constructors/
new.rs

1//! Constructor for creating an empty DiffFileTree.
2
3use crate::primitives::tree_view::TreeViewState;
4use crate::services::theme::AppTheme;
5use crate::widgets::code_diff::diff_file_tree::DiffFileTree;
6
7impl DiffFileTree {
8    /// Creates a new empty `DiffFileTree`.
9    ///
10    /// # Returns
11    ///
12    /// An empty tree with no files.
13    ///
14    /// # Example
15    ///
16    /// ```rust
17    /// use ratatui_toolkit::widgets::code_diff::diff_file_tree::DiffFileTree;
18    ///
19    /// let tree = DiffFileTree::new();
20    /// assert!(tree.nodes.is_empty());
21    /// ```
22    #[must_use]
23    pub fn new() -> Self {
24        Self {
25            nodes: Vec::new(),
26            state: TreeViewState::new(),
27            selected_index: 0,
28            focused: false,
29            theme: AppTheme::default(),
30        }
31    }
32}
33
34impl Default for DiffFileTree {
35    fn default() -> Self {
36        Self::new()
37    }
38}