github HakanSeven12/OpenCADStudio v0.4.4

latest releases: v2026.42, v2026.41, v2026.40.1...
4 months ago

Multi-functional grip hover popup

  • New hover-popup vocabulary: after a 600 ms dwell on a grip, a single keyboard-navigable popup widget opens listing the operations the entity supports at that grip. Arrow keys move the highlight, Enter commits, Esc / click-outside / mouse-leave dismisses, and the popup width auto-sizes to the longest label with full-row highlighting.
  • Per-entity menu vocabulary replaces the generic "drag this point" model. Stretch is always present (and falls through to the regular drag); each entity adds its own operations.

Per-entity grip menus

  • Line / Arc / Dimension — Lengthen (line endpoints, arc endpoints) and Radius / Arc Length (arc midpoint) prompt for a typed distance on the command line and apply it along the line direction or around the arc. Dimension text grip exposes Reset Text, Move-with / Independent options; dim-line grip exposes Reverse Arrows.
  • Polyline / Polyline2D / Polyline3D / MLine — Add Vertex (chord midpoint, with bulge / elevation kept in sync where applicable) and Remove Vertex (blocked at the minimum two-vertex floor).
  • Spline — Add Vertex / Remove Vertex on control vertices, plus Refine Vertices which inserts a CV between every adjacent pair. Weights are kept in sync when present and the knot vector is cleared so the truck conversion rebuilds a uniform knot vector for the new CV count.
  • Hatch — Origin Point, Hatch Angle (prompts for degrees, writes pattern_angle in radians), Hatch Scale (prompts for a positive scalar).
  • Leader / MultiLeader — Add / Remove Vertex on intermediate path vertices; arrow head and centroid stay Stretch-only. MultiLeader MText location adds Move-with-Leader / Move-Independent (menu vocabulary live; structural multi-leader edits stubbed — Stretch falls through to the regular drag).
  • Text / MText — Move with Text and Rotate (Rotate prompts for degrees and sets the entity rotation). MText width grip stays Stretch-only.

Value-prompt flow

  • Picking a menu action that needs a numeric input (Lengthen, Radius, Arc Length, Hatch Angle / Scale, Rotate) queues a GripPendingValue and pushes the action's label to the command line as a prompt. The next command-line submission is routed back through apply_grip_menu_value; Esc clears the pending value.
  • Window frames() subscription drives the dwell tick so the popup opens after the configured delay without requiring continuous mouse motion over the grip.

Refactors

  • Spline, Leader and MultiLeader switched from the impl_entity_basics! macro to manual Grippable / PropertyEditable / Transformable impls so grip_menu can be overridden per entity.
  • Grip-shape vocabulary completed (Square / Rectangle / Triangle only); Rectangle is reserved for direction-aware mid-segment stretch handles, Triangle for directional indicators (dimension reverse-arrow flips, dynamic-block parameters).

Full Changelog: v0.4.3...v0.4.4

Don't miss a new OpenCADStudio release

NewReleases is sending notifications on new releases.