diff options
| author | Roy <Roy.mail.net@gmail.com> | 2023-04-26 17:55:17 +0300 |
|---|---|---|
| committer | Roy <Roy.mail.net@gmail.com> | 2023-04-26 17:55:17 +0300 |
| commit | 914d28f26fcc61c12f0a98c86e6a5ad5a455f72c (patch) | |
| tree | 49b8f80ff3a6ba8bd7e8159605277593b10e8125 /Software/Visual_Studio | |
| parent | 07a75244fe05eb4b2b0b628ec8f038cced238579 (diff) | |
| download | Tango-914d28f26fcc61c12f0a98c86e6a5ad5a455f72c.tar.gz Tango-914d28f26fcc61c12f0a98c86e6a5ad5a455f72c.zip | |
More Eureka Adjustments.
Diffstat (limited to 'Software/Visual_Studio')
17 files changed, 328 insertions, 96 deletions
diff --git a/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/ViewModels/MainViewVM.cs b/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/ViewModels/MainViewVM.cs index 49afbe63b..36d1824a0 100644 --- a/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/ViewModels/MainViewVM.cs @@ -381,72 +381,75 @@ namespace Tango.PPC.MachineSettings.ViewModels } } - if (EnableProxy != Settings.EnableProxifier) + if (!BuildProvider.IsEureka) { - CmdCommand cmd = null; - CmdCommandResult result = null; - - if (!EnableProxy) + if (EnableProxy != Settings.EnableProxifier) { - try + CmdCommand cmd = null; + CmdCommandResult result = null; + + if (!EnableProxy) { - cmd = new CmdCommand("taskkill", "/F /IM proxifier.exe"); - result = await cmd.Run(); - Settings.EnableProxifier = false; - Settings.Save(); + try + { + cmd = new CmdCommand("taskkill", "/F /IM proxifier.exe"); + result = await cmd.Run(); + Settings.EnableProxifier = false; + Settings.Save(); + } + catch (Exception ex) + { + LogManager.Log(ex, $"Unable to disable the proxy.\n{ex.Message}"); + await NotificationProvider.ShowError($"Unable to disable the proxy.\n{ex.Message}"); + } } - catch (Exception ex) + else { - LogManager.Log(ex, $"Unable to disable the proxy.\n{ex.Message}"); - await NotificationProvider.ShowError($"Unable to disable the proxy.\n{ex.Message}"); + try + { + Process.Start(@"C:\Program Files (x86)\Proxifier\Proxifier.exe"); + Settings.EnableProxifier = true; + Settings.Save(); + } + catch (Exception ex) + { + LogManager.Log(ex, $"Unable to start the proxy service.\n{ex.Message}"); + await NotificationProvider.ShowError($"Unable to start the proxy service.\n{ex.Message}"); + } } } - else + + if (_previousEnableUWF != EnableUWF) { + await NotificationProvider.ShowWarning("Changes to disk protection (UWF) will take effect only after a full system restart."); + try { - Process.Start(@"C:\Program Files (x86)\Proxifier\Proxifier.exe"); - Settings.EnableProxifier = true; - Settings.Save(); + LogManager.Log($"Changing UWF mode to '{EnableUWF}'."); + if (EnableUWF) + { + NotificationProvider.SetGlobalBusyMessage("Enabling disk protection (UWF)..."); + await UnifiedWriteFilterManager.Enable(); + } + else + { + NotificationProvider.SetGlobalBusyMessage("Disabling disk protection (UWF)..."); + await UnifiedWriteFilterManager.Disable(); + } + NotificationProvider.ReleaseGlobalBusyMessage(); } catch (Exception ex) { - LogManager.Log(ex, $"Unable to start the proxy service.\n{ex.Message}"); - await NotificationProvider.ShowError($"Unable to start the proxy service.\n{ex.Message}"); + NotificationProvider.ReleaseGlobalBusyMessage(); + LogManager.Log(ex, "Error setting UWF mode."); + await NotificationProvider.ShowError($"Could not change the disk protection mode\n{ex.FlattenMessage()}"); } } - } - - if (_previousEnableUWF != EnableUWF) - { - await NotificationProvider.ShowWarning("Changes to disk protection (UWF) will take effect only after a full system restart."); - try + if (!isRestarting) { - LogManager.Log($"Changing UWF mode to '{EnableUWF}'."); - if (EnableUWF) - { - NotificationProvider.SetGlobalBusyMessage("Enabling disk protection (UWF)..."); - await UnifiedWriteFilterManager.Enable(); - } - else - { - NotificationProvider.SetGlobalBusyMessage("Disabling disk protection (UWF)..."); - await UnifiedWriteFilterManager.Disable(); - } - NotificationProvider.ReleaseGlobalBusyMessage(); + await NavigationManager.NavigateBack(); } - catch (Exception ex) - { - NotificationProvider.ReleaseGlobalBusyMessage(); - LogManager.Log(ex, "Error setting UWF mode."); - await NotificationProvider.ShowError($"Could not change the disk protection mode\n{ex.FlattenMessage()}"); - } - } - - if (!isRestarting) - { - await NavigationManager.NavigateBack(); } } } @@ -477,19 +480,22 @@ namespace Tango.PPC.MachineSettings.ViewModels MachineDataSynchronizer.SynchronizationStarted += (_, __) => InvalidateRelayCommands(); MachineDataSynchronizer.SynchronizationEnded += (_, __) => InvalidateRelayCommands(); - if (!Settings.EnableProxifier) + if (!BuildProvider.IsEureka) { - CmdCommand cmd = null; - CmdCommandResult result = null; - - try + if (!Settings.EnableProxifier) { - cmd = new CmdCommand("taskkill", "/F /IM proxifier.exe"); - result = await cmd.Run(); - } - catch (Exception ex) - { - LogManager.Log(ex, $"Unable to disable the proxy.\n{ex.Message}"); + CmdCommand cmd = null; + CmdCommandResult result = null; + + try + { + cmd = new CmdCommand("taskkill", "/F /IM proxifier.exe"); + result = await cmd.Run(); + } + catch (Exception ex) + { + LogManager.Log(ex, $"Unable to disable the proxy.\n{ex.Message}"); + } } } @@ -571,14 +577,17 @@ namespace Tango.PPC.MachineSettings.ViewModels SelectedTimeZone = TimeZones.SingleOrDefault(x => x.StandardName == TimeZone.CurrentTimeZone.StandardName); _previousTimeZone = SelectedTimeZone; - try + if (!BuildProvider.IsEureka) { - EnableUWF = await UnifiedWriteFilterManager.IsEnabled(); - _previousEnableUWF = EnableUWF; - } - catch (Exception ex) - { - LogManager.Log(ex, "Error getting UWF status."); + try + { + EnableUWF = await UnifiedWriteFilterManager.IsEnabled(); + _previousEnableUWF = EnableUWF; + } + catch (Exception ex) + { + LogManager.Log(ex, "Error getting UWF status."); + } } try @@ -613,7 +622,10 @@ namespace Tango.PPC.MachineSettings.ViewModels LogManager.Log(ex, "Error loading lubrication levels."); } - EnableProxy = Settings.EnableProxifier; + if (!BuildProvider.IsEureka) + { + EnableProxy = Settings.EnableProxifier; + } } private async void OnEnableRemoteAssistanceChanged() diff --git a/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml b/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml index 6871eb330..2a7d968aa 100644 --- a/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml +++ b/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml @@ -59,7 +59,7 @@ <StackPanel Margin="10 30 10 10"> <connectivity:AvailableWiFiConnectionsControl DataContext="{Binding ConnectivityProvider}" /> - <controls:TableGrid Margin="10" RowHeight="60" MakeFirstColumnVerticalAlignmentBottom="False" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> + <controls:TableGrid Visibility="{Binding BuildProvider.IsEureka,Converter={StaticResource BooleanToVisibilityInverseConverter}}" Margin="10" RowHeight="60" MakeFirstColumnVerticalAlignmentBottom="False" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> <TextBlock VerticalAlignment="Center">Enable Hot Spot</TextBlock> <touch:TouchToggleSlider Style="{StaticResource TangoToggleButtonGrayAccent}" HorizontalAlignment="Right" Margin="0 0 110 0" Width="90" IsChecked="{Binding EnableHotSpot}"></touch:TouchToggleSlider> @@ -68,7 +68,7 @@ <touch:TouchTextBox IsPassword="True" Watermark="•••••••" HorizontalAlignment="Right" VerticalAlignment="Bottom" Width="200" Text="{Binding HotSpotPassword}" KeyboardContainer="{Binding ElementName=Container}"></touch:TouchTextBox> </controls:TableGrid> - <DockPanel Margin="10 -40 0 0"> + <DockPanel Margin="10 -40 0 0" Visibility="{Binding BuildProvider.IsEureka,Converter={StaticResource BooleanToVisibilityInverseConverter}}"> <touch:TouchIcon VerticalAlignment="Top" Icon="InformationOutline" Foreground="{StaticResource TangoGrayTextBrush}"></touch:TouchIcon> <TextBlock Margin="10 0 0 0" VerticalAlignment="Top" TextWrapping="Wrap" FontSize="{StaticResource TangoSmallFontSize}" Foreground="{StaticResource TangoGrayTextBrush}"> Enabling a hot-spot will create a wireless network dedicated to this machine. @@ -219,7 +219,7 @@ </touch:TouchExpander> <!--REMOTE ASSISTANCE--> - <touch:TouchExpander Margin="0 20 0 0" Header="Remote Assistance" IsExpanded="True" FontSize="{StaticResource TangoExpanderHeaderFontSize}"> + <touch:TouchExpander Margin="0 20 0 0" Header="Remote Assistance" IsExpanded="True" FontSize="{StaticResource TangoExpanderHeaderFontSize}" Visibility="{Binding BuildProvider.IsEureka,Converter={StaticResource BooleanToVisibilityInverseConverter}}"> <StackPanel> <controls:TableGrid Margin="10" RowHeight="70" MakeFirstColumnVerticalAlignmentBottom="False" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> <TextBlock VerticalAlignment="Center">Enable Remote Assistance</TextBlock> @@ -236,7 +236,7 @@ </touch:TouchExpander> <!--LOCK SCREEN--> - <touch:TouchExpander Margin="0 20 0 0" Header="Lock Screen" IsExpanded="True" FontSize="{StaticResource TangoExpanderHeaderFontSize}"> + <touch:TouchExpander Margin="0 20 0 0" Header="Lock Screen" IsExpanded="True" FontSize="{StaticResource TangoExpanderHeaderFontSize}" Visibility="{Binding BuildProvider.IsEureka,Converter={StaticResource BooleanToVisibilityInverseConverter}}"> <StackPanel> <controls:TableGrid Margin="10" RowHeight="60" MakeFirstColumnVerticalAlignmentBottom="False" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> <TextBlock VerticalAlignment="Center">Enable Lock Screen</TextBlock> @@ -327,7 +327,7 @@ </touch:TouchExpander> <!--SCREEN SAVER--> - <touch:TouchExpander Margin="0 20 0 0" Header="Screen Saver" IsExpanded="True" FontSize="{StaticResource TangoExpanderHeaderFontSize}"> + <touch:TouchExpander Margin="0 20 0 0" Header="Screen Saver" IsExpanded="True" FontSize="{StaticResource TangoExpanderHeaderFontSize}" Visibility="{Binding BuildProvider.IsEureka,Converter={StaticResource BooleanToVisibilityInverseConverter}}"> <StackPanel> <controls:TableGrid Margin="10" RowHeight="60" MakeFirstColumnVerticalAlignmentBottom="False" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> <TextBlock VerticalAlignment="Center"> @@ -380,7 +380,7 @@ <touch:TouchToggleSlider IsChecked="{Binding Settings.EnableEmbeddedDebugLogs}" Margin="0 0 100 0" DockPanel.Dock="Right" Style="{StaticResource TangoToggleButtonGrayAccent}" HorizontalAlignment="Right" Width="90"></touch:TouchToggleSlider> </DockPanel> - <DockPanel Margin="0 20 0 0" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> + <DockPanel Visibility="{Binding BuildProvider.IsEureka,Converter={StaticResource BooleanToVisibilityInverseConverter}}" Margin="0 20 0 0" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> <TextBlock VerticalAlignment="Center">Enable Proxy</TextBlock> <touch:TouchToggleSlider IsChecked="{Binding EnableProxy}" Margin="0 0 100 0" DockPanel.Dock="Right" Style="{StaticResource TangoToggleButtonGrayAccent}" HorizontalAlignment="Right" Width="90"></touch:TouchToggleSlider> </DockPanel> @@ -406,11 +406,6 @@ </DockPanel> <DockPanel Margin="0 20 0 0" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> - <TextBlock VerticalAlignment="Center">Use Legacy Jobs Module</TextBlock> - <touch:TouchToggleSlider IsChecked="{Binding Settings.UseJobsModuleV2,Converter={StaticResource BooleanInverseConverter}}" Margin="0 0 100 0" DockPanel.Dock="Right" Style="{StaticResource TangoToggleButtonGrayAccent}" HorizontalAlignment="Right" Width="90"></touch:TouchToggleSlider> - </DockPanel> - - <DockPanel Margin="0 20 0 0" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> <TextBlock VerticalAlignment="Center">Always Start in Technician Mode</TextBlock> <touch:TouchToggleSlider IsChecked="{Binding Settings.EnableTechnicianModeByDefault}" Margin="0 0 100 0" DockPanel.Dock="Right" Style="{StaticResource TangoToggleButtonGrayAccent}" HorizontalAlignment="Right" Width="90"></touch:TouchToggleSlider> </DockPanel> @@ -455,7 +450,7 @@ <touch:TouchNumericTextBox Minimum="1" Maximum="120" KeyboardContainer="{Binding ElementName=Container}" Value="{Binding Settings.InsightsMaxStorageDuration,Converter={StaticResource TimeSpanToDaysConverter}}" Margin="0 0 100 0" DockPanel.Dock="Right" HorizontalAlignment="Right" Width="90"></touch:TouchNumericTextBox> </DockPanel> - <DockPanel Margin="0 20 0 0" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> + <DockPanel Visibility="{Binding BuildProvider.IsEureka,Converter={StaticResource BooleanToVisibilityInverseConverter}}" Margin="0 20 0 0" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> <TextBlock VerticalAlignment="Center">Enable UWF (Disk Protection)</TextBlock> <touch:TouchToggleSlider IsChecked="{Binding EnableUWF}" Margin="0 0 100 0" DockPanel.Dock="Right" Style="{StaticResource TangoToggleButtonGrayAccent}" HorizontalAlignment="Right" Width="90"></touch:TouchToggleSlider> </DockPanel> diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/Build/IBuildProvider.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/Build/IBuildProvider.cs index 2612d584b..3ced1ddc2 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Common/Build/IBuildProvider.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/Build/IBuildProvider.cs @@ -10,5 +10,6 @@ namespace Tango.PPC.Common.Build { BuildType BuildType { get; } bool IsEureka { get; } + String BuildName { get; } } } diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/Converters/BuildTypeToVisibilityConverter.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/Converters/BuildTypeToVisibilityConverter.cs new file mode 100644 index 000000000..e697c1c6a --- /dev/null +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/Converters/BuildTypeToVisibilityConverter.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Data; +using Tango.Core.DI; +using Tango.PPC.Common.Build; + +namespace Tango.PPC.Common.Converters +{ + public class BuildTypeToVisibilityConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + return (BuildType)value == (BuildType)parameter ? Visibility.Visible : Visibility.Collapsed; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/Converters/BuildTypeToVisibilityInverseConverter.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/Converters/BuildTypeToVisibilityInverseConverter.cs new file mode 100644 index 000000000..a603a6d52 --- /dev/null +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/Converters/BuildTypeToVisibilityInverseConverter.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Data; +using Tango.Core.DI; +using Tango.PPC.Common.Build; + +namespace Tango.PPC.Common.Converters +{ + public class BuildTypeToVisibilityInverseConverter : IValueConverter + { + public object Convert(object value, Type targetType, object parameter, CultureInfo culture) + { + return (BuildType)value == (BuildType)parameter ? Visibility.Collapsed : Visibility.Visible; + } + + public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) + { + throw new NotImplementedException(); + } + } +} diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/Resources/Merged.xaml b/Software/Visual_Studio/PPC/Tango.PPC.Common/Resources/Merged.xaml index 6c8afc57a..5f8cabcca 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Common/Resources/Merged.xaml +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/Resources/Merged.xaml @@ -72,6 +72,8 @@ <localConverter:EventTypeDescriptionConverter x:Key="EventTypeDescriptionConverter" /> <localConverter:EventTypeTitleConverter x:Key="EventTypeTitleConverter" /> <localConverter:IsEurekaToBooleanConverter x:Key="IsEurekaToBooleanConverter" /> + <localConverter:BuildTypeToVisibilityConverter x:Key="IsEurekaToVisibilityConverter" /> + <localConverter:BuildTypeToVisibilityInverseConverter x:Key="IsEurekaToVisibilityInverseConverter" /> <Style TargetType="FrameworkElement"> <Setter Property="TextElement.FontFamily" Value="{StaticResource TangoFlexoFontFamily}"></Setter> diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/Tango.PPC.Common.csproj b/Software/Visual_Studio/PPC/Tango.PPC.Common/Tango.PPC.Common.csproj index 1f4651435..fa8aadf9a 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Common/Tango.PPC.Common.csproj +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/Tango.PPC.Common.csproj @@ -160,6 +160,8 @@ <Compile Include="Converters\EventTypeDescriptionConverter.cs" /> <Compile Include="Converters\EventTypeTitleConverter.cs" /> <Compile Include="Converters\HeightToOpacityConverter.cs" /> + <Compile Include="Converters\BuildTypeToVisibilityInverseConverter.cs" /> + <Compile Include="Converters\BuildTypeToVisibilityConverter.cs" /> <Compile Include="Converters\IsEurekaToBooleanConverter.cs" /> <Compile Include="DataStore\DefaultDataStoreService.cs" /> <Compile Include="DataStore\IDataStoreService.cs" /> @@ -611,7 +613,7 @@ </Target> <ProjectExtensions> <VisualStudio> - <UserProperties BuildVersion_StartDate="2000/1/1" BuildVersion_UseGlobalSettings="False" BuildVersion_BuildVersioningStyle="None.None.Increment.TimeStamp" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" /> + <UserProperties BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_BuildVersioningStyle="None.None.Increment.TimeStamp" BuildVersion_UseGlobalSettings="False" BuildVersion_StartDate="2000/1/1" /> </VisualStudio> </ProjectExtensions> </Project>
\ No newline at end of file diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Publisher.UI/Tango.PPC.Publisher.UI.csproj b/Software/Visual_Studio/PPC/Tango.PPC.Publisher.UI/Tango.PPC.Publisher.UI.csproj index 778117469..be3bce7d8 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Publisher.UI/Tango.PPC.Publisher.UI.csproj +++ b/Software/Visual_Studio/PPC/Tango.PPC.Publisher.UI/Tango.PPC.Publisher.UI.csproj @@ -48,6 +48,15 @@ <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Eureka|AnyCPU' "> + <PlatformTarget>AnyCPU</PlatformTarget> + <DebugType>pdbonly</DebugType> + <Optimize>true</Optimize> + <OutputPath>..\..\Build\PPC\Debug\</OutputPath> + <DefineConstants>TRACE;Eureka</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> <ItemGroup> <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> <HintPath>..\..\packages\EntityFramework.6.2.0\lib\net45\EntityFramework.dll</HintPath> diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/Build/DefaultBuildProvider.cs b/Software/Visual_Studio/PPC/Tango.PPC.UI/Build/DefaultBuildProvider.cs index 8f200191b..36bb64103 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.UI/Build/DefaultBuildProvider.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/Build/DefaultBuildProvider.cs @@ -17,12 +17,18 @@ namespace Tango.PPC.UI.Build get { return BuildType == BuildType.Eureka; } } + public string BuildName => BuildType == BuildType.Eureka ? "Eureka" : "Tango - PPC"; + public DefaultBuildProvider() { + if (App.StartupArgs != null && App.StartupArgs.Contains("eureka_build")) { BuildType = BuildType.Eureka; } +#if Eureka + BuildType = BuildType.Eureka; +#endif } } } diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/Icon.ico b/Software/Visual_Studio/PPC/Tango.PPC.UI/Icon.ico Binary files differnew file mode 100644 index 000000000..069f03569 --- /dev/null +++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/Icon.ico diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/MainWindow.xaml.cs b/Software/Visual_Studio/PPC/Tango.PPC.UI/MainWindow.xaml.cs index 1cfa60f92..db154f464 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.UI/MainWindow.xaml.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/MainWindow.xaml.cs @@ -61,6 +61,8 @@ namespace Tango.PPC.UI private void InitEureka() { + Title = "Eureka"; + Viewbox viewBox = new Viewbox(); viewBox.Stretch = Stretch.Uniform; this.Content = viewBox; diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/Manifests/eureka.xml b/Software/Visual_Studio/PPC/Tango.PPC.UI/Manifests/eureka.xml new file mode 100644 index 000000000..efc5f8179 --- /dev/null +++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/Manifests/eureka.xml @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="utf-8"?> +<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1"> + <assemblyIdentity version="1.0.0.0" name="MyApplication.app"/> + <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2"> + <security> + <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3"> + <!-- UAC Manifest Options + If you want to change the Windows User Account Control level replace the + requestedExecutionLevel node with one of the following. + + <requestedExecutionLevel level="asInvoker" uiAccess="false" /> + <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> + <requestedExecutionLevel level="highestAvailable" uiAccess="false" /> + + Specifying requestedExecutionLevel element will disable file and registry virtualization. + Remove this element if your application requires this virtualization for backwards + compatibility. + --> + <!--<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />--> + </requestedPrivileges> + </security> + </trustInfo> + + <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> + <application> + <!-- A list of the Windows versions that this application has been tested on + and is designed to work with. Uncomment the appropriate elements + and Windows will automatically select the most compatible environment. --> + + <!-- Windows Vista --> + <!--<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />--> + + <!-- Windows 7 --> + <!--<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />--> + + <!-- Windows 8 --> + <!--<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />--> + + <!-- Windows 8.1 --> + <!--<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" />--> + + <!-- Windows 10 --> + <!--<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />--> + + </application> + </compatibility> + + <!-- Indicates that the application is DPI-aware and will not be automatically scaled by Windows at higher + DPIs. Windows Presentation Foundation (WPF) applications are automatically DPI-aware and do not need + to opt in. Windows Forms applications targeting .NET Framework 4.6 that opt into this setting, should + also set the 'EnableWindowsFormsHighDpiAutoResizing' setting to 'true' in their app.config. --> + <!-- + <application xmlns="urn:schemas-microsoft-com:asm.v3"> + <windowsSettings> + <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware> + </windowsSettings> + </application> + --> + + <!-- Enable themes for Windows common controls and dialogs (Windows XP and later) --> + <!-- + <dependency> + <dependentAssembly> + <assemblyIdentity + type="win32" + name="Microsoft.Windows.Common-Controls" + version="6.0.0.0" + processorArchitecture="*" + publicKeyToken="6595b64144ccf1df" + language="*" + /> + </dependentAssembly> + </dependency> + --> + +</assembly> 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 7a5c51646..00fd8c0e0 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.UI/PPCApplication/DefaultPPCApplicationManager.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/PPCApplication/DefaultPPCApplicationManager.cs @@ -256,7 +256,7 @@ namespace Tango.PPC.UI.PPCApplication //Start watchdog _watchdogServer = new WatchDogServer(Application.Current.Dispatcher); -#if !DEBUG +#if (!DEBUG && !Eureka) if (settings.EnableWatchDog) { diff --git a/Software/Visual_Studio/PPC/Tango.PPC.UI/Tango.PPC.UI.csproj b/Software/Visual_Studio/PPC/Tango.PPC.UI/Tango.PPC.UI.csproj index af76c09ce..cb355a6bc 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.UI/Tango.PPC.UI.csproj +++ b/Software/Visual_Studio/PPC/Tango.PPC.UI/Tango.PPC.UI.csproj @@ -50,9 +50,21 @@ <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Eureka|AnyCPU' "> + <PlatformTarget>AnyCPU</PlatformTarget> + <DebugType>pdbonly</DebugType> + <Optimize>true</Optimize> + <OutputPath>..\..\Build\Eureka\Release\</OutputPath> + <DefineConstants>TRACE;Eureka</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> <PropertyGroup> <ApplicationManifest>app.manifest</ApplicationManifest> </PropertyGroup> + <PropertyGroup> + <ApplicationIcon>Icon.ico</ApplicationIcon> + </PropertyGroup> <ItemGroup> <Reference Include="ControlzEx, Version=3.0.2.4, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\..\packages\ControlzEx.3.0.2.4\lib\net45\ControlzEx.dll</HintPath> @@ -569,6 +581,8 @@ <Resource Include="Images\Job Issues\Machine outline.png" /> <Resource Include="Images\Menu\restart_t.png" /> <Resource Include="Images\Menu\Power_image.png" /> + <Resource Include="Manifests\eureka.xml" /> + <Resource Include="Icon.ico" /> <Content Include="Manifests\release.xml" /> <Content Include="Manifests\debug.xml" /> <None Include="firmware_package.tfp"> @@ -867,8 +881,11 @@ RD /S /Q "$(TargetDir)ProtoCompilers\" RD /S /Q "$(TargetDir)Packages\ProtoCompilers\" if $(ConfigurationName) == Release RD /S /Q "$(TargetDir)x86\" if $(ConfigurationName) == Release RD /S /Q "$(TargetDir)x64\" +if $(ConfigurationName) == Eureka RD /S /Q "$(TargetDir)x86\" +if $(ConfigurationName) == Eureka RD /S /Q "$(TargetDir)x64\" if $(ConfigurationName) == Release RD /S /Q "$(TargetDir)lib\" +if $(ConfigurationName) == Eureka RD /S /Q "$(TargetDir)lib\" copy /Y "$(SolutionDir)Referenced Assemblies\mscoree.dll" "$(TargetDir)" copy /Y "$(SolutionDir)Referenced Assemblies\msvcp140d.dll" "$(TargetDir)" @@ -878,10 +895,13 @@ copy /Y "$(SolutionDir)Referenced Assemblies\vcruntime140d.dll" "$(TargetDir)" copy /Y "$(SolutionDir)Referenced Assemblies\Microsoft.WITDataStore32.dll" "$(TargetDir)" if $(ConfigurationName) == Release del "$(TargetDir)firmware_package.tfp" +if $(ConfigurationName) == Eureka del "$(TargetDir)firmware_package.tfp" if $(ConfigurationName) == Release del *.xml +if $(ConfigurationName) == Eureka del *.xml if $(ConfigurationName) == Release del WebRtc.NET.pdb +if $(ConfigurationName) == Eureka del WebRtc.NET.pdb if $(ConfigurationName) == Debug copy /Y "$(TargetDir)Packages" "$(TargetDir)" @@ -893,7 +913,7 @@ if $(ConfigurationName) == Debug "rc.exe" "$(TargetPath)" --set-version-string " </PropertyGroup> <ProjectExtensions> <VisualStudio> - <UserProperties BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_BuildVersioningStyle="None.None.Increment.TimeStamp" BuildVersion_UseGlobalSettings="False" BuildVersion_StartDate="2000/1/1" /> + <UserProperties BuildVersion_StartDate="2000/1/1" BuildVersion_UseGlobalSettings="False" BuildVersion_BuildVersioningStyle="None.None.Increment.TimeStamp" BuildVersion_UpdateAssemblyVersion="True" BuildVersion_AssemblyInfoFilename="Properties\AssemblyInfo.cs" /> </VisualStudio> </ProjectExtensions> </Project>
\ No newline at end of file diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Updater/MainWindow.xaml.cs b/Software/Visual_Studio/PPC/Tango.PPC.Updater/MainWindow.xaml.cs index 8f521c85a..3a1e85373 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Updater/MainWindow.xaml.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.Updater/MainWindow.xaml.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; +using System.Runtime.InteropServices; using System.Security.Principal; using System.Text; using System.Threading; @@ -24,13 +25,23 @@ namespace Tango.PPC.Updater /// </summary> public partial class MainWindow : Window { + [DllImport("user32.dll")] + private static extern int GetSystemMetrics(int nIndex); + private String _sourceFolder = AppDomain.CurrentDomain.BaseDirectory; private String _msProcessName = "Tango.PPC.UI"; private String _appPath; private bool EMULATE_EXCEPTION = false; + private bool _isEureka; public MainWindow() { + + +#if Eureka + _isEureka = true; +#endif + //Launch debugger.. #if DEBUG if (!Debugger.IsAttached) @@ -44,7 +55,7 @@ namespace Tango.PPC.Updater WindowStyle = WindowStyle.None; ResizeMode = ResizeMode.NoResize; WindowStartupLocation = WindowStartupLocation.Manual; - Topmost = true; // sure? + Topmost = !_isEureka; // sure? var screens = System.Windows.Forms.Screen.AllScreens; @@ -64,6 +75,34 @@ namespace Tango.PPC.Updater Left = 0; } + if (_isEureka) + { + bool hasTouch = IsTouchEnabled(); + + if (!hasTouch) + { + WindowStyle = WindowStyle.SingleBorderWindow; + ResizeMode = ResizeMode.CanResize; + Width = 1280; + Height = 720; + WindowStartupLocation = WindowStartupLocation.CenterScreen; + WindowState = WindowState.Normal; + Topmost = false; // sure? + } + else + { + WindowState = WindowState.Normal; + WindowStyle = WindowStyle.None; + ResizeMode = ResizeMode.NoResize; + Left = screens.Length == 2 ? screens[0].Bounds.Width : 0; + Top = 0; + Width = 1920; + Height = 1080; + WindowStartupLocation = WindowStartupLocation.Manual; + Topmost = false; // sure? + } + } + ContentRendered += MainWindow_ContentRendered; btnRetry.Click += BtnRetry_Click; @@ -344,5 +383,19 @@ namespace Tango.PPC.Updater { Update(); } + + /// <summary> + /// Determines whether the current machine is touch enabled. + /// </summary> + public static bool IsTouchEnabled() + { + foreach (TabletDevice tabletDevice in Tablet.TabletDevices) + { + if (tabletDevice.Type == TabletDeviceType.Touch && !String.IsNullOrWhiteSpace(tabletDevice.Name)) + return true; + } + + return false; + } } } diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Updater/Tango.PPC.Updater.csproj b/Software/Visual_Studio/PPC/Tango.PPC.Updater/Tango.PPC.Updater.csproj index 8f8430102..1e3102b0e 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Updater/Tango.PPC.Updater.csproj +++ b/Software/Visual_Studio/PPC/Tango.PPC.Updater/Tango.PPC.Updater.csproj @@ -33,6 +33,15 @@ <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Eureka|AnyCPU' "> + <PlatformTarget>AnyCPU</PlatformTarget> + <DebugType>pdbonly</DebugType> + <Optimize>true</Optimize> + <OutputPath>..\..\Build\Eureka\Release\</OutputPath> + <DefineConstants>TRACE;Eureka</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> <PropertyGroup> <ApplicationManifest>app.manifest</ApplicationManifest> </PropertyGroup> diff --git a/Software/Visual_Studio/Tango.sln b/Software/Visual_Studio/Tango.sln index 392f51143..d48611d2e 100644 --- a/Software/Visual_Studio/Tango.sln +++ b/Software/Visual_Studio/Tango.sln @@ -6612,8 +6612,8 @@ Global {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Debug|x64.Build.0 = Debug|Any CPU {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Debug|x86.ActiveCfg = Debug|Any CPU {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Debug|x86.Build.0 = Debug|Any CPU - {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Eureka|Any CPU.Build.0 = Release|Any CPU + {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Eureka|Any CPU.ActiveCfg = Eureka|Any CPU + {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Eureka|Any CPU.Build.0 = Eureka|Any CPU {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Eureka|ARM.ActiveCfg = Release|Any CPU {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Eureka|ARM.Build.0 = Release|Any CPU {654BEDA3-16FB-44FF-ADE7-B52E50B02E63}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -6793,7 +6793,6 @@ Global {096F16C8-6D06-4B5F-9496-B9D2DF2D94A3}.Debug|x86.ActiveCfg = Debug|Any CPU {096F16C8-6D06-4B5F-9496-B9D2DF2D94A3}.Debug|x86.Build.0 = Debug|Any CPU {096F16C8-6D06-4B5F-9496-B9D2DF2D94A3}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {096F16C8-6D06-4B5F-9496-B9D2DF2D94A3}.Eureka|Any CPU.Build.0 = Release|Any CPU {096F16C8-6D06-4B5F-9496-B9D2DF2D94A3}.Eureka|ARM.ActiveCfg = Release|Any CPU {096F16C8-6D06-4B5F-9496-B9D2DF2D94A3}.Eureka|ARM.Build.0 = Release|Any CPU {096F16C8-6D06-4B5F-9496-B9D2DF2D94A3}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -7510,8 +7509,8 @@ Global {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Debug|x64.Build.0 = Debug|Any CPU {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Debug|x86.ActiveCfg = Debug|Any CPU {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Debug|x86.Build.0 = Debug|Any CPU - {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Eureka|Any CPU.Build.0 = Release|Any CPU + {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Eureka|Any CPU.ActiveCfg = Eureka|Any CPU + {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Eureka|Any CPU.Build.0 = Eureka|Any CPU {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Eureka|ARM.ActiveCfg = Release|Any CPU {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Eureka|ARM.Build.0 = Release|Any CPU {D0E71A4D-9EEA-4F07-983F-EEB4416C587F}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -8680,7 +8679,6 @@ Global {7E5E4BED-538C-4566-A005-DCC070AF8715}.Debug|x86.ActiveCfg = Debug|Any CPU {7E5E4BED-538C-4566-A005-DCC070AF8715}.Debug|x86.Build.0 = Debug|Any CPU {7E5E4BED-538C-4566-A005-DCC070AF8715}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {7E5E4BED-538C-4566-A005-DCC070AF8715}.Eureka|Any CPU.Build.0 = Release|Any CPU {7E5E4BED-538C-4566-A005-DCC070AF8715}.Eureka|ARM.ActiveCfg = Release|Any CPU {7E5E4BED-538C-4566-A005-DCC070AF8715}.Eureka|ARM.Build.0 = Release|Any CPU {7E5E4BED-538C-4566-A005-DCC070AF8715}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -9033,7 +9031,6 @@ Global {280267F5-A19E-4B96-999D-C13D293ECA45}.Debug|x86.ActiveCfg = Debug|Any CPU {280267F5-A19E-4B96-999D-C13D293ECA45}.Debug|x86.Build.0 = Debug|Any CPU {280267F5-A19E-4B96-999D-C13D293ECA45}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {280267F5-A19E-4B96-999D-C13D293ECA45}.Eureka|Any CPU.Build.0 = Release|Any CPU {280267F5-A19E-4B96-999D-C13D293ECA45}.Eureka|ARM.ActiveCfg = Release|Any CPU {280267F5-A19E-4B96-999D-C13D293ECA45}.Eureka|ARM.Build.0 = Release|Any CPU {280267F5-A19E-4B96-999D-C13D293ECA45}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -9392,8 +9389,8 @@ Global {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Debug|x64.Build.0 = Debug|Any CPU {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Debug|x86.ActiveCfg = Debug|Any CPU {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Debug|x86.Build.0 = Debug|Any CPU - {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Eureka|Any CPU.Build.0 = Release|Any CPU + {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Eureka|Any CPU.ActiveCfg = Eureka|Any CPU + {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Eureka|Any CPU.Build.0 = Eureka|Any CPU {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Eureka|ARM.ActiveCfg = Release|Any CPU {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Eureka|ARM.Build.0 = Release|Any CPU {FABA6A2B-C7EA-4C58-A125-150FA5B4C72F}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -12464,7 +12461,6 @@ Global {2CD12594-3522-4658-A65F-190EE58B6AFA}.Debug|x86.ActiveCfg = Debug|Any CPU {2CD12594-3522-4658-A65F-190EE58B6AFA}.Debug|x86.Build.0 = Debug|Any CPU {2CD12594-3522-4658-A65F-190EE58B6AFA}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {2CD12594-3522-4658-A65F-190EE58B6AFA}.Eureka|Any CPU.Build.0 = Release|Any CPU {2CD12594-3522-4658-A65F-190EE58B6AFA}.Eureka|ARM.ActiveCfg = Release|Any CPU {2CD12594-3522-4658-A65F-190EE58B6AFA}.Eureka|ARM.Build.0 = Release|Any CPU {2CD12594-3522-4658-A65F-190EE58B6AFA}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -12554,7 +12550,6 @@ Global {DA391B02-AE28-4EA1-A80F-D0F4C8029FFA}.Debug|x86.ActiveCfg = Debug|Any CPU {DA391B02-AE28-4EA1-A80F-D0F4C8029FFA}.Debug|x86.Build.0 = Debug|Any CPU {DA391B02-AE28-4EA1-A80F-D0F4C8029FFA}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {DA391B02-AE28-4EA1-A80F-D0F4C8029FFA}.Eureka|Any CPU.Build.0 = Release|Any CPU {DA391B02-AE28-4EA1-A80F-D0F4C8029FFA}.Eureka|ARM.ActiveCfg = Release|Any CPU {DA391B02-AE28-4EA1-A80F-D0F4C8029FFA}.Eureka|ARM.Build.0 = Release|Any CPU {DA391B02-AE28-4EA1-A80F-D0F4C8029FFA}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -16140,7 +16135,6 @@ Global {59643ABC-DF9A-497F-8A7C-4A131C7CF438}.Debug|x86.ActiveCfg = Debug|Any CPU {59643ABC-DF9A-497F-8A7C-4A131C7CF438}.Debug|x86.Build.0 = Debug|Any CPU {59643ABC-DF9A-497F-8A7C-4A131C7CF438}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {59643ABC-DF9A-497F-8A7C-4A131C7CF438}.Eureka|Any CPU.Build.0 = Release|Any CPU {59643ABC-DF9A-497F-8A7C-4A131C7CF438}.Eureka|ARM.ActiveCfg = Release|Any CPU {59643ABC-DF9A-497F-8A7C-4A131C7CF438}.Eureka|ARM.Build.0 = Release|Any CPU {59643ABC-DF9A-497F-8A7C-4A131C7CF438}.Eureka|ARM64.ActiveCfg = Release|Any CPU @@ -16410,7 +16404,6 @@ Global {EA4233F1-4B7B-4CCF-A6DE-2D17612EBA90}.Debug|x86.ActiveCfg = Debug|Any CPU {EA4233F1-4B7B-4CCF-A6DE-2D17612EBA90}.Debug|x86.Build.0 = Debug|Any CPU {EA4233F1-4B7B-4CCF-A6DE-2D17612EBA90}.Eureka|Any CPU.ActiveCfg = Release|Any CPU - {EA4233F1-4B7B-4CCF-A6DE-2D17612EBA90}.Eureka|Any CPU.Build.0 = Release|Any CPU {EA4233F1-4B7B-4CCF-A6DE-2D17612EBA90}.Eureka|ARM.ActiveCfg = Release|Any CPU {EA4233F1-4B7B-4CCF-A6DE-2D17612EBA90}.Eureka|ARM.Build.0 = Release|Any CPU {EA4233F1-4B7B-4CCF-A6DE-2D17612EBA90}.Eureka|ARM64.ActiveCfg = Release|Any CPU |
