Skip to content

Commit cc1c1d4

Browse files
committed
added TODO.md
1 parent 085fe54 commit cc1c1d4

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

TODO.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# ArduinoMenu TODO's
2+
3+
**review points for next version (V5)**
4+
5+
The goal of this revision is to:
6+
7+
- Simplify and slim menu core for better fit on small MCU's.
8+
- Modularize parts of the core making them interchangeable.
9+
- Accommodate new features.
10+
11+
## Menu parts
12+
13+
### Input
14+
15+
Currently undergoing a complete input review and redesign to free the logic dependency of streams and characters along with the confusing conversion between char's and cmd's.
16+
New inputs should provide only cmds and eventually deal with chars internally. This greatly simplifies the making of new input drivers not stream related.
17+
18+
Doing some experiments to abstract even more from Arduino framework and generalize inputs https://github.com/neu-rah/OneLib
19+
20+
### Output
21+
22+
Not started yet.
23+
24+
- Panels logic should be removed from the menu, instead the panels should be an optional overlay of the output device
25+
- Core should only call mixins functions, allowing external customization. Mixins should overlay the output driver and provide a custom printout.
26+
This allows the menu to have both full built-in renders and full user render.
27+
Still we have to account for used space... need to think more on this.
28+
- Allow multi-line or even full panel options, this is related to the above point.
29+
30+
### Core/Navigation
31+
32+
Not started yet.
33+
34+
Above mentioned output mixins and new inputs will have impact on reducing core code.
35+
36+
Navigation system currently takes care of selected item and panel/device scroll position. To still do so with scroll position and also support custom drawing we have to account for used space or leave the burden to the output overlay. Have to decide it.
37+
38+
Make the core customizable allowing multicolumn navigation

0 commit comments

Comments
 (0)