Skip to content

Class peagen.tui.components.tree_view.FileTree

peagen.tui.components.tree_view.FileTree

Bases: Tree

FileSelected

FileSelected(path)

Bases: Message

Source code in peagen/tui/components/tree_view.py
 9
10
11
def __init__(self, path: Path) -> None:
    self.path = path
    super().__init__()

path instance-attribute

path = path

on_mount

on_mount()
Source code in peagen/tui/components/tree_view.py
13
14
15
16
def on_mount(self):
    root = Path(".")
    self.root.expand()
    self.build_tree(root, self.root)

build_tree

build_tree(path, node)
Source code in peagen/tui/components/tree_view.py
18
19
20
21
22
23
24
def build_tree(self, path: Path, node):
    for p in path.iterdir():
        if p.is_dir():
            new_node = node.add(p.name, expand=True)
            self.build_tree(p, new_node)
        else:
            node.add_leaf(p.name, data=p)

on_tree_node_selected

on_tree_node_selected(event)
Source code in peagen/tui/components/tree_view.py
26
27
28
def on_tree_node_selected(self, event):
    if event.node.data:
        self.post_message(self.FileSelected(event.node.data))