From ba304898b8e177d90afb58d201b4c3dd3c927c48 Mon Sep 17 00:00:00 2001 From: salmonik Date: Thu, 27 Aug 2026 17:23:34 +0200 Subject: GUI: window/event exports, paint binary, event-loop gate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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). --- bins/paint/Cargo.toml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 bins/paint/Cargo.toml (limited to 'bins/paint/Cargo.toml') 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 @@ +[package] +name = "paint" +version.workspace = true +edition.workspace = true +[lints] +workspace = true +[dependencies] +rsapi = { path = "../../rsapi" } -- cgit v1.2.3