aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MachineVersionDialogVM.cs
blob: b332ebc6b41c240b7771123645f45550f40a9583 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.Core.Commands;
using Tango.BL.Entities;
using Tango.MachineStudio.Common.Notifications;
using Tango.MachineStudio.MachineDesigner.AutoComplete;
using Tango.BL;
using Tango.SharedUI;

namespace Tango.MachineStudio.MachineDesigner.ViewModels
{
    public class MachineVersionDialogVM : DialogViewVM
    {
        public ObservablesStaticCollections Adapter { get; set; }

        public double Version { get; set; }

        private String _versionName;

        public String VersionName
        {
            get { return _versionName; }
            set { _versionName = value; RaisePropertyChangedAuto(); }
        }

        private MachineVersion _selectedVersion;

        public MachineVersion SelectedVersion
        {
            get { return _selectedVersion; }
            set
            {
                _selectedVersion = value;
                RaisePropertyChangedAuto();
                VersionName = value != null ? value.Name : null;
                Version = value != null ? value.Version : 0;
            }
        }

        public RelayCommand AcceptCommand { get; set; }

        public RelayCommand CancelCommand { get; set; }

        public MachineVersionDialogVM()
        {
            Adapter = ObservablesStaticCollections.Instance;
            AcceptCommand = new RelayCommand(() => 
            {
                Accept();
            });
            CancelCommand = new RelayCommand(Cancel);
        }
    }
}
plete="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="10" 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> <TextBlock HorizontalAlignment="Center">9</TextBlock> <TextBlock HorizontalAlignment="Center">10</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="10"></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>