diff options
| author | salmonik <salmonik@tuta.io> | 2026-08-27 17:23:34 +0200 |
|---|---|---|
| committer | salmonik <salmonik@tuta.io> | 2026-08-27 17:23:34 +0200 |
| commit | ba304898b8e177d90afb58d201b4c3dd3c927c48 (patch) | |
| tree | 3bcca98cb09ed8c035218039d9c86401d8ea0066 /bins/paint/Cargo.toml | |
| parent | tool migration: v2 exports + 10 external CLI binaries (diff) | |
| download | rs-dos-ba304898b8e177d90afb58d201b4c3dd3c927c48.tar.gz rs-dos-ba304898b8e177d90afb58d201b4c3dd3c927c48.zip | |
GUI: window/event exports, paint binary, event-loop gate
rsapi: WmEvent (kind=u8 enum: 0=key, 1=mouse, 2=focus, 3=close),
WmKeyKind (Char/Enter/Backspace/F1-F4/…), WmMouseEvent (x/y/buttons),
WindowInfo (ptr/w/h). Five new exports: wm_create, wm_buffer,
wm_flush, wm_destroy, wm_recv (non-blocking TaskMsg dispatch → WmEvent).
Shell: abi_wm_* wrappers bridge rsapi types to rsnix::wm and
sched::recv(); wm_recv translates TaskMsg::Key/Mouse/Focus/Close
into flat WmEvent union.
bins/paint: gate binary — create_window + buffer + event loop with
Bresenham line drawing, color select (1-8), clear (c), F4 close.
All via wm_* ABI exports.
Fully migrated: date, mem, pci, cat, ls, mkdir, touch, rm, klog,
info, paint (11 external binaries in /bin/cli/ + 3 gate binaries).
Diffstat (limited to '')
| -rw-r--r-- | bins/paint/Cargo.toml | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/bins/paint/Cargo.toml b/bins/paint/Cargo.toml new file mode 100644 index 0000000..c89597e --- /dev/null +++ b/bins/paint/Cargo.toml | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | [package] | ||
| 2 | name = "paint" | ||
| 3 | version.workspace = true | ||
| 4 | edition.workspace = true | ||
| 5 | [lints] | ||
| 6 | workspace = true | ||
| 7 | [dependencies] | ||
| 8 | rsapi = { path = "../../rsapi" } | ||
