mirror of
https://github.com/Textualize/textual.git
synced 2025-10-17 02:38:12 +03:00
1.7 KiB
1.7 KiB
DirectoryTree
A tree control to navigate the contents of your filesystem.
- Focusable
- Container
Example
The example below creates a simple tree to navigate the current working directory.
--8<-- "docs/examples/widgets/directory_tree.py"
Filtering
There may be times where you want to filter what appears in the
DirectoryTree. To do this inherit from DirectoryTree and implement your
own version of the filter_paths method. It should take an iterable of
Python Path objects, and return those that pass the filter. For example,
if you wanted to take the above code an filter out all of the "hidden" files
and directories:
=== "Output"
```{.textual path="docs/examples/widgets/directory_tree_filtered.py"}
```
=== "directory_tree_filtered.py"
~~~python
--8<-- "docs/examples/widgets/directory_tree_filtered.py"
~~~
Messages
::: textual.widgets.DirectoryTree.FileSelected
Reactive Attributes
| Name | Type | Default | Description |
|---|---|---|---|
show_root |
bool |
True |
Show the root node. |
show_guides |
bool |
True |
Show guide lines between levels. |
guide_depth |
int |
4 |
Amount of indentation between parent and child. |
Component Classes
The directory tree widget provides the following component classes:
::: textual.widgets.DirectoryTree.COMPONENT_CLASSES options: show_root_heading: false show_root_toc_entry: false
See Also
- [DirectoryTree][textual.widgets.DirectoryTree] code reference
- [Tree][textual.widgets.Tree] code reference