123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345 |
- <UserControl x:Class="VirgoUI.Controls.Parts.WaferCtrl"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
- xmlns:local="clr-namespace:Aitex.UI.RecipeEditor;assembly=RecipeEditorControl"
- xmlns:cal="http://www.caliburn.org"
- xmlns:sys="clr-namespace:System;assembly=mscorlib"
- xmlns:ctrl="http://OpenSEMI.Ctrlib.com/presentation">
- <UserControl.Resources>
- <Style x:Key="{x:Type ctrl:Wafer}" TargetType="{x:Type ctrl:Wafer}">
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="{x:Type ctrl:Wafer}">
- <Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
- <FrameworkElement.ToolTip>
- <ToolTip Name="tb_tooltip">
- <StackPanel Orientation="Vertical">
- <TextBlock Text="{Binding WaferTooltip, RelativeSource={RelativeSource TemplatedParent}}" />
- </StackPanel>
- </ToolTip>
- </FrameworkElement.ToolTip>
- <Grid>
- <Rectangle Name="WaferCtrl_FrontView" Width="90" Height="11" Stroke="#FF232200">
- <Shape.Fill>
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="#FFB88700" Offset="0" />
- <GradientStop Color="#FFB88700" Offset="1" />
- <GradientStop Color="#FFF7E0A0" Offset="0.5" />
- </LinearGradientBrush>
- </Shape.Fill>
- </Rectangle>
- <Grid Name="WaferCtrl_TopView" Width="65" Height="65" Visibility="Collapsed">
- <Rectangle Name="SSC_WaferBG" Stroke="#FF232200" Fill="#FFFFBB00" RadiusX="15" RadiusY="15"/>
- <Rectangle Name="SSC_Wafer1" RenderTransformOrigin="0.5,0.5" Margin="1" RadiusX="15" RadiusY="15">
- <UIElement.RenderTransform>
- <TransformGroup>
- <ScaleTransform />
- <SkewTransform />
- <RotateTransform Angle="75" />
- <TranslateTransform />
- </TransformGroup>
- </UIElement.RenderTransform>
- <Shape.Fill>
- <!--<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00E6E4AD" Offset="0" />
- <GradientStop Color="#00E6E4AD" Offset="1" />
- <GradientStop Color="White" Offset="0.45" />
- <GradientStop Color="White" Offset="0.55" />
- </LinearGradientBrush>-->
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="#FFB88700" Offset="0" />
- <GradientStop Color="#FFB88700" Offset="1" />
- <GradientStop Color="#FFF7E0A0" Offset="0.5" />
- </LinearGradientBrush>
- </Shape.Fill>
- </Rectangle>
- <Rectangle Name="SSC_Wafer2" Opacity="0.75" Margin="1" RenderTransformOrigin="0.5,0.5">
- <Shape.Fill>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00E6E4AD" Offset="0" />
- <GradientStop Color="#00E6E4AD" Offset="1" />
- <GradientStop Color="#FFAF8100" Offset="0.5" />
- </LinearGradientBrush>
- </Shape.Fill>
- </Rectangle>
- </Grid>
- <TextBlock Name="Border_Txt" TextWrapping="NoWrap" FontSize="10" VerticalAlignment="Center" HorizontalAlignment="Center" Foreground="{DynamicResource FG_Black}" FontFamily="Arial" Text="{Binding Path=SourceName, RelativeSource={RelativeSource TemplatedParent}}" />
- <TextBlock Name="Border_question" TextWrapping="NoWrap" Text="?" FontSize="14" VerticalAlignment="Center" HorizontalAlignment="Center" Foreground="#FFFF0000" FontWeight="Bold" FontFamily="Arial" Visibility="{Binding Path=DuplicatedVisibility, RelativeSource={RelativeSource TemplatedParent}}">
- <UIElement.Effect>
- <DropShadowEffect ShadowDepth="0" Color="White" BlurRadius="6" />
- </UIElement.Effect>
- </TextBlock>
- </Grid>
- </Border>
- <ControlTemplate.Triggers>
- <Trigger Value="{x:Static sys:String.Empty}" Property="ctrl:Wafer.SourceName">
- <Setter TargetName="Border_Txt" Property="Visibility" Value="Collapsed" />
- </Trigger>
- <Trigger Value="{x:Static sys:String.Empty}" Property="ctrl:Wafer.WaferTooltip">
- <Setter TargetName="tb_tooltip" Property="Visibility" Value="Collapsed" />
- </Trigger>
- <Trigger Property="ctrl:Wafer.ViewType" Value="Front">
- <Setter TargetName="WaferCtrl_FrontView" Property="Visibility" Value="Visible" />
- <Setter TargetName="WaferCtrl_TopView" Property="Visibility" Value="Collapsed" />
- </Trigger>
- <Trigger Property="ctrl:Wafer.ViewType" Value="Top">
- <Setter TargetName="WaferCtrl_FrontView" Property="Visibility" Value="Collapsed" />
- <Setter TargetName="WaferCtrl_TopView" Property="Visibility" Value="Visible" />
- </Trigger>
- <Trigger Property="ctrl:Wafer.WaferStatus" Value="0">
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Stroke" Value="#002F4E48" />
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="#00B88700" Offset="0" />
- <GradientStop Color="#00B88700" Offset="1" />
- <GradientStop Color="#00F7E0A0" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_WaferBG" Property="Shape.Stroke" Value="#002F4E48" />
- <Setter TargetName="SSC_WaferBG" Property="Shape.Fill" Value="#00FFBB00" />
- <Setter TargetName="SSC_Wafer1" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00E6E4AD" Offset="0" />
- <GradientStop Color="#00E6E4AD" Offset="1" />
- <GradientStop Color="#00E6E4AD" Offset="0.45" />
- <GradientStop Color="#00E6E4AD" Offset="0.55" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_Wafer2" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00E6E4AD" Offset="0" />
- <GradientStop Color="#00E6E4AD" Offset="1" />
- <GradientStop Color="#00AF8100" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="tb_tooltip" Property="Visibility" Value="Collapsed" />
- <Setter TargetName="Border_Txt" Property="Visibility" Value="Collapsed" />
- </Trigger>
- <Trigger Property="ctrl:Wafer.WaferStatus" Value="1">
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Stroke" Value="#FF232200" />
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="#FFB88700" Offset="0" />
- <GradientStop Color="#FFB88700" Offset="1" />
- <GradientStop Color="#FFF7E0A0" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_WaferBG" Property="Shape.Stroke" Value="#FF232200" />
- <Setter TargetName="SSC_WaferBG" Property="Shape.Fill" Value="#FFFFBB00" />
- <Setter TargetName="SSC_Wafer1" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00E6E4AD" Offset="0" />
- <GradientStop Color="#00E6E4AD" Offset="1" />
- <GradientStop Color="White" Offset="0.45" />
- <GradientStop Color="White" Offset="0.55" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_Wafer2" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00E6E4AD" Offset="0" />
- <GradientStop Color="#00E6E4AD" Offset="1" />
- <GradientStop Color="#FFAF8100" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="tb_tooltip" Property="Visibility" Value="Collapsed" />
- </Trigger>
- <Trigger Property="ctrl:Wafer.WaferStatus" Value="2">
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Stroke" Value="#FF000B14" />
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="#FF3333FF" Offset="0" />
- <GradientStop Color="#FF3333FF" Offset="1" />
- <GradientStop Color="#FFE1E1FF" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_WaferBG" Property="Shape.Stroke" Value="#FF001154" />
- <Setter TargetName="SSC_WaferBG" Property="Shape.Fill" Value="#FF6E6EFF" />
- <Setter TargetName="SSC_Wafer1" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00E1E1FF" Offset="0" />
- <GradientStop Color="#00E1E1FF" Offset="1" />
- <GradientStop Color="#FFE1E1FF" Offset="0.45" />
- <GradientStop Color="#FFE1E1FF" Offset="0.55" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_Wafer2" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#000000FF" Offset="0" />
- <GradientStop Color="#000000FF" Offset="1" />
- <GradientStop Color="#FF3D3DFF" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- </Trigger>
- <Trigger Property="ctrl:Wafer.WaferStatus" Value="3">
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Stroke" Value="#FF000B14" />
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="Cyan" Offset="0" />
- <GradientStop Color="Cyan" Offset="1" />
- <GradientStop Color="#FFE7F5F9" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_WaferBG" Property="Shape.Stroke" Value="#FF001154" />
- <Setter TargetName="SSC_WaferBG" Property="Shape.Fill" Value="#FF00E4E4" />
- <Setter TargetName="SSC_Wafer1" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#0000FFFF" Offset="0" />
- <GradientStop Color="#0000FFFF" Offset="1" />
- <GradientStop Color="White" Offset="0.45" />
- <GradientStop Color="White" Offset="0.55" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_Wafer2" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#0000FFFF" Offset="0" />
- <GradientStop Color="#0000FFFF" Offset="1" />
- <GradientStop Color="#FF00B2B2" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- </Trigger>
- <Trigger Property="ctrl:Wafer.WaferStatus" Value="4">
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Stroke" Value="#FF000B14" />
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="#FF00B400" Offset="0" />
- <GradientStop Color="#FF00B400" Offset="1" />
- <GradientStop Color="#FFA9FFA9" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_WaferBG" Property="Shape.Stroke" Value="#FF002700" />
- <Setter TargetName="SSC_WaferBG" Property="Shape.Fill" Value="#FF19FF19" />
- <Setter TargetName="SSC_Wafer1" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Offset="0" Color="#00B3FFB3" />
- <GradientStop Offset="1" Color="#00B3FFB3" />
- <GradientStop Color="White" Offset="0.45" />
- <GradientStop Color="White" Offset="0.55" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_Wafer2" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00008000" Offset="0" />
- <GradientStop Color="#00008000" Offset="1" />
- <GradientStop Color="#FF00A300" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- </Trigger>
- <Trigger Property="ctrl:Wafer.WaferStatus" Value="5">
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Stroke" Value="#FF000B14" />
- <Setter TargetName="WaferCtrl_FrontView" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5">
- <GradientStop Color="Red" Offset="0" />
- <GradientStop Color="Red" Offset="1" />
- <GradientStop Color="#FFFFD7D7" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_WaferBG" Property="Shape.Stroke" Value="#FF500000" />
- <Setter TargetName="SSC_WaferBG" Property="Shape.Fill" Value="#FFFF5D5D" />
- <Setter TargetName="SSC_Wafer1" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00FF0000" Offset="1" />
- <GradientStop Color="White" Offset="0.45" />
- <GradientStop Color="White" Offset="0.55" />
- <GradientStop Color="#00FF0000" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- <Setter TargetName="SSC_Wafer2" Property="Shape.Fill">
- <Setter.Value>
- <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
- <GradientStop Color="#00FF0000" Offset="0" />
- <GradientStop Color="#00FF0000" Offset="1" />
- <GradientStop Color="Red" Offset="0.5" />
- </LinearGradientBrush>
- </Setter.Value>
- </Setter>
- </Trigger>
- </ControlTemplate.Triggers>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- <local:TimeSpanConverter x:Key="timeSpanConverter" />
- <local:NumConverter x:Key="numConverter" />
- <local:BoolConverter x:Key="boolConverter" />
- <local:BoolToVisibilityConverter x:Key="boolToVisibilityConverter"/>
- </UserControl.Resources>
- <Grid RenderTransformOrigin="0.5,0.5">
-
- <ctrl:Slot ViewType="Top" WaferStatus="{Binding WaferStatus }" SlotID="{Binding SlotID}" ModuleID="{Binding ModuleID}" SourceName="{Binding SourceName}"
- DataContext="{Binding WaferData,RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" HorizontalAlignment="Center" VerticalAlignment="Center">
- <i:Interaction.Triggers>
- <i:EventTrigger EventName="SlotMouseButtonDown">
- <cal:ActionMessage MethodName="OnMouseUp">
- <cal:Parameter Value="$source" />
- <cal:Parameter Value="$eventargs" />
- </cal:ActionMessage>
- </i:EventTrigger>
- <i:EventTrigger EventName="WaferTransferStarted">
- <cal:ActionMessage MethodName="OnWaferTransfer">
- <cal:Parameter Value="$eventargs" />
- </cal:ActionMessage>
- </i:EventTrigger>
- </i:Interaction.Triggers>
- </ctrl:Slot>
- <!--<Ellipse Stretch="Fill" Visibility="{Binding IsReversed,Converter={StaticResource boolToVisibilityConverter}}" DataContext="{Binding WaferData,RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" Opacity="0.5" Fill="{StaticResource turnWafer}" StrokeThickness="2" StrokeLineJoin="Round" Stroke="#FF00641D" Width="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}" Height="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth}">
- </Ellipse>-->
- <ctrl:Slot Opacity="0" ViewType="Top" WaferStatus="{Binding WaferStatus}" SlotID="{Binding SlotID}" ModuleID="{Binding ModuleID}" SourceName="{Binding SourceName}"
- DataContext="{Binding WaferData,RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}" HorizontalAlignment="Center" VerticalAlignment="Center">
- <i:Interaction.Triggers>
- <i:EventTrigger EventName="SlotMouseButtonDown">
- <cal:ActionMessage MethodName="OnMouseUp">
- <cal:Parameter Value="$source" />
- <cal:Parameter Value="$eventargs" />
- </cal:ActionMessage>
- </i:EventTrigger>
- <i:EventTrigger EventName="WaferTransferStarted">
- <cal:ActionMessage MethodName="OnWaferTransfer">
- <cal:Parameter Value="$eventargs" />
- </cal:ActionMessage>
- </i:EventTrigger>
- </i:Interaction.Triggers>
- </ctrl:Slot>
- <!--<Canvas Width="12" Height="14" Margin="0 4 0 5" HorizontalAlignment="Center" VerticalAlignment="Top" Visibility="{Binding IsReversed,Converter={StaticResource boolToVisibilityConverter}}" DataContext="{Binding WaferData,RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}">
- <TextBlock x:Name="lbWaferInfo" Text="{Binding Orient, UpdateSourceTrigger=Explicit}" FontSize="14" Canvas.Left="2"></TextBlock>
- </Canvas>-->
- </Grid>
- </UserControl>
|