Skip to main content

Crate blockworx_editor

Crate blockworx_editor 

Source
Expand description

Grid-aware document editing: everything between the document and the tools.

A widget::drawing::Drawing is one level of the document resolved for a frame — its shapes, its wires and the gesture writing to it. The tools drive it, the render path draws it, and the edit emitters turn what a gesture did into the ops a commit carries. Nothing here names a UI toolkit: drawing goes through blockworx_paint::Renderer, and interaction arrives as blockworx_paint::Interaction.

Modules§

content_path
The content path: the chain of block names from the document root down to the level being drawn, as a plain string — top/Thing 1/Core.
edit
Pure op emitters.
gesture
The gesture bracket: what a gesture is, stated once.
import
What the “Import…” dialog brings in: a PNG or SVG, as a plain image in the current view. The name’s extension picks the branch.
names
path
Where the editor is looking: the chain of blocks descended into, the scope that chain resolves to, and what that scope holds.
presentation
How the document actually appears on the canvas: where wires run (solved route geometry), how big text really is (measured extents), what color pin stubs show (accents propagated from route roles). Everything here is computed from the authored document and lives beside it — never authored, never undone, never persisted.
render
Drawing of data-model elements onto a Renderer canvas. Each function takes an element (or its geometry) plus a Style drawing surface and paints it; the functions are generic over the renderer backend so the same code drives both the on-screen painter and the SVG exporter. widget/tools own interaction and frame orchestration and delegate the actual painting here.
shape
The geometry layer: where a shape’s parts land on the canvas, how big they are, and how they paint.
state
title_block
The drawing’s title block: what a printed sheet states about the drawing it carries, and how that statement is arranged.
widget