Files
XplorePlane/XplorePlane.sln
T
XplorePlane Developer 957157ae80 fix: 修复编译错误、BGA向导预览、算子重复插入及状态栏消息
## Compilation fixes
- Fix XAML namespace reference XplorePlane.Converters → XplorePlane.Helpers (EventLogView, StateDisplayView)
- Add missing using for ISampleTypeRepository / JsonSampleTypeRepository in App.xaml.cs
- Fix ILoggerService.Warn() calls using Exception as first arg instead of message string
- Serialize CncProgram to JSON when passing to MatrixLayout (expects string, not CncProgram object)
- Suppress CS8632 nullable annotation warnings project-wide

## BGA wizard fixes
- Fix preview not showing on step 3: force RefreshBgaPreview() when entering final step
- Add step validation in CanNext() to prevent skipping to preview with invalid inputs
- Notify NextCommand.CanExecuteChanged when inputs change
- Fix RunProgress runtime binding error: set Mode=OneWay for ProgressBar.Value

## Operator toolbox: prevent duplicate insertion
- Add static OperatorTarget property for direct dispatch to active pipeline
- PipelineEditorView registers as toolbox target on load (floating window only)
- CNC page sets initial target; PipelineEditorWindow resets to CNC pipeline on close
- '+' button inserts only to the active pipeline instead of broadcasting to all subscribers

## Pipeline editor status bar messages
- Add StatusBarMessageEvent / StatusBarMessagePayload to CommonEvents.cs
- PipelineEditorViewModel publishes status on all ops (add/remove/reorder/save/execute)
- MainViewModel subscribes and displays on main window bottom status bar
- Auto-clear after timeout (3s info, 5s error)

## docs
- Merge three architecture docs into consolidated XplorePlane-架构与结构说明.md
2026-07-24 15:59:16 +08:00

149 lines
10 KiB
Plaintext

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.14.37314.3
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XplorePlane", "XplorePlane\XplorePlane.csproj", "{07978DB9-4B88-4F42-9054-73992742BD6A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Camera", "XP.Camera\XP.Camera.csproj", "{82762CDE-48CC-4E28-ABEC-1FC752BACEF4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.ImageProcessing.Processors", "XP.ImageProcessing.Processors\XP.ImageProcessing.Processors.csproj", "{2687E12E-3053-E1C6-5268-E4FF547EC212}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.ImageProcessing.RoiControl", "XP.ImageProcessing.RoiControl\XP.ImageProcessing.RoiControl.csproj", "{57061533-EC58-1B1C-3862-9164BC73C806}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ExternalLibraries", "ExternalLibraries", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}"
ProjectSection(SolutionItems) = preProject
ExternalLibraries\concrt140.dll = ExternalLibraries\concrt140.dll
ExternalLibraries\config.json = ExternalLibraries\config.json
ExternalLibraries\cvextern.dll = ExternalLibraries\cvextern.dll
ExternalLibraries\Models\EDSR_x2.onnx = ExternalLibraries\Models\EDSR_x2.onnx
ExternalLibraries\Models\EDSR_x3.onnx = ExternalLibraries\Models\EDSR_x3.onnx
ExternalLibraries\Models\EDSR_x4.onnx = ExternalLibraries\Models\EDSR_x4.onnx
ExternalLibraries\Models\FSRCNN_x2.onnx = ExternalLibraries\Models\FSRCNN_x2.onnx
ExternalLibraries\Models\FSRCNN_x3.onnx = ExternalLibraries\Models\FSRCNN_x3.onnx
ExternalLibraries\Models\FSRCNN_x4.onnx = ExternalLibraries\Models\FSRCNN_x4.onnx
ExternalLibraries\HslCommunication.dll = ExternalLibraries\HslCommunication.dll
ExternalLibraries\libusb-1.0.dll = ExternalLibraries\libusb-1.0.dll
ExternalLibraries\msvcp140.dll = ExternalLibraries\msvcp140.dll
ExternalLibraries\msvcp140_1.dll = ExternalLibraries\msvcp140_1.dll
ExternalLibraries\msvcp140_2.dll = ExternalLibraries\msvcp140_2.dll
ExternalLibraries\msvcp140_atomic_wait.dll = ExternalLibraries\msvcp140_atomic_wait.dll
ExternalLibraries\msvcp140_codecvt_ids.dll = ExternalLibraries\msvcp140_codecvt_ids.dll
ExternalLibraries\opencv_videoio_ffmpeg490_64.dll = ExternalLibraries\opencv_videoio_ffmpeg490_64.dll
ExternalLibraries\vcruntime140.dll = ExternalLibraries\vcruntime140.dll
ExternalLibraries\vcruntime140_1.dll = ExternalLibraries\vcruntime140_1.dll
ExternalLibraries\version_string.inc = ExternalLibraries\version_string.inc
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Common", "XP.Common\XP.Common.csproj", "{866A7353-C822-114E-48DE-26E8A3E17F9E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Hardware.Detector", "XP.Hardware.Detector\XP.Hardware.Detector.csproj", "{760D5EAC-795A-6666-1BE0-E30B1B2822C3}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Hardware.MotionControl", "XP.Hardware.MotionControl\XP.Hardware.MotionControl.csproj", "{9391C622-4552-8081-A1E8-B3447E0E7A4F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Hardware.PLC", "XP.Hardware.PLC\XP.Hardware.PLC.csproj", "{9E9FB4E7-22F9-D475-D9DA-0D647BF6DFD9}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Hardware.RaySource", "XP.Hardware.RaySource\XP.Hardware.RaySource.csproj", "{67D180E8-AB8F-FF62-ED46-270803B8F713}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XP.Hardware.RaySource.Comet.Host", "XP.Hardware.RaySource.Comet.Host\XP.Hardware.RaySource.Comet.Host.csproj", "{B8F5E3A1-7C2D-4E9F-A1B3-6D8E4F2C9A01}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Hardware.RaySource.Comet.Messages", "XP.Hardware.RaySource.Comet.Messages\XP.Hardware.RaySource.Comet.Messages.csproj", "{6170AF9F-A792-6BDC-4E25-072EA87FAA15}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XP.Hardware", "XP.Hardware", "{29E2D405-341A-4445-B788-3E77A677C2BA}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XP.ImageProcessing", "XP.ImageProcessing", "{C24535A4-6717-4149-AB81-1EF09A15F90F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Scan", "XP.Scan\XP.Scan.csproj", "{F40C71DC-7639-CD57-6183-2EAA78980EC5}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XP.ScanMode", "XP.ScanMode", "{E208A5EA-7E3B-46B4-B045-A703F6274218}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "XP.Calibration", "XP.Calibration\XP.Calibration.csproj", "{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XP.Calibration", "XP.Calibration", "{D4E5F6A7-B8C9-0123-4567-89ABCDEF0123}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XP.ReportEngine", "XP.ReportEngine\XP.ReportEngine.csproj", "{809A8588-F64C-4738-8827-CFBC59943DBF}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{07978DB9-4B88-4F42-9054-73992742BD6A}.Debug|x64.ActiveCfg = Debug|x64
{07978DB9-4B88-4F42-9054-73992742BD6A}.Debug|x64.Build.0 = Debug|x64
{07978DB9-4B88-4F42-9054-73992742BD6A}.Release|x64.ActiveCfg = Release|x64
{07978DB9-4B88-4F42-9054-73992742BD6A}.Release|x64.Build.0 = Release|x64
{82762CDE-48CC-4E28-ABEC-1FC752BACEF4}.Debug|x64.ActiveCfg = Debug|x64
{82762CDE-48CC-4E28-ABEC-1FC752BACEF4}.Debug|x64.Build.0 = Debug|x64
{82762CDE-48CC-4E28-ABEC-1FC752BACEF4}.Release|x64.ActiveCfg = Release|x64
{82762CDE-48CC-4E28-ABEC-1FC752BACEF4}.Release|x64.Build.0 = Release|x64
{2687E12E-3053-E1C6-5268-E4FF547EC212}.Debug|x64.ActiveCfg = Debug|x64
{2687E12E-3053-E1C6-5268-E4FF547EC212}.Debug|x64.Build.0 = Debug|x64
{2687E12E-3053-E1C6-5268-E4FF547EC212}.Release|x64.ActiveCfg = Release|x64
{2687E12E-3053-E1C6-5268-E4FF547EC212}.Release|x64.Build.0 = Release|x64
{57061533-EC58-1B1C-3862-9164BC73C806}.Debug|x64.ActiveCfg = Debug|x64
{57061533-EC58-1B1C-3862-9164BC73C806}.Debug|x64.Build.0 = Debug|x64
{57061533-EC58-1B1C-3862-9164BC73C806}.Release|x64.ActiveCfg = Release|x64
{57061533-EC58-1B1C-3862-9164BC73C806}.Release|x64.Build.0 = Release|x64
{866A7353-C822-114E-48DE-26E8A3E17F9E}.Debug|x64.ActiveCfg = Debug|x64
{866A7353-C822-114E-48DE-26E8A3E17F9E}.Debug|x64.Build.0 = Debug|x64
{866A7353-C822-114E-48DE-26E8A3E17F9E}.Release|x64.ActiveCfg = Release|x64
{866A7353-C822-114E-48DE-26E8A3E17F9E}.Release|x64.Build.0 = Release|x64
{760D5EAC-795A-6666-1BE0-E30B1B2822C3}.Debug|x64.ActiveCfg = Debug|x64
{760D5EAC-795A-6666-1BE0-E30B1B2822C3}.Debug|x64.Build.0 = Debug|x64
{760D5EAC-795A-6666-1BE0-E30B1B2822C3}.Release|x64.ActiveCfg = Release|x64
{760D5EAC-795A-6666-1BE0-E30B1B2822C3}.Release|x64.Build.0 = Release|x64
{9391C622-4552-8081-A1E8-B3447E0E7A4F}.Debug|x64.ActiveCfg = Debug|x64
{9391C622-4552-8081-A1E8-B3447E0E7A4F}.Debug|x64.Build.0 = Debug|x64
{9391C622-4552-8081-A1E8-B3447E0E7A4F}.Release|x64.ActiveCfg = Release|x64
{9391C622-4552-8081-A1E8-B3447E0E7A4F}.Release|x64.Build.0 = Release|x64
{9E9FB4E7-22F9-D475-D9DA-0D647BF6DFD9}.Debug|x64.ActiveCfg = Debug|x64
{9E9FB4E7-22F9-D475-D9DA-0D647BF6DFD9}.Debug|x64.Build.0 = Debug|x64
{9E9FB4E7-22F9-D475-D9DA-0D647BF6DFD9}.Release|x64.ActiveCfg = Release|x64
{9E9FB4E7-22F9-D475-D9DA-0D647BF6DFD9}.Release|x64.Build.0 = Release|x64
{67D180E8-AB8F-FF62-ED46-270803B8F713}.Debug|x64.ActiveCfg = Debug|x64
{67D180E8-AB8F-FF62-ED46-270803B8F713}.Debug|x64.Build.0 = Debug|x64
{67D180E8-AB8F-FF62-ED46-270803B8F713}.Release|x64.ActiveCfg = Release|x64
{67D180E8-AB8F-FF62-ED46-270803B8F713}.Release|x64.Build.0 = Release|x64
{B8F5E3A1-7C2D-4E9F-A1B3-6D8E4F2C9A01}.Debug|x64.ActiveCfg = Debug|x64
{B8F5E3A1-7C2D-4E9F-A1B3-6D8E4F2C9A01}.Debug|x64.Build.0 = Debug|x64
{B8F5E3A1-7C2D-4E9F-A1B3-6D8E4F2C9A01}.Release|x64.ActiveCfg = Release|x64
{B8F5E3A1-7C2D-4E9F-A1B3-6D8E4F2C9A01}.Release|x64.Build.0 = Release|x64
{6170AF9F-A792-6BDC-4E25-072EA87FAA15}.Debug|x64.ActiveCfg = Debug|x64
{6170AF9F-A792-6BDC-4E25-072EA87FAA15}.Debug|x64.Build.0 = Debug|x64
{6170AF9F-A792-6BDC-4E25-072EA87FAA15}.Release|x64.ActiveCfg = Release|x64
{6170AF9F-A792-6BDC-4E25-072EA87FAA15}.Release|x64.Build.0 = Release|x64
{F40C71DC-7639-CD57-6183-2EAA78980EC5}.Debug|x64.ActiveCfg = Debug|x64
{F40C71DC-7639-CD57-6183-2EAA78980EC5}.Debug|x64.Build.0 = Debug|x64
{F40C71DC-7639-CD57-6183-2EAA78980EC5}.Release|x64.ActiveCfg = Release|x64
{F40C71DC-7639-CD57-6183-2EAA78980EC5}.Release|x64.Build.0 = Release|x64
{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|x64.ActiveCfg = Debug|x64
{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|x64.Build.0 = Debug|x64
{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|x64.ActiveCfg = Release|x64
{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|x64.Build.0 = Release|x64
{809A8588-F64C-4738-8827-CFBC59943DBF}.Debug|x64.ActiveCfg = Debug|x64
{809A8588-F64C-4738-8827-CFBC59943DBF}.Debug|x64.Build.0 = Debug|x64
{809A8588-F64C-4738-8827-CFBC59943DBF}.Release|x64.ActiveCfg = Release|x64
{809A8588-F64C-4738-8827-CFBC59943DBF}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{82762CDE-48CC-4E28-ABEC-1FC752BACEF4} = {C24535A4-6717-4149-AB81-1EF09A15F90F}
{2687E12E-3053-E1C6-5268-E4FF547EC212} = {C24535A4-6717-4149-AB81-1EF09A15F90F}
{57061533-EC58-1B1C-3862-9164BC73C806} = {C24535A4-6717-4149-AB81-1EF09A15F90F}
{760D5EAC-795A-6666-1BE0-E30B1B2822C3} = {29E2D405-341A-4445-B788-3E77A677C2BA}
{9391C622-4552-8081-A1E8-B3447E0E7A4F} = {29E2D405-341A-4445-B788-3E77A677C2BA}
{9E9FB4E7-22F9-D475-D9DA-0D647BF6DFD9} = {29E2D405-341A-4445-B788-3E77A677C2BA}
{67D180E8-AB8F-FF62-ED46-270803B8F713} = {29E2D405-341A-4445-B788-3E77A677C2BA}
{B8F5E3A1-7C2D-4E9F-A1B3-6D8E4F2C9A01} = {29E2D405-341A-4445-B788-3E77A677C2BA}
{6170AF9F-A792-6BDC-4E25-072EA87FAA15} = {29E2D405-341A-4445-B788-3E77A677C2BA}
{F40C71DC-7639-CD57-6183-2EAA78980EC5} = {E208A5EA-7E3B-46B4-B045-A703F6274218}
{A1B2C3D4-E5F6-7890-ABCD-EF1234567890} = {D4E5F6A7-B8C9-0123-4567-89ABCDEF0123}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {DB6D69BA-49FD-432F-8069-2A8F64933CDE}
EndGlobalSection
EndGlobal