Files
create/src
forbes 723a8c98d5
All checks were successful
Build and Test / build (pull_request) Successful in 42m37s
feat: .kc file format — Layer 1 (format registration)
Register .kc as a recognized file type alongside .FCStd:

C++ changes:
- Document.cpp: checkFileName() accepts .kc extension
- Gui/Document.cpp: Save As and Save Copy dialogs include *.kc
- CommandDoc.cpp: Merge document dialog includes *.kc
- DlgProjectUtility.cpp: Project utility dialog includes *.kc

Python changes:
- FreeCADInit.py: register *.kc in import type system
- kc_format.py: DocumentObserver that preserves silo/ ZIP entries
  across saves (caches before save, re-injects after save)
- InitGui.py: register kc_format observer on startup

Silo integration:
- get_cad_file_path() generates .kc paths for new files
- find_file_by_part_number() finds both .kc and .FCStd, preferring .kc
- search_local_files() lists both .kc and .FCStd files

The .kc format is a superset of .FCStd with a silo/ directory
containing Kindred platform metadata. See docs/KC_SPECIFICATION.md.
2026-02-13 13:39:42 -06:00
..