[lint] TODO.md markdownlint
This commit is contained in:
parent
0ea3a53d97
commit
db2afadc76
1 changed files with 109 additions and 103 deletions
22
TODO.md
22
TODO.md
|
@ -1,4 +1,5 @@
|
||||||
# TODO
|
# TODO
|
||||||
|
|
||||||
TODO-list for the Egui project. If you looking for something to do, look here.
|
TODO-list for the Egui project. If you looking for something to do, look here.
|
||||||
|
|
||||||
* Widgets
|
* Widgets
|
||||||
|
@ -81,13 +82,13 @@ TODO-list for the Egui project. If you looking for something to do, look here.
|
||||||
* ui.child_ui_pos(pos).label("Label at specific position");
|
* ui.child_ui_pos(pos).label("Label at specific position");
|
||||||
* ui.child_ui_rect(rect).label("Label in a rectangle");
|
* ui.child_ui_rect(rect).label("Label in a rectangle");
|
||||||
|
|
||||||
|
|
||||||
## egui_web
|
## egui_web
|
||||||
* [x] Scroll input
|
|
||||||
* [x] Change to resize cursor on hover
|
* [x] Scroll input
|
||||||
* [x] Port most code to Rust
|
* [x] Change to resize cursor on hover
|
||||||
* [x] Read url fragment and redirect to a subpage (e.g. different examples apps)
|
* [x] Port most code to Rust
|
||||||
* [ ] Embeddability
|
* [x] Read url fragment and redirect to a subpage (e.g. different examples apps)
|
||||||
|
* [ ] Embeddability
|
||||||
* [ ] Support canvas that does NOT cover entire screen.
|
* [ ] Support canvas that does NOT cover entire screen.
|
||||||
* [ ] Support multiple eguis in one web page.
|
* [ ] Support multiple eguis in one web page.
|
||||||
* [ ] Filtering events to avoid too frequent repaints
|
* [ ] Filtering events to avoid too frequent repaints
|
||||||
|
@ -96,6 +97,7 @@ TODO-list for the Egui project. If you looking for something to do, look here.
|
||||||
* Allows very nice web integration
|
* Allows very nice web integration
|
||||||
|
|
||||||
## Modularity
|
## Modularity
|
||||||
|
|
||||||
* [x] `trait Widget` (`Label`, `Slider`, `Checkbox`, ...)
|
* [x] `trait Widget` (`Label`, `Slider`, `Checkbox`, ...)
|
||||||
* [ ] `trait Container` (`Frame`, `Resize`, `ScrollArea`, ...)
|
* [ ] `trait Container` (`Frame`, `Resize`, `ScrollArea`, ...)
|
||||||
* [ ] `widget::TextButton` implemented as a `container::Button` which contains a `widget::Label`.
|
* [ ] `widget::TextButton` implemented as a `container::Button` which contains a `widget::Label`.
|
||||||
|
@ -104,14 +106,15 @@ TODO-list for the Egui project. If you looking for something to do, look here.
|
||||||
* [ ] Attach labels to checkboxes, radio buttons and sliders with a separate wrapper-widget ?
|
* [ ] Attach labels to checkboxes, radio buttons and sliders with a separate wrapper-widget ?
|
||||||
|
|
||||||
### Refactor space allocation
|
### Refactor space allocation
|
||||||
|
|
||||||
When painting a widget, you want to allocate space. On that space you sometimes want to paint, sometimes create a sub-Ui to layout child widgets. So sometimes you want a `Painter` for the region, sometimes a new `Ui`. However, what you are doing is essentially the same thing, and so we should make that clearer somehow, maybe via naming.
|
When painting a widget, you want to allocate space. On that space you sometimes want to paint, sometimes create a sub-Ui to layout child widgets. So sometimes you want a `Painter` for the region, sometimes a new `Ui`. However, what you are doing is essentially the same thing, and so we should make that clearer somehow, maybe via naming.
|
||||||
|
|
||||||
* `ui.allocate(size) -> Rect`
|
* `ui.allocate(size) -> Rect`
|
||||||
* `ui.canvas(size) -> Paint`
|
* `ui.canvas(size) -> Paint`
|
||||||
* `ui.child_ui(size) -> Ui`
|
* `ui.child_ui(size) -> Ui`
|
||||||
|
|
||||||
|
|
||||||
## Other
|
## Other
|
||||||
|
|
||||||
* [x] Persist UI state in external storage
|
* [x] Persist UI state in external storage
|
||||||
* [x] Persist Example App state
|
* [x] Persist Example App state
|
||||||
* [ ] Create an Egui icon (or use an emoji)
|
* [ ] Create an Egui icon (or use an emoji)
|
||||||
|
@ -123,13 +126,16 @@ When painting a widget, you want to allocate space. On that space you sometimes
|
||||||
* [ ] Implement a minimal markdown viewer
|
* [ ] Implement a minimal markdown viewer
|
||||||
|
|
||||||
## Names and structure
|
## Names and structure
|
||||||
|
|
||||||
* [ ] Rename things to be more consistent with Dear ImGui ?
|
* [ ] Rename things to be more consistent with Dear ImGui ?
|
||||||
* [ ] Put everything in `Context` behind the same Mutex? `struct Context(Arc<Mutex<ContextImpl>>);`, with e.g. `context.lock().memory.foo`?
|
* [ ] Put everything in `Context` behind the same Mutex? `struct Context(Arc<Mutex<ContextImpl>>);`, with e.g. `context.lock().memory.foo`?
|
||||||
|
|
||||||
## Global widget search
|
## Global widget search
|
||||||
|
|
||||||
Ability to do a search for any widget. The search works even for collapsed regions and closed windows and menus. This is implemented like this: while searching, all region are layed out and their add_content functions are run. If none of the contents matches the search, the layout is reverted and nothing is shown. So windows will get temporarily opened and run, but if the search is not a match in the window it is closed again. This means then when searching your whole GUI is being run, which may be a bit slower, but it would be a really awesome feature.
|
Ability to do a search for any widget. The search works even for collapsed regions and closed windows and menus. This is implemented like this: while searching, all region are layed out and their add_content functions are run. If none of the contents matches the search, the layout is reverted and nothing is shown. So windows will get temporarily opened and run, but if the search is not a match in the window it is closed again. This means then when searching your whole GUI is being run, which may be a bit slower, but it would be a really awesome feature.
|
||||||
|
|
||||||
# Done
|
## Done
|
||||||
|
|
||||||
* Widgets
|
* Widgets
|
||||||
* [x] Label
|
* [x] Label
|
||||||
* [x] Button
|
* [x] Button
|
||||||
|
|
Loading…
Reference in a new issue