Commit Graph
2022 Commits
Author SHA1 Message Date
Hakan Seven dffae3f16d Merge pull request #890 from ramox81/codex/fix-jogged-radius-properties
Fix jogged radius properties and layout
2026-08-28 00:35:06 +03:00
Hakan Seven 43d4403a47 fix(dimension): sync jogged radius geometry 2026-08-28 00:33:37 +03:00
gianlucafiore 1516694c72 Merge pull request #899 from gianlucafiore/fix/887-dash-lines
fix(render): improve dashed linetype rendering
2026-08-27 13:56:24 -03:00
gianlucafiore a2d4caf2f0 fix(render): improve dashed linetype rendering 2026-08-27 13:51:05 -03:00
ramox81 d37c8cbd84 Align jogged radius unit and tolerance properties 2026-08-27 10:47:08 +03:00
ramox81 50c811e998 Order jogged radius fit properties 2026-08-27 10:43:20 +03:00
ramox81 dc26edbbfc Align jogged radius text properties 2026-08-27 10:43:04 +03:00
ramox81 ac81f3b045 Simplify jogged radius misc properties 2026-08-27 10:42:49 +03:00
ramox81 706645b6d8 Order general dimension properties 2026-08-27 10:42:10 +03:00
ramox81 efde152e17 Correct radial dimension rendering overrides 2026-08-27 10:31:32 +03:00
ramox81 b529c9332f Align jogged radius property controls 2026-08-27 10:31:27 +03:00
ramox81 7b58de2578 Fix jogged radius properties and layout 2026-08-27 09:36:41 +03:00
Hakan Seven ba91095bcf Merge pull request #886 from ramox81/codex/complete-jogged-radius-dimension
Complete jogged radius dimension workflow
2026-08-27 08:12:28 +03:00
Hakan Seven bc750c6d76 fix(dimension): harden jogged radius workflow 2026-08-27 08:09:02 +03:00
Karim Jerbi 513ab958a8 perf(grid): cache overlay geometry behind a params-keyed key
Introduce a cache for the grid overlay to prevent redundant geometry
reconstruction on every UI redraw. Extract the pure projection logic
from draw_grid into a renderer-free grid_segments function, and add
GridKey and GridCanvasState to memoize the resulting Geometry.

The cache key includes all per-pane GridParams and the overlay bounds,
preventing stale geometry when camera changes within the same canvas
size. On a params-key miss, the iced cache is cleared before redrawing
to bypass its bounds-only reuse.

Tests: 8 new unit tests cover key invalidation and state handling.
Benchmarks: uncached geometry ~32 us/frame vs cached decision ~90 ns,
a >99% reduction. Verified: 472 passed / 1 pre-existing failure / 4
ignored.

Tests:
  ui::overlay::grid_key_tests::grid_key_matches_identical_params
  ui::overlay::grid_key_tests::grid_key_invalidates_on_changed_fields
  ui::overlay::grid_key_tests::grid_key_invalidates_when_any_pane_changes
  ui::overlay::grid_key_tests::should_reuse_empty
  ui::overlay::grid_key_tests::should_reuse_equal
  ui::overlay::grid_key_tests::should_reuse_changed
  ui::overlay::grid_canvas_state_tests::default_state_has_no_cached_key
  ui::overlay::grid_canvas_state_tests::stored_key_is_recognized_by_should_reuse
2026-08-26 23:53:31 +01:00
Hakan Seven 6ef2d75e84 fix(dimarc): complete merge integration
Preserve source-plane geometry and associative arc parameters while combining the latest properties and tolerance workflows.
2026-08-27 01:00:23 +03:00
Hakan Seven 81e7add1dd fix(tolerance): complete workflow integration
Sync current main and companion codec changes before preserving unsupported frame rows, rendering in the entity plane, and sharing final layout metrics with placement preview.
2026-08-27 00:14:08 +03:00
ramox81 5a9894fd3e Complete jogged radius dimension workflow 2026-08-26 17:17:55 +03:00
ramox81 83d41b0f7d Remove handle from general properties 2026-08-26 15:56:03 +03:00
ramox81 8aca9a0aef Complete arc length dimension workflow 2026-08-26 15:32:37 +03:00
Hakan Seven bbd58eb9f2 fix(layout): identify sheet viewports reliably 2026-08-26 14:23:08 +03:00
ramox81 66bf4b1d5f Honor fixed tolerance text styles 2026-08-26 14:19:24 +03:00
ramox81 d039bcd4f9 Expose tolerance annotation properties 2026-08-26 14:19:01 +03:00
ramox81 aa552d48e4 Align tolerance property rows 2026-08-26 14:18:43 +03:00
ramox81 de294447a9 Complete geometric tolerance workflow and properties 2026-08-26 13:54:20 +03:00
Hakan Seven 8c61d89b1e fix(layout): complete paperspace integration
Apply each layout's embedded page setup and plot style consistently across display, PDF, printing, and multi-layout output.\n\nRefs #844
2026-08-26 08:58:44 +03:00
Karim Jerbi 9c8f841f71 fix(insert): capped interactive block search and CLIPROMPTLINES
INSERT enumerated all block names in a single prompt string, causing unbounded overlay growth and full-screen occlusion in drawings with many blocks. Replace prompt enumeration with a ranked, incrementally filtered suggestion model: BlockPicker maintains precomputed lower/upper caches and usage ranks (MRU/frequency), filters via O(n) substring scan and partial sorting (select_nth_unstable) to O(k), bounded to CLIPROMPTLINES.

Introduce CLIPROMPTLINES (Integer 0-50, Registry, default 3) for the number of temporary prompt lines above the command window; persist in UserSettings, expose via SETVAR and direct entry, enforce in CommandLine::view. Suggestion count is in direct relation to CLIPROMPTLINES (limit = clip, capped to 50).

Make search live without requiring Enter: add CadCommand::on_live_input, implement for INSERT/MINSERT via picker.set_needle, and wire to command-line input paths (Message::CommandInput, on_command_append_char, on_command_backspace). Updates use upper/lower caches and partial sort for <0.2ms per keystroke on 10k blocks, with debounced block-usage persistence (MRU cap 20, freq cap 200) to avoid I/O thrash. Correct tri_count test helper to use display_from_solid.
2026-08-25 23:18:05 +01:00
Hakan Seven cefe861203 fix(viewport): preserve hidden-border content
Keep layout viewport content active when its boundary layer is off.

Refs #844
2026-08-26 00:50:09 +03:00
Hakan Seven 9a8f29ae45 fix(print): avoid Windows dispatch hangs
Use unique temporary PDFs and keep shell print handlers off the UI thread. Report missing PDF print associations explicitly.

Refs #855
2026-08-26 00:00:23 +03:00
Hakan Seven 2ed4a5d8f3 fix(dimension): hide definition markers
Keep direct POINT helpers out of baked dimension pictures while preserving nested arrow block geometry.

Refs #864
2026-08-25 23:51:11 +03:00
Hakan Seven b2b84283ae fix(io): trust decoded current layer
Remove the application-side CLAYER fallback now that cadcodec resolves the header handle during document construction.

Refs #743
2026-08-25 23:21:24 +03:00
Hakan Seven 450135960c fix(ui): widen linetype dropdown menus
Refs #782
2026-08-25 23:06:10 +03:00
Hakan Seven fd801fac1b fix(hatch): render weighted pattern strokes
Show styled boundaries only while selected.\n\nRefs #821
2026-08-25 22:44:51 +03:00
Hakan Seven 81de94fdbb fix(zoom): include inserted block extents
Use current rendered geometry instead of load-time cluster spans when fitting model extents.

Refs #853
2026-08-25 22:11:18 +03:00
Hakan Seven 968ee3fda4 fix(dimension): complete ordinate workflow 2026-08-25 21:36:04 +03:00
Hakan Seven 9ded5eb04f feat(dimension): complete diameter workflow 2026-08-25 20:57:28 +03:00
Hakan Seven 8140c39e0d feat(dimension): complete radius workflow 2026-08-25 19:26:24 +03:00
Hakan Seven 649dfae337 fix(dimension): complete angular workflow 2026-08-25 18:55:25 +03:00
Hakan Seven 47612fd662 fix(plot): correct style mode behavior (#874) 2026-08-25 18:08:52 +03:00
ramox81 e34b67c709 fix(dimension): complete ordinate workflow 2026-08-25 17:10:55 +03:00
ramox81 75f042607e Align diameter properties and graphics 2026-08-25 15:39:48 +03:00
ramox81 0ba33a55ff Add associative diameter dimension workflow 2026-08-25 15:39:44 +03:00
ramox81 656501e91d Remove extra radius primary unit properties 2026-08-25 14:28:00 +03:00
ramox81 f7d8522520 Restore radius extension line properties 2026-08-25 14:14:46 +03:00
ramox81 205893c784 Align radius dimension properties and graphics 2026-08-25 13:56:35 +03:00
ramox81 d33c52a0b8 Add associative radius dimension workflow 2026-08-25 13:56:34 +03:00
Hakan Seven 97ec3ed67e fix(dimension): complete aligned workflow
Preserve association modes, source geometry, and sub-unit formatting.
2026-08-25 13:18:09 +03:00
ramox81 6bbef80a26 Complete angular dimension layout and fitting 2026-08-25 12:23:29 +03:00
ramox81 24b344b2b2 Complete angular dimension interaction and associations 2026-08-25 12:23:21 +03:00
ramox81 04d824974d Align angular dimension properties and rendering 2026-08-25 11:29:39 +03:00