ratatui_toolkit/primitives/tree_view/tree_view/methods/visible_item_count.rs
1//! TreeView::visible_item_count method.
2
3use crate::primitives::tree_view::tree_view::TreeView;
4use crate::primitives::tree_view::tree_view_state::TreeViewState;
5
6impl<'a, T> TreeView<'a, T> {
7 /// Gets total visible item count.
8 ///
9 /// # Arguments
10 ///
11 /// * `state` - The tree view state.
12 ///
13 /// # Returns
14 ///
15 /// The number of visible items in the tree.
16 ///
17 /// # Example
18 ///
19 /// ```rust
20 /// use ratatui_toolkit::tree_view::{TreeNode, TreeView, TreeViewState};
21 ///
22 /// let nodes = vec![TreeNode::new("Item")];
23 /// let tree = TreeView::new(nodes);
24 /// let state = TreeViewState::new();
25 /// assert_eq!(tree.visible_item_count(&state), 1);
26 /// ```
27 pub fn visible_item_count(&self, state: &TreeViewState) -> usize {
28 self.flatten_tree(state).len()
29 }
30}