mod: roadmap; details for testing
26
Roadmap.md
26
Roadmap.md
@@ -4,9 +4,13 @@ The following list contains goals for certain features the library supports or i
|
|||||||
|
|
||||||
- [ ] Input handling
|
- [ ] Input handling
|
||||||
- [x] basic input handling
|
- [x] basic input handling
|
||||||
- [ ] support modifiers with other control characters (i.e. `SHIFT + TAB`, `SHIFT + ENTER`)
|
- [x] support modifiers with other control characters (i.e. `SHIFT + TAB`)
|
||||||
- [ ] support input's (i.e. `Esc x`, `Esc 0 x` or SS3, `Esc [ ..` or Csi, Osc, Dcs) see [src/vt.rs:156] and [src/input.rs:324] for the actual parsing implementation
|
- [ ] support input's (i.e. `Esc x`, `Esc 0 x` or SS3, `Esc [ ..` or Csi, Osc, Dcs) see [src/vt.rs:156] and [src/input.rs:324] for the actual parsing implementation
|
||||||
- [ ] Clipboard support (reading and writing)
|
- [x] SS3
|
||||||
|
- [-] CSI (not everything yet - i.e. clipboard support)
|
||||||
|
- [ ] OSC
|
||||||
|
- [ ] DCS
|
||||||
|
- [ ] Clipboard support (reading and writing) (**later**)
|
||||||
|
|
||||||
- [ ] Container rendering
|
- [ ] Container rendering
|
||||||
- [x] Layout
|
- [x] Layout
|
||||||
@@ -53,6 +57,7 @@ The following list contains goals for certain features the library supports or i
|
|||||||
- [x] grid
|
- [x] grid
|
||||||
- [x] mixed (some sort of form)
|
- [x] mixed (some sort of form)
|
||||||
- [ ] Elements
|
- [ ] Elements
|
||||||
|
- [x] `Container` Alignment
|
||||||
- [x] Button
|
- [x] Button
|
||||||
- [x] Text Input field
|
- [x] Text Input field
|
||||||
- [ ] overflow handling, i.e. where to draw the elipse `..` - left, center or right (**later**)
|
- [ ] overflow handling, i.e. where to draw the elipse `..` - left, center or right (**later**)
|
||||||
@@ -90,13 +95,16 @@ The following list contains goals for certain features the library supports or i
|
|||||||
- [x] try to integrate them into the library itself such that they also serve as examples on how to test
|
- [x] try to integrate them into the library itself such that they also serve as examples on how to test
|
||||||
- [x] `Layout`, `Border` and `Rectangle` contain the test cases for rendering of `Container`s
|
- [x] `Layout`, `Border` and `Rectangle` contain the test cases for rendering of `Container`s
|
||||||
- [x] `Scrollable` test cases containing inclusion of test creation containing user interaction (i.e. mouse scrolling)
|
- [x] `Scrollable` test cases containing inclusion of test creation containing user interaction (i.e. mouse scrolling)
|
||||||
- [ ] Debugging
|
- [x] Debugging
|
||||||
- [ ] render correpsonding contents with debug information (the following points are just brain dump of potential information the developer want to see):
|
- [x] render correpsonding contents with debug information (the following points are just brain dump of potential information the developer want to see):
|
||||||
- *origin* of `Container`s
|
|
||||||
- *size* of `Container` (i.e. the four corners?)
|
Top left corner indicates type of contents (if any) while general information is located in the three remaining corners:
|
||||||
- *padding* of `Container`
|
- [x] *anchor* of `Container`s (top-left corner -> meaning that is the actual `Cell` used for displaying the debug information)
|
||||||
- *gap* of `Container`
|
- [x] *size* of `Container`
|
||||||
- *separator* of `Container`
|
- [x] *element* of `Container`
|
||||||
|
- [x] *separator* of `Container`
|
||||||
|
- [ ] *padding* of `Container` (i.e. by coloring the background? **later**)
|
||||||
|
- [ ] *gap* of `Container` (i.e. by coloring the background? **later**)
|
||||||
|
|
||||||
- [ ] `Element` extensions:
|
- [ ] `Element` extensions:
|
||||||
- provide a reference to the parent `Container` of a given `Element`
|
- provide a reference to the parent `Container` of a given `Element`
|
||||||
|
|||||||
@@ -61,8 +61,8 @@ test "test container against zon file" {
|
|||||||
defer container.deinit();
|
defer container.deinit();
|
||||||
|
|
||||||
try testing.expectContainerScreen(.{
|
try testing.expectContainerScreen(.{
|
||||||
.rows = 20,
|
.x = 30,
|
||||||
.cols = 30,
|
.y = 20,
|
||||||
}, &container, @import("test/<path>.zon"));
|
}, &container, @import("test/<path>.zon"));
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user