Files
leocad/common
Leonardo Zide 038e091af4 Return owned include files and consolidate source opening
Callback-based include readers hid open failures and required parser callbacks
to report success through captured variables. Replace them with OpenPieceDataFile
and OpenPrimitiveFile returning lcResult of an owned file positioned at zero.
The mesh loader consumes the file directly and retains its existing strict or
permissive policy for missing includes.

Route include reads, piece builds and primitive builds through the existing
OpenFile service for archive and disk access. Preserve registered-source and
fallback search order, directory retries after parse failure, and primitive
high/low-detail selection. Primitive opening uses its own source metadata,
including stud-style archives with directory libraries, and records opening
errors through the existing synchronized failure path.

Document the owning file contract and retry boundary. Validation: warning-free
macOS Qt 6.10 Debug build, all 51 offscreen lifecycle checks and whitespace checks
pass. Coverage includes independent cursors across unload, missing/invalid sources,
include failure policy, parse retries, official precedence and low-detail/styled
primitive builds. Successful GPU rendering was not tested.
2026-10-19 21:28:49 -07:00
..
2026-10-18 23:22:28 -07:00
2026-03-10 21:11:40 -07:00
2026-03-10 21:11:40 -07:00
2026-04-29 20:59:17 -07:00
2023-04-29 19:55:54 -07:00
2023-05-15 21:12:08 -07:00
2026-04-29 20:59:17 -07:00
2023-05-15 21:04:48 -07:00
2026-09-30 10:03:54 +02:00
2026-09-12 15:54:44 -07:00
2020-01-10 17:40:14 -08:00
2023-05-15 21:12:08 -07:00
2026-03-10 21:11:40 -07:00
2023-05-15 21:04:48 -07:00
2023-05-15 21:12:08 -07:00
2023-05-15 21:04:48 -07:00
2026-09-30 10:03:54 +02:00
2025-11-19 23:10:18 -08:00
2026-03-10 21:11:40 -07:00
2026-03-10 21:11:40 -07:00
2026-04-29 20:59:17 -07:00
2023-04-29 20:04:58 -07:00
2026-05-02 15:08:13 -07:00
2026-05-02 15:08:13 -07:00
2026-05-02 15:51:08 -07:00
2026-09-12 15:54:44 -07:00
2026-05-02 15:51:08 -07:00
2026-03-10 21:11:40 -07:00
2026-09-21 22:34:18 -07:00
2026-09-12 15:54:44 -07:00
2026-03-10 21:11:40 -07:00
2026-04-29 20:59:17 -07:00
2021-01-07 10:46:57 -08:00
2026-10-18 23:22:28 -07:00
2026-09-12 15:54:44 -07:00
2026-05-02 16:06:27 -07:00
2026-05-02 16:06:27 -07:00
2026-05-02 16:06:27 -07:00
2026-09-12 15:54:44 -07:00
2026-03-10 21:11:40 -07:00
2025-07-05 12:00:52 -07:00
2026-03-10 21:11:40 -07:00
2025-12-15 11:19:23 -03:00
2026-04-29 20:59:17 -07:00
2026-03-30 22:50:17 -07:00
2024-05-13 19:59:37 -07:00
2024-05-13 19:59:37 -07:00
2026-10-18 23:22:28 -07:00
2026-03-10 21:11:40 -07:00
2026-03-10 19:55:49 -07:00
2026-10-18 23:22:28 -07:00