Features
- Block editor: selecting a block and running BEDIT — by command, ribbon button, or double-clicking the block — opens a block-editor space tab named after the block, alongside Model and the layouts. It draws only that block's own entities in block-local coordinates; edits are live on the definition, so every INSERT updates. Save Block / Discard finish the session, and renaming the tab renames the block (#261).
- Hatches now render on the web (WebGL2) build through a texture-backed per-hatch renderer, so web hatch fills draw instead of the command appearing to cancel (#204).
- Annotative objects now carry real per-scale representations — a synthesized extension-dictionary chain that interoperates with other CAD apps — rather than just a native flag; the editable Annotative toggle covers Text and block references as well as MText and MLeader, and a new OBJECTSCALE dialog adds and removes an object's annotation scales.
- The dimension-line colour is editable for Leaders and Dimensions, stored as a standard per-object dimension-style override so it round-trips through both DWG and DXF.
Fixes
- Dimensions: architectural and fractional units carry a rounded fraction up into inches and feet, so an exact three-foot object reads 3'-0" instead of 2'-11 1" (#380).
- Hatch: picking selects the innermost boundary and detects nested holes; only direct children become holes, and only the outer ring is flagged external on save (#374).
- Linetype: A-type dashed lines align their endpoints so a dash lands exactly at each end.
- Paper space: a reused viewport GPU slot resets so the surviving viewport keeps its content.
- Foreign DWGs: the root named-objects dictionary is resolved robustly when its header pointer is unreliable.
- Save As: the version-picker dialog button is now labeled "Save as...".
Performance
- Model, paper and block-editor spaces now share one resident wire path with no per-viewport cull or LOD: paper pan and zoom do no re-tessellation and reuse the idle single-blit cache, matching Model-space smoothness.
- The resident wire GPU buffer is shared across viewport slots and panes by content id, so several viewports — or Model tiles — of the same drawing upload its geometry only once.
Chore
- Bumped acadrust: read the DXF dimension block name (group code 2) so DXF dimension text matches DWG, and default the MTEXT and MULTILEADER annotative flags to false so DXF-imported text and leaders are no longer over-scaled.
Full Changelog: v0.8.1...v0.8.2