<UserControl x:Class="Venus_MainPages.Views.TopView"
             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:local="clr-namespace:Venus_MainPages.Views"
             xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
             xmlns:prism="http://prismlibrary.com/"
             prism:ViewModelLocator.AutoWireViewModel="True"
             xmlns:unity="clr-namespace:Venus_MainPages.Unity"
             xmlns:deviceControl="clr-namespace:Aitex.Core.UI.DeviceControl;assembly=MECF.Framework.UI.Core"
             xmlns:converters="clr-namespace:Venus_Themes.Converters;assembly=Venus_Themes"
             xmlns:converters2="clr-namespace:Venus_MainPages.Converters"
             xmlns:userControls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
             mc:Ignorable="d" 
             d:DesignHeight="110" d:DesignWidth="1800" FontSize="20" x:Name="topView">
    <UserControl.Resources>
        <converters:StringToColorConverter x:Key="StringToColorConverter"/>
        <converters2:EventItemToStringConverter x:Key="EventItemToStringConverter"/>
        <converters2:PMStateConverter x:Key="PMStateConverter"/>
        <converters2:TMStateConverter x:Key="TMStateConverter"/>
        <converters2:LLStateConverter x:Key="LLStateConverter"/>
        <converters2:SystemStateConverter x:Key="SystemStateConverter"/>
        <converters2:EFEMStateConverter x:Key="EFEMStateConverter"/>
        <converters2:IsOnlineToColorConverter x:Key="IsOnlineConverter"/>
        <converters2:VCEStateConverter x:Key="VCEStateConverter"/>
        
    </UserControl.Resources>

    <Canvas Background="{StaticResource Login_BG}">
        <TextBox Style="{StaticResource textBoxStyle}" Text="{Binding Title}" FontSize="50" HorizontalContentAlignment="Center"    Canvas.Left="5" Canvas.Top="10" Width="230" IsReadOnly="True"/>
        <TextBlock Text="{Binding SoftwareVersion}" Foreground="White"    FontSize="20"  Canvas.Left="70" Canvas.Top="80" />

        <Grid Canvas.Left="240" Width="1620" Height="104">
            <Grid.RowDefinitions>
                <RowDefinition/>
                <RowDefinition/>
                <RowDefinition/>
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition/>
                <ColumnDefinition/>
                <ColumnDefinition/>
                <ColumnDefinition/>
                <ColumnDefinition/>


            </Grid.ColumnDefinitions>
            <userControls:StateTitle Title="System"                 TextBoxValue="{Binding RtDataValues[SYSTEM.FsmState]}" TextBoxColor="{Binding RtDataValues[SYSTEM.FsmState],Converter={StaticResource SystemStateConverter}}" LabelColor="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource IsOnlineConverter}}"/>

            <userControls:StateTitle Title="VCE1"  Grid.Column="3"  TextBoxValue="{Binding RtDataValues[VCE1.FsmState]}"   TextBoxColor="{Binding RtDataValues[VCE1.FsmState],Converter={StaticResource VCEStateConverter}}" Visibility="{Binding VCE1IsInstalled,Converter={StaticResource bool2VisibilityConverter}}" />

            <userControls:StateTitle Title="EFEM"  Grid.Column="3"  TextBoxValue="{Binding RtDataValues[EFEM.FsmState]}"   TextBoxColor="{Binding RtDataValues[EFEM.FsmState],Converter={StaticResource EFEMStateConverter}}"     LabelColor="{Binding RtDataValues[EFEM.IsOnline],Converter={StaticResource IsOnlineConverter}}"  Visibility="{Binding EFEMIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" />
            <userControls:StateTitle Title="LLA"   Grid.Column="1"  TextBoxValue="{Binding RtDataValues[LLA.FsmState]}"    TextBoxColor="{Binding RtDataValues[LLA.FsmState],Converter={StaticResource LLStateConverter}}"        LabelColor="{Binding RtDataValues[LLA.IsOnline],Converter={StaticResource IsOnlineConverter}}"     Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"/>
            <userControls:StateTitle Title="LLB"   Grid.Column="2"  TextBoxValue="{Binding RtDataValues[LLB.FsmState]}"    TextBoxColor="{Binding RtDataValues[LLB.FsmState],Converter={StaticResource LLStateConverter}}"        LabelColor="{Binding RtDataValues[LLB.IsOnline],Converter={StaticResource IsOnlineConverter}}"     Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"/>



            <userControls:StateTitle Title="PMA"   Grid.Column="0"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMA.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMA.FsmState],Converter={StaticResource PMStateConverter}}"  Visibility="{Binding PMAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" LabelColor="{Binding RtDataValues[PMA.IsOnline],Converter={StaticResource IsOnlineConverter}}"/>
            <userControls:StateTitle Title="PMB"   Grid.Column="1"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMB.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMB.FsmState],Converter={StaticResource PMStateConverter}}"  Visibility="{Binding PMBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" LabelColor="{Binding RtDataValues[PMB.IsOnline],Converter={StaticResource IsOnlineConverter}}"/>
            <userControls:StateTitle Title="PMC"   Grid.Column="2"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMC.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMC.FsmState],Converter={StaticResource PMStateConverter}}"  Visibility="{Binding PMCIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" LabelColor="{Binding RtDataValues[PMC.IsOnline],Converter={StaticResource IsOnlineConverter}}"/>
            <userControls:StateTitle Title="PMD"   Grid.Column="3"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMD.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMD.FsmState],Converter={StaticResource PMStateConverter}}"  Visibility="{Binding PMDIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" LabelColor="{Binding RtDataValues[PMD.IsOnline],Converter={StaticResource IsOnlineConverter}}"/>

            <userControls:StateTitle Title="TM"    Grid.Row="2"    TextBoxValue="{Binding RtDataValues[TM.FsmState]}"     TextBoxColor="{Binding RtDataValues[TM.FsmState],Converter={StaticResource TMStateConverter}}" Visibility="{Binding TMIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" LabelColor="{Binding RtDataValues[TM.IsOnline],Converter={StaticResource IsOnlineConverter}}" />
            <userControls:StateTitle Title="SETM"    Grid.Row="2"    TextBoxValue="{Binding RtDataValues[SETM.FsmState]}"     TextBoxColor="{Binding RtDataValues[SETM.FsmState],Converter={StaticResource TMStateConverter}}" Visibility="{Binding SETMIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"/>

            <StackPanel Orientation="Horizontal" Grid.Column="1"  Grid.Row="2" Grid.ColumnSpan="3">
                <Label Content="Log" Style="{StaticResource TopLable_LeftTop}" Canvas.Left="520" Width="100" Canvas.Top="76" BorderThickness="1"   HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="30" FontWeight="Bold"/>
                <ComboBox  Width="720" Canvas.Left="620" Canvas.Top="74.2" Height="32"
                                       ItemsSource="{Binding EventLogList}"   
                                       SelectedIndex="{Binding EventLogListSelectedIndex}"
                                       VerticalContentAlignment="Center" FontSize="15"  >
                    <ComboBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Orientation="Horizontal">
                                <TextBlock FontSize="20" Text="{Binding ElementName=topView,Path=DataContext.CurrentEventItem,Converter={StaticResource EventItemToStringConverter}}" Foreground="{Binding ElementName=topView,Path=DataContext.CurrentEventItem.Level,Converter={StaticResource StringToColorConverter}}"/>
                            </StackPanel>
                        </DataTemplate>
                    </ComboBox.ItemTemplate>
                    <ComboBox.ItemContainerStyle>
                        <Style TargetType="ComboBoxItem">
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate TargetType="ComboBoxItem">
                                        <TextBlock FontSize="20" Text="{Binding .,Converter={StaticResource EventItemToStringConverter}}"  FontFamily="宋体"
                                                   Foreground="{Binding Level,Converter={StaticResource StringToColorConverter}}">

                                            <TextBlock.Style>
                                                <Style>
                                                    <Style.Triggers>
                                                        <Trigger Property="TextBlock.IsMouseOver" Value="true">
                                                            <Setter Property="TextBlock.Background" Value="Silver"/>
                                                        </Trigger>
                                                    </Style.Triggers>
                                                </Style>
                                            </TextBlock.Style>
                                        </TextBlock>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
                            <Setter Property="Background"  Value="{Binding Level,Converter={StaticResource StringToColorConverter}}"/>
                        </Style>
                    </ComboBox.ItemContainerStyle>
                </ComboBox>
                <Button  Content="Skip"   BorderThickness="0,0,1,0"  BorderBrush="White"        Style="{StaticResource SysBtnStyle}"   Command="{Binding SkipCommand}"  Width="70"    FontSize="15" Canvas.Left="1306"  Canvas.Top="76" Height="30"/>
                <Button  Content="Clear"  BorderThickness="0"        BorderBrush="Transparent"  Style="{StaticResource SysBtnStyle}"   Command="{Binding ClearCommand}" Width="70"    FontSize="15" Canvas.Left="1376"  Canvas.Top="76" Height="30"/>
            </StackPanel>
            <userControls:StateTitle Title="FA"   Grid.Column="4"  Grid.Row="0"  TextBoxValue="{Binding HostCommunicationStatus}"    TextBoxColor="{Binding HostBack}"  Canvas.Left="520"   Canvas.Top="40"/>
            <StackPanel Grid.Column="4"  Grid.Row="1" Orientation="Horizontal">
                <Button Style="{StaticResource SysBtnStyle}"   Background="{DynamicResource TopFrame_TableBG}"  Content="Host Enable"  Width="100" Height="30" IsEnabled="{Binding IsEnableEnable}" Command="{Binding FAEnableCommand}" >
                </Button>
                <Button Style="{StaticResource SysBtnStyle}"  Content="Host Disable"  Background="{DynamicResource TopFrame_TableBG}" Width="100" Height="30" IsEnabled="{Binding IsEnableDisable}" Command="{Binding FADisableCommand}">
                </Button>
                
            </StackPanel>
            <StackPanel Grid.Column="5"  Grid.Row="2" Orientation="Vertical">
                <Border Background="#376092" Margin="3" BorderBrush="White" BorderThickness="1" CornerRadius="3">
                    <TextBlock Text="{Binding TimeTick}" Padding="3,1" Foreground="White" TextAlignment="Center"></TextBlock>
                </Border>
            </StackPanel>
        </Grid>



        <Viewbox  Height="100" Width="40" Canvas.Right="10" Canvas.Top="6"    >
            <deviceControl:AITSignalTower  
                                              IsRedLightOn   ="{Binding SignalTowerData.IsRedLightOn}"
                                              IsYellowLightOn="{Binding SignalTowerData.IsYellowLightOn}"
                                              IsGreenLightOn ="{Binding SignalTowerData.IsGreenLightOn}"
                                              IsBlueLightOn  ="{Binding SignalTowerData.IsBlueLightOn}"
                                              IsBuzzerOn     ="{Binding SignalTowerData.IsBuzzerOn}"/>
        </Viewbox>



    </Canvas>

</UserControl>