aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Controls/MachineView.xaml
blob: 013dca6ceabedeb7fa1271b2d121adde1e44eb8a (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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
10
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Media.Imaging;
using Tango.Core.Commands;
using Tango.Scripting.IDE.ProjectTypes;
using Tango.SharedUI;

namespace Tango.Scripting.IDE.Dialogs
{
    public class BaseProjectDialogVM : IDEDialogViewModel
    {
        #region properties
        public ObservableCollection<IProjectType> ProjectTypes { get; set; }

        private IProjectType _selectedProjectType = null;
        public IProjectType SelectedProjectType
        {
            get { return _selectedProjectType; }
            set
            {
                _selectedProjectType = value;
                RaisePropertyChangedAuto();
                RaisePropertyChanged("LargeImage");
                RaisePropertyChanged("SelectedDescription");
            }
        }
        private BitmapSource _defaultLargeImage = ProjectType.GetImage("Images/test.png");
        public BitmapSource LargeImage
        {
            get
            {
                if (SelectedProjectType != null)
                    return SelectedProjectType.LargeImage;
                else return _defaultLargeImage;
            }
        }
        public string SelectedDescription
        {
            get
            {
                if (SelectedProjectType != null)
                    return SelectedProjectType.Description;
                return "";
            }
        }
        private String _projectName = "App1";
        public String ProjectName
        {
            get { return _projectName; }
            set { _projectName = value; RaisePropertyChangedAuto(); }
        }
        private String _projectLocation;
        public String ProjectLocation
        {
            get { return _projectLocation; }
            set { _projectLocation = value; RaisePropertyChangedAuto(); }
        }
        #endregion
        #region constructor
        public BaseProjectDialogVM() : base()
        {
            ProjectTypes = new ObservableCollection<IProjectType>();
            RegisterProjectType(new StubProjectType());
            RegisterProjectType(new UnitTestProjectType());

            _selectedProjectType = ProjectTypes.FirstOrDefault();

            string workingDirectory = Environment.CurrentDirectory;
            ProjectLocation = Directory.GetParent(workingDirectory).Parent.Parent.FullName;

            CanClose = true;
            CloseCommand = new RelayCommand(Cancel, (x) => CanClose);
            OKCommand = new RelayCommand(Accept, (x) => CanClose);
        }
        #endregion
        #region commands
        
        #endregion
        #region register_project_types
        public void RegisterProjectType(IProjectType projectType)
        {
            ProjectTypes.Add(projectType);
        }

        public void UnRegisterProjectItemHandler(IProjectType projectType)
        {
            ProjectTypes.Remove(projectType);
        }
        #endregion
    }
}
t;/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="{StaticResource BorderBrushGainsboro}">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" 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="{StaticResource BorderBrushGainsboro}" 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.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="{StaticResource BorderBrushGainsboro}" 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="{StaticResource BorderBrushGainsboro}" 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="{StaticResource BorderBrushGainsboro}" 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>