<UserControl x:Class="CyberX8_Themes.UserControls.Clamp"
             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:customControls="clr-namespace:CyberX8_Themes.CustomControls"
             xmlns:ctrls="clr-namespace:CyberX8_Themes.UserControls"
             xmlns:converters="clr-namespace:CyberX8_Themes.Converters"
             xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
             mc:Ignorable="d" x:Name="clamp"
             d:DesignHeight="508" d:DesignWidth="85">
    <UserControl.Resources>
        <converters:BoolToColor x:Key="boolToColor"/>
        <converters:BoolToVisibility2 x:Key="boolToVisibility2"/>
    </UserControl.Resources>
    <Canvas Height="508" Width="85">
        <Canvas  Visibility="{Binding IsShowSignal,ElementName=clamp,Converter={StaticResource bool2VisibilityConverter}}">
            <TextBlock FontSize="14" Width="50" Canvas.Top="80" Canvas.Left="-85" HorizontalAlignment="Left" VerticalAlignment="Center" Text="Clamp" RenderTransformOrigin="0.5,0.5">
                <TextBlock.RenderTransform>
                    <TransformGroup>
                        <ScaleTransform/>
                        <SkewTransform/>
                        <RotateTransform Angle="-90"/>
                        <TranslateTransform/>
                    </TransformGroup>
                </TextBlock.RenderTransform>
            </TextBlock>
            <TextBlock FontSize="14" Canvas.Top="18" Canvas.Left="-40" HorizontalAlignment="Center" VerticalAlignment="Top" Text="On" RenderTransformOrigin="0.5,0.5"/>
            <TextBlock FontSize="14" Canvas.Top="283" Canvas.Left="-40" HorizontalAlignment="Center" VerticalAlignment="Top" Text="Off" RenderTransformOrigin="0.5,0.5"/>
            <ctrls:FlowPipe IsFlowing="{Binding IsFlowing1,ElementName=clamp}" Height="8"  Width="50"  Canvas.Left="-26"  Canvas.Top="35" RotateTransformValue="90" HorizontalAlignment="Center" VerticalAlignment="Top"/>
            <ctrls:FlowPipe IsFlowing="{Binding IsFlowing1,ElementName=clamp}" Height="8"  Width="50"  Canvas.Left="-26"  Canvas.Top="82" RotateTransformValue="90" HorizontalAlignment="Center" VerticalAlignment="Top"/>
            <ctrls:FlowPipe IsFlowing="{Binding IsFlowing1,ElementName=clamp}" Height="8"  Width="30"  Canvas.Left="-26"  Canvas.Top="135" RotateTransformValue="0" HorizontalAlignment="Center" VerticalAlignment="Top"/>

            <customControls:CommonValveControl Status="{Binding IsFlowing1,ElementName=clamp}" ValveOrientation="Vertical" OperationName="{Binding ElementName=clamp, Path=ModuleName,StringFormat='{}{0}.WHClamp'}"  Click="ClampValveControl_Click" Height="20" Width="20"  Canvas.Left="-40"  Canvas.Top="80" IsCanEdit="True" Tag="26" HorizontalAlignment="Left" VerticalAlignment="Center"/>
            <ctrls:Pipe2    Canvas.Left="-21"  Canvas.Top="143" HorizontalAlignment="Left" VerticalAlignment="Center" RotateTransformValue="-180" />

            <ctrls:FlowPipe IsFlowing="{Binding IsFlowing2,ElementName=clamp}" Height="8"  Width="50"  Canvas.Left="-34"  Canvas.Top="235" RotateTransformValue="-90" HorizontalAlignment="Left" VerticalAlignment="Center"/>
            <ctrls:FlowPipe IsFlowing="{Binding IsFlowing2,ElementName=clamp}" Height="8"  Width="50"  Canvas.Left="-34"  Canvas.Top="282" RotateTransformValue="-90" HorizontalAlignment="Left" VerticalAlignment="Center"/>
            <ctrls:FlowPipe IsFlowing="{Binding IsFlowing2,ElementName=clamp}" Height="8"  Width="30"  Canvas.Left="-26"  Canvas.Top="175" RotateTransformValue="0" HorizontalAlignment="Center" VerticalAlignment="Top"/>

            <customControls:CommonValveControl Status="{Binding IsFlowing2,ElementName=clamp}" ValveOrientation="Vertical" OperationName="{Binding ElementName=clamp, Path=ModuleName,StringFormat='{}{0}.WHUnclamp'}"  Click="UnclampValveControl_Click" Height="20" Width="20"  Canvas.Left="-40"  Canvas.Top="220" IsCanEdit="True" Tag="26" HorizontalAlignment="Left" VerticalAlignment="Center"/>
            <ctrls:Pipe2    Canvas.Left="-34"  Canvas.Top="188" HorizontalAlignment="Center" VerticalAlignment="Top" RotateTransformValue="-90" />

            <ctrls:FlowPipe Visibility="{Binding ElementName=clamp,Path=IsFlowing3Enable,Converter={StaticResource boolToVisibility2}}" IsFlowing="{Binding IsFlowing3,ElementName=clamp}" Height="8"  Width="172"  Canvas.Left="45"  Canvas.Top="472" RotateTransformValue="90" HorizontalAlignment="Left" VerticalAlignment="Center"/>
            <customControls:CommonValveControl  Visibility="{Binding ElementName=clamp,Path=IsFlowing3Enable,Converter={StaticResource boolToVisibility2}}" Status="{Binding IsFlowing3,ElementName=clamp}" ValveOrientation="Horizontal"  Height="20" Width="20"  Canvas.Left="31"  Canvas.Top="565" IsCanEdit="True"
                                                Click="CellFlowValve_Click" HorizontalAlignment="Left" VerticalAlignment="Center" RenderTransformOrigin="0.5,0.5">
                <customControls:CommonValveControl.RenderTransform>
                    <TransformGroup>
                        <ScaleTransform/>
                        <SkewTransform/>
                        <RotateTransform Angle="90.0"/>
                        <TranslateTransform/>
                    </TransformGroup>
                </customControls:CommonValveControl.RenderTransform>
            </customControls:CommonValveControl>
        </Canvas>


        <StackPanel Height="508" Width="85" MouseLeftButtonUp="StackPanel_MouseLeftButtonUp">
            <Image Source="pack://application:,,,/CyberX8_Themes;component/Themes/Images/parts/Clamp.png"></Image>
            
        </StackPanel>

        <TextBlock FontSize="16" Width="70" Canvas.Top="-25" Canvas.Left="20" FontWeight="Bold" HorizontalAlignment="Center" VerticalAlignment="Top" Text="{Binding ElementName=clamp,Path=LabelValue}"></TextBlock>
        <Grid Canvas.Left="0" Canvas.Top="420" Visibility="{Binding IsShowSignal, ElementName=clamp, Converter={StaticResource bool2VisibilityConverter}}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="60"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="25"/>
                <RowDefinition Height="25"/>
            </Grid.RowDefinitions>
            <Grid Grid.Row="0" Grid.Column="0">
                <Label Content="High" FontSize="12" FontWeight="Bold" VerticalAlignment="Center" HorizontalAlignment="Left"/>
                <Ellipse Width="16" Height="16" Margin="26,0,0,0"   Fill="{Binding IsMetalCellHigh,ElementName=clamp, Converter={StaticResource boolToColor}}"   Stroke="Silver"/>
            </Grid>
            <Grid Grid.Row="1" Grid.Column="0">
                <Label Content="Low" FontSize="12" FontWeight="Bold" VerticalAlignment="Center" HorizontalAlignment="Left"/>
                <Ellipse Width="16" Height="16"  Fill="{Binding IsMetalCellLow, ElementName=clamp,Converter={StaticResource boolToColor}}"  Margin="26,0,0,0" Stroke="Silver"/>
            </Grid>
        </Grid>
    </Canvas>
</UserControl>