using Tango.Core.DI;
using Tango.MachineStudio.Logging.Navigation;
using Tango.MachineStudio.Logging.ViewModels;
namespace Tango.MachineStudio.Logging
{
/// <summary>
/// This class contains static references to all the view models in the
/// application and provides an entry point for the bindings.
/// </summary>
public static class ViewModelLocator
{
/// <summary>
/// Initializes a new instance of the ViewModelLocator class.
/// </summary>
static ViewModelLocator()
{
TangoIOC.Default.Register<EventsViewVM>();
TangoIOC.Default.Register<ApplicationLogsViewVM>();
TangoIOC.Default.Register<EmbeddedLogsViewVM>();
TangoIOC.Default.Register<HomeViewVM>();
TangoIOC.Default.Unregister<Logg<UserControl x:Class="Tango.MachineStudio.MachineDesigner.Views.MachineView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
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"
xmlns:dragAndDrop="clr-namespace:Tango.DragAndDrop;assembly=Tango.DragAndDrop"
xmlns:global="clr-namespace:Tango.MachineStudio.MachineDesigner"
xmlns:fa="http://schemas.fontawesome.io/icons/"
xmlns:providers="clr-namespace:Tango.MachineStudio.MachineDesigner.AutoComplete"
xmlns:autoComplete="clr-namespace:Tango.AutoComplete.Editors;assembly=Tango.AutoComplete"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:sharedConverters="clr-namespace:Tango.SharedUI.Converters;assembly=Tango.SharedUI"
xmlns:vm="clr-namespace:Tango.MachineStudio.MachineDesigner.ViewModels"
xmlns:local="clr-namespace:Tango.MachineStudio.MachineDesigner.Views"
mc:Ignorable="d"
d:DesignHeight="720" d:DesignWidth="1280" d:DataContext="{d:DesignInstance Type=vm:MainViewVM, IsDesignTimeCreatable=False}">
<UserControl.Resources>
<sharedConverters:ColorToIntegerConverter x:Key="ColorToIntegerConverter" />
<Style x:Key="draggableGrid" TargetType="Grid">
<Setter Property="RenderTransform">
<Setter.Value>
<ScaleTransform ScaleX="1" ScaleY="1"></ScaleTransform>
</Setter.Value>
</Setter>
<Setter Property="RenderTransformOrigin" Value="0.5,0.5"></Setter>
<Setter Property="Background" Value="Transparent"></Setter>
</Style>
<Style TargetType="Expander" BasedOn="{StaticResource {x:Type Expander}}">
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<TextBlock Text="{Binding}" FontSize="13"></TextBlock>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
<Grid>
<Viewbox MaxWidth="1200" Grid.Row="1" >
<Grid VerticalAlignment="Top">
<Image IsHitTestVisible="False" Source="../Images/machine-full-fx.png" MaxWidth="800" RenderOptions.BitmapScalingMode="Fant">
<Image.Effect>
<DropShadowEffect ShadowDepth="0" BlurRadius="20" Opacity="1" RenderingBias="Performance" Color="DimGray"></DropShadowEffect>
</Image.Effect>
</Image>
<Canvas ClipToBounds="False" x:Name="canvas">
<Grid x:Name="hardwareGrid" Style="{StaticResource draggableGrid}" Width="118" Height="27" Canvas.Left="342" Canvas.Top="80" Background="#6B303030" IsHitTestVisible="True">
<Border BorderBrush="#6C6C6C" BorderThickness="1" IsHitTestVisible="False">
<StackPanel Orientation="Horizontal">
<Image Source="../Images/hardware.png" Width="10" VerticalAlignment="Center" Margin="5" RenderOptions.BitmapScalingMode="Fant"></Image>
<TextBlock Padding="2 0 2 0" VerticalAlignment="Center" TextAlignment="Center" Foreground="Gainsboro" IsHitTestVisible="False" FontSize="6" TextWrapping="Wrap">
<Run Text="{Binding Configuration.HardwareVersion.Name}"></Run>
<Run Text="{Binding Configuration.HardwareVersion.Version}"></Run>
</TextBlock>
</StackPanel>
</Border>
</Grid>
<TextBlock Canvas.Left="532" FontStyle="Italic" Foreground="Gray" Canvas.Top="-22">Hardware</TextBlock>
<Grid Width="97" Height="90" Canvas.Left="431" Canvas.Top="-13">
<Rectangle Stroke="Gray" VerticalAlignment="Top" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
<Rectangle Stroke="Gray" HorizontalAlignment="Left" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
</Grid>
<UniformGrid Width="310" Canvas.Top="295" Canvas.Left="420" Rows="1" Columns="8" TextElement.FontSize="9">
<TextBlock HorizontalAlignment="Center">1</TextBlock>
<TextBlock HorizontalAlignment="Center">2</TextBlock>
<TextBlock HorizontalAlignment="Center">3</TextBlock>
<TextBlock HorizontalAlignment="Center">4</TextBlock>
<TextBlock HorizontalAlignment="Center">5</TextBlock>
<TextBlock HorizontalAlignment="Center">6</TextBlock>
<TextBlock HorizontalAlignment="Center">7</TextBlock>
<TextBlock HorizontalAlignment="Center">8</TextBlock>
</UniformGrid>
<Grid x:Name="gridIds" Width="310" Height="195" Canvas.Top="314" Canvas.Left="420">
<ListBox ItemsSource="{Binding Configuration.IdsPacks}" ScrollViewer.VerticalScrollBarVisibility="Disabled" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem" BasedOn="{StaticResource {x:Type ListBoxItem}}">
<Setter Property="Padding" Value="0"></Setter>
<Setter Property="VerticalContentAlignment" Value="Stretch"></Setter>
<Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter>
</Style>
</ListBox.ItemContainerStyle>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="8"></UniformGrid>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid dragAndDrop:DragAndDropService.DraggableBorderBrush="{StaticResource AccentColorBrush}" >
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="30"/>
</Grid.RowDefinitions>
<Grid.Style>
<Style TargetType="Grid" BasedOn="{StaticResource draggableGrid}">
<Style.Triggers>
</Style.Triggers>
</Style>
</Grid.Style>
<UniformGrid Columns="1" Rows="2">
<Grid Margin="2">
<Image IsHitTestVisible="False" Source="../Images/dispenser.png" RenderOptions.BitmapScalingMode="Fant">
<Image.Style>
<Style TargetType="Image">
<Style.Triggers>
<DataTrigger Binding="{Binding Dispenser}" Value="{x:Null}">
<Setter Property="Opacity" Value="0.2"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
<Rectangle IsHitTestVisible="False" Margin="14 25 13 34">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,0.8" Opacity="0.8">
<GradientStop Offset="0" Color="Transparent" />
<GradientStop Offset="1" Color="{Binding LiquidType.Color,Converter={StaticResource ColorToIntegerConverter}}"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
</Grid>
<Grid Margin="2">
<Image IsHitTestVisible="False" Stretch="Fill" Source="../Images/mid-tank.png" RenderOptions.BitmapScalingMode="Fant">
<Image.Style>
<Style TargetType="Image">
<Style.Triggers>
<DataTrigger Binding="{Binding MidTankType}" Value="{x:Null}">
<Setter Property="Opacity" Value="0.2"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
<Rectangle IsHitTestVisible="False" Margin="4 25 4 1">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,0.8" Opacity="0.8">
<GradientStop Offset="0" Color="Transparent" />
<GradientStop Offset="1" Color="{Binding LiquidType.Color,Converter={StaticResource ColorToIntegerConverter}}"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
</Grid>
</UniformGrid>
<Grid Grid.Row="1" Margin="3" IsHitTestVisible="False">
<Grid.Style>
<Style TargetType="Grid">
<Style.Triggers>
<DataTrigger Binding="{Binding CartridgeType}" Value="{x:Null}">
<Setter Property="Opacity" Value="0.2"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
<Border BorderBrush="#252525" BorderThickness="1" CornerRadius="3">
<Border.Background>
<LinearGradientBrush>
<GradientStop Color="#FF252525"/>
<GradientStop Color="#FF838383" Offset="1"/>
</LinearGradientBrush>
</Border.Background>
</Border>
<Border BorderBrush="#252525" BorderThickness="1" CornerRadius="3">
<Border.Background>
<LinearGradientBrush Opacity="0.7">
<GradientStop Offset="0" Color="Transparent" />
<GradientStop Offset="1" Color="{Binding LiquidType.Color,Converter={StaticResource ColorToIntegerConverter}}"/>
</LinearGradientBrush>
</Border.Background>
</Border>
</Grid>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ListBox>
<Grid Margin="0 50 0 0">
<Grid.Style>
<Style TargetType="Grid">
<Setter Property="Visibility" Value="Hidden"></Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding Configuration.IdsPacks.Count}" Value="0">
<Setter Property="Visibility" Value="Visible"></Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
<TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="20" FontWeight="Bold" Foreground="Gainsboro">NO IDS PACKS</TextBlock>
</Grid>
<Rectangle VerticalAlignment="Bottom" Stroke="DimGray" StrokeThickness="1">
<Rectangle.Effect>
<DropShadowEffect ShadowDepth="1" Opacity="1" Color="Black" />
</Rectangle.Effect>
</Rectangle>
</Grid>
<Grid x:Name="gridEmbedded" Style="{StaticResource draggableGrid}" Width="70" Height="100" Canvas.Left="80" Canvas.Top="331" IsHitTestVisible="True" SnapsToDevicePixels="True">
<Image Source="../Images/ti-tm4c129x.png" RenderOptions.BitmapScalingMode="Fant"></Image>
</Grid>
<Grid Width="61" IsHitTestVisible="True" SnapsToDevicePixels="True" ClipToBounds="True" Height="42" Canvas.Left="85" Canvas.Top="385">
<Grid.RowDefinitions>
<RowDefinition Height="1*" />
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal">
<Image Source="../Images/embedded.png" Width="10" VerticalAlignment="Center" Margin="1" RenderOptions.BitmapScalingMode="Fant"></Image>
<TextBlock VerticalAlignment="Center" Padding="1" Foreground="Gainsboro" IsHitTestVisible="False" FontSize="5" TextAlignment="Center" TextWrapping="Wrap" Height="15" Margin="0,6,0,0" Width="47"><Run Text="{Binding Configuration.EmbeddedFirmwareVersion.Name}"/><Run Text=" "/><Run Text="{Binding Configuration.EmbeddedFirmwareVersion.Version}"/></TextBlock>
</StackPanel>
</Grid>
<TextBlock Canvas.Top="163" Canvas.Left="288" FontStyle="Italic" Foreground="Gray">Touch Panel</TextBlock>
<Grid Width="53" Height="55" Canvas.Top="184" Canvas.Left="279">
<Rectangle Stroke="Gray" VerticalAlignment="Bottom" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
<Rectangle Stroke="Gray" HorizontalAlignment="Right" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
</Grid>
<TextBlock Canvas.Top="441" Canvas.Left="156" FontStyle="Italic" Foreground="Gray">Embedded Firmware</TextBlock>
<Grid Width="82" Height="26" Canvas.Top="410" Canvas.Left="158">
<Rectangle Stroke="Gray" VerticalAlignment="Top" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
<Rectangle Stroke="Gray" HorizontalAlignment="Right" StrokeThickness="1" StrokeDashArray="6" RenderTransformOrigin="0.5,0.5"/>
</Grid>
<TextBlock Canvas.Top="310" Canvas.Left="340" FontStyle="Italic" Foreground="Gray">Dispensers</TextBlock>
<Grid Width="53" Height="20" Canvas.Top="331" Canvas.Left="377">
<Rectangle Stroke="Gray" VerticalAlignment="Bottom" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
<Rectangle Stroke="Gray" HorizontalAlignment="Left" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
</Grid>
<TextBlock Canvas.Top="395" Canvas.Left="331" FontStyle="Italic" Foreground="Gray">Mid Tanks</TextBlock>
<Grid Width="62" Height="29" Canvas.Top="418" Canvas.Left="357">
<Rectangle Stroke="Gray" VerticalAlignment="Bottom" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
<Rectangle Stroke="Gray" HorizontalAlignment="Left" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
</Grid>
<TextBlock Canvas.Top="469" Canvas.Left="304" FontStyle="Italic" Foreground="Gray">Cartridges</TextBlock>
<Grid Width="87" Height="10" Canvas.Top="487" Canvas.Left="332">
<Rectangle Stroke="Gray" VerticalAlignment="Bottom" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
<Rectangle Stroke="Gray" HorizontalAlignment="Left" StrokeThickness="1" StrokeDashArray="5" RenderTransformOrigin="0.5,0.5"/>
</Grid>
<Grid x:Name="gridTablet" Width="67" IsHitTestVisible="True" SnapsToDevicePixels="True" ClipToBounds="True" Height="90" Canvas.Left="188" Canvas.Top="198">
<Grid.Style>
<Style TargetType="Grid" BasedOn="{StaticResource draggableGrid}">
<Setter Property="Background" Value="#2B2B2B"></Setter>
<Style.Triggers>
<Trigger Property="dragAndDrop:DragAndDropService.IsDraggableOver" Value="True">
<Setter Property="Background" Value="Black"></Setter>
</Trigger>
</Style.Triggers>
</Style>
</Grid.Style>
<Grid.RowDefinitions>
<RowDefinition Height="1*" />
<RowDefinition Height="1*" />
<RowDefinition Height="1*" />
</Grid.RowDefinitions>
<StackPanel>
<Image Source="../Images/tablet.png" Width="10" Margin="2" RenderOptions.BitmapScalingMode="Fant"></Image>
<TextBlock Padding="2 0 2 0" Foreground="Gainsboro" IsHitTestVisible="False" FontSize="6" TextAlignment="Center" TextWrapping="Wrap">
<Run Text="{Binding Configuration.ApplicationDisplayPanelVersion.Name}"></Run>
<Run Text="{Binding Configuration.ApplicationDisplayPanelVersion.Version}"></Run>
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="3" >
<Image Source="../Images/application-firmware.png" Width="10" Margin="2" RenderOptions.BitmapScalingMode="Fant"></Image>
<TextBlock Padding="2 0 2 0" IsHitTestVisible="False" Foreground="Gainsboro" FontSize="6" TextAlignment="Center" TextWrapping="Wrap">
<Run Text="{Binding Configuration.ApplicationFirmwareVersion.Name}"></Run>
<Run Text="{Binding Configuration.ApplicationFirmwareVersion.Version}"></Run>
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="1" >
<Image Source="../Images/android.png" Width="10" Margin="2" RenderOptions.BitmapScalingMode="Fant"></Image>
<TextBlock Padding="2 0 2 0" IsHitTestVisible="False" Foreground="Gainsboro" FontSize="6" TextAlignment="Center" TextWrapping="Wrap">
<Run Text="{Binding Configuration.ApplicationOsVersion.Name}"></Run>
<Run Text="{Binding Configuration.ApplicationOsVersion.Version}"></Run>
</TextBlock>
</StackPanel>
</Grid>
</Canvas>
</Grid>
</Viewbox>
</Grid>
</UserControl>