This repository is a little case-study to implement a painter (canvas) with the Slint GUI Toolkit. The drawn objects are not selectable or changeable, as this approach draws the paths directly to an image buffer via tiny-skia. This is my first contact working with Slint.
Features:
- π§ different brushes: Freehand, Line, Rectangle, Ellipse
- π‘ path preview
- π change brush size
- π¨ change brush color (not in GUI - color picker missing)
- π undo and redo all operations
Annoyances:
- π₯ fixed dimensions (at creation time)
- π₯ touch area and displayed paths differ when the window is resized
- π₯ no operations on individually drawn objects
- π₯ tiny-skia engine may be slow in the path preview
- π₯ unclear how to create a reusable slint component out of that π
Simply use cargo to run this example
cargo run --release