Commit Graph
136 Commits
Author SHA1 Message Date
ramox81 a706858ff1 Use solid edges for normal selection 2026-09-02 14:38:22 +03:00
Hakan Seven 5c7e8976e1 fix(sweep): validate property geometry 2026-09-02 00:51:20 +03:00
ramox81 5b26fc938e Keep derived sweep rows visible 2026-09-01 23:30:58 +03:00
ramox81 529ecd8cd6 Merge remote-tracking branch 'fork/codex/polysolid-parity' into codex/polysolid-parity
# Conflicts:
#	Cargo.lock
#	Cargo.toml
#	src/scene/model/solid_history.rs
2026-09-01 23:14:21 +03:00
ramox81 8ec47061fe Align polysolid sweep properties 2026-09-01 23:10:40 +03:00
Hakan Seven 227a41ec59 fix(polysolid): preserve kernel history behavior 2026-09-01 23:09:35 +03:00
Hakan Seven efd4765c8f Merge remote-tracking branch 'origin/main' into review-pr-955
# Conflicts:
#	Cargo.lock
#	Cargo.toml
#	src/scene/model/solid_history.rs
2026-09-01 22:56:53 +03:00
Hakan Seven 8f5bffd74a fix(pyramid): preserve displayed construction values 2026-09-01 22:51:42 +03:00
ramox81 1dd6b115cf feat(model): align polysolid workflow 2026-09-01 22:01:43 +03:00
ramox81 11233aa66a Match torus property behavior 2026-09-01 12:39:37 +03:00
ramox81 f9641bd9d5 Correct pyramid rotation and property sections 2026-09-01 11:19:06 +03:00
ramox81 0bfa48909f Match pyramid creation and properties behavior 2026-09-01 10:38:05 +03:00
Hakan Seven 6d6defa0ad fix(color): show color book identity 2026-09-01 08:44:28 +03:00
Hakan Seven ec13621adb feat(model): complete cylinder workflow 2026-08-31 22:18:41 +03:00
Hakan Seven 72669f58f3 feat(model): complete cone workflow 2026-08-31 22:07:49 +03:00
Hakan Seven 86ce44153b feat(model): complete wedge workflow 2026-08-31 22:00:11 +03:00
ramox81 9cc299d024 Align sphere properties 2026-08-31 18:01:56 +03:00
ramox81 013703b5ba Keep show history independently editable 2026-08-31 16:49:46 +03:00
ramox81 4ba0ea8808 Fix cone silhouettes and history properties 2026-08-31 16:33:10 +03:00
ramox81 70e6138f54 Honor drawing solid history controls 2026-08-31 15:59:16 +03:00
ramox81 e4cfd4c142 Complete cylinder workflow and history properties 2026-08-31 14:51:02 +03:00
ramox81 d450376771 Align elliptical CONE properties 2026-08-31 12:21:15 +03:00
ramox81 0f4825f06c Align CONE properties and editing 2026-08-31 11:58:29 +03:00
ramox81 a2a64dcfb7 Complete CONE creation workflow 2026-08-31 11:58:18 +03:00
ramox81 fea64a1e91 Complete WEDGE creation and properties parity 2026-08-31 10:48:53 +03:00
Hakan Seven fc93efeed7 fix(box): preserve construction semantics 2026-08-28 20:44:14 +03:00
Hakan Seven ff1f873633 fix(mleader): repair creation and editing 2026-08-28 19:36:48 +03:00
ramox81 766213495d Add BOX corner and face grips 2026-08-28 16:38:29 +03:00
ramox81 27f648d2bb Align BOX properties and history controls 2026-08-28 16:36:46 +03:00
ramox81 cce25be83a Complete multileader creation and property behavior 2026-08-27 17:35:47 +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 4209c35ba3 fix(polyline): render fill mode boundaries
Use kernel-produced band outlines when FILLMODE is off. Preserve centerline linetype stations through inserts, clipping, projection, and PDF export.
2026-08-24 22:18:44 +03:00
Karim Jerbi 7215faae44 feat(properties): make inherited properties editable, align dropdowns, and switch transparency to EditChoice
Enable in-place editing of inherited properties in the Properties panel:
- Transparency: Switch to PropValue::EditChoice with ByLayer and ByBlock presets to allow direct typing of any numeric percentage value (0..90%) without combo_box autocomplete interference.
- Select-all-on-click: Integrate EditChoice text inputs into build_field_key_map with dedicated widget IDs, preserving click-to-select-all across editable fields.
- Material: Provide bounded preset choices (ByLayer, ByBlock, Global, and active custom material) to avoid scanning large drawing dictionaries.
- Plot style: Implement mode-aware behavior with interactive Choice in STB mode and ReadOnlyWithTooltip in CTB mode.
- Read-only tooltips: Introduce PropValue::ReadOnlyWithTooltip to provide contextual explanations for locked fields while preserving mouse text selection and clipboard copying.
- Dropdown alignment & unified borders: Fix EditChoice internal input/caret background clipping so the container's 1px neutral/active border surrounds the entire control identically to Lineweight and text inputs.
- Document defaults & aggregation: Synchronize document header defaults when editing with No selection, and aggregate heterogeneous multi-selections (*VARIES*).
2026-08-23 23:20:34 +01:00
Hakan Seven 06cd0ec6a9 feat(model): add exact solid modelling tools 2026-08-23 22:53:31 +03:00
Hakan Seven 7293bec1b9 fix(point): preserve relative marker sizing
Keep rendering, picking, block transforms, and plotted output on the
same viewport-relative PDSIZE geometry without overloading wire width
fields.
2026-08-22 22:22:01 +03:00
Hakan Seven d9aead3fbc Merge pull request #856 from ramox81/codex/align-circle-behavior 2026-08-21 23:29:57 +03:00
Hakan Seven a87ca09fa4 Merge pull request #854 from ramox81/codex/align-arc-behavior 2026-08-21 21:41:24 +03:00
Hakan Seven 4bc02b6b4a fix: correct hatch geometry workflow 2026-08-21 20:52:03 +03:00
ramox81 390d42a63a Support planar circle tangent snapping 2026-08-21 16:49:49 +03:00
ramox81 5f9d8a9e0e Align arc creation and editing behavior 2026-08-21 14:03:58 +03:00
ramox81 f83037271c Complete hatch creation and editing workflow 2026-08-21 12:57:19 +03:00
Hakan Seven 44efb8fd53 feat(frame): complete frame controls
Preserve frame geometry for selection while separating viewport and plot visibility across supported reference entities.

Refs #642
2026-08-20 23:37:02 +03:00
Hakan Seven 2a852f4479 feat(gradient): align editing and rendering 2026-08-20 21:17:10 +03:00
ramox81 aee3397f5d fix(gradient): align properties and editing 2026-08-20 15:33:09 +03:00
Hakan Seven 5e62da464e fix(properties): preserve literal text
Separate numeric fields from names and content so only numeric property values are evaluated as expressions.

Refs #809
2026-08-20 14:58:12 +03:00
Hakan Seven 1c408e3a73 feat(spline): improve fit and CV editing
Keep planar conversions kernel-backed and leave unsupported 3D, CV-to-fit, and closed rebuilds unavailable instead of changing curve data.\n\nRefs #815
2026-08-20 00:18:45 +03:00
Hakan Seven 0f250bb485 feat(ellipse): add complete grip editing 2026-08-19 23:48:13 +03:00
ramox81 0d37d3ff78 Improve spline fit and control vertex grips 2026-08-19 11:02:32 +03:00
Hakan Seven 36e0e40b36 perf(raster): avoid needless image resampling 2026-08-16 21:22:58 +03:00