Commit Graph

54 Commits

Author SHA1 Message Date
EdJoPaTo
b31a599a37 refactor(scrollbar): experimental prefix over feature
A feature flag has quite some complexity with it and is annyoing.
Write a rustdoc comment about it and be clear about it being experimental and include it as is.
2024-02-24 11:08:30 +01:00
EdJoPaTo
98b53e448f fix(scrollbar): workaround overscroll 2024-02-24 03:09:58 +01:00
EdJoPaTo
ce3b2b530e fix(scrollbar): change margin to individual start/end 2024-02-24 03:09:58 +01:00
EdJoPaTo
4130a800b8 perf: get item.height() less often on render 2024-02-24 03:09:58 +01:00
EdJoPaTo
2781a2d146 refactor: deconstruct Flattened for more speakable variables 2024-02-24 03:09:58 +01:00
EdJoPaTo
4e00f07c74 fix(scrollbar): use current height rather than available height
with item height = 1 its the same but with height != 1 its not
2024-02-24 00:04:39 +01:00
EdJoPaTo
85bfecc568 fix!: remove start_corner
While is somewhat works its not used and doesnt seem that useful
2024-02-23 23:51:37 +01:00
EdJoPaTo
9e93b3ecd1 fixup! feat: support for a scrollbar 2024-02-23 23:42:41 +01:00
EdJoPaTo
92466615b1 feat: support for a scrollbar 2024-02-22 19:20:27 +01:00
EdJoPaTo
ec359d513b refactor: use multi character variable name 2024-02-22 18:38:52 +01:00
EdJoPaTo
5d750b13b0 build(lint): warn on clippy::pedantic or clippy::nursery 2024-02-22 18:32:46 +01:00
EdJoPaTo
766d4f1d58 refactor: one struct per file 2024-02-22 18:32:35 +01:00
EdJoPaTo
01726df5ed feat: scroll independently from selection 2024-02-03 02:24:44 +01:00
EdJoPaTo
4cbe932332 build: update to ratatui 0.26 2024-02-03 01:05:47 +01:00
EdJoPaTo
969b78ab06 feat: select_*() returns whether it changed 2024-01-26 05:24:17 +01:00
EdJoPaTo
632a95f853 perf(key_left): remove clones
Selection access is mutable already. Operate on it directly.
2024-01-26 05:22:20 +01:00
EdJoPaTo
d1a241266f perf!: flatten -> TreeState::flatten
This allows to use internals without cloning

BREAKING CHANGE: flatten is not directly available anymore
2024-01-15 15:50:06 +01:00
EdJoPaTo
b914819283 feat: generic identifier (#27) 2023-10-30 13:18:58 +01:00
EdJoPaTo
58a80b64a7 docs: improve doc comments 2023-10-26 16:46:50 +02:00
EdJoPaTo
9a47f5e0a9 feat: add TreeState::select_visible_index and relative 2023-10-26 00:39:14 +02:00
EdJoPaTo
89cb1dd6d9 docs: improve example code
Simplify main and use const fn.
2023-10-25 15:07:09 +02:00
EdJoPaTo
bc24ad2aa4 docs: add missing word 2023-10-25 14:59:11 +02:00
EdJoPaTo
b4d0c302b0 perf!: accept Vec explicitly
on mqttui I always cloned the vec implictly as into() cloned it.
This wasted performance.

BREAKING CHANGE: requires Vec now explicitly
2023-10-24 19:34:06 +02:00
EdJoPaTo
0d9d132a67 perf: use more const functions
This will run on compile time rather than every time on runtime.
2023-09-04 14:17:35 +02:00
EdJoPaTo
3f30effd19 feat: migrate to ratatui (#26)
Co-authored-by: Ben PHL <benphawke@gmail.com>
2023-09-04 12:44:30 +02:00
EdJoPaTo
8a53caced7 refactor(lint): improve and adapt to lints 2023-05-22 11:50:52 +02:00
EdJoPaTo
59a06ee409 perf: use empty str instead of .unwrap_or("")
dont run unwrap_or all the time and just set the default on new()
2023-05-20 02:08:34 +02:00
EdJoPaTo
3e92570a16 feat: configure node open state symbols (#19) 2023-05-20 01:30:53 +02:00
Diego Frias
61bc6da821 fix: panic on key up/down (#16) 2023-03-20 17:26:51 +01:00
EdJoPaTo
94197fa1d1 docs: fix spelling 2023-02-22 14:04:43 +01:00
EdJoPaTo
ed4e06c000 build: ensure no unsafe code 2023-02-22 14:03:53 +01:00
EdJoPaTo
982125508c fix: do not unset the block on render 2022-11-06 13:48:49 +01:00
EdJoPaTo
a902bce55d docs: use doc comments and doc tests 2022-11-06 13:48:49 +01:00
EdJoPaTo
cf104bb495 refactor(lint): adapt to lints 2022-11-06 10:54:26 +01:00
EdJoPaTo
c8c5a37b28 feat: add TreeItem::children()
returns all the current children
2022-09-01 16:29:56 +02:00
EdJoPaTo
d090aa5659 refactor: split imports better 2022-08-31 18:40:39 +02:00
EdJoPaTo
b01956741b feat: implement TreeState select first/last 2022-08-31 18:28:11 +02:00
EdJoPaTo
c0e4967b88 feat: implement TreeState arrow key methods 2022-08-31 14:49:32 +02:00
EdJoPaTo
63a5fa06f9 feat: toggle with identifier
BREAKING CHANGE: toggle now requires identifier
2022-08-31 14:21:53 +02:00
EdJoPaTo
0a631330e3 refactor: reorder members 2022-08-31 14:04:17 +02:00
EdJoPaTo
d228f439f1 refactor(lint): specify must_use more often 2022-02-26 13:57:22 +01:00
Nicholas Roller
7ff37c6227 feat: Adding toggle (#8)
* feat: Adding toggle

* Update src/lib.rs

Return unneded

Co-authored-by: EdJoPaTo <github@edjopato.de>

Co-authored-by: EdJoPaTo <github@edjopato.de>
2022-02-06 21:13:29 +01:00
EdJoPaTo
1722aa02b7 fix(lint): prevent linter hint 2022-01-19 13:48:14 +01:00
EdJoPaTo
f0bbd09603 refactor: export as flat hierarchy
BREAKING CHANGE: no more exported modules.
Everything is on the main export now.
2021-10-24 03:38:00 +02:00
EdJoPaTo
0659a5ae6f refactor(lint): adapt to future lints 2021-10-24 03:21:43 +02:00
EdJoPaTo
de79f19b82 refactor: simpify string repeat 2021-06-13 09:29:23 +02:00
EdJoPaTo
15fbc26617 refactor(clippy): adapt to new lints 2021-05-13 09:24:54 +02:00
Joey Ezechiëls
8c43147be8 Improve API (#3)
* Introduce TreeItem::{child, child_mut}() accessors
* Add docstrings for TreeState::{open, close}()
2021-05-01 14:18:37 +02:00
EdJoPaTo
cf31797e86 refactor: impl method returns Self 2021-04-01 09:05:05 +02:00
EdJoPaTo
075eb052a3 feat: add TreeState get_offset() 2021-02-13 09:49:35 +01:00