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}