diff options
| author | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2020-08-25 05:27:00 +0300 |
|---|---|---|
| committer | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2020-08-25 05:27:00 +0300 |
| commit | b1afbe2dd72b419216f57159497457d429bb20e6 (patch) | |
| tree | 0305afaa31b452684cf20ad77d64b2e913336d30 /Software/Visual_Studio | |
| parent | 16389f246971059da6e4476808d35dc1022f8870 (diff) | |
| download | Tango-b1afbe2dd72b419216f57159497457d429bb20e6.tar.gz Tango-b1afbe2dd72b419216f57159497457d429bb20e6.zip | |
Fixed issue with ExternalBridgeClient reconnection after protocol v2.
Added machine updates to insights.
Diffstat (limited to 'Software/Visual_Studio')
13 files changed, 217 insertions, 37 deletions
diff --git a/Software/Visual_Studio/Advanced Installer Projects/FSE Installer.aip b/Software/Visual_Studio/Advanced Installer Projects/FSE Installer.aip index 4cd0ea966..1b95e00e1 100644 --- a/Software/Visual_Studio/Advanced Installer Projects/FSE Installer.aip +++ b/Software/Visual_Studio/Advanced Installer Projects/FSE Installer.aip @@ -368,11 +368,13 @@ <ROW Component="protobufnet.dll" ComponentId="{ED37672F-F343-44FB-8FBD-F9003BD20D52}" Directory_="APPDIR" Attributes="0" KeyPath="protobufnet.dll"/> <ROW Component="shell" ComponentId="{A08B0CB0-9A35-4E7B-B7A3-F0039D92CBE4}" Directory_="APPDIR" Attributes="4" KeyPath="shell"/> <ROW Component="shell_1" ComponentId="{082186C6-1C9B-401A-85E8-3F1DA42DD4C6}" Directory_="APPDIR" Attributes="4" KeyPath="shell_1"/> + <ROW Component="turbojpeg.dll" ComponentId="{E709DEA3-C3B6-4289-A24C-EE7B3C725E3F}" Directory_="win7x64_Dir" Attributes="256" KeyPath="turbojpeg.dll"/> + <ROW Component="turbojpeg.dll.meta" ComponentId="{F3C4814A-27B2-468B-9239-96BCD4B7CB2C}" Directory_="win7x64_Dir" Attributes="0" KeyPath="turbojpeg.dll.meta" Type="0"/> + <ROW Component="turbojpeg.dll.meta_1" ComponentId="{DC08A77B-7BFA-4518-8694-AA5C3FB7306A}" Directory_="win7x86_Dir" Attributes="0" KeyPath="turbojpeg.dll.meta_1" Type="0"/> + <ROW Component="turbojpeg.dll_1" ComponentId="{C93ECFB0-1796-49CD-9897-B5FDED741327}" Directory_="win7x86_Dir" Attributes="0" KeyPath="turbojpeg.dll_1"/> <ROW Component="ucrtbased.dll" ComponentId="{4188BB88-A714-488A-A02D-98710ACC94F5}" Directory_="APPDIR" Attributes="0" KeyPath="ucrtbased.dll"/> <ROW Component="vcruntime140.dll" ComponentId="{078A42AF-E964-4CA3-8A9C-CBE6D0FD76AA}" Directory_="APPDIR" Attributes="0" KeyPath="vcruntime140.dll"/> <ROW Component="vcruntime140d.dll" ComponentId="{AF42196B-67BB-4EBA-8C3A-38B9527F9775}" Directory_="APPDIR" Attributes="0" KeyPath="vcruntime140d.dll"/> - <ROW Component="win7x64" ComponentId="{3B6C2473-8C86-41E8-B5D3-C24EABDAE001}" Directory_="win7x64_Dir" Attributes="0"/> - <ROW Component="win7x86" ComponentId="{766CC4FF-04AA-4B88-A281-1DF3D09344E6}" Directory_="win7x86_Dir" Attributes="0"/> </COMPONENT> <COMPONENT cid="caphyon.advinst.msicomp.MsiFeatsComponent"> <ROW Feature="D17D1EE3B5447079AEF0A1CF58498F1" Title="SQL Server Express LocalDB 2017 (required for remote upgrade)" Description="SQL Server Express LocalDB 2017 (required for TUP package generation)" Display="3" Level="1" Attributes="0"/> @@ -713,19 +715,6 @@ <ROW File="Tango.FSE.Common.xml" Component_="Dragablz.xml" FileName="TANGOF~1.XML|Tango.FSE.Common.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Tango.FSE.Common.xml" SelfReg="false"/> <ROW File="Tango.PPC.Shared.xml" Component_="Dragablz.xml" FileName="TANGOP~1.XML|Tango.PPC.Shared.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Tango.PPC.Shared.xml" SelfReg="false"/> <ROW File="ZetaIpc.dll" Component_="ZetaIpc.dll" FileName="ZetaIpc.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\ZetaIpc.dll" SelfReg="false"/> - <ROW File="ColorMine.pdb" Component_="ColorMine.dll" FileName="COLORM~1.PDB|ColorMine.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\ColorMine.pdb" SelfReg="false"/> - <ROW File="ControlzEx.pdb" Component_="ControlzEx.dll" FileName="CONTRO~1.PDB|ControlzEx.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\ControlzEx.pdb" SelfReg="false"/> - <ROW File="DocumentFormat.OpenXml.xml" Component_="Dragablz.xml" FileName="DOCUME~1.XML|DocumentFormat.OpenXml.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\DocumentFormat.OpenXml.xml" SelfReg="false"/> - <ROW File="EntityFramework.SqlServer.xml" Component_="Dragablz.xml" FileName="ENTITY~1.XML|EntityFramework.SqlServer.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\EntityFramework.SqlServer.xml" SelfReg="false"/> - <ROW File="EntityFramework.xml" Component_="Dragablz.xml" FileName="ENTITY~2.XML|EntityFramework.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\EntityFramework.xml" SelfReg="false"/> - <ROW File="LiteDB.xml" Component_="Dragablz.xml" FileName="LiteDB.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\LiteDB.xml" SelfReg="false"/> - <ROW File="MahApps.Metro.pdb" Component_="MahApps.Metro.dll" FileName="MAHAPP~1.PDB|MahApps.Metro.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\MahApps.Metro.pdb" SelfReg="false"/> - <ROW File="MahApps.Metro.xml" Component_="Dragablz.xml" FileName="MAHAPP~1.XML|MahApps.Metro.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\MahApps.Metro.xml" SelfReg="false"/> - <ROW File="MaterialDesignColors.pdb" Component_="MaterialDesignColors.dll" FileName="MATERI~1.PDB|MaterialDesignColors.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\MaterialDesignColors.pdb" SelfReg="false"/> - <ROW File="MaterialDesignThemes.Wpf.pdb" Component_="MaterialDesignThemes.Wpf.dll" FileName="MATERI~2.PDB|MaterialDesignThemes.Wpf.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\MaterialDesignThemes.Wpf.pdb" SelfReg="false"/> - <ROW File="MaterialDesignThemes.Wpf.xml" Component_="Dragablz.xml" FileName="MATERI~1.XML|MaterialDesignThemes.Wpf.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\MaterialDesignThemes.Wpf.xml" SelfReg="false"/> - <ROW File="Microsoft.AspNet.SignalR.Client.pdb" Component_="Microsoft.AspNet.SignalR.Client.dll" FileName="MICROS~1.PDB|Microsoft.AspNet.SignalR.Client.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.AspNet.SignalR.Client.pdb" SelfReg="false"/> - <ROW File="Microsoft.AspNet.SignalR.Client.xml" Component_="Dragablz.xml" FileName="MICROS~1.XML|Microsoft.AspNet.SignalR.Client.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.AspNet.SignalR.Client.xml" SelfReg="false"/> <ROW File="Microsoft.ML.Core.dll" Component_="Microsoft.ML.Core.dll" FileName="MICRO~26.DLL|Microsoft.ML.Core.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.ML.Core.dll" SelfReg="false"/> <ROW File="Microsoft.ML.CpuMath.dll" Component_="Microsoft.ML.CpuMath.dll" FileName="MICRO~27.DLL|Microsoft.ML.CpuMath.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.ML.CpuMath.dll" SelfReg="false"/> <ROW File="Microsoft.ML.Data.dll" Component_="Microsoft.ML.Data.dll" FileName="MICRO~37.DLL|Microsoft.ML.Data.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.ML.Data.dll" SelfReg="false"/> @@ -735,10 +724,6 @@ <ROW File="Microsoft.ML.StandardTrainers.dll" Component_="Microsoft.ML.StandardTrainers.dll" FileName="MICRO~47.DLL|Microsoft.ML.StandardTrainers.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.ML.StandardTrainers.dll" SelfReg="false"/> <ROW File="Microsoft.ML.TimeSeries.dll" Component_="Microsoft.ML.TimeSeries.dll" FileName="MICRO~48.DLL|Microsoft.ML.TimeSeries.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.ML.TimeSeries.dll" SelfReg="false"/> <ROW File="Microsoft.ML.Transforms.dll" Component_="Microsoft.ML.Transforms.dll" FileName="MICRO~49.DLL|Microsoft.ML.Transforms.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Microsoft.ML.Transforms.dll" SelfReg="false"/> - <ROW File="Newtonsoft.Json.xml" Component_="Dragablz.xml" FileName="NEWTON~1.XML|Newtonsoft.Json.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Newtonsoft.Json.xml" SelfReg="false"/> - <ROW File="protobufnet.xml" Component_="Dragablz.xml" FileName="PROTOB~1.XML|protobuf-net.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\protobuf-net.xml" SelfReg="false"/> - <ROW File="RealTimeGraphX.pdb" Component_="RealTimeGraphX.dll" FileName="REALTI~1.PDB|RealTimeGraphX.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\RealTimeGraphX.pdb" SelfReg="false"/> - <ROW File="RealTimeGraphX.WPF.pdb" Component_="RealTimeGraphX.WPF.dll" FileName="REALTI~2.PDB|RealTimeGraphX.WPF.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\RealTimeGraphX.WPF.pdb" SelfReg="false"/> <ROW File="SciChart.Charting.dll" Component_="SciChart.Charting.dll" FileName="SCICHA~1.DLL|SciChart.Charting.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\SciChart.Charting.dll" SelfReg="false"/> <ROW File="SciChart.Charting.DrawingTools.dll" Component_="SciChart.Charting.DrawingTools.dll" FileName="SCICHA~2.DLL|SciChart.Charting.DrawingTools.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\SciChart.Charting.DrawingTools.dll" SelfReg="false"/> <ROW File="SciChart.Charting3D.dll" Component_="SciChart.Charting3D.dll" FileName="SCICHA~3.DLL|SciChart.Charting3D.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\SciChart.Charting3D.dll" SelfReg="false"/> @@ -751,13 +736,8 @@ <ROW File="SharpDX.Direct3D9.dll" Component_="SharpDX.Direct3D9.dll" FileName="SHARPD~6.DLL|SharpDX.Direct3D9.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\SharpDX.Direct3D9.dll" SelfReg="false"/> <ROW File="System.Buffers.dll" Component_="System.Buffers.dll" FileName="SYSTEM~3.DLL|System.Buffers.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Buffers.dll" SelfReg="false"/> <ROW File="System.CodeDom.dll" Component_="System.CodeDom.dll" FileName="SYSTE~11.DLL|System.CodeDom.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.CodeDom.dll" SelfReg="false"/> - <ROW File="System.Data.SQLite.xml" Component_="Dragablz.xml" FileName="SYSTEM~1.XML|System.Data.SQLite.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Data.SQLite.xml" SelfReg="false"/> <ROW File="System.Memory.dll" Component_="System.Memory.dll" FileName="SYST~118.DLL|System.Memory.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Memory.dll" SelfReg="false"/> <ROW File="System.Numerics.Vectors.dll" Component_="System.Numerics.Vectors.dll" FileName="SYST~119.DLL|System.Numerics.Vectors.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Numerics.Vectors.dll" SelfReg="false"/> - <ROW File="System.Reactive.Core.xml" Component_="Dragablz.xml" FileName="SYSTEM~2.XML|System.Reactive.Core.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Reactive.Core.xml" SelfReg="false"/> - <ROW File="System.Reactive.Interfaces.xml" Component_="Dragablz.xml" FileName="SYSTEM~3.XML|System.Reactive.Interfaces.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Reactive.Interfaces.xml" SelfReg="false"/> - <ROW File="System.Reactive.Linq.xml" Component_="Dragablz.xml" FileName="SYSTEM~4.XML|System.Reactive.Linq.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Reactive.Linq.xml" SelfReg="false"/> - <ROW File="System.Reactive.PlatformServices.xml" Component_="Dragablz.xml" FileName="SYSTEM~5.XML|System.Reactive.PlatformServices.xml" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Reactive.PlatformServices.xml" SelfReg="false"/> <ROW File="System.Runtime.CompilerServices.Unsafe.dll" Component_="System.Runtime.CompilerServices.Unsafe.dll" FileName="SYST~120.DLL|System.Runtime.CompilerServices.Unsafe.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Runtime.CompilerServices.Unsafe.dll" SelfReg="false"/> <ROW File="System.Threading.Channels.dll" Component_="System.Threading.Channels.dll" FileName="SYST~121.DLL|System.Threading.Channels.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Threading.Channels.dll" SelfReg="false"/> <ROW File="System.Threading.Tasks.Extensions.dll" Component_="System.Threading.Tasks.Extensions.dll" FileName="SYST~122.DLL|System.Threading.Tasks.Extensions.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\System.Threading.Tasks.Extensions.dll" SelfReg="false"/> @@ -767,6 +747,12 @@ <ROW File="Tango.FSE.LogViewer.UI.exe" Component_="Tango.FSE.LogViewer.UI.exe" FileName="TANGOF~2.EXE|Tango.FSE.LogViewer.UI.exe" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Tango.FSE.LogViewer.UI.exe" SelfReg="false" DigSign="true"/> <ROW File="Tango.Insights.dll" Component_="Tango.Insights.dll" FileName="TANGOI~2.DLL|Tango.Insights.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Tango.Insights.dll" SelfReg="false"/> <ROW File="Tango.Insights.pdb" Component_="Tango.Insights.dll" FileName="TANGOI~2.PDB|Tango.Insights.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Tango.Insights.pdb" SelfReg="false"/> + <ROW File="Tango.FSE.LogViewer.UI.exe.config" Component_="Dragablz.xml" FileName="TANGO~10.CON|Tango.FSE.LogViewer.UI.exe.config" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Tango.FSE.LogViewer.UI.exe.config" SelfReg="false"/> + <ROW File="Tango.FSE.LogViewer.UI.pdb" Component_="Tango.FSE.LogViewer.UI.exe" FileName="TANGO~12.PDB|Tango.FSE.LogViewer.UI.pdb" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\Tango.FSE.LogViewer.UI.pdb" SelfReg="false"/> + <ROW File="turbojpeg.dll" Component_="turbojpeg.dll" FileName="TURBOJ~1.DLL|turbojpeg.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\win7-x64\turbojpeg.dll" SelfReg="false"/> + <ROW File="turbojpeg.dll.meta" Component_="turbojpeg.dll.meta" FileName="TURBOJ~1.MET|turbojpeg.dll.meta" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\win7-x64\turbojpeg.dll.meta" SelfReg="false"/> + <ROW File="turbojpeg.dll_1" Component_="turbojpeg.dll_1" FileName="TURBOJ~1.DLL|turbojpeg.dll" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\win7-x86\turbojpeg.dll" SelfReg="false"/> + <ROW File="turbojpeg.dll.meta_1" Component_="turbojpeg.dll.meta_1" FileName="TURBOJ~1.MET|turbojpeg.dll.meta" Version="65535.65535.65535.65535" Attributes="0" SourcePath="..\Build\FSE\Release\win7-x86\turbojpeg.dll.meta" SelfReg="false"/> </COMPONENT> <COMPONENT cid="caphyon.advinst.msicomp.AiRemoveFileComponent"> <ROW RemoveFile="_" Options="3"/> @@ -873,8 +859,6 @@ <COMPONENT cid="caphyon.advinst.msicomp.MsiCreateFolderComponent"> <ROW Directory_="SHORTCUTDIR" Component_="SHORTCUTDIR" ManualDelete="false"/> <ROW Directory_="APPDIR" Component_="APPDIR" ManualDelete="true"/> - <ROW Directory_="win7x64_Dir" Component_="win7x64" ManualDelete="false"/> - <ROW Directory_="win7x86_Dir" Component_="win7x86" ManualDelete="false"/> </COMPONENT> <COMPONENT cid="caphyon.advinst.msicomp.MsiCustActComponent"> <ROW Action="AI_AiRemoveFilesCommit" Type="11777" Source="ResourceCleaner.dll" Target="OnAiRemoveFilesCommit" WithoutSeq="true"/> @@ -1231,8 +1215,6 @@ <ROW Feature_="TangoFSE" Component_="Tango.FSE.Insights.dll"/> <ROW Feature_="TangoFSE" Component_="Tango.FSE.LogViewer.UI.exe"/> <ROW Feature_="TangoFSE" Component_="Tango.Insights.dll"/> - <ROW Feature_="TangoFSE" Component_="win7x64"/> - <ROW Feature_="TangoFSE" Component_="win7x86"/> <ROW Feature_="TangoFSE" Component_="shell_1"/> <ROW Feature_="TangoFSE" Component_="open_1"/> <ROW Feature_="TangoFSE" Component_="__3"/> @@ -1245,6 +1227,10 @@ <ROW Feature_="TangoFSE" Component_="New_Key_1"/> <ROW Feature_="TangoFSE" Component_="__287"/> <ROW Feature_="TangoFSE" Component_="__288"/> + <ROW Feature_="TangoFSE" Component_="turbojpeg.dll"/> + <ROW Feature_="TangoFSE" Component_="turbojpeg.dll.meta"/> + <ROW Feature_="TangoFSE" Component_="turbojpeg.dll_1"/> + <ROW Feature_="TangoFSE" Component_="turbojpeg.dll.meta_1"/> </COMPONENT> <COMPONENT cid="caphyon.advinst.msicomp.MsiIconsComponent"> <ROW Name="Tango.FSE.LogViewer.UI.exe" SourcePath="..\..\Graphics\FSE\log_viewer_icon.ico" Index="0"/> @@ -1279,8 +1265,8 @@ <ROW Action="AI_DATA_SETTER_1" Condition="(VersionNT > 501) OR (VersionNT = 501 AND ServicePackLevel >= 2)" Sequence="5935"/> <ROW Action="AI_AppSearchEx" Sequence="101"/> <ROW Action="AI_VerifyPrereq" Sequence="1101"/> - <ROW Action="AI_AiRemoveFilesImmediate" Sequence="3499"/> <ROW Action="AI_AiRemoveRegsImmediate" Sequence="2599"/> + <ROW Action="AI_AiRemoveFilesImmediate" Sequence="3499"/> </COMPONENT> <COMPONENT cid="caphyon.advinst.msicomp.MsiInstallUISequenceComponent"> <ROW Action="AI_RESTORE_LOCATION" Condition="APPDIR=""" Sequence="749"/> diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Images/update_package.png b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Images/update_package.png Binary files differnew file mode 100644 index 000000000..9a1d3edf9 --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Images/update_package.png diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/InsightsSettings.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/InsightsSettings.cs new file mode 100644 index 000000000..ad47869c3 --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/InsightsSettings.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.Settings; + +namespace Tango.FSE.Insights +{ + public class InsightsSettings : SettingsBase + { + public bool EnableAnyStartDate { get; set; } + } +} diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Tango.FSE.Insights.csproj b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Tango.FSE.Insights.csproj index 617ca2d99..3130e4c3b 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Tango.FSE.Insights.csproj +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Tango.FSE.Insights.csproj @@ -167,6 +167,7 @@ <DependentUpon>AnomaliesDialogView.xaml</DependentUpon> </Compile> <Compile Include="Dialogs\AnomaliesDialogViewVM.cs" /> + <Compile Include="InsightsSettings.cs" /> <Compile Include="ML\AnomaliesDetectionProgress.cs" /> <Compile Include="ML\AnomaliesDetector.cs" /> <Compile Include="ML\AnomalyType.cs" /> @@ -319,6 +320,9 @@ <Resource Include="Images\bug_report.png" /> <Resource Include="Images\app_exception.png" /> </ItemGroup> + <ItemGroup> + <Resource Include="Images\update_package.png" /> + </ItemGroup> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="..\..\..\packages\MaterialDesignThemes.3.0.1\build\MaterialDesignThemes.targets" Condition="Exists('..\..\..\packages\MaterialDesignThemes.3.0.1\build\MaterialDesignThemes.targets')" /> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Themes/Generic.xaml b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Themes/Generic.xaml index b4b3fe746..3600af714 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Themes/Generic.xaml +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/Themes/Generic.xaml @@ -99,11 +99,27 @@ </DataTemplate> <DataTemplate x:Key="InsightStatusTemplate" DataType="{x:Type commonInsights:InsightsReadyStatus}"> - <Image Stretch="Uniform" ToolTip="{Binding Status,Converter={StaticResource EnumToDescriptionConverter}}" Width="25" Height="25"> + <Image Tag="{Binding DataContext,RelativeSource={RelativeSource AncestorType=views:InsightsView}}" Stretch="Uniform" ToolTip="{Binding Status,Converter={StaticResource EnumToDescriptionConverter}}" Width="25" Height="25"> <Image.Style> <Style TargetType="Image"> <Setter Property="Source" Value="../Images/machine_off.png"></Setter> <Setter Property="Opacity" Value="1"></Setter> + <Setter Property="ContextMenu"> + <Setter.Value> + <ContextMenu> + <MenuItem ToolTip="Locate related application logs using the Application module" Header="Peek Application Logs" Command="{Binding PlacementTarget.Tag.PeekApplicationLogsCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ContextMenu}}" CommandParameter="{Binding}"> + <MenuItem.Icon> + <material:PackIcon Kind="Application" /> + </MenuItem.Icon> + </MenuItem> + <MenuItem ToolTip="Locate related firmware logs using the Firmware module" Header="Peek Firmware Logs" Command="{Binding PlacementTarget.Tag.PeekFirmwareLogsCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ContextMenu}}" CommandParameter="{Binding}"> + <MenuItem.Icon> + <material:PackIcon Kind="Chip" /> + </MenuItem.Icon> + </MenuItem> + </ContextMenu> + </Setter.Value> + </Setter> <Style.Triggers> <DataTrigger Binding="{Binding Status}" Value="Disconnected"> <Setter Property="Source" Value="../Images/machine_off.png"></Setter> @@ -344,4 +360,105 @@ </Grid> </Border> </DataTemplate> + + + <DataTemplate x:Key="InsightUpdateTemplate" DataType="{x:Type commonInsights:InsightsReadyUpdate}"> + <Border Tag="{Binding DataContext,RelativeSource={RelativeSource AncestorType=views:InsightsView}}"> + <Border.ToolTip> + <StackPanel> + <TextBlock TextWrapping="Wrap"> + <Run>Status:</Run> + <Run Text="{Binding Update.UpdateStatus,Mode=OneWay,Converter={StaticResource EnumToDescriptionConverter}}"></Run> + <LineBreak/> + <Run>Started:</Run> + <Run Text="{Binding Update.StartDate,Mode=OneWay,Converter={StaticResource DateTimeUtcToLocalDateTime},StringFormat='MM/dd/yyyy hh:mm:ss'}"></Run> + <LineBreak/> + <Run>Ended:</Run> + <Run Text="{Binding Update.EndDate,Mode=OneWay,FallbackValue='Never',TargetNullValue='Never',Converter={StaticResource DateTimeUtcToLocalDateTime},StringFormat='MM/dd/yyyy hh:mm:ss'}"></Run> + </TextBlock> + <StackPanel Margin="0 5 0 0" Visibility="{Binding Update.IsFailed,Converter={StaticResource BooleanToVisibilityConverter}}"> + <TextBlock Foreground="{StaticResource FSE_ErrorBrush}">Error</TextBlock> + <Rectangle Margin="0 2 0 0" HorizontalAlignment="Stretch" VerticalAlignment="Top" StrokeThickness="1" Stroke="{StaticResource FSE_PrimaryForegroundBrush}" StrokeDashArray="5" /> + <TextBlock Text="{Binding Update.FailedReason}" TextWrapping="Wrap" MaxWidth="400" Margin="0 5 0 0"></TextBlock> + </StackPanel> + </StackPanel> + </Border.ToolTip> + <Border.Style> + <Style TargetType="Border"> + <Setter Property="Opacity" Value="1"></Setter> + <Setter Property="ContextMenu"> + <Setter.Value> + <ContextMenu> + <MenuItem ToolTip="Locate related application logs using the Application module" Header="Peek Application Logs" Command="{Binding PlacementTarget.Tag.PeekApplicationLogsCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ContextMenu}}" CommandParameter="{Binding}"> + <MenuItem.Icon> + <material:PackIcon Kind="Application" /> + </MenuItem.Icon> + </MenuItem> + <MenuItem ToolTip="Locate related firmware logs using the Firmware module" Header="Peek Firmware Logs" Command="{Binding PlacementTarget.Tag.PeekFirmwareLogsCommand,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ContextMenu}}" CommandParameter="{Binding}"> + <MenuItem.Icon> + <material:PackIcon Kind="Chip" /> + </MenuItem.Icon> + </MenuItem> + </ContextMenu> + </Setter.Value> + </Setter> + <Style.Triggers> + <Trigger Property="IsMouseOver" Value="True"> + <Setter Property="Opacity" Value="0.8"></Setter> + </Trigger> + <EventTrigger RoutedEvent="PreviewMouseRightButtonUp"> + <EventTrigger.Actions> + <BeginStoryboard> + <Storyboard> + <BooleanAnimationUsingKeyFrames Storyboard.TargetProperty="ContextMenu.IsOpen"> + <DiscreteBooleanKeyFrame KeyTime="0:0:0" Value="True"/> + </BooleanAnimationUsingKeyFrames> + </Storyboard> + </BeginStoryboard> + </EventTrigger.Actions> + </EventTrigger> + </Style.Triggers> + </Style> + </Border.Style> + <Grid> + <Image Source="../Images/update_package.png" Stretch="Uniform" RenderOptions.BitmapScalingMode="Fant" Width="48" /> + <material:PackIcon Width="20" Height="20" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0 3 2 0" DataContext="{Binding Update}"> + <material:PackIcon.Style> + <Style TargetType="material:PackIcon"> + <Setter Property="Kind" Value="Information"></Setter> + <Style.Triggers> + <DataTrigger Binding="{Binding IsSetup}" Value="True"> + <Setter Property="Kind" Value="Settings"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsUpdate}" Value="True"> + <Setter Property="Kind" Value="CloudDownload"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsDataBase}" Value="True"> + <Setter Property="Kind" Value="Database"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsSynchronization}" Value="True"> + <Setter Property="Kind" Value="Sync"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsOfflineUpdate}" Value="True"> + <Setter Property="Kind" Value="Sd"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsOfflineFirmwareUpgrade}" Value="True"> + <Setter Property="Kind" Value="Chip"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsStarted}" Value="True"> + <Setter Property="Foreground" Value="{StaticResource FSE_OrangeBrush}"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsCompleted}" Value="True"> + <Setter Property="Foreground" Value="{StaticResource FSE_GreenBrush}"></Setter> + </DataTrigger> + <DataTrigger Binding="{Binding IsFailed}" Value="True"> + <Setter Property="Foreground" Value="{StaticResource FSE_RedBrush}"></Setter> + </DataTrigger> + </Style.Triggers> + </Style> + </material:PackIcon.Style> + </material:PackIcon> + </Grid> + </Border> + </DataTemplate> </ResourceDictionary>
\ No newline at end of file diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/ViewModels/InsightsViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/ViewModels/InsightsViewVM.cs index ccbb77cf1..8f14534a3 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/ViewModels/InsightsViewVM.cs +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.Insights/ViewModels/InsightsViewVM.cs @@ -32,7 +32,7 @@ using Tango.PMR.Insights; namespace Tango.FSE.Insights.ViewModels { - public class InsightsViewVM : FSEViewModel<IInsightsView> + public class InsightsViewVM : FSEViewModelWithModuleSettings<IInsightsView, InsightsSettings> { private bool _chartsLoaded; private ICollectionView _monitorsView; @@ -200,7 +200,10 @@ namespace Tango.FSE.Insights.ViewModels public InsightsViewVM() { - MinDate = DateTime.Now.AddDays(-30); + if (!ModuleSettings.EnableAnyStartDate) + { + MinDate = DateTime.Now.AddDays(-30); + } MaxDate = DateTime.Now; IsSearchBarOpened = true; @@ -499,7 +502,12 @@ namespace Tango.FSE.Insights.ViewModels { var y = 0.05; - foreach (var insight in package.Events.Cast<InsightReadyBase>().Concat(package.Statuses).Concat(package.Bugs).Concat(package.ApplicationExceptions).OrderBy(x => x.Time)) + foreach (var insight in package.Events.Cast<InsightReadyBase>() + .Concat(package.Statuses) + .Concat(package.Bugs) + .Concat(package.ApplicationExceptions) + .Concat(package.Updates) + .OrderBy(x => x.Time)) { CustomAnnotation annotation = new CustomAnnotation(); annotation.X1 = insight.Time.ToLocalTime(); @@ -517,16 +525,22 @@ namespace Tango.FSE.Insights.ViewModels annotation.Content = status; annotation.ContentTemplate = Application.Current.Resources["InsightStatusTemplate"] as DataTemplate; } - else if (insight is InsightsReadyBug bug) + else if (insight is InsightsReadyUpdate update) { Panel.SetZIndex(annotation, 2); + annotation.Content = update; + annotation.ContentTemplate = Application.Current.Resources["InsightUpdateTemplate"] as DataTemplate; + } + else if (insight is InsightsReadyBug bug) + { + Panel.SetZIndex(annotation, 3); annotation.Content = bug; annotation.ContentTemplate = Application.Current.Resources["InsightBugTemplate"] as DataTemplate; } else if (insight is InsightsReadyApplicationException appException) { annotation.Content = appException; - Panel.SetZIndex(annotation, 3); + Panel.SetZIndex(annotation, 4); if (appException.IsApplicationCrash) { @@ -604,7 +618,7 @@ namespace Tango.FSE.Insights.ViewModels StartDate = remoteMinDate; } - if (remoteMinDate > MinDate) + if (remoteMinDate > MinDate && !ModuleSettings.EnableAnyStartDate) { MinDate = remoteMinDate; } diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Insights/InsightsPackage.cs b/Software/Visual_Studio/FSE/Tango.FSE.Common/Insights/InsightsPackage.cs index a823295a9..1ef37bca0 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.Common/Insights/InsightsPackage.cs +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Insights/InsightsPackage.cs @@ -16,6 +16,7 @@ namespace Tango.FSE.Common.Insights public List<InsightsReadyStatus> Statuses { get; set; } public List<InsightsReadyApplicationException> ApplicationExceptions { get; set; } public List<InsightsReadyBug> Bugs { get; set; } + public List<InsightsReadyUpdate> Updates { get; set; } public InsightsPackage() { @@ -24,6 +25,7 @@ namespace Tango.FSE.Common.Insights Statuses = new List<InsightsReadyStatus>(); Bugs = new List<InsightsReadyBug>(); ApplicationExceptions = new List<InsightsReadyApplicationException>(); + Updates = new List<InsightsReadyUpdate>(); } } } diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Insights/InsightsReadyUpdate.cs b/Software/Visual_Studio/FSE/Tango.FSE.Common/Insights/InsightsReadyUpdate.cs new file mode 100644 index 000000000..6c31ead7e --- /dev/null +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Insights/InsightsReadyUpdate.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.BL.Entities; + +namespace Tango.FSE.Common.Insights +{ + public class InsightsReadyUpdate : InsightReadyBase + { + public TangoUpdate Update { get; set; } + } +} diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj b/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj index 20bd15973..27112f654 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj @@ -236,6 +236,7 @@ <Compile Include="Insights\InsightsHandlerStatus.cs" /> <Compile Include="Insights\InsightsPackage.cs" /> <Compile Include="Insights\InsightsReadyFrame.cs" /> + <Compile Include="Insights\InsightsReadyUpdate.cs" /> <Compile Include="Insights\InsightsReadyStatus.cs" /> <Compile Include="Logging\ILoggingProvider.cs" /> <Compile Include="Logging\RemoteLogFileModel.cs" /> diff --git a/Software/Visual_Studio/FSE/Tango.FSE.UI/Insights/DefaultInsightsProvider.cs b/Software/Visual_Studio/FSE/Tango.FSE.UI/Insights/DefaultInsightsProvider.cs index 08120c24f..b873c4450 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.UI/Insights/DefaultInsightsProvider.cs +++ b/Software/Visual_Studio/FSE/Tango.FSE.UI/Insights/DefaultInsightsProvider.cs @@ -13,6 +13,7 @@ using Tango.FSE.Common.BugReporting; using Tango.FSE.Common.Connection; using Tango.FSE.Common.FileSystem; using Tango.FSE.Common.Insights; +using Tango.FSE.Common.MachineUpdates; using Tango.Insights; using Tango.PPC.Shared.Insights; using Tango.Transport; @@ -37,6 +38,9 @@ namespace Tango.FSE.UI.Insights [TangoInject] public IBugReporter BugReporter { get; set; } + [TangoInject] + public IMachineUpdatesProvider MachineUpdatesProvider { get; set; } + public DefaultInsightsProvider(IMachineProvider machineProvider) { MachineProvider = machineProvider; @@ -168,6 +172,24 @@ namespace Tango.FSE.UI.Insights } } + try + { + var updates = MachineUpdatesProvider.GetUpdates().Result; + + foreach (var update in updates.Updates.Where(y => y.StartDate >= startDateUTC && y.LastUpdated <= endTimeUTC).OrderBy(xx => xx.LastUpdated)) + { + package.Updates.Add(new InsightsReadyUpdate() + { + Time = update.LastUpdated, + Update = update + }); + } + } + catch (Exception ex) + { + LogManager.Log(ex, "Error getting machine updates for insights."); + } + handler.RaiseCompleted(package); } catch (Exception ex) diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/PPCApplication/DefaultPPCApplicationManager.cs b/Software/Visual_Studio/PPC/Tango.PPC.UI/PPCApplication/DefaultPPCApplicationManager.cs index 3414fda4f..2ca191d01 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.UI/PPCApplication/DefaultPPCApplicationManager.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/PPCApplication/DefaultPPCApplicationManager.cs @@ -683,7 +683,7 @@ namespace Tango.PPC.UI.PPCApplication InsightsManager.Default.Dispose(); } catch { } - }, TimeSpan.FromSeconds(5)); + }, TimeSpan.FromSeconds(20)); } } } diff --git a/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeSignalRClient.cs b/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeSignalRClient.cs index 9ad789c06..4d0559aa4 100644 --- a/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeSignalRClient.cs +++ b/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeSignalRClient.cs @@ -58,6 +58,9 @@ namespace Tango.Integration.ExternalBridge { try { + Adapter.EnableCompression = false; + GenericProtocol = GenericMessageProtocol.Json; + await Adapter.Connect(); State = TransportComponentState.Connected; diff --git a/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeTcpClient.cs b/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeTcpClient.cs index 210db008d..0d7bd83d9 100644 --- a/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeTcpClient.cs +++ b/Software/Visual_Studio/Tango.Integration/ExternalBridge/ExternalBridgeTcpClient.cs @@ -131,6 +131,9 @@ namespace Tango.Integration.ExternalBridge { try { + Adapter.EnableCompression = false; + GenericProtocol = GenericMessageProtocol.Json; + await Adapter.Connect(); State = TransportComponentState.Connected; |
