From 3f62d18e4361cd1d7a49c126765d95b2ad9c8246 Mon Sep 17 00:00:00 2001
From: chr <chr@mailcom>
Date: 星期二, 04 三月 2025 08:42:07 +0800
Subject: [PATCH] 优化插件;
---
PdmSwPlugin.Main/SwAddIn/MainControl.cs | 1
PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml | 2
PdmSwPlugin.PropertySetting/PropertySettingControl.xaml.cs | 5
.vs/SwPlugin/v17/DocumentLayout.backup.json | 310 ++++++++++-
PdmSwPlugin.Common/Util/CustomPropertyUtil.cs | 106 ++-
PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml.cs | 8
PdmSwPlugin.PropertySetting/CommonSettingControl.xaml | 30 +
InnoSetupScript/PdmSwPlugin.iss | 2
PdmSwPlugin.Common/Interface/IActiveDocChangeHandler.cs | 2
PdmSwPlugin.PropertySetting/CommonSettingControl.xaml.cs | 249 ++------
PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs | 5
PdmSwPlugin.PropertySetting/SettingControl.xaml.cs | 15
PdmSwPlugin.Main/MainControl.xaml | 3
PdmSwPlugin.Common/Style/ComboxStyle.xaml | 1
PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml | 2
PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml | 2
PdmSwPlugin.PDM/PdmControl.xaml.cs | 176 +----
.vs/SwPlugin/v17/DocumentLayout.json | 321 ++++++++++-
PdmSwPlugin.PropertySetting/Util/PropHolder.cs | 65 ++
PdmSwPlugin.Common/Util/Pdm/BomTreeReader.cs | 2
PdmSwPlugin.PropertySetting/Panel/DefaultPanel.xaml.cs | 1
PdmSwPlugin.DrawApprove/DrawAuditHisControl.xaml | 2
PdmSwPlugin.Main/MainTab.xaml | 13
PdmSwPlugin.MaterialSelect/SwAddIn/MaterialSelectControl.cs | 4
PdmSwPlugin.DrawApprove/DrawApprove.xaml | 2
PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml.cs | 8
PdmSwPlugin.PropertySetting/PdmSwPlugin.PropertySetting.csproj | 2
PdmSwPlugin.Common/Util/SwDMUtil.cs | 134 ++++
PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml.cs | 8
PdmSwPlugin.Main/Constant/PluginConst.cs | 2
PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml | 2
PdmSwPlugin.PropertySetting/Util/PropSetter.cs | 57 ++
PdmSwPlugin.Main/MainControl.xaml.cs | 1
PdmSwPlugin.Common/Util/UI/MultiExWindow.xaml.cs | 20
PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml.cs | 8
PdmSw/log4net.config | 2
PdmSwPlugin.PDM/PdmControl.xaml | 2
37 files changed, 1,138 insertions(+), 437 deletions(-)
diff --git a/.vs/SwPlugin/v17/DocumentLayout.backup.json b/.vs/SwPlugin/v17/DocumentLayout.backup.json
index 6ae4a6d..6846227 100644
--- a/.vs/SwPlugin/v17/DocumentLayout.backup.json
+++ b/.vs/SwPlugin/v17/DocumentLayout.backup.json
@@ -3,16 +3,80 @@
"WorkspaceRootPath": "D:\\Workspace\\PdmSwPlugin2\\",
"Documents": [
{
- "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.pdm\\pdmcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|solutionrelative:pdmswplugin.pdm\\pdmcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.propertysetting\\commonsettingcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "AbsoluteMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.pdm\\pdmcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|solutionrelative:pdmswplugin.pdm\\pdmcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.main\\constant\\pluginconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\constant\\pluginconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\util\\swdmutil.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\util\\swdmutil.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmsw\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
+ "RelativeMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|solutionrelative:pdmsw\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\maintab.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\maintab.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.drawapprove\\drawaudithiscontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|solutionrelative:pdmswplugin.drawapprove\\drawaudithiscontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.drawapprove\\drawapprove.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|solutionrelative:pdmswplugin.drawapprove\\drawapprove.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.propertysetting\\commonsettingcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\commonsettingcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\maincontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\maincontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\style\\linkbutton.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\style\\linkbutton.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\maincontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\maincontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|D:\\Workspace\\PdmSwPlugin2\\wpfui\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
+ "RelativeMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|solutionrelative:wpfui\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|D:\\Workspace\\PdmSwPlugin2\\wpfui\\properties\\assemblyinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|solutionrelative:wpfui\\properties\\assemblyinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\swaddin\\maincontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\swaddin\\maincontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmsw\\swaddin.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|solutionrelative:pdmsw\\swaddin.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\util\\pdm\\bomtreereader.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\util\\pdm\\bomtreereader.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.propertysetting\\commonsettingcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\commonsettingcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
- "RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\util\\ui\\multiexwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\util\\ui\\multiexwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@@ -22,44 +86,234 @@
"DocumentGroups": [
{
"DockedHeight": 530,
- "SelectedChildIndex": 1,
+ "SelectedChildIndex": 19,
"Children": [
{
"$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "PluginConst.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "RelativeToolTip": "PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-10T03:06:44.394Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{269a02dc-6af8-11d3-bdc4-00c04f688e50}"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 3,
+ "Title": "SwDMUtil.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "ViewState": "AgIAAEsAAAAAAAAAAAAywFcAAAAfAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-19T08:17:18.883Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "DrawAuditHisControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:34:25.024Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 5,
+ "Title": "MainTab.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainTab.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\MainTab.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainTab.xaml",
+ "RelativeToolTip": "PdmSwPlugin.Main\\MainTab.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:25:43.752Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 9,
+ "Title": "MainControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\MainControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.Main\\MainControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:24:39.136Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 8,
+ "Title": "CommonSettingControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:24:14.453Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 10,
+ "Title": "LinkButton.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-18T02:04:24.459Z"
+ },
+ {
+ "$type": "Document",
"DocumentIndex": 1,
+ "Title": "PdmControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.PDM\\PdmControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.PDM\\PdmControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-14T08:10:21.941Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "log4net.config",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\log4net.config",
+ "RelativeDocumentMoniker": "PdmSw\\log4net.config",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\log4net.config",
+ "RelativeToolTip": "PdmSw\\log4net.config",
+ "ViewState": "AgIAAA8AAAAAAAAAAADwvyMAAAAkAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|",
+ "WhenOpened": "2025-02-14T06:58:08.237Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
+ "Title": "AssemblyInfo.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\Properties\\AssemblyInfo.cs",
+ "RelativeDocumentMoniker": "WpfUI\\Properties\\AssemblyInfo.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\Properties\\AssemblyInfo.cs",
+ "RelativeToolTip": "WpfUI\\Properties\\AssemblyInfo.cs",
+ "ViewState": "AgIAACQAAAAAAAAAAADwvzYAAAAvAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-14T06:24:49.631Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 11,
+ "Title": "MainControl.xaml.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "RelativeToolTip": "PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "ViewState": "AgIAADQAAAAAAAAAAAAYwBEAAAAdAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-14T06:24:33.175Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 12,
+ "Title": "log4net.config",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\log4net.config",
+ "RelativeDocumentMoniker": "WpfUI\\log4net.config",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\log4net.config",
+ "RelativeToolTip": "WpfUI\\log4net.config",
+ "ViewState": "AgIAAAMAAAAAAAAAAAAUwBAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|",
+ "WhenOpened": "2025-02-14T06:23:24.263Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 14,
+ "Title": "MainControl.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "RelativeToolTip": "PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "ViewState": "AgIAACoAAAAAAAAAAAAzwDgAAAAgAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-12T08:10:40.337Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 15,
+ "Title": "SwAddin.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\SwAddin.cs",
+ "RelativeDocumentMoniker": "PdmSw\\SwAddin.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\SwAddin.cs",
+ "RelativeToolTip": "PdmSw\\SwAddin.cs",
+ "ViewState": "AgIAACoBAAAAAAAAAAAawEcBAAAiAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-12T08:00:05.533Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 16,
+ "Title": "BomTreeReader.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "ViewState": "AgIAALsAAAAAAAAAAAAswMcAAAAVAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-12T07:44:36.406Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "DrawApprove.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "RelativeToolTip": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-12T01:37:15.351Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 18,
+ "Title": "MultiExWindow.xaml.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "ViewState": "AgIAAEUAAAAAAAAAAAA0wFwAAAA+AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-10T02:13:56.89Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 17,
"Title": "CommonSettingControl.xaml.cs",
"DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
"RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
"ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
"RelativeToolTip": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
- "ViewState": "AgIAAAoBAAAAAAAAAAD4vx0BAAAgAAAAAAAAAA==",
+ "ViewState": "AgIAAPEBAAAAAAAAAAAYwAMCAABHAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-01-02T06:15:07.965Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-02-10T00:46:05.182Z"
},
{
"$type": "Document",
"DocumentIndex": 0,
- "Title": "JgjPartPanel.xaml.cs",
- "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "RelativeToolTip": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "ViewState": "AgIAAF4BAAAAAAAAAAAQwIABAABGAAAAAAAAAA==",
+ "Title": "PdmControl.xaml.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "RelativeToolTip": "PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "ViewState": "AgIAAJwGAAAAAAAAAIBBwKwGAAAgAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-01-02T06:10:11.494Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 2,
- "Title": "JgjPartPanel.xaml",
- "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "RelativeToolTip": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
- "WhenOpened": "2025-01-02T06:07:52.955Z",
+ "WhenOpened": "2025-01-24T08:15:20.974Z",
"EditorCaption": ""
}
]
diff --git a/.vs/SwPlugin/v17/DocumentLayout.json b/.vs/SwPlugin/v17/DocumentLayout.json
index 6ae4a6d..2d46b2b 100644
--- a/.vs/SwPlugin/v17/DocumentLayout.json
+++ b/.vs/SwPlugin/v17/DocumentLayout.json
@@ -3,16 +3,80 @@
"WorkspaceRootPath": "D:\\Workspace\\PdmSwPlugin2\\",
"Documents": [
{
- "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
- "RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\maincontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\maincontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.propertysetting\\commonsettingcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "AbsoluteMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.pdm\\pdmcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|solutionrelative:pdmswplugin.pdm\\pdmcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.pdm\\pdmcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{1033FBD8-8700-4CD0-808A-BB97DB057A6B}|PdmSwPlugin.PDM\\PdmSwPlugin.PDM.csproj|solutionrelative:pdmswplugin.pdm\\pdmcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\constant\\pluginconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\constant\\pluginconst.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\util\\swdmutil.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\util\\swdmutil.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmsw\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
+ "RelativeMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|solutionrelative:pdmsw\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\maintab.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\maintab.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.drawapprove\\drawaudithiscontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|solutionrelative:pdmswplugin.drawapprove\\drawaudithiscontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.drawapprove\\drawapprove.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{BE239D32-7253-4D19-8793-159E98545B55}|PdmSwPlugin.DrawApprove\\PdmSwPlugin.DrawApprove.csproj|solutionrelative:pdmswplugin.drawapprove\\drawapprove.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.propertysetting\\commonsettingcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\commonsettingcontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\maincontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\maincontrol.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\style\\linkbutton.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\style\\linkbutton.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|D:\\Workspace\\PdmSwPlugin2\\wpfui\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}",
+ "RelativeMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|solutionrelative:wpfui\\log4net.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|D:\\Workspace\\PdmSwPlugin2\\wpfui\\properties\\assemblyinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{4536570F-AD3C-4D24-870A-63C9E9CE0FED}|WpfUI\\WpfUI.csproj|solutionrelative:wpfui\\properties\\assemblyinfo.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.main\\swaddin\\maincontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{6E609A8C-583B-4607-A510-FA84218C4A31}|PdmSwPlugin.Main\\PdmSwPlugin.Main.csproj|solutionrelative:pdmswplugin.main\\swaddin\\maincontrol.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmsw\\swaddin.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{7ACEDAA9-2DE8-4485-837A-E7D58812A6DC}|PdmSw\\PdmSw.csproj|solutionrelative:pdmsw\\swaddin.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\util\\pdm\\bomtreereader.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\util\\pdm\\bomtreereader.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
+ },
+ {
+ "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.propertysetting\\commonsettingcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\commonsettingcontrol.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
},
{
- "AbsoluteMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|d:\\workspace\\pdmswplugin2\\pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}",
- "RelativeMoniker": "D:0:0:{713278FD-1A24-41A4-86B7-1072E7DB9E39}|PdmSwPlugin.PropertySetting\\PdmSwPlugin.PropertySetting.csproj|solutionrelative:pdmswplugin.propertysetting\\panel\\jgjpartpanel.xaml||{F11ACC28-31D1-4C80-A34B-F4E09D3D753C}"
+ "AbsoluteMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|D:\\Workspace\\PdmSwPlugin2\\pdmswplugin.common\\util\\ui\\multiexwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
+ "RelativeMoniker": "D:0:0:{E17EF6B6-EE83-45AA-B0C0-E3A097089E97}|PdmSwPlugin.Common\\PdmSwPlugin.Common.csproj|solutionrelative:pdmswplugin.common\\util\\ui\\multiexwindow.xaml.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [
@@ -22,45 +86,234 @@
"DocumentGroups": [
{
"DockedHeight": 530,
- "SelectedChildIndex": 1,
+ "SelectedChildIndex": 12,
"Children": [
{
"$type": "Document",
+ "DocumentIndex": 3,
+ "Title": "PluginConst.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "RelativeToolTip": "PdmSwPlugin.Main\\Constant\\PluginConst.cs",
+ "ViewState": "AgIAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-10T03:06:44.394Z"
+ },
+ {
+ "$type": "Document",
"DocumentIndex": 1,
+ "Title": "PdmControl.xaml.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "RelativeToolTip": "PdmSwPlugin.PDM\\PdmControl.xaml.cs",
+ "ViewState": "AgIAAJ0GAAAAAAAAAAAkwKwGAAAgAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-01-24T08:15:20.974Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Bookmark",
+ "Name": "ST:0:0:{269a02dc-6af8-11d3-bdc4-00c04f688e50}"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 4,
+ "Title": "SwDMUtil.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Util\\SwDMUtil.cs",
+ "ViewState": "AgIAAEsAAAAAAAAAAAAywFcAAAAfAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-19T08:17:18.883Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 7,
+ "Title": "DrawAuditHisControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.DrawApprove\\DrawAuditHisControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:34:25.024Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 6,
+ "Title": "MainTab.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainTab.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\MainTab.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainTab.xaml",
+ "RelativeToolTip": "PdmSwPlugin.Main\\MainTab.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:25:43.752Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 10,
+ "Title": "MainControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\MainControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.Main\\MainControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:24:39.136Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 9,
+ "Title": "CommonSettingControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-19T01:24:14.453Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 11,
+ "Title": "LinkButton.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Style\\LinkButton.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-18T02:04:24.459Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 2,
+ "Title": "PdmControl.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.PDM\\PdmControl.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PDM\\PdmControl.xaml",
+ "RelativeToolTip": "PdmSwPlugin.PDM\\PdmControl.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-14T08:10:21.941Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 5,
+ "Title": "log4net.config",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\log4net.config",
+ "RelativeDocumentMoniker": "PdmSw\\log4net.config",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\log4net.config",
+ "RelativeToolTip": "PdmSw\\log4net.config",
+ "ViewState": "AgIAAA8AAAAAAAAAAADwvyMAAAAkAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|",
+ "WhenOpened": "2025-02-14T06:58:08.237Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 13,
+ "Title": "AssemblyInfo.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\Properties\\AssemblyInfo.cs",
+ "RelativeDocumentMoniker": "WpfUI\\Properties\\AssemblyInfo.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\Properties\\AssemblyInfo.cs",
+ "RelativeToolTip": "WpfUI\\Properties\\AssemblyInfo.cs",
+ "ViewState": "AgIAACQAAAAAAAAAAADwvzYAAAAvAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-14T06:24:49.631Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 0,
+ "Title": "MainControl.xaml.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "RelativeToolTip": "PdmSwPlugin.Main\\MainControl.xaml.cs",
+ "ViewState": "AgIAABsAAAAAAAAAAAAAADMAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-14T06:24:33.175Z",
+ "EditorCaption": ""
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 12,
+ "Title": "log4net.config",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\log4net.config",
+ "RelativeDocumentMoniker": "WpfUI\\log4net.config",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\WpfUI\\log4net.config",
+ "RelativeToolTip": "WpfUI\\log4net.config",
+ "ViewState": "AgIAAAMAAAAAAAAAAAAUwBAAAAAAAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|",
+ "WhenOpened": "2025-02-14T06:23:24.263Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 14,
+ "Title": "MainControl.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "RelativeToolTip": "PdmSwPlugin.Main\\SwAddIn\\MainControl.cs",
+ "ViewState": "AgIAACoAAAAAAAAAAAAzwDgAAAAgAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-12T08:10:40.337Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 15,
+ "Title": "SwAddin.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\SwAddin.cs",
+ "RelativeDocumentMoniker": "PdmSw\\SwAddin.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSw\\SwAddin.cs",
+ "RelativeToolTip": "PdmSw\\SwAddin.cs",
+ "ViewState": "AgIAACoBAAAAAAAAAAAawEcBAAAiAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-12T08:00:05.533Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 16,
+ "Title": "BomTreeReader.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Util\\Pdm\\BomTreeReader.cs",
+ "ViewState": "AgIAALsAAAAAAAAAAAAswMcAAAAVAAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-12T07:44:36.406Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 8,
+ "Title": "DrawApprove.xaml",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "RelativeDocumentMoniker": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "RelativeToolTip": "PdmSwPlugin.DrawApprove\\DrawApprove.xaml",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
+ "WhenOpened": "2025-02-12T01:37:15.351Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 18,
+ "Title": "MultiExWindow.xaml.cs",
+ "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "RelativeDocumentMoniker": "PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "RelativeToolTip": "PdmSwPlugin.Common\\Util\\UI\\MultiExWindow.xaml.cs",
+ "ViewState": "AgIAAEUAAAAAAAAAAAA0wFwAAAA+AAAAAAAAAA==",
+ "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
+ "WhenOpened": "2025-02-10T02:13:56.89Z"
+ },
+ {
+ "$type": "Document",
+ "DocumentIndex": 17,
"Title": "CommonSettingControl.xaml.cs",
"DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
"RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
"ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
"RelativeToolTip": "PdmSwPlugin.PropertySetting\\CommonSettingControl.xaml.cs",
- "ViewState": "AgIAAAoBAAAAAAAAAAD4vx0BAAAgAAAAAAAAAA==",
+ "ViewState": "AgIAAPEBAAAAAAAAAAAYwAMCAABHAAAAAAAAAA==",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-01-02T06:15:07.965Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 0,
- "Title": "JgjPartPanel.xaml.cs",
- "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "RelativeToolTip": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml.cs",
- "ViewState": "AgIAAF4BAAAAAAAAAAAQwIABAABGAAAAAAAAAA==",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
- "WhenOpened": "2025-01-02T06:10:11.494Z",
- "EditorCaption": ""
- },
- {
- "$type": "Document",
- "DocumentIndex": 2,
- "Title": "JgjPartPanel.xaml",
- "DocumentMoniker": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "RelativeDocumentMoniker": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "ToolTip": "D:\\Workspace\\PdmSwPlugin2\\PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "RelativeToolTip": "PdmSwPlugin.PropertySetting\\Panel\\JgjPartPanel.xaml",
- "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003549|",
- "WhenOpened": "2025-01-02T06:07:52.955Z",
- "EditorCaption": ""
+ "WhenOpened": "2025-02-10T00:46:05.182Z"
}
]
}
diff --git a/InnoSetupScript/PdmSwPlugin.iss b/InnoSetupScript/PdmSwPlugin.iss
index 23494a5..b5d9777 100644
--- a/InnoSetupScript/PdmSwPlugin.iss
+++ b/InnoSetupScript/PdmSwPlugin.iss
@@ -7,7 +7,7 @@
; 自动更新程序路径
#define AutoUpdaterDir = "D:\Workspace\PdmSwPlugin2\PdmSw\bin\x64\Release\AutoUpdater\"
; 版本
-#define Version = "_0.0.0.45_审核质量"
+#define Version = "_0.0.0.46_工程图引用问题"
; 生成的Installer存放路径
#define OutPutDir = "Z:\Output"
diff --git a/PdmSw/log4net.config b/PdmSw/log4net.config
index 516b83f..60c615e 100644
--- a/PdmSw/log4net.config
+++ b/PdmSw/log4net.config
@@ -31,7 +31,7 @@
</appender>
<root>
- <level value="INFO" />
+ <level value="DEBUG" />
<appender-ref ref="Console" />
<appender-ref ref="RollingFile" />
</root>
diff --git a/PdmSwPlugin.Common/Interface/IActiveDocChangeHandler.cs b/PdmSwPlugin.Common/Interface/IActiveDocChangeHandler.cs
index 7749970..711155e 100644
--- a/PdmSwPlugin.Common/Interface/IActiveDocChangeHandler.cs
+++ b/PdmSwPlugin.Common/Interface/IActiveDocChangeHandler.cs
@@ -32,5 +32,7 @@
void OnDocDestroy(ModelDoc2 doc);
void AfterDocDestroy();
+
+ void DisabledHandler();
}
}
diff --git a/PdmSwPlugin.Common/Style/ComboxStyle.xaml b/PdmSwPlugin.Common/Style/ComboxStyle.xaml
index bb9bc33..0e62472 100644
--- a/PdmSwPlugin.Common/Style/ComboxStyle.xaml
+++ b/PdmSwPlugin.Common/Style/ComboxStyle.xaml
@@ -9,6 +9,7 @@
<Grid>
<!-- 涓嬫媺鎸夐挳 -->
<ToggleButton x:Name="ToggleButton" Grid.Column="2" Focusable="false" ClickMode="Press"
+ FontSize="16"
HorizontalContentAlignment="Stretch"
IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}">
<Grid>
diff --git a/PdmSwPlugin.Common/Util/CustomPropertyUtil.cs b/PdmSwPlugin.Common/Util/CustomPropertyUtil.cs
index 79b7a5a..e3172ba 100644
--- a/PdmSwPlugin.Common/Util/CustomPropertyUtil.cs
+++ b/PdmSwPlugin.Common/Util/CustomPropertyUtil.cs
@@ -1,5 +1,6 @@
锘縰sing SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
+using System;
using System.Collections.Generic;
namespace PdmSwPlugin.Common.Util
@@ -31,53 +32,6 @@
}
}
- /// <summary>
- /// 鑾峰彇鏂囨。灞炴��
- /// </summary>
- /// <param name="currentModelDoc">鏂囨。</param>
- /// <param name="needResolve">鏄惁杞崲鍊�</param>
- /// <param name="skipName">璺宠繃鐨刵ame</param>
- /// <returns></returns>
- public static Dictionary<string, string> GetCustomProperties2(ModelDoc2 currentModelDoc,
- bool needResolve,
- HashSet<string> skipName = null)
- {
- CustomPropertyManager customPropertyManager = GetCustomPropertyManager(currentModelDoc);
- if (customPropertyManager == null)
- {
- return null;
- }
-
- Dictionary<string, string> Properties = new Dictionary<string, string>();
- string[] names = customPropertyManager.GetNames();
- if (names == null)
- {
- return Properties;
- }
- foreach (string name in names)
- {
- if (customPropertyManager.Get6(name, false, out string valueOut, out string resolvedValueOut, out _, out _)
- != (int)swCustomInfoGetResult_e.swCustomInfoGetResult_NotPresent)
- {
- string value = (needResolve && (skipName == null || !skipName.Contains(name))) ? resolvedValueOut : valueOut;
- Properties[name] = value;
- }
- }
- return Properties;
- }
-
- public static bool SaveDoc(ModelDoc2 doc, Dictionary<string, string> props, ref int err, ref int warn)
- {
- SetCustomProperties(doc, props);
- if (doc.Save3((int)swSaveAsOptions_e.swSaveAsOptions_AvoidRebuildOnSave,
- ref err, ref warn))
- {
- return true;
- }
- return false;
- }
-
-
public static Dictionary<string, string> GetCustomProperties(ModelDoc2 currentModelDoc,
bool needResolve,
HashSet<string> skipValue = null)
@@ -106,6 +60,53 @@
return Properties;
}
+ /// <summary>
+ /// 鑾峰彇鏂囨。灞炴��
+ /// </summary>
+ /// <param name="currentModelDoc">鏂囨。</param>
+ /// <param name="needResolve">鏄惁杞崲鍊�</param>
+ /// <param name="skipName">璺宠繃鐨刵ame</param>
+ /// <returns></returns>
+ public static Dictionary<string, string> GetCustomProperties2(ModelDoc2 currentModelDoc,
+ bool needResolve,
+ HashSet<string> skipName,
+ HashSet<string> skipResolveName)
+ {
+ CustomPropertyManager customPropertyManager = GetCustomPropertyManager(currentModelDoc);
+ if (customPropertyManager == null)
+ {
+ return null;
+ }
+
+ Dictionary<string, string> Properties = new Dictionary<string, string>();
+ string[] names = customPropertyManager.GetNames();
+ if (names == null)
+ {
+ return Properties;
+ }
+ foreach (string name in names)
+ {
+ if (skipName != null && skipName.Contains(name)) continue;
+ if (customPropertyManager.Get6(name, false, out string valueOut, out string resolvedValueOut, out _, out _)
+ != (int)swCustomInfoGetResult_e.swCustomInfoGetResult_NotPresent)
+ {
+ string value = (needResolve && (skipResolveName == null || !skipResolveName.Contains(name))) ? resolvedValueOut : valueOut;
+ Properties[name] = value;
+ }
+ }
+ return Properties;
+ }
+
+ public static bool SaveDoc(ModelDoc2 doc, Dictionary<string, string> props, ref int err, ref int warn)
+ {
+ SetCustomProperties(doc, props);
+ if (doc.Save3((int)swSaveAsOptions_e.swSaveAsOptions_AvoidRebuildOnSave,
+ ref err, ref warn))
+ {
+ return true;
+ }
+ return false;
+ }
public static string GetCustomValue(this Dictionary<string, string> datas, string name, bool ignoreCase = false)
{
@@ -181,6 +182,17 @@
return values[5].ToString();
}
+ public static string GetMassBySWDM(ModelDoc2 doc)
+ {
+ if (doc == null) return null;
+ double[] values = SwDMUtil.GetMassProperty(doc.GetPathName(), out string errMSg);
+ if (values == null)
+ {
+ return null;
+ }
+ return values[5].ToString();
+ }
+
public static bool SetCustomProperties(ModelDoc2 doc, string key, string value)
{
CustomPropertyManager cpm = doc.Extension.CustomPropertyManager[""];
diff --git a/PdmSwPlugin.Common/Util/Pdm/BomTreeReader.cs b/PdmSwPlugin.Common/Util/Pdm/BomTreeReader.cs
index d0d5981..c2ed154 100644
--- a/PdmSwPlugin.Common/Util/Pdm/BomTreeReader.cs
+++ b/PdmSwPlugin.Common/Util/Pdm/BomTreeReader.cs
@@ -272,7 +272,7 @@
id = Guid.NewGuid().ToString(),
doc = doc,
drawingType = drawingType,
- properties = CustomPropertyUtil.GetCustomProperties(doc, true),
+ properties = CustomPropertyUtil.GetCustomProperties2(doc, true, null, null),
d3FilePath = childPath,
};
return bomInfo;
diff --git a/PdmSwPlugin.Common/Util/SwDMUtil.cs b/PdmSwPlugin.Common/Util/SwDMUtil.cs
index a3066d6..cb5038a 100644
--- a/PdmSwPlugin.Common/Util/SwDMUtil.cs
+++ b/PdmSwPlugin.Common/Util/SwDMUtil.cs
@@ -1,5 +1,6 @@
锘縰sing SolidWorks.Interop.swdocumentmgr;
using System;
+using System.Collections.Generic;
using System.Runtime.InteropServices;
namespace PdmSwPlugin.Common.Util
@@ -7,7 +8,7 @@
public class SwDMUtil
{
/// <summary>
- /// 鍑屽垱鍏徃鐨� DM API 鎺堟潈鐮�
+ /// 鍏徃鐨� DM API 鎺堟潈鐮�
/// </summary>
public static string LinktronLicenseKey = @"SuzhouLinktronSystemsCoLtd:swdocmgr_general-11785-02051-00064-33793-08629-34307-00007-05128-58478-32321-57480-30765-00622-59999-16385-62752-47753-50558-31076-40652-29868-22926-54604-41449-54717-42289-44473-51665-47549-58701-53709-46485-03533-12733-37329-14337-29280-51290-50890-25690-25696-964";
@@ -76,6 +77,72 @@
}
}
+
+ /// <summary>
+ /// 鑾峰彇涓�寮犲伐绋嬪浘寮曠敤鐨�3D鍥捐矾寰�
+ /// </summary>
+ /// <param name="filePath"></param>
+ /// <param name="error1"></param>
+ /// <param name="error2"></param>
+ /// <returns></returns>
+ public static string[] GetDrawingRef2(string filePath, out string errMsg, out int[] status)
+ {
+ errMsg = null;
+ status = null;
+ try
+ {
+ string originalExt;
+ SwDmDocumentType docType = DMSldFileExtentionChecker.CheckDM(filePath, out originalExt);
+ if (docType != SwDmDocumentType.swDmDocumentDrawing)
+ {
+ errMsg = "缁欏畾鐨勬枃妗d笉鏄竴寮犲伐绋嬪浘";
+ throw null;
+ }
+ SwDMClassFactory swDMClassFactory = new SwDMClassFactory();
+ SwDMApplication swDMApp = swDMClassFactory.GetApplication(LinktronLicenseKey);
+ if (swDMApp == null)
+ {
+ Marshal.ReleaseComObject(swDMClassFactory);
+ errMsg = "SwDM 鍒濆鍖栧け璐�";
+ return null;
+ }
+ SwDMDocument23 swDoc = (SwDMDocument23)swDMApp.GetDocument(filePath, docType, true, out var error1);
+ if (swDoc == null)
+ {
+ Marshal.ReleaseComObject(swDMApp);
+ Marshal.ReleaseComObject(swDMClassFactory);
+ errMsg = $"SwDM 鍔犺浇鏂囨。澶辫触锛屽紓甯搞�恵error1}銆�";
+ return null;
+ }
+ var swSearchOpt = swDMApp.GetSearchOptionObject();
+ object vBrokenRefs = null;
+ object vIsVirtuals = null;
+ object vTimeStamps = null;
+ object vIsImported = null;
+
+ string[] views = (string[])swDoc.GetAllExternalReferences5(swSearchOpt,
+ out vBrokenRefs, out vIsVirtuals, out vTimeStamps, out vIsImported);
+ if (views == null || views.Length <= 0)
+ {
+ Marshal.ReleaseComObject(swDoc);
+ Marshal.ReleaseComObject(swDMApp);
+ Marshal.ReleaseComObject(swDMClassFactory);
+ errMsg = $"閫夊畾鐨勫伐绋嬪浘涓嶅寘鍚湁鏁堢殑瑙嗗浘";
+ return null;
+ }
+ Marshal.ReleaseComObject(swDoc);
+ Marshal.ReleaseComObject(swDMApp);
+ Marshal.ReleaseComObject(swDMClassFactory);
+ status = (int[])vBrokenRefs;
+ return views;
+ }
+ catch (Exception ex)
+ {
+ errMsg = ex.Message;
+ return null;
+ }
+ }
+
public static double[] GetMassProperty(string filePath, out string errMsg)
{
try
@@ -140,5 +207,70 @@
return null;
}
}
+
+ public static Dictionary<string, string> GetProperty(string filePath, out string errMsg)
+ {
+ try
+ {
+ errMsg = null;
+ string originalExt;
+ SwDmDocumentType docType = DMSldFileExtentionChecker.CheckDM(filePath, out originalExt);
+ if (docType == SwDmDocumentType.swDmDocumentUnknown)
+ {
+ errMsg = "鏈煡鐨勬枃妗g被鍨�";
+ return null;
+ }
+ SwDMClassFactory swDMClassFactory = new SwDMClassFactory();
+ SwDMApplication swDMApp = swDMClassFactory.GetApplication(LinktronLicenseKey);
+ if (swDMApp == null)
+ {
+ Marshal.ReleaseComObject(swDMClassFactory);
+ errMsg = "SwDM 鍒濆鍖栧け璐�";
+ return null;
+ }
+ SwDMDocument17 swDoc = (SwDMDocument17)swDMApp.GetDocument(filePath, docType, true, out var error1);
+ if (swDoc == null)
+ {
+ Marshal.ReleaseComObject(swDMApp);
+ Marshal.ReleaseComObject(swDMClassFactory);
+ errMsg = $"SwDM 鍔犺浇鏂囨。澶辫触锛屽紓甯搞�恵error1}銆�";
+ return null;
+ }
+ SwDMConfigurationMgr dmConfigMgr = swDoc.ConfigurationManager;
+ if (dmConfigMgr == null)
+ {
+ Marshal.ReleaseComObject(swDoc);
+ Marshal.ReleaseComObject(swDMApp);
+ Marshal.ReleaseComObject(swDMClassFactory);
+ errMsg = $"鑾峰彇 ConfigurationManager 澶辫触";
+ return null;
+ }
+ string configName = dmConfigMgr.GetActiveConfigurationName();
+ SwDMConfiguration dmConfig = dmConfigMgr.GetConfigurationByName(configName);
+ if (dmConfig == null)
+ {
+ Marshal.ReleaseComObject(dmConfigMgr);
+ Marshal.ReleaseComObject(swDoc);
+ Marshal.ReleaseComObject(swDMApp);
+ Marshal.ReleaseComObject(swDMClassFactory);
+ errMsg = $"鑾峰彇 Configuration 澶辫触";
+ return null;
+ }
+ Dictionary<string, string> datas = new Dictionary<string, string>();
+ string[] names = dmConfig.GetCustomPropertyNames();
+ names = swDoc.GetCustomPropertyNames();
+ foreach (string name in names)
+ {
+ string val = swDoc.GetCustomProperty2(name, out var type);
+ datas.Add(name, val);
+ }
+ return datas;
+ }
+ catch (Exception ex)
+ {
+ errMsg = ex.Message;
+ return null;
+ }
+ }
}
}
diff --git a/PdmSwPlugin.Common/Util/UI/MultiExWindow.xaml.cs b/PdmSwPlugin.Common/Util/UI/MultiExWindow.xaml.cs
index 0baccba..f5f49a5 100644
--- a/PdmSwPlugin.Common/Util/UI/MultiExWindow.xaml.cs
+++ b/PdmSwPlugin.Common/Util/UI/MultiExWindow.xaml.cs
@@ -3,8 +3,10 @@
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
using System.Web.UI.WebControls.WebParts;
using System.Windows;
+using System.Windows.Interop;
namespace PdmSwPlugin.Common.Util.UI
{
@@ -30,6 +32,16 @@
}
}
#endregion
+
+ // Windows API 鍑芥暟
+ [DllImport("user32.dll", SetLastError = true)]
+ private static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);
+
+ [DllImport("user32.dll", SetLastError = true)]
+ private static extern int GetWindowLong(IntPtr hWnd, int nIndex);
+
+ private const int GWL_STYLE = -16; // 绐楀彛鏍峰紡
+ private const int WS_MINIMIZEBOX = 0x00020000; // 鏈�灏忓寲鎸夐挳鏍峰紡
private string _title;
public string title
@@ -74,6 +86,14 @@
private void Window_Loaded(object sender, RoutedEventArgs e)
{
+ // 鑾峰彇绐楀彛鍙ユ焺
+ IntPtr hWnd = new WindowInteropHelper(this).Handle;
+
+ // 鑾峰彇褰撳墠绐楀彛鐨勬牱寮�
+ int currentStyle = GetWindowLong(hWnd, GWL_STYLE);
+
+ // 绉婚櫎鏈�灏忓寲鎸夐挳
+ SetWindowLong(hWnd, GWL_STYLE, currentStyle & ~WS_MINIMIZEBOX);
Dispatcher.Invoke(() =>
{
table.ItemsSource = new ObservableCollection<string>(exceptions);
diff --git a/PdmSwPlugin.DrawApprove/DrawApprove.xaml b/PdmSwPlugin.DrawApprove/DrawApprove.xaml
index a33fedc..c1c168f 100644
--- a/PdmSwPlugin.DrawApprove/DrawApprove.xaml
+++ b/PdmSwPlugin.DrawApprove/DrawApprove.xaml
@@ -107,7 +107,7 @@
<RowDefinition Height="20"/>
</Grid.RowDefinitions>
- <ToolBarTray Grid.Row="0" DockPanel.Dock="Top" Background="#FFF" ToolBarTray.IsLocked="True" >
+ <ToolBarTray Grid.Row="0" DockPanel.Dock="Top" Background="Transparent" ToolBarTray.IsLocked="True" >
<ToolBar Style="{StaticResource CommonToolBar}" ToolBar.OverflowMode="Never" Band="1" BandIndex="1" Height="30" Background="#FFF">
<Button ToolTip="鍒锋柊" Content="鍒锋柊" FontFamily="{StaticResource iconfont}" FontSize="16"
Click="Button_Click"/>
diff --git a/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs b/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs
index 464f6fa..28b86bd 100644
--- a/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs
+++ b/PdmSwPlugin.DrawApprove/DrawApprove.xaml.cs
@@ -584,5 +584,10 @@
{
}
+
+ public void DisabledHandler()
+ {
+
+ }
}
}
diff --git a/PdmSwPlugin.DrawApprove/DrawAuditHisControl.xaml b/PdmSwPlugin.DrawApprove/DrawAuditHisControl.xaml
index ea0ab73..d47cf3f 100644
--- a/PdmSwPlugin.DrawApprove/DrawAuditHisControl.xaml
+++ b/PdmSwPlugin.DrawApprove/DrawAuditHisControl.xaml
@@ -60,7 +60,7 @@
<Grid x:Name="sb">
<DockPanel x:Name="content" LastChildFill="True">
- <ToolBarTray DockPanel.Dock="Top" Background="#FFF" ToolBarTray.IsLocked="True" >
+ <ToolBarTray DockPanel.Dock="Top" Background="Transparent" ToolBarTray.IsLocked="True" >
<ToolBar Style="{StaticResource CommonToolBar}" ToolBar.OverflowMode="Never" Band="1" BandIndex="1" Height="30" Background="#FFF">
<Button ToolTip="鍒锋柊" Content="鍒锋柊" FontFamily="{StaticResource iconfont}" FontSize="16"
Click="Button_Click"/>
diff --git a/PdmSwPlugin.Main/Constant/PluginConst.cs b/PdmSwPlugin.Main/Constant/PluginConst.cs
index dbef9ca..bac1176 100644
--- a/PdmSwPlugin.Main/Constant/PluginConst.cs
+++ b/PdmSwPlugin.Main/Constant/PluginConst.cs
@@ -3,6 +3,6 @@
public class PluginConst
{
public static readonly string AppId = "DF23E96F-A469-4302-8367-7FA2F798CD09";
- public static readonly string Version = "0.0.0.45";
+ public static readonly string Version = "0.0.0.46";
}
}
diff --git a/PdmSwPlugin.Main/MainControl.xaml b/PdmSwPlugin.Main/MainControl.xaml
index aab11ca..40fb90d 100644
--- a/PdmSwPlugin.Main/MainControl.xaml
+++ b/PdmSwPlugin.Main/MainControl.xaml
@@ -6,8 +6,7 @@
xmlns:local="clr-namespace:PdmSwPlugin.Main"
d:DataContext="{d:DesignInstance Type=local:MainControl}"
x:Name="self"
- mc:Ignorable="d"
-
+ mc:Ignorable="d"
HorizontalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch"
diff --git a/PdmSwPlugin.Main/MainControl.xaml.cs b/PdmSwPlugin.Main/MainControl.xaml.cs
index 8f0049f..9994b0d 100644
--- a/PdmSwPlugin.Main/MainControl.xaml.cs
+++ b/PdmSwPlugin.Main/MainControl.xaml.cs
@@ -266,7 +266,6 @@
}
-
public void SetSwApp(SldWorks SwApp)
{
this.SwApp = SwApp;
diff --git a/PdmSwPlugin.Main/MainTab.xaml b/PdmSwPlugin.Main/MainTab.xaml
index 8501c1b..c6405f3 100644
--- a/PdmSwPlugin.Main/MainTab.xaml
+++ b/PdmSwPlugin.Main/MainTab.xaml
@@ -18,7 +18,18 @@
<RowDefinition />
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
- <TabControl Grid.Row="0" x:Name="tabControl"></TabControl>
+ <TabControl Grid.Row="0" x:Name="tabControl" Background="#f0f0f0">
+ <TabControl.Resources>
+ <Style TargetType="{x:Type TabItem}">
+ <Setter Property="FontSize" Value="16"/>
+ <Style.Triggers>
+ <Trigger Property="IsSelected" Value="True">
+ <Setter Property="Background" Value="#f0f0f0"/>
+ </Trigger>
+ </Style.Triggers>
+ </Style>
+ </TabControl.Resources>
+ </TabControl>
<DockPanel Grid.Row="1" Margin="0" LastChildFill="False">
<Label DockPanel.Dock="Left" x:Name="userLabel" FontWeight="Bold" Padding="0" Margin="0,0,20,0" />
<Button DockPanel.Dock="Left" Style="{StaticResource LinkButton}" Click="Button_Click">閫�鍑虹櫥褰�</Button>
diff --git a/PdmSwPlugin.Main/SwAddIn/MainControl.cs b/PdmSwPlugin.Main/SwAddIn/MainControl.cs
index 56b44f7..3780752 100644
--- a/PdmSwPlugin.Main/SwAddIn/MainControl.cs
+++ b/PdmSwPlugin.Main/SwAddIn/MainControl.cs
@@ -379,6 +379,7 @@
ActiveDocCustomPropertyChange -= handler.OnCustomPropertyChange;
DocDestroy -= handler.OnDocDestroy;
AfterDocDestroy -= handler.AfterDocDestroy;
+ handler.DisabledHandler();
}
}
PluginInfos.Clear();
diff --git a/PdmSwPlugin.MaterialSelect/SwAddIn/MaterialSelectControl.cs b/PdmSwPlugin.MaterialSelect/SwAddIn/MaterialSelectControl.cs
index 253b132..76c5dc6 100644
--- a/PdmSwPlugin.MaterialSelect/SwAddIn/MaterialSelectControl.cs
+++ b/PdmSwPlugin.MaterialSelect/SwAddIn/MaterialSelectControl.cs
@@ -144,5 +144,9 @@
{
}
+
+ public void DisabledHandler()
+ {
+ }
}
}
diff --git a/PdmSwPlugin.PDM/PdmControl.xaml b/PdmSwPlugin.PDM/PdmControl.xaml
index 5e8492e..87e6c84 100644
--- a/PdmSwPlugin.PDM/PdmControl.xaml
+++ b/PdmSwPlugin.PDM/PdmControl.xaml
@@ -314,7 +314,7 @@
<RowDefinition Height="*" />
<RowDefinition Height="20"/>
</Grid.RowDefinitions>
- <ToolBarTray Grid.Row="0" Background="#FFF" ToolBarTray.IsLocked="True" >
+ <ToolBarTray Grid.Row="0" Background="Transparent" ToolBarTray.IsLocked="True">
<ToolBar Style="{StaticResource CommonToolBar}" ToolBar.OverflowMode="Never" Band="1" BandIndex="1" Height="30" Background="#FFF">
<Button ToolTip="鍒锋柊" Content="鍒锋柊" FontFamily="{StaticResource iconfont}" FontSize="16"
Click="Refresh_Click"/>
diff --git a/PdmSwPlugin.PDM/PdmControl.xaml.cs b/PdmSwPlugin.PDM/PdmControl.xaml.cs
index e7667fb..260dd1f 100644
--- a/PdmSwPlugin.PDM/PdmControl.xaml.cs
+++ b/PdmSwPlugin.PDM/PdmControl.xaml.cs
@@ -1,5 +1,6 @@
锘縰sing log4net;
using Microsoft.Win32;
+using NPOI.SS.Formula.PTG;
using NPOI.SS.UserModel;
using NPOI.Util;
using NPOI.XSSF.UserModel;
@@ -55,6 +56,8 @@
private HttpClientCreator clientCreator { get; set; }
private volatile PdmStatus workStatus;
+
+ private TaskFactory taskFactory = LimitedConcurrencyLevelTaskSchedulerMsn.Factory;
SldWorks ISwAppSetter.SwApp => SwApp;
@@ -904,79 +907,6 @@
//throw new NotImplementedException();
}
- public Dictionary<string, DrawInfo> GetAllProperties(List<string> ErrMsgs)
- {
- ConcurrentDictionary<string, DrawInfo> result = new ConcurrentDictionary<string, DrawInfo>();
- PdmBom topBom = model.BomTree[0];
- CountdownEvent counter = new CountdownEvent(1);
- _ = ThreadPool.QueueUserWorkItem(
- new WaitCallback(GetAll),
- new object[] {
- topBom, result, counter, ErrMsgs, 0}
- );
- counter.Wait();
- counter.Dispose();
- return new Dictionary<string, DrawInfo>(result);
- }
-
- /// <summary>
- /// 鑾峰彇鍏ㄩ儴灞炴��
- /// </summary>
- /// <param name="param"></param>
- public void GetAll(object param)
- {
- object[] datas = param as object[];
- PdmBom bom = (PdmBom)datas[0];
- ModelDoc2 sldDoc = bom.doc;
- Component2 component = bom.component;
- ConcurrentDictionary<string, DrawInfo> result = (ConcurrentDictionary<string, DrawInfo>)datas[1];
- CountdownEvent counter = (CountdownEvent)datas[2];
- List<string> ErrMsgs = (List<string>)datas[3];
- int level = (int)datas[4];
- try
- {
- counter.TryAddCount();
- string filepath = bom.partNo;
-
-
- if (result.ContainsKey(filepath))
- {
- return;
- }
-
- if (!bom.skipCheck)
- {
- result[filepath] = GetSingleDrawInfo(bom);
- }
-
- ObservableCollection<PdmBom> children = bom.modules;
- if (children != null)
- {
- foreach (PdmBom child in children)
- {
- _ = ThreadPool.QueueUserWorkItem(
- new WaitCallback(GetAll),
- new object[] { child, result, counter, ErrMsgs, 1 });
- }
- }
- MaskAdorner.ShowMessage(content, filepath);
- }
- catch (Exception e)
- {
- bom.drawInfo.checkRuleResult = 2;
- bom.drawInfo.errMessages = new List<string> { e.Message };
- Logger.Error($"V{PdmUser.LoginUser.pluginVersion},[{bom.filePath}] Read MASS Properies Failed.", e);
- }
- finally
- {
- counter.Signal();
- if (level == 0)
- {
- counter.Signal();
- }
- }
- }
-
/// <summary>
/// 澶勭悊璐ㄩ噺锛屼繚鐣�6浣嶅皬鏁�
/// </summary>
@@ -1028,7 +958,10 @@
}
// 鏂囦欢淇濆瓨鐘舵��
allProperties["鍥剧焊淇濆瓨鐘舵��"] = sldDoc.GetSaveFlag().ToString();
- Dictionary<string, string> properties = CustomPropertyUtil.GetCustomProperties(sldDoc, true);
+ Dictionary<string, string> properties = CustomPropertyUtil.GetCustomProperties2(sldDoc, true, new HashSet<string>
+ {
+ "閲嶉噺"
+ }, null);
// 鍥剧焊灞炴��
if (properties != null)
{
@@ -1039,18 +972,39 @@
}
if (drawExists)
{
- string refPath = SwDMUtil.GetDrawingRef(drawFilePath, out string errMsg);
- if (refPath == null)
+ string[] refs = SwDMUtil.GetDrawingRef2(drawFilePath, out string err, out int[] status);
+ string refPath = "";
+ if (refs != null && refs.Length > 0)
{
- Logger.Error($"V{PdmUser.LoginUser.pluginVersion}, [{drawFilePath}] Read slddrw Ref Path Failed.[{errMsg}]");
+ foreach (var rf in refs)
+ {
+ if (string.Equals(rf, filepath, StringComparison.CurrentCultureIgnoreCase))
+ {
+ refPath = rf;
+ refPath = Path.GetFileName(refPath);
+ break;
+ }
+ }
}
else
{
- refPath = Path.GetFileName(refPath);
+ Logger.Error($"V{PdmUser.LoginUser.pluginVersion}, [{drawFilePath}] Read slddrw Ref Path Failed.[{err}]");
}
+
+ //string refPath = SwDMUtil.GetDrawingRef(drawFilePath, out string errMsg);
+ //if (refPath == null)
+ //{
+ // Logger.Error($"V{PdmUser.LoginUser.pluginVersion}, [{drawFilePath}] Read slddrw Ref Path Failed.[{errMsg}]");
+ //}
+ //else
+ //{
+ // refPath = Path.GetFileName(refPath);
+ //}
Logger.Debug($"V{PdmUser.LoginUser.pluginVersion}锛屾枃妗h矾寰勶細銆恵filepath}銆慭r\n" +
$"宸ョ▼鍥捐矾寰�:銆恵drawFilePath}銆慭r\n" +
$"鏂囦欢鍏ㄧО锛氥�恵allProperties["鏂囦欢鍏ㄧО"]}銆慭r\n" +
+ $"Result锛氥�恵string.Join(",", refs ?? new string[] { })}銆慭r\n" +
+ $"Status锛氥�恵string.Join(",", status ?? new int[] { })}銆慭r\n" +
$"寮曠敤璺緞锛氥�恵refPath}銆�");
allProperties["宸ョ▼鍥惧紩鐢ㄦ枃浠�"] = refPath;
}
@@ -1084,13 +1038,14 @@
ConcurrentDictionary<string, DrawInfo> result = new ConcurrentDictionary<string, DrawInfo>();
PdmBom topBom = model.BomTree[0];
CountdownEvent counter = new CountdownEvent(1);
- Task.Run(() =>
+ taskFactory.StartNew(() =>
{
GetAllByTask(new object[] {
topBom, result, counter, ErrMsgs, 0 });
});
counter.Wait();
- counter.Dispose();
+ // 涓嶉渶瑕佹墜鍔ㄩ噴鏀�
+ //counter.Dispose();
return new Dictionary<string, DrawInfo>(result);
}
@@ -1131,7 +1086,7 @@
{
foreach (PdmBom child in children)
{
- Task.Run(() =>
+ taskFactory.StartNew(() =>
{
GetAllByTask(new object[] { child, result, counter, ErrMsgs, 1 });
});
@@ -1155,44 +1110,6 @@
}
}
- /// <summary>
- /// 瀵瑰綋鍓嶅睍绀虹殑BOM缁撴瀯杩涜瑙勫垯妫�鏌�
- /// </summary>
- /// <returns>鏄惁鍏ㄩ儴閫氳繃</returns>
- public bool DoCheckRule(out List<string> messages)
- {
- messages = new List<string>();
- bool allSuccess = true;
- Dictionary<string, DrawInfo> properties = GetAllProperties(messages);
- MaskAdorner.ShowMessage(content, "姝e湪璇锋眰鏁版嵁...");
- Result<Dictionary<string, DrawInfo>> result = Client.PostSyncAction<Dictionary<string, DrawInfo>>(
- new PdmBomParam
- {
- needCheckProperties = properties
- }, "wpf/bom/openApi/checkRule2");
- Dictionary<string, DrawInfo> checkResult = result.HandleResult();
- foreach (string key in properties.Keys)
- {
- properties[key].checkRuleResult = checkResult[key].checkRuleResult;
- properties[key].errMessages = checkResult[key].errMessages;
- var msgs = checkResult[key].errMessages;
- if (!properties[key].HistoryData && !checkResult[key].checkRuleOk)
- {
- // 涓嶆槸鍘嗗彶鏁版嵁骞朵笖鏈夋湭閫氳繃鐨勶紝鏍囪涓篺alse
- allSuccess = false;
- }
-
- if (!properties[key].HistoryData && msgs != null && msgs.Count > 0)
- {
- foreach (string msg in msgs)
- {
- messages.Add($"鐗╂枡銆恵key}銆戞湭閫氳繃瑙勫垯妫�鏌ワ紒{msg}");
- }
- }
- }
- return allSuccess;
- }
-
public bool DoCheckRuleAsync(out List<string> messages)
{
var temp = new List<string>();
@@ -1202,16 +1119,19 @@
// var factory = LimitedConcurrencyLevelTaskScheduler.Factory;
CountdownEvent counter = new CountdownEvent(properties.Count);
int iii = 0;
+ var start = DateTime.Now;
+ Logger.Debug("DoCheckRuleAsync Start...");
foreach (KeyValuePair<string, DrawInfo> property in properties)
{
- /// 杩欎釜鏂规硶鏈�蹇紝浣嗕笉濂界鎺э紝鍥犱负涓嶇煡閬撳睘鎬у瓧鍏告湁澶氬ぇ
- Task.Run(() =>
+ /// Task.Run 杩欎釜鏂规硶鏈�蹇紝浣嗕笉濂界鎺э紝鍥犱负涓嶇煡閬撳睘鎬у瓧鍏告湁澶氬ぇ
+ /// taskFactory.StartNew 绋冲畾涓�鐐瑰悧锛�
+ taskFactory.StartNew(() =>
{
string key = property.Key;
iii++;
try
{
- Logger.Error($"{key} checking rule...");
+ Logger.Debug($"{key} checking rule...");
DrawInfo checkResult;
Result<DrawInfo> result = Client.PostSyncAction<DrawInfo>(property.Value, "wpf/bom/openApi/checkRuleSingle");
checkResult = result.HandleResult();
@@ -1407,6 +1327,7 @@
counter.Wait();
counter.Dispose();
messages = temp;
+ Logger.Debug($"DoCheckRuleAsync Ended in {(DateTime.Now - start).TotalMilliseconds}ms.");
return allSuccess;
}
@@ -1415,7 +1336,7 @@
IntPtr winformWindow = Process.GetCurrentProcess().MainWindowHandle;
if (winformWindow != null)
new WindowInteropHelper(exWin) { Owner = winformWindow };
- exWin.Show();
+ exWin.ShowDialog();
}
/// <summary>
@@ -1585,7 +1506,7 @@
ConcurrentQueue<string> pathCache = new ConcurrentQueue<string>(boms.Select(b => b.filePath).ToList());
foreach (PdmBom bom in boms)
{
- Task.Run(() =>
+ taskFactory.StartNew(() =>
{
try
{
@@ -1825,7 +1746,7 @@
if (errs.Count > 0)
{
MultiExWindow exWin = new MultiExWindow(this, "妫�鏌ョ粨鏋�", errs);
- exWin.ShowDialog();
+ ShowExWindow(exWin);
}
else if (bom.checkRuleResult == 3)
{
@@ -2165,5 +2086,10 @@
{
}
+
+ public void DisabledHandler()
+ {
+
+ }
}
}
diff --git a/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml b/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml
index 3d9ebbc..d394e38 100644
--- a/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml
+++ b/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml
@@ -3,19 +3,43 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- mc:Ignorable="d"
+ mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/PdmSwPlugin.Common;component/Style/ToolBar.xaml"/>
</ResourceDictionary.MergedDictionaries>
+
+ <Style TargetType="Button">
+ <Setter Property="FontSize" Value="16"/>
+ </Style>
+
+ <Style TargetType="UserControl">
+ <Setter Property="FontSize" Value="16"/>
+ </Style>
+
+ <Style TargetType="TextBox">
+ <Setter Property="FontSize" Value="16"/>
+ </Style>
+
+ <Style TargetType="Label">
+ <Setter Property="FontSize" Value="14"/>
+ </Style>
+
+ <Style TargetType="ComboBox">
+ <Setter Property="FontSize" Value="16"/>
+ </Style>
+
+ <Style TargetType="ComboBoxItem">
+ <Setter Property="FontSize" Value="16"/>
+ </Style>
</ResourceDictionary>
</UserControl.Resources>
<StackPanel>
- <ToolBarTray Background="#FFF" ToolBarTray.IsLocked="True" >
- <ToolBar Style="{StaticResource CommonToolBar}" ToolBar.OverflowMode="Never" Band="1" BandIndex="1" Height="30" Background="#FFF">
+ <ToolBarTray Background="Transparent" ToolBarTray.IsLocked="True" >
+ <ToolBar Style="{StaticResource CommonToolBar}" ToolBar.OverflowMode="Never" Band="1" BandIndex="1" Height="30">
<Button ToolTip="鍒锋柊" Content="鍒锋柊" Click="Refresh_Click" FontSize="16"/>
<Button ToolTip="淇濆瓨" Content="淇濆瓨" FontFamily="{StaticResource iconfont}" FontSize="16"
diff --git a/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml.cs b/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml.cs
index 2ab4104..66a7d16 100644
--- a/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/CommonSettingControl.xaml.cs
@@ -25,7 +25,7 @@
using System.IO;
using System.Collections.ObjectModel;
using System.Runtime.InteropServices;
-using System.Diagnostics;
+using PdmSwPlugin.PropertySetting.Util;
namespace PdmSwPlugin.PropertySetting
{
@@ -67,12 +67,16 @@
Dictionary<string, string> datas = properties as Dictionary<string, string>;
(container as UIElement).Dispatcher.Invoke(() =>
{
- var props = container.GetType().GetProperties().Where(prop => System.Attribute.IsDefined(prop, typeof(PropertySettingAttr)))
- .ToList();
+ // PropHolder.SetPropToUI(container, datas);
- foreach (var prop in props)
+ Dictionary<PropertyInfo, PropertySettingAttr> map = PropHolder.GetAttrMap(container.GetType());
+ if (map == null)
{
- PropertySettingAttr attr = prop.GetCustomAttribute<PropertySettingAttr>();
+ return;
+ }
+ foreach (var prop in map.Keys)
+ {
+ PropertySettingAttr attr = map[prop];
if (attr == null || !attr.NeedInit)
{
continue;
@@ -89,8 +93,32 @@
// 鍏朵粬鍐欏叆initData
if (initData != null) initData[name] = value;
}
- prop.SetValue(container, value);
+ PropHolder.SetPropToUI(container, prop, value);
}
+
+ // var props = container.GetType().GetProperties().Where(prop => System.Attribute.IsDefined(prop, typeof(PropertySettingAttr)))
+ //.ToList();
+ // foreach (var prop in props)
+ // {
+ // PropertySettingAttr attr = prop.GetCustomAttribute<PropertySettingAttr>();
+ // if (attr == null || !attr.NeedInit)
+ // {
+ // continue;
+ // }
+ // string name = attr.Name;
+ // string value = datas.Get(name, string.Empty);
+ // if (string.IsNullOrEmpty(value) && !string.IsNullOrEmpty(attr.defaultValue))
+ // {
+ // value = attr.defaultValue;
+ // // 榛樿鍊间笉鍐欏叆initData
+ // }
+ // else
+ // {
+ // // 鍏朵粬鍐欏叆initData
+ // if (initData != null) initData[name] = value;
+ // }
+ // prop.SetValue(container, value);
+ // }
});
return true;
}
@@ -232,6 +260,18 @@
this.SwApp = SwApp;
}
+ public Dictionary<string, string> GetPropsWithLog(ModelDoc2 currentModelDoc,
+ bool needResolve,
+ HashSet<string> skipName,
+ HashSet<string> skipResolveName)
+ {
+ if (currentModelDoc == null) return null;
+ var start = DateTime.Now;
+ var data = CustomPropertyUtil.GetCustomProperties2(currentModelDoc, needResolve, skipName, skipResolveName);
+ Logger.Debug($"Get Props {(DateTime.Now - start).TotalMilliseconds} ms.");
+ return data;
+ }
+
public void InitPropertyData()
{
try
@@ -292,7 +332,7 @@
private void UpdateActiveDoc()
{
- long start = DateTime.Now.Millisecond;
+ var start = DateTime.Now;
Logger.Debug("UpdateActiveDoc Start...");
if (activeDoc != null)
{
@@ -309,11 +349,8 @@
activeDoc.ClearSelection2(true);
}
}
- Logger.Debug($"UpdateActiveDoc End {activeDoc?.GetPathName()} {DateTime.Now.Millisecond - start}ms.");
- start = DateTime.Now.Millisecond;
- Logger.Debug("UpdateUI Start...");
+ Logger.Debug($"UpdateActiveDoc End {activeDoc?.GetPathName()} {(DateTime.Now - start).TotalMilliseconds}ms.");
UpdateUI(activeDoc);
- Logger.Debug($"UpdateUI End {activeDoc?.GetPathName()} {DateTime.Now.Millisecond - start}ms.");
}
/// <summary>
@@ -390,15 +427,13 @@
public void UpdateUI(ModelDoc2 doc)
{
+ var start = DateTime.Now;
+ Logger.Debug("UpdateUI Start...");
AlertSaveWindow();
LastReadDoc = ReadDoc;
ReadDoc = doc;
- Dispatcher.Invoke(() =>
- {
-
- // LoadDocProperties();
- });
SwitchVisiable();
+ Logger.Debug($"UpdateUI End {activeDoc?.GetPathName()} {(DateTime.Now - start).TotalMilliseconds}ms.");
}
private int Ass_UserSelectionPostNotify()
@@ -433,10 +468,15 @@
/// </summary>
private void SwitchVisiable()
{
- var start = DateTime.Now.Millisecond;
+ var start = DateTime.Now;
Logger.Debug("SwitchVisiable Start...");
-
- HashSet<string> skipName = new HashSet<string> {
+
+ HashSet<string> skipName = new HashSet<string>
+ {
+ NameConstant.weight
+ };
+
+ HashSet<string> skipResolveName = new HashSet<string> {
NameConstant.materialCode
};
@@ -457,7 +497,7 @@
else if (docType == (int)swDocumentTypes_e.swDocPART)
{
ReadDocPath = ReadDoc.GetPathName();
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
+ properties = GetPropsWithLog(ReadDoc, true, skipName, skipResolveName);
string fileType = properties.Get(NameConstant.docType);
/*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
{
@@ -495,7 +535,7 @@
else
{
// !Equals(LastReadDoc, ReadDoc)
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
+ properties = GetPropsWithLog(ReadDoc, true, skipName, skipResolveName);
string fileType = properties.Get(NameConstant.docType);
/*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
{
@@ -547,162 +587,13 @@
contentPanel.Children.Add(control);
});
- Logger.Debug($"SwitchVisiable End {activeDoc?.GetPathName()} {DateTime.Now.Millisecond - start}ms.");
- }
-
- /// <summary>
- /// 鏍规嵁婵�娲荤殑鏂囨。绫诲瀷锛屽彉鏇村睘鎬у彲瑙�
- /// </summary>
- private void SwitchVisiable2()
- {
- HashSet<string> skipName = new HashSet<string> {
- NameConstant.materialCode
- };
-
- IPropertyOpt last = ActiveOpter as IPropertyOpt;
- string contentKey = "default";
- int? docType = ReadDoc?.GetType();
- UserControl control;
- IPropertyOpt newOne;
- Dictionary<string, string> properties;
- if (docType == (int)swDocumentTypes_e.swDocDRAWING)
- {
- ReadDocPath = ReadDoc.GetPathName();
-
- control = new DefaultPanel();
- newOne = control as IPropertyOpt;
- newOne.SetSettings(settings);
- newOne.SetProperties(null, "褰撳墠涓嶆敮鎸佸伐绋嬪浘", true, out _);
- }
- else if (docType == (int)swDocumentTypes_e.swDocPART)
- {
- ReadDocPath = ReadDoc.GetPathName();
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
- string fileType = properties.Get(NameConstant.docType);
- /*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
- {
- contentKey = "jgjPart";
- }*/
- if (BomIniterHolder.Instance.IsJgj(ReadDoc))
- {
- control = new JgjPartPanel();
- }
- else
- {
- control = new StandardPartPanel();
- }
- newOne = control as IPropertyOpt;
- newOne.SetSettings(settings);
- newOne.SetProperties(ReadDoc, properties, true, out _);
- }
- else if (docType == (int)swDocumentTypes_e.swDocASSEMBLY)
- {
- ReadDocPath = ReadDoc.GetPathName();
- // !Equals(LastReadDoc, ReadDoc)
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
- string fileType = properties.Get(NameConstant.docType);
- /*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
- {
- contentKey = "jgjPart";
- }*/
- if (BomIniterHolder.Instance.IsJgj(ReadDoc))
- {
- control = new JgjModulePanel();
- }
- else
- {
- control = new StandardModulePanel();
- }
- newOne = control as IPropertyOpt;
- newOne.SetSettings(settings);
- newOne.SetProperties(ReadDoc, properties, true, out _);
- }
- else
- {
- control = new DefaultPanel();
- newOne = control as IPropertyOpt;
-
- string PathName = ReadComponent?.GetPathName();
- if (PathName == null)
- {
- ReadDocPath = "";
- newOne.SetSettings(settings);
- newOne.SetProperties(ReadDoc, "璇锋墦寮�涓�涓枃妗�", true, out _);
- }
- else
- {
- ReadDocPath = PathName;
- string name = Path.GetFileNameWithoutExtension(PathName);
- newOne.SetSettings(settings);
- newOne.SetProperties(ReadDoc, $"銆恵name}銆戞湭鎵惧埌鏂囨。锛岃妫�鏌ユ槸鍚﹁鍘嬬缉鎴栬交閲忓寲", true, out _);
- }
- }
- if (last != null)
- {
- last.UpdateProperty -= Jgj_SinglePropertyChanged;
- last = null;
- }
- ActiveOpter = control;
- contentPanel.Children.Clear();
- newOne.UpdateProperty += Jgj_SinglePropertyChanged;
- contentPanel.Children.Add(control);
- }
-
- /// <summary>
- /// 浠庢縺娲荤殑鏂囨。涓鍙栧弬鏁�
- /// </summary>
- private void LoadDocProperties()
- {
- IPropertyOpt opt = ActiveOpter as IPropertyOpt;
- string ErrMsg = null;
- if (ReadDoc == null)
- {
- string PathName = ReadComponent?.GetPathName();
- if (PathName == null)
- {
- ReadDocPath = "";
- opt.SetProperties(ReadDoc, "璇锋墦寮�涓�涓枃妗�", true, out ErrMsg);
- return;
- }
- ReadDocPath = PathName;
- string name = Path.GetFileNameWithoutExtension(PathName);
- opt.SetProperties(ReadDoc, $"銆恵name}銆戞湭鎵惧埌鏂囨。锛岃妫�鏌ユ槸鍚﹁鍘嬬缉鎴栬交閲忓寲", true, out ErrMsg);
- return;
- }
- int docType = ReadDoc.GetType();
- ReadDocPath = ReadDoc.GetPathName();
- if (docType == (int)swDocumentTypes_e.swDocDRAWING)
- {
- opt.SetProperties(null, "褰撳墠涓嶆敮鎸佸伐绋嬪浘", true, out ErrMsg);
- return;
- }
- HashSet<string> skipName = new HashSet<string> {
- NameConstant.materialCode
- };
- Dictionary<string, string> properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
- opt.SetProperties(ReadDoc, properties, !Equals(LastReadDoc, ReadDoc), out ErrMsg);
- }
-
- private void ClearDocProperties()
- {
- IPropertyOpt opt = ActiveOpter as IPropertyOpt;
- opt.ClearAllProperties(out string ErrMsg);
- }
-
- /// <summary>
- /// 灏嗗睘鎬ц缃繘鏂囨。锛屾敞鎰忥紝骞舵病鏈変繚瀛�
- /// </summary>
- /// <param name="doc">鏂囨。</param>
- private void SetDocProperty(ModelDoc2 doc, Dictionary<string, string> props)
- {
- CustomPropertyUtil.SetCustomProperties(doc, props);
+ Logger.Debug($"SwitchVisiable End {activeDoc?.GetPathName()} {(DateTime.Now - start).TotalMilliseconds}ms.");
}
public void SetSwApp(SldWorks SwApp)
{
this.SwApp = SwApp;
}
-
private void SaveDoc(bool qiaoqiaode)
{
@@ -735,6 +626,8 @@
public void RefreshData()
{
MaskAdorner.ShowMask(content, "灞炴�у姞杞戒腑锛岃绋嶅��...");
+ var start = DateTime.Now;
+ Logger.Debug($"Refresh [{ReadDocPath}] Data start.");
Task.Run(() =>
{
try
@@ -754,6 +647,7 @@
finally
{
MaskAdorner.HideMask(content);
+ Logger.Debug($"Refresh [{ReadDocPath}] Data end {(DateTime.Now - start).TotalMilliseconds}ms.");
}
});
}
@@ -792,7 +686,6 @@
/// <param name="comp"></param>
public void OnSwActiveDocChange(ModelDoc2 lastDoc, ModelDoc2 doc, Component2 comp)
{
- // CurrentChanged();
RefreshData();
}
@@ -835,7 +728,7 @@
/// </summary>
public void AlertSaveWindow()
{
- var start = DateTime.Now.Millisecond;
+ var start = DateTime.Now;
Logger.Debug("AlertSaveWindow Start...");
IPropertyOpt opt = ActiveOpter as IPropertyOpt;
if (opt != null && opt.GetDocChanged())
@@ -859,7 +752,7 @@
opt.ResetProperty(out string errMsg);
}
}
- Logger.Debug($"AlertSaveWindow End {activeDoc?.GetPathName()} {DateTime.Now.Millisecond - start}ms.");
+ Logger.Debug($"AlertSaveWindow End {activeDoc?.GetPathName()} {(DateTime.Now - start).TotalMilliseconds}ms.");
}
public void OnTabControlSelectionChange(object sender, SelectionChangedEventArgs e)
@@ -893,5 +786,13 @@
this.Error($"{ex.Message}");
}
}
+
+ public void DisabledHandler()
+ {
+ if (activeDoc != null)
+ {
+ DetachDocNotify(activeDoc);
+ }
+ }
}
}
diff --git a/PdmSwPlugin.PropertySetting/Panel/DefaultPanel.xaml.cs b/PdmSwPlugin.PropertySetting/Panel/DefaultPanel.xaml.cs
index 722a8d4..03b25f4 100644
--- a/PdmSwPlugin.PropertySetting/Panel/DefaultPanel.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/Panel/DefaultPanel.xaml.cs
@@ -49,7 +49,6 @@
set => RaiseAndSetIfChanged(ref _message, value);
}
-
public DefaultPanel()
{
DataContext = this;
diff --git a/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml b/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml
index 02f0d61..7e94395 100644
--- a/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml
+++ b/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml
@@ -5,7 +5,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
x:Name="self"
- d:DesignHeight="900" d:DesignWidth="800" Background="#FFF">
+ d:DesignHeight="900" d:DesignWidth="800">
<UserControl.Resources>
<ResourceDictionary>
diff --git a/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml.cs b/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml.cs
index a69952b..c4ffaf5 100644
--- a/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/Panel/JgjModulePanel.xaml.cs
@@ -9,6 +9,7 @@
using PdmSwPlugin.PropertySetting.Entity;
using PdmSwPlugin.PropertySetting.Interface;
using PdmSwPlugin.PropertySetting.Panel.Attr;
+using PdmSwPlugin.PropertySetting.Util;
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
@@ -51,6 +52,11 @@
}
}
#endregion
+
+ static JgjModulePanel()
+ {
+ PropHolder.Register(typeof(JgjModulePanel));
+ }
public event PanelPropertyChanged UpdateProperty;
@@ -221,7 +227,7 @@
[PropertySettingAttr(Name = NameConstant.weight, NeedSave = false)]
public string weight
{
- get => CustomPropertyUtil.GetMass(doc);
+ get => CustomPropertyUtil.GetMassBySWDM(doc);
set
{
ccc(ref _weight, value);
diff --git a/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml b/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml
index e7fb6b5..3bc1fe9 100644
--- a/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml
+++ b/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml
@@ -5,7 +5,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
x:Name="self"
- d:DesignHeight="900" d:DesignWidth="800" Background="#FFF">
+ d:DesignHeight="900" d:DesignWidth="800">
<UserControl.Resources>
<ResourceDictionary>
diff --git a/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml.cs b/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml.cs
index e7331b2..9977c5d 100644
--- a/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/Panel/JgjPartPanel.xaml.cs
@@ -9,6 +9,7 @@
using PdmSwPlugin.PropertySetting.Entity;
using PdmSwPlugin.PropertySetting.Interface;
using PdmSwPlugin.PropertySetting.Panel.Attr;
+using PdmSwPlugin.PropertySetting.Util;
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
@@ -41,6 +42,11 @@
}
}
#endregion
+
+ static JgjPartPanel()
+ {
+ PropHolder.Register(typeof(JgjPartPanel));
+ }
public void ccc<T>(ref T old, T @new, [CallerMemberName] string propertyName = null)
{
@@ -198,7 +204,7 @@
[PropertySettingAttr(Name = NameConstant.weight, NeedSave = false)]
public string weight
{
- get => CustomPropertyUtil.GetMass(doc);
+ get => CustomPropertyUtil.GetMassBySWDM(doc);
set
{
ccc(ref _weight, value);
diff --git a/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml b/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml
index fb810cb..7d38708 100644
--- a/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml
+++ b/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml
@@ -6,7 +6,7 @@
mc:Ignorable="d"
x:Name="self"
VerticalContentAlignment="Stretch"
- d:DesignHeight="900" d:DesignWidth="800" Background="#FFF">
+ d:DesignHeight="900" d:DesignWidth="800">
<UserControl.Resources>
<ResourceDictionary>
diff --git a/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml.cs b/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml.cs
index 8393031..9b5b9d1 100644
--- a/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/Panel/StandardModulePanel.xaml.cs
@@ -7,6 +7,7 @@
using PdmSwPlugin.Common.Util;
using PdmSwPlugin.PropertySetting.Interface;
using PdmSwPlugin.PropertySetting.Panel.Attr;
+using PdmSwPlugin.PropertySetting.Util;
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
@@ -39,6 +40,11 @@
}
}
#endregion
+
+ static StandardModulePanel()
+ {
+ PropHolder.Register(typeof(StandardModulePanel));
+ }
public event PanelPropertyChanged UpdateProperty;
@@ -95,7 +101,7 @@
[PropertySettingAttr(Name = NameConstant.weight, NeedSave = false)]
public string weight
{
- get => CustomPropertyUtil.GetMass(doc);
+ get => CustomPropertyUtil.GetMassBySWDM(doc);
set
{
RaiseAndSetIfChanged(ref _weight, value);
diff --git a/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml b/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml
index 192168c..bed0a65 100644
--- a/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml
+++ b/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml
@@ -6,7 +6,7 @@
xmlns:local="clr-namespace:PdmSwPlugin.PropertySetting"
mc:Ignorable="d"
x:Name="self"
- d:DesignHeight="900" d:DesignWidth="800" Background="#FFF">
+ d:DesignHeight="900" d:DesignWidth="800">
<UserControl.Resources>
<ResourceDictionary>
diff --git a/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml.cs b/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml.cs
index ea90304..2e6c21a 100644
--- a/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/Panel/StandardPartPanel.xaml.cs
@@ -7,6 +7,7 @@
using PdmSwPlugin.Common.Util;
using PdmSwPlugin.PropertySetting.Interface;
using PdmSwPlugin.PropertySetting.Panel.Attr;
+using PdmSwPlugin.PropertySetting.Util;
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
@@ -39,6 +40,11 @@
}
}
#endregion
+
+ static StandardPartPanel()
+ {
+ PropHolder.Register(typeof(StandardPartPanel));
+ }
private Dictionary<string, string> InitData = new Dictionary<string, string>();
@@ -93,7 +99,7 @@
[PropertySettingAttr(Name = NameConstant.weight, NeedSave = false)]
public string weight
{
- get => CustomPropertyUtil.GetMass(doc);
+ get => CustomPropertyUtil.GetMassBySWDM(doc);
set
{
RaiseAndSetIfChanged(ref _weight, value);
diff --git a/PdmSwPlugin.PropertySetting/PdmSwPlugin.PropertySetting.csproj b/PdmSwPlugin.PropertySetting/PdmSwPlugin.PropertySetting.csproj
index 09ef8f2..6ed1251 100644
--- a/PdmSwPlugin.PropertySetting/PdmSwPlugin.PropertySetting.csproj
+++ b/PdmSwPlugin.PropertySetting/PdmSwPlugin.PropertySetting.csproj
@@ -139,6 +139,8 @@
<Compile Include="Tab\JgjPartTab.xaml.cs">
<DependentUpon>JgjPartTab.xaml</DependentUpon>
</Compile>
+ <Compile Include="Util\PropHolder.cs" />
+ <Compile Include="Util\PropSetter.cs" />
<Page Include="SettingControl.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
diff --git a/PdmSwPlugin.PropertySetting/PropertySettingControl.xaml.cs b/PdmSwPlugin.PropertySetting/PropertySettingControl.xaml.cs
index b865f4c..f6646db 100644
--- a/PdmSwPlugin.PropertySetting/PropertySettingControl.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/PropertySettingControl.xaml.cs
@@ -754,5 +754,10 @@
{
}
+
+ public void DisabledHandler()
+ {
+
+ }
}
}
diff --git a/PdmSwPlugin.PropertySetting/SettingControl.xaml.cs b/PdmSwPlugin.PropertySetting/SettingControl.xaml.cs
index 06fb90a..9aedd83 100644
--- a/PdmSwPlugin.PropertySetting/SettingControl.xaml.cs
+++ b/PdmSwPlugin.PropertySetting/SettingControl.xaml.cs
@@ -337,7 +337,7 @@
else if (docType == (int)swDocumentTypes_e.swDocPART)
{
ReadDocPath = ReadDoc.GetPathName();
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
+ properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, null, skipName);
string fileType = properties.Get(NameConstant.docType);
/*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
{
@@ -375,7 +375,7 @@
else
{
// !Equals(LastReadDoc, ReadDoc)
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
+ properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, null, skipName);
string fileType = properties.Get(NameConstant.docType);
/*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
{
@@ -451,7 +451,7 @@
else if (docType == (int)swDocumentTypes_e.swDocPART)
{
ReadDocPath = ReadDoc.GetPathName();
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
+ properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, null, skipName);
string fileType = properties.Get(NameConstant.docType);
/*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
{
@@ -473,7 +473,7 @@
{
ReadDocPath = ReadDoc.GetPathName();
// !Equals(LastReadDoc, ReadDoc)
- properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
+ properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, null, skipName);
string fileType = properties.Get(NameConstant.docType);
/*if (fileType == "鍔犲伐浠�" || fileType == "妯$粍")
{
@@ -553,7 +553,7 @@
HashSet<string> skipName = new HashSet<string> {
NameConstant.materialCode
};
- Dictionary<string, string> properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, skipName);
+ Dictionary<string, string> properties = CustomPropertyUtil.GetCustomProperties2(ReadDoc, true, null, skipName);
opt.SetProperties(ReadDoc, properties, !Equals(LastReadDoc, ReadDoc), out ErrMsg);
}
@@ -711,5 +711,10 @@
}
}
}
+
+ public void DisabledHandler()
+ {
+
+ }
}
}
diff --git a/PdmSwPlugin.PropertySetting/Util/PropHolder.cs b/PdmSwPlugin.PropertySetting/Util/PropHolder.cs
new file mode 100644
index 0000000..43fa3c8
--- /dev/null
+++ b/PdmSwPlugin.PropertySetting/Util/PropHolder.cs
@@ -0,0 +1,65 @@
+锘縰sing PdmSwPlugin.Common.Util;
+using PdmSwPlugin.PropertySetting.Panel;
+using PdmSwPlugin.PropertySetting.Panel.Attr;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Linq;
+using System.Reflection;
+using System.Text;
+using System.Threading.Tasks;
+using System.Xml.Linq;
+
+namespace PdmSwPlugin.PropertySetting.Util
+{
+ public class PropHolder
+ {
+ private static readonly Dictionary<Type, Dictionary<PropertyInfo, PropertySettingAttr>> context
+ = new Dictionary<Type, Dictionary<PropertyInfo, PropertySettingAttr>>();
+
+ private static readonly Dictionary<PropertyInfo, SetValueDelegate> setters = new Dictionary<PropertyInfo, SetValueDelegate>();
+
+ public static void Register(Type type)
+ {
+
+ if (context.ContainsKey(type))
+ {
+ return;
+ }
+
+ Dictionary<PropertyInfo, PropertySettingAttr> map = new Dictionary<PropertyInfo, PropertySettingAttr>();
+
+ var props = type.GetProperties().Where(prop => System.Attribute.IsDefined(prop, typeof(PropertySettingAttr)))
+ .ToList();
+
+ foreach (var prop in props)
+ {
+ PropertySettingAttr attr = prop.GetCustomAttribute<PropertySettingAttr>();
+ if (attr == null || !attr.NeedInit)
+ {
+ continue;
+ }
+ map.Add(prop, attr);
+ setters.Add(prop, PropSetter.CreatePropertySetter(prop));
+ }
+ context.Add(type, map);
+ }
+
+ public static Dictionary<PropertyInfo, PropertySettingAttr> GetAttrMap(Type type)
+ {
+ if (!context.ContainsKey(type))
+ {
+ return null;
+ }
+ return context[type];
+ }
+
+ public static void SetPropToUI(object container, PropertyInfo prop, object value)
+ {
+ if (setters.ContainsKey(prop))
+ {
+ setters[prop](container, value);
+ }
+ }
+ }
+}
diff --git a/PdmSwPlugin.PropertySetting/Util/PropSetter.cs b/PdmSwPlugin.PropertySetting/Util/PropSetter.cs
new file mode 100644
index 0000000..82d1a62
--- /dev/null
+++ b/PdmSwPlugin.PropertySetting/Util/PropSetter.cs
@@ -0,0 +1,57 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection.Emit;
+using System.Reflection;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace PdmSwPlugin.PropertySetting.Util
+{
+ public delegate void SetValueDelegate(object target, object arg);
+
+ public static class PropSetter
+ {
+ public static SetValueDelegate CreatePropertySetter(PropertyInfo property)
+ {
+ if (property == null)
+ throw new ArgumentNullException("property");
+
+ if (!property.CanWrite)
+ return null;
+
+ MethodInfo setMethod = property.GetSetMethod(true);
+
+ DynamicMethod dm = new DynamicMethod("PropertySetter", null,
+ new Type[] { typeof(object), typeof(object) }, property.DeclaringType, true);
+
+ ILGenerator il = dm.GetILGenerator();
+
+ if (!setMethod.IsStatic)
+ {
+ il.Emit(OpCodes.Ldarg_0);
+ }
+ il.Emit(OpCodes.Ldarg_1);
+
+ EmitCastToReference(il, property.PropertyType);
+ if (!setMethod.IsStatic && !property.DeclaringType.IsValueType)
+ {
+ il.EmitCall(OpCodes.Callvirt, setMethod, null);
+ }
+ else
+ il.EmitCall(OpCodes.Call, setMethod, null);
+
+ il.Emit(OpCodes.Ret);
+
+ return (SetValueDelegate)dm.CreateDelegate(typeof(SetValueDelegate));
+ }
+
+ private static void EmitCastToReference(ILGenerator il, Type type)
+ {
+ if (type.IsValueType)
+ il.Emit(OpCodes.Unbox_Any, type);
+ else
+ il.Emit(OpCodes.Castclass, type);
+ }
+ }
+}
--
Gitblit v1.9.1