Commit fbcc068
committed
Add backwards compatibility for legacy XML project files (data levels 3-5)
Reintroduce read-only support for the old XML-based .mbs project file
format. The XML parser converts legacy files into the same ProjectSettings
structure used by the JSON parser, including constructing the adapter
settings JSON blob from XML connection/device elements. Saving always
produces JSON v6, effectively auto-migrating old files.
All XML-specific code is isolated in separate files (ProjectFileXmlParser)
for easy future removal. The only change to existing code is a small
format-detection branch in ProjectFileHandler::openProjectFile().
https://claude.ai/code/session_01Lyu9U25MtH34zG7gUFLe2u1 parent 8de9368 commit fbcc068
9 files changed
Lines changed: 1512 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
17 | 33 | | |
18 | 34 | | |
19 | 35 | | |
| |||
58 | 74 | | |
59 | 75 | | |
60 | 76 | | |
| 77 | + | |
61 | 78 | | |
| 79 | + | |
62 | 80 | | |
63 | 81 | | |
64 | 82 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | 9 | | |
9 | 10 | | |
| |||
35 | 36 | | |
36 | 37 | | |
37 | 38 | | |
38 | | - | |
39 | | - | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
40 | 55 | | |
41 | 56 | | |
42 | 57 | | |
| |||
0 commit comments