feat: .kc file format — Layer 1 (format registration)
All checks were successful
Build and Test / build (pull_request) Successful in 42m37s
All checks were successful
Build and Test / build (pull_request) Successful in 42m37s
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.
This commit is contained in:
@@ -529,7 +529,7 @@ void StdCmdMergeProjects::activated(int iMsg)
|
||||
Gui::getMainWindow(),
|
||||
QString::fromUtf8(QT_TR_NOOP("Merge Document")),
|
||||
FileDialog::getWorkingDirectory(),
|
||||
QString::fromUtf8(QT_TR_NOOP("%1 document (*.FCStd)")).arg(exe)
|
||||
QString::fromUtf8(QT_TR_NOOP("%1 document (*.FCStd *.kc)")).arg(exe)
|
||||
);
|
||||
if (!project.isEmpty()) {
|
||||
FileDialog::setWorkingDirectory(project);
|
||||
|
||||
Reference in New Issue
Block a user